/[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 973 - (show annotations) (download)
Fri Dec 15 21:40:27 2006 UTC (17 years, 4 months ago) by schoenebeck
File size: 211584 byte(s)
* revised and extended MIDI instrument mapping feature to allow managing
  arbitrary amount of maps and assigning each sampler channel individually
  to one map (this commit batch includes LSCP spec document update and
  respective implementation on LS side)

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

  ViewVC Help
Powered by ViewVC