/[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 1026 - (show annotations) (download)
Sun Jan 14 17:10:59 2007 UTC (17 years, 3 months ago) by schoenebeck
File size: 232277 byte(s)
* extended response of LSCP command "GET FX_SEND INFO" to return the FX
  Send's MIDI controller and current send level and added two new LSCP
  commands "SET FX_SEND MIDI_CONTROLLER" and "SET FX_SEND LEVEL"
  respectively

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

  ViewVC Help
Powered by ViewVC