/[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 778 - (show annotations) (download)
Fri Sep 23 06:58:26 2005 UTC (18 years, 6 months ago) by iliev
File size: 190599 byte(s)
Added new LSCP commands: GET TOTAL_VOICE_COUNT,
GET TOTAL_VOICE_COUNT_MAX, SUBSCRIBE/UNSUBSCRIBE TOTAL_VOICE_COUNT

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

  ViewVC Help
Powered by ViewVC