/[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 555 - (show annotations) (download)
Fri May 20 13:22:53 2005 UTC (18 years, 11 months ago) by schoenebeck
File size: 184003 byte(s)
* tiny fix in LSCP parser; returned prefix "Err" instead of "ERR" on syntax
  errors (patch by Grigor Iliev)

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

  ViewVC Help
Powered by ViewVC