/[svn]/linuxsampler/trunk/src/network/lscpparser.cpp
ViewVC logotype

Contents of /linuxsampler/trunk/src/network/lscpparser.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 573 - (show annotations) (download)
Tue May 24 03:18:30 2005 UTC (18 years, 10 months ago) by schoenebeck
File size: 185601 byte(s)
command syntax (BNF) of LSCP specification is now auto generated

1 /* A Bison parser, made by GNU Bison 1.875d. */
2
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
20
21 /* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
25
26 /* Written by Richard Stallman by simplifying the original so called
27 ``semantic'' parser. */
28
29 /* All symbols defined below should begin with yy or YY, to avoid
30 infringing on user name space. This should be done even for local
31 variables, as they might otherwise be expanded by user macros.
32 There are some unavoidable exceptions within include files to
33 define necessary library symbols; they are noted "INFRINGES ON
34 USER NAME SPACE" below. */
35
36 /* Identify Bison output. */
37 #define YYBISON 1
38
39 /* Skeleton name. */
40 #define YYSKELETON_NAME "yacc.c"
41
42 /* Pure parsers. */
43 #define YYPURE 1
44
45 /* Using locations. */
46 #define YYLSP_NEEDED 0
47
48
49
50
51
52
53 /* Copy the first part of user declarations. */
54 #line 27 "lscp.y"
55
56
57 #include "lscpparser.h"
58 #include "lscpserver.h"
59 #include "lscpevent.h"
60
61 // to save us typing work in the rules action definitions
62 #define LSCPSERVER ((yyparse_param_t*) yyparse_param)->pServer
63
64 // clears input buffer
65 void restart(yyparse_param_t* pparam, int& yychar);
66 #define RESTART restart((yyparse_param_t*) YYPARSE_PARAM, yychar)
67
68 // we provide our own version of yyerror() so we don't have to link against the yacc library
69 void yyerror(const char* s);
70
71 static char buf[1024]; // input buffer to feed the parser with new characters
72 static int bytes = 0; // current number of characters in the input buffer
73 static int ptr = 0; // current position in the input buffer
74
75 // external reference to the function which actually reads from the socket
76 extern int GetLSCPCommand( void *buf, int max_size);
77
78 // custom scanner function which reads from the socket
79 int yylex(YYSTYPE* yylval) {
80 // check if we have to read new characters
81 if (ptr >= bytes) {
82 bytes = GetLSCPCommand(buf, 1023);
83 ptr = 0;
84 if (bytes < 0) {
85 bytes = 0;
86 return 0;
87 }
88 }
89 return (int) buf[ptr++];
90 }
91
92
93
94 /* Enabling traces. */
95 #ifndef YYDEBUG
96 # define YYDEBUG 0
97 #endif
98
99 /* Enabling verbose error messages. */
100 #ifdef YYERROR_VERBOSE
101 # undef YYERROR_VERBOSE
102 # define YYERROR_VERBOSE 1
103 #else
104 # define YYERROR_VERBOSE 0
105 #endif
106
107 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
108 typedef int YYSTYPE;
109 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
110 # define YYSTYPE_IS_DECLARED 1
111 # define YYSTYPE_IS_TRIVIAL 1
112 #endif
113
114
115
116 /* Copy the second part of user declarations. */
117
118
119 /* Line 214 of yacc.c. */
120 #line 121 "y.tab.c"
121
122 #if ! defined (yyoverflow) || YYERROR_VERBOSE
123
124 # ifndef YYFREE
125 # define YYFREE free
126 # endif
127 # ifndef YYMALLOC
128 # define YYMALLOC malloc
129 # endif
130
131 /* The parser invokes alloca or malloc; define the necessary symbols. */
132
133 # ifdef YYSTACK_USE_ALLOCA
134 # if YYSTACK_USE_ALLOCA
135 # define YYSTACK_ALLOC alloca
136 # endif
137 # else
138 # if defined (alloca) || defined (_ALLOCA_H)
139 # define YYSTACK_ALLOC alloca
140 # else
141 # ifdef __GNUC__
142 # define YYSTACK_ALLOC __builtin_alloca
143 # endif
144 # endif
145 # endif
146
147 # ifdef YYSTACK_ALLOC
148 /* Pacify GCC's `empty if-body' warning. */
149 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
150 # else
151 # if defined (__STDC__) || defined (__cplusplus)
152 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
153 # define YYSIZE_T size_t
154 # endif
155 # define YYSTACK_ALLOC YYMALLOC
156 # define YYSTACK_FREE YYFREE
157 # endif
158 #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
159
160
161 #if (! defined (yyoverflow) \
162 && (! defined (__cplusplus) \
163 || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
164
165 /* A type that is properly aligned for any stack member. */
166 union yyalloc
167 {
168 short int yyss;
169 YYSTYPE yyvs;
170 };
171
172 /* The size of the maximum gap between one aligned stack and the next. */
173 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
174
175 /* The size of an array large to enough to hold all stacks, each with
176 N elements. */
177 # define YYSTACK_BYTES(N) \
178 ((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
179 + YYSTACK_GAP_MAXIMUM)
180
181 /* Copy COUNT objects from FROM to TO. The source and destination do
182 not overlap. */
183 # ifndef YYCOPY
184 # if defined (__GNUC__) && 1 < __GNUC__
185 # define YYCOPY(To, From, Count) \
186 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
187 # else
188 # define YYCOPY(To, From, Count) \
189 do \
190 { \
191 register YYSIZE_T yyi; \
192 for (yyi = 0; yyi < (Count); yyi++) \
193 (To)[yyi] = (From)[yyi]; \
194 } \
195 while (0)
196 # endif
197 # endif
198
199 /* Relocate STACK from its old location to the new one. The
200 local variables YYSIZE and YYSTACKSIZE give the old and new number of
201 elements in the stack, and YYPTR gives the new location of the
202 stack. Advance YYPTR to a properly aligned location for the next
203 stack. */
204 # define YYSTACK_RELOCATE(Stack) \
205 do \
206 { \
207 YYSIZE_T yynewbytes; \
208 YYCOPY (&yyptr->Stack, Stack, yysize); \
209 Stack = &yyptr->Stack; \
210 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
211 yyptr += yynewbytes / sizeof (*yyptr); \
212 } \
213 while (0)
214
215 #endif
216
217 #if defined (__STDC__) || defined (__cplusplus)
218 typedef signed char yysigned_char;
219 #else
220 typedef short int yysigned_char;
221 #endif
222
223 /* YYFINAL -- State number of the termination state. */
224 #define YYFINAL 40
225 /* YYLAST -- Last index in YYTABLE. */
226 #define YYLAST 4524
227
228 /* YYNTOKENS -- Number of terminals. */
229 #define YYNTOKENS 227
230 /* YYNNTS -- Number of nonterminals. */
231 #define YYNNTS 95
232 /* YYNRULES -- Number of rules. */
233 #define YYNRULES 427
234 /* YYNRULES -- Number of states. */
235 #define YYNSTATES 1181
236
237 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
238 #define YYUNDEFTOK 2
239 #define YYMAXUTOK 257
240
241 #define YYTRANSLATE(YYX) \
242 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
243
244 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
245 static const unsigned char yytranslate[] =
246 {
247 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
248 225, 2, 2, 226, 2, 2, 2, 2, 2, 2,
249 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
250 2, 2, 224, 73, 7, 3, 74, 75, 76, 6,
251 77, 78, 79, 9, 5, 10, 8, 80, 11, 12,
252 13, 14, 15, 16, 17, 18, 19, 20, 81, 82,
253 83, 4, 84, 85, 86, 21, 22, 23, 24, 25,
254 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
255 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
256 46, 87, 88, 89, 90, 91, 2, 47, 48, 49,
257 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
258 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
259 70, 71, 72, 92, 93, 94, 95, 2, 96, 97,
260 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
261 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
262 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
263 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
264 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
265 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
266 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
267 168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
268 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
269 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
270 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
271 208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
272 218, 219, 220, 221, 222, 223, 1, 2
273 };
274
275 #if YYDEBUG
276 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
277 YYRHS. */
278 static const unsigned short int yyprhs[] =
279 {
280 0, 0, 3, 6, 10, 11, 13, 15, 17, 19,
281 22, 25, 28, 31, 35, 39, 43, 47, 51, 55,
282 61, 65, 69, 73, 77, 83, 85, 87, 89, 91,
283 93, 95, 97, 99, 101, 103, 105, 107, 109, 111,
284 113, 115, 121, 129, 139, 141, 147, 155, 165, 167,
285 169, 175, 181, 189, 199, 207, 217, 219, 225, 233,
286 239, 245, 251, 255, 263, 273, 281, 291, 295, 299,
287 305, 309, 315, 319, 323, 327, 331, 335, 341, 349,
288 355, 365, 371, 377, 383, 389, 395, 399, 405, 407,
289 409, 411, 413, 415, 417, 419, 421, 427, 435, 439,
290 441, 443, 445, 447, 449, 451, 453, 455, 457, 459,
291 461, 463, 465, 467, 471, 473, 477, 481, 483, 485,
292 487, 489, 491, 494, 498, 503, 508, 510, 513, 515,
293 517, 519, 521, 523, 525, 527, 529, 531, 533, 535,
294 538, 541, 544, 547, 550, 553, 556, 559, 562, 564,
295 566, 568, 570, 572, 574, 576, 578, 580, 582, 584,
296 586, 588, 590, 592, 594, 596, 598, 600, 602, 604,
297 606, 608, 610, 612, 614, 616, 618, 620, 622, 624,
298 626, 628, 630, 632, 634, 636, 638, 640, 642, 644,
299 646, 648, 650, 652, 654, 656, 658, 660, 662, 664,
300 666, 668, 670, 672, 674, 676, 678, 680, 682, 684,
301 686, 688, 690, 692, 694, 696, 698, 700, 702, 704,
302 706, 708, 710, 712, 714, 716, 718, 720, 722, 724,
303 726, 728, 730, 732, 734, 736, 738, 740, 742, 744,
304 746, 748, 750, 752, 754, 756, 758, 760, 762, 764,
305 766, 768, 770, 772, 774, 776, 778, 780, 782, 784,
306 786, 788, 790, 792, 794, 796, 798, 800, 802, 804,
307 806, 808, 810, 812, 814, 816, 818, 820, 822, 824,
308 826, 828, 830, 832, 834, 836, 838, 840, 842, 844,
309 846, 848, 850, 852, 854, 856, 858, 860, 862, 864,
310 866, 868, 870, 872, 874, 876, 878, 880, 882, 884,
311 886, 888, 890, 892, 894, 896, 898, 900, 902, 904,
312 906, 908, 910, 912, 914, 916, 918, 920, 922, 924,
313 926, 928, 930, 932, 934, 936, 938, 940, 942, 944,
314 946, 948, 950, 952, 954, 956, 958, 960, 962, 964,
315 966, 968, 970, 972, 974, 976, 978, 980, 982, 984,
316 986, 988, 990, 992, 994, 996, 998, 1000, 1002, 1004,
317 1007, 1010, 1014, 1018, 1020, 1022, 1024, 1028, 1032, 1039,
318 1047, 1052, 1057, 1061, 1071, 1078, 1082, 1092, 1104, 1111,
319 1119, 1137, 1168, 1177, 1182, 1196, 1209, 1221, 1234, 1246,
320 1257, 1264, 1294, 1315, 1335, 1365, 1385, 1416, 1437, 1455,
321 1484, 1512, 1538, 1557, 1575, 1603, 1621, 1637, 1656, 1672,
322 1683, 1690, 1697, 1703, 1714, 1720, 1734, 1739
323 };
324
325 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
326 static const short int yyrhs[] =
327 {
328 228, 0, -1, 229, 268, -1, 229, 269, 268, -1,
329 -1, 230, -1, 231, -1, 1, -1, 3, -1, 230,
330 3, -1, 230, 267, -1, 230, 263, -1, 230, 259,
331 -1, 270, 267, 283, -1, 271, 267, 234, -1, 272,
332 267, 236, -1, 273, 267, 237, -1, 274, 267, 242,
333 -1, 275, 267, 238, -1, 278, 267, 283, 267, 252,
334 -1, 279, 267, 235, -1, 280, 267, 232, -1, 281,
335 267, 233, -1, 282, 267, 265, -1, 318, 267, 283,
336 267, 252, -1, 318, -1, 321, -1, 288, -1, 292,
337 -1, 291, -1, 290, -1, 289, -1, 319, -1, 288,
338 -1, 292, -1, 291, -1, 290, -1, 289, -1, 319,
339 -1, 284, -1, 303, -1, 309, 267, 287, 267, 259,
340 -1, 308, 267, 287, 267, 259, 267, 259, -1, 308,
341 267, 287, 267, 259, 267, 259, 267, 240, -1, 285,
342 -1, 299, 267, 287, 267, 259, -1, 298, 267, 287,
343 267, 259, 267, 259, -1, 298, 267, 287, 267, 259,
344 267, 259, 267, 240, -1, 296, -1, 306, -1, 297,
345 267, 287, 267, 263, -1, 307, 267, 287, 267, 263,
346 -1, 310, 267, 287, 267, 263, 267, 263, -1, 305,
347 267, 287, 267, 263, 267, 263, 267, 259, -1, 301,
348 267, 287, 267, 263, 267, 263, -1, 300, 267, 287,
349 267, 263, 267, 263, 267, 259, -1, 286, -1, 283,
350 267, 287, 267, 252, -1, 283, 267, 290, 267, 241,
351 267, 252, -1, 283, 267, 291, 267, 252, -1, 283,
352 267, 292, 267, 252, -1, 294, 267, 287, 267, 254,
353 -1, 314, 267, 287, -1, 295, 267, 263, 267, 259,
354 4, 256, -1, 300, 267, 263, 267, 263, 267, 259,
355 4, 256, -1, 304, 267, 263, 267, 259, 4, 256,
356 -1, 305, 267, 263, 267, 263, 267, 259, 4, 256,
357 -1, 283, 267, 239, -1, 320, 267, 258, -1, 297,
358 267, 259, 267, 240, -1, 297, 267, 259, -1, 307,
359 267, 259, 267, 240, -1, 307, 267, 259, -1, 297,
360 267, 263, -1, 307, 267, 263, -1, 293, 267, 243,
361 -1, 294, 267, 244, -1, 297, 267, 252, 267, 245,
362 -1, 301, 267, 252, 267, 246, 267, 246, -1, 302,
363 267, 252, 267, 247, -1, 313, 267, 252, 267, 245,
364 267, 248, 267, 249, -1, 307, 267, 252, 267, 245,
365 -1, 310, 267, 252, 267, 248, -1, 311, 267, 252,
366 267, 249, -1, 312, 267, 252, 267, 250, -1, 315,
367 267, 252, 267, 251, -1, 259, 4, 256, -1, 240,
368 267, 259, 4, 256, -1, 316, -1, 317, -1, 296,
369 -1, 306, -1, 286, -1, 284, -1, 303, -1, 285,
370 -1, 255, 267, 253, 267, 252, -1, 277, 267, 255,
371 267, 253, 267, 252, -1, 254, 267, 252, -1, 263,
372 -1, 263, -1, 259, -1, 263, -1, 263, -1, 276,
373 -1, 259, -1, 260, -1, 263, -1, 263, -1, 263,
374 -1, 259, -1, 266, -1, 257, -1, 256, 5, 257,
375 -1, 259, -1, 6, 259, 6, -1, 7, 259, 7,
376 -1, 263, -1, 260, -1, 263, -1, 259, -1, 264,
377 -1, 259, 264, -1, 261, 8, 261, -1, 9, 261,
378 8, 261, -1, 10, 261, 8, 261, -1, 262, -1,
379 261, 262, -1, 11, -1, 12, -1, 13, -1, 14,
380 -1, 15, -1, 16, -1, 17, -1, 18, -1, 19,
381 -1, 20, -1, 262, -1, 12, 261, -1, 13, 261,
382 -1, 14, 261, -1, 15, 261, -1, 16, 261, -1,
383 17, 261, -1, 18, 261, -1, 19, 261, -1, 20,
384 261, -1, 21, -1, 22, -1, 23, -1, 24, -1,
385 25, -1, 26, -1, 27, -1, 28, -1, 29, -1,
386 30, -1, 31, -1, 32, -1, 33, -1, 34, -1,
387 35, -1, 36, -1, 37, -1, 38, -1, 39, -1,
388 40, -1, 41, -1, 42, -1, 43, -1, 44, -1,
389 45, -1, 46, -1, 47, -1, 48, -1, 49, -1,
390 50, -1, 51, -1, 52, -1, 53, -1, 54, -1,
391 55, -1, 56, -1, 57, -1, 58, -1, 59, -1,
392 60, -1, 61, -1, 62, -1, 63, -1, 64, -1,
393 65, -1, 66, -1, 67, -1, 68, -1, 69, -1,
394 70, -1, 71, -1, 72, -1, 11, -1, 12, -1,
395 13, -1, 14, -1, 15, -1, 16, -1, 17, -1,
396 18, -1, 19, -1, 20, -1, 73, -1, 3, -1,
397 74, -1, 75, -1, 76, -1, 77, -1, 78, -1,
398 79, -1, 9, -1, 10, -1, 8, -1, 5, -1,
399 80, -1, 81, -1, 82, -1, 83, -1, 4, -1,
400 84, -1, 85, -1, 86, -1, 87, -1, 88, -1,
401 89, -1, 90, -1, 91, -1, 92, -1, 93, -1,
402 94, -1, 95, -1, 96, -1, 97, -1, 98, -1,
403 99, -1, 100, -1, 101, -1, 102, -1, 103, -1,
404 104, -1, 105, -1, 106, -1, 107, -1, 108, -1,
405 109, -1, 110, -1, 111, -1, 112, -1, 113, -1,
406 114, -1, 115, -1, 116, -1, 117, -1, 118, -1,
407 119, -1, 120, -1, 121, -1, 122, -1, 123, -1,
408 124, -1, 125, -1, 126, -1, 127, -1, 128, -1,
409 129, -1, 130, -1, 131, -1, 132, -1, 133, -1,
410 134, -1, 135, -1, 136, -1, 137, -1, 138, -1,
411 139, -1, 140, -1, 141, -1, 142, -1, 143, -1,
412 144, -1, 145, -1, 146, -1, 147, -1, 148, -1,
413 149, -1, 150, -1, 151, -1, 152, -1, 153, -1,
414 154, -1, 155, -1, 156, -1, 157, -1, 158, -1,
415 159, -1, 160, -1, 161, -1, 162, -1, 163, -1,
416 164, -1, 165, -1, 166, -1, 167, -1, 168, -1,
417 169, -1, 170, -1, 171, -1, 172, -1, 173, -1,
418 174, -1, 175, -1, 176, -1, 177, -1, 178, -1,
419 179, -1, 180, -1, 181, -1, 182, -1, 183, -1,
420 184, -1, 185, -1, 186, -1, 187, -1, 188, -1,
421 189, -1, 190, -1, 191, -1, 192, -1, 193, -1,
422 194, -1, 195, -1, 196, -1, 197, -1, 198, -1,
423 199, -1, 200, -1, 201, -1, 202, -1, 203, -1,
424 204, -1, 205, -1, 206, -1, 207, -1, 208, -1,
425 209, -1, 210, -1, 211, -1, 212, -1, 213, -1,
426 214, -1, 215, -1, 216, -1, 217, -1, 218, -1,
427 219, -1, 220, -1, 221, -1, 222, -1, 223, -1,
428 267, -1, 259, -1, 265, 267, -1, 265, 259, -1,
429 6, 265, 6, -1, 7, 265, 7, -1, 224, -1,
430 225, -1, 226, -1, 21, 24, 24, -1, 27, 25,
431 40, -1, 23, 38, 25, 21, 40, 25, -1, 24,
432 25, 39, 40, 38, 35, 45, -1, 32, 29, 39,
433 40, -1, 32, 35, 21, 24, -1, 21, 32, 32,
434 -1, 34, 35, 34, 91, 33, 35, 24, 21, 32,
435 -1, 38, 25, 33, 35, 42, 25, -1, 39, 25,
436 40, -1, 39, 41, 22, 39, 23, 38, 29, 22,
437 25, -1, 41, 34, 39, 41, 22, 39, 23, 38,
438 29, 22, 25, -1, 39, 25, 32, 25, 23, 40,
439 -1, 23, 28, 21, 34, 34, 25, 32, -1, 21,
440 42, 21, 29, 32, 21, 22, 32, 25, 91, 25,
441 34, 27, 29, 34, 25, 39, -1, 21, 42, 21,
442 29, 32, 21, 22, 32, 25, 91, 21, 41, 24,
443 29, 35, 91, 35, 41, 40, 36, 41, 40, 91,
444 24, 38, 29, 42, 25, 38, 39, -1, 23, 28,
445 21, 34, 34, 25, 32, 39, -1, 29, 34, 26,
446 35, -1, 23, 28, 21, 34, 34, 25, 32, 91,
447 23, 35, 41, 34, 40, -1, 23, 28, 21, 34,
448 34, 25, 32, 91, 29, 34, 26, 35, -1, 22,
449 41, 26, 26, 25, 38, 91, 26, 29, 32, 32,
450 -1, 39, 40, 38, 25, 21, 33, 91, 23, 35,
451 41, 34, 40, -1, 42, 35, 29, 23, 25, 91,
452 23, 35, 41, 34, 40, -1, 29, 34, 39, 40,
453 38, 41, 33, 25, 34, 40, -1, 25, 34, 27,
454 29, 34, 25, -1, 21, 41, 24, 29, 35, 91,
455 35, 41, 40, 36, 41, 40, 91, 24, 25, 42,
456 29, 23, 25, 91, 36, 21, 38, 21, 33, 25,
457 40, 25, 38, -1, 21, 41, 24, 29, 35, 91,
458 35, 41, 40, 36, 41, 40, 91, 24, 25, 42,
459 29, 23, 25, 39, -1, 21, 41, 24, 29, 35,
460 91, 35, 41, 40, 36, 41, 40, 91, 24, 25,
461 42, 29, 23, 25, -1, 21, 41, 24, 29, 35,
462 91, 35, 41, 40, 36, 41, 40, 91, 24, 38,
463 29, 42, 25, 38, 91, 36, 21, 38, 21, 33,
464 25, 40, 25, 38, -1, 21, 41, 24, 29, 35,
465 91, 35, 41, 40, 36, 41, 40, 91, 24, 38,
466 29, 42, 25, 38, -1, 21, 41, 24, 29, 35,
467 91, 35, 41, 40, 36, 41, 40, 91, 23, 28,
468 21, 34, 34, 25, 32, 91, 36, 21, 38, 21,
469 33, 25, 40, 25, 38, -1, 21, 41, 24, 29,
470 35, 91, 35, 41, 40, 36, 41, 40, 91, 23,
471 28, 21, 34, 34, 25, 32, -1, 21, 41, 24,
472 29, 35, 91, 35, 41, 40, 36, 41, 40, 91,
473 40, 45, 36, 25, -1, 21, 42, 21, 29, 32,
474 21, 22, 32, 25, 91, 33, 29, 24, 29, 91,
475 29, 34, 36, 41, 40, 91, 24, 38, 29, 42,
476 25, 38, 39, -1, 33, 29, 24, 29, 91, 29,
477 34, 36, 41, 40, 91, 24, 25, 42, 29, 23,
478 25, 91, 36, 21, 38, 21, 33, 25, 40, 25,
479 38, -1, 33, 29, 24, 29, 91, 29, 34, 36,
480 41, 40, 91, 36, 35, 38, 40, 91, 36, 21,
481 38, 21, 33, 25, 40, 25, 38, -1, 33, 29,
482 24, 29, 91, 29, 34, 36, 41, 40, 91, 24,
483 25, 42, 29, 23, 25, 39, -1, 33, 29, 24,
484 29, 91, 29, 34, 36, 41, 40, 91, 24, 25,
485 42, 29, 23, 25, -1, 33, 29, 24, 29, 91,
486 29, 34, 36, 41, 40, 91, 24, 38, 29, 42,
487 25, 38, 91, 36, 21, 38, 21, 33, 25, 40,
488 25, 38, -1, 33, 29, 24, 29, 91, 29, 34,
489 36, 41, 40, 91, 24, 38, 29, 42, 25, 38,
490 -1, 33, 29, 24, 29, 91, 29, 34, 36, 41,
491 40, 91, 36, 35, 38, 40, -1, 33, 29, 24,
492 29, 91, 29, 34, 36, 41, 40, 91, 23, 28,
493 21, 34, 34, 25, 32, -1, 33, 29, 24, 29,
494 91, 29, 34, 36, 41, 40, 91, 40, 45, 36,
495 25, -1, 33, 29, 24, 29, 91, 29, 34, 36,
496 41, 40, -1, 39, 25, 38, 42, 25, 38, -1,
497 42, 35, 32, 41, 33, 25, -1, 22, 45, 40,
498 25, 39, -1, 36, 25, 38, 23, 25, 34, 40,
499 21, 27, 25, -1, 38, 25, 39, 25, 40, -1,
500 33, 29, 39, 23, 25, 32, 32, 21, 34, 25,
501 35, 41, 39, -1, 25, 23, 28, 35, -1, 37,
502 41, 29, 40, -1
503 };
504
505 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
506 static const unsigned short int yyrline[] =
507 {
508 0, 90, 90, 91, 94, 95, 96, 97, 100, 101,
509 102, 103, 104, 107, 108, 109, 110, 111, 112, 113,
510 114, 115, 116, 117, 118, 119, 120, 123, 124, 125,
511 126, 127, 128, 131, 132, 133, 134, 135, 136, 139,
512 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
513 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
514 160, 161, 162, 165, 166, 167, 168, 169, 170, 173,
515 174, 175, 176, 179, 180, 183, 184, 187, 188, 189,
516 190, 191, 192, 193, 194, 195, 198, 199, 202, 203,
517 206, 207, 208, 209, 210, 211, 214, 215, 218, 221,
518 224, 227, 230, 233, 234, 237, 240, 241, 244, 247,
519 250, 253, 256, 257, 260, 261, 262, 263, 264, 272,
520 273, 276, 277, 280, 281, 282, 286, 287, 290, 291,
521 292, 293, 294, 295, 296, 297, 298, 299, 302, 303,
522 304, 305, 306, 307, 308, 309, 310, 311, 313, 313,
523 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
524 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
525 313, 313, 313, 313, 314, 314, 314, 314, 314, 314,
526 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
527 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
528 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
529 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
530 316, 316, 316, 317, 317, 317, 317, 317, 317, 317,
531 318, 318, 318, 318, 318, 319, 319, 319, 319, 320,
532 320, 320, 321, 321, 321, 322, 322, 322, 323, 323,
533 323, 324, 324, 324, 325, 325, 325, 326, 326, 326,
534 327, 327, 327, 328, 328, 328, 329, 329, 329, 330,
535 330, 330, 331, 331, 331, 332, 332, 332, 333, 333,
536 333, 334, 334, 334, 335, 335, 335, 336, 336, 336,
537 337, 337, 337, 338, 338, 338, 339, 339, 339, 340,
538 340, 340, 341, 341, 341, 342, 342, 342, 343, 343,
539 343, 344, 344, 344, 345, 345, 345, 346, 346, 346,
540 347, 347, 347, 348, 348, 348, 349, 349, 349, 350,
541 350, 350, 351, 351, 351, 352, 352, 352, 353, 353,
542 353, 354, 354, 354, 355, 355, 355, 356, 356, 356,
543 357, 357, 357, 358, 358, 358, 359, 359, 359, 360,
544 360, 360, 361, 361, 361, 362, 362, 365, 366, 367,
545 368, 371, 372, 378, 381, 384, 387, 390, 393, 396,
546 399, 402, 405, 408, 411, 414, 417, 420, 423, 426,
547 429, 432, 435, 438, 441, 444, 447, 450, 453, 456,
548 459, 462, 465, 468, 471, 474, 477, 480, 483, 486,
549 489, 492, 495, 498, 501, 504, 507, 510, 513, 516,
550 519, 522, 525, 528, 531, 534, 537, 540
551 };
552 #endif
553
554 #if YYDEBUG || YYERROR_VERBOSE
555 /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
556 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
557 static const char *const yytname[] =
558 {
559 "$end", "error", "$undefined", "'#'", "'='", "','", "'''", "'\"'",
560 "'.'", "'+'", "'-'", "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'",
561 "'7'", "'8'", "'9'", "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'",
562 "'H'", "'I'", "'J'", "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'",
563 "'R'", "'S'", "'T'", "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'",
564 "'b'", "'c'", "'d'", "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'",
565 "'l'", "'m'", "'n'", "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'",
566 "'v'", "'w'", "'x'", "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('",
567 "')'", "'*'", "'/'", "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['",
568 "'\\\\'", "']'", "'^'", "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'",
569 "'\\201'", "'\\202'", "'\\203'", "'\\204'", "'\\205'", "'\\206'",
570 "'\\207'", "'\\210'", "'\\211'", "'\\212'", "'\\213'", "'\\214'",
571 "'\\215'", "'\\216'", "'\\217'", "'\\220'", "'\\221'", "'\\222'",
572 "'\\223'", "'\\224'", "'\\225'", "'\\226'", "'\\227'", "'\\230'",
573 "'\\231'", "'\\232'", "'\\233'", "'\\234'", "'\\235'", "'\\236'",
574 "'\\237'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
575 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
576 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
577 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
578 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
579 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
580 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
581 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
582 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
583 "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "' '", "'\\n'", "'\\r'",
584 "$accept", "input", "line", "comment", "command", "subscribe_event",
585 "unsubscribe_event", "get_instruction", "set_instruction",
586 "create_instruction", "destroy_instruction", "load_instruction",
587 "set_chan_instruction", "key_val_list", "buffer_size_type",
588 "list_instruction", "load_instr_args", "load_engine_args",
589 "device_index", "audio_channel_index", "audio_output_type_name",
590 "midi_input_port_index", "midi_input_channel_index",
591 "midi_input_type_name", "volume_value", "sampler_channel",
592 "instrument_index", "engine_name", "filename", "param_val_list",
593 "param_val", "boolean", "string", "dotnum", "digits", "digit", "number",
594 "char", "text", "stringval", "SP", "LF", "CR", "ADD", "GET", "CREATE",
595 "DESTROY", "LIST", "LOAD", "ALL", "NON_MODAL", "REMOVE", "SET",
596 "SUBSCRIBE", "UNSUBSCRIBE", "SELECT", "CHANNEL", "AVAILABLE_ENGINES",
597 "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "CHANNEL_COUNT",
598 "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",
599 "INSTRUMENT", "ENGINE", "AUDIO_OUTPUT_DEVICE_PARAMETER",
600 "AUDIO_OUTPUT_DEVICES", "AUDIO_OUTPUT_DEVICE",
601 "AUDIO_OUTPUT_DRIVER_PARAMETER", "AUDIO_OUTPUT_DRIVER",
602 "AUDIO_OUTPUT_CHANNEL_PARAMETER", "AUDIO_OUTPUT_CHANNEL",
603 "AUDIO_OUTPUT_TYPE", "AVAILABLE_MIDI_INPUT_DRIVERS",
604 "MIDI_INPUT_DEVICE_PARAMETER", "MIDI_INPUT_PORT_PARAMETER",
605 "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE", "MIDI_INPUT_DRIVER_PARAMETER",
606 "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL",
607 "MIDI_INPUT_TYPE", "MIDI_INPUT", "SERVER", "VOLUME", "BYTES",
608 "PERCENTAGE", "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0
609 };
610 #endif
611
612 # ifdef YYPRINT
613 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
614 token YYLEX-NUM. */
615 static const unsigned short int yytoknum[] =
616 {
617 0, 256, 257, 35, 61, 44, 39, 34, 46, 43,
618 45, 48, 49, 50, 51, 52, 53, 54, 55, 56,
619 57, 65, 66, 67, 68, 69, 70, 71, 72, 73,
620 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
621 84, 85, 86, 87, 88, 89, 90, 97, 98, 99,
622 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
623 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
624 120, 121, 122, 33, 36, 37, 38, 40, 41, 42,
625 47, 58, 59, 60, 62, 63, 64, 91, 92, 93,
626 94, 95, 123, 124, 125, 126, 128, 129, 130, 131,
627 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
628 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
629 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
630 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
631 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
632 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
633 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
634 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
635 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
636 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
637 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
638 242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
639 252, 253, 254, 255, 32, 10, 13
640 };
641 # endif
642
643 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
644 static const unsigned short int yyr1[] =
645 {
646 0, 227, 228, 228, 229, 229, 229, 229, 230, 230,
647 230, 230, 230, 231, 231, 231, 231, 231, 231, 231,
648 231, 231, 231, 231, 231, 231, 231, 232, 232, 232,
649 232, 232, 232, 233, 233, 233, 233, 233, 233, 234,
650 234, 234, 234, 234, 234, 234, 234, 234, 234, 234,
651 234, 234, 234, 234, 234, 234, 234, 234, 234, 234,
652 234, 234, 234, 235, 235, 235, 235, 235, 235, 236,
653 236, 236, 236, 237, 237, 238, 238, 239, 239, 239,
654 239, 239, 239, 239, 239, 239, 240, 240, 241, 241,
655 242, 242, 242, 242, 242, 242, 243, 243, 244, 245,
656 246, 247, 248, 249, 249, 250, 251, 251, 252, 253,
657 254, 255, 256, 256, 257, 257, 257, 257, 257, 258,
658 258, 259, 259, 260, 260, 260, 261, 261, 262, 262,
659 262, 262, 262, 262, 262, 262, 262, 262, 263, 263,
660 263, 263, 263, 263, 263, 263, 263, 263, 264, 264,
661 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
662 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
663 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
664 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
665 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
666 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
667 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
668 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
669 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
670 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
671 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
672 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
673 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
674 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
675 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
676 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
677 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
678 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
679 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
680 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
681 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
682 264, 264, 264, 264, 264, 264, 264, 265, 265, 265,
683 265, 266, 266, 267, 268, 269, 270, 271, 272, 273,
684 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
685 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
686 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
687 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
688 314, 315, 316, 317, 318, 319, 320, 321
689 };
690
691 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
692 static const unsigned char yyr2[] =
693 {
694 0, 2, 2, 3, 0, 1, 1, 1, 1, 2,
695 2, 2, 2, 3, 3, 3, 3, 3, 3, 5,
696 3, 3, 3, 3, 5, 1, 1, 1, 1, 1,
697 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
698 1, 5, 7, 9, 1, 5, 7, 9, 1, 1,
699 5, 5, 7, 9, 7, 9, 1, 5, 7, 5,
700 5, 5, 3, 7, 9, 7, 9, 3, 3, 5,
701 3, 5, 3, 3, 3, 3, 3, 5, 7, 5,
702 9, 5, 5, 5, 5, 5, 3, 5, 1, 1,
703 1, 1, 1, 1, 1, 1, 5, 7, 3, 1,
704 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
705 1, 1, 1, 3, 1, 3, 3, 1, 1, 1,
706 1, 1, 2, 3, 4, 4, 1, 2, 1, 1,
707 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
708 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
709 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
710 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
711 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
712 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
713 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
714 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
715 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
716 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
717 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
718 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
719 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
720 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
721 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
722 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
723 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
724 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
725 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
726 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
727 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
728 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
729 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
730 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
731 2, 3, 3, 1, 1, 1, 3, 3, 6, 7,
732 4, 4, 3, 9, 6, 3, 9, 11, 6, 7,
733 17, 30, 8, 4, 13, 12, 11, 12, 11, 10,
734 6, 29, 20, 19, 29, 19, 30, 20, 17, 28,
735 27, 25, 18, 17, 27, 17, 15, 18, 15, 10,
736 6, 6, 5, 10, 5, 13, 4, 4
737 };
738
739 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
740 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
741 means the default is an error. */
742 static const unsigned short int yydefact[] =
743 {
744 0, 7, 8, 0, 0, 0, 0, 0, 0, 0,
745 0, 0, 0, 0, 5, 6, 0, 0, 0, 0,
746 0, 0, 0, 0, 0, 0, 0, 25, 26, 0,
747 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
748 1, 374, 375, 2, 0, 9, 226, 221, 220, 218,
749 219, 128, 129, 130, 131, 132, 133, 134, 135, 136,
750 137, 148, 149, 150, 151, 152, 153, 154, 155, 156,
751 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
752 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
753 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
754 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
755 197, 198, 199, 210, 212, 213, 214, 215, 216, 217,
756 222, 223, 224, 225, 227, 228, 229, 230, 231, 232,
757 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
758 243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
759 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
760 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
761 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
762 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
763 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
764 303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
765 313, 314, 315, 316, 317, 318, 319, 320, 321, 322,
766 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
767 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
768 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
769 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
770 363, 364, 365, 366, 373, 12, 138, 11, 121, 10,
771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
772 0, 0, 376, 0, 0, 377, 0, 0, 0, 0,
773 0, 0, 385, 0, 0, 3, 128, 129, 130, 131,
774 132, 133, 134, 135, 136, 137, 139, 126, 140, 141,
775 142, 143, 144, 145, 146, 147, 211, 200, 201, 202,
776 203, 204, 205, 206, 207, 208, 209, 122, 0, 13,
777 0, 0, 0, 0, 0, 14, 0, 39, 44, 56,
778 0, 48, 0, 0, 0, 0, 0, 40, 0, 49,
779 0, 0, 0, 0, 0, 0, 0, 15, 0, 0,
780 16, 0, 0, 0, 0, 0, 17, 93, 95, 92,
781 90, 94, 91, 0, 18, 0, 0, 0, 0, 0,
782 0, 20, 0, 0, 0, 0, 0, 0, 0, 0,
783 0, 0, 0, 21, 27, 31, 30, 29, 28, 32,
784 22, 33, 37, 36, 35, 34, 38, 368, 23, 367,
785 0, 0, 0, 380, 381, 427, 0, 0, 0, 0,
786 0, 127, 0, 0, 0, 0, 0, 0, 0, 0,
787 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
788 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
789 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
790 0, 0, 0, 0, 0, 0, 0, 0, 0, 370,
791 369, 0, 0, 0, 0, 424, 0, 0, 0, 0,
792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
793 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
794 0, 0, 62, 0, 0, 70, 72, 129, 130, 131,
795 132, 133, 134, 135, 136, 137, 73, 74, 0, 0,
796 0, 0, 0, 0, 0, 75, 0, 111, 0, 76,
797 0, 110, 19, 108, 0, 0, 0, 0, 0, 0,
798 67, 0, 0, 0, 0, 0, 0, 0, 0, 0,
799 0, 0, 0, 0, 68, 120, 119, 0, 0, 0,
800 0, 0, 24, 378, 0, 384, 388, 0, 0, 0,
801 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
802 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
803 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
804 0, 0, 0, 0, 0, 0, 0, 426, 0, 0,
805 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
806 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
807 379, 0, 0, 0, 0, 0, 0, 0, 0, 0,
808 0, 57, 0, 0, 0, 88, 89, 59, 60, 61,
809 50, 0, 45, 0, 0, 0, 51, 0, 41, 0,
810 0, 0, 69, 0, 71, 0, 0, 0, 0, 371,
811 372, 0, 0, 109, 0, 98, 0, 0, 0, 0,
812 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
814 0, 0, 0, 0, 0, 400, 0, 420, 393, 0,
815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
816 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
817 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
818 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
819 0, 0, 386, 0, 389, 0, 0, 389, 0, 0,
820 0, 58, 46, 0, 54, 0, 42, 52, 0, 0,
821 0, 0, 0, 218, 219, 86, 112, 114, 118, 0,
822 126, 117, 0, 0, 0, 0, 0, 96, 0, 0,
823 0, 0, 0, 0, 77, 99, 0, 100, 79, 101,
824 81, 82, 102, 0, 83, 103, 104, 84, 105, 0,
825 0, 0, 85, 106, 107, 63, 0, 65, 0, 0,
826 0, 0, 0, 0, 0, 0, 0, 392, 0, 0,
827 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
828 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
829 0, 0, 0, 421, 0, 0, 0, 0, 0, 0,
830 0, 0, 0, 0, 387, 0, 0, 0, 422, 0,
831 47, 55, 53, 43, 0, 0, 87, 115, 116, 0,
832 0, 113, 123, 0, 0, 0, 0, 97, 0, 0,
833 0, 0, 78, 382, 0, 64, 66, 0, 0, 0,
834 0, 0, 0, 0, 0, 0, 0, 0, 0, 124,
835 125, 0, 0, 399, 0, 0, 0, 0, 0, 0,
836 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
837 0, 0, 0, 0, 0, 0, 383, 0, 0, 0,
838 0, 80, 396, 0, 0, 0, 0, 398, 0, 0,
839 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
840 0, 0, 0, 419, 0, 395, 0, 397, 0, 0,
841 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
842 0, 0, 0, 0, 0, 394, 425, 0, 0, 0,
843 0, 0, 0, 0, 0, 423, 0, 0, 0, 0,
844 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
845 0, 0, 0, 0, 0, 0, 416, 0, 0, 0,
846 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
847 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
848 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
849 0, 0, 0, 0, 390, 0, 413, 415, 0, 0,
850 413, 0, 0, 0, 0, 0, 0, 0, 0, 416,
851 418, 0, 0, 0, 0, 0, 412, 0, 0, 0,
852 0, 0, 0, 0, 0, 0, 0, 0, 403, 405,
853 0, 0, 0, 0, 403, 0, 0, 0, 0, 0,
854 408, 0, 407, 402, 0, 0, 0, 0, 0, 0,
855 0, 0, 0, 417, 0, 0, 0, 0, 0, 0,
856 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
857 0, 407, 0, 0, 0, 0, 0, 0, 0, 0,
858 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
859 0, 0, 0, 411, 0, 0, 0, 0, 0, 0,
860 0, 0, 0, 0, 0, 0, 0, 414, 0, 410,
861 0, 0, 0, 409, 0, 0, 404, 0, 401, 406,
862 391
863 };
864
865 /* YYDEFGOTO[NTERM-NUM]. */
866 static const short int yydefgoto[] =
867 {
868 -1, 12, 13, 14, 15, 393, 400, 335, 381, 357,
869 360, 374, 540, 662, 644, 366, 525, 529, 794, 796,
870 798, 801, 804, 807, 812, 532, 672, 530, 526, 775,
871 776, 554, 777, 778, 779, 266, 533, 268, 408, 527,
872 720, 43, 44, 16, 17, 18, 19, 20, 21, 806,
873 528, 22, 23, 24, 25, 26, 329, 337, 338, 339,
874 487, 394, 395, 396, 397, 398, 375, 340, 383, 341,
875 342, 343, 344, 345, 346, 543, 347, 385, 348, 349,
876 350, 351, 352, 353, 546, 547, 548, 354, 549, 645,
877 646, 27, 399, 387, 28
878 };
879
880 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
881 STATE-NUM. */
882 #define YYPACT_NINF -720
883 static const short int yypact[] =
884 {
885 51, -720, -720, 10, 20, 36, 55, 1, 89, 112,
886 61, 131, 142, -193, 1647, -720, -55, -55, -55, -55,
887 -55, -55, -55, -55, -55, -55, -55, -55, -720, 146,
888 159, 152, 153, 157, 171, 170, 23, -3, 181, 192,
889 -720, -720, -720, -720, 7, -720, -720, -720, -720, -720,
890 -720, -720, 295, 295, 295, 295, 295, 295, 295, 295,
891 295, -720, -720, -720, -720, -720, -720, -720, -720, -720,
892 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
893 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
894 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
895 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
896 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
897 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
898 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
899 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
900 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
901 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
902 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
903 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
904 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
905 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
906 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
907 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
908 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
909 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
910 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
911 -720, -720, -720, -720, -720, 2754, -720, -720, -720, -720,
912 210, 74, 73, 73, 165, 6, 210, 164, 54, 54,
913 1869, 210, -720, 213, 195, -720, 199, 216, 201, 208,
914 219, 220, -720, 207, 206, -720, -720, -720, -720, -720,
915 -720, -720, -720, -720, -720, -720, 295, -720, 295, 295,
916 295, 295, 295, 295, 295, 295, -720, -720, -720, -720,
917 -720, -720, -720, -720, -720, -720, -720, -720, 221, -720,
918 91, 222, 214, 223, 228, -720, -55, -720, -720, -720,
919 -55, -720, -55, -55, -55, -55, -55, -720, -55, -720,
920 -55, -55, -55, -55, -55, 215, 226, -720, -55, -55,
921 -720, -55, -55, 93, 229, 230, -720, -720, -720, -720,
922 -720, -720, -720, 227, -720, -55, -55, -55, 224, 237,
923 233, -720, -55, -55, -55, -55, -55, -55, 225, 235,
924 239, 231, 234, -720, -720, -720, -720, -720, -720, -720,
925 -720, -720, -720, -720, -720, -720, -720, 2754, 1869, -720,
926 -55, 232, 236, -720, -720, -720, 247, 250, 241, 252,
927 248, -720, 270, 249, 271, 272, 268, 273, 256, 62,
928 287, 287, 287, 287, 287, 287, 287, 287, 287, 287,
929 287, 287, 293, 294, 2754, 2754, 339, 339, 296, 298,
930 297, 283, 21, 2754, 339, 300, 306, 301, 18, 339,
931 339, 339, 339, 2975, 310, 305, 303, 309, 315, 2754,
932 -720, 339, 318, 325, 336, -720, 326, 327, 328, 334,
933 346, 347, 343, 349, 351, 340, 350, -55, -55, -55,
934 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55,
935 -55, -55, -720, 352, 354, 1869, 1869, 295, 295, 295,
936 295, 295, 295, 295, 295, 295, -720, -720, 356, 353,
937 357, 348, 1869, 1869, 355, -720, -55, -720, -55, -720,
938 -55, 2754, -720, -720, 360, 358, 362, 359, 363, 361,
939 -720, -55, -55, -55, -55, -55, -55, -55, -55, -55,
940 -55, -55, -55, -55, -720, 2754, -720, 368, 364, 376,
941 377, 378, -720, -720, 365, -720, -720, 374, 381, 371,
942 372, 379, 375, 380, 317, 387, 389, 339, 37, 339,
943 339, 2754, 339, 2754, 2754, 339, 339, 339, 339, 2754,
944 2754, 339, 382, 322, 2754, 2754, 383, 385, 329, 384,
945 1203, 1425, 390, 339, 108, 339, 386, -720, 332, 392,
946 401, 394, 339, 339, 339, 339, 339, 339, 339, 339,
947 339, 2754, 339, 2754, 339, 402, 395, 403, 409, 406,
948 -720, 412, 397, 411, 366, 416, 413, 414, 415, 404,
949 405, -720, 396, 418, -55, -720, -720, -720, -720, -720,
950 -720, 1869, 2754, -55, -55, -55, -720, 1869, 2754, -55,
951 367, 421, -55, 3196, -55, 369, 426, 423, 420, -720,
952 -720, 373, -55, -720, -55, -720, 398, 424, 425, 427,
953 422, -55, -55, -55, -55, -55, -55, -55, -55, -55,
954 3417, -55, 3638, -55, 417, 434, 430, 432, 399, 441,
955 438, 436, 435, 447, 439, -720, 457, -720, -720, 433,
956 456, 339, 2754, 339, 339, 339, 2754, 339, 437, 461,
957 2754, 2091, 471, 464, 473, 475, 478, 339, 339, 477,
958 480, 481, 450, 494, 339, 339, 2754, 339, 339, 267,
959 2754, 339, 198, 2091, 2754, 2091, 2754, 451, 511, 512,
960 454, 523, -720, 525, -720, 507, 517, 513, 370, 526,
961 527, -720, 1869, -55, -720, -55, 1869, -720, 514, 518,
962 3859, 2754, 2754, 295, 295, 548, -720, 2754, -720, 109,
963 12, -720, 515, 513, 521, 533, 524, -720, -55, 519,
964 528, 470, 534, 537, -720, -720, -55, -720, -720, 2754,
965 -720, -720, -720, 535, -720, -720, -720, -720, 2754, -55,
966 295, 295, -720, -720, -720, 548, 4080, 548, 4301, 539,
967 479, 545, 546, 540, 551, 538, 554, -720, 541, 542,
968 555, 2754, 2754, 2754, 2754, 543, 544, 2091, 2312, 2533,
969 144, 163, 2091, 295, 550, 552, 557, 560, 339, 556,
970 558, 562, 561, -720, 339, 568, 339, 2091, 2091, 563,
971 56, 567, 569, 564, -720, 566, 495, 571, -720, 572,
972 -55, 2754, 2754, -55, 573, 574, 548, -720, -720, 295,
973 295, -720, 295, 576, 575, 577, 582, -720, 580, 578,
974 579, 583, -720, -720, -55, 548, 548, 581, 586, 588,
975 598, 584, 590, 585, 169, 516, 587, 589, 559, 295,
976 295, 591, 565, -720, 596, 592, 593, 594, 595, 267,
977 597, 602, 609, 604, 603, 605, 607, 608, 614, 622,
978 76, 631, 613, 630, 615, 633, -720, 618, 95, 624,
979 623, -720, -720, 628, 629, 625, 627, -720, 599, 641,
980 650, 655, 0, 646, 656, 600, 657, 601, 660, 606,
981 661, 652, 647, 611, 649, -720, 654, -720, 117, 665,
982 666, 667, 662, 669, 668, 680, 684, 670, 685, 671,
983 130, 673, 672, 676, 17, -720, -720, 689, 78, 683,
984 692, 639, 690, 694, 697, -720, 709, 710, 713, 712,
985 714, 718, 715, 705, 663, 719, 711, 703, 730, 720,
986 726, 674, 731, 728, 737, 736, 675, 729, 745, 732,
987 747, 751, 734, 750, 675, 58, 757, 741, 744, 748,
988 752, 746, 754, 753, 756, 761, 749, 755, 764, 769,
989 766, 772, 765, 774, 773, 776, 760, 775, 767, 781,
990 777, 785, 787, 778, -720, 779, 771, 722, 793, 794,
991 -720, 795, 771, 782, 797, 733, 804, 790, 800, -720,
992 -720, 810, 816, 791, 805, 808, -720, 814, 813, 821,
993 827, 828, 830, 820, 823, 833, 834, 829, 824, 780,
994 826, 825, 839, 845, -720, 824, 835, 783, 847, 841,
995 -720, 844, 786, -720, 837, 838, 789, 840, 849, 786,
996 848, 851, 858, -720, 850, 864, 852, 863, 872, 869,
997 875, 880, 870, 885, 873, 819, 874, 883, 867, 879,
998 886, -720, 882, 892, 894, 893, 896, 898, 903, 900,
999 905, 895, 889, 887, 890, 901, 899, 891, 907, 908,
1000 909, 911, 916, -720, 917, 918, 919, 906, 910, 912,
1001 913, 914, 915, 920, 922, 923, 924, -720, 930, -720,
1002 931, 921, 926, -720, 927, 928, -720, 929, -720, -720,
1003 -720
1004 };
1005
1006 /* YYPGOTO[NTERM-NUM]. */
1007 static const short int yypgoto[] =
1008 {
1009 -720, -720, -720, -720, -720, -720, -720, -720, -720, -720,
1010 -720, -720, -720, -580, -720, -720, -720, -720, -632, 80,
1011 -720, 101, 26, -720, -720, -469, 242, 388, 345, -719,
1012 116, -720, 314, 238, 11, -10, -14, 333, -355, -720,
1013 -13, 932, -720, -720, -720, -720, -720, -720, -720, -720,
1014 -720, -720, -720, -720, -720, -720, -76, 687, 688, 693,
1015 -211, 695, 696, -263, -257, -256, -720, 698, -720, 704,
1016 -254, -720, -720, 700, 529, -720, 707, -720, 702, 708,
1017 -252, -720, -720, 530, -720, -720, -720, -720, -720, -720,
1018 -720, -720, 716, -720, -720
1019 };
1020
1021 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1022 positive, shift that token. If negative, reduce the rule which
1023 number is the opposite. If zero, do what YYDEFACT says.
1024 If YYTABLE_NINF, syntax error. */
1025 #define YYTABLE_NINF -139
1026 static const short int yytable[] =
1027 {
1028 267, 269, 562, 270, 271, 272, 273, 274, 275, 276,
1029 277, 278, 279, 280, 281, 664, 403, -138, 358, 361,
1030 359, 362, 404, 405, 815, 972, 817, 522, 523, 291,
1031 33, 332, 41, 42, 29, 373, 34, 292, 973, 537,
1032 1005, 956, 307, 307, 307, 307, 307, 307, 307, 307,
1033 307, 538, 1, 1006, 2, 524, 289, 1007, 30, 642,
1034 539, 31, 290, 306, 308, 309, 310, 311, 312, 313,
1035 314, 315, 3, 643, 4, 5, 388, 389, 6, 898,
1036 32, 1045, 996, 7, 388, 899, 37, 390, 8, 9,
1037 10, 486, 11, 391, 355, 330, 392, 331, 1046, 332,
1038 952, 391, 38, 1009, 392, 800, 356, 333, 641, 809,
1039 647, 648, 953, 334, 522, 523, 1010, 843, 876, 960,
1040 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
1041 35, 961, 423, 424, 448, 424, 675, 36, 895, 896,
1042 987, 988, 40, 681, 682, 683, 684, 685, 686, 687,
1043 688, 689, 879, 1000, 1001, 296, 297, 298, 299, 300,
1044 301, 302, 303, 304, 305, 39, 488, 600, 601, 264,
1045 282, 880, 489, 490, 296, 297, 298, 299, 300, 301,
1046 302, 303, 304, 305, 283, 378, 363, 328, 364, 379,
1047 927, 284, 287, 285, 928, 336, 286, 380, 365, 288,
1048 377, 382, 929, 293, 541, 410, 544, 810, 811, 296,
1049 507, 508, 509, 510, 511, 512, 513, 514, 515, 491,
1050 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
1051 502, 294, 41, 328, 411, 412, -138, -138, -138, 413,
1052 414, 415, 761, 416, 417, 418, 419, 420, 426, 422,
1053 425, 870, 427, 428, 873, 443, 442, 449, 787, 450,
1054 456, 451, 457, 465, 476, 455, 464, 409, 466, 468,
1055 478, 467, 472, 480, 473, 477, -4, -4, 296, 507,
1056 508, 509, 510, 511, 512, 513, 514, 515, 803, 474,
1057 475, 479, 481, 482, 485, 483, 421, 484, 421, 421,
1058 421, 421, 421, 421, 421, 421, 296, 297, 298, 299,
1059 300, 301, 302, 303, 304, 305, 486, 503, 504, 519,
1060 518, 520, 521, 429, 534, 536, 558, 430, 265, 431,
1061 432, 433, 434, 435, 535, 436, 557, 437, 438, 439,
1062 440, 441, 559, 563, 561, 444, 445, 560, 446, 447,
1063 296, 507, 508, 509, 510, 511, 512, 513, 514, 515,
1064 564, 565, 452, 453, 454, 567, 566, 568, 569, 458,
1065 459, 460, 461, 462, 463, 570, 571, 572, 573, 887,
1066 574, 592, 575, 593, 576, 596, 598, 597, 599, 606,
1067 602, 608, 610, 607, 625, 470, 611, 471, 626, 627,
1068 609, 629, 628, 631, 632, 633, 828, 634, 638, 636,
1069 630, 635, 639, 661, 637, 640, 678, 660, 665, 666,
1070 667, 676, 668, 677, 671, 679, 680, 694, 696, 695,
1071 697, 698, 516, 517, 699, 700, 701, 703, 704, 705,
1072 708, 709, 707, 710, 706, 550, 551, 552, 553, 556,
1073 719, 723, 724, 730, 731, 747, 732, 702, 718, 748,
1074 722, 725, 749, 733, 726, 750, 752, 753, 754, 756,
1075 755, 757, 768, 759, 577, 578, 579, 580, 581, 582,
1076 583, 584, 585, 586, 587, 588, 589, 590, 591, 729,
1077 751, 758, 594, 595, 760, 769, 783, 307, 307, 307,
1078 307, 307, 307, 307, 307, 307, 782, 784, 785, 409,
1079 409, 786, 789, 603, 790, 604, 791, 605, 306, 308,
1080 309, 310, 311, 312, 313, 314, 315, 793, 612, 613,
1081 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
1082 624, 792, 819, 820, 821, 822, 823, 824, 825, 826,
1083 830, 829, 827, 842, 836, 835, 844, 845, 846, 847,
1084 849, 851, 853, 852, 850, 859, 861, 855, 650, 862,
1085 860, 653, 654, 655, 656, 863, 864, 659, 865, 866,
1086 869, 868, 867, 874, 886, 875, 904, 470, 470, 673,
1087 883, 885, 897, 884, 407, 891, 888, 890, 327, 889,
1088 893, 900, 903, 914, 901, 902, 906, 930, 691, 907,
1089 693, 905, 911, 920, 908, 912, 915, 913, 916, 918,
1090 917, 921, 922, 923, 925, 924, 926, 931, 936, 942,
1091 932, 711, 934, 937, 939, 944, 940, 946, 712, 945,
1092 713, 714, 715, 943, 716, 947, 717, 948, 950, 949,
1093 933, 951, 954, 955, 956, 957, 935, 958, 959, 727,
1094 962, 728, 964, 963, 965, 969, 966, 967, 734, 735,
1095 736, 737, 738, 739, 740, 741, 742, 970, 744, 971,
1096 746, 974, 977, 975, 938, 979, 981, 982, 983, 985,
1097 968, 976, 978, 986, 989, 990, 991, 980, 993, 763,
1098 764, 765, 984, 767, 992, 995, 994, 781, 996, 998,
1099 1003, 780, 997, 999, 673, 1002, 1004, 1008, 1011, 1014,
1100 795, 797, 469, 795, 802, 805, 1012, 795, 814, 781,
1101 1013, 781, 780, 780, 1017, 780, 1015, 1016, 1019, 1018,
1102 327, 1020, 1021, 1022, 1023, 1024, 1027, 1026, 1028, 831,
1103 832, 1029, 833, 834, 1025, 1031, 1033, 1034, 505, 506,
1104 1035, 1036, 1030, 307, 307, 1032, 1037, 531, 1039, 421,
1105 1041, 1038, 1042, 1044, 1040, 848, 1043, 555, 1047, 1048,
1106 1049, 1051, 1050, 854, 840, 841, 1056, 1057, 1052, 1053,
1107 1055, 1058, 1054, 1059, 1060, 1061, 856, 1062, 1065, 1063,
1108 307, 307, 327, 1064, 1066, 1067, 1070, 1069, 1072, 1068,
1109 1076, 1071, 1073, 1077, 1078, 1075, 1081, 1079, 1080, 1074,
1110 1082, 840, 841, 781, 1083, 1084, 1085, 780, 781, 1089,
1111 421, 421, 780, 307, 1086, 1087, 407, 407, 327, 327,
1112 797, 1088, 802, 781, 781, 1090, 1094, 780, 780, 1091,
1113 1092, 1093, 1095, 1096, 882, 1097, 1098, 1099, 1100, 1101,
1114 1107, 1102, 1105, 1103, 327, 1106, 1108, 1109, 1111, 307,
1115 307, 1104, 421, 1115, 1110, 1112, 1113, 1114, 1118, 1116,
1116 1117, 919, 1119, 1122, 1120, 1124, 1123, 1126, 327, 1121,
1117 909, 910, 1125, 1127, 1128, 531, 1129, 651, 652, 421,
1118 421, 1130, 1131, 657, 658, 805, 1132, 1137, 663, 663,
1119 1134, 1133, 1135, 1141, 469, 469, 1136, 1138, 1142, 1139,
1120 1140, 1144, 1143, 1145, 1146, 1147, 1148, 1150, 1149, 1151,
1121 1152, 1155, 1154, 1157, 892, 690, 1159, 692, 1158, 1153,
1122 1156, 1160, 1161, 1162, 1163, 941, 1164, 1171, 1172, 674,
1123 1166, 1167, 1165, 1169, 1168, 1174, 1175, 894, 881, 1176,
1124 1170, 367, 368, 1173, 1177, 1178, 1179, 369, 1180, 649,
1125 788, 0, 0, 376, 401, 402, 295, 384, 370, 386,
1126 813, 371, 372, 0, 327, 327, 0, 542, 545, 0,
1127 327, 327, 0, 0, 0, 406, 327, 0, 0, 0,
1128 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1129 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1130 0, 0, 0, 327, 0, 327, 762, 0, 0, 0,
1131 766, 0, 0, 0, 770, 0, 0, 0, 0, 0,
1132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1133 799, 0, 0, 0, 808, 0, 0, 0, 816, 0,
1134 818, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1136 0, 0, 0, 0, 0, 838, 839, 0, 0, 0,
1137 0, 0, 0, 0, 0, 327, 0, 0, 0, 327,
1138 0, 0, 0, 327, 0, 0, 0, 0, 0, 0,
1139 327, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1140 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1141 0, 0, 327, 0, 0, 0, 0, 0, 0, 0,
1142 0, 327, 0, 0, 0, 663, 871, 872, 663, 327,
1143 0, 327, 0, 0, 0, 0, 0, 0, 0, 0,
1144 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1145 0, 327, 327, 0, 0, 0, 0, 0, 0, 0,
1146 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1147 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1148 0, 0, 0, 0, 327, 327, 316, 46, 47, 669,
1149 0, 48, 49, 50, 317, 318, 319, 320, 321, 322,
1150 323, 324, 325, 326, 61, 62, 63, 64, 65, 66,
1151 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1152 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1153 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1154 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1155 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
1156 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
1157 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1158 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
1159 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
1160 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
1161 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
1162 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
1163 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1164 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1165 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
1166 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
1167 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
1168 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
1169 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
1170 257, 258, 259, 260, 261, 262, 263, 264, 316, 46,
1171 47, 0, 670, 48, 49, 50, 317, 318, 319, 320,
1172 321, 322, 323, 324, 325, 326, 61, 62, 63, 64,
1173 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1174 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1175 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1176 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1177 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1178 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1179 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1180 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1181 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1182 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1183 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1184 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1185 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1186 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1187 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1188 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1189 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1190 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
1191 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1192 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
1193 45, 46, 47, 0, 0, 48, 49, 50, 51, 52,
1194 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1195 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1196 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1197 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1198 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1199 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1200 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1201 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1202 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1203 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1204 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1205 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1206 173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1207 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1208 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1209 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1210 213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1211 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
1212 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
1213 243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
1214 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
1215 263, 264, 316, 46, 47, 0, 0, 48, 49, 50,
1216 317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
1217 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1218 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1219 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1220 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1221 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1222 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1223 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1224 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1225 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1226 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1227 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1228 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1229 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1230 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1231 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1232 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1233 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1234 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
1235 241, 242, 243, 244, 245, 246, 247, 248, 249, 250,
1236 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
1237 261, 262, 263, 264, 316, 46, 47, 771, 772, 48,
1238 773, 774, 51, 52, 53, 54, 55, 56, 57, 58,
1239 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1240 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1241 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1242 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1243 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1244 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1245 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
1246 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1247 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1248 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
1249 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
1250 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
1251 179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
1252 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1253 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
1254 209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
1255 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
1256 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
1257 239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
1258 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
1259 259, 260, 261, 262, 263, 316, 46, 47, 877, 0,
1260 48, 49, 50, 317, 318, 319, 320, 321, 322, 323,
1261 324, 325, 326, 61, 62, 63, 64, 65, 66, 67,
1262 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
1263 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
1264 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1265 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1266 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
1267 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
1268 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
1269 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
1270 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
1271 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
1272 168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
1273 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
1274 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
1275 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1276 208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
1277 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
1278 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
1279 238, 239, 240, 241, 242, 243, 244, 245, 246, 247,
1280 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
1281 258, 259, 260, 261, 262, 263, 316, 46, 47, 0,
1282 878, 48, 49, 50, 317, 318, 319, 320, 321, 322,
1283 323, 324, 325, 326, 61, 62, 63, 64, 65, 66,
1284 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1285 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1286 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1287 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1288 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
1289 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
1290 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1291 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
1292 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
1293 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
1294 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
1295 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
1296 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1297 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1298 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
1299 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
1300 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
1301 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
1302 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
1303 257, 258, 259, 260, 261, 262, 263, 316, 46, 47,
1304 0, 0, 48, 49, 50, 317, 318, 319, 320, 321,
1305 322, 323, 324, 325, 326, 61, 62, 63, 64, 65,
1306 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1307 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
1308 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1309 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
1310 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1311 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
1312 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
1313 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
1314 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
1315 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
1316 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
1317 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
1318 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1319 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1320 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
1321 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
1322 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
1323 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
1324 246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
1325 256, 257, 258, 259, 260, 261, 262, 263, 316, 46,
1326 47, 0, 0, 48, 49, 50, 51, 52, 53, 54,
1327 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1328 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1329 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1330 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1331 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1332 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1333 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1334 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1335 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1336 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1337 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1338 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1339 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1340 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1341 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1342 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1343 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1344 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1345 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
1346 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1347 255, 256, 257, 258, 259, 260, 261, 262, 263, 316,
1348 721, 47, 0, 0, 48, 49, 50, 317, 318, 319,
1349 320, 321, 322, 323, 324, 325, 326, 61, 62, 63,
1350 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1351 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1352 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1353 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1354 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1355 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1356 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1357 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1358 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1359 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1360 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1361 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1362 184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1363 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1364 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
1365 214, 215, 216, 217, 218, 219, 220, 221, 222, 223,
1366 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
1367 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
1368 244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
1369 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
1370 316, 743, 47, 0, 0, 48, 49, 50, 317, 318,
1371 319, 320, 321, 322, 323, 324, 325, 326, 61, 62,
1372 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1373 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1374 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1375 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1376 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1377 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1378 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1379 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1380 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1381 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1382 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1383 173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1384 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1385 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1386 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1387 213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1388 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
1389 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
1390 243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
1391 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
1392 263, 316, 745, 47, 0, 0, 48, 49, 50, 317,
1393 318, 319, 320, 321, 322, 323, 324, 325, 326, 61,
1394 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1395 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
1396 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1397 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1398 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1399 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
1400 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1401 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1402 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1403 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1404 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
1405 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
1406 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
1407 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1408 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
1409 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
1410 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
1411 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
1412 242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
1413 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
1414 262, 263, 316, 837, 47, 0, 0, 48, 49, 50,
1415 317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
1416 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1417 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1418 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1419 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1420 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1421 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1422 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1423 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1424 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1425 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1426 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1427 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1428 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1429 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1430 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1431 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1432 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1433 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
1434 241, 242, 243, 244, 245, 246, 247, 248, 249, 250,
1435 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
1436 261, 262, 263, 316, 857, 47, 0, 0, 48, 49,
1437 50, 317, 318, 319, 320, 321, 322, 323, 324, 325,
1438 326, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1439 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1440 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1441 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1442 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1443 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
1444 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1445 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
1446 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
1447 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1448 160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
1449 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
1450 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
1451 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1452 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
1453 210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
1454 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
1455 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
1456 240, 241, 242, 243, 244, 245, 246, 247, 248, 249,
1457 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
1458 260, 261, 262, 263, 316, 858, 47, 0, 0, 48,
1459 49, 50, 317, 318, 319, 320, 321, 322, 323, 324,
1460 325, 326, 61, 62, 63, 64, 65, 66, 67, 68,
1461 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1462 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1463 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1464 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1465 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1466 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
1467 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1468 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1469 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
1470 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
1471 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
1472 179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
1473 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1474 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
1475 209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
1476 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
1477 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
1478 239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
1479 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
1480 259, 260, 261, 262, 263
1481 };
1482
1483 static const short int yycheck[] =
1484 {
1485 14, 14, 471, 16, 17, 18, 19, 20, 21, 22,
1486 23, 24, 25, 26, 27, 595, 279, 5, 272, 273,
1487 272, 273, 279, 279, 743, 25, 745, 6, 7, 32,
1488 29, 25, 225, 226, 24, 29, 35, 40, 38, 21,
1489 23, 24, 52, 53, 54, 55, 56, 57, 58, 59,
1490 60, 33, 1, 36, 3, 34, 33, 40, 38, 22,
1491 42, 25, 39, 52, 53, 54, 55, 56, 57, 58,
1492 59, 60, 21, 36, 23, 24, 22, 23, 27, 23,
1493 25, 23, 24, 32, 22, 29, 25, 33, 37, 38,
1494 39, 29, 41, 39, 21, 21, 42, 23, 40, 25,
1495 24, 39, 41, 25, 42, 737, 33, 33, 577, 741,
1496 579, 580, 36, 39, 6, 7, 38, 8, 837, 24,
1497 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1498 41, 36, 41, 42, 41, 42, 605, 25, 857, 858,
1499 23, 24, 0, 612, 613, 614, 615, 616, 617, 618,
1500 619, 620, 8, 23, 24, 11, 12, 13, 14, 15,
1501 16, 17, 18, 19, 20, 34, 429, 522, 523, 224,
1502 24, 8, 429, 429, 11, 12, 13, 14, 15, 16,
1503 17, 18, 19, 20, 25, 21, 21, 23, 23, 25,
1504 21, 39, 21, 40, 25, 271, 39, 33, 33, 29,
1505 276, 277, 33, 22, 458, 281, 458, 9, 10, 11,
1506 12, 13, 14, 15, 16, 17, 18, 19, 20, 430,
1507 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
1508 441, 39, 225, 23, 21, 40, 224, 225, 226, 40,
1509 24, 40, 711, 35, 25, 25, 39, 41, 34, 28,
1510 28, 831, 29, 25, 834, 29, 41, 28, 727, 29,
1511 23, 34, 29, 28, 23, 41, 41, 280, 29, 35,
1512 22, 40, 40, 24, 38, 23, 225, 226, 11, 12,
1513 13, 14, 15, 16, 17, 18, 19, 20, 21, 42,
1514 40, 21, 21, 21, 38, 27, 306, 24, 308, 309,
1515 310, 311, 312, 313, 314, 315, 11, 12, 13, 14,
1516 15, 16, 17, 18, 19, 20, 29, 24, 24, 21,
1517 24, 24, 39, 336, 24, 24, 21, 340, 14, 342,
1518 343, 344, 345, 346, 28, 348, 26, 350, 351, 352,
1519 353, 354, 39, 25, 29, 358, 359, 38, 361, 362,
1520 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1521 35, 25, 375, 376, 377, 38, 40, 39, 34, 382,
1522 383, 384, 385, 386, 387, 29, 29, 34, 29, 848,
1523 29, 29, 42, 29, 34, 29, 29, 34, 40, 29,
1524 35, 29, 29, 35, 26, 408, 35, 410, 34, 23,
1525 41, 23, 25, 29, 23, 34, 36, 35, 91, 34,
1526 45, 32, 25, 91, 34, 26, 24, 35, 35, 34,
1527 91, 35, 38, 91, 34, 24, 32, 25, 25, 34,
1528 21, 25, 446, 447, 22, 38, 25, 21, 25, 25,
1529 35, 45, 38, 25, 29, 459, 460, 461, 462, 463,
1530 29, 25, 29, 29, 29, 38, 29, 91, 91, 25,
1531 91, 41, 32, 41, 91, 33, 25, 29, 32, 22,
1532 35, 32, 35, 40, 487, 488, 489, 490, 491, 492,
1533 493, 494, 495, 496, 497, 498, 499, 500, 501, 91,
1534 91, 34, 505, 506, 38, 34, 32, 507, 508, 509,
1535 510, 511, 512, 513, 514, 515, 35, 34, 33, 522,
1536 523, 33, 35, 526, 34, 528, 35, 530, 507, 508,
1537 509, 510, 511, 512, 513, 514, 515, 33, 541, 542,
1538 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
1539 553, 91, 91, 32, 32, 91, 23, 22, 41, 32,
1540 23, 25, 39, 5, 36, 41, 41, 36, 25, 35,
1541 41, 91, 25, 29, 36, 26, 21, 32, 582, 23,
1542 91, 585, 586, 587, 588, 35, 25, 591, 40, 25,
1543 25, 39, 41, 40, 24, 41, 91, 600, 601, 603,
1544 40, 34, 29, 41, 280, 34, 40, 35, 265, 41,
1545 32, 34, 36, 21, 35, 41, 34, 91, 622, 36,
1546 624, 40, 36, 32, 40, 40, 36, 40, 40, 36,
1547 41, 35, 34, 25, 34, 41, 41, 40, 32, 32,
1548 41, 644, 41, 41, 40, 26, 41, 34, 651, 35,
1549 653, 654, 655, 41, 657, 40, 659, 40, 34, 41,
1550 91, 29, 21, 40, 24, 40, 91, 24, 40, 672,
1551 36, 674, 34, 40, 35, 24, 41, 40, 681, 682,
1552 683, 684, 685, 686, 687, 688, 689, 27, 691, 24,
1553 693, 35, 25, 27, 91, 25, 25, 35, 41, 40,
1554 91, 91, 91, 39, 29, 29, 29, 91, 29, 713,
1555 714, 715, 91, 717, 42, 25, 38, 721, 24, 24,
1556 38, 721, 42, 42, 728, 42, 40, 28, 35, 29,
1557 734, 735, 408, 737, 738, 739, 34, 741, 742, 743,
1558 91, 745, 742, 743, 25, 745, 42, 40, 25, 29,
1559 407, 29, 28, 25, 29, 40, 35, 28, 45, 762,
1560 763, 21, 765, 766, 91, 29, 25, 29, 444, 445,
1561 23, 25, 42, 773, 774, 91, 91, 453, 23, 779,
1562 23, 42, 21, 23, 42, 788, 42, 463, 21, 38,
1563 36, 29, 34, 796, 773, 774, 25, 38, 42, 35,
1564 34, 36, 39, 29, 25, 29, 809, 25, 25, 34,
1565 810, 811, 469, 29, 28, 45, 25, 40, 23, 34,
1566 39, 34, 25, 91, 21, 36, 34, 23, 23, 41,
1567 23, 810, 811, 837, 91, 21, 36, 837, 842, 38,
1568 840, 841, 842, 843, 34, 25, 522, 523, 505, 506,
1569 854, 25, 856, 857, 858, 40, 25, 857, 858, 41,
1570 36, 38, 25, 25, 843, 25, 36, 34, 25, 25,
1571 21, 32, 36, 39, 531, 40, 21, 32, 21, 879,
1572 880, 91, 882, 36, 91, 34, 32, 91, 38, 41,
1573 91, 894, 33, 25, 36, 21, 36, 24, 555, 38,
1574 879, 880, 40, 21, 25, 581, 21, 583, 584, 909,
1575 910, 21, 32, 589, 590, 919, 21, 40, 594, 595,
1576 91, 38, 38, 21, 600, 601, 33, 38, 24, 33,
1577 38, 25, 29, 25, 21, 25, 21, 38, 33, 42,
1578 40, 40, 33, 25, 854, 621, 25, 623, 29, 38,
1579 33, 25, 25, 25, 25, 919, 40, 25, 25, 604,
1580 38, 38, 42, 38, 40, 25, 25, 856, 842, 38,
1581 40, 274, 274, 39, 38, 38, 38, 274, 39, 581,
1582 728, -1, -1, 275, 279, 279, 44, 277, 274, 277,
1583 742, 274, 274, -1, 651, 652, -1, 458, 458, -1,
1584 657, 658, -1, -1, -1, 279, 663, -1, -1, -1,
1585 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1586 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1587 -1, -1, -1, 690, -1, 692, 712, -1, -1, -1,
1588 716, -1, -1, -1, 720, -1, -1, -1, -1, -1,
1589 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1590 736, -1, -1, -1, 740, -1, -1, -1, 744, -1,
1591 746, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1592 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1593 -1, -1, -1, -1, -1, 771, 772, -1, -1, -1,
1594 -1, -1, -1, -1, -1, 762, -1, -1, -1, 766,
1595 -1, -1, -1, 770, -1, -1, -1, -1, -1, -1,
1596 777, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1597 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1598 -1, -1, 799, -1, -1, -1, -1, -1, -1, -1,
1599 -1, 808, -1, -1, -1, 831, 832, 833, 834, 816,
1600 -1, 818, -1, -1, -1, -1, -1, -1, -1, -1,
1601 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1602 -1, 838, 839, -1, -1, -1, -1, -1, -1, -1,
1603 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1604 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1605 -1, -1, -1, -1, 871, 872, 3, 4, 5, 6,
1606 -1, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1607 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1608 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
1609 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
1610 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1611 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1612 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1613 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1614 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1615 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1616 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
1617 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
1618 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1619 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
1620 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
1621 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
1622 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
1623 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
1624 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1625 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1626 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
1627 217, 218, 219, 220, 221, 222, 223, 224, 3, 4,
1628 5, -1, 7, 8, 9, 10, 11, 12, 13, 14,
1629 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1630 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1631 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
1632 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1633 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1634 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1635 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1636 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1637 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1638 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1639 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1640 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1641 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1642 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1643 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1644 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1645 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1646 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1647 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1648 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1649 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1650 3, 4, 5, -1, -1, 8, 9, 10, 11, 12,
1651 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1652 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1653 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1654 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1655 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1656 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1657 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1658 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1659 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1660 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1661 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1662 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1663 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1664 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1665 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1666 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1667 173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1668 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1669 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1670 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1671 213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1672 223, 224, 3, 4, 5, -1, -1, 8, 9, 10,
1673 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1674 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1675 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1676 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1677 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1678 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1679 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1680 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1681 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1682 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1683 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1684 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1685 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1686 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1687 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1688 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1689 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1690 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1691 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1692 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1693 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1694 221, 222, 223, 224, 3, 4, 5, 6, 7, 8,
1695 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1696 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1697 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
1698 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
1699 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
1700 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1701 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1702 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1703 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1704 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1705 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1706 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
1707 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1708 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1709 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
1710 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
1711 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
1712 179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
1713 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1714 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
1715 209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
1716 219, 220, 221, 222, 223, 3, 4, 5, 6, -1,
1717 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1718 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1719 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
1720 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1721 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
1722 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1723 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
1724 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
1725 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1726 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1727 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
1728 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
1729 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
1730 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
1731 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
1732 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
1733 168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
1734 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
1735 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
1736 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1737 208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
1738 218, 219, 220, 221, 222, 223, 3, 4, 5, -1,
1739 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1740 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1741 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
1742 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
1743 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1744 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1745 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1746 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1747 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1748 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1749 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
1750 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
1751 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1752 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
1753 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
1754 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
1755 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
1756 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
1757 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1758 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1759 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
1760 217, 218, 219, 220, 221, 222, 223, 3, 4, 5,
1761 -1, -1, 8, 9, 10, 11, 12, 13, 14, 15,
1762 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1763 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
1764 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
1765 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1766 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1767 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1768 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
1769 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1770 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
1771 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1772 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
1773 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
1774 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
1775 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
1776 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
1777 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
1778 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
1779 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1780 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1781 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
1782 216, 217, 218, 219, 220, 221, 222, 223, 3, 4,
1783 5, -1, -1, 8, 9, 10, 11, 12, 13, 14,
1784 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1785 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1786 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
1787 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1788 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1789 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1790 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1791 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1792 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1793 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1794 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1795 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1796 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1797 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1798 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1799 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1800 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1801 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1802 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1803 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1804 215, 216, 217, 218, 219, 220, 221, 222, 223, 3,
1805 4, 5, -1, -1, 8, 9, 10, 11, 12, 13,
1806 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1807 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1808 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1809 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1810 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1811 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1812 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1813 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1814 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1815 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1816 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1817 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1818 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1819 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1820 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1821 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1822 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1823 184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1824 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1825 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
1826 214, 215, 216, 217, 218, 219, 220, 221, 222, 223,
1827 3, 4, 5, -1, -1, 8, 9, 10, 11, 12,
1828 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1829 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1830 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1831 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1832 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1833 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1834 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1835 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1836 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1837 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1838 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1839 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1840 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1841 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1842 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1843 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1844 173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1845 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1846 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1847 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1848 213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1849 223, 3, 4, 5, -1, -1, 8, 9, 10, 11,
1850 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1851 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1852 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1853 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
1854 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1855 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1856 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
1857 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1858 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1859 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1860 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
1861 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1862 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1863 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1864 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1865 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
1866 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
1867 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
1868 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1869 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
1870 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
1871 222, 223, 3, 4, 5, -1, -1, 8, 9, 10,
1872 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1873 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1874 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1875 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1876 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1877 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1878 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1879 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1880 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1881 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1882 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1883 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1884 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1885 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1886 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1887 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1888 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1889 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1890 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1891 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1892 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1893 221, 222, 223, 3, 4, 5, -1, -1, 8, 9,
1894 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1895 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1896 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1897 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1898 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1899 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1900 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1901 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1902 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1903 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1904 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
1905 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1906 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
1907 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
1908 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1909 160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
1910 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
1911 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
1912 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1913 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
1914 210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
1915 220, 221, 222, 223, 3, 4, 5, -1, -1, 8,
1916 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1917 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1918 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
1919 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
1920 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
1921 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1922 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1923 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1924 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1925 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1926 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1927 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
1928 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1929 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1930 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
1931 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
1932 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
1933 179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
1934 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1935 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
1936 209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
1937 219, 220, 221, 222, 223
1938 };
1939
1940 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1941 symbol of state STATE-NUM. */
1942 static const unsigned short int yystos[] =
1943 {
1944 0, 1, 3, 21, 23, 24, 27, 32, 37, 38,
1945 39, 41, 228, 229, 230, 231, 270, 271, 272, 273,
1946 274, 275, 278, 279, 280, 281, 282, 318, 321, 24,
1947 38, 25, 25, 29, 35, 41, 25, 25, 41, 34,
1948 0, 225, 226, 268, 269, 3, 4, 5, 8, 9,
1949 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1950 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1951 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1952 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1953 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1954 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1955 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1956 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1957 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1958 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1959 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
1960 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1961 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
1962 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
1963 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1964 160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
1965 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
1966 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
1967 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1968 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
1969 210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
1970 220, 221, 222, 223, 224, 259, 262, 263, 264, 267,
1971 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
1972 267, 267, 24, 25, 39, 40, 39, 21, 29, 33,
1973 39, 32, 40, 22, 39, 268, 11, 12, 13, 14,
1974 15, 16, 17, 18, 19, 20, 261, 262, 261, 261,
1975 261, 261, 261, 261, 261, 261, 3, 11, 12, 13,
1976 14, 15, 16, 17, 18, 19, 20, 264, 23, 283,
1977 21, 23, 25, 33, 39, 234, 283, 284, 285, 286,
1978 294, 296, 297, 298, 299, 300, 301, 303, 305, 306,
1979 307, 308, 309, 310, 314, 21, 33, 236, 297, 307,
1980 237, 297, 307, 21, 23, 33, 242, 284, 285, 286,
1981 296, 303, 306, 29, 238, 293, 294, 283, 21, 25,
1982 33, 235, 283, 295, 300, 304, 305, 320, 22, 23,
1983 33, 39, 42, 232, 288, 289, 290, 291, 292, 319,
1984 233, 288, 289, 290, 291, 292, 319, 259, 265, 267,
1985 283, 21, 40, 40, 24, 40, 35, 25, 25, 39,
1986 41, 262, 28, 41, 42, 28, 34, 29, 25, 267,
1987 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
1988 267, 267, 41, 29, 267, 267, 267, 267, 41, 28,
1989 29, 34, 267, 267, 267, 41, 23, 29, 267, 267,
1990 267, 267, 267, 267, 41, 28, 29, 40, 35, 259,
1991 267, 267, 40, 38, 42, 40, 23, 23, 22, 21,
1992 24, 21, 21, 27, 24, 38, 29, 287, 290, 291,
1993 292, 287, 287, 287, 287, 287, 287, 287, 287, 287,
1994 287, 287, 287, 24, 24, 259, 259, 12, 13, 14,
1995 15, 16, 17, 18, 19, 20, 263, 263, 24, 21,
1996 24, 39, 6, 7, 34, 243, 255, 266, 277, 244,
1997 254, 259, 252, 263, 24, 28, 24, 21, 33, 42,
1998 239, 297, 301, 302, 307, 310, 311, 312, 313, 315,
1999 263, 263, 263, 263, 258, 259, 263, 26, 21, 39,
2000 38, 29, 252, 25, 35, 25, 40, 38, 39, 34,
2001 29, 29, 34, 29, 29, 42, 34, 267, 267, 267,
2002 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
2003 267, 267, 29, 29, 267, 267, 29, 34, 29, 40,
2004 265, 265, 35, 267, 267, 267, 29, 35, 29, 41,
2005 29, 35, 267, 267, 267, 267, 267, 267, 267, 267,
2006 267, 267, 267, 267, 267, 26, 34, 23, 25, 23,
2007 45, 29, 23, 34, 35, 32, 34, 34, 91, 25,
2008 26, 252, 22, 36, 241, 316, 317, 252, 252, 254,
2009 263, 259, 259, 263, 263, 263, 263, 259, 259, 263,
2010 35, 91, 240, 259, 240, 35, 34, 91, 38, 6,
2011 7, 34, 253, 263, 255, 252, 35, 91, 24, 24,
2012 32, 252, 252, 252, 252, 252, 252, 252, 252, 252,
2013 259, 263, 259, 263, 25, 34, 25, 21, 25, 22,
2014 38, 25, 91, 21, 25, 25, 29, 38, 35, 45,
2015 25, 267, 267, 267, 267, 267, 267, 267, 91, 29,
2016 267, 4, 91, 25, 29, 41, 91, 267, 267, 91,
2017 29, 29, 29, 41, 267, 267, 267, 267, 267, 267,
2018 267, 267, 267, 4, 267, 4, 267, 38, 25, 32,
2019 33, 91, 25, 29, 32, 35, 22, 32, 34, 40,
2020 38, 252, 259, 263, 263, 263, 259, 263, 35, 34,
2021 259, 6, 7, 9, 10, 256, 257, 259, 260, 261,
2022 262, 263, 35, 32, 34, 33, 33, 252, 253, 35,
2023 34, 35, 91, 33, 245, 263, 246, 263, 247, 259,
2024 245, 248, 263, 21, 249, 263, 276, 250, 259, 245,
2025 9, 10, 251, 260, 263, 256, 259, 256, 259, 91,
2026 32, 32, 91, 23, 22, 41, 32, 39, 36, 25,
2027 23, 267, 267, 267, 267, 41, 36, 4, 259, 259,
2028 261, 261, 5, 8, 41, 36, 25, 35, 267, 41,
2029 36, 91, 29, 25, 267, 32, 267, 4, 4, 26,
2030 91, 21, 23, 35, 25, 40, 25, 41, 39, 25,
2031 240, 259, 259, 240, 40, 41, 256, 6, 7, 8,
2032 8, 257, 261, 40, 41, 34, 24, 252, 40, 41,
2033 35, 34, 246, 32, 248, 256, 256, 29, 23, 29,
2034 34, 35, 41, 36, 91, 40, 34, 36, 40, 261,
2035 261, 36, 40, 40, 21, 36, 40, 41, 36, 267,
2036 32, 35, 34, 25, 41, 34, 41, 21, 25, 33,
2037 91, 40, 41, 91, 41, 91, 32, 41, 91, 40,
2038 41, 249, 32, 41, 26, 35, 34, 40, 40, 41,
2039 34, 29, 24, 36, 21, 40, 24, 40, 24, 40,
2040 24, 36, 36, 40, 34, 35, 41, 40, 91, 24,
2041 27, 24, 25, 38, 35, 27, 91, 25, 91, 25,
2042 91, 25, 35, 41, 91, 40, 39, 23, 24, 29,
2043 29, 29, 42, 29, 38, 25, 24, 42, 24, 42,
2044 23, 24, 42, 38, 40, 23, 36, 40, 28, 25,
2045 38, 35, 34, 91, 29, 42, 40, 25, 29, 25,
2046 29, 28, 25, 29, 40, 91, 28, 35, 45, 21,
2047 42, 29, 91, 25, 29, 23, 25, 91, 42, 23,
2048 42, 23, 21, 42, 23, 23, 40, 21, 38, 36,
2049 34, 29, 42, 35, 39, 34, 25, 38, 36, 29,
2050 25, 29, 25, 34, 29, 25, 28, 45, 34, 40,
2051 25, 34, 23, 25, 41, 36, 39, 91, 21, 23,
2052 23, 34, 23, 91, 21, 36, 34, 25, 25, 38,
2053 40, 41, 36, 38, 25, 25, 25, 25, 36, 34,
2054 25, 25, 32, 39, 91, 36, 40, 21, 21, 32,
2055 91, 21, 34, 32, 91, 36, 41, 91, 38, 33,
2056 36, 38, 25, 36, 21, 40, 24, 21, 25, 21,
2057 21, 32, 21, 38, 91, 38, 33, 40, 38, 33,
2058 38, 21, 24, 29, 25, 25, 21, 25, 21, 33,
2059 38, 42, 40, 38, 33, 40, 33, 25, 29, 25,
2060 25, 25, 25, 25, 40, 42, 38, 38, 40, 38,
2061 40, 25, 25, 39, 25, 25, 38, 38, 38, 38,
2062 39
2063 };
2064
2065 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
2066 # define YYSIZE_T __SIZE_TYPE__
2067 #endif
2068 #if ! defined (YYSIZE_T) && defined (size_t)
2069 # define YYSIZE_T size_t
2070 #endif
2071 #if ! defined (YYSIZE_T)
2072 # if defined (__STDC__) || defined (__cplusplus)
2073 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
2074 # define YYSIZE_T size_t
2075 # endif
2076 #endif
2077 #if ! defined (YYSIZE_T)
2078 # define YYSIZE_T unsigned int
2079 #endif
2080
2081 #define yyerrok (yyerrstatus = 0)
2082 #define yyclearin (yychar = YYEMPTY)
2083 #define YYEMPTY (-2)
2084 #define YYEOF 0
2085
2086 #define YYACCEPT goto yyacceptlab
2087 #define YYABORT goto yyabortlab
2088 #define YYERROR goto yyerrorlab
2089
2090
2091 /* Like YYERROR except do call yyerror. This remains here temporarily
2092 to ease the transition to the new meaning of YYERROR, for GCC.
2093 Once GCC version 2 has supplanted version 1, this can go. */
2094
2095 #define YYFAIL goto yyerrlab
2096
2097 #define YYRECOVERING() (!!yyerrstatus)
2098
2099 #define YYBACKUP(Token, Value) \
2100 do \
2101 if (yychar == YYEMPTY && yylen == 1) \
2102 { \
2103 yychar = (Token); \
2104 yylval = (Value); \
2105 yytoken = YYTRANSLATE (yychar); \
2106 YYPOPSTACK; \
2107 goto yybackup; \
2108 } \
2109 else \
2110 { \
2111 yyerror ("syntax error: cannot back up");\
2112 YYERROR; \
2113 } \
2114 while (0)
2115
2116 #define YYTERROR 1
2117 #define YYERRCODE 256
2118
2119 /* YYLLOC_DEFAULT -- Compute the default location (before the actions
2120 are run). */
2121
2122 #ifndef YYLLOC_DEFAULT
2123 # define YYLLOC_DEFAULT(Current, Rhs, N) \
2124 ((Current).first_line = (Rhs)[1].first_line, \
2125 (Current).first_column = (Rhs)[1].first_column, \
2126 (Current).last_line = (Rhs)[N].last_line, \
2127 (Current).last_column = (Rhs)[N].last_column)
2128 #endif
2129
2130 /* YYLEX -- calling `yylex' with the right arguments. */
2131
2132 #ifdef YYLEX_PARAM
2133 # define YYLEX yylex (&yylval, YYLEX_PARAM)
2134 #else
2135 # define YYLEX yylex (&yylval)
2136 #endif
2137
2138 /* Enable debugging if requested. */
2139 #if YYDEBUG
2140
2141 # ifndef YYFPRINTF
2142 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
2143 # define YYFPRINTF fprintf
2144 # endif
2145
2146 # define YYDPRINTF(Args) \
2147 do { \
2148 if (yydebug) \
2149 YYFPRINTF Args; \
2150 } while (0)
2151
2152 # define YYDSYMPRINT(Args) \
2153 do { \
2154 if (yydebug) \
2155 yysymprint Args; \
2156 } while (0)
2157
2158 # define YYDSYMPRINTF(Title, Token, Value, Location) \
2159 do { \
2160 if (yydebug) \
2161 { \
2162 YYFPRINTF (stderr, "%s ", Title); \
2163 yysymprint (stderr, \
2164 Token, Value); \
2165 YYFPRINTF (stderr, "\n"); \
2166 } \
2167 } while (0)
2168
2169 /*------------------------------------------------------------------.
2170 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
2171 | TOP (included). |
2172 `------------------------------------------------------------------*/
2173
2174 #if defined (__STDC__) || defined (__cplusplus)
2175 static void
2176 yy_stack_print (short int *bottom, short int *top)
2177 #else
2178 static void
2179 yy_stack_print (bottom, top)
2180 short int *bottom;
2181 short int *top;
2182 #endif
2183 {
2184 YYFPRINTF (stderr, "Stack now");
2185 for (/* Nothing. */; bottom <= top; ++bottom)
2186 YYFPRINTF (stderr, " %d", *bottom);
2187 YYFPRINTF (stderr, "\n");
2188 }
2189
2190 # define YY_STACK_PRINT(Bottom, Top) \
2191 do { \
2192 if (yydebug) \
2193 yy_stack_print ((Bottom), (Top)); \
2194 } while (0)
2195
2196
2197 /*------------------------------------------------.
2198 | Report that the YYRULE is going to be reduced. |
2199 `------------------------------------------------*/
2200
2201 #if defined (__STDC__) || defined (__cplusplus)
2202 static void
2203 yy_reduce_print (int yyrule)
2204 #else
2205 static void
2206 yy_reduce_print (yyrule)
2207 int yyrule;
2208 #endif
2209 {
2210 int yyi;
2211 unsigned int yylno = yyrline[yyrule];
2212 YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
2213 yyrule - 1, yylno);
2214 /* Print the symbols being reduced, and their result. */
2215 for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
2216 YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
2217 YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
2218 }
2219
2220 # define YY_REDUCE_PRINT(Rule) \
2221 do { \
2222 if (yydebug) \
2223 yy_reduce_print (Rule); \
2224 } while (0)
2225
2226 /* Nonzero means print parse trace. It is left uninitialized so that
2227 multiple parsers can coexist. */
2228 int yydebug;
2229 #else /* !YYDEBUG */
2230 # define YYDPRINTF(Args)
2231 # define YYDSYMPRINT(Args)
2232 # define YYDSYMPRINTF(Title, Token, Value, Location)
2233 # define YY_STACK_PRINT(Bottom, Top)
2234 # define YY_REDUCE_PRINT(Rule)
2235 #endif /* !YYDEBUG */
2236
2237
2238 /* YYINITDEPTH -- initial size of the parser's stacks. */
2239 #ifndef YYINITDEPTH
2240 # define YYINITDEPTH 200
2241 #endif
2242
2243 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
2244 if the built-in stack extension method is used).
2245
2246 Do not make this value too large; the results are undefined if
2247 SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
2248 evaluated with infinite-precision integer arithmetic. */
2249
2250 #if defined (YYMAXDEPTH) && YYMAXDEPTH == 0
2251 # undef YYMAXDEPTH
2252 #endif
2253
2254 #ifndef YYMAXDEPTH
2255 # define YYMAXDEPTH 10000
2256 #endif
2257
2258
2259
2260 #if YYERROR_VERBOSE
2261
2262 # ifndef yystrlen
2263 # if defined (__GLIBC__) && defined (_STRING_H)
2264 # define yystrlen strlen
2265 # else
2266 /* Return the length of YYSTR. */
2267 static YYSIZE_T
2268 # if defined (__STDC__) || defined (__cplusplus)
2269 yystrlen (const char *yystr)
2270 # else
2271 yystrlen (yystr)
2272 const char *yystr;
2273 # endif
2274 {
2275 register const char *yys = yystr;
2276
2277 while (*yys++ != '\0')
2278 continue;
2279
2280 return yys - yystr - 1;
2281 }
2282 # endif
2283 # endif
2284
2285 # ifndef yystpcpy
2286 # if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
2287 # define yystpcpy stpcpy
2288 # else
2289 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2290 YYDEST. */
2291 static char *
2292 # if defined (__STDC__) || defined (__cplusplus)
2293 yystpcpy (char *yydest, const char *yysrc)
2294 # else
2295 yystpcpy (yydest, yysrc)
2296 char *yydest;
2297 const char *yysrc;
2298 # endif
2299 {
2300 register char *yyd = yydest;
2301 register const char *yys = yysrc;
2302
2303 while ((*yyd++ = *yys++) != '\0')
2304 continue;
2305
2306 return yyd - 1;
2307 }
2308 # endif
2309 # endif
2310
2311 #endif /* !YYERROR_VERBOSE */
2312
2313
2314
2315 #if YYDEBUG
2316 /*--------------------------------.
2317 | Print this symbol on YYOUTPUT. |
2318 `--------------------------------*/
2319
2320 #if defined (__STDC__) || defined (__cplusplus)
2321 static void
2322 yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
2323 #else
2324 static void
2325 yysymprint (yyoutput, yytype, yyvaluep)
2326 FILE *yyoutput;
2327 int yytype;
2328 YYSTYPE *yyvaluep;
2329 #endif
2330 {
2331 /* Pacify ``unused variable'' warnings. */
2332 (void) yyvaluep;
2333
2334 if (yytype < YYNTOKENS)
2335 {
2336 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2337 # ifdef YYPRINT
2338 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2339 # endif
2340 }
2341 else
2342 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2343
2344 switch (yytype)
2345 {
2346 default:
2347 break;
2348 }
2349 YYFPRINTF (yyoutput, ")");
2350 }
2351
2352 #endif /* ! YYDEBUG */
2353 /*-----------------------------------------------.
2354 | Release the memory associated to this symbol. |
2355 `-----------------------------------------------*/
2356
2357 #if defined (__STDC__) || defined (__cplusplus)
2358 static void
2359 yydestruct (int yytype, YYSTYPE *yyvaluep)
2360 #else
2361 static void
2362 yydestruct (yytype, yyvaluep)
2363 int yytype;
2364 YYSTYPE *yyvaluep;
2365 #endif
2366 {
2367 /* Pacify ``unused variable'' warnings. */
2368 (void) yyvaluep;
2369
2370 switch (yytype)
2371 {
2372
2373 default:
2374 break;
2375 }
2376 }
2377
2378
2379 /* Prevent warnings from -Wmissing-prototypes. */
2380
2381 #ifdef YYPARSE_PARAM
2382 # if defined (__STDC__) || defined (__cplusplus)
2383 int yyparse (void *YYPARSE_PARAM);
2384 # else
2385 int yyparse ();
2386 # endif
2387 #else /* ! YYPARSE_PARAM */
2388 #if defined (__STDC__) || defined (__cplusplus)
2389 int yyparse (void);
2390 #else
2391 int yyparse ();
2392 #endif
2393 #endif /* ! YYPARSE_PARAM */
2394
2395
2396
2397
2398
2399
2400 /*----------.
2401 | yyparse. |
2402 `----------*/
2403
2404 #ifdef YYPARSE_PARAM
2405 # if defined (__STDC__) || defined (__cplusplus)
2406 int yyparse (void *YYPARSE_PARAM)
2407 # else
2408 int yyparse (YYPARSE_PARAM)
2409 void *YYPARSE_PARAM;
2410 # endif
2411 #else /* ! YYPARSE_PARAM */
2412 #if defined (__STDC__) || defined (__cplusplus)
2413 int
2414 yyparse (void)
2415 #else
2416 int
2417 yyparse ()
2418
2419 #endif
2420 #endif
2421 {
2422 /* The lookahead symbol. */
2423 int yychar;
2424
2425 /* The semantic value of the lookahead symbol. */
2426 YYSTYPE yylval;
2427
2428 /* Number of syntax errors so far. */
2429 int yynerrs;
2430
2431 register int yystate;
2432 register int yyn;
2433 int yyresult;
2434 /* Number of tokens to shift before error messages enabled. */
2435 int yyerrstatus;
2436 /* Lookahead token as an internal (translated) token number. */
2437 int yytoken = 0;
2438
2439 /* Three stacks and their tools:
2440 `yyss': related to states,
2441 `yyvs': related to semantic values,
2442 `yyls': related to locations.
2443
2444 Refer to the stacks thru separate pointers, to allow yyoverflow
2445 to reallocate them elsewhere. */
2446
2447 /* The state stack. */
2448 short int yyssa[YYINITDEPTH];
2449 short int *yyss = yyssa;
2450 register short int *yyssp;
2451
2452 /* The semantic value stack. */
2453 YYSTYPE yyvsa[YYINITDEPTH];
2454 YYSTYPE *yyvs = yyvsa;
2455 register YYSTYPE *yyvsp;
2456
2457
2458
2459 #define YYPOPSTACK (yyvsp--, yyssp--)
2460
2461 YYSIZE_T yystacksize = YYINITDEPTH;
2462
2463 /* The variables used to return semantic value and location from the
2464 action routines. */
2465 YYSTYPE yyval;
2466
2467
2468 /* When reducing, the number of symbols on the RHS of the reduced
2469 rule. */
2470 int yylen;
2471
2472 YYDPRINTF ((stderr, "Starting parse\n"));
2473
2474 yystate = 0;
2475 yyerrstatus = 0;
2476 yynerrs = 0;
2477 yychar = YYEMPTY; /* Cause a token to be read. */
2478
2479 /* Initialize stack pointers.
2480 Waste one element of value and location stack
2481 so that they stay on the same level as the state stack.
2482 The wasted elements are never initialized. */
2483
2484 yyssp = yyss;
2485 yyvsp = yyvs;
2486
2487
2488 goto yysetstate;
2489
2490 /*------------------------------------------------------------.
2491 | yynewstate -- Push a new state, which is found in yystate. |
2492 `------------------------------------------------------------*/
2493 yynewstate:
2494 /* In all cases, when you get here, the value and location stacks
2495 have just been pushed. so pushing a state here evens the stacks.
2496 */
2497 yyssp++;
2498
2499 yysetstate:
2500 *yyssp = yystate;
2501
2502 if (yyss + yystacksize - 1 <= yyssp)
2503 {
2504 /* Get the current used size of the three stacks, in elements. */
2505 YYSIZE_T yysize = yyssp - yyss + 1;
2506
2507 #ifdef yyoverflow
2508 {
2509 /* Give user a chance to reallocate the stack. Use copies of
2510 these so that the &'s don't force the real ones into
2511 memory. */
2512 YYSTYPE *yyvs1 = yyvs;
2513 short int *yyss1 = yyss;
2514
2515
2516 /* Each stack pointer address is followed by the size of the
2517 data in use in that stack, in bytes. This used to be a
2518 conditional around just the two extra args, but that might
2519 be undefined if yyoverflow is a macro. */
2520 yyoverflow ("parser stack overflow",
2521 &yyss1, yysize * sizeof (*yyssp),
2522 &yyvs1, yysize * sizeof (*yyvsp),
2523
2524 &yystacksize);
2525
2526 yyss = yyss1;
2527 yyvs = yyvs1;
2528 }
2529 #else /* no yyoverflow */
2530 # ifndef YYSTACK_RELOCATE
2531 goto yyoverflowlab;
2532 # else
2533 /* Extend the stack our own way. */
2534 if (YYMAXDEPTH <= yystacksize)
2535 goto yyoverflowlab;
2536 yystacksize *= 2;
2537 if (YYMAXDEPTH < yystacksize)
2538 yystacksize = YYMAXDEPTH;
2539
2540 {
2541 short int *yyss1 = yyss;
2542 union yyalloc *yyptr =
2543 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2544 if (! yyptr)
2545 goto yyoverflowlab;
2546 YYSTACK_RELOCATE (yyss);
2547 YYSTACK_RELOCATE (yyvs);
2548
2549 # undef YYSTACK_RELOCATE
2550 if (yyss1 != yyssa)
2551 YYSTACK_FREE (yyss1);
2552 }
2553 # endif
2554 #endif /* no yyoverflow */
2555
2556 yyssp = yyss + yysize - 1;
2557 yyvsp = yyvs + yysize - 1;
2558
2559
2560 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
2561 (unsigned long int) yystacksize));
2562
2563 if (yyss + yystacksize - 1 <= yyssp)
2564 YYABORT;
2565 }
2566
2567 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2568
2569 goto yybackup;
2570
2571 /*-----------.
2572 | yybackup. |
2573 `-----------*/
2574 yybackup:
2575
2576 /* Do appropriate processing given the current state. */
2577 /* Read a lookahead token if we need one and don't already have one. */
2578 /* yyresume: */
2579
2580 /* First try to decide what to do without reference to lookahead token. */
2581
2582 yyn = yypact[yystate];
2583 if (yyn == YYPACT_NINF)
2584 goto yydefault;
2585
2586 /* Not known => get a lookahead token if don't already have one. */
2587
2588 /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
2589 if (yychar == YYEMPTY)
2590 {
2591 YYDPRINTF ((stderr, "Reading a token: "));
2592 yychar = YYLEX;
2593 }
2594
2595 if (yychar <= YYEOF)
2596 {
2597 yychar = yytoken = YYEOF;
2598 YYDPRINTF ((stderr, "Now at end of input.\n"));
2599 }
2600 else
2601 {
2602 yytoken = YYTRANSLATE (yychar);
2603 YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);
2604 }
2605
2606 /* If the proper action on seeing token YYTOKEN is to reduce or to
2607 detect an error, take that action. */
2608 yyn += yytoken;
2609 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2610 goto yydefault;
2611 yyn = yytable[yyn];
2612 if (yyn <= 0)
2613 {
2614 if (yyn == 0 || yyn == YYTABLE_NINF)
2615 goto yyerrlab;
2616 yyn = -yyn;
2617 goto yyreduce;
2618 }
2619
2620 if (yyn == YYFINAL)
2621 YYACCEPT;
2622
2623 /* Shift the lookahead token. */
2624 YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));
2625
2626 /* Discard the token being shifted unless it is eof. */
2627 if (yychar != YYEOF)
2628 yychar = YYEMPTY;
2629
2630 *++yyvsp = yylval;
2631
2632
2633 /* Count tokens shifted since error; after three, turn off error
2634 status. */
2635 if (yyerrstatus)
2636 yyerrstatus--;
2637
2638 yystate = yyn;
2639 goto yynewstate;
2640
2641
2642 /*-----------------------------------------------------------.
2643 | yydefault -- do the default action for the current state. |
2644 `-----------------------------------------------------------*/
2645 yydefault:
2646 yyn = yydefact[yystate];
2647 if (yyn == 0)
2648 goto yyerrlab;
2649 goto yyreduce;
2650
2651
2652 /*-----------------------------.
2653 | yyreduce -- Do a reduction. |
2654 `-----------------------------*/
2655 yyreduce:
2656 /* yyn is the number of a rule to reduce with. */
2657 yylen = yyr2[yyn];
2658
2659 /* If YYLEN is nonzero, implement the default value of the action:
2660 `$$ = $1'.
2661
2662 Otherwise, the following line sets YYVAL to garbage.
2663 This behavior is undocumented and Bison
2664 users should not rely upon it. Assigning to YYVAL
2665 unconditionally makes the parser a bit smaller, and it avoids a
2666 GCC warning that YYVAL may be used uninitialized. */
2667 yyval = yyvsp[1-yylen];
2668
2669
2670 YY_REDUCE_PRINT (yyn);
2671 switch (yyn)
2672 {
2673 case 4:
2674 #line 94 "lscp.y"
2675 { return LSCP_DONE; }
2676 break;
2677
2678 case 5:
2679 #line 95 "lscp.y"
2680 { return LSCP_DONE; }
2681 break;
2682
2683 case 6:
2684 #line 96 "lscp.y"
2685 { LSCPSERVER->AnswerClient(yyvsp[0].String); return LSCP_DONE; }
2686 break;
2687
2688 case 7:
2689 #line 97 "lscp.y"
2690 { LSCPSERVER->AnswerClient("ERR:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }
2691 break;
2692
2693 case 13:
2694 #line 107 "lscp.y"
2695 { yyval.String = LSCPSERVER->AddChannel(); }
2696 break;
2697
2698 case 14:
2699 #line 108 "lscp.y"
2700 { yyval.String = yyvsp[0].String; }
2701 break;
2702
2703 case 15:
2704 #line 109 "lscp.y"
2705 { yyval.String = yyvsp[0].String; }
2706 break;
2707
2708 case 16:
2709 #line 110 "lscp.y"
2710 { yyval.String = yyvsp[0].String; }
2711 break;
2712
2713 case 17:
2714 #line 111 "lscp.y"
2715 { yyval.String = yyvsp[0].String; }
2716 break;
2717
2718 case 18:
2719 #line 112 "lscp.y"
2720 { yyval.String = yyvsp[0].String; }
2721 break;
2722
2723 case 19:
2724 #line 113 "lscp.y"
2725 { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number); }
2726 break;
2727
2728 case 20:
2729 #line 114 "lscp.y"
2730 { yyval.String = yyvsp[0].String; }
2731 break;
2732
2733 case 21:
2734 #line 115 "lscp.y"
2735 { yyval.String = yyvsp[0].String; }
2736 break;
2737
2738 case 22:
2739 #line 116 "lscp.y"
2740 { yyval.String = yyvsp[0].String; }
2741 break;
2742
2743 case 23:
2744 #line 117 "lscp.y"
2745 { yyval.String = LSCPSERVER->QueryDatabase(yyvsp[0].String); }
2746 break;
2747
2748 case 24:
2749 #line 118 "lscp.y"
2750 { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number); }
2751 break;
2752
2753 case 25:
2754 #line 119 "lscp.y"
2755 { yyval.String = LSCPSERVER->ResetSampler(); }
2756 break;
2757
2758 case 26:
2759 #line 120 "lscp.y"
2760 { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
2761 break;
2762
2763 case 27:
2764 #line 123 "lscp.y"
2765 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count); }
2766 break;
2767
2768 case 28:
2769 #line 124 "lscp.y"
2770 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count); }
2771 break;
2772
2773 case 29:
2774 #line 125 "lscp.y"
2775 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count); }
2776 break;
2777
2778 case 30:
2779 #line 126 "lscp.y"
2780 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill); }
2781 break;
2782
2783 case 31:
2784 #line 127 "lscp.y"
2785 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info); }
2786 break;
2787
2788 case 32:
2789 #line 128 "lscp.y"
2790 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc); }
2791 break;
2792
2793 case 33:
2794 #line 131 "lscp.y"
2795 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count); }
2796 break;
2797
2798 case 34:
2799 #line 132 "lscp.y"
2800 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count); }
2801 break;
2802
2803 case 35:
2804 #line 133 "lscp.y"
2805 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count); }
2806 break;
2807
2808 case 36:
2809 #line 134 "lscp.y"
2810 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill); }
2811 break;
2812
2813 case 37:
2814 #line 135 "lscp.y"
2815 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info); }
2816 break;
2817
2818 case 38:
2819 #line 136 "lscp.y"
2820 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc); }
2821 break;
2822
2823 case 39:
2824 #line 139 "lscp.y"
2825 { yyval.String = LSCPSERVER->GetAvailableEngines(); }
2826 break;
2827
2828 case 40:
2829 #line 140 "lscp.y"
2830 { yyval.String = LSCPSERVER->GetAvailableMidiInputDrivers(); }
2831 break;
2832
2833 case 41:
2834 #line 141 "lscp.y"
2835 { yyval.String = LSCPSERVER->GetMidiInputDriverInfo(yyvsp[0].String); }
2836 break;
2837
2838 case 42:
2839 #line 142 "lscp.y"
2840 { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String); }
2841 break;
2842
2843 case 43:
2844 #line 143 "lscp.y"
2845 { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList); }
2846 break;
2847
2848 case 44:
2849 #line 144 "lscp.y"
2850 { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers(); }
2851 break;
2852
2853 case 45:
2854 #line 145 "lscp.y"
2855 { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String); }
2856 break;
2857
2858 case 46:
2859 #line 146 "lscp.y"
2860 { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String); }
2861 break;
2862
2863 case 47:
2864 #line 147 "lscp.y"
2865 { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList); }
2866 break;
2867
2868 case 48:
2869 #line 148 "lscp.y"
2870 { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount(); }
2871 break;
2872
2873 case 49:
2874 #line 149 "lscp.y"
2875 { yyval.String = LSCPSERVER->GetMidiInputDeviceCount(); }
2876 break;
2877
2878 case 50:
2879 #line 150 "lscp.y"
2880 { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number); }
2881 break;
2882
2883 case 51:
2884 #line 151 "lscp.y"
2885 { yyval.String = LSCPSERVER->GetMidiInputDeviceInfo(yyvsp[0].Number); }
2886 break;
2887
2888 case 52:
2889 #line 152 "lscp.y"
2890 { yyval.String = LSCPSERVER->GetMidiInputPortInfo(yyvsp[-2].Number, yyvsp[0].Number); }
2891 break;
2892
2893 case 53:
2894 #line 153 "lscp.y"
2895 { yyval.String = LSCPSERVER->GetMidiInputPortParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }
2896 break;
2897
2898 case 54:
2899 #line 154 "lscp.y"
2900 { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number); }
2901 break;
2902
2903 case 55:
2904 #line 155 "lscp.y"
2905 { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }
2906 break;
2907
2908 case 56:
2909 #line 156 "lscp.y"
2910 { yyval.String = LSCPSERVER->GetChannels(); }
2911 break;
2912
2913 case 57:
2914 #line 157 "lscp.y"
2915 { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number); }
2916 break;
2917
2918 case 58:
2919 #line 158 "lscp.y"
2920 { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number); }
2921 break;
2922
2923 case 59:
2924 #line 159 "lscp.y"
2925 { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number); }
2926 break;
2927
2928 case 60:
2929 #line 160 "lscp.y"
2930 { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number); }
2931 break;
2932
2933 case 61:
2934 #line 161 "lscp.y"
2935 { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String); }
2936 break;
2937
2938 case 62:
2939 #line 162 "lscp.y"
2940 { yyval.String = LSCPSERVER->GetServerInfo(); }
2941 break;
2942
2943 case 63:
2944 #line 165 "lscp.y"
2945 { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2946 break;
2947
2948 case 64:
2949 #line 166 "lscp.y"
2950 { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2951 break;
2952
2953 case 65:
2954 #line 167 "lscp.y"
2955 { yyval.String = LSCPSERVER->SetMidiInputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2956 break;
2957
2958 case 66:
2959 #line 168 "lscp.y"
2960 { yyval.String = LSCPSERVER->SetMidiInputPortParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2961 break;
2962
2963 case 67:
2964 #line 169 "lscp.y"
2965 { yyval.String = yyvsp[0].String; }
2966 break;
2967
2968 case 68:
2969 #line 170 "lscp.y"
2970 { yyval.String = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, yyvsp[0].Dotnum); }
2971 break;
2972
2973 case 69:
2974 #line 173 "lscp.y"
2975 { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }
2976 break;
2977
2978 case 70:
2979 #line 174 "lscp.y"
2980 { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String); }
2981 break;
2982
2983 case 71:
2984 #line 175 "lscp.y"
2985 { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }
2986 break;
2987
2988 case 72:
2989 #line 176 "lscp.y"
2990 { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[0].String); }
2991 break;
2992
2993 case 73:
2994 #line 179 "lscp.y"
2995 { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }
2996 break;
2997
2998 case 74:
2999 #line 180 "lscp.y"
3000 { yyval.String = LSCPSERVER->DestroyMidiInputDevice(yyvsp[0].Number); }
3001 break;
3002
3003 case 75:
3004 #line 183 "lscp.y"
3005 { yyval.String = yyvsp[0].String; }
3006 break;
3007
3008 case 76:
3009 #line 184 "lscp.y"
3010 { yyval.String = yyvsp[0].String; }
3011 break;
3012
3013 case 77:
3014 #line 187 "lscp.y"
3015 { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number); }
3016 break;
3017
3018 case 78:
3019 #line 188 "lscp.y"
3020 { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }
3021 break;
3022
3023 case 79:
3024 #line 189 "lscp.y"
3025 { yyval.String = LSCPSERVER->SetAudioOutputType(yyvsp[0].String, yyvsp[-2].Number); }
3026 break;
3027
3028 case 80:
3029 #line 190 "lscp.y"
3030 { yyval.String = LSCPSERVER->SetMIDIInput(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-6].Number); }
3031 break;
3032
3033 case 81:
3034 #line 191 "lscp.y"
3035 { yyval.String = LSCPSERVER->SetMIDIInputDevice(yyvsp[0].Number, yyvsp[-2].Number); }
3036 break;
3037
3038 case 82:
3039 #line 192 "lscp.y"
3040 { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].Number, yyvsp[-2].Number); }
3041 break;
3042
3043 case 83:
3044 #line 193 "lscp.y"
3045 { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number); }
3046 break;
3047
3048 case 84:
3049 #line 194 "lscp.y"
3050 { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number); }
3051 break;
3052
3053 case 85:
3054 #line 195 "lscp.y"
3055 { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number); }
3056 break;
3057
3058 case 86:
3059 #line 198 "lscp.y"
3060 { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }
3061 break;
3062
3063 case 87:
3064 #line 199 "lscp.y"
3065 { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }
3066 break;
3067
3068 case 88:
3069 #line 202 "lscp.y"
3070 { yyval.FillResponse = fill_response_bytes; }
3071 break;
3072
3073 case 89:
3074 #line 203 "lscp.y"
3075 { yyval.FillResponse = fill_response_percentage; }
3076 break;
3077
3078 case 90:
3079 #line 206 "lscp.y"
3080 { yyval.String = LSCPSERVER->GetAudioOutputDevices(); }
3081 break;
3082
3083 case 91:
3084 #line 207 "lscp.y"
3085 { yyval.String = LSCPSERVER->GetMidiInputDevices(); }
3086 break;
3087
3088 case 92:
3089 #line 208 "lscp.y"
3090 { yyval.String = LSCPSERVER->ListChannels(); }
3091 break;
3092
3093 case 93:
3094 #line 209 "lscp.y"
3095 { yyval.String = LSCPSERVER->ListAvailableEngines(); }
3096 break;
3097
3098 case 94:
3099 #line 210 "lscp.y"
3100 { yyval.String = LSCPSERVER->ListAvailableMidiInputDrivers(); }
3101 break;
3102
3103 case 95:
3104 #line 211 "lscp.y"
3105 { yyval.String = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
3106 break;
3107
3108 case 96:
3109 #line 214 "lscp.y"
3110 { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number); }
3111 break;
3112
3113 case 97:
3114 #line 215 "lscp.y"
3115 { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, true); }
3116 break;
3117
3118 case 98:
3119 #line 218 "lscp.y"
3120 { yyval.String = LSCPSERVER->SetEngineType(yyvsp[-2].String, yyvsp[0].Number); }
3121 break;
3122
3123 case 104:
3124 #line 234 "lscp.y"
3125 { yyval.Number = 16; }
3126 break;
3127
3128 case 107:
3129 #line 241 "lscp.y"
3130 { yyval.Dotnum = yyvsp[0].Number; }
3131 break;
3132
3133 case 113:
3134 #line 257 "lscp.y"
3135 { yyval.String = yyvsp[-2].String + "," + yyvsp[0].String; }
3136 break;
3137
3138 case 115:
3139 #line 261 "lscp.y"
3140 { yyval.String = "\'" + yyvsp[-1].String + "\'"; }
3141 break;
3142
3143 case 116:
3144 #line 262 "lscp.y"
3145 { yyval.String = "\"" + yyvsp[-1].String + "\""; }
3146 break;
3147
3148 case 117:
3149 #line 263 "lscp.y"
3150 { std::stringstream ss; ss << "\'" << yyvsp[0].Number << "\'"; yyval.String = ss.str(); }
3151 break;
3152
3153 case 118:
3154 #line 264 "lscp.y"
3155 { std::stringstream ss; ss << "\'" << yyvsp[0].Dotnum << "\'"; yyval.String = ss.str(); }
3156 break;
3157
3158 case 119:
3159 #line 272 "lscp.y"
3160 { yyval.Dotnum = yyvsp[0].Number; }
3161 break;
3162
3163 case 120:
3164 #line 273 "lscp.y"
3165 { yyval.Dotnum = -1; }
3166 break;
3167
3168 case 121:
3169 #line 276 "lscp.y"
3170 { std::string s; s = yyvsp[0].Char; yyval.String = s; }
3171 break;
3172
3173 case 122:
3174 #line 277 "lscp.y"
3175 { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }
3176 break;
3177
3178 case 123:
3179 #line 280 "lscp.y"
3180 { yyval.Dotnum = atof(String(yyvsp[-2].String + "." + yyvsp[0].String).c_str()); }
3181 break;
3182
3183 case 124:
3184 #line 281 "lscp.y"
3185 { String s = "+"; s += yyvsp[-2].String; s += "."; s += yyvsp[0].String; yyval.Dotnum = atof(s.c_str()); }
3186 break;
3187
3188 case 125:
3189 #line 282 "lscp.y"
3190 { yyval.Dotnum = atof(String("-" + yyvsp[-2].String + "." + yyvsp[0].String).c_str()); }
3191 break;
3192
3193 case 126:
3194 #line 286 "lscp.y"
3195 { yyval.String = yyvsp[0].Char; }
3196 break;
3197
3198 case 127:
3199 #line 287 "lscp.y"
3200 { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }
3201 break;
3202
3203 case 128:
3204 #line 290 "lscp.y"
3205 { yyval.Char = '0'; }
3206 break;
3207
3208 case 129:
3209 #line 291 "lscp.y"
3210 { yyval.Char = '1'; }
3211 break;
3212
3213 case 130:
3214 #line 292 "lscp.y"
3215 { yyval.Char = '2'; }
3216 break;
3217
3218 case 131:
3219 #line 293 "lscp.y"
3220 { yyval.Char = '3'; }
3221 break;
3222
3223 case 132:
3224 #line 294 "lscp.y"
3225 { yyval.Char = '4'; }
3226 break;
3227
3228 case 133:
3229 #line 295 "lscp.y"
3230 { yyval.Char = '5'; }
3231 break;
3232
3233 case 134:
3234 #line 296 "lscp.y"
3235 { yyval.Char = '6'; }
3236 break;
3237
3238 case 135:
3239 #line 297 "lscp.y"
3240 { yyval.Char = '7'; }
3241 break;
3242
3243 case 136:
3244 #line 298 "lscp.y"
3245 { yyval.Char = '8'; }
3246 break;
3247
3248 case 137:
3249 #line 299 "lscp.y"
3250 { yyval.Char = '9'; }
3251 break;
3252
3253 case 138:
3254 #line 302 "lscp.y"
3255 { yyval.Number = atoi(String(1, yyvsp[0].Char).c_str()); }
3256 break;
3257
3258 case 139:
3259 #line 303 "lscp.y"
3260 { yyval.Number = atoi(String(String("1") + yyvsp[0].String).c_str()); }
3261 break;
3262
3263 case 140:
3264 #line 304 "lscp.y"
3265 { yyval.Number = atoi(String(String("2") + yyvsp[0].String).c_str()); }
3266 break;
3267
3268 case 141:
3269 #line 305 "lscp.y"
3270 { yyval.Number = atoi(String(String("3") + yyvsp[0].String).c_str()); }
3271 break;
3272
3273 case 142:
3274 #line 306 "lscp.y"
3275 { yyval.Number = atoi(String(String("4") + yyvsp[0].String).c_str()); }
3276 break;
3277
3278 case 143:
3279 #line 307 "lscp.y"
3280 { yyval.Number = atoi(String(String("5") + yyvsp[0].String).c_str()); }
3281 break;
3282
3283 case 144:
3284 #line 308 "lscp.y"
3285 { yyval.Number = atoi(String(String("6") + yyvsp[0].String).c_str()); }
3286 break;
3287
3288 case 145:
3289 #line 309 "lscp.y"
3290 { yyval.Number = atoi(String(String("7") + yyvsp[0].String).c_str()); }
3291 break;
3292
3293 case 146:
3294 #line 310 "lscp.y"
3295 { yyval.Number = atoi(String(String("8") + yyvsp[0].String).c_str()); }
3296 break;
3297
3298 case 147:
3299 #line 311 "lscp.y"
3300 { yyval.Number = atoi(String(String("9") + yyvsp[0].String).c_str()); }
3301 break;
3302
3303 case 148:
3304 #line 313 "lscp.y"
3305 { yyval.Char = 'A'; }
3306 break;
3307
3308 case 149:
3309 #line 313 "lscp.y"
3310 { yyval.Char = 'B'; }
3311 break;
3312
3313 case 150:
3314 #line 313 "lscp.y"
3315 { yyval.Char = 'C'; }
3316 break;
3317
3318 case 151:
3319 #line 313 "lscp.y"
3320 { yyval.Char = 'D'; }
3321 break;
3322
3323 case 152:
3324 #line 313 "lscp.y"
3325 { yyval.Char = 'E'; }
3326 break;
3327
3328 case 153:
3329 #line 313 "lscp.y"
3330 { yyval.Char = 'F'; }
3331 break;
3332
3333 case 154:
3334 #line 313 "lscp.y"
3335 { yyval.Char = 'G'; }
3336 break;
3337
3338 case 155:
3339 #line 313 "lscp.y"
3340 { yyval.Char = 'H'; }
3341 break;
3342
3343 case 156:
3344 #line 313 "lscp.y"
3345 { yyval.Char = 'I'; }
3346 break;
3347
3348 case 157:
3349 #line 313 "lscp.y"
3350 { yyval.Char = 'J'; }
3351 break;
3352
3353 case 158:
3354 #line 313 "lscp.y"
3355 { yyval.Char = 'K'; }
3356 break;
3357
3358 case 159:
3359 #line 313 "lscp.y"
3360 { yyval.Char = 'L'; }
3361 break;
3362
3363 case 160:
3364 #line 313 "lscp.y"
3365 { yyval.Char = 'M'; }
3366 break;
3367
3368 case 161:
3369 #line 313 "lscp.y"
3370 { yyval.Char = 'N'; }
3371 break;
3372
3373 case 162:
3374 #line 313 "lscp.y"
3375 { yyval.Char = 'O'; }
3376 break;
3377
3378 case 163:
3379 #line 313 "lscp.y"
3380 { yyval.Char = 'P'; }
3381 break;
3382
3383 case 164:
3384 #line 313 "lscp.y"
3385 { yyval.Char = 'Q'; }
3386 break;
3387
3388 case 165:
3389 #line 313 "lscp.y"
3390 { yyval.Char = 'R'; }
3391 break;
3392
3393 case 166:
3394 #line 313 "lscp.y"
3395 { yyval.Char = 'S'; }
3396 break;
3397
3398 case 167:
3399 #line 313 "lscp.y"
3400 { yyval.Char = 'T'; }
3401 break;
3402
3403 case 168:
3404 #line 313 "lscp.y"
3405 { yyval.Char = 'U'; }
3406 break;
3407
3408 case 169:
3409 #line 313 "lscp.y"
3410 { yyval.Char = 'V'; }
3411 break;
3412
3413 case 170:
3414 #line 313 "lscp.y"
3415 { yyval.Char = 'W'; }
3416 break;
3417
3418 case 171:
3419 #line 313 "lscp.y"
3420 { yyval.Char = 'X'; }
3421 break;
3422
3423 case 172:
3424 #line 313 "lscp.y"
3425 { yyval.Char = 'Y'; }
3426 break;
3427
3428 case 173:
3429 #line 313 "lscp.y"
3430 { yyval.Char = 'Z'; }
3431 break;
3432
3433 case 174:
3434 #line 314 "lscp.y"
3435 { yyval.Char = 'a'; }
3436 break;
3437
3438 case 175:
3439 #line 314 "lscp.y"
3440 { yyval.Char = 'b'; }
3441 break;
3442
3443 case 176:
3444 #line 314 "lscp.y"
3445 { yyval.Char = 'c'; }
3446 break;
3447
3448 case 177:
3449 #line 314 "lscp.y"
3450 { yyval.Char = 'd'; }
3451 break;
3452
3453 case 178:
3454 #line 314 "lscp.y"
3455 { yyval.Char = 'e'; }
3456 break;
3457
3458 case 179:
3459 #line 314 "lscp.y"
3460 { yyval.Char = 'f'; }
3461 break;
3462
3463 case 180:
3464 #line 314 "lscp.y"
3465 { yyval.Char = 'g'; }
3466 break;
3467
3468 case 181:
3469 #line 314 "lscp.y"
3470 { yyval.Char = 'h'; }
3471 break;
3472
3473 case 182:
3474 #line 314 "lscp.y"
3475 { yyval.Char = 'i'; }
3476 break;
3477
3478 case 183:
3479 #line 314 "lscp.y"
3480 { yyval.Char = 'j'; }
3481 break;
3482
3483 case 184:
3484 #line 314 "lscp.y"
3485 { yyval.Char = 'k'; }
3486 break;
3487
3488 case 185:
3489 #line 314 "lscp.y"
3490 { yyval.Char = 'l'; }
3491 break;
3492
3493 case 186:
3494 #line 314 "lscp.y"
3495 { yyval.Char = 'm'; }
3496 break;
3497
3498 case 187:
3499 #line 314 "lscp.y"
3500 { yyval.Char = 'n'; }
3501 break;
3502
3503 case 188:
3504 #line 314 "lscp.y"
3505 { yyval.Char = 'o'; }
3506 break;
3507
3508 case 189:
3509 #line 314 "lscp.y"
3510 { yyval.Char = 'p'; }
3511 break;
3512
3513 case 190:
3514 #line 314 "lscp.y"
3515 { yyval.Char = 'q'; }
3516 break;
3517
3518 case 191:
3519 #line 314 "lscp.y"
3520 { yyval.Char = 'r'; }
3521 break;
3522
3523 case 192:
3524 #line 314 "lscp.y"
3525 { yyval.Char = 's'; }
3526 break;
3527
3528 case 193:
3529 #line 314 "lscp.y"
3530 { yyval.Char = 't'; }
3531 break;
3532
3533 case 194:
3534 #line 314 "lscp.y"
3535 { yyval.Char = 'u'; }
3536 break;
3537
3538 case 195:
3539 #line 314 "lscp.y"
3540 { yyval.Char = 'v'; }
3541 break;
3542
3543 case 196:
3544 #line 314 "lscp.y"
3545 { yyval.Char = 'w'; }
3546 break;
3547
3548 case 197:
3549 #line 314 "lscp.y"
3550 { yyval.Char = 'x'; }
3551 break;
3552
3553 case 198:
3554 #line 314 "lscp.y"
3555 { yyval.Char = 'y'; }
3556 break;
3557
3558 case 199:
3559 #line 314 "lscp.y"
3560 { yyval.Char = 'z'; }
3561 break;
3562
3563 case 200:
3564 #line 315 "lscp.y"
3565 { yyval.Char = '0'; }
3566 break;
3567
3568 case 201:
3569 #line 315 "lscp.y"
3570 { yyval.Char = '1'; }
3571 break;
3572
3573 case 202:
3574 #line 315 "lscp.y"
3575 { yyval.Char = '2'; }
3576 break;
3577
3578 case 203:
3579 #line 315 "lscp.y"
3580 { yyval.Char = '3'; }
3581 break;
3582
3583 case 204:
3584 #line 315 "lscp.y"
3585 { yyval.Char = '4'; }
3586 break;
3587
3588 case 205:
3589 #line 315 "lscp.y"
3590 { yyval.Char = '5'; }
3591 break;
3592
3593 case 206:
3594 #line 315 "lscp.y"
3595 { yyval.Char = '6'; }
3596 break;
3597
3598 case 207:
3599 #line 315 "lscp.y"
3600 { yyval.Char = '7'; }
3601 break;
3602
3603 case 208:
3604 #line 315 "lscp.y"
3605 { yyval.Char = '8'; }
3606 break;
3607
3608 case 209:
3609 #line 315 "lscp.y"
3610 { yyval.Char = '9'; }
3611 break;
3612
3613 case 210:
3614 #line 316 "lscp.y"
3615 { yyval.Char = '!'; }
3616 break;
3617
3618 case 211:
3619 #line 316 "lscp.y"
3620 { yyval.Char = '#'; }
3621 break;
3622
3623 case 212:
3624 #line 316 "lscp.y"
3625 { yyval.Char = '$'; }
3626 break;
3627
3628 case 213:
3629 #line 316 "lscp.y"
3630 { yyval.Char = '%'; }
3631 break;
3632
3633 case 214:
3634 #line 316 "lscp.y"
3635 { yyval.Char = '&'; }
3636 break;
3637
3638 case 215:
3639 #line 316 "lscp.y"
3640 { yyval.Char = '('; }
3641 break;
3642
3643 case 216:
3644 #line 316 "lscp.y"
3645 { yyval.Char = ')'; }
3646 break;
3647
3648 case 217:
3649 #line 316 "lscp.y"
3650 { yyval.Char = '*'; }
3651 break;
3652
3653 case 218:
3654 #line 316 "lscp.y"
3655 { yyval.Char = '+'; }
3656 break;
3657
3658 case 219:
3659 #line 316 "lscp.y"
3660 { yyval.Char = '-'; }
3661 break;
3662
3663 case 220:
3664 #line 316 "lscp.y"
3665 { yyval.Char = '.'; }
3666 break;
3667
3668 case 221:
3669 #line 316 "lscp.y"
3670 { yyval.Char = ','; }
3671 break;
3672
3673 case 222:
3674 #line 316 "lscp.y"
3675 { yyval.Char = '/'; }
3676 break;
3677
3678 case 223:
3679 #line 317 "lscp.y"
3680 { yyval.Char = ':'; }
3681 break;
3682
3683 case 224:
3684 #line 317 "lscp.y"
3685 { yyval.Char = ';'; }
3686 break;
3687
3688 case 225:
3689 #line 317 "lscp.y"
3690 { yyval.Char = '<'; }
3691 break;
3692
3693 case 226:
3694 #line 317 "lscp.y"
3695 { yyval.Char = '='; }
3696 break;
3697
3698 case 227:
3699 #line 317 "lscp.y"
3700 { yyval.Char = '>'; }
3701 break;
3702
3703 case 228:
3704 #line 317 "lscp.y"
3705 { yyval.Char = '?'; }
3706 break;
3707
3708 case 229:
3709 #line 317 "lscp.y"
3710 { yyval.Char = '@'; }
3711 break;
3712
3713 case 230:
3714 #line 318 "lscp.y"
3715 { yyval.Char = '['; }
3716 break;
3717
3718 case 231:
3719 #line 318 "lscp.y"
3720 { yyval.Char = '\\'; }
3721 break;
3722
3723 case 232:
3724 #line 318 "lscp.y"
3725 { yyval.Char = ']'; }
3726 break;
3727
3728 case 233:
3729 #line 318 "lscp.y"
3730 { yyval.Char = '^'; }
3731 break;
3732
3733 case 234:
3734 #line 318 "lscp.y"
3735 { yyval.Char = '_'; }
3736 break;
3737
3738 case 235:
3739 #line 319 "lscp.y"
3740 { yyval.Char = '{'; }
3741 break;
3742
3743 case 236:
3744 #line 319 "lscp.y"
3745 { yyval.Char = '|'; }
3746 break;
3747
3748 case 237:
3749 #line 319 "lscp.y"
3750 { yyval.Char = '}'; }
3751 break;
3752
3753 case 238:
3754 #line 319 "lscp.y"
3755 { yyval.Char = '~'; }
3756 break;
3757
3758 case 239:
3759 #line 320 "lscp.y"
3760 { yyval.Char = '\200'; }
3761 break;
3762
3763 case 240:
3764 #line 320 "lscp.y"
3765 { yyval.Char = '\201'; }
3766 break;
3767
3768 case 241:
3769 #line 320 "lscp.y"
3770 { yyval.Char = '\202'; }
3771 break;
3772
3773 case 242:
3774 #line 321 "lscp.y"
3775 { yyval.Char = '\203'; }
3776 break;
3777
3778 case 243:
3779 #line 321 "lscp.y"
3780 { yyval.Char = '\204'; }
3781 break;
3782
3783 case 244:
3784 #line 321 "lscp.y"
3785 { yyval.Char = '\205'; }
3786 break;
3787
3788 case 245:
3789 #line 322 "lscp.y"
3790 { yyval.Char = '\206'; }
3791 break;
3792
3793 case 246:
3794 #line 322 "lscp.y"
3795 { yyval.Char = '\207'; }
3796 break;
3797
3798 case 247:
3799 #line 322 "lscp.y"
3800 { yyval.Char = '\210'; }
3801 break;
3802
3803 case 248:
3804 #line 323 "lscp.y"
3805 { yyval.Char = '\211'; }
3806 break;
3807
3808 case 249:
3809 #line 323 "lscp.y"
3810 { yyval.Char = '\212'; }
3811 break;
3812
3813 case 250:
3814 #line 323 "lscp.y"
3815 { yyval.Char = '\213'; }
3816 break;
3817
3818 case 251:
3819 #line 324 "lscp.y"
3820 { yyval.Char = '\214'; }
3821 break;
3822
3823 case 252:
3824 #line 324 "lscp.y"
3825 { yyval.Char = '\215'; }
3826 break;
3827
3828 case 253:
3829 #line 324 "lscp.y"
3830 { yyval.Char = '\216'; }
3831 break;
3832
3833 case 254:
3834 #line 325 "lscp.y"
3835 { yyval.Char = '\217'; }
3836 break;
3837
3838 case 255:
3839 #line 325 "lscp.y"
3840 { yyval.Char = '\220'; }
3841 break;
3842
3843 case 256:
3844 #line 325 "lscp.y"
3845 { yyval.Char = '\221'; }
3846 break;
3847
3848 case 257:
3849 #line 326 "lscp.y"
3850 { yyval.Char = '\222'; }
3851 break;
3852
3853 case 258:
3854 #line 326 "lscp.y"
3855 { yyval.Char = '\223'; }
3856 break;
3857
3858 case 259:
3859 #line 326 "lscp.y"
3860 { yyval.Char = '\224'; }
3861 break;
3862
3863 case 260:
3864 #line 327 "lscp.y"
3865 { yyval.Char = '\225'; }
3866 break;
3867
3868 case 261:
3869 #line 327 "lscp.y"
3870 { yyval.Char = '\226'; }
3871 break;
3872
3873 case 262:
3874 #line 327 "lscp.y"
3875 { yyval.Char = '\227'; }
3876 break;
3877
3878 case 263:
3879 #line 328 "lscp.y"
3880 { yyval.Char = '\230'; }
3881 break;
3882
3883 case 264:
3884 #line 328 "lscp.y"
3885 { yyval.Char = '\231'; }
3886 break;
3887
3888 case 265:
3889 #line 328 "lscp.y"
3890 { yyval.Char = '\232'; }
3891 break;
3892
3893 case 266:
3894 #line 329 "lscp.y"
3895 { yyval.Char = '\233'; }
3896 break;
3897
3898 case 267:
3899 #line 329 "lscp.y"
3900 { yyval.Char = '\234'; }
3901 break;
3902
3903 case 268:
3904 #line 329 "lscp.y"
3905 { yyval.Char = '\235'; }
3906 break;
3907
3908 case 269:
3909 #line 330 "lscp.y"
3910 { yyval.Char = '\236'; }
3911 break;
3912
3913 case 270:
3914 #line 330 "lscp.y"
3915 { yyval.Char = '\237'; }
3916 break;
3917
3918 case 271:
3919 #line 330 "lscp.y"
3920 { yyval.Char = '\240'; }
3921 break;
3922
3923 case 272:
3924 #line 331 "lscp.y"
3925 { yyval.Char = '\241'; }
3926 break;
3927
3928 case 273:
3929 #line 331 "lscp.y"
3930 { yyval.Char = '\242'; }
3931 break;
3932
3933 case 274:
3934 #line 331 "lscp.y"
3935 { yyval.Char = '\243'; }
3936 break;
3937
3938 case 275:
3939 #line 332 "lscp.y"
3940 { yyval.Char = '\244'; }
3941 break;
3942
3943 case 276:
3944 #line 332 "lscp.y"
3945 { yyval.Char = '\245'; }
3946 break;
3947
3948 case 277:
3949 #line 332 "lscp.y"
3950 { yyval.Char = '\246'; }
3951 break;
3952
3953 case 278:
3954 #line 333 "lscp.y"
3955 { yyval.Char = '\247'; }
3956 break;
3957
3958 case 279:
3959 #line 333 "lscp.y"
3960 { yyval.Char = '\250'; }
3961 break;
3962
3963 case 280:
3964 #line 333 "lscp.y"
3965 { yyval.Char = '\251'; }
3966 break;
3967
3968 case 281:
3969 #line 334 "lscp.y"
3970 { yyval.Char = '\252'; }
3971 break;
3972
3973 case 282:
3974 #line 334 "lscp.y"
3975 { yyval.Char = '\253'; }
3976 break;
3977
3978 case 283:
3979 #line 334 "lscp.y"
3980 { yyval.Char = '\254'; }
3981 break;
3982
3983 case 284:
3984 #line 335 "lscp.y"
3985 { yyval.Char = '\255'; }
3986 break;
3987
3988 case 285:
3989 #line 335 "lscp.y"
3990 { yyval.Char = '\256'; }
3991 break;
3992
3993 case 286:
3994 #line 335 "lscp.y"
3995 { yyval.Char = '\257'; }
3996 break;
3997
3998 case 287:
3999 #line 336 "lscp.y"
4000 { yyval.Char = '\260'; }
4001 break;
4002
4003 case 288:
4004 #line 336 "lscp.y"
4005 { yyval.Char = '\261'; }
4006 break;
4007
4008 case 289:
4009 #line 336 "lscp.y"
4010 { yyval.Char = '\262'; }
4011 break;
4012
4013 case 290:
4014 #line 337 "lscp.y"
4015 { yyval.Char = '\263'; }
4016 break;
4017
4018 case 291:
4019 #line 337 "lscp.y"
4020 { yyval.Char = '\264'; }
4021 break;
4022
4023 case 292:
4024 #line 337 "lscp.y"
4025 { yyval.Char = '\265'; }
4026 break;
4027
4028 case 293:
4029 #line 338 "lscp.y"
4030 { yyval.Char = '\266'; }
4031 break;
4032
4033 case 294:
4034 #line 338 "lscp.y"
4035 { yyval.Char = '\267'; }
4036 break;
4037
4038 case 295:
4039 #line 338 "lscp.y"
4040 { yyval.Char = '\270'; }
4041 break;
4042
4043 case 296:
4044 #line 339 "lscp.y"
4045 { yyval.Char = '\271'; }
4046 break;
4047
4048 case 297:
4049 #line 339 "lscp.y"
4050 { yyval.Char = '\272'; }
4051 break;
4052
4053 case 298:
4054 #line 339 "lscp.y"
4055 { yyval.Char = '\273'; }
4056 break;
4057
4058 case 299:
4059 #line 340 "lscp.y"
4060 { yyval.Char = '\274'; }
4061 break;
4062
4063 case 300:
4064 #line 340 "lscp.y"
4065 { yyval.Char = '\275'; }
4066 break;
4067
4068 case 301:
4069 #line 340 "lscp.y"
4070 { yyval.Char = '\276'; }
4071 break;
4072
4073 case 302:
4074 #line 341 "lscp.y"
4075 { yyval.Char = '\277'; }
4076 break;
4077
4078 case 303:
4079 #line 341 "lscp.y"
4080 { yyval.Char = '\300'; }
4081 break;
4082
4083 case 304:
4084 #line 341 "lscp.y"
4085 { yyval.Char = '\301'; }
4086 break;
4087
4088 case 305:
4089 #line 342 "lscp.y"
4090 { yyval.Char = '\302'; }
4091 break;
4092
4093 case 306:
4094 #line 342 "lscp.y"
4095 { yyval.Char = '\303'; }
4096 break;
4097
4098 case 307:
4099 #line 342 "lscp.y"
4100 { yyval.Char = '\304'; }
4101 break;
4102
4103 case 308:
4104 #line 343 "lscp.y"
4105 { yyval.Char = '\305'; }
4106 break;
4107
4108 case 309:
4109 #line 343 "lscp.y"
4110 { yyval.Char = '\306'; }
4111 break;
4112
4113 case 310:
4114 #line 343 "lscp.y"
4115 { yyval.Char = '\307'; }
4116 break;
4117
4118 case 311:
4119 #line 344 "lscp.y"
4120 { yyval.Char = '\310'; }
4121 break;
4122
4123 case 312:
4124 #line 344 "lscp.y"
4125 { yyval.Char = '\311'; }
4126 break;
4127
4128 case 313:
4129 #line 344 "lscp.y"
4130 { yyval.Char = '\312'; }
4131 break;
4132
4133 case 314:
4134 #line 345 "lscp.y"
4135 { yyval.Char = '\313'; }
4136 break;
4137
4138 case 315:
4139 #line 345 "lscp.y"
4140 { yyval.Char = '\314'; }
4141 break;
4142
4143 case 316:
4144 #line 345 "lscp.y"
4145 { yyval.Char = '\315'; }
4146 break;
4147
4148 case 317:
4149 #line 346 "lscp.y"
4150 { yyval.Char = '\316'; }
4151 break;
4152
4153 case 318:
4154 #line 346 "lscp.y"
4155 { yyval.Char = '\317'; }
4156 break;
4157
4158 case 319:
4159 #line 346 "lscp.y"
4160 { yyval.Char = '\320'; }
4161 break;
4162
4163 case 320:
4164 #line 347 "lscp.y"
4165 { yyval.Char = '\321'; }
4166 break;
4167
4168 case 321:
4169 #line 347 "lscp.y"
4170 { yyval.Char = '\322'; }
4171 break;
4172
4173 case 322:
4174 #line 347 "lscp.y"
4175 { yyval.Char = '\323'; }
4176 break;
4177
4178 case 323:
4179 #line 348 "lscp.y"
4180 { yyval.Char = '\324'; }
4181 break;
4182
4183 case 324:
4184 #line 348 "lscp.y"
4185 { yyval.Char = '\325'; }
4186 break;
4187
4188 case 325:
4189 #line 348 "lscp.y"
4190 { yyval.Char = '\326'; }
4191 break;
4192
4193 case 326:
4194 #line 349 "lscp.y"
4195 { yyval.Char = '\327'; }
4196 break;
4197
4198 case 327:
4199 #line 349 "lscp.y"
4200 { yyval.Char = '\330'; }
4201 break;
4202
4203 case 328:
4204 #line 349 "lscp.y"
4205 { yyval.Char = '\331'; }
4206 break;
4207
4208 case 329:
4209 #line 350 "lscp.y"
4210 { yyval.Char = '\332'; }
4211 break;
4212
4213 case 330:
4214 #line 350 "lscp.y"
4215 { yyval.Char = '\333'; }
4216 break;
4217
4218 case 331:
4219 #line 350 "lscp.y"
4220 { yyval.Char = '\334'; }
4221 break;
4222
4223 case 332:
4224 #line 351 "lscp.y"
4225 { yyval.Char = '\335'; }
4226 break;
4227
4228 case 333:
4229 #line 351 "lscp.y"
4230 { yyval.Char = '\336'; }
4231 break;
4232
4233 case 334:
4234 #line 351 "lscp.y"
4235 { yyval.Char = '\337'; }
4236 break;
4237
4238 case 335:
4239 #line 352 "lscp.y"
4240 { yyval.Char = '\340'; }
4241 break;
4242
4243 case 336:
4244 #line 352 "lscp.y"
4245 { yyval.Char = '\341'; }
4246 break;
4247
4248 case 337:
4249 #line 352 "lscp.y"
4250 { yyval.Char = '\342'; }
4251 break;
4252
4253 case 338:
4254 #line 353 "lscp.y"
4255 { yyval.Char = '\343'; }
4256 break;
4257
4258 case 339:
4259 #line 353 "lscp.y"
4260 { yyval.Char = '\344'; }
4261 break;
4262
4263 case 340:
4264 #line 353 "lscp.y"
4265 { yyval.Char = '\345'; }
4266 break;
4267
4268 case 341:
4269 #line 354 "lscp.y"
4270 { yyval.Char = '\346'; }
4271 break;
4272
4273 case 342:
4274 #line 354 "lscp.y"
4275 { yyval.Char = '\347'; }
4276 break;
4277
4278 case 343:
4279 #line 354 "lscp.y"
4280 { yyval.Char = '\350'; }
4281 break;
4282
4283 case 344:
4284 #line 355 "lscp.y"
4285 { yyval.Char = '\351'; }
4286 break;
4287
4288 case 345:
4289 #line 355 "lscp.y"
4290 { yyval.Char = '\352'; }
4291 break;
4292
4293 case 346:
4294 #line 355 "lscp.y"
4295 { yyval.Char = '\353'; }
4296 break;
4297
4298 case 347:
4299 #line 356 "lscp.y"
4300 { yyval.Char = '\354'; }
4301 break;
4302
4303 case 348:
4304 #line 356 "lscp.y"
4305 { yyval.Char = '\355'; }
4306 break;
4307
4308 case 349:
4309 #line 356 "lscp.y"
4310 { yyval.Char = '\356'; }
4311 break;
4312
4313 case 350:
4314 #line 357 "lscp.y"
4315 { yyval.Char = '\357'; }
4316 break;
4317
4318 case 351:
4319 #line 357 "lscp.y"
4320 { yyval.Char = '\360'; }
4321 break;
4322
4323 case 352:
4324 #line 357 "lscp.y"
4325 { yyval.Char = '\361'; }
4326 break;
4327
4328 case 353:
4329 #line 358 "lscp.y"
4330 { yyval.Char = '\362'; }
4331 break;
4332
4333 case 354:
4334 #line 358 "lscp.y"
4335 { yyval.Char = '\363'; }
4336 break;
4337
4338 case 355:
4339 #line 358 "lscp.y"
4340 { yyval.Char = '\364'; }
4341 break;
4342
4343 case 356:
4344 #line 359 "lscp.y"
4345 { yyval.Char = '\365'; }
4346 break;
4347
4348 case 357:
4349 #line 359 "lscp.y"
4350 { yyval.Char = '\366'; }
4351 break;
4352
4353 case 358:
4354 #line 359 "lscp.y"
4355 { yyval.Char = '\367'; }
4356 break;
4357
4358 case 359:
4359 #line 360 "lscp.y"
4360 { yyval.Char = '\370'; }
4361 break;
4362
4363 case 360:
4364 #line 360 "lscp.y"
4365 { yyval.Char = '\371'; }
4366 break;
4367
4368 case 361:
4369 #line 360 "lscp.y"
4370 { yyval.Char = '\372'; }
4371 break;
4372
4373 case 362:
4374 #line 361 "lscp.y"
4375 { yyval.Char = '\373'; }
4376 break;
4377
4378 case 363:
4379 #line 361 "lscp.y"
4380 { yyval.Char = '\374'; }
4381 break;
4382
4383 case 364:
4384 #line 361 "lscp.y"
4385 { yyval.Char = '\375'; }
4386 break;
4387
4388 case 365:
4389 #line 362 "lscp.y"
4390 { yyval.Char = '\376'; }
4391 break;
4392
4393 case 366:
4394 #line 362 "lscp.y"
4395 { yyval.Char = '\377'; }
4396 break;
4397
4398 case 367:
4399 #line 365 "lscp.y"
4400 { yyval.String = " "; }
4401 break;
4402
4403 case 369:
4404 #line 367 "lscp.y"
4405 { yyval.String = yyvsp[-1].String + " "; }
4406 break;
4407
4408 case 370:
4409 #line 368 "lscp.y"
4410 { yyval.String = yyvsp[-1].String + yyvsp[0].String; }
4411 break;
4412
4413 case 371:
4414 #line 371 "lscp.y"
4415 { yyval.String = yyvsp[-1].String; }
4416 break;
4417
4418 case 372:
4419 #line 372 "lscp.y"
4420 { yyval.String = yyvsp[-1].String; }
4421 break;
4422
4423
4424 }
4425
4426 /* Line 1010 of yacc.c. */
4427 #line 4428 "y.tab.c"
4428
4429 yyvsp -= yylen;
4430 yyssp -= yylen;
4431
4432
4433 YY_STACK_PRINT (yyss, yyssp);
4434
4435 *++yyvsp = yyval;
4436
4437
4438 /* Now `shift' the result of the reduction. Determine what state
4439 that goes to, based on the state we popped back to and the rule
4440 number reduced by. */
4441
4442 yyn = yyr1[yyn];
4443
4444 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
4445 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
4446 yystate = yytable[yystate];
4447 else
4448 yystate = yydefgoto[yyn - YYNTOKENS];
4449
4450 goto yynewstate;
4451
4452
4453 /*------------------------------------.
4454 | yyerrlab -- here on detecting error |
4455 `------------------------------------*/
4456 yyerrlab:
4457 /* If not already recovering from an error, report this error. */
4458 if (!yyerrstatus)
4459 {
4460 ++yynerrs;
4461 #if YYERROR_VERBOSE
4462 yyn = yypact[yystate];
4463
4464 if (YYPACT_NINF < yyn && yyn < YYLAST)
4465 {
4466 YYSIZE_T yysize = 0;
4467 int yytype = YYTRANSLATE (yychar);
4468 const char* yyprefix;
4469 char *yymsg;
4470 int yyx;
4471
4472 /* Start YYX at -YYN if negative to avoid negative indexes in
4473 YYCHECK. */
4474 int yyxbegin = yyn < 0 ? -yyn : 0;
4475
4476 /* Stay within bounds of both yycheck and yytname. */
4477 int yychecklim = YYLAST - yyn;
4478 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
4479 int yycount = 0;
4480
4481 yyprefix = ", expecting ";
4482 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
4483 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
4484 {
4485 yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);
4486 yycount += 1;
4487 if (yycount == 5)
4488 {
4489 yysize = 0;
4490 break;
4491 }
4492 }
4493 yysize += (sizeof ("syntax error, unexpected ")
4494 + yystrlen (yytname[yytype]));
4495 yymsg = (char *) YYSTACK_ALLOC (yysize);
4496 if (yymsg != 0)
4497 {
4498 char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
4499 yyp = yystpcpy (yyp, yytname[yytype]);
4500
4501 if (yycount < 5)
4502 {
4503 yyprefix = ", expecting ";
4504 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
4505 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
4506 {
4507 yyp = yystpcpy (yyp, yyprefix);
4508 yyp = yystpcpy (yyp, yytname[yyx]);
4509 yyprefix = " or ";
4510 }
4511 }
4512 yyerror (yymsg);
4513 YYSTACK_FREE (yymsg);
4514 }
4515 else
4516 yyerror ("syntax error; also virtual memory exhausted");
4517 }
4518 else
4519 #endif /* YYERROR_VERBOSE */
4520 yyerror ("syntax error");
4521 }
4522
4523
4524
4525 if (yyerrstatus == 3)
4526 {
4527 /* If just tried and failed to reuse lookahead token after an
4528 error, discard it. */
4529
4530 if (yychar <= YYEOF)
4531 {
4532 /* If at end of input, pop the error token,
4533 then the rest of the stack, then return failure. */
4534 if (yychar == YYEOF)
4535 for (;;)
4536 {
4537 YYPOPSTACK;
4538 if (yyssp == yyss)
4539 YYABORT;
4540 YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
4541 yydestruct (yystos[*yyssp], yyvsp);
4542 }
4543 }
4544 else
4545 {
4546 YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);
4547 yydestruct (yytoken, &yylval);
4548 yychar = YYEMPTY;
4549
4550 }
4551 }
4552
4553 /* Else will try to reuse lookahead token after shifting the error
4554 token. */
4555 goto yyerrlab1;
4556
4557
4558 /*---------------------------------------------------.
4559 | yyerrorlab -- error raised explicitly by YYERROR. |
4560 `---------------------------------------------------*/
4561 yyerrorlab:
4562
4563 #ifdef __GNUC__
4564 /* Pacify GCC when the user code never invokes YYERROR and the label
4565 yyerrorlab therefore never appears in user code. */
4566 if (0)
4567 goto yyerrorlab;
4568 #endif
4569
4570 yyvsp -= yylen;
4571 yyssp -= yylen;
4572 yystate = *yyssp;
4573 goto yyerrlab1;
4574
4575
4576 /*-------------------------------------------------------------.
4577 | yyerrlab1 -- common code for both syntax error and YYERROR. |
4578 `-------------------------------------------------------------*/
4579 yyerrlab1:
4580 yyerrstatus = 3; /* Each real token shifted decrements this. */
4581
4582 for (;;)
4583 {
4584 yyn = yypact[yystate];
4585 if (yyn != YYPACT_NINF)
4586 {
4587 yyn += YYTERROR;
4588 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
4589 {
4590 yyn = yytable[yyn];
4591 if (0 < yyn)
4592 break;
4593 }
4594 }
4595
4596 /* Pop the current state because it cannot handle the error token. */
4597 if (yyssp == yyss)
4598 YYABORT;
4599
4600 YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
4601 yydestruct (yystos[yystate], yyvsp);
4602 YYPOPSTACK;
4603 yystate = *yyssp;
4604 YY_STACK_PRINT (yyss, yyssp);
4605 }
4606
4607 if (yyn == YYFINAL)
4608 YYACCEPT;
4609
4610 YYDPRINTF ((stderr, "Shifting error token, "));
4611
4612 *++yyvsp = yylval;
4613
4614
4615 yystate = yyn;
4616 goto yynewstate;
4617
4618
4619 /*-------------------------------------.
4620 | yyacceptlab -- YYACCEPT comes here. |
4621 `-------------------------------------*/
4622 yyacceptlab:
4623 yyresult = 0;
4624 goto yyreturn;
4625
4626 /*-----------------------------------.
4627 | yyabortlab -- YYABORT comes here. |
4628 `-----------------------------------*/
4629 yyabortlab:
4630 yyresult = 1;
4631 goto yyreturn;
4632
4633 #ifndef yyoverflow
4634 /*----------------------------------------------.
4635 | yyoverflowlab -- parser overflow comes here. |
4636 `----------------------------------------------*/
4637 yyoverflowlab:
4638 yyerror ("parser stack overflow");
4639 yyresult = 2;
4640 /* Fall through. */
4641 #endif
4642
4643 yyreturn:
4644 #ifndef yyoverflow
4645 if (yyss != yyssa)
4646 YYSTACK_FREE (yyss);
4647 #endif
4648 return yyresult;
4649 }
4650
4651
4652 #line 543 "lscp.y"
4653
4654
4655 /**
4656 * Will be called when an error occured (usually syntax error).
4657 */
4658 void yyerror(const char* s) {
4659 dmsg(2,("LSCPParser: %s\n", s));
4660 }
4661
4662 /**
4663 * Clears input buffer.
4664 */
4665 void restart(yyparse_param_t* pparam, int& yychar) {
4666 bytes = 0;
4667 ptr = 0;
4668 }
4669
4670

  ViewVC Help
Powered by ViewVC