/[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 984 - (show annotations) (download)
Mon Dec 18 10:28:00 2006 UTC (17 years, 4 months ago) by iliev
File size: 219356 byte(s)
- parser and specification update

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

  ViewVC Help
Powered by ViewVC