split decl to allow functors as arg
[m6w6/ext-psi] / src / parser_proc.c
1 /* A Bison parser, made by GNU Bison 3.0.4. */
2
3 /* Skeleton implementation for Bison GLR parsers in C
4
5 Copyright (C) 2002-2015 Free Software Foundation, Inc.
6
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20 /* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
29
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
32
33 /* C GLR parser skeleton written by Paul Hilfinger. */
34
35 /* Identify Bison output. */
36 #define YYBISON 1
37
38 /* Bison version. */
39 #define YYBISON_VERSION "3.0.4"
40
41 /* Skeleton name. */
42 #define YYSKELETON_NAME "glr.c"
43
44 /* Pure parsers. */
45 #define YYPURE 1
46
47
48 /* "%code top" blocks. */
49 #line 1 "src/parser_proc_grammar.y" /* glr.c:222 */
50
51 #include "php_psi_stdinc.h"
52
53 #line 54 "src/parser_proc.c" /* glr.c:222 */
54
55
56 /* Substitute the variable and function names. */
57 #define yyparse psi_parser_proc_parse
58 #define yylex psi_parser_proc_lex
59 #define yyerror psi_parser_proc_error
60 #define yydebug psi_parser_proc_debug
61
62
63 /* First part of user declarations. */
64
65 #line 66 "src/parser_proc.c" /* glr.c:240 */
66
67 # ifndef YY_NULLPTR
68 # if defined __cplusplus && 201103L <= __cplusplus
69 # define YY_NULLPTR nullptr
70 # else
71 # define YY_NULLPTR 0
72 # endif
73 # endif
74
75 #include "parser_proc.h"
76
77 /* Enabling verbose error messages. */
78 #ifdef YYERROR_VERBOSE
79 # undef YYERROR_VERBOSE
80 # define YYERROR_VERBOSE 1
81 #else
82 # define YYERROR_VERBOSE 1
83 #endif
84
85 /* Default (constant) value used for initialization for null
86 right-hand sides. Unlike the standard yacc.c template, here we set
87 the default value of $$ to a zeroed-out value. Since the default
88 value is undefined, this behavior is technically correct. */
89 static YYSTYPE yyval_default;
90
91 /* Copy the second part of user declarations. */
92
93 #line 94 "src/parser_proc.c" /* glr.c:263 */
94 /* Unqualified %code blocks. */
95 #line 5 "src/parser_proc_grammar.y" /* glr.c:264 */
96
97 #include <assert.h>
98 #include <stdarg.h>
99
100 #include "plist.h"
101 #include "parser.h"
102 #define YYDEBUG 1
103
104 static int psi_parser_proc_lex(YYSTYPE *u, struct psi_parser *P, struct psi_plist *tokens, size_t *index);
105 static void psi_parser_proc_error(struct psi_parser *P, struct psi_plist *tokens, size_t *index, const char *msg);
106
107 static inline void psi_parser_proc_add_struct(struct psi_parser *P, struct psi_decl_struct *strct)
108 {
109 assert(strct);
110 if (!P->structs) {
111 P->structs = psi_plist_init((psi_plist_dtor) psi_decl_struct_free);
112 }
113 P->structs = psi_plist_add(P->structs, &strct);
114 }
115 static inline void psi_parser_proc_add_union(struct psi_parser *P, struct psi_decl_union *u)
116 {
117 assert(u);
118 if (!P->unions) {
119 P->unions = psi_plist_init((psi_plist_dtor) psi_decl_union_free);
120 }
121 P->unions = psi_plist_add(P->unions, &u);
122 }
123 static inline void psi_parser_proc_add_enum(struct psi_parser *P, struct psi_decl_enum *e)
124 {
125 assert(e);
126 if (!P->enums) {
127 P->enums = psi_plist_init((psi_plist_dtor) psi_decl_enum_free);
128 }
129 P->enums = psi_plist_add(P->enums, &e);
130 }
131 static inline void psi_parser_proc_add_from_typedef(struct psi_parser *P, struct psi_decl_arg *def)
132 {
133 if (def->type->real.def) {
134 switch (def->type->type) {
135 case PSI_T_STRUCT:
136 psi_parser_proc_add_struct(P, def->type->real.strct);
137 break;
138 case PSI_T_UNION:
139 psi_parser_proc_add_union(P, def->type->real.unn);
140 break;
141 case PSI_T_ENUM:
142 psi_parser_proc_add_enum(P, def->type->real.enm);
143 break;
144 default:
145 break;
146 }
147 }
148 }
149 static inline void psi_parser_proc_add_typedef(struct psi_parser *P, struct psi_decl_arg *def)
150 {
151 assert(def);
152 if (!P->types) {
153 P->types = psi_plist_init((psi_plist_dtor) psi_decl_arg_free);
154 }
155 P->types = psi_plist_add(P->types, &def);
156 psi_parser_proc_add_from_typedef(P, def);
157 }
158 static inline void psi_parser_proc_add_const(struct psi_parser *P, struct psi_const *cnst) {
159 assert(cnst);
160 if (!P->consts) {
161 P->consts = psi_plist_init((psi_plist_dtor) psi_const_free);
162 }
163 P->consts = psi_plist_add(P->consts, &cnst);
164
165 }
166 static inline void psi_parser_proc_add_decl(struct psi_parser *P, struct psi_decl *decl) {
167 assert(decl);
168 if (!P->decls) {
169 P->decls = psi_plist_init((psi_plist_dtor) psi_decl_free);
170 }
171 P->decls = psi_plist_add(P->decls, &decl);
172 }
173 static inline void psi_parser_proc_add_impl(struct psi_parser *P, struct psi_impl *impl) {
174 assert(impl);
175 if (!P->impls) {
176 P->impls = psi_plist_init((psi_plist_dtor) psi_impl_free);
177 }
178 P->impls = psi_plist_add(P->impls, &impl);
179 }
180
181 /* end code */
182
183 #line 184 "src/parser_proc.c" /* glr.c:264 */
184
185 #include <stdio.h>
186 #include <stdlib.h>
187 #include <string.h>
188
189 #ifndef YY_
190 # if defined YYENABLE_NLS && YYENABLE_NLS
191 # if ENABLE_NLS
192 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
193 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
194 # endif
195 # endif
196 # ifndef YY_
197 # define YY_(Msgid) Msgid
198 # endif
199 #endif
200
201 #ifndef YYFREE
202 # define YYFREE free
203 #endif
204 #ifndef YYMALLOC
205 # define YYMALLOC malloc
206 #endif
207 #ifndef YYREALLOC
208 # define YYREALLOC realloc
209 #endif
210
211 #define YYSIZEMAX ((size_t) -1)
212
213 #ifdef __cplusplus
214 typedef bool yybool;
215 #else
216 typedef unsigned char yybool;
217 #endif
218 #define yytrue 1
219 #define yyfalse 0
220
221 #ifndef YYSETJMP
222 # include <setjmp.h>
223 # define YYJMP_BUF jmp_buf
224 # define YYSETJMP(Env) setjmp (Env)
225 /* Pacify clang. */
226 # define YYLONGJMP(Env, Val) (longjmp (Env, Val), YYASSERT (0))
227 #endif
228
229 #ifndef YY_ATTRIBUTE
230 # if (defined __GNUC__ \
231 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
232 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
233 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
234 # else
235 # define YY_ATTRIBUTE(Spec) /* empty */
236 # endif
237 #endif
238
239 #ifndef YY_ATTRIBUTE_PURE
240 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
241 #endif
242
243 #ifndef YY_ATTRIBUTE_UNUSED
244 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
245 #endif
246
247 #if !defined _Noreturn \
248 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
249 # if defined _MSC_VER && 1200 <= _MSC_VER
250 # define _Noreturn __declspec (noreturn)
251 # else
252 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
253 # endif
254 #endif
255
256 /* Suppress unused-variable warnings by "using" E. */
257 #if ! defined lint || defined __GNUC__
258 # define YYUSE(E) ((void) (E))
259 #else
260 # define YYUSE(E) /* empty */
261 #endif
262
263 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
264 /* Suppress an incorrect diagnostic about yylval being uninitialized. */
265 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
266 _Pragma ("GCC diagnostic push") \
267 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
268 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
269 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
270 _Pragma ("GCC diagnostic pop")
271 #else
272 # define YY_INITIAL_VALUE(Value) Value
273 #endif
274 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
275 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
276 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
277 #endif
278 #ifndef YY_INITIAL_VALUE
279 # define YY_INITIAL_VALUE(Value) /* Nothing. */
280 #endif
281
282
283 #ifndef YYASSERT
284 # define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0)))
285 #endif
286
287 /* YYFINAL -- State number of the termination state. */
288 #define YYFINAL 165
289 /* YYLAST -- Last index in YYTABLE. */
290 #define YYLAST 3049
291
292 /* YYNTOKENS -- Number of terminals. */
293 #define YYNTOKENS 132
294 /* YYNNTS -- Number of nonterminals. */
295 #define YYNNTS 120
296 /* YYNRULES -- Number of rules. */
297 #define YYNRULES 467
298 /* YYNRULES -- Number of states. */
299 #define YYNSTATES 678
300 /* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
301 #define YYMAXRHS 13
302 /* YYMAXLEFT -- Maximum number of symbols to the left of a handle
303 accessed by $0, $-1, etc., in any rule. */
304 #define YYMAXLEFT 0
305
306 /* YYTRANSLATE(X) -- Bison symbol number corresponding to X. */
307 #define YYUNDEFTOK 2
308 #define YYMAXUTOK 386
309
310 #define YYTRANSLATE(YYX) \
311 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
312
313 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
314 static const unsigned char yytranslate[] =
315 {
316 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
317 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
318 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
319 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
320 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
321 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
322 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
323 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
324 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
325 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
326 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
327 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
328 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
329 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
330 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
331 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
332 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
333 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
334 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
335 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
336 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
337 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
338 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
339 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
340 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
341 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
342 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
343 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
344 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
345 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
346 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
347 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
348 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
349 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
350 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
351 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
352 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
353 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
354 125, 126, 127, 128, 129, 130, 131
355 };
356
357 #if YYDEBUG
358 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
359 static const unsigned short int yyrline[] =
360 {
361 0, 392, 392, 392, 392, 392, 392, 392, 392, 392,
362 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
363 393, 393, 393, 393, 394, 394, 394, 394, 394, 394,
364 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
365 394, 395, 395, 395, 395, 395, 395, 395, 395, 395,
366 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
367 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
368 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
369 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
370 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
371 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
372 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
373 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
374 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
375 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
376 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
377 395, 395, 395, 399, 400, 403, 404, 407, 408, 409,
378 410, 416, 424, 427, 430, 431, 434, 437, 440, 443,
379 449, 455, 458, 464, 487, 491, 495, 500, 504, 508,
380 512, 519, 520, 524, 525, 529, 530, 531, 535, 536,
381 540, 541, 545, 546, 547, 551, 552, 556, 557, 558,
382 559, 560, 561, 565, 570, 578, 581, 585, 590, 598,
383 601, 605, 609, 616, 620, 624, 628, 633, 643, 653,
384 658, 663, 669, 678, 681, 685, 689, 695, 702, 708,
385 709, 710, 711, 715, 718, 725, 726, 727, 728, 729,
386 733, 739, 740, 748, 758, 766, 774, 782, 785, 789,
387 793, 797, 802, 807, 815, 816, 817, 820, 826, 829,
388 832, 838, 839, 840, 841, 842, 843, 844, 845, 849,
389 850, 854, 857, 860, 866, 869, 872, 880, 892, 895,
390 898, 905, 908, 918, 921, 924, 927, 928, 932, 935,
391 938, 949, 952, 958, 959, 963, 964, 968, 972, 978,
392 979, 985, 986, 993, 994, 998, 1005, 1016, 1023, 1034,
393 1041, 1052, 1063, 1077, 1078, 1090, 1093, 1096, 1099, 1105,
394 1113, 1116, 1126, 1139, 1144, 1152, 1162, 1172, 1175, 1179,
395 1185, 1188, 1194, 1202, 1209, 1212, 1218, 1223, 1231, 1235,
396 1239, 1243, 1247, 1251, 1258, 1262, 1266, 1270, 1277, 1290,
397 1303, 1316, 1319, 1326, 1329, 1335, 1339, 1346, 1349, 1355,
398 1358, 1364, 1365, 1371, 1374, 1386, 1389, 1396, 1401, 1406,
399 1416, 1419, 1425, 1428, 1434, 1441, 1448, 1449, 1450, 1451,
400 1452, 1453, 1454, 1455, 1456, 1460, 1463, 1469, 1472, 1475,
401 1478, 1481, 1487, 1491, 1499, 1500, 1504, 1511, 1514, 1517,
402 1520, 1523, 1529, 1533, 1541, 1548, 1556, 1564, 1565, 1566,
403 1567, 1568, 1569, 1570, 1571, 1572, 1573, 1577, 1580, 1586,
404 1589, 1595, 1596, 1600, 1603, 1609, 1612, 1618, 1625, 1632,
405 1635, 1638, 1645, 1650, 1658, 1659, 1660, 1661, 1662, 1663,
406 1664, 1665, 1669, 1672, 1678, 1681, 1687, 1694, 1695, 1699,
407 1706, 1709, 1715, 1723, 1726, 1732, 1735, 1741
408 };
409 #endif
410
411 #if YYDEBUG || YYERROR_VERBOSE || 1
412 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
413 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
414 static const char *const yytname[] =
415 {
416 "\"end of file\"", "error", "$undefined", "BOOL", "CHAR", "SHORT",
417 "INT", "SIGNED", "UNSIGNED", "LONG", "FLOAT", "DOUBLE", "STRING",
418 "MIXED", "ARRAY", "OBJECT", "CALLABLE", "VOID", "ZVAL", "INT8", "UINT8",
419 "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "NULL", "TRUE",
420 "FALSE", "NAME", "NSNAME", "DOLLAR_NAME", "NUMBER", "QUOTED_STRING",
421 "QUOTED_CHAR", "\"end of line\"", "\";\"", "\"(\"", "\")\"", "\",\"",
422 "\":\"", "\"{\"", "\"}\"", "\"[\"", "\"]\"", "\"=\"", "\"#\"", "\"|\"",
423 "\"^\"", "\"&\"", "\"<<\"", "\">>\"", "\"+\"", "\"-\"", "\"*\"", "\"/\"",
424 "\"%\"", "\"<\"", "\">\"", "\">=\"", "\"<=\"", "\"||\"", "\"&&\"",
425 "\"==\"", "\"!=\"", "\"~\"", "\"!\"", "\".\"", "\"\\\\\"", "\"...\"",
426 "\"?\"", "PRAGMA", "PRAGMA_ONCE", "LINE", "ERROR", "WARNING", "IF",
427 "IFDEF", "IFNDEF", "ELSE", "ELIF", "ENDIF", "DEFINE", "DEFINED", "UNDEF",
428 "IMPORT", "INCLUDE", "INCLUDE_NEXT", "TYPEDEF", "STRUCT", "UNION",
429 "ENUM", "CONST", "LIB", "STATIC", "CALLBACK", "FUNCTION", "LET", "SET",
430 "TEMP", "FREE", "RETURN", "PRE_ASSERT", "POST_ASSERT", "BOOLVAL",
431 "INTVAL", "STRVAL", "PATHVAL", "STRLEN", "FLOATVAL", "ARRVAL", "OBJVAL",
432 "COUNT", "CALLOC", "TO_BOOL", "TO_INT", "TO_STRING", "TO_FLOAT",
433 "TO_ARRAY", "TO_OBJECT", "COMMENT", "WHITESPACE", "NO_WHITESPACE",
434 "CPP_HEADER", "CPP_ATTRIBUTE", "CPP_EXTENSION", "CPP_PASTE",
435 "CPP_RESTRICT", "CPP_ASM", "BINARY", "UNARY", "$accept",
436 "binary_op_token", "unary_op_token", "name_token", "any_noeol_token",
437 "file", "blocks", "block", "lib", "cpp", "cpp_exp", "cpp_ignored_token",
438 "cpp_message_token", "cpp_include_token", "cpp_header_token",
439 "cpp_no_arg_token", "cpp_name_arg_token", "cpp_exp_arg_token",
440 "cpp_special_name_token", "cpp_macro_decl", "cpp_macro_sig",
441 "cpp_macro_sig_args", "cpp_macro_decl_tokens",
442 "cpp_macro_decl_token_list", "cpp_macro_exp", "cpp_macro_call_args",
443 "cpp_macro_call_arg_list", "constant", "constant_type",
444 "constant_type_token", "impl_def_val", "impl_def_val_token",
445 "decl_typedef", "typedef", "const_decl_type", "decl_type",
446 "decl_type_complex", "decl_type_simple", "decl_real_type",
447 "decl_stdint_type", "int_signed", "int_width", "decl_int_type",
448 "int_signed_types", "signed_short_types", "signed_long_types",
449 "int_width_types", "decl_stmt", "decl_asm", "ignored_quoted_strings",
450 "decl_ext_var_stmt", "decl_ext_var", "decl_ext_var_list", "decl",
451 "decl_body", "decl_func_body", "decl_functor_body", "decl_functor",
452 "decl_func", "decl_args", "decl_arg", "decl_var", "decl_union",
453 "decl_struct", "decl_struct_args", "struct_args_block", "struct_args",
454 "struct_arg", "decl_enum", "decl_enum_items", "decl_enum_item",
455 "num_exp", "number", "enum_name", "union_name", "struct_name",
456 "optional_name", "decl_layout", "align_and_size", "array_size",
457 "indirection", "pointers", "asterisks", "impl", "impl_func", "impl_args",
458 "impl_arg", "impl_var", "impl_type", "impl_type_token", "impl_stmts",
459 "impl_stmt", "let_stmt", "let_exp", "let_exp_byref", "let_exp_assign",
460 "let_calloc", "let_callback", "let_func", "let_func_token",
461 "let_func_exps", "let_exps", "callback_rval", "callback_arg_list",
462 "callback_args", "return_stmt", "set_stmt", "set_exp", "set_func",
463 "set_func_token", "set_func_exps", "set_exps", "assert_stmt",
464 "assert_stmt_token", "free_stmt", "free_exps", "free_exp", "decl_vars",
465 "reference", "byref", YY_NULLPTR
466 };
467 #endif
468
469 #define YYPACT_NINF -534
470 #define YYTABLE_NINF -466
471
472 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
473 STATE-NUM. */
474 static const short int yypact[] =
475 {
476 917, -534, -534, -534, -534, -534, 65, -534, -534, 2052,
477 -534, -534, -534, -534, -534, -534, -534, -534, 2579, -534,
478 -534, 243, 2606, 2435, 2435, 2435, 1670, 17, -63, 14,
479 -534, 2656, 46, 917, -534, -534, -534, -534, -534, 2101,
480 -534, -534, -534, -534, -534, 52, 112, -534, -534, -534,
481 33, -51, -534, -534, 28, 64, 69, -534, -534, -534,
482 -534, 83, -534, 87, -534, -534, -534, -534, -534, 627,
483 -534, 31, -534, -534, -534, -534, -534, -534, -534, -534,
484 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
485 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
486 -534, 2219, -31, -534, -534, -534, 2435, 2435, 2435, 2760,
487 -534, 90, -534, -534, -534, -534, -534, -534, -534, -534,
488 -534, -534, -534, -534, 876, -534, -534, -534, -534, 118,
489 757, 757, -11, -534, 876, 1934, 2435, 2435, 120, 1698,
490 -534, -534, 136, 2435, 125, 125, 0, 0, 138, -534,
491 -534, 151, 154, -534, 31, 162, -534, -534, 157, 173,
492 -534, 165, -534, 2683, -51, -534, -534, 172, -534, 179,
493 2435, -534, 212, -534, 63, -534, -534, 52, -534, -534,
494 182, 184, 2710, 2710, 2435, 128, 2435, -534, 31, -534,
495 -534, -534, -534, -534, -534, 2101, -534, -534, -534, -534,
496 -534, -534, 99, 757, -534, -534, -534, -534, -534, -534,
497 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
498 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
499 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
500 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
501 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
502 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
503 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
504 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
505 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
506 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
507 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
508 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
509 757, -534, -534, -534, -534, -534, -534, -534, -534, 1934,
510 -534, -534, -534, -534, 2268, 1934, 195, 2906, 18, -534,
511 18, -534, -534, -534, -534, 193, 194, 194, 2, 2,
512 2386, 191, -534, 128, 200, 203, 208, -534, 31, 172,
513 -534, -534, -534, -534, -534, -534, 211, -534, -2, 55,
514 -534, 76, 202, 48, -534, 2101, 1513, 2101, 2435, 72,
515 -534, -534, 44, -534, -534, -534, -534, -534, 1816, -534,
516 210, 2435, -534, 2435, 219, 214, -534, -534, 514, 2435,
517 -534, -534, 1934, -534, -534, -534, -534, -534, -534, -534,
518 -534, -534, -534, -534, -534, -534, -534, -534, -534, -534,
519 -534, 1934, 1934, 222, 2606, 2101, 2101, -534, -534, -534,
520 -534, 31, -534, 21, 110, 241, -534, 205, 2435, -534,
521 -534, 13, 172, 522, 172, 1011, 1816, 2435, -534, 215,
522 225, -534, -534, -534, 1041, 1816, -534, 2930, -534, 217,
523 229, -534, 230, 235, 223, 234, 56, -534, -534, 236,
524 230, -534, -534, 409, -534, 237, 2101, 2435, -534, 242,
525 2906, 244, 245, 2857, -534, 249, 247, 2552, -534, -534,
526 -534, 2435, -534, -534, -534, -534, -534, 238, -534, -534,
527 -534, -534, -534, -534, -534, -534, -534, -534, -534, 248,
528 132, -534, 14, -534, -534, 252, -534, -534, -534, -2,
529 255, -534, -534, 256, 2930, -534, 1159, -534, 257, 2787,
530 266, 2775, -534, 1816, 1816, 1513, -534, 2101, -534, 14,
531 2101, -534, 2435, -534, -534, -534, -534, -534, 267, 246,
532 -534, -534, 1934, 1934, 268, 269, 272, -534, -534, 274,
533 -534, 287, 273, 287, 281, -534, 172, 172, -534, 92,
534 294, 2930, -534, -534, -534, -534, 295, 1631, 1816, -534,
535 2882, -534, -534, 297, 2101, 137, -534, 757, 2435, 2906,
536 2954, 251, 296, -534, -534, -534, 287, -534, 14, 21,
537 -534, -534, -534, -534, -534, 300, 1816, 14, -534, -534,
538 1816, 1277, 301, 298, -534, -534, -534, 304, 306, -534,
539 1, -534, 14, 2832, 305, 2978, 308, -534, 309, -534,
540 -534, -534, 310, 312, 313, 1816, 1159, 314, -534, 1513,
541 319, 315, 1395, 2805, 215, -534, -534, -534, 316, 1631,
542 -534, -534, 320, 317, 321, 322, -534, -534, 1159, -534,
543 -534, 287, 324, 1513, -534, -534, -534, -534
544 };
545
546 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
547 Performed when YYTABLE does not specify something else to do. Zero
548 means the default is an error. */
549 static const unsigned short int yydefact[] =
550 {
551 163, 284, 281, 285, 279, 280, 282, 268, 269, 0,
552 271, 272, 273, 274, 275, 276, 277, 278, 267, 168,
553 167, 0, 0, 0, 0, 361, 0, 0, 0, 465,
554 169, 0, 0, 164, 165, 171, 170, 172, 175, 369,
555 258, 260, 259, 265, 266, 288, 298, 264, 173, 174,
556 0, 303, 311, 313, 314, 0, 0, 323, 177, 176,
557 178, 0, 179, 0, 283, 270, 32, 33, 451, 417,
558 24, 369, 373, 38, 37, 36, 34, 35, 31, 30,
559 28, 27, 25, 26, 425, 424, 422, 420, 421, 423,
560 419, 418, 426, 29, 449, 447, 446, 448, 445, 444,
561 324, 0, 371, 39, 40, 267, 0, 0, 0, 0,
562 312, 309, 181, 192, 189, 191, 193, 194, 205, 202,
563 203, 200, 206, 201, 0, 204, 195, 196, 197, 0,
564 219, 219, 0, 185, 0, 0, 361, 361, 0, 369,
565 252, 329, 251, 0, 365, 365, 261, 262, 263, 358,
566 239, 285, 268, 242, 0, 0, 238, 257, 0, 0,
567 467, 0, 466, 267, 303, 1, 166, 367, 330, 0,
568 370, 289, 293, 291, 295, 286, 299, 288, 287, 307,
569 0, 0, 325, 325, 0, 0, 0, 370, 369, 332,
570 374, 372, 261, 262, 263, 0, 308, 208, 209, 210,
571 212, 211, 207, 219, 187, 182, 74, 41, 42, 43,
572 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
573 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
574 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
575 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
576 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
577 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
578 105, 106, 107, 108, 114, 112, 113, 111, 109, 110,
579 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
580 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
581 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
582 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
583 155, 156, 157, 158, 161, 159, 160, 162, 221, 190,
584 220, 183, 198, 199, 184, 207, 186, 229, 230, 0,
585 22, 23, 20, 21, 0, 0, 231, 188, 261, 360,
586 262, 359, 250, 256, 253, 0, 0, 0, 0, 0,
587 0, 0, 180, 0, 0, 0, 0, 334, 369, 367,
588 294, 290, 296, 297, 292, 300, 0, 301, 326, 0,
589 327, 0, 346, 0, 344, 0, 465, 0, 0, 0,
590 457, 458, 0, 395, 398, 397, 399, 400, 0, 401,
591 0, 0, 463, 0, 310, 0, 214, 222, 0, 0,
592 227, 224, 233, 2, 3, 4, 5, 6, 7, 8,
593 9, 10, 11, 13, 12, 14, 15, 16, 17, 18,
594 19, 0, 0, 0, 0, 0, 0, 337, 336, 338,
595 335, 369, 331, 243, 0, 0, 302, 0, 0, 333,
596 305, 0, 367, 0, 367, 0, 0, 0, 343, 0,
597 0, 355, 354, 356, 0, 0, 357, 440, 348, 0,
598 0, 439, 40, 0, 0, 0, 0, 460, 450, 0,
599 0, 375, 396, 0, 322, 0, 0, 215, 223, 0,
600 235, 0, 234, 0, 225, 0, 363, 0, 340, 255,
601 254, 0, 245, 247, 248, 246, 249, 0, 244, 376,
602 388, 389, 390, 391, 387, 392, 393, 394, 386, 0,
603 0, 380, 465, 385, 368, 0, 306, 304, 317, 0,
604 0, 328, 315, 0, 347, 345, 0, 402, 24, 0,
605 0, 0, 352, 0, 0, 465, 438, 0, 384, 465,
606 0, 459, 0, 437, 456, 321, 464, 217, 0, 216,
607 228, 232, 0, 0, 0, 0, 0, 339, 341, 0,
608 237, 0, 0, 0, 382, 319, 367, 367, 407, 30,
609 29, 411, 412, 408, 409, 410, 39, 0, 0, 350,
610 0, 351, 441, 452, 0, 0, 461, 219, 0, 236,
611 226, 0, 0, 342, 320, 377, 0, 381, 465, 243,
612 318, 316, 431, 417, 432, 0, 0, 465, 413, 349,
613 0, 465, 0, 0, 462, 213, 218, 0, 0, 378,
614 0, 383, 465, 0, 427, 353, 0, 454, 453, 442,
615 403, 366, 0, 0, 0, 0, 0, 0, 443, 465,
616 0, 0, 433, 0, 357, 429, 406, 404, 428, 0,
617 416, 455, 0, 0, 0, 434, 435, 414, 0, 405,
618 364, 0, 0, 465, 430, 379, 415, 436
619 };
620
621 /* YYPGOTO[NTERM-NUM]. */
622 static const short int yypgoto[] =
623 {
624 -534, -329, -120, -3, 25, -534, -534, 328, -534, -534,
625 -534, -534, -534, -534, -534, -534, -534, -534, 231, -534,
626 -534, -534, -122, -534, -320, -534, -534, -534, -534, -534,
627 -243, -534, -534, 345, -15, -24, -534, -534, -534, 232,
628 323, -534, -534, 196, -534, -534, -534, -534, 204, -534,
629 -534, -534, -534, 339, -5, -19, 12, -534, -534, 189,
630 -14, -39, -534, -534, 16, -205, -534, -121, 29, -534,
631 -80, -381, -534, -534, -534, -534, 42, -534, -23, -353,
632 -61, -4, -534, -534, 350, -534, -194, -491, -533, -534,
633 19, -364, -534, -287, -510, -1, -534, -534, -534, -473,
634 -534, -534, -534, -534, -534, -534, -534, -513, -6, -375,
635 -534, -534, -534, -534, -534, -534, -166, -163, -28, -509
636 };
637
638 /* YYDEFGOTO[NTERM-NUM]. */
639 static const short int yydefgoto[] =
640 {
641 -1, 544, 465, 167, 328, 32, 33, 34, 35, 36,
642 129, 130, 131, 132, 334, 133, 134, 135, 203, 204,
643 558, 559, 329, 330, 347, 491, 492, 37, 155, 156,
644 507, 508, 38, 496, 39, 40, 41, 42, 43, 44,
645 45, 46, 47, 175, 371, 374, 178, 48, 181, 451,
646 49, 50, 196, 51, 52, 53, 141, 55, 56, 379,
647 57, 466, 58, 59, 438, 439, 497, 498, 143, 383,
648 384, 467, 468, 61, 144, 145, 149, 566, 356, 367,
649 169, 403, 102, 62, 63, 520, 521, 469, 522, 523,
650 392, 393, 394, 655, 656, 657, 583, 584, 585, 103,
651 647, 658, 615, 664, 665, 395, 396, 470, 471, 104,
652 622, 638, 397, 398, 399, 476, 477, 404, 473, 162
653 };
654
655 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
656 positive, shift that token. If negative, reduce the rule whose
657 number is the opposite. If YYTABLE_NINF, syntax error. */
658 static const short int yytable[] =
659 {
660 168, 161, 157, 140, 111, 101, 100, 139, 142, 331,
661 186, 472, 54, 110, 480, 345, 449, 483, 432, 408,
662 146, 147, 148, 332, 190, 411, 582, 587, 482, 60,
663 54, 574, 592, 548, 29, 170, 71, -365, 605, 437,
664 608, 355, -365, 54, 434, 54, 165, 526, 502, 503,
665 504, 158, 527, 72, 505, 506, 171, 172, 173, -362,
666 -362, 174, 60, 586, 160, -314, -329, 187, -329, 372,
667 179, 643, 373, 629, 64, 534, 65, 618, 180, 432,
668 482, 406, 432, 541, 542, 157, 72, 481, 457, 68,
669 478, 458, 490, 551, 452, 453, 552, 191, 189, 528,
670 168, 532, 182, 192, 193, 194, 614, 183, 637, 612,
671 613, 493, 494, 333, 586, 454, 455, 574, 176, 4,
672 5, 202, 357, 358, 359, 184, 634, 401, -323, 185,
673 195, 335, 346, 348, 350, 170, 661, 659, 675, 666,
674 354, 644, 385, 386, 387, 388, 389, 390, 391, 669,
675 360, 435, 436, 509, 205, 581, 402, 352, 110, 659,
676 677, 432, 590, 591, 432, 432, 355, 369, 380, 380,
677 472, 572, 573, 586, -323, 54, 624, 486, 349, 351,
678 -362, 382, -240, 400, 187, -241, 586, 94, 95, 96,
679 97, 98, 99, 361, 362, 586, 364, 84, 85, 86,
680 87, 88, 89, 90, 91, 92, 581, 619, 385, 386,
681 387, 388, 389, 390, 391, 363, 366, 368, 370, 345,
682 376, 377, 405, 610, 611, 345, 385, 386, 387, 388,
683 389, 390, 391, 412, 433, 633, 434, 443, 445, 635,
684 446, 447, 599, 600, 510, 450, 472, 511, 456, 484,
685 524, 512, 487, 513, 514, 515, 516, 517, 518, 486,
686 495, 536, 537, 545, 653, 581, 546, 548, 547, 549,
687 432, 432, 550, 553, 472, 570, 555, 472, 581, 112,
688 519, 560, 564, 561, 627, 562, 598, 581, 565, 571,
689 510, 575, 345, 511, 576, 577, -24, 512, 472, 513,
690 514, 515, 516, 517, 518, 588, 597, 448, 601, 603,
691 602, 345, 345, 604, 606, 113, 114, 115, 116, 117,
692 118, 119, 120, 121, 122, 123, 124, 609, 125, 126,
693 127, 128, 616, 617, 628, 640, 346, 621, 632, 642,
694 639, 410, 346, 641, 651, 646, 459, 648, 474, 649,
695 650, 652, 662, 660, 663, 407, 668, 442, 671, 670,
696 672, 166, 673, 676, 187, 336, 631, 138, 365, 177,
697 164, 353, 381, 375, 101, 440, 568, 535, 159, 607,
698 501, 674, 444, 479, 460, 475, 596, 595, 0, 0,
699 0, 0, 0, 0, 0, 0, 499, 500, 485, 0,
700 369, 0, 0, 0, 0, 0, 489, 0, 0, 346,
701 0, 0, 0, 0, 0, 140, 0, 0, 0, 139,
702 142, 0, 0, 0, 0, 0, 0, 0, 346, 346,
703 0, 0, 0, 0, 0, 0, 0, 187, 0, 531,
704 0, 531, 345, 345, 0, 525, 554, 556, 0, 540,
705 0, 0, 0, 0, 382, 0, 0, 413, 414, 415,
706 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
707 426, 427, 428, 429, 430, 625, 0, 0, 140, 0,
708 543, 0, 139, 142, 557, 0, 0, 0, 0, 0,
709 0, 0, 0, 0, 0, 0, 0, 0, 569, 0,
710 0, 0, 0, 0, 0, 0, 0, 0, 593, 0,
711 0, 402, 0, 0, 0, 157, 0, 0, 0, 0,
712 0, 594, 0, 0, 0, 101, 1, 2, 3, 4,
713 5, 6, 7, 8, 0, 0, 0, 0, 0, 529,
714 0, 10, 11, 12, 13, 14, 15, 16, 17, 475,
715 0, 0, 105, 488, 0, 623, 0, 0, 0, 346,
716 346, 0, 413, 414, 415, 416, 417, 418, 419, 420,
717 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
718 630, 0, 0, 0, 0, 431, 0, 0, 0, 0,
719 0, 0, 530, 0, 0, 626, 0, 0, 0, 0,
720 0, 0, 0, 0, 0, 0, 0, 654, 0, 0,
721 0, 0, 106, 107, 108, 109, 0, 0, 0, 0,
722 0, 0, 0, 0, 0, 0, 0, -417, 0, 654,
723 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
724 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
725 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
726 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
727 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
728 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
729 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
730 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
731 -417, -417, -417, 0, -417, 0, -417, -417, -417, -417,
732 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
733 -417, -417, -417, -417, -417, -417, -417, -417, -417, -417,
734 -417, -417, -417, -417, -417, -417, -417, -417, -417, 0,
735 -417, -417, 0, -417, -417, -417, -417, 206, 0, 0,
736 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
737 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
738 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
739 237, 238, 239, 0, 240, 241, 242, 243, 244, 245,
740 246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
741 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
742 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
743 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
744 286, 287, 288, 0, 289, 0, 290, 291, 292, 293,
745 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
746 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
747 314, 315, 316, 317, 318, 319, 320, 321, 322, 66,
748 0, 323, 0, 324, 325, 326, 327, 0, 67, 0,
749 0, 0, 0, 68, 69, 0, 0, 0, 0, 0,
750 0, 0, 0, 197, 198, 199, 70, 0, 0, 0,
751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
752 0, 1, 2, 3, 4, 5, 6, 7, 8, 0,
753 0, 0, 0, 0, 9, 0, 10, 11, 12, 13,
754 14, 15, 16, 17, 0, 0, 0, 18, 73, 74,
755 75, 76, 77, 19, 20, 0, 0, 0, 0, 0,
756 0, 0, 0, 0, 21, 0, 0, 0, 0, 0,
757 78, 0, 79, 0, 80, 81, 82, 83, 0, 0,
758 0, 84, 85, 86, 87, 88, 89, 90, 91, 92,
759 93, 94, 95, 96, 97, 98, 99, 0, 0, 0,
760 0, 0, 200, 0, 201, 0, 22, 23, 24, 25,
761 26, 27, 28, 0, 29, 1, 2, 3, 4, 5,
762 6, 7, 8, 0, 0, 0, 0, 0, 529, 0,
763 10, 11, 12, 13, 14, 15, 16, 17, 30, 0,
764 0, 105, 0, 31, 66, 1, 2, 3, 4, 5,
765 6, 7, 8, 67, 0, 0, 0, 0, 68, 69,
766 10, 11, 12, 13, 14, 15, 16, 17, 0, 0,
767 0, 538, 461, 0, 462, 0, 463, 0, 0, 464,
768 0, 533, 0, 0, 0, 0, 0, 0, 0, 0,
769 0, 0, 0, 0, 340, 341, 72, 0, 0, 0,
770 0, 106, 107, 108, 109, 0, 0, 342, 343, 0,
771 0, 0, 0, 73, 74, 75, 76, 77, 0, 0,
772 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
773 0, 106, 107, 108, 539, 78, 0, 79, 0, 80,
774 81, 82, 83, 0, 0, 0, 84, 85, 86, 87,
775 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
776 98, 99, 66, 0, 0, 0, 0, 0, 0, 0,
777 0, 67, 0, 0, 0, 0, 68, 69, 0, 0,
778 0, 0, 0, 0, 0, 0, 578, 0, 0, 70,
779 461, 0, 462, 0, 463, 0, 0, 464, 0, 0,
780 0, 0, 0, 0, 0, 0, 0, 0, 0, 160,
781 0, 0, 340, 341, 72, 0, 0, 0, 0, 0,
782 0, 0, 0, 0, 0, 342, 343, 0, 0, 0,
783 0, 73, 74, 75, 76, 77, 0, 0, 0, 0,
784 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
785 0, 0, 0, 78, 0, 579, 0, 80, 81, 82,
786 83, 0, 0, 0, 84, 85, 86, 87, 88, 89,
787 90, 91, 92, 580, 94, 95, 96, 97, 98, 99,
788 66, 0, 0, 0, 0, 0, 0, 0, 0, 67,
789 0, 0, 0, 0, 68, 69, 0, 0, 0, 0,
790 0, 0, 0, 0, 0, 0, 0, 70, 461, 0,
791 462, 0, 463, 0, 0, 464, 0, 0, 0, 0,
792 0, 0, 0, 0, 0, 0, 0, 160, 0, 0,
793 340, 341, 72, 0, 0, 0, 0, 0, 0, 0,
794 0, 0, 0, 342, 343, 0, 0, 636, 0, 73,
795 74, 75, 76, 77, 0, 0, 0, 0, 0, 0,
796 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
797 0, 78, 0, 79, 0, 80, 81, 82, 83, 0,
798 0, 0, 84, 85, 86, 87, 88, 89, 90, 91,
799 92, 93, 94, 95, 96, 97, 98, 99, 66, 0,
800 0, 0, 0, 0, 0, 0, 0, 67, 0, 0,
801 0, 0, 68, 69, 0, 0, 0, 0, 0, 0,
802 0, 0, 0, 0, 0, 70, 461, -465, 462, 0,
803 463, 0, 0, 464, 0, 0, 0, 0, 0, 0,
804 0, 0, 0, 0, 0, 160, 0, 0, 340, 341,
805 72, 0, 0, 0, 0, 0, 0, 0, 0, 0,
806 0, 342, 343, 0, 0, 0, 0, 73, 74, 75,
807 76, 77, 0, 0, 0, 0, 0, 0, 0, 0,
808 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
809 0, 79, 0, 80, 81, 82, 83, 0, 0, 0,
810 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
811 94, 95, 96, 97, 98, 99, 66, 0, 0, 0,
812 0, 0, 0, 0, 0, 67, 0, 0, 0, 0,
813 68, 69, 0, 0, 0, 0, 0, 0, 0, 0,
814 0, 0, 0, 70, 461, 0, 462, 0, 463, 0,
815 0, 464, 0, 0, 0, 0, 0, 0, 0, 0,
816 0, 0, 0, 160, 0, 0, 340, 341, 72, 0,
817 0, 0, 0, 0, 0, 0, 0, 0, 0, 342,
818 343, 0, 0, 0, 0, 73, 74, 75, 76, 77,
819 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
820 0, 0, 0, 0, 0, 0, 0, 78, 0, 79,
821 0, 80, 81, 82, 83, 0, 0, 0, 84, 85,
822 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
823 96, 97, 98, 99, 66, 0, 0, 0, 0, 0,
824 0, 0, 0, 67, 0, 0, 0, 0, 68, 69,
825 0, 0, 0, 0, 0, 0, 0, 0, 578, 0,
826 0, 70, 461, 0, 462, 0, 463, 0, 0, 464,
827 0, 0, 0, 150, 1, 2, 151, 4, 5, 6,
828 152, 8, 153, 0, 340, 341, 72, 154, 0, 10,
829 11, 12, 13, 14, 15, 16, 17, 342, 343, 0,
830 105, 66, 0, 73, 74, 75, 76, 77, 0, 0,
831 67, 0, 0, 0, 0, 68, 69, 10, 11, 12,
832 13, 14, 15, 16, 17, 78, 0, 579, 70, 80,
833 81, 82, 83, 0, 0, 0, 84, 85, 86, 87,
834 88, 89, 90, 91, 92, 580, 94, 95, 96, 97,
835 98, 99, 0, 72, 0, 0, 0, 0, 0, 0,
836 106, 107, 108, 0, 0, 0, 0, 0, 0, 0,
837 73, 74, 75, 76, 77, 0, 0, 0, 0, 0,
838 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
839 0, 0, 78, 0, 79, 0, 80, 81, 82, 83,
840 0, 0, 0, 84, 85, 86, 87, 88, 89, 90,
841 91, 92, 93, 94, 95, 96, 97, 98, 99, 66,
842 0, 0, 0, 0, 0, 0, 0, 0, 67, 0,
843 0, 0, 0, 68, 69, 0, 0, 0, 0, 0,
844 0, 0, 0, 0, 0, 0, 70, 461, 0, 462,
845 0, 463, 0, 0, 464, 0, 0, 0, 0, 0,
846 0, 0, 0, 0, 0, 0, 0, 0, 0, 340,
847 341, 72, 0, 0, 0, 0, 0, 0, 0, 0,
848 0, 0, 342, 343, 0, 0, 0, 0, 73, 74,
849 75, 76, 77, 0, 0, 0, 0, 0, 0, 0,
850 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
851 78, 0, 79, 0, 80, 81, 82, 83, 0, 0,
852 0, 84, 85, 86, 87, 88, 89, 90, 91, 92,
853 93, 94, 95, 96, 97, 98, 99, 66, 0, 0,
854 0, 0, 0, 0, 0, 0, 67, 0, 0, 0,
855 0, 68, 69, 0, 0, 0, 0, 0, 0, 0,
856 0, 0, 0, 0, 70, 0, 0, 337, 0, 338,
857 0, 0, 339, 0, 0, 0, 0, 0, 0, 0,
858 0, 0, 0, 0, 0, 0, 0, 340, 341, 0,
859 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
860 342, 343, 0, 0, 0, 0, 73, 74, 75, 76,
861 77, 0, 0, 0, 0, 0, 0, 0, 344, 0,
862 0, 0, 0, 0, 0, 0, 0, 0, 78, 0,
863 79, 0, 80, 81, 82, 83, 0, 0, 0, 84,
864 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
865 95, 96, 97, 98, 99, 66, 0, 0, 0, 0,
866 0, 0, 0, 0, 67, 0, 0, 0, 0, 68,
867 69, 0, 0, 0, 0, 0, 0, 0, 0, 0,
868 0, 0, 70, 0, 0, 0, 0, 0, 0, 0,
869 71, 0, 0, 0, 0, 0, 0, 0, 0, 0,
870 0, 0, 0, 0, 66, 0, 0, 72, 0, 0,
871 0, 0, 0, 67, 0, 0, 0, 0, 68, 69,
872 0, 0, 0, 0, 73, 74, 75, 76, 77, 0,
873 0, 70, 0, 0, 0, 0, 0, 0, 0, 0,
874 0, 0, 0, 0, 0, 0, 78, 0, 79, 0,
875 80, 81, 82, 83, 0, 0, 72, 84, 85, 86,
876 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
877 97, 98, 99, 73, 74, 75, 76, 77, 0, 0,
878 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
879 0, 0, 0, 0, 0, 78, 0, 79, 0, 80,
880 81, 82, 83, 0, 0, 0, 84, 85, 86, 87,
881 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
882 98, 99, 66, 0, 0, 0, 0, 0, 0, 0,
883 0, 67, 0, 0, 0, 0, 68, 69, 0, 0,
884 0, 0, 0, 0, 0, 0, 0, 0, 0, 70,
885 0, 0, 0, 0, 0, 0, 0, 188, 0, 0,
886 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
887 0, 66, 0, 0, 0, 0, 0, 0, 0, 0,
888 67, 0, 0, 0, 0, 68, 69, 0, 0, 0,
889 0, 73, 74, 75, 76, 77, 0, 0, 70, 0,
890 0, 0, 0, 0, 0, 0, 409, 0, 0, 0,
891 0, 0, 0, 78, 0, 79, 0, 80, 81, 82,
892 83, 0, 0, 0, 84, 85, 86, 87, 88, 89,
893 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
894 73, 74, 75, 76, 77, 0, 0, 0, 0, 0,
895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
896 0, 0, 78, 0, 79, 0, 80, 81, 82, 83,
897 0, 0, 0, 84, 85, 86, 87, 88, 89, 90,
898 91, 92, 93, 94, 95, 96, 97, 98, 99, 66,
899 0, 0, 0, 0, 0, 0, 0, 0, 67, 0,
900 0, 0, 0, 68, 69, 0, 0, 0, 0, 0,
901 0, 0, 0, 0, 0, 0, 70, 0, 0, 0,
902 0, 0, 0, 0, 441, 0, 0, 0, 0, 0,
903 0, 0, 0, 0, 0, 0, 0, 0, 66, 0,
904 0, 0, 0, 0, 0, 0, 0, 67, 0, 0,
905 0, 0, 68, 69, 0, 0, 0, 0, 73, 74,
906 75, 76, 77, 0, 0, 70, 0, 0, 0, 0,
907 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
908 78, 0, 79, 0, 80, 81, 82, 83, 0, 0,
909 0, 84, 85, 86, 87, 88, 89, 90, 91, 92,
910 93, 94, 95, 96, 97, 98, 99, 73, 74, 75,
911 76, 77, 0, 0, 0, 0, 0, 0, 0, 0,
912 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
913 0, 79, 0, 80, 81, 82, 83, 0, 0, 0,
914 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
915 94, 95, 96, 97, 98, 99, 1, 2, 3, 4,
916 5, 6, 7, 8, 0, 0, 0, 0, 0, 9,
917 0, 10, 11, 12, 13, 14, 15, 16, 17, 0,
918 0, 0, 105, 1, 2, 3, 4, 5, 6, 7,
919 8, 0, 0, 0, 0, 567, 9, 0, 10, 11,
920 12, 13, 14, 15, 16, 17, 0, 0, 0, 105,
921 1, 2, 3, 4, 5, 6, 7, 8, 0, 0,
922 0, 0, 0, 9, 0, 10, 11, 12, 13, 14,
923 15, 16, 17, 0, 0, 0, 105, 0, 0, 0,
924 0, 0, 136, 137, 25, 109, 0, 0, 0, 0,
925 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
926 1, 2, 3, 4, 5, 6, 7, 8, 0, 106,
927 107, 108, 109, 9, 0, 10, 11, 12, 13, 14,
928 15, 16, 17, 0, 0, 0, 163, 1, 2, 3,
929 4, 5, 6, 7, 8, 0, 136, 137, 25, 109,
930 9, 0, 10, 11, 12, 13, 14, 15, 16, 17,
931 0, 0, 0, 105, 1, 2, 3, 4, 5, 6,
932 7, 8, 0, 0, 0, 0, 0, 378, 0, 10,
933 11, 12, 13, 14, 15, 16, 17, 0, 0, 0,
934 105, 0, 0, 0, 0, 0, 106, 107, 108, 109,
935 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
936 0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
937 7, 8, 0, 106, 107, 108, 109, 154, 0, 10,
938 11, 12, 13, 14, 15, 16, 17, 0, 0, 0,
939 105, 1, 2, 3, 4, 5, 6, 7, 8, 0,
940 106, 107, 108, 109, 0, 0, 10, 11, 12, 13,
941 14, 15, 16, 17, 589, 0, 0, 105, 0, 0,
942 0, 0, 0, 413, 414, 415, 416, 417, 418, 419,
943 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
944 430, 0, 0, 0, 667, 0, 543, 0, 0, 0,
945 106, 107, 108, 413, 414, 415, 416, 417, 418, 419,
946 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
947 430, 0, 645, 0, 0, 0, 543, 106, 107, 108,
948 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
949 423, 424, 425, 426, 427, 428, 429, 430, 563, 0,
950 0, 0, 0, 543, 0, 413, 414, 415, 416, 417,
951 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
952 428, 429, 430, 620, 0, 0, 0, 0, 431, 0,
953 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
954 423, 424, 425, 426, 427, 428, 429, 430, 0, 0,
955 0, 0, 0, 543, 413, 414, 415, 416, 417, 418,
956 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
957 429, 430, 0, 0, 0, 0, 0, 431, 413, 414,
958 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
959 425, 426, 427, 428, 429, 430, 0, 0, 0, 0,
960 0, 543, 413, 414, 415, 416, 417, 418, 419, 420,
961 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
962 0, 0, 0, 0, 0, 431, 413, 414, 415, 416,
963 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
964 427, 428, 429, 430, 0, 0, 0, 0, 0, 543
965 };
966
967 static const short int yycheck[] =
968 {
969 39, 29, 26, 22, 18, 9, 9, 22, 22, 131,
970 71, 386, 0, 18, 389, 135, 369, 398, 347, 339,
971 23, 24, 25, 34, 55, 345, 536, 536, 392, 0,
972 18, 522, 545, 32, 97, 39, 38, 37, 571, 37,
973 573, 41, 42, 31, 42, 33, 0, 34, 27, 28,
974 29, 34, 39, 55, 33, 34, 4, 5, 6, 41,
975 42, 9, 33, 536, 50, 37, 38, 71, 40, 6,
976 37, 70, 9, 606, 9, 456, 11, 587, 129, 408,
977 444, 203, 411, 464, 465, 109, 55, 43, 40, 17,
978 18, 43, 412, 37, 39, 40, 40, 128, 101, 452,
979 139, 454, 38, 106, 107, 108, 579, 38, 621, 17,
980 18, 431, 432, 124, 587, 39, 40, 608, 6, 7,
981 8, 124, 145, 146, 147, 42, 617, 188, 38, 42,
982 40, 134, 135, 136, 137, 139, 649, 646, 671, 652,
983 143, 632, 98, 99, 100, 101, 102, 103, 104, 659,
984 154, 356, 357, 43, 36, 536, 195, 37, 163, 668,
985 673, 490, 543, 544, 493, 494, 41, 170, 182, 183,
986 545, 39, 40, 646, 38, 163, 39, 40, 136, 137,
987 42, 184, 31, 186, 188, 31, 659, 115, 116, 117,
988 118, 119, 120, 31, 37, 668, 31, 105, 106, 107,
989 108, 109, 110, 111, 112, 113, 587, 588, 98, 99,
990 100, 101, 102, 103, 104, 42, 44, 38, 6, 339,
991 38, 37, 123, 576, 577, 345, 98, 99, 100, 101,
992 102, 103, 104, 38, 41, 616, 42, 46, 38, 620,
993 37, 33, 562, 563, 3, 34, 621, 6, 46, 39,
994 45, 10, 38, 12, 13, 14, 15, 16, 17, 40,
995 38, 46, 37, 46, 645, 646, 37, 32, 38, 46,
996 599, 600, 38, 37, 649, 37, 39, 652, 659, 36,
997 39, 39, 33, 39, 33, 40, 40, 668, 41, 41,
998 3, 39, 412, 6, 39, 39, 39, 10, 673, 12,
999 13, 14, 15, 16, 17, 39, 39, 368, 40, 37,
1000 41, 431, 432, 39, 41, 72, 73, 74, 75, 76,
1001 77, 78, 79, 80, 81, 82, 83, 46, 85, 86,
1002 87, 88, 38, 38, 38, 37, 339, 40, 38, 33,
1003 39, 344, 345, 39, 32, 40, 385, 39, 387, 40,
1004 40, 38, 33, 39, 39, 330, 40, 360, 41, 39,
1005 39, 33, 40, 39, 368, 134, 609, 22, 164, 46,
1006 31, 139, 183, 177, 378, 359, 497, 457, 28, 573,
1007 441, 668, 363, 389, 385, 388, 552, 550, -1, -1,
1008 -1, -1, -1, -1, -1, -1, 435, 436, 401, -1,
1009 403, -1, -1, -1, -1, -1, 409, -1, -1, 412,
1010 -1, -1, -1, -1, -1, 434, -1, -1, -1, 434,
1011 434, -1, -1, -1, -1, -1, -1, -1, 431, 432,
1012 -1, -1, -1, -1, -1, -1, -1, 441, -1, 453,
1013 -1, 455, 562, 563, -1, 448, 37, 486, -1, 464,
1014 -1, -1, -1, -1, 457, -1, -1, 48, 49, 50,
1015 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1016 61, 62, 63, 64, 65, 597, -1, -1, 497, -1,
1017 71, -1, 497, 497, 487, -1, -1, -1, -1, -1,
1018 -1, -1, -1, -1, -1, -1, -1, -1, 501, -1,
1019 -1, -1, -1, -1, -1, -1, -1, -1, 547, -1,
1020 -1, 550, -1, -1, -1, 539, -1, -1, -1, -1,
1021 -1, 549, -1, -1, -1, 529, 4, 5, 6, 7,
1022 8, 9, 10, 11, -1, -1, -1, -1, -1, 17,
1023 -1, 19, 20, 21, 22, 23, 24, 25, 26, 552,
1024 -1, -1, 30, 39, -1, 594, -1, -1, -1, 562,
1025 563, -1, 48, 49, 50, 51, 52, 53, 54, 55,
1026 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1027 608, -1, -1, -1, -1, 71, -1, -1, -1, -1,
1028 -1, -1, 70, -1, -1, 598, -1, -1, -1, -1,
1029 -1, -1, -1, -1, -1, -1, -1, 646, -1, -1,
1030 -1, -1, 90, 91, 92, 93, -1, -1, -1, -1,
1031 -1, -1, -1, -1, -1, -1, -1, 0, -1, 668,
1032 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
1033 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1034 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1035 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1036 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1037 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1038 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1039 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1040 83, 84, 85, -1, 87, -1, 89, 90, 91, 92,
1041 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1042 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1043 113, 114, 115, 116, 117, 118, 119, 120, 121, -1,
1044 123, 124, -1, 126, 127, 128, 129, 0, -1, -1,
1045 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
1046 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1047 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1048 33, 34, 35, -1, 37, 38, 39, 40, 41, 42,
1049 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1050 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1051 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1052 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1053 83, 84, 85, -1, 87, -1, 89, 90, 91, 92,
1054 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1055 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1056 113, 114, 115, 116, 117, 118, 119, 120, 121, 3,
1057 -1, 124, -1, 126, 127, 128, 129, -1, 12, -1,
1058 -1, -1, -1, 17, 18, -1, -1, -1, -1, -1,
1059 -1, -1, -1, 27, 28, 29, 30, -1, -1, -1,
1060 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1061 -1, 4, 5, 6, 7, 8, 9, 10, 11, -1,
1062 -1, -1, -1, -1, 17, -1, 19, 20, 21, 22,
1063 23, 24, 25, 26, -1, -1, -1, 30, 72, 73,
1064 74, 75, 76, 36, 37, -1, -1, -1, -1, -1,
1065 -1, -1, -1, -1, 47, -1, -1, -1, -1, -1,
1066 94, -1, 96, -1, 98, 99, 100, 101, -1, -1,
1067 -1, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1068 114, 115, 116, 117, 118, 119, 120, -1, -1, -1,
1069 -1, -1, 126, -1, 128, -1, 89, 90, 91, 92,
1070 93, 94, 95, -1, 97, 4, 5, 6, 7, 8,
1071 9, 10, 11, -1, -1, -1, -1, -1, 17, -1,
1072 19, 20, 21, 22, 23, 24, 25, 26, 121, -1,
1073 -1, 30, -1, 126, 3, 4, 5, 6, 7, 8,
1074 9, 10, 11, 12, -1, -1, -1, -1, 17, 18,
1075 19, 20, 21, 22, 23, 24, 25, 26, -1, -1,
1076 -1, 30, 31, -1, 33, -1, 35, -1, -1, 38,
1077 -1, 70, -1, -1, -1, -1, -1, -1, -1, -1,
1078 -1, -1, -1, -1, 53, 54, 55, -1, -1, -1,
1079 -1, 90, 91, 92, 93, -1, -1, 66, 67, -1,
1080 -1, -1, -1, 72, 73, 74, 75, 76, -1, -1,
1081 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1082 -1, 90, 91, 92, 93, 94, -1, 96, -1, 98,
1083 99, 100, 101, -1, -1, -1, 105, 106, 107, 108,
1084 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1085 119, 120, 3, -1, -1, -1, -1, -1, -1, -1,
1086 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1087 -1, -1, -1, -1, -1, -1, 27, -1, -1, 30,
1088 31, -1, 33, -1, 35, -1, -1, 38, -1, -1,
1089 -1, -1, -1, -1, -1, -1, -1, -1, -1, 50,
1090 -1, -1, 53, 54, 55, -1, -1, -1, -1, -1,
1091 -1, -1, -1, -1, -1, 66, 67, -1, -1, -1,
1092 -1, 72, 73, 74, 75, 76, -1, -1, -1, -1,
1093 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1094 -1, -1, -1, 94, -1, 96, -1, 98, 99, 100,
1095 101, -1, -1, -1, 105, 106, 107, 108, 109, 110,
1096 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1097 3, -1, -1, -1, -1, -1, -1, -1, -1, 12,
1098 -1, -1, -1, -1, 17, 18, -1, -1, -1, -1,
1099 -1, -1, -1, -1, -1, -1, -1, 30, 31, -1,
1100 33, -1, 35, -1, -1, 38, -1, -1, -1, -1,
1101 -1, -1, -1, -1, -1, -1, -1, 50, -1, -1,
1102 53, 54, 55, -1, -1, -1, -1, -1, -1, -1,
1103 -1, -1, -1, 66, 67, -1, -1, 70, -1, 72,
1104 73, 74, 75, 76, -1, -1, -1, -1, -1, -1,
1105 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1106 -1, 94, -1, 96, -1, 98, 99, 100, 101, -1,
1107 -1, -1, 105, 106, 107, 108, 109, 110, 111, 112,
1108 113, 114, 115, 116, 117, 118, 119, 120, 3, -1,
1109 -1, -1, -1, -1, -1, -1, -1, 12, -1, -1,
1110 -1, -1, 17, 18, -1, -1, -1, -1, -1, -1,
1111 -1, -1, -1, -1, -1, 30, 31, 32, 33, -1,
1112 35, -1, -1, 38, -1, -1, -1, -1, -1, -1,
1113 -1, -1, -1, -1, -1, 50, -1, -1, 53, 54,
1114 55, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1115 -1, 66, 67, -1, -1, -1, -1, 72, 73, 74,
1116 75, 76, -1, -1, -1, -1, -1, -1, -1, -1,
1117 -1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
1118 -1, 96, -1, 98, 99, 100, 101, -1, -1, -1,
1119 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1120 115, 116, 117, 118, 119, 120, 3, -1, -1, -1,
1121 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
1122 17, 18, -1, -1, -1, -1, -1, -1, -1, -1,
1123 -1, -1, -1, 30, 31, -1, 33, -1, 35, -1,
1124 -1, 38, -1, -1, -1, -1, -1, -1, -1, -1,
1125 -1, -1, -1, 50, -1, -1, 53, 54, 55, -1,
1126 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
1127 67, -1, -1, -1, -1, 72, 73, 74, 75, 76,
1128 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1129 -1, -1, -1, -1, -1, -1, -1, 94, -1, 96,
1130 -1, 98, 99, 100, 101, -1, -1, -1, 105, 106,
1131 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
1132 117, 118, 119, 120, 3, -1, -1, -1, -1, -1,
1133 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1134 -1, -1, -1, -1, -1, -1, -1, -1, 27, -1,
1135 -1, 30, 31, -1, 33, -1, 35, -1, -1, 38,
1136 -1, -1, -1, 3, 4, 5, 6, 7, 8, 9,
1137 10, 11, 12, -1, 53, 54, 55, 17, -1, 19,
1138 20, 21, 22, 23, 24, 25, 26, 66, 67, -1,
1139 30, 3, -1, 72, 73, 74, 75, 76, -1, -1,
1140 12, -1, -1, -1, -1, 17, 18, 19, 20, 21,
1141 22, 23, 24, 25, 26, 94, -1, 96, 30, 98,
1142 99, 100, 101, -1, -1, -1, 105, 106, 107, 108,
1143 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1144 119, 120, -1, 55, -1, -1, -1, -1, -1, -1,
1145 90, 91, 92, -1, -1, -1, -1, -1, -1, -1,
1146 72, 73, 74, 75, 76, -1, -1, -1, -1, -1,
1147 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1148 -1, -1, 94, -1, 96, -1, 98, 99, 100, 101,
1149 -1, -1, -1, 105, 106, 107, 108, 109, 110, 111,
1150 112, 113, 114, 115, 116, 117, 118, 119, 120, 3,
1151 -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
1152 -1, -1, -1, 17, 18, -1, -1, -1, -1, -1,
1153 -1, -1, -1, -1, -1, -1, 30, 31, -1, 33,
1154 -1, 35, -1, -1, 38, -1, -1, -1, -1, -1,
1155 -1, -1, -1, -1, -1, -1, -1, -1, -1, 53,
1156 54, 55, -1, -1, -1, -1, -1, -1, -1, -1,
1157 -1, -1, 66, 67, -1, -1, -1, -1, 72, 73,
1158 74, 75, 76, -1, -1, -1, -1, -1, -1, -1,
1159 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1160 94, -1, 96, -1, 98, 99, 100, 101, -1, -1,
1161 -1, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1162 114, 115, 116, 117, 118, 119, 120, 3, -1, -1,
1163 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
1164 -1, 17, 18, -1, -1, -1, -1, -1, -1, -1,
1165 -1, -1, -1, -1, 30, -1, -1, 33, -1, 35,
1166 -1, -1, 38, -1, -1, -1, -1, -1, -1, -1,
1167 -1, -1, -1, -1, -1, -1, -1, 53, 54, -1,
1168 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1169 66, 67, -1, -1, -1, -1, 72, 73, 74, 75,
1170 76, -1, -1, -1, -1, -1, -1, -1, 84, -1,
1171 -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
1172 96, -1, 98, 99, 100, 101, -1, -1, -1, 105,
1173 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1174 116, 117, 118, 119, 120, 3, -1, -1, -1, -1,
1175 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1176 18, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1177 -1, -1, 30, -1, -1, -1, -1, -1, -1, -1,
1178 38, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1179 -1, -1, -1, -1, 3, -1, -1, 55, -1, -1,
1180 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1181 -1, -1, -1, -1, 72, 73, 74, 75, 76, -1,
1182 -1, 30, -1, -1, -1, -1, -1, -1, -1, -1,
1183 -1, -1, -1, -1, -1, -1, 94, -1, 96, -1,
1184 98, 99, 100, 101, -1, -1, 55, 105, 106, 107,
1185 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
1186 118, 119, 120, 72, 73, 74, 75, 76, -1, -1,
1187 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1188 -1, -1, -1, -1, -1, 94, -1, 96, -1, 98,
1189 99, 100, 101, -1, -1, -1, 105, 106, 107, 108,
1190 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1191 119, 120, 3, -1, -1, -1, -1, -1, -1, -1,
1192 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1193 -1, -1, -1, -1, -1, -1, -1, -1, -1, 30,
1194 -1, -1, -1, -1, -1, -1, -1, 38, -1, -1,
1195 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1196 -1, 3, -1, -1, -1, -1, -1, -1, -1, -1,
1197 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1198 -1, 72, 73, 74, 75, 76, -1, -1, 30, -1,
1199 -1, -1, -1, -1, -1, -1, 38, -1, -1, -1,
1200 -1, -1, -1, 94, -1, 96, -1, 98, 99, 100,
1201 101, -1, -1, -1, 105, 106, 107, 108, 109, 110,
1202 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1203 72, 73, 74, 75, 76, -1, -1, -1, -1, -1,
1204 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1205 -1, -1, 94, -1, 96, -1, 98, 99, 100, 101,
1206 -1, -1, -1, 105, 106, 107, 108, 109, 110, 111,
1207 112, 113, 114, 115, 116, 117, 118, 119, 120, 3,
1208 -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
1209 -1, -1, -1, 17, 18, -1, -1, -1, -1, -1,
1210 -1, -1, -1, -1, -1, -1, 30, -1, -1, -1,
1211 -1, -1, -1, -1, 38, -1, -1, -1, -1, -1,
1212 -1, -1, -1, -1, -1, -1, -1, -1, 3, -1,
1213 -1, -1, -1, -1, -1, -1, -1, 12, -1, -1,
1214 -1, -1, 17, 18, -1, -1, -1, -1, 72, 73,
1215 74, 75, 76, -1, -1, 30, -1, -1, -1, -1,
1216 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1217 94, -1, 96, -1, 98, 99, 100, 101, -1, -1,
1218 -1, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1219 114, 115, 116, 117, 118, 119, 120, 72, 73, 74,
1220 75, 76, -1, -1, -1, -1, -1, -1, -1, -1,
1221 -1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
1222 -1, 96, -1, 98, 99, 100, 101, -1, -1, -1,
1223 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1224 115, 116, 117, 118, 119, 120, 4, 5, 6, 7,
1225 8, 9, 10, 11, -1, -1, -1, -1, -1, 17,
1226 -1, 19, 20, 21, 22, 23, 24, 25, 26, -1,
1227 -1, -1, 30, 4, 5, 6, 7, 8, 9, 10,
1228 11, -1, -1, -1, -1, 43, 17, -1, 19, 20,
1229 21, 22, 23, 24, 25, 26, -1, -1, -1, 30,
1230 4, 5, 6, 7, 8, 9, 10, 11, -1, -1,
1231 -1, -1, -1, 17, -1, 19, 20, 21, 22, 23,
1232 24, 25, 26, -1, -1, -1, 30, -1, -1, -1,
1233 -1, -1, 90, 91, 92, 93, -1, -1, -1, -1,
1234 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1235 4, 5, 6, 7, 8, 9, 10, 11, -1, 90,
1236 91, 92, 93, 17, -1, 19, 20, 21, 22, 23,
1237 24, 25, 26, -1, -1, -1, 30, 4, 5, 6,
1238 7, 8, 9, 10, 11, -1, 90, 91, 92, 93,
1239 17, -1, 19, 20, 21, 22, 23, 24, 25, 26,
1240 -1, -1, -1, 30, 4, 5, 6, 7, 8, 9,
1241 10, 11, -1, -1, -1, -1, -1, 17, -1, 19,
1242 20, 21, 22, 23, 24, 25, 26, -1, -1, -1,
1243 30, -1, -1, -1, -1, -1, 90, 91, 92, 93,
1244 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1245 -1, -1, -1, -1, 4, 5, 6, 7, 8, 9,
1246 10, 11, -1, 90, 91, 92, 93, 17, -1, 19,
1247 20, 21, 22, 23, 24, 25, 26, -1, -1, -1,
1248 30, 4, 5, 6, 7, 8, 9, 10, 11, -1,
1249 90, 91, 92, 93, -1, -1, 19, 20, 21, 22,
1250 23, 24, 25, 26, 39, -1, -1, 30, -1, -1,
1251 -1, -1, -1, 48, 49, 50, 51, 52, 53, 54,
1252 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1253 65, -1, -1, -1, 39, -1, 71, -1, -1, -1,
1254 90, 91, 92, 48, 49, 50, 51, 52, 53, 54,
1255 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1256 65, -1, 40, -1, -1, -1, 71, 90, 91, 92,
1257 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
1258 58, 59, 60, 61, 62, 63, 64, 65, 41, -1,
1259 -1, -1, -1, 71, -1, 48, 49, 50, 51, 52,
1260 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1261 63, 64, 65, 41, -1, -1, -1, -1, 71, -1,
1262 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
1263 58, 59, 60, 61, 62, 63, 64, 65, -1, -1,
1264 -1, -1, -1, 71, 48, 49, 50, 51, 52, 53,
1265 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1266 64, 65, -1, -1, -1, -1, -1, 71, 48, 49,
1267 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1268 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
1269 -1, 71, 48, 49, 50, 51, 52, 53, 54, 55,
1270 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1271 -1, -1, -1, -1, -1, 71, 48, 49, 50, 51,
1272 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1273 62, 63, 64, 65, -1, -1, -1, -1, -1, 71
1274 };
1275
1276 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1277 symbol of state STATE-NUM. */
1278 static const unsigned char yystos[] =
1279 {
1280 0, 4, 5, 6, 7, 8, 9, 10, 11, 17,
1281 19, 20, 21, 22, 23, 24, 25, 26, 30, 36,
1282 37, 47, 89, 90, 91, 92, 93, 94, 95, 97,
1283 121, 126, 137, 138, 139, 140, 141, 159, 164, 166,
1284 167, 168, 169, 170, 171, 172, 173, 174, 179, 182,
1285 183, 185, 186, 187, 188, 189, 190, 192, 194, 195,
1286 200, 205, 215, 216, 9, 11, 3, 12, 17, 18,
1287 30, 38, 55, 72, 73, 74, 75, 76, 94, 96,
1288 98, 99, 100, 101, 105, 106, 107, 108, 109, 110,
1289 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1290 135, 213, 214, 231, 241, 30, 90, 91, 92, 93,
1291 186, 192, 36, 72, 73, 74, 75, 76, 77, 78,
1292 79, 80, 81, 82, 83, 85, 86, 87, 88, 142,
1293 143, 144, 145, 147, 148, 149, 90, 91, 165, 166,
1294 187, 188, 192, 200, 206, 207, 135, 135, 135, 208,
1295 3, 6, 10, 12, 17, 160, 161, 167, 34, 216,
1296 50, 250, 251, 30, 185, 0, 139, 135, 193, 212,
1297 213, 4, 5, 6, 9, 175, 6, 172, 178, 37,
1298 129, 180, 38, 38, 42, 42, 212, 213, 38, 135,
1299 55, 128, 135, 135, 135, 40, 184, 27, 28, 29,
1300 126, 128, 135, 150, 151, 36, 0, 3, 4, 5,
1301 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1302 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1303 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
1304 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
1305 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1306 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1307 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1308 77, 78, 79, 80, 81, 82, 83, 84, 85, 87,
1309 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1310 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1311 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1312 119, 120, 121, 124, 126, 127, 128, 129, 136, 154,
1313 155, 154, 34, 124, 146, 135, 150, 33, 35, 38,
1314 53, 54, 66, 67, 84, 134, 135, 156, 135, 208,
1315 135, 208, 37, 171, 135, 41, 210, 210, 210, 210,
1316 213, 31, 37, 42, 31, 180, 44, 211, 38, 135,
1317 6, 176, 6, 9, 177, 175, 38, 37, 17, 191,
1318 192, 191, 135, 201, 202, 98, 99, 100, 101, 102,
1319 103, 104, 222, 223, 224, 237, 238, 244, 245, 246,
1320 135, 212, 193, 213, 249, 123, 154, 136, 156, 38,
1321 135, 156, 38, 48, 49, 50, 51, 52, 53, 54,
1322 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1323 65, 71, 133, 41, 42, 197, 197, 37, 196, 197,
1324 196, 38, 135, 46, 222, 38, 37, 33, 212, 211,
1325 34, 181, 39, 40, 39, 40, 46, 40, 43, 193,
1326 227, 31, 33, 35, 38, 134, 193, 203, 204, 219,
1327 239, 240, 241, 250, 193, 135, 247, 248, 18, 240,
1328 241, 43, 223, 203, 39, 135, 40, 38, 39, 135,
1329 156, 157, 158, 156, 156, 38, 165, 198, 199, 193,
1330 193, 212, 27, 28, 29, 33, 34, 162, 163, 43,
1331 3, 6, 10, 12, 13, 14, 15, 16, 17, 39,
1332 217, 218, 220, 221, 45, 135, 34, 39, 211, 17,
1333 70, 192, 211, 70, 203, 202, 46, 37, 30, 93,
1334 166, 203, 203, 71, 133, 46, 37, 38, 32, 46,
1335 38, 37, 40, 37, 37, 39, 193, 135, 152, 153,
1336 39, 39, 40, 41, 33, 41, 209, 43, 199, 135,
1337 37, 41, 39, 40, 219, 39, 39, 39, 27, 96,
1338 114, 203, 226, 228, 229, 230, 231, 251, 39, 39,
1339 203, 203, 239, 193, 250, 249, 248, 39, 40, 156,
1340 156, 40, 41, 37, 39, 220, 41, 218, 220, 46,
1341 211, 211, 17, 18, 231, 234, 38, 38, 226, 203,
1342 41, 40, 242, 193, 39, 154, 135, 33, 38, 220,
1343 250, 162, 38, 203, 219, 203, 70, 239, 243, 39,
1344 37, 39, 33, 70, 219, 40, 40, 232, 39, 40,
1345 40, 32, 38, 203, 193, 225, 226, 227, 233, 251,
1346 39, 239, 33, 39, 235, 236, 239, 39, 40, 226,
1347 39, 41, 39, 40, 225, 220, 39, 239
1348 };
1349
1350 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1351 static const unsigned char yyr1[] =
1352 {
1353 0, 132, 133, 133, 133, 133, 133, 133, 133, 133,
1354 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
1355 134, 134, 134, 134, 135, 135, 135, 135, 135, 135,
1356 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1357 135, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1358 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1359 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1360 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1361 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1362 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1363 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1364 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1365 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1366 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1367 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1368 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1369 136, 136, 136, 137, 137, 138, 138, 139, 139, 139,
1370 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
1371 140, 141, 141, 142, 142, 142, 142, 142, 142, 142,
1372 142, 143, 143, 144, 144, 145, 145, 145, 146, 146,
1373 147, 147, 148, 148, 148, 149, 149, 150, 150, 150,
1374 150, 150, 150, 151, 151, 152, 152, 153, 153, 154,
1375 154, 155, 155, 156, 156, 156, 156, 156, 156, 156,
1376 156, 156, 156, 157, 157, 158, 158, 159, 160, 161,
1377 161, 161, 161, 162, 162, 163, 163, 163, 163, 163,
1378 164, 165, 165, 165, 165, 165, 165, 166, 166, 167,
1379 167, 168, 168, 168, 169, 169, 169, 169, 170, 170,
1380 170, 171, 171, 171, 171, 171, 171, 171, 171, 172,
1381 172, 173, 173, 173, 174, 174, 174, 174, 175, 175,
1382 175, 175, 175, 176, 176, 177, 177, 177, 178, 178,
1383 178, 179, 179, 180, 180, 181, 181, 182, 183, 184,
1384 184, 185, 185, 186, 186, 187, 187, 188, 188, 189,
1385 189, 189, 189, 190, 190, 191, 191, 191, 191, 192,
1386 192, 192, 192, 193, 193, 194, 195, 196, 196, 197,
1387 198, 198, 199, 200, 201, 201, 202, 202, 203, 203,
1388 203, 203, 203, 203, 204, 204, 204, 204, 205, 206,
1389 207, 208, 208, 209, 209, 210, 210, 211, 211, 212,
1390 212, 213, 213, 214, 214, 215, 215, 216, 216, 216,
1391 217, 217, 218, 218, 219, 220, 221, 221, 221, 221,
1392 221, 221, 221, 221, 221, 222, 222, 223, 223, 223,
1393 223, 223, 224, 224, 225, 225, 225, 226, 226, 226,
1394 226, 226, 227, 227, 228, 229, 230, 231, 231, 231,
1395 231, 231, 231, 231, 231, 231, 231, 232, 232, 233,
1396 233, 234, 234, 235, 235, 236, 236, 237, 238, 239,
1397 239, 239, 240, 240, 241, 241, 241, 241, 241, 241,
1398 241, 241, 242, 242, 243, 243, 244, 245, 245, 246,
1399 247, 247, 248, 249, 249, 250, 250, 251
1400 };
1401
1402 /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
1403 static const unsigned char yyr2[] =
1404 {
1405 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1406 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1407 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1408 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1409 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1410 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1411 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1412 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1413 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1414 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1415 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1416 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1417 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1418 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1419 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1420 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1421 1, 1, 1, 0, 1, 1, 2, 1, 1, 1,
1422 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1423 3, 2, 3, 2, 2, 1, 2, 2, 2, 1,
1424 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1425 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1426 1, 1, 1, 6, 2, 0, 1, 1, 3, 0,
1427 1, 1, 2, 3, 2, 3, 5, 2, 4, 1,
1428 1, 1, 4, 0, 1, 1, 3, 6, 1, 1,
1429 1, 1, 1, 0, 1, 1, 1, 1, 1, 1,
1430 3, 1, 1, 2, 4, 4, 2, 2, 1, 1,
1431 1, 2, 2, 2, 1, 1, 1, 1, 1, 1,
1432 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1433 1, 1, 1, 2, 1, 1, 2, 2, 0, 1,
1434 2, 1, 2, 0, 1, 0, 1, 1, 0, 1,
1435 2, 3, 4, 0, 4, 1, 2, 2, 3, 0,
1436 2, 1, 2, 1, 1, 5, 7, 5, 7, 6,
1437 7, 6, 5, 1, 2, 0, 1, 1, 3, 1,
1438 2, 4, 3, 3, 2, 4, 4, 1, 1, 3,
1439 1, 2, 3, 4, 1, 3, 1, 3, 1, 4,
1440 3, 3, 2, 5, 1, 1, 1, 1, 2, 2,
1441 2, 0, 1, 0, 7, 0, 7, 0, 3, 0,
1442 1, 1, 2, 1, 2, 4, 5, 7, 8, 13,
1443 1, 3, 2, 4, 2, 1, 1, 1, 1, 1,
1444 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
1445 1, 1, 3, 6, 1, 2, 1, 1, 1, 1,
1446 1, 1, 3, 4, 6, 8, 5, 1, 1, 1,
1447 1, 1, 1, 1, 1, 1, 1, 0, 2, 1,
1448 3, 1, 1, 0, 1, 1, 3, 3, 3, 1,
1449 1, 3, 5, 6, 1, 1, 1, 1, 1, 1,
1450 1, 1, 0, 2, 1, 3, 3, 1, 1, 3,
1451 1, 3, 4, 1, 3, 0, 1, 1
1452 };
1453
1454
1455 /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */
1456 static const unsigned char yydprec[] =
1457 {
1458 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1460 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1461 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1462 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1463 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1464 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1465 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1466 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1468 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1470 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1471 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1472 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1473 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1474 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1475 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1476 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1481 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1482 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1483 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1484 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1486 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1487 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1488 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1489 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1490 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1491 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1492 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1493 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1494 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1496 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1497 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1499 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1500 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1501 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1502 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1503 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1504 0, 0, 0, 0, 0, 0, 0, 0
1505 };
1506
1507 /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */
1508 static const unsigned char yymerger[] =
1509 {
1510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1511 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1514 0, 0,