1 /* A Bison parser, made by GNU Bison 3.0.4. */
3 /* Skeleton implementation for Bison GLR parsers in C
5 Copyright (C) 2002-2015 Free Software Foundation, Inc.
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.
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.
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/>. */
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.
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
33 /* C GLR parser skeleton written by Paul Hilfinger. */
35 /* Identify Bison output. */
39 #define YYBISON_VERSION "3.0.4"
42 #define YYSKELETON_NAME "glr.c"
48 /* "%code top" blocks. */
49 #line 1 "src/parser_proc_grammar.y" /* glr.c:222 */
51 #include "php_psi_stdinc.h"
53 #line 54 "src/parser_proc.c" /* glr.c:222 */
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
63 /* First part of user declarations. */
65 #line 66 "src/parser_proc.c" /* glr.c:240 */
68 # if defined __cplusplus && 201103L <= __cplusplus
69 # define YY_NULLPTR nullptr
75 #include "parser_proc.h"
77 /* Enabling verbose error messages. */
78 #ifdef YYERROR_VERBOSE
79 # undef YYERROR_VERBOSE
80 # define YYERROR_VERBOSE 1
82 # define YYERROR_VERBOSE 1
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
;
91 /* Copy the second part of user declarations. */
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 */
104 #define PSI_PARSER_PROC_DEBUG 1
106 static int psi_parser_proc_lex(YYSTYPE
*u
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
);
107 static void psi_parser_proc_error(struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char *msg
);
109 static inline void psi_parser_proc_add_struct(struct psi_parser
*P
, struct psi_decl_struct
*strct
)
113 P
->structs
= psi_plist_init((psi_plist_dtor
) psi_decl_struct_free
);
115 P
->structs
= psi_plist_add(P
->structs
, &strct
);
117 static inline void psi_parser_proc_add_union(struct psi_parser
*P
, struct psi_decl_union
*u
)
121 P
->unions
= psi_plist_init((psi_plist_dtor
) psi_decl_union_free
);
123 P
->unions
= psi_plist_add(P
->unions
, &u
);
125 static inline void psi_parser_proc_add_enum(struct psi_parser
*P
, struct psi_decl_enum
*e
)
129 P
->enums
= psi_plist_init((psi_plist_dtor
) psi_decl_enum_free
);
131 P
->enums
= psi_plist_add(P
->enums
, &e
);
133 static inline void psi_parser_proc_deanon_typedef(struct psi_decl_arg
*def
)
135 switch (def
->type
->type
) {
137 if (!psi_decl_type_is_anon(def
->type
->name
, "struct")) {
142 if (!psi_decl_type_is_anon(def
->type
->name
, "union")) {
147 if (!psi_decl_type_is_anon(def
->type
->name
, "enum")) {
154 free(def
->type
->name
);
155 def
->type
->name
= strdup(def
->var
->name
);
157 static inline void psi_parser_proc_add_typedef(struct psi_parser
*P
, struct psi_decl_arg
*def
)
161 P
->types
= psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
);
163 //psi_parser_proc_deanon_typedef(def);
164 P
->types
= psi_plist_add(P
->types
, &def
);
166 static inline void psi_parser_proc_add_const(struct psi_parser
*P
, struct psi_const
*cnst
) {
169 P
->consts
= psi_plist_init((psi_plist_dtor
) psi_const_free
);
171 P
->consts
= psi_plist_add(P
->consts
, &cnst
);
174 static inline void psi_parser_proc_add_decl(struct psi_parser
*P
, struct psi_decl
*decl
) {
177 if (psi_decl_is_blacklisted(decl
->func
->var
->name
)) {
178 psi_decl_free(&decl
);
183 P
->decls
= psi_plist_init((psi_plist_dtor
) psi_decl_free
);
185 P
->decls
= psi_plist_add(P
->decls
, &decl
);
187 static inline void psi_parser_proc_add_decl_extvars(struct psi_parser
*P
, struct psi_plist
*list
) {
190 P
->vars
= psi_plist_init((psi_plist_dtor
) psi_decl_extvar_free
);
192 P
->vars
= psi_plist_add_r(P
->vars
, psi_plist_count(list
), psi_plist_eles(list
));
195 static inline void psi_parser_proc_add_impl(struct psi_parser
*P
, struct psi_impl
*impl
) {
198 P
->impls
= psi_plist_init((psi_plist_dtor
) psi_impl_free
);
200 P
->impls
= psi_plist_add(P
->impls
, &impl
);
205 #line 206 "src/parser_proc.c" /* glr.c:264 */
212 # if defined YYENABLE_NLS && YYENABLE_NLS
214 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
215 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
219 # define YY_(Msgid) Msgid
227 # define YYMALLOC malloc
230 # define YYREALLOC realloc
233 #define YYSIZEMAX ((size_t) -1)
238 typedef unsigned char yybool
;
245 # define YYJMP_BUF jmp_buf
246 # define YYSETJMP(Env) setjmp (Env)
248 # define YYLONGJMP(Env, Val) (longjmp (Env, Val), YYASSERT (0))
252 # if (defined __GNUC__ \
253 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
254 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
255 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
257 # define YY_ATTRIBUTE(Spec) /* empty */
261 #ifndef YY_ATTRIBUTE_PURE
262 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
265 #ifndef YY_ATTRIBUTE_UNUSED
266 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
269 #if !defined _Noreturn \
270 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
271 # if defined _MSC_VER && 1200 <= _MSC_VER
272 # define _Noreturn __declspec (noreturn)
274 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
278 /* Suppress unused-variable warnings by "using" E. */
279 #if ! defined lint || defined __GNUC__
280 # define YYUSE(E) ((void) (E))
282 # define YYUSE(E) /* empty */
285 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
286 /* Suppress an incorrect diagnostic about yylval being uninitialized. */
287 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
288 _Pragma ("GCC diagnostic push") \
289 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
290 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
291 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
292 _Pragma ("GCC diagnostic pop")
294 # define YY_INITIAL_VALUE(Value) Value
296 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
297 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
298 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
300 #ifndef YY_INITIAL_VALUE
301 # define YY_INITIAL_VALUE(Value) /* Nothing. */
306 # define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0)))
309 /* YYFINAL -- State number of the termination state. */
311 /* YYLAST -- Last index in YYTABLE. */
314 /* YYNTOKENS -- Number of terminals. */
315 #define YYNTOKENS 140
316 /* YYNNTS -- Number of nonterminals. */
318 /* YYNRULES -- Number of rules. */
320 /* YYNRULES -- Number of states. */
321 #define YYNSTATES 937
322 /* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
324 /* YYMAXLEFT -- Maximum number of symbols to the left of a handle
325 accessed by $0, $-1, etc., in any rule. */
328 /* YYTRANSLATE(X) -- Bison symbol number corresponding to X. */
330 #define YYMAXUTOK 394
332 #define YYTRANSLATE(YYX) \
333 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
335 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
336 static const unsigned char yytranslate
[] =
338 0, 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, 2, 2, 2, 2,
342 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
343 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
344 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
345 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
346 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
347 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
348 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
349 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
350 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
351 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
352 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
353 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
354 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
355 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
356 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
357 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
358 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
359 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
360 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
361 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
362 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
363 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
364 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
365 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
366 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
367 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
368 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
369 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
370 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
371 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
372 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
373 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
374 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
375 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
376 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
377 135, 136, 137, 138, 139
381 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
382 static const unsigned short int yyrline
[] =
384 0, 433, 433, 433, 433, 433, 433, 433, 433, 433,
385 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
386 434, 434, 434, 434, 435, 435, 435, 435, 435, 435,
387 435, 435, 435, 435, 435, 435, 435, 435, 435, 435,
388 435, 435, 435, 436, 436, 436, 436, 436, 436, 436,
389 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
390 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
391 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
392 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
393 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
394 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
395 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
396 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
397 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
398 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
399 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
400 436, 437, 437, 437, 437, 437, 437, 437, 437, 437,
401 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
402 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
403 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
404 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
405 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
406 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
407 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
408 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
409 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
410 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
411 437, 437, 437, 437, 437, 437, 437, 441, 442, 445,
412 446, 449, 450, 451, 452, 458, 462, 465, 468, 471,
413 477, 480, 483, 486, 489, 495, 501, 504, 510, 533,
414 537, 541, 546, 550, 554, 558, 565, 566, 570, 571,
415 575, 576, 577, 581, 582, 586, 587, 591, 592, 593,
416 597, 598, 602, 607, 612, 617, 626, 629, 632, 633,
417 639, 644, 652, 655, 659, 663, 670, 674, 678, 682,
418 687, 698, 709, 714, 719, 723, 729, 739, 742, 746,
419 750, 756, 763, 767, 771, 778, 779, 780, 784, 798,
420 804, 807, 813, 816, 822, 823, 831, 842, 851, 863,
421 864, 868, 878, 887, 899, 900, 903, 909, 910, 914,
422 918, 922, 927, 932, 940, 941, 942, 945, 951, 954,
423 957, 963, 964, 968, 971, 974, 980, 983, 986, 994,
424 1006, 1009, 1012, 1015, 1022, 1025, 1035, 1038, 1041, 1044,
425 1045, 1046, 1050, 1053, 1056, 1067, 1074, 1084, 1087, 1093,
426 1096, 1103, 1134, 1137, 1143, 1146, 1152, 1155, 1158, 1161,
427 1167, 1171, 1172, 1176, 1177, 1181, 1182, 1189, 1190, 1194,
428 1201, 1212, 1219, 1227, 1251, 1279, 1286, 1297, 1343, 1384,
429 1399, 1402, 1405, 1411, 1414, 1420, 1435, 1438, 1467, 1475,
430 1503, 1508, 1516, 1526, 1536, 1539, 1543, 1549, 1563, 1580,
431 1583, 1589, 1596, 1606, 1613, 1616, 1622, 1627, 1635, 1639,
432 1643, 1647, 1651, 1655, 1662, 1666, 1670, 1674, 1678, 1682,
433 1688, 1692, 1699, 1702, 1714, 1718, 1722, 1729, 1742, 1755,
434 1768, 1771, 1778, 1779, 1783, 1786, 1789, 1792, 1798, 1802,
435 1809, 1812, 1815, 1830, 1831, 1832, 1833, 1837, 1840, 1846,
436 1847, 1853, 1856, 1862, 1863, 1867, 1868, 1878, 1881, 1888,
437 1893, 1898, 1908, 1911, 1917, 1920, 1926, 1933, 1940, 1947,
438 1948, 1952, 1953, 1954, 1955, 1959, 1960, 1961, 1962, 1963,
439 1967, 1970, 1976, 1979, 1982, 1985, 1988, 1994, 1998, 2006,
440 2007, 2011, 2018, 2021, 2024, 2027, 2031, 2034, 2040, 2044,
441 2052, 2059, 2064, 2072, 2080, 2081, 2082, 2083, 2084, 2085,
442 2086, 2087, 2088, 2089, 2093, 2096, 2102, 2105, 2111, 2112,
443 2116, 2119, 2125, 2128, 2134, 2141, 2145, 2152, 2155, 2158,
444 2164, 2171, 2174, 2177, 2184, 2189, 2197, 2198, 2199, 2200,
445 2201, 2202, 2203, 2204, 2208, 2211, 2217, 2220, 2226, 2233,
446 2234, 2238, 2245, 2248, 2254, 2262, 2265, 2271
450 #if YYDEBUG || YYERROR_VERBOSE || 1
451 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
452 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
453 static const char *const yytname
[] =
455 "\"end of file\"", "error", "$undefined", "BOOL", "CHAR", "SHORT",
456 "INT", "SIGNED", "UNSIGNED", "LONG", "FLOAT", "DOUBLE", "STRING",
457 "MIXED", "ARRAY", "OBJECT", "CALLABLE", "VOID", "ZVAL", "NULL", "TRUE",
458 "FALSE", "NAME", "NSNAME", "DOLLAR_NAME", "NUMBER", "QUOTED_STRING",
459 "QUOTED_CHAR", "SIZEOF", "VOLATILE", "\"end of line\"", "\";\"", "\"(\"",
460 "\")\"", "\",\"", "\":\"", "\"{\"", "\"}\"", "\"[\"", "\"]\"", "\"=\"",
461 "\"#\"", "\"|\"", "\"^\"", "\"&\"", "\"<<\"", "\">>\"", "\"+\"", "\"-\"",
462 "\"*\"", "\"/\"", "\"%\"", "\"<\"", "\">\"", "\">=\"", "\"<=\"",
463 "\"||\"", "\"&&\"", "\"==\"", "\"!=\"", "\"~\"", "\"!\"", "\".\"",
464 "\"\\\\\"", "\"...\"", "\"?\"", "PRAGMA", "PRAGMA_ONCE", "LINE", "ERROR",
465 "WARNING", "IF", "IFDEF", "IFNDEF", "ELSE", "ELIF", "ENDIF", "DEFINE",
466 "DEFINED", "UNDEF", "IMPORT", "INCLUDE", "INCLUDE_NEXT", "TYPEDEF",
467 "STRUCT", "UNION", "ENUM", "CONST", "LIB", "STATIC", "CALLBACK",
468 "FUNCTION", "LET", "SET", "TEMP", "FREE", "RETURN", "AS", "PRE_ASSERT",
469 "POST_ASSERT", "BOOLVAL", "INTVAL", "STRVAL", "PATHVAL", "STRLEN",
470 "FLOATVAL", "ARRVAL", "OBJVAL", "COUNT", "CALLOC", "TO_BOOL", "TO_INT",
471 "TO_STRING", "TO_FLOAT", "TO_ARRAY", "TO_OBJECT", "COMMENT",
472 "WHITESPACE", "NO_WHITESPACE", "CPP_HEADER", "CPP_ATTRIBUTE",
473 "CPP_EXTENSION", "CPP_PASTE", "CPP_INLINE", "CPP_RESTRICT", "CPP_ASM",
474 "BSLASH", "LONG_DOUBLE", "INT8", "UINT8", "INT16", "UINT16", "INT32",
475 "UINT32", "INT64", "UINT64", "INT128", "UINT128", "BINARY", "UNARY",
476 "$accept", "binary_op_token", "unary_op_token", "name_token",
477 "any_noeol_token", "any_nobrace_token", "file", "blocks", "block", "lib",
478 "cpp", "cpp_exp", "cpp_ignored_token", "cpp_message_token",
479 "cpp_include_token", "cpp_header_token", "cpp_no_arg_token",
480 "cpp_name_arg_token", "cpp_exp_arg_token", "cpp_macro_decl",
481 "cpp_macro_sig", "cpp_macro_sig_args", "cpp_macro_decl_tokens",
482 "cpp_macro_decl_token_list", "cpp_macro_exp", "cpp_macro_call_args",
483 "cpp_macro_call_arg_list", "constant", "impl_def_val",
484 "impl_def_val_token", "decl_typedef", "typedef", "typedef_anon",
485 "typedef_decl", "typedef_anon_decl", "qualified_decl_type",
486 "decl_type_qualifier_token", "decl_type", "decl_type_complex",
487 "decl_type_simple", "decl_real_type", "int_signed", "int_width",
488 "decl_int_type", "int_signed_types", "signed_short_types",
489 "signed_long_types", "int_width_types", "decl_stmt", "decl_asm",
490 "quoted_strings", "decl_extvar_stmt", "decl_extvar_list", "decl_vars",
491 "ignored_decl", "ignored_decl_body", "ignored_decl_body_stmts",
492 "ignored_decl_body_stmt", "decl", "decl_body", "decl_func_body",
493 "decl_functor_body", "decl_anon_functor_body", "decl_functor",
494 "decl_anon_functor", "decl_func", "decl_args", "decl_arg_list",
495 "decl_anon_arg", "decl_arg", "decl_var", "decl_union", "decl_struct",
496 "decl_struct_args", "struct_args_block", "struct_args",
497 "struct_arg_var_list", "decl_vars_with_layout", "decl_enum",
498 "decl_enum_items", "decl_enum_item", "num_exp", "number", "sizeof",
499 "sizeof_body", "sizeof_body_notypes", "enum_name", "union_name",
500 "struct_name", "optional_name", "optional_comma", "decl_layout",
501 "align_and_size", "array_size", "array_qualifier_token", "indirection",
502 "pointers", "asterisks", "asterisk", "pointer_qualifier_token", "impl",
503 "impl_func", "impl_args", "impl_arg", "impl_var", "impl_type",
504 "impl_type_restricted", "impl_type_token", "impl_type_restricted_token",
505 "impl_type_extended_token", "impl_stmts", "impl_stmt", "let_stmt",
506 "let_exp", "let_exp_byref", "let_exp_assign", "let_calloc",
507 "let_callback", "let_func", "let_func_token", "let_func_exps",
508 "let_exps", "callback_rval", "callback_arg_list", "callback_args",
509 "return_stmt", "return_exp", "call_decl_vars", "set_stmt", "set_exp",
510 "set_func", "set_func_token", "set_func_exps", "set_exps", "assert_stmt",
511 "assert_stmt_token", "free_stmt", "free_exps", "free_exp", "reference",
516 #define YYPACT_NINF -717
517 #define YYTABLE_NINF -626
519 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
521 static const short int yypact
[] =
523 713, -717, -717, -717, -717, -717, 54, -717, -717, -717,
524 501, -717, -717, -717, 741, 1409, 7459, 7459, 7459, 120,
525 26, 236, 23, -717, 5541, 1667, 71, 713, -717, -717,
526 -717, -717, -717, 6717, 597, -717, -717, -717, -717, 174,
527 162, -717, -717, -717, -717, -40, -717, -717, 84, 64,
528 87, -717, -717, -717, -717, 91, -717, 97, -717, -717,
529 -717, 7459, 7459, 7459, -717, 1667, -717, 79, -717, -717,
530 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
531 884, -717, -717, -717, -717, 123, 1010, 1010, 25, -717,
532 1010, 6491, 7459, 7459, 1780, 125, -717, -717, -717, 129,
533 7459, 141, 141, -717, -717, -717, 5474, -717, -717, -717,
534 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
535 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
536 -717, -717, -717, -717, -717, -717, -717, 131, -717, -717,
537 131, 128, -717, -717, -717, -717, -717, 158, -717, 155,
538 1667, 152, 161, -717, 171, -717, 1893, 1409, -40, 152,
539 -717, -717, 27, 164, -717, -717, 168, 7459, 4, -717,
540 -717, -717, 222, -717, 73, -717, -717, -717, 199, -717,
541 198, 207, 2006, 2006, 7459, 217, -717, -717, -717, 152,
542 6943, 232, -717, 1519, -717, -717, -717, -717, -717, -717,
543 -717, -717, 1632, -717, -717, -717, -717, 1745, 1858, -717,
544 -717, -717, 1971, -717, -717, -717, -717, -717, -717, -717,
545 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
546 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
547 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
548 -717, -717, -717, -717, -717, 2084, 2197, 2310, 2423, 2536,
549 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
550 -717, -717, -717, -717, -717, 2649, -717, 2762, 2875, 2988,
551 3101, 3214, 3327, -717, 3440, -717, -717, 3553, 3666, 3779,
552 3892, 4005, 4118, 4231, 4344, 4457, 4570, 4683, 4796, 4909,
553 5022, 5135, 5248, -717, -717, -717, -717, -717, -717, -717,
554 5361, 1010, -717, -717, -717, -717, -717, -717, -717, -717,
555 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
556 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
557 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
558 1010, -717, -717, -717, -717, -717, -717, -717, 80, 6491,
559 -717, -717, -717, -717, 7056, 6491, 201, 7588, -717, 139,
560 -717, 177, -717, -717, -717, -717, 241, 243, 243, 52,
561 52, 245, -717, 152, 1262, -717, 217, 251, 264, 283,
562 -717, -717, -717, -717, 1376, -717, 253, 164, -717, -717,
563 -717, -717, -717, 311, -717, -717, 292, -717, 202, 6717,
564 -717, 287, 216, 290, -717, -717, 218, 285, 294, -717,
565 6943, 6152, 6943, 7459, 6943, -717, -717, 43, -717, -717,
566 -717, -717, -717, 6378, -717, -717, 296, -717, 7459, -717,
567 -717, 299, 7588, 300, -717, -717, -717, -717, 567, 312,
568 -717, 6822, 7459, -717, -717, 6491, -717, -717, -717, -717,
569 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
570 -717, -717, -717, -717, 6491, 6491, 314, 1497, 6943, 6943,
571 -717, -717, -717, -717, 5700, -717, -717, -717, -717, -717,
572 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
573 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
574 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
575 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
576 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
577 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
578 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
579 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
580 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
581 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
582 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
583 -717, -717, -717, -717, 1136, -717, 56, 258, -717, -717,
584 -717, -717, -717, -717, -717, 5587, -717, -717, 6378, -717,
585 7564, -717, -717, 309, 7169, -717, -717, -717, 68, 317,
586 2006, 164, 291, 1667, 164, 297, 6378, 7459, 319, 318,
587 320, 7612, 324, 323, -717, 328, 341, 326, 335, 112,
588 -717, 338, 340, -717, -717, -717, 6705, 6943, 7228, -717,
589 253, 339, -717, -717, -717, 342, 7588, 345, 346, 7322,
590 -717, 348, 1780, 344, -717, -717, 6604, 408, 7459, 141,
591 141, -717, -717, 176, -717, -717, 350, -717, 300, 7612,
592 -717, -717, -717, -717, -717, -717, -717, -717, 349, 233,
593 -717, 23, -717, -717, -717, 44, 70, 76, 6924, -717,
594 -717, 6378, 6378, -717, 253, 249, -717, 253, 255, -717,
595 352, -717, -717, 353, 7612, -717, -717, 5813, -717, 6152,
596 -717, 6943, -717, 23, 6943, -717, 7459, 7341, -717, -717,
597 -717, -717, -717, 356, 357, -717, -717, -717, -717, 6491,
598 6491, 363, -717, 51, 365, -717, 344, 243, 243, -717,
599 284, 367, 284, 343, 6378, -717, 7540, -717, 7459, 2006,
600 -717, 6830, 164, 347, 164, 164, 192, 295, 237, 371,
601 7612, -717, -717, -717, -717, 374, 6265, -717, 375, 6943,
602 271, -717, 377, 296, 387, 1010, 7400, 7588, 7636, 397,
603 388, 392, 6943, 395, 365, 6943, 6943, -717, 284, -717,
604 23, 5700, -717, 6378, 396, 399, -717, -717, 400, -717,
605 -717, 371, -717, -717, -717, 7341, -717, 406, 6378, 23,
606 -717, 5926, 407, 411, -717, 331, -717, -717, -717, 410,
607 404, 419, 344, 414, -717, 418, -717, 40, -717, 7660,
608 425, 427, 164, 428, 23, 7160, 424, 435, -717, 436,
609 -717, -717, 104, -717, 439, 440, -717, 6943, -717, 451,
610 2006, 449, -717, 385, 453, 6378, 5813, 454, -717, 6152,
611 -717, -717, 456, 461, 464, 344, 458, 463, 2006, 459,
612 6039, 7047, 318, -717, -717, -717, 465, 6265, -717, -717,
613 466, 468, -717, 462, 469, 471, 481, 482, 480, -717,
614 -717, 5813, -717, 494, -717, 284, 489, 164, 23, 492,
615 6152, -717, 493, -717, 2006, -717, 490, -717, -717, -717,
616 495, 6039, 164, 499, -717, 500, -717
619 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
620 Performed when YYTABLE does not specify something else to do. Zero
621 means the default is an error. */
622 static const unsigned short int yydefact
[] =
624 277, 396, 393, 397, 391, 392, 394, 388, 389, 387,
625 386, 378, 282, 281, 0, 0, 0, 0, 500, 377,
626 0, 0, 625, 283, 0, 0, 0, 278, 279, 285,
627 284, 286, 290, 517, 0, 374, 380, 379, 385, 400,
628 412, 384, 287, 288, 289, 417, 435, 437, 438, 0,
629 0, 449, 292, 291, 293, 0, 294, 0, 395, 390,
630 386, 0, 0, 0, 377, 0, 436, 422, 296, 307,
631 304, 306, 308, 309, 320, 317, 318, 315, 321, 316,
632 0, 319, 310, 311, 312, 0, 332, 332, 0, 300,
633 0, 0, 500, 500, 0, 0, 360, 365, 458, 364,
634 0, 508, 508, 33, 34, 613, 574, 24, 39, 38,
635 37, 35, 36, 32, 31, 25, 29, 28, 26, 27,
636 40, 582, 581, 579, 577, 578, 580, 576, 575, 583,
637 30, 611, 609, 608, 610, 607, 606, 381, 41, 42,
638 382, 383, 497, 541, 542, 543, 544, 0, 538, 0,
639 0, 0, 0, 627, 0, 626, 386, 0, 417, 0,
640 1, 280, 523, 510, 376, 459, 0, 518, 519, 521,
641 375, 402, 406, 404, 408, 401, 398, 413, 400, 399,
642 0, 0, 450, 450, 0, 0, 381, 382, 383, 0,
643 0, 0, 68, 43, 44, 45, 46, 47, 48, 49,
644 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
645 60, 61, 62, 63, 64, 65, 66, 67, 158, 159,
646 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
647 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
648 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
649 99, 100, 101, 102, 108, 106, 107, 105, 103, 104,
650 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
651 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
652 129, 130, 131, 132, 160, 133, 134, 135, 136, 137,
653 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
654 148, 149, 150, 151, 152, 156, 153, 154, 155, 157,
655 0, 332, 302, 297, 43, 52, 57, 58, 62, 106,
656 107, 105, 103, 104, 124, 126, 127, 128, 129, 130,
657 131, 160, 135, 136, 137, 138, 139, 140, 141, 142,
658 143, 144, 145, 146, 147, 148, 149, 150, 334, 305,
659 333, 298, 313, 314, 299, 301, 342, 343, 0, 0,
660 22, 23, 20, 21, 0, 0, 345, 303, 344, 381,
661 499, 382, 498, 361, 358, 366, 0, 0, 0, 0,
662 0, 0, 295, 0, 0, 426, 0, 0, 0, 0,
663 428, 526, 525, 524, 513, 461, 517, 510, 520, 522,
664 407, 403, 409, 410, 405, 414, 0, 415, 387, 517,
665 455, 0, 0, 452, 453, 456, 0, 476, 502, 474,
666 0, 625, 0, 0, 0, 619, 620, 0, 550, 553,
667 552, 554, 555, 0, 556, 429, 423, 424, 0, 421,
668 419, 0, 324, 325, 322, 335, 496, 495, 0, 0,
669 491, 0, 0, 340, 337, 347, 2, 3, 4, 5,
670 6, 7, 8, 9, 10, 11, 13, 12, 14, 15,
671 16, 17, 18, 19, 0, 0, 0, 0, 0, 0,
672 464, 463, 465, 462, 0, 427, 186, 161, 162, 163,
673 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
674 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
675 184, 185, 274, 275, 187, 188, 189, 190, 191, 192,
676 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
677 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
678 213, 214, 215, 216, 217, 218, 224, 222, 223, 221,
679 219, 220, 225, 226, 227, 228, 229, 230, 231, 232,
680 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
681 243, 244, 245, 246, 247, 248, 276, 249, 250, 251,
682 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
683 262, 263, 264, 265, 266, 267, 268, 272, 269, 270,
684 271, 273, 433, 434, 0, 431, 0, 0, 359, 416,
685 487, 485, 484, 486, 515, 0, 516, 514, 0, 488,
686 0, 478, 489, 0, 0, 518, 460, 411, 0, 457,
687 450, 510, 0, 0, 510, 0, 0, 503, 0, 0,
688 0, 602, 0, 0, 601, 42, 0, 0, 0, 0,
689 622, 0, 0, 596, 527, 551, 0, 0, 326, 420,
690 517, 0, 492, 494, 336, 0, 349, 0, 348, 0,
691 338, 0, 0, 504, 369, 362, 370, 0, 371, 508,
692 508, 368, 367, 487, 356, 357, 0, 352, 354, 353,
693 430, 432, 528, 546, 547, 548, 549, 545, 0, 0,
694 532, 625, 537, 539, 540, 613, 24, 0, 0, 482,
695 512, 0, 0, 511, 517, 0, 418, 517, 0, 441,
696 0, 454, 439, 0, 477, 475, 473, 0, 557, 625,
697 600, 0, 536, 625, 0, 621, 0, 597, 594, 618,
698 425, 327, 330, 0, 328, 493, 490, 341, 346, 0,
699 0, 0, 363, 0, 469, 466, 504, 0, 0, 351,
700 0, 0, 0, 534, 0, 480, 0, 481, 0, 450,
701 447, 0, 510, 0, 510, 510, 487, 0, 31, 30,
702 563, 568, 564, 566, 567, 41, 0, 603, 614, 0,
703 0, 623, 613, 599, 0, 332, 0, 350, 339, 0,
704 505, 0, 0, 0, 469, 373, 372, 529, 0, 533,
705 625, 0, 479, 0, 0, 0, 448, 445, 0, 442,
706 440, 0, 565, 588, 574, 597, 589, 0, 0, 625,
707 569, 625, 0, 0, 624, 0, 323, 329, 331, 0,
708 0, 0, 504, 470, 467, 0, 530, 0, 535, 483,
709 0, 0, 510, 0, 625, 0, 584, 0, 616, 615,
710 604, 558, 0, 509, 0, 0, 471, 0, 468, 0,
711 450, 0, 446, 0, 0, 0, 0, 0, 605, 625,
712 612, 595, 0, 0, 0, 504, 0, 0, 450, 0,
713 590, 0, 488, 586, 561, 559, 585, 0, 573, 617,
714 0, 0, 472, 0, 0, 0, 0, 0, 591, 592,
715 570, 0, 560, 0, 506, 0, 0, 510, 625, 0,
716 625, 587, 0, 531, 450, 443, 0, 571, 593, 507,
717 0, 590, 510, 0, 444, 0, 572
720 /* YYPGOTO[NTERM-NUM]. */
721 static const short int yypgoto
[] =
723 -717, -334, -81, -2, -58, -717, -717, -717, 507, -717,
724 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
725 -717, -717, -84, -717, -284, -717, -717, -717, -276, -717,
726 -717, 370, -141, 35, -135, -174, -22, -14, -717, -717,
727 -717, 502, -717, -717, 361, -717, -717, -717, -717, 382,
728 -261, -717, -717, -177, -717, -121, -717, -63, 520, 37,
729 3, 45, -717, -717, -717, -717, -179, -717, -88, -10,
730 -32, -717, -717, 166, -350, -717, -257, -717, 7, -717,
731 -89, -359, -717, -79, -717, 101, -717, -440, -438, 214,
732 -717, -708, -83, -374, -717, -367, -27, -717, 383, -717,
733 -717, 529, -717, -209, -670, -716, -717, -717, 535, -717,
734 169, -384, -717, -355, -686, 148, -208, -717, -717, -691,
735 -717, -717, -319, -352, -717, -717, -717, -245, -717, -396,
736 -407, -400, -717, -717, -717, -717, -717, -717, -155, -20,
740 /* YYDEFGOTO[NTERM-NUM]. */
741 static const short int yydefgoto
[] =
743 -1, 712, 618, 163, 348, 602, 26, 27, 28, 29,
744 30, 85, 86, 87, 88, 354, 89, 90, 91, 312,
745 743, 744, 349, 350, 367, 667, 668, 31, 686, 687,
746 32, 95, 673, 674, 675, 33, 34, 35, 36, 37,
747 38, 39, 40, 41, 176, 401, 404, 179, 42, 181,
748 688, 43, 191, 793, 44, 603, 604, 605, 45, 46,
749 47, 98, 410, 49, 411, 50, 412, 413, 414, 51,
750 619, 52, 53, 481, 482, 677, 803, 843, 100, 418,
751 419, 641, 621, 622, 661, 450, 55, 101, 102, 142,
752 638, 754, 377, 395, 623, 166, 438, 168, 169, 393,
753 56, 57, 699, 700, 642, 701, 147, 702, 703, 704,
754 427, 428, 429, 893, 894, 895, 782, 783, 784, 138,
755 877, 896, 827, 907, 908, 430, 652, 794, 431, 909,
756 644, 139, 832, 859, 432, 433, 434, 649, 650, 646,
760 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
761 positive, shift that token. If negative, reduce the rule whose
762 number is the opposite. If YYTABLE_NINF, syntax error. */
763 static const short int yytable
[] =
765 67, 165, 154, 351, 416, 99, 167, 54, 409, 409,
766 365, 164, 368, 436, 137, 140, 141, 653, 97, 378,
767 170, 645, 311, 626, 645, 643, 442, 478, 479, 624,
768 385, 763, 355, 475, 54, 620, 785, 679, 390, 680,
769 786, 781, 629, 655, 807, 48, 810, 66, 804, 443,
770 96, 352, 149, 162, 379, 48, 391, 380, 151, 186,
771 187, 188, 159, 58, 732, 59, 48, 153, 435, 48,
772 48, 160, 48, -387, 656, 451, 800, -387, 310, 402,
773 654, 454, 403, 480, 99, 180, 801, 826, 477, 366,
774 369, 371, 846, 692, 659, 785, 182, 97, 375, -386,
775 830, 716, 189, -24, 869, 11, 446, 447, 475, 764,
776 48, -449, 448, 190, 392, -438, -458, 475, -458, 183,
777 475, 105, 880, 143, 449, 689, 144, 184, 398, 373,
778 145, -387, 146, 185, 866, 420, 421, 422, 423, 424,
779 763, 425, 426, 735, 353, 628, 736, 99, 420, 421,
780 422, 423, 424, 313, 425, 426, 374, -386, 437, 856,
781 97, -449, -508, 64, -501, 397, 376, -508, 177, 4,
782 5, 666, 415, 415, -381, -501, 376, 902, 171, 172,
783 173, 381, 417, 174, 874, 785, 382, 383, 384, 897,
784 669, 670, 96, 66, 387, 48, 175, 386, 826, 923,
785 396, 48, 394, 171, 172, 173, 785, -355, 174, -355,
786 -355, 912, -382, -501, 131, 132, 133, 134, 135, 136,
787 785, 175, 655, -487, 897, -487, -487, 444, 400, 365,
788 406, 368, 679, 455, 680, -387, -387, 679, 407, 680,
789 1, 2, 3, 4, 5, 6, 7, 8, 926, 631,
790 632, 634, 635, 9, 823, 824, 708, 719, 60, 709,
791 722, 143, 485, 439, 144, 11, 761, 762, 145, 825,
792 146, 693, 694, 695, 696, 697, 476, 724, 365, 477,
793 368, 769, 770, 607, 365, 484, 368, 143, 772, 773,
794 144, 698, 445, 745, 145, 608, 146, 693, 694, 695,
795 696, 697, 162, 676, 834, 657, 370, 372, 366, 420,
796 421, 422, 423, 424, 609, 425, 426, 627, 440, 630,
797 61, 62, 63, 64, 633, 636, 659, 22, 637, 645,
798 657, 658, 475, 787, 663, 475, 475, 121, 122, 123,
799 124, 125, 126, 127, 128, 129, 671, 768, 713, 717,
800 771, 728, 766, 767, 730, 720, 726, 366, 727, 150,
801 731, 723, 453, 366, 729, 732, 733, 734, 780, 625,
802 737, 738, 746, 751, 365, 747, 368, 165, 748, 753,
803 749, 759, 167, 811, 760, 774, 775, 164, 639, 795,
804 647, 796, 651, 365, 365, 368, 368, 799, 817, 802,
805 819, 820, 808, 828, 821, 812, 829, 805, 806, 831,
806 -598, 818, 1, 2, 3, 4, 5, 6, 7, 8,
807 835, 648, 839, 840, 841, 9, 844, 780, 862, 850,
808 60, 645, 851, 852, 660, 858, 397, 11, 854, 864,
809 860, 707, 861, 863, 865, 755, 681, 682, 867, 868,
810 665, 718, 689, 366, 849, 881, 409, 870, 876, 409,
811 871, 873, 882, 475, 475, 797, 798, 99, 878, 855,
812 879, 883, 366, 366, 884, 886, 823, 824, 872, 645,
813 97, 888, 889, 899, 678, 890, 900, 898, 731, 901,
814 645, 903, 92, 93, 18, 64, 904, 915, 676, 911,
815 913, 914, 916, 676, 917, 1, 2, 3, 4, 5,
816 6, 7, 8, 918, 920, 919, 891, 780, 9, 922,
817 645, 924, 931, 60, 928, 927, 929, 388, 932, 672,
818 11, 645, 935, 936, 161, 848, 756, 752, 780, 405,
819 389, 691, 178, 925, 158, 721, 483, 845, 725, 662,
820 152, 399, 780, 809, 148, 606, 921, 790, 934, 121,
821 122, 123, 124, 125, 126, 127, 128, 129, 640, 822,
822 906, 1, 2, 3, 4, 5, 6, 7, 8, 933,
823 853, 791, 0, 0, 9, 61, 62, 63, 64, 60,
824 815, 0, 0, 446, 447, 409, 757, 758, 0, 0,
825 0, 1, 2, 3, 4, 5, 6, 7, 8, 0,
826 0, 449, 0, 0, 9, 0, 0, 0, 0, 60,
827 415, 0, 715, 415, 65, 740, 0, 0, 0, 0,
828 0, 0, 0, 625, 0, 417, 0, 0, 0, 0,
829 0, 0, 0, 0, 165, 0, 0, 0, 0, 167,
830 0, 61, 62, 63, 164, 0, 742, 0, 0, 0,
831 0, 0, 99, 0, 0, 0, 0, 99, 365, 365,
832 368, 368, 0, 0, 0, 97, 375, 0, 0, 678,
833 97, 61, 62, 63, 678, 164, 0, 625, 0, 0,
834 625, 887, 0, 0, 0, 0, 409, 0, 0, 788,
835 0, 0, 437, 0, 0, 437, 0, 0, 0, 905,
836 0, 836, 0, 789, 409, 0, 0, 1, 2, 3,
837 4, 5, 6, 7, 8, 0, 0, 0, 0, 0,
838 9, 0, 0, 0, 648, 10, 0, 0, 0, 0,
839 0, 0, 11, 12, 13, 930, 0, 366, 366, 0,
840 409, 0, 0, 0, 14, 0, 0, 833, 0, 415,
841 0, 0, 0, 0, 0, 0, 814, 0, 0, 715,
842 842, 68, 0, 681, 682, 0, 0, 0, 0, 0,
843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
844 847, 0, 0, 437, 838, 0, 15, 16, 17, 18,
845 19, 20, 21, 0, 22, 0, 0, 69, 70, 71,
846 72, 73, 74, 75, 76, 77, 78, 79, 80, 0,
847 81, 82, 83, 84, 0, 0, 0, 0, 0, 23,
848 0, 0, 0, 0, 24, 885, 25, 0, 0, 0,
849 0, 0, 0, 0, 892, 0, 0, 0, 0, 0,
850 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
851 415, 0, 0, 0, 0, 0, 0, 0, 0, 0,
852 0, 0, 0, 0, 0, 0, 0, 0, 415, 892,
853 0, 0, 0, 0, 192, 0, 0, 193, 194, 195,
854 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
855 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
856 216, 217, 218, 219, 415, 220, 221, 222, 223, 224,
857 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
858 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
859 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
860 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
861 265, 266, 267, 268, 0, 269, 0, 270, 271, 272,
862 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
863 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
864 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
865 303, 0, 0, 304, 0, 305, 306, 307, 308, 309,
866 192, 0, 0, 314, 194, 195, 196, 197, 198, 199,
867 200, 201, 315, 203, 204, 205, 206, 316, 317, 209,
868 210, 211, 318, 213, 214, 215, 216, 217, 218, 219,
869 0, 220, 221, 222, 223, 224, 225, 226, 227, 228,
870 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
871 239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
872 249, 250, 251, 252, 253, 254, 319, 320, 321, 322,
873 323, 260, 261, 262, 263, 264, 265, 266, 267, 268,
874 0, 269, 0, 270, 271, 272, 273, 274, 324, 276,
875 325, 326, 327, 328, 329, 330, 283, 331, 285, 286,
876 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
877 342, 343, 344, 345, 346, 347, 303, 0, 0, 304,
878 0, 305, 306, 307, 308, 309, 486, 0, 0, 487,
879 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
880 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
881 508, 509, 510, 511, 512, 513, 0, 514, 515, 516,
882 517, 518, 384, 690, 519, 520, 521, 522, 523, 524,
883 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
884 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
885 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
886 555, 556, 557, 558, 559, 560, 0, 561, 0, 562,
887 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
888 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
889 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
890 593, 594, 595, 0, 0, 596, 0, 597, 598, 599,
891 600, 601, 486, 0, 0, 487, 488, 489, 490, 491,
892 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
893 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
894 512, 513, 0, 514, 515, 516, 517, 518, 384, 0,
895 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
896 529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
897 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
898 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
899 559, 560, 0, 561, 0, 562, 563, 564, 565, 566,
900 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
901 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
902 587, 588, 589, 590, 591, 592, 593, 594, 595, 103,
903 0, 596, 0, 597, 598, 599, 600, 601, 104, 0,
904 0, 0, 0, 105, 106, 610, 0, 0, 107, 611,
905 0, 612, 0, 613, 358, 614, 0, 0, 615, 0,
906 0, 0, 0, 1, 2, 3, 4, 5, 6, 7,
907 8, 0, 0, 360, 361, 162, 9, 0, 0, 0,
908 0, 60, 0, 0, 0, 0, 362, 363, 11, 0,
909 0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
910 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
911 0, 0, 0, 616, 113, 0, 114, 115, 116, 117,
912 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
913 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
914 135, 136, 0, 92, 93, 18, 64, 0, 0, 0,
915 617, 1, 2, 3, 4, 5, 6, 7, 8, 0,
916 0, 0, 0, 0, 9, 0, 0, 0, 0, 60,
917 0, 0, -33, 0, 0, 0, 11, 0, 0, 0,
918 94, -33, 0, 0, 0, 0, -33, -33, 0, 0,
919 0, -33, 0, 0, -33, -33, -33, -33, 0, 0,
920 0, -33, 0, 0, 0, 0, 0, 0, 0, 0,
921 0, 0, 0, 0, 0, 0, -33, -33, 0, 0,
922 0, 0, 0, 0, 0, 0, 0, 0, 0, -33,
923 -33, 92, 93, 18, 64, -33, -33, -33, -33, -33,
924 0, 0, 0, 0, 0, 0, 0, -33, 0, 0,
925 0, 0, 0, 0, 0, 0, 0, -33, 0, -33,
926 -33, -33, -33, -33, -33, 0, -33, 0, 672, -33,
927 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
928 -33, -33, -33, -33, -33, -34, 0, -33, 0, 0,
929 0, 0, 0, 0, -34, 0, 0, 0, 0, -34,
930 -34, 0, 0, 0, -34, 0, 0, -34, -34, -34,
931 -34, 0, 0, 0, -34, 0, 0, 0, 0, 0,
932 0, 1, 2, 3, 4, 5, 6, 7, 8, -34,
933 -34, 0, 0, 0, 9, 0, 0, 0, 0, 60,
934 0, 0, -34, -34, 0, 0, 11, 0, -34, -34,
935 -34, -34, -34, 0, 0, 0, 0, 0, 0, 0,
936 -34, 0, 0, 0, 0, 0, 0, 0, 0, 0,
937 -34, 0, -34, -34, -34, -34, -34, -34, 0, -34,
938 0, 0, -34, -34, -34, -34, -34, -34, -34, -34,
939 -34, -34, -34, -34, -34, -34, -34, -34, -57, 0,
940 -34, 61, 62, 63, 64, 0, 0, -57, 0, 0,
941 0, 0, -57, -57, 0, 0, 0, -57, 0, 0,
942 -57, -57, -57, -57, 0, 0, 0, -57, 0, 0,
943 0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
944 7, 8, -57, -57, 0, 0, 0, 9, 0, 0,
945 0, 0, 60, 0, 0, -57, -57, 0, 0, 11,
946 0, -57, -57, -57, -57, -57, 0, 0, 0, 0,
947 0, 0, 0, -57, 0, 0, 0, 0, 0, 0,
948 0, 0, 0, -57, 0, -57, -57, -57, -57, -57,
949 -57, 0, -57, 0, 0, -57, -57, -57, -57, -57,
950 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
951 -57, -58, 0, -613, 92, 93, 18, 64, 0, 0,
952 -58, 0, 0, 0, 0, -58, -58, 0, 0, 0,
953 -58, 0, 0, -58, -58, -58, -58, 0, 0, 0,
954 -58, 0, 0, 0, 0, 0, 0, 1, 2, 3,
955 4, 5, 6, 7, 8, -58, -58, 0, 0, 0,
956 9, 0, 0, 0, 0, 60, 0, 0, -58, -58,
957 0, 0, 11, 0, -58, -58, -58, -58, -58, 0,
958 0, 0, 0, 0, 0, 0, -58, 0, 0, 0,
959 0, 0, 0, 0, 0, 0, -58, 0, -58, -58,
960 -58, -58, -58, -58, 0, -58, 0, 0, -58, -58,
961 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58,
962 -58, -58, -58, -58, -24, 0, -574, 61, 62, 63,
963 64, 0, 0, -24, 0, 0, 0, 0, -24, -24,
964 0, 0, 0, -24, 0, 0, -24, -24, -24, -24,
965 0, 0, 0, -24, 0, 0, 0, 0, 0, 0,
966 1, 2, 3, 4, 5, 6, 7, 8, -24, -24,
967 0, 0, 0, 408, 0, 0, 0, 0, 60, 0,
968 0, -24, -24, 0, 0, 11, 0, -24, -24, -24,
969 -24, -24, 0, 0, 0, 0, 0, 0, 0, -24,
970 0, 0, 0, 0, 0, 0, 0, 0, 0, -24,
971 0, -24, -24, -24, -24, -24, -24, 0, -24, 0,
972 0, -24, -24, -24, -24, -24, -24, -24, -24, -24,
973 -24, -24, -24, -24, -24, -24, -24, -39, 0, -24,
974 61, 62, 63, 64, 0, 0, -39, 0, 0, 0,
975 0, -39, -39, 0, 0, 0, -39, 0, 0, -39,
976 -39, -39, -39, 0, 0, 0, -39, 0, 0, 0,
977 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
978 0, -39, -39, 0, 0, 0, 0, 0, 0, 0,
979 0, 0, 0, 0, -39, -39, 0, 0, 0, 0,
980 -39, -39, -39, -39, -39, 0, 0, 0, 0, 0,
981 0, 0, -39, 0, 0, 0, 0, 0, 0, 0,
982 0, 0, -39, 0, -39, -39, -39, -39, -39, -39,
983 0, -39, 0, 0, -39, -39, -39, -39, -39, -39,
984 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
985 -38, 0, -39, 0, 0, 0, 0, 0, 0, -38,
986 0, 0, 0, 0, -38, -38, 0, 0, 0, -38,
987 0, 0, -38, -38, -38, -38, 0, 0, 0, -38,
988 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
989 0, 0, 0, 0, -38, -38, 0, 0, 0, 0,
990 0, 0, 0, 0, 0, 0, 0, -38, -38, 0,
991 0, 0, 0, -38, -38, -38, -38, -38, 0, 0,
992 0, 0, 0, 0, 0, -38, 0, 0, 0, 0,
993 0, 0, 0, 0, 0, -38, 0, -38, -38, -38,
994 -38, -38, -38, 0, -38, 0, 0, -38, -38, -38,
995 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38,
996 -38, -38, -38, -37, 0, -38, 0, 0, 0, 0,
997 0, 0, -37, 0, 0, 0, 0, -37, -37, 0,
998 0, 0, -37, 0, 0, -37, -37, -37, -37, 0,
999 0, 0, -37, 0, 0, 0, 0, 0, 0, 0,
1000 0, 0, 0, 0, 0, 0, 0, -37, -37, 0,
1001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1002 -37, -37, 0, 0, 0, 0, -37, -37, -37, -37,
1003 -37, 0, 0, 0, 0, 0, 0, 0, -37, 0,
1004 0, 0, 0, 0, 0, 0, 0, 0, -37, 0,
1005 -37, -37, -37, -37, -37, -37, 0, -37, 0, 0,
1006 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
1007 -37, -37, -37, -37, -37, -37, -35, 0, -37, 0,
1008 0, 0, 0, 0, 0, -35, 0, 0, 0, 0,
1009 -35, -35, 0, 0, 0, -35, 0, 0, -35, -35,
1010 -35, -35, 0, 0, 0, -35, 0, 0, 0, 0,
1011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1012 -35, -35, 0, 0, 0, 0, 0, 0, 0, 0,
1013 0, 0, 0, -35, -35, 0, 0, 0, 0, -35,
1014 -35, -35, -35, -35, 0, 0, 0, 0, 0, 0,
1015 0, -35, 0, 0, 0, 0, 0, 0, 0, 0,
1016 0, -35, 0, -35, -35, -35, -35, -35, -35, 0,
1017 -35, 0, 0, -35, -35, -35, -35, -35, -35, -35,
1018 -35, -35, -35, -35, -35, -35, -35, -35, -35, -36,
1019 0, -35, 0, 0, 0, 0, 0, 0, -36, 0,
1020 0, 0, 0, -36, -36, 0, 0, 0, -36, 0,
1021 0, -36, -36, -36, -36, 0, 0, 0, -36, 0,
1022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1023 0, 0, 0, -36, -36, 0, 0, 0, 0, 0,
1024 0, 0, 0, 0, 0, 0, -36, -36, 0, 0,
1025 0, 0, -36, -36, -36, -36, -36, 0, 0, 0,
1026 0, 0, 0, 0, -36, 0, 0, 0, 0, 0,
1027 0, 0, 0, 0, -36, 0, -36, -36, -36, -36,
1028 -36, -36, 0, -36, 0, 0, -36, -36, -36, -36,
1029 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
1030 -36, -36, -32, 0, -36, 0, 0, 0, 0, 0,
1031 0, -32, 0, 0, 0, 0, -32, -32, 0, 0,
1032 0, -32, 0, 0, -32, -32, -32, -32, 0, 0,
1033 0, -32, 0, 0, 0, 0, 0, 0, 0, 0,
1034 0, 0, 0, 0, 0, 0, -32, -32, 0, 0,
1035 0, 0, 0, 0, 0, 0, 0, 0, 0, -32,
1036 -32, 0, 0, 0, 0, -32, -32, -32, -32, -32,
1037 0, 0, 0, 0, 0, 0, 0, -32, 0, 0,
1038 0, 0, 0, 0, 0, 0, 0, -32, 0, -32,
1039 -32, -32, -32, -32, -32, 0, -32, 0, 0, -32,
1040 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32,
1041 -32, -32, -32, -32, -32, -31, 0, -32, 0, 0,
1042 0, 0, 0, 0, -31, 0, 0, 0, 0, -31,
1043 -31, 0, 0, 0, -31, 0, 0, -31, -31, -31,
1044 -31, 0, 0, 0, -31, 0, 0, 0, 0, 0,
1045 0, 0, 0, 0, 0, 0, 0, 0, 0, -31,
1046 -31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1047 0, 0, -31, -31, 0, 0, 0, 0, -31, -31,
1048 -31, -31, -31, 0, 0, 0, 0, 0, 0, 0,
1049 -31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1050 -31, 0, -31, -31, -31, -31, -31, -31, 0, -31,
1051 0, 0, -31, -31, -31, -31, -31, -31, -31, -31,
1052 -31, -31, -31, -31, -31, -31, -31, -31, -25, 0,
1053 -31, 0, 0, 0, 0, 0, 0, -25, 0, 0,
1054 0, 0, -25, -25, 0, 0, 0, -25, 0, 0,
1055 -25, -25, -25, -25, 0, 0, 0, -25, 0, 0,
1056 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1057 0, 0, -25, -25, 0, 0, 0, 0, 0, 0,
1058 0, 0, 0, 0, 0, -25, -25, 0, 0, 0,
1059 0, -25, -25, -25, -25, -25, 0, 0, 0, 0,
1060 0, 0, 0, -25, 0, 0, 0, 0, 0, 0,
1061 0, 0, 0, -25, 0, -25, -25, -25, -25, -25,
1062 -25, 0, -25, 0, 0, -25, -25, -25, -25, -25,
1063 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
1064 -25, -29, 0, -25, 0, 0, 0, 0, 0, 0,
1065 -29, 0, 0, 0, 0, -29, -29, 0, 0, 0,
1066 -29, 0, 0, -29, -29, -29, -29, 0, 0, 0,
1067 -29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1068 0, 0, 0, 0, 0, -29, -29, 0, 0, 0,
1069 0, 0, 0, 0, 0, 0, 0, 0, -29, -29,
1070 0, 0, 0, 0, -29, -29, -29, -29, -29, 0,
1071 0, 0, 0, 0, 0, 0, -29, 0, 0, 0,
1072 0, 0, 0, 0, 0, 0, -29, 0, -29, -29,
1073 -29, -29, -29, -29, 0, -29, 0, 0, -29, -29,
1074 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29,
1075 -29, -29, -29, -29, -28, 0, -29, 0, 0, 0,
1076 0, 0, 0, -28, 0, 0, 0, 0, -28, -28,
1077 0, 0, 0, -28, 0, 0, -28, -28, -28, -28,
1078 0, 0, 0, -28, 0, 0, 0, 0, 0, 0,
1079 0, 0, 0, 0, 0, 0, 0, 0, -28, -28,
1080 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1081 0, -28, -28, 0, 0, 0, 0, -28, -28, -28,
1082 -28, -28, 0, 0, 0, 0, 0, 0, 0, -28,
1083 0, 0, 0, 0, 0, 0, 0, 0, 0, -28,
1084 0, -28, -28, -28, -28, -28, -28, 0, -28, 0,
1085 0, -28, -28, -28, -28, -28, -28, -28, -28, -28,
1086 -28, -28, -28, -28, -28, -28, -28, -26, 0, -28,
1087 0, 0, 0, 0, 0, 0, -26, 0, 0, 0,
1088 0, -26, -26, 0, 0, 0, -26, 0, 0, -26,
1089 -26, -26, -26, 0, 0, 0, -26, 0, 0, 0,
1090 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1091 0, -26, -26, 0, 0, 0, 0, 0, 0, 0,
1092 0, 0, 0, 0, -26, -26, 0, 0, 0, 0,
1093 -26, -26, -26, -26, -26, 0, 0, 0, 0, 0,
1094 0, 0, -26, 0, 0, 0, 0, 0, 0, 0,
1095 0, 0, -26, 0, -26, -26, -26, -26, -26, -26,
1096 0, -26, 0, 0, -26, -26, -26, -26, -26, -26,
1097 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
1098 -27, 0, -26, 0, 0, 0, 0, 0, 0, -27,
1099 0, 0, 0, 0, -27, -27, 0, 0, 0, -27,
1100 0, 0, -27, -27, -27, -27, 0, 0, 0, -27,
1101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1102 0, 0, 0, 0, -27, -27, 0, 0, 0, 0,
1103 0, 0, 0, 0, 0, 0, 0, -27, -27, 0,
1104 0, 0, 0, -27, -27, -27, -27, -27, 0, 0,
1105 0, 0, 0, 0, 0, -27, 0, 0, 0, 0,
1106 0, 0, 0, 0, 0, -27, 0, -27, -27, -27,
1107 -27, -27, -27, 0, -27, 0, 0, -27, -27, -27,
1108 -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
1109 -27, -27, -27, -40, 0, -27, 0, 0, 0, 0,
1110 0, 0, -40, 0, 0, 0, 0, -40, -40, 0,
1111 0, 0, -40, 0, 0, -40, -40, -40, -40, 0,
1112 0, 0, -40, 0, 0, 0, 0, 0, 0, 0,
1113 0, 0, 0, 0, 0, 0, 0, -40, -40, 0,
1114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1115 -40, -40, 0, 0, 0, 0, -40, -40, -40, -40,
1116 -40, 0, 0, 0, 0, 0, 0, 0, -40, 0,
1117 0, 0, 0, 0, 0, 0, 0, 0, -40, 0,
1118 -40, -40, -40, -40, -40, -40, 0, -40, 0, 0,
1119 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40,
1120 -40, -40, -40, -40, -40, -40, -135, 0, -40, 0,
1121 0, 0, 0, 0, 0, -135, 0, 0, 0, 0,
1122 -135, -135, 0, 0, 0, -135, 0, 0, -135, -135,
1123 -135, -135, 0, 0, 0, -135, 0, 0, 0, 0,
1124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1125 -135, -135, 0, 0, 0, 0, 0, 0, 0, 0,
1126 0, 0, 0, -135, -135, 0, 0, 0, 0, -135,
1127 -135, -135, -135, -135, 0, 0, 0, 0, 0, 0,
1128 0, -135, 0, 0, 0, 0, 0, 0, 0, 0,
1129 0, -135, 0, -135, -135, -135, -135, -135, -135, 0,
1130 -135, 0, 0, -135, -135, -135, -135, -135, -135, -135,
1131 -135, -135, -135, -135, -135, -135, -135, -135, -135, -136,
1132 0, -582, 0, 0, 0, 0, 0, 0, -136, 0,
1133 0, 0, 0, -136, -136, 0, 0, 0, -136, 0,
1134 0, -136, -136, -136, -136, 0, 0, 0, -136, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1136 0, 0, 0, -136, -136, 0, 0, 0, 0, 0,
1137 0, 0, 0, 0, 0, 0, -136, -136, 0, 0,
1138 0, 0, -136, -136, -136, -136, -136, 0, 0, 0,
1139 0, 0, 0, 0, -136, 0, 0, 0, 0, 0,
1140 0, 0, 0, 0, -136, 0, -136, -136, -136, -136,
1141 -136, -136, 0, -136, 0, 0, -136, -136, -136, -136,
1142 -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
1143 -136, -136, -137, 0, -581, 0, 0, 0, 0, 0,
1144 0, -137, 0, 0, 0, 0, -137, -137, 0, 0,
1145 0, -137, 0, 0, -137, -137, -137, -137, 0, 0,
1146 0, -137, 0, 0, 0, 0, 0, 0, 0, 0,
1147 0, 0, 0, 0, 0, 0, -137, -137, 0, 0,
1148 0, 0, 0, 0, 0, 0, 0, 0, 0, -137,
1149 -137, 0, 0, 0, 0, -137, -137, -137, -137, -137,
1150 0, 0, 0, 0, 0, 0, 0, -137, 0, 0,
1151 0, 0, 0, 0, 0, 0, 0, -137, 0, -137,
1152 -137, -137, -137, -137, -137, 0, -137, 0, 0, -137,
1153 -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
1154 -137, -137, -137, -137, -137, -138, 0, -579, 0, 0,
1155 0, 0, 0, 0, -138, 0, 0, 0, 0, -138,
1156 -138, 0, 0, 0, -138, 0, 0, -138, -138, -138,
1157 -138, 0, 0, 0, -138, 0, 0, 0, 0, 0,
1158 0, 0, 0, 0, 0, 0, 0, 0, 0, -138,
1159 -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1160 0, 0, -138, -138, 0, 0, 0, 0, -138, -138,
1161 -138, -138, -138, 0, 0, 0, 0, 0, 0, 0,
1162 -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1163 -138, 0, -138, -138, -138, -138, -138, -138, 0, -138,
1164 0, 0, -138, -138, -138, -138, -138, -138, -138, -138,
1165 -138, -138, -138, -138, -138, -138, -138, -138, -139, 0,
1166 -577, 0, 0, 0, 0, 0, 0, -139, 0, 0,
1167 0, 0, -139, -139, 0, 0, 0, -139, 0, 0,
1168 -139, -139, -139, -139, 0, 0, 0, -139, 0, 0,
1169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1170 0, 0, -139, -139, 0, 0, 0, 0, 0, 0,
1171 0, 0, 0, 0, 0, -139, -139, 0, 0, 0,
1172 0, -139, -139, -139, -139, -139, 0, 0, 0, 0,
1173 0, 0, 0, -139, 0, 0, 0, 0, 0, 0,
1174 0, 0, 0, -139, 0, -139, -139, -139, -139, -139,
1175 -139, 0, -139, 0, 0, -139, -139, -139, -139, -139,
1176 -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
1177 -139, -140, 0, -578, 0, 0, 0, 0, 0, 0,
1178 -140, 0, 0, 0, 0, -140, -140, 0, 0, 0,
1179 -140, 0, 0, -140, -140, -140, -140, 0, 0, 0,
1180 -140, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1181 0, 0, 0, 0, 0, -140, -140, 0, 0, 0,
1182 0, 0, 0, 0, 0, 0, 0, 0, -140, -140,
1183 0, 0, 0, 0, -140, -140, -140, -140, -140, 0,
1184 0, 0, 0, 0, 0, 0, -140, 0, 0, 0,
1185 0, 0, 0, 0, 0, 0, -140, 0, -140, -140,
1186 -140, -140, -140, -140, 0, -140, 0, 0, -140, -140,
1187 -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
1188 -140, -140, -140, -140, -141, 0, -580, 0, 0, 0,
1189 0, 0, 0, -141, 0, 0, 0, 0, -141, -141,
1190 0, 0, 0, -141, 0, 0, -141, -141, -141, -141,
1191 0, 0, 0, -141, 0, 0, 0, 0, 0, 0,
1192 0, 0, 0, 0, 0, 0, 0, 0, -141, -141,
1193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1194 0, -141, -141, 0, 0, 0, 0, -141, -141, -141,
1195 -141, -141, 0, 0, 0, 0, 0, 0, 0, -141,
1196 0, 0, 0, 0, 0, 0, 0, 0, 0, -141,
1197 0, -141, -141, -141, -141, -141, -141, 0, -141, 0,
1198 0, -141, -141, -141, -141, -141, -141, -141, -141, -141,
1199 -141, -141, -141, -141, -141, -141, -141, -142, 0, -576,
1200 0, 0, 0, 0, 0, 0, -142, 0, 0, 0,
1201 0, -142, -142, 0, 0, 0, -142, 0, 0, -142,
1202 -142, -142, -142, 0, 0, 0, -142, 0, 0, 0,
1203 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1204 0, -142, -142, 0, 0, 0, 0, 0, 0, 0,
1205 0, 0, 0, 0, -142, -142, 0, 0, 0, 0,
1206 -142, -142, -142, -142, -142, 0, 0, 0, 0, 0,
1207 0, 0, -142, 0, 0, 0, 0, 0, 0, 0,
1208 0, 0, -142, 0, -142, -142, -142, -142, -142, -142,
1209 0, -142, 0, 0, -142, -142, -142, -142, -142, -142,
1210 -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
1211 -143, 0, -575, 0, 0, 0, 0, 0, 0, -143,
1212 0, 0, 0, 0, -143, -143, 0, 0, 0, -143,
1213 0, 0, -143, -143, -143, -143, 0, 0, 0, -143,
1214 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1215 0, 0, 0, 0, -143, -143, 0, 0, 0, 0,
1216 0, 0, 0, 0, 0, 0, 0, -143, -143, 0,
1217 0, 0, 0, -143, -143, -143, -143, -143, 0, 0,
1218 0, 0, 0, 0, 0, -143, 0, 0, 0, 0,
1219 0, 0, 0, 0, 0, -143, 0, -143, -143, -143,
1220 -143, -143, -143, 0, -143, 0, 0, -143, -143, -143,
1221 -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
1222 -143, -143, -143, -30, 0, -583, 0, 0, 0, 0,
1223 0, 0, -30, 0, 0, 0, 0, -30, -30, 0,
1224 0, 0, -30, 0, 0, -30, -30, -30, -30, 0,
1225 0, 0, -30, 0, 0, 0, 0, 0, 0, 0,
1226 0, 0, 0, 0, 0, 0, 0, -30, -30, 0,
1227 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1228 -30, -30, 0, 0, 0, 0, -30, -30, -30, -30,
1229 -30, 0, 0, 0, 0, 0, 0, 0, -30, 0,
1230 0, 0, 0, 0, 0, 0, 0, 0, -30, 0,
1231 -30, -30, -30, -30, -30, -30, 0, -30, 0, 0,
1232 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
1233 -30, -30, -30, -30, -30, -30, -145, 0, -30, 0,
1234 0, 0, 0, 0, 0, -145, 0, 0, 0, 0,
1235 -145, -145, 0, 0, 0, -145, 0, 0, -145, -145,
1236 -145, -145, 0, 0, 0, -145, 0, 0, 0, 0,
1237 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1238 -145, -145, 0, 0, 0, 0, 0, 0, 0, 0,
1239 0, 0, 0, -145, -145, 0, 0, 0, 0, -145,
1240 -145, -145, -145, -145, 0, 0, 0, 0, 0, 0,
1241 0, -145, 0, 0, 0, 0, 0, 0, 0, 0,
1242 0, -145, 0, -145, -145, -145, -145, -145, -145, 0,
1243 -145, 0, 0, -145, -145, -145, -145, -145, -145, -145,
1244 -145, -145, -145, -145, -145, -145, -145, -145, -145, -146,
1245 0, -611, 0, 0, 0, 0, 0, 0, -146, 0,
1246 0, 0, 0, -146, -146, 0, 0, 0, -146, 0,
1247 0, -146, -146, -146, -146, 0, 0, 0, -146, 0,
1248 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1249 0, 0, 0, -146, -146, 0, 0, 0, 0, 0,
1250 0, 0, 0, 0, 0, 0, -146, -146, 0, 0,
1251 0, 0, -146, -146, -146, -146, -146, 0, 0, 0,
1252 0, 0, 0, 0, -146, 0, 0, 0, 0, 0,
1253 0, 0, 0, 0, -146, 0, -146, -146, -146, -146,
1254 -146, -146, 0, -146, 0, 0, -146, -146, -146, -146,
1255 -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
1256 -146, -146, -147, 0, -609, 0, 0, 0, 0, 0,
1257 0, -147, 0, 0, 0, 0, -147, -147, 0, 0,
1258 0, -147, 0, 0, -147, -147, -147, -147, 0, 0,
1259 0, -147, 0, 0, 0, 0, 0, 0, 0, 0,
1260 0, 0, 0, 0, 0, 0, -147, -147, 0, 0,
1261 0, 0, 0, 0, 0, 0, 0, 0, 0, -147,
1262 -147, 0, 0, 0, 0, -147, -147, -147, -147, -147,
1263 0, 0, 0, 0, 0, 0, 0, -147, 0, 0,
1264 0, 0, 0, 0, 0, 0, 0, -147, 0, -147,
1265 -147, -147, -147, -147, -147, 0, -147, 0, 0, -147,
1266 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
1267 -147, -147, -147, -147, -147, -148, 0, -608, 0, 0,
1268 0, 0, 0, 0, -148, 0, 0, 0, 0, -148,
1269 -148, 0, 0, 0, -148, 0, 0, -148, -148, -148,
1270 -148, 0, 0, 0, -148, 0, 0, 0, 0, 0,
1271 0, 0, 0, 0, 0, 0, 0, 0, 0, -148,
1272 -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1273 0, 0, -148, -148, 0, 0, 0, 0, -148, -148,
1274 -148, -148, -148, 0, 0, 0, 0, 0, 0, 0,
1275 -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1276 -148, 0, -148, -148, -148, -148, -148, -148, 0, -148,
1277 0, 0, -148, -148, -148, -148, -148, -148, -148, -148,
1278 -148, -148, -148, -148, -148, -148, -148, -148, -149, 0,
1279 -610, 0, 0, 0, 0, 0, 0, -149, 0, 0,
1280 0, 0, -149, -149, 0, 0, 0, -149, 0, 0,
1281 -149, -149, -149, -149, 0, 0, 0, -149, 0, 0,
1282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1283 0, 0, -149, -149, 0, 0, 0, 0, 0, 0,
1284 0, 0, 0, 0, 0, -149, -149, 0, 0, 0,
1285 0, -149, -149, -149, -149, -149, 0, 0, 0, 0,
1286 0, 0, 0, -149, 0, 0, 0, 0, 0, 0,
1287 0, 0, 0, -149, 0, -149, -149, -149, -149, -149,
1288 -149, 0, -149, 0, 0, -149, -149, -149, -149, -149,
1289 -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
1290 -149, -150, 0, -607, 0, 0, 0, 0, 0, 0,
1291 -150, 0, 0, 0, 0, -150, -150, 0, 0, 0,
1292 -150, 0, 0, -150, -150, -150, -150, 0, 0, 0,
1293 -150, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1294 0, 0, 0, 0, 0, -150, -150, 0, 0, 0,
1295 0, 0, 0, 0, 0, 0, 0, 0, -150, -150,
1296 0, 0, 0, 0, -150, -150, -150, -150, -150, 0,
1297 0, 0, 0, 0, 0, 0, -150, 0, 0, 0,
1298 0, 0, 0, 0, 0, 0, -150, 0, -150, -150,
1299 -150, -150, -150, -150, 0, -150, 0, 0, -150, -150,
1300 -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
1301 -150, -150, -150, -150, 103, 0, -606, 0, 0, 0,
1302 0, 0, 0, 104, 0, 0, 0, 0, 105, 106,
1303 0, 0, 0, 107, 0, 0, 356, 440, 357, 358,
1304 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
1305 0, 0, 0, 0, 0, 0, 0, 0, 360, 361,
1306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1307 0, 362, 363, 0, 0, 0, 0, 108, 109, 110,
1308 111, 112, 0, 0, 0, 0, 0, 0, 0, 364,
1309 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
1310 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1311 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1312 130, 131, 132, 133, 134, 135, 136, -574, 0, 441,
1313 0, 0, 0, 0, 0, 0, -574, 0, 0, 0,
1314 0, -574, -574, 0, 0, 0, -574, 0, 0, 0,
1315 0, 0, 0, -574, -574, -574, -574, -574, -574, -574,
1316 -574, -574, -574, -574, -574, 0, -574, -574, -574, -574,
1317 -574, -574, -574, -574, -574, -574, -574, -574, -574, -574,
1318 -574, -574, -574, -574, 0, 0, 0, 0, 0, -574,
1319 -574, -574, -574, -574, -574, 1, 2, 3, 4, 5,
1320 6, 7, 8, 0, 0, 0, 0, 0, 9, 0,
1321 0, -574, -574, 156, -574, -574, -574, -574, -574, -574,
1322 11, -574, 0, 0, -574, -574, -574, -574, -574, -574,
1323 -574, -574, -574, -574, -574, -574, -574, -574, -574, -574,
1324 103, 1, 2, 3, 4, 5, 6, 7, 8, 104,
1325 0, 0, 0, 0, 705, 106, 610, 0, 0, 706,
1326 611, 0, 612, 0, 613, 358, 11, 0, 0, 615,
1327 0, 0, 0, 0, 157, 61, 62, 63, 64, 0,
1328 0, 0, 0, 0, 360, 361, 162, 0, 0, 0,
1329 0, 0, 0, 0, 0, 0, 0, 362, 363, 0,
1330 0, 0, 0, 108, 109, 110, 111, 112, 0, 0,
1331 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1332 0, 61, 62, 63, 64, 113, 0, 114, 115, 116,
1333 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
1334 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1335 134, 135, 136, 103, 0, 0, 0, 0, 0, 0,
1336 0, 0, 104, 0, 0, 0, 0, 105, 106, 683,
1337 684, 685, 107, 611, 0, 612, 440, 613, 358, 0,
1338 0, 0, 615, 0, 0, 0, 0, 0, 0, 0,
1339 0, 0, 0, 0, 0, 0, 0, 360, 361, 162,
1340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1341 362, 363, 0, 0, 0, 0, 108, 109, 110, 111,
1342 112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1343 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
1344 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1345 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1346 131, 132, 133, 134, 135, 136, 103, 0, 0, 0,
1347 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
1348 105, 106, 776, 0, 0, 107, 611, 0, 612, 0,
1349 613, 358, 0, 0, 0, 615, 0, 0, 0, 0,
1350 0, 0, 0, 0, 0, 0, 0, 153, 0, 0,
1351 360, 361, 162, 0, 0, 0, 0, 0, 0, 0,
1352 0, 0, 0, 362, 363, 0, 0, 0, 0, 108,
1353 109, 110, 111, 112, 0, 0, 0, 0, 0, 0,
1354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1355 0, 113, 777, 778, 115, 116, 117, 118, 119, 0,
1356 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
1357 128, 129, 779, 131, 132, 133, 134, 135, 136, 103,
1358 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
1359 0, 0, 0, 105, 106, 610, 0, 0, 107, 611,
1360 0, 612, 0, 613, 358, 0, 0, 0, 615, 0,
1361 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1362 153, 0, 0, 360, 361, 162, 0, 0, 0, 0,
1363 0, 0, 0, 0, 0, 0, 362, 363, 0, 0,
1364 857, 0, 108, 109, 110, 111, 112, 0, 0, 0,
1365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1366 0, 0, 0, 0, 113, 0, 114, 115, 116, 117,
1367 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
1368 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1369 135, 136, 103, 0, 0, 0, 0, 0, 0, 0,
1370 0, 104, 0, 0, 0, 0, 105, 106, 610, 0,
1371 0, 107, 611, -625, 612, 0, 613, 358, 0, 0,
1372 0, 615, 0, 0, 0, 0, 0, 0, 0, 0,
1373 0, 0, 0, 153, 0, 0, 360, 361, 162, 0,
1374 0, 0, 0, 0, 0, 0, 0, 0, 0, 362,
1375 363, 0, 0, 0, 0, 108, 109, 110, 111, 112,
1376 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1377 0, 0, 0, 0, 0, 0, 0, 113, 0, 114,
1378 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1379 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1380 132, 133, 134, 135, 136, 103, 0, 0, 0, 0,
1381 0, 0, 0, 0, 104, 0, 0, 0, 0, 105,
1382 106, 610, 0, 0, 107, 611, 0, 612, 0, 613,
1383 358, 0, 0, 0, 615, 0, 0, 0, 0, 0,
1384 0, 0, 0, 0, 0, 0, 153, 0, 0, 360,
1385 361, 162, 0, 0, 0, 0, 0, 0, 0, 0,
1386 0, 0, 362, 363, 0, 0, 0, 0, 108, 109,
1387 110, 111, 112, 0, 0, 0, 0, 0, 0, 0,
1388 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1389 113, 0, 114, 115, 116, 117, 118, 119, 0, 120,
1390 0, 0, 121, 122, 123, 124, 125, 126, 127, 128,
1391 129, 130, 131, 132, 133, 134, 135, 136, 103, 0,
1392 0, 0, 0, 0, 0, 0, 0, 104, 0, 0,
1393 0, 0, 105, 106, 776, 0, 0, 107, 611, 0,
1394 612, 0, 613, 358, 0, 0, 0, 615, 0, 0,
1395 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1396 0, 0, 360, 361, 162, 0, 0, 0, 0, 0,
1397 0, 0, 0, 0, 0, 362, 363, 0, 0, 0,
1398 0, 108, 109, 110, 111, 112, 0, 0, 0, 0,
1399 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1400 0, 0, 0, 113, 777, 778, 115, 116, 117, 118,
1401 119, 0, 120, 0, 0, 121, 122, 123, 124, 125,
1402 126, 127, 128, 129, 779, 131, 132, 133, 134, 135,
1403 136, 103, 0, 0, 0, 0, 0, 0, 0, 0,
1404 104, 0, 0, 0, 0, 105, 106, 610, 0, 0,
1405 107, 611, 0, 612, 0, 613, 358, 0, 0, 0,
1406 615, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1407 0, 0, 0, 0, 0, 360, 361, 162, 0, 0,
1408 0, 0, 0, 0, 0, 0, 0, 0, 362, 363,
1409 0, 0, 0, 0, 108, 109, 110, 111, 112, 0,
1410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1411 0, 0, 0, 0, 0, 0, 113, 0, 114, 115,
1412 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1413 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1414 133, 134, 135, 136, 103, 0, 0, 0, 0, 0,
1415 0, 0, 0, 104, 0, 0, 0, 0, 105, 106,
1416 0, 0, 0, 107, 0, 0, 356, 0, 357, 358,
1417 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
1418 0, 0, 0, 0, 0, 0, 0, 0, 360, 361,
1419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1420 0, 362, 363, 0, 0, 0, 0, 108, 109, 110,
1421 111, 112, 0, 0, 0, 0, 0, 0, 0, 364,
1422 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
1423 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1424 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1425 130, 131, 132, 133, 134, 135, 136, 103, 0, 0,
1426 0, 0, 0, 0, 0, 0, 104, 0, 0, 0,
1427 0, 105, 106, 0, 0, 0, 107, 0, 0, 0,
1428 0, 0, 0, 11, 0, 0, -517, 0, 0, 0,
1429 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1430 0, 0, 0, 162, 0, 0, 0, 0, 0, 0,
1431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1432 108, 109, 110, 111, 112, 0, 0, 0, 0, 0,
1433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1434 0, 64, 113, 0, 114, 115, 116, 117, 118, 119,
1435 0, 120, 0, 0, 121, 122, 123, 124, 125, 126,
1436 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1437 103, 0, 0, 0, 0, 0, 0, 0, 0, 104,
1438 0, 0, 0, 0, 105, 106, 739, 0, 0, 107,
1439 0, 0, 0, 0, 0, 0, 11, 456, 457, 458,
1440 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
1441 469, 470, 471, 472, 473, 0, 162, 0, 0, 0,
1442 711, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1443 0, 0, 0, 108, 109, 110, 111, 112, 0, 0,
1444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1445 0, 0, 0, 0, 64, 113, 0, 114, 115, 116,
1446 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
1447 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1448 134, 135, 136, 103, 0, 0, 0, 0, 0, 0,
1449 0, 0, 104, 0, 0, 0, 0, 105, 106, 0,
1450 0, 0, 107, 0, 0, 664, 0, 0, 0, 0,
1451 0, 0, 714, 816, 456, 457, 458, 459, 460, 461,
1452 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1453 472, 473, 0, 0, 0, 0, 0, 474, 0, 0,
1454 0, 0, 0, 0, 0, 0, 108, 109, 110, 111,
1455 112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1456 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
1457 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1458 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1459 131, 132, 133, 134, 135, 136, 103, 0, 0, 0,
1460 0, 0, 0, 0, 0, 104, 0, 765, 0, 0,
1461 105, 106, 0, 0, 0, 107, 456, 457, 458, 459,
1462 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
1463 470, 471, 472, 473, 0, 0, 0, 0, 0, 711,
1464 0, 0, 162, 0, 0, 0, 0, 0, 0, 0,
1465 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
1466 109, 110, 111, 112, 0, 0, 0, 0, 0, 0,
1467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1468 0, 113, 0, 114, 115, 116, 117, 118, 119, 0,
1469 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
1470 128, 129, 130, 131, 132, 133, 134, 135, 136, 103,
1471 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
1472 0, 0, 0, 105, 106, 0, 0, 0, 107, 0,
1473 910, 0, 0, 0, 0, 0, 0, 0, 452, 456,
1474 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
1475 467, 468, 469, 470, 471, 472, 473, 0, 0, 0,
1476 0, 0, 711, 0, 0, 0, 0, 0, 0, 0,
1477 0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
1478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1479 0, 0, 0, 0, 113, 0, 114, 115, 116, 117,
1480 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
1481 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1482 135, 136, 103, 0, 0, 0, 0, 0, 0, 0,
1483 0, 104, 0, 0, 0, 0, 105, 106, 0, 0,
1484 0, 107, 0, 0, 875, 0, 0, 0, 0, 0,
1485 0, 714, 456, 457, 458, 459, 460, 461, 462, 463,
1486 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1487 0, 0, 0, 0, 0, 711, 0, 0, 0, 0,
1488 0, 103, 0, 0, 0, 108, 109, 110, 111, 112,
1489 104, 0, 0, 0, 0, 105, 106, 0, 0, 0,
1490 107, 0, 0, 0, 0, 0, 0, 113, 0, 114,
1491 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1492 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1493 132, 133, 134, 135, 136, 0, 0, 0, 0, 0,
1494 0, 0, 741, 0, 108, 109, 110, 111, 112, 0,
1495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1496 0, 0, 0, 0, 0, 0, 113, 0, 114, 115,
1497 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1498 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1499 133, 134, 135, 136, 103, 0, 0, 0, 0, 0,
1500 0, 0, 0, 104, 0, 0, 0, 750, 792, 106,
1501 0, 0, 0, 107, 456, 457, 458, 459, 460, 461,
1502 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1503 472, 473, 0, 0, 0, 0, 0, 474, 0, 0,
1504 162, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1505 0, 0, 0, 103, 0, 0, 0, 108, 109, 110,
1506 111, 112, 104, 0, 0, 0, 0, 105, 106, 0,
1507 0, 0, 107, 0, 0, 0, 0, 0, 0, 113,
1508 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1509 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1510 130, 131, 132, 133, 134, 135, 136, 0, 0, 0,
1511 0, 0, 103, 0, 837, 0, 108, 109, 110, 111,
1512 112, 104, 0, 0, 0, 0, 105, 106, 0, 0,
1513 0, 107, 0, 0, 0, 0, 0, 0, 113, 0,
1514 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1515 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1516 131, 132, 133, 134, 135, 136, 0, 0, 0, 0,
1517 0, 0, 0, 0, 0, 108, 109, 110, 111, 112,
1518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1519 0, 0, 0, 0, 0, 0, 0, 113, 0, 114,
1520 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1521 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1522 132, 133, 134, 135, 136, 813, 0, 0, 0, 0,
1523 0, 0, 456, 457, 458, 459, 460, 461, 462, 463,
1524 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1525 0, 0, 0, 710, 0, 711, 456, 457, 458, 459,
1526 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
1527 470, 471, 472, 473, 0, 0, 0, 0, 0, 711,
1528 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
1529 466, 467, 468, 469, 470, 471, 472, 473, 0, 0,
1530 0, 0, 0, 474, 456, 457, 458, 459, 460, 461,
1531 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1532 472, 473, 0, 0, 0, 0, 0, 711, 456, 457,
1533 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
1534 468, 469, 470, 471, 472, 473, 0, 0, 0, 0,
1535 0, 474, 456, 457, 458, 459, 460, 461, 462, 463,
1536 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1540 static const short int yycheck
[] =
1542 10, 33, 22, 87, 183, 15, 33, 0, 182, 183,
1543 91, 33, 91, 190, 16, 17, 18, 424, 15, 102,
1544 34, 421, 80, 397, 424, 421, 310, 377, 378, 396,
1545 151, 701, 90, 367, 27, 394, 727, 477, 159, 477,
1546 727, 727, 409, 427, 760, 0, 762, 10, 756, 310,
1547 15, 26, 26, 49, 137, 10, 29, 140, 21, 61,
1548 62, 63, 25, 9, 24, 11, 21, 44, 189, 24,
1549 25, 0, 27, 29, 433, 359, 25, 33, 80, 6,
1550 37, 365, 9, 31, 94, 125, 35, 778, 36, 91,
1551 92, 93, 808, 37, 26, 786, 32, 94, 100, 29,
1552 786, 33, 65, 33, 64, 29, 26, 27, 442, 33,
1553 65, 32, 32, 34, 87, 31, 32, 451, 34, 32,
1554 454, 17, 18, 3, 44, 484, 6, 36, 124, 94,
1555 10, 87, 12, 36, 842, 92, 93, 94, 95, 96,
1556 810, 98, 99, 31, 119, 406, 34, 157, 92, 93,
1557 94, 95, 96, 30, 98, 99, 31, 87, 190, 829,
1558 157, 32, 31, 87, 36, 167, 35, 36, 6, 7,
1559 8, 455, 182, 183, 35, 36, 35, 885, 4, 5,
1560 6, 23, 184, 9, 854, 876, 31, 150, 36, 876,
1561 474, 475, 157, 156, 23, 150, 22, 36, 889, 915,
1562 32, 156, 38, 4, 5, 6, 897, 31, 9, 33,
1563 34, 897, 35, 36, 110, 111, 112, 113, 114, 115,
1564 911, 22, 606, 31, 911, 33, 34, 311, 6, 310,
1565 32, 310, 672, 32, 672, 33, 34, 677, 31, 677,
1566 4, 5, 6, 7, 8, 9, 10, 11, 918, 33,
1567 34, 33, 34, 17, 17, 18, 615, 631, 22, 618,
1568 634, 3, 383, 31, 6, 29, 33, 34, 10, 32,
1569 12, 13, 14, 15, 16, 17, 35, 636, 359, 36,
1570 359, 32, 33, 32, 365, 40, 365, 3, 33, 34,
1571 6, 33, 350, 660, 10, 31, 12, 13, 14, 15,
1572 16, 17, 49, 477, 33, 34, 92, 93, 310, 92,
1573 93, 94, 95, 96, 31, 98, 99, 6, 26, 32,
1574 84, 85, 86, 87, 34, 40, 26, 91, 34, 729,
1575 34, 32, 666, 729, 22, 669, 670, 100, 101, 102,
1576 103, 104, 105, 106, 107, 108, 32, 714, 39, 32,
1577 717, 31, 711, 712, 31, 64, 37, 359, 40, 123,
1578 32, 64, 364, 365, 40, 24, 40, 32, 727, 396,
1579 32, 31, 33, 25, 455, 33, 455, 409, 33, 35,
1580 34, 31, 409, 40, 35, 33, 33, 409, 420, 33,
1581 422, 34, 424, 474, 475, 474, 475, 34, 772, 34,
1582 774, 775, 35, 32, 109, 764, 32, 757, 758, 34,
1583 33, 64, 4, 5, 6, 7, 8, 9, 10, 11,
1584 33, 423, 25, 35, 32, 17, 31, 786, 97, 33,
1585 22, 831, 33, 33, 448, 831, 438, 29, 32, 35,
1586 33, 615, 31, 33, 25, 37, 478, 479, 34, 31,
1587 452, 630, 811, 455, 813, 862, 630, 32, 34, 633,
1588 33, 33, 862, 797, 798, 749, 750, 477, 33, 828,
1589 34, 32, 474, 475, 34, 24, 17, 18, 852, 879,
1590 477, 32, 97, 879, 477, 32, 25, 33, 32, 25,
1591 890, 33, 84, 85, 86, 87, 33, 35, 672, 34,
1592 34, 33, 33, 677, 33, 4, 5, 6, 7, 8,
1593 9, 10, 11, 32, 34, 33, 875, 876, 17, 25,
1594 920, 32, 32, 22, 920, 33, 33, 157, 33, 121,
1595 29, 931, 33, 33, 27, 811, 677, 672, 897, 178,
1596 158, 604, 40, 917, 24, 633, 380, 804, 637, 448,
1597 21, 168, 911, 762, 19, 386, 911, 734, 932, 100,
1598 101, 102, 103, 104, 105, 106, 107, 108, 420, 777,
1599 889, 4, 5, 6, 7, 8, 9, 10, 11, 931,
1600 825, 736, -1, -1, 17, 84, 85, 86, 87, 22,
1601 769, -1, -1, 26, 27, 769, 679, 680, -1, -1,
1602 -1, 4, 5, 6, 7, 8, 9, 10, 11, -1,
1603 -1, 44, -1, -1, 17, -1, -1, -1, -1, 22,
1604 630, -1, 624, 633, 123, 657, -1, -1, -1, -1,
1605 -1, -1, -1, 660, -1, 637, -1, -1, -1, -1,
1606 -1, -1, -1, -1, 676, -1, -1, -1, -1, 676,
1607 -1, 84, 85, 86, 676, -1, 658, -1, -1, -1,
1608 -1, -1, 672, -1, -1, -1, -1, 677, 749, 750,
1609 749, 750, -1, -1, -1, 672, 678, -1, -1, 672,
1610 677, 84, 85, 86, 677, 707, -1, 714, -1, -1,
1611 717, 870, -1, -1, -1, -1, 870, -1, -1, 731,
1612 -1, -1, 734, -1, -1, 737, -1, -1, -1, 888,
1613 -1, 795, -1, 733, 888, -1, -1, 4, 5, 6,
1614 7, 8, 9, 10, 11, -1, -1, -1, -1, -1,
1615 17, -1, -1, -1, 736, 22, -1, -1, -1, -1,
1616 -1, -1, 29, 30, 31, 924, -1, 749, 750, -1,
1617 924, -1, -1, -1, 41, -1, -1, 789, -1, 769,
1618 -1, -1, -1, -1, -1, -1, 768, -1, -1, 771,
1619 802, 30, -1, 805, 806, -1, -1, -1, -1, -1,
1620 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1621 810, -1, -1, 825, 796, -1, 83, 84, 85, 86,
1622 87, 88, 89, -1, 91, -1, -1, 66, 67, 68,
1623 69, 70, 71, 72, 73, 74, 75, 76, 77, -1,
1624 79, 80, 81, 82, -1, -1, -1, -1, -1, 116,
1625 -1, -1, -1, -1, 121, 867, 123, -1, -1, -1,
1626 -1, -1, -1, -1, 876, -1, -1, -1, -1, -1,
1627 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1628 870, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1629 -1, -1, -1, -1, -1, -1, -1, -1, 888, 911,
1630 -1, -1, -1, -1, 0, -1, -1, 3, 4, 5,
1631 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1632 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1633 26, 27, 28, 29, 924, 31, 32, 33, 34, 35,
1634 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
1635 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1636 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1637 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1638 76, 77, 78, 79, -1, 81, -1, 83, 84, 85,
1639 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1640 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
1641 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1642 116, -1, -1, 119, -1, 121, 122, 123, 124, 125,
1643 0, -1, -1, 3, 4, 5, 6, 7, 8, 9,
1644 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1645 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1646 -1, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1647 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1648 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1649 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1650 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1651 -1, 81, -1, 83, 84, 85, 86, 87, 88, 89,
1652 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1653 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1654 110, 111, 112, 113, 114, 115, 116, -1, -1, 119,
1655 -1, 121, 122, 123, 124, 125, 0, -1, -1, 3,
1656 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1657 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1658 24, 25, 26, 27, 28, 29, -1, 31, 32, 33,
1659 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1660 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1661 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1662 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1663 74, 75, 76, 77, 78, 79, -1, 81, -1, 83,
1664 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1665 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1666 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1667 114, 115, 116, -1, -1, 119, -1, 121, 122, 123,
1668 124, 125, 0, -1, -1, 3, 4, 5, 6, 7,
1669 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1670 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1671 28, 29, -1, 31, 32, 33, 34, 35, 36, -1,
1672 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1673 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
1674 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1675 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
1676 78, 79, -1, 81, -1, 83, 84, 85, 86, 87,
1677 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1678 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1679 108, 109, 110, 111, 112, 113, 114, 115, 116, 3,
1680 -1, 119, -1, 121, 122, 123, 124, 125, 12, -1,
1681 -1, -1, -1, 17, 18, 19, -1, -1, 22, 23,
1682 -1, 25, -1, 27, 28, 29, -1, -1, 32, -1,
1683 -1, -1, -1, 4, 5, 6, 7, 8, 9, 10,
1684 11, -1, -1, 47, 48, 49, 17, -1, -1, -1,
1685 -1, 22, -1, -1, -1, -1, 60, 61, 29, -1,
1686 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
1687 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1688 -1, -1, -1, 87, 88, -1, 90, 91, 92, 93,
1689 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
1690 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1691 114, 115, -1, 84, 85, 86, 87, -1, -1, -1,
1692 124, 4, 5, 6, 7, 8, 9, 10, 11, -1,
1693 -1, -1, -1, -1, 17, -1, -1, -1, -1, 22,
1694 -1, -1, 3, -1, -1, -1, 29, -1, -1, -1,
1695 121, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1696 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1697 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1698 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1699 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1700 61, 84, 85, 86, 87, 66, 67, 68, 69, 70,
1701 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
1702 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
1703 91, 92, 93, 94, 95, -1, 97, -1, 121, 100,
1704 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1705 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
1706 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1707 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1708 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1709 -1, 4, 5, 6, 7, 8, 9, 10, 11, 47,
1710 48, -1, -1, -1, 17, -1, -1, -1, -1, 22,
1711 -1, -1, 60, 61, -1, -1, 29, -1, 66, 67,
1712 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
1713 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1714 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
1715 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
1716 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
1717 118, 84, 85, 86, 87, -1, -1, 12, -1, -1,
1718 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1719 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1720 -1, -1, -1, -1, 4, 5, 6, 7, 8, 9,
1721 10, 11, 47, 48, -1, -1, -1, 17, -1, -1,
1722 -1, -1, 22, -1, -1, 60, 61, -1, -1, 29,
1723 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
1724 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
1725 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
1726 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
1727 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1728 115, 3, -1, 118, 84, 85, 86, 87, -1, -1,
1729 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1730 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1731 32, -1, -1, -1, -1, -1, -1, 4, 5, 6,
1732 7, 8, 9, 10, 11, 47, 48, -1, -1, -1,
1733 17, -1, -1, -1, -1, 22, -1, -1, 60, 61,
1734 -1, -1, 29, -1, 66, 67, 68, 69, 70, -1,
1735 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
1736 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
1737 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
1738 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1739 112, 113, 114, 115, 3, -1, 118, 84, 85, 86,
1740 87, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1741 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1742 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1743 4, 5, 6, 7, 8, 9, 10, 11, 47, 48,
1744 -1, -1, -1, 17, -1, -1, -1, -1, 22, -1,
1745 -1, 60, 61, -1, -1, 29, -1, 66, 67, 68,
1746 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
1747 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1748 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
1749 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1750 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
1751 84, 85, 86, 87, -1, -1, 12, -1, -1, -1,
1752 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1753 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1754 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1755 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1756 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1757 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
1758 -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
1759 -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
1760 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
1761 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1762 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
1763 -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
1764 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1765 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1766 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1767 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1768 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
1769 -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
1770 -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
1771 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
1772 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1773 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
1774 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
1775 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1776 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
1777 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
1778 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1779 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
1780 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
1781 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
1782 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
1783 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1784 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
1785 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
1786 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1787 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1788 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1789 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1790 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1791 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
1792 -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
1793 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
1794 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
1795 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
1796 -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
1797 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
1798 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
1799 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1800 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
1801 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
1802 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
1803 -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
1804 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
1805 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
1806 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1807 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
1808 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1809 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1810 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1811 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1812 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1813 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
1814 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
1815 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
1816 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
1817 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1818 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
1819 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1820 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1821 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1822 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1823 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1824 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1825 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
1826 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1827 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
1828 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
1829 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
1830 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
1831 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1832 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1833 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1834 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
1835 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
1836 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
1837 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
1838 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
1839 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
1840 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1841 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
1842 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1843 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1844 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1845 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
1846 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
1847 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
1848 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
1849 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
1850 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
1851 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1852 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
1853 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1854 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1855 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1856 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
1857 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1858 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
1859 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
1860 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1861 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
1862 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1863 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
1864 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
1865 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1866 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1867 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1868 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1869 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1870 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
1871 -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
1872 -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
1873 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
1874 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1875 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
1876 -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
1877 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1879 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1880 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1881 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
1882 -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
1883 -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
1884 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
1885 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1886 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
1887 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
1888 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1889 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
1890 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
1891 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1892 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
1893 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
1894 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
1895 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
1896 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1897 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
1898 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
1899 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1900 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1901 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1902 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1903 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1904 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
1905 -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
1906 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
1907 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
1908 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
1909 -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
1910 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
1911 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
1912 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1913 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
1914 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
1915 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
1916 -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
1917 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
1918 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
1919 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1920 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
1921 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1922 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1923 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1924 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1925 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1926 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
1927 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
1928 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
1929 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
1930 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1931 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
1932 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1933 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1934 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1935 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1936 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1937 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1938 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
1939 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1940 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
1941 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
1942 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
1943 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
1944 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1945 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1946 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1947 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
1948 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
1949 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
1950 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
1951 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
1952 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
1953 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1954 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
1955 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1956 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1957 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1958 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
1959 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
1960 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
1961 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
1962 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
1963 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
1964 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1965 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
1966 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1967 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1968 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1969 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
1970 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1971 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
1972 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
1973 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1974 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
1975 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1976 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
1977 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
1978 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1979 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1980 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1981 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1982 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1983 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
1984 -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
1985 -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
1986 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
1987 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1988 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
1989 -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
1990 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1991 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1992 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1993 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1994 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
1995 -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
1996 -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
1997 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
1998 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1999 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
2000 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
2001 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
2002 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
2003 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
2004 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2005 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
2006 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
2007 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
2008 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2009 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2010 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
2011 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
2012 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
2013 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
2014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2015 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
2016 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
2017 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
2018 -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
2019 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
2020 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
2021 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
2022 -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
2023 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
2024 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
2025 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2026 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
2027 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
2028 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
2029 -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
2030 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
2031 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
2032 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2033 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
2034 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
2035 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
2036 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
2037 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
2038 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
2039 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
2040 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
2041 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2042 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2043 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2044 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
2045 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
2046 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
2047 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
2048 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
2049 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2050 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
2051 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
2052 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2053 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
2054 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
2055 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
2056 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
2057 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
2058 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
2059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2060 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
2061 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
2062 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
2063 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
2064 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
2065 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
2066 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2067 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
2068 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
2069 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
2070 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2071 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
2072 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
2073 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
2074 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
2075 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
2076 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
2077 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2078 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
2079 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
2080 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
2081 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
2082 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
2083 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2084 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
2085 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
2086 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
2087 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
2088 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2089 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
2090 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
2091 -1, 17, 18, -1, -1, -1, 22, -1, -1, -1,
2092 -1, -1, -1, 29, 30, 31, 32, 33, 34, 35,
2093 36, 37, 38, 39, 40, -1, 42, 43, 44, 45,
2094 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2095 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2096 66, 67, 68, 69, 70, 4, 5, 6, 7, 8,
2097 9, 10, 11, -1, -1, -1, -1, -1, 17, -1,
2098 -1, 87, 88, 22, 90, 91, 92, 93, 94, 95,
2099 29, 97, -1, -1, 100, 101, 102, 103, 104, 105,
2100 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
2101 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
2102 -1, -1, -1, -1, 17, 18, 19, -1, -1, 22,
2103 23, -1, 25, -1, 27, 28, 29, -1, -1, 32,
2104 -1, -1, -1, -1, 83, 84, 85, 86, 87, -1,
2105 -1, -1, -1, -1, 47, 48, 49, -1, -1, -1,
2106 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
2107 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
2108 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2109 -1, 84, 85, 86, 87, 88, -1, 90, 91, 92,
2110 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
2111 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2112 113, 114, 115, 3, -1, -1, -1, -1, -1, -1,
2113 -1, -1, 12, -1, -1, -1, -1, 17, 18, 19,
2114 20, 21, 22, 23, -1, 25, 26, 27, 28, -1,
2115 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
2116 -1, -1, -1, -1, -1, -1, -1, 47, 48, 49,
2117 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2118 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
2119 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2120 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
2121 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2122 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2123 110, 111, 112, 113, 114, 115, 3, -1, -1, -1,
2124 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
2125 17, 18, 19, -1, -1, 22, 23, -1, 25, -1,
2126 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
2127 -1, -1, -1, -1, -1, -1, -1, 44, -1, -1,
2128 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
2129 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
2130 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
2131 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2132 -1, 88, 89, 90, 91, 92, 93, 94, 95, -1,
2133 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
2134 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
2135 -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
2136 -1, -1, -1, 17, 18, 19, -1, -1, 22, 23,
2137 -1, 25, -1, 27, 28, -1, -1, -1, 32, -1,
2138 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2139 44, -1, -1, 47, 48, 49, -1, -1, -1, -1,
2140 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
2141 64, -1, 66, 67, 68, 69, 70, -1, -1, -1,
2142 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2143 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
2144 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
2145 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2146 114, 115, 3, -1, -1, -1, -1, -1, -1, -1,
2147 -1, 12, -1, -1, -1, -1, 17, 18, 19, -1,
2148 -1, 22, 23, 24, 25, -1, 27, 28, -1, -1,
2149 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
2150 -1, -1, -1, 44, -1, -1, 47, 48, 49, -1,
2151 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
2152 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
2153 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2154 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2155 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2156 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2157 111, 112, 113, 114, 115, 3, -1, -1, -1, -1,
2158 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
2159 18, 19, -1, -1, 22, 23, -1, 25, -1, 27,
2160 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
2161 -1, -1, -1, -1, -1, -1, 44, -1, -1, 47,
2162 48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
2163 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
2164 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
2165 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2166 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
2167 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
2168 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
2169 -1, -1, -1, -1, -1, -1, -1, 12, -1, -1,
2170 -1, -1, 17, 18, 19, -1, -1, 22, 23, -1,
2171 25, -1, 27, 28, -1, -1, -1, 32, -1, -1,
2172 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2173 -1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
2174 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
2175 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
2176 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2177 -1, -1, -1, 88, 89, 90, 91, 92, 93, 94,
2178 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
2179 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2180 115, 3, -1, -1, -1, -1, -1, -1, -1, -1,
2181 12, -1, -1, -1, -1, 17, 18, 19, -1, -1,
2182 22, 23, -1, 25, -1, 27, 28, -1, -1, -1,
2183 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2184 -1, -1, -1, -1, -1, 47, 48, 49, -1, -1,
2185 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
2186 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
2187 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2188 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
2189 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
2190 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2191 112, 113, 114, 115, 3, -1, -1, -1, -1, -1,
2192 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
2193 -1, -1, -1, 22, -1, -1, 25, -1, 27, 28,
2194 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
2195 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
2196 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2197 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
2198 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
2199 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
2200 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
2201 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2202 109, 110, 111, 112, 113, 114, 115, 3, -1, -1,
2203 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
2204 -1, 17, 18, -1, -1, -1, 22, -1, -1, -1,
2205 -1, -1, -1, 29, -1, -1, 32, -1, -1, -1,
2206 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2207 -1, -1, -1, 49, -1, -1, -1, -1, -1, -1,
2208 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2209 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
2210 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2211 -1, 87, 88, -1, 90, 91, 92, 93, 94, 95,
2212 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
2213 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
2214 3, -1, -1, -1, -1, -1, -1, -1, -1, 12,
2215 -1, -1, -1, -1, 17, 18, 31, -1, -1, 22,
2216 -1, -1, -1, -1, -1, -1, 29, 42, 43, 44,
2217 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2218 55, 56, 57, 58, 59, -1, 49, -1, -1, -1,
2219 65, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2220 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
2221 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2222 -1, -1, -1, -1, 87, 88, -1, 90, 91, 92,
2223 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
2224 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2225 113, 114, 115, 3, -1, -1, -1, -1, -1, -1,
2226 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
2227 -1, -1, 22, -1, -1, 33, -1, -1, -1, -1,
2228 -1, -1, 32, 33, 42, 43, 44, 45, 46, 47,
2229 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2230 58, 59, -1, -1, -1, -1, -1, 65, -1, -1,
2231 -1, -1, -1, -1, -1, -1, 66, 67, 68, 69,
2232 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2233 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
2234 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2235 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2236 110, 111, 112, 113, 114, 115, 3, -1, -1, -1,
2237 -1, -1, -1, -1, -1, 12, -1, 33, -1, -1,
2238 17, 18, -1, -1, -1, 22, 42, 43, 44, 45,
2239 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2240 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2241 -1, -1, 49, -1, -1, -1, -1, -1, -1, -1,
2242 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2243 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
2244 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2245 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
2246 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
2247 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
2248 -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
2249 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
2250 33, -1, -1, -1, -1, -1, -1, -1, 32, 42,
2251 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
2252 53, 54, 55, 56, 57, 58, 59, -1, -1, -1,
2253 -1, -1, 65, -1, -1, -1, -1, -1, -1, -1,
2254 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
2255 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2256 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
2257 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
2258 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2259 114, 115, 3, -1, -1, -1, -1, -1, -1, -1,
2260 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
2261 -1, 22, -1, -1, 34, -1, -1, -1, -1, -1,
2262 -1, 32, 42, 43, 44, 45, 46, 47, 48, 49,
2263 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2264 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
2265 -1, 3, -1, -1, -1, 66, 67, 68, 69, 70,
2266 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
2267 22, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2268 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2269 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2270 111, 112, 113, 114, 115, -1, -1, -1, -1, -1,
2271 -1, -1, 64, -1, 66, 67, 68, 69, 70, -1,
2272 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2273 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
2274 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
2275 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2276 112, 113, 114, 115, 3, -1, -1, -1, -1, -1,
2277 -1, -1, -1, 12, -1, -1, -1, 35, 17, 18,
2278 -1, -1, -1, 22, 42, 43, 44, 45, 46, 47,
2279 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2280 58, 59, -1, -1, -1, -1, -1, 65, -1, -1,
2281 49, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2282 -1, -1, -1, 3, -1, -1, -1, 66, 67, 68,
2283 69, 70, 12, -1, -1, -1, -1, 17, 18, -1,
2284 -1, -1, 22, -1, -1, -1, -1, -1, -1, 88,
2285 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
2286 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2287 109, 110, 111, 112, 113, 114, 115, -1, -1, -1,
2288 -1, -1, 3, -1, 64, -1, 66, 67, 68, 69,
2289 70, 12, -1, -1, -1, -1, 17, 18, -1, -1,
2290 -1, 22, -1, -1, -1, -1, -1, -1, 88, -1,
2291 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2292 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2293 110, 111, 112, 113, 114, 115, -1, -1, -1, -1,
2294 -1, -1, -1, -1, -1, 66, 67, 68, 69, 70,
2295 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2296 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2297 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2298 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2299 111, 112, 113, 114, 115, 35, -1, -1, -1, -1,
2300 -1, -1, 42, 43, 44, 45, 46, 47, 48, 49,
2301 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2302 -1, -1, -1, 39, -1, 65, 42, 43, 44, 45,
2303 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2304 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2305 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
2306 52, 53, 54, 55, 56, 57, 58, 59, -1, -1,
2307 -1, -1, -1, 65, 42, 43, 44, 45, 46, 47,
2308 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2309 58, 59, -1, -1, -1, -1, -1, 65, 42, 43,
2310 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
2311 54, 55, 56, 57, 58, 59, -1, -1, -1, -1,
2312 -1, 65, 42, 43, 44, 45, 46, 47, 48, 49,
2313 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2314 -1, -1, -1, -1, -1, 65
2317 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2318 symbol of state STATE-NUM. */
2319 static const unsigned short int yystos
[] =
2321 0, 4, 5, 6, 7, 8, 9, 10, 11, 17,
2322 22, 29, 30, 31, 41, 83, 84, 85, 86, 87,
2323 88, 89, 91, 116, 121, 123, 146, 147, 148, 149,
2324 150, 167, 170, 175, 176, 177, 178, 179, 180, 181,
2325 182, 183, 188, 191, 194, 198, 199, 200, 201, 203,
2326 205, 209, 211, 212, 218, 226, 240, 241, 9, 11,
2327 22, 84, 85, 86, 87, 123, 199, 209, 30, 66,
2328 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
2329 77, 79, 80, 81, 82, 151, 152, 153, 154, 156,
2330 157, 158, 84, 85, 121, 171, 173, 200, 201, 209,
2331 218, 227, 228, 3, 12, 17, 18, 22, 66, 67,
2332 68, 69, 70, 88, 90, 91, 92, 93, 94, 95,
2333 97, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2334 109, 110, 111, 112, 113, 114, 115, 143, 259, 271,
2335 143, 143, 229, 3, 6, 10, 12, 246, 248, 26,
2336 123, 199, 241, 44, 279, 280, 22, 83, 198, 199,
2337 0, 148, 49, 143, 176, 210, 235, 236, 237, 238,
2338 177, 4, 5, 6, 9, 22, 184, 6, 181, 187,
2339 125, 189, 32, 32, 36, 36, 143, 143, 143, 199,
2340 34, 192, 0, 3, 4, 5, 6, 7, 8, 9,
2341 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2342 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
2343 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2344 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2345 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2346 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
2347 71, 72, 73, 74, 75, 76, 77, 78, 79, 81,
2348 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
2349 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
2350 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2351 113, 114, 115, 116, 119, 121, 122, 123, 124, 125,
2352 143, 144, 159, 30, 3, 12, 17, 18, 22, 66,
2353 67, 68, 69, 70, 88, 90, 91, 92, 93, 94,
2354 95, 97, 100, 101, 102, 103, 104, 105, 106, 107,
2355 108, 109, 110, 111, 112, 113, 114, 115, 144, 162,
2356 163, 162, 26, 119, 155, 144, 25, 27, 28, 32,
2357 47, 48, 60, 61, 78, 142, 143, 164, 223, 143,
2358 229, 143, 229, 173, 31, 143, 35, 232, 232, 232,
2359 232, 23, 31, 199, 36, 195, 36, 23, 171, 189,
2360 195, 29, 87, 239, 38, 233, 32, 143, 124, 238,
2361 6, 185, 6, 9, 186, 184, 32, 31, 17, 175,
2362 202, 204, 206, 207, 208, 209, 206, 143, 219, 220,
2363 92, 93, 94, 95, 96, 98, 99, 250, 251, 252,
2364 265, 268, 274, 275, 276, 195, 193, 210, 236, 31,
2365 26, 118, 164, 190, 162, 144, 26, 27, 32, 44,
2366 225, 164, 32, 143, 164, 32, 42, 43, 44, 45,
2367 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2368 56, 57, 58, 59, 65, 141, 35, 36, 214, 214,
2369 31, 213, 214, 213, 40, 195, 0, 3, 4, 5,
2370 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
2371 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
2372 26, 27, 28, 29, 31, 32, 33, 34, 35, 38,
2373 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2374 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
2375 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
2376 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
2377 79, 81, 83, 84, 85, 86, 87, 88, 89, 90,
2378 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
2379 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2380 111, 112, 113, 114, 115, 116, 119, 121, 122, 123,
2381 124, 125, 145, 195, 196, 197, 250, 32, 31, 31,
2382 19, 23, 25, 27, 29, 32, 87, 124, 142, 210,
2383 221, 222, 223, 234, 235, 236, 233, 6, 190, 235,
2384 32, 33, 34, 34, 33, 34, 40, 34, 230, 210,
2385 255, 221, 244, 269, 270, 271, 279, 210, 143, 277,
2386 278, 210, 266, 270, 37, 251, 221, 34, 32, 26,
2387 177, 224, 225, 22, 33, 143, 164, 165, 166, 164,
2388 164, 32, 121, 172, 173, 174, 175, 215, 218, 227,
2389 228, 210, 210, 19, 20, 21, 168, 169, 190, 221,
2390 37, 197, 37, 13, 14, 15, 16, 17, 33, 242,
2391 243, 245, 247, 248, 249, 17, 22, 175, 221, 221,
2392 39, 65, 141, 39, 32, 143, 33, 32, 206, 233,
2393 64, 208, 233, 64, 221, 220, 37, 40, 31, 40,
2394 31, 32, 24, 40, 32, 31, 34, 32, 31, 31,
2395 210, 64, 143, 160, 161, 235, 33, 33, 33, 34,
2396 35, 25, 174, 35, 231, 37, 172, 232, 232, 31,
2397 35, 33, 34, 244, 33, 33, 221, 221, 235, 32,
2398 33, 235, 33, 34, 33, 33, 19, 89, 90, 109,
2399 221, 254, 256, 257, 258, 259, 280, 269, 210, 279,
2400 193, 278, 17, 193, 267, 33, 34, 164, 164, 34,
2401 25, 35, 34, 216, 231, 214, 214, 245, 35, 243,
2402 245, 40, 221, 35, 143, 206, 33, 233, 64, 233,
2403 233, 109, 256, 17, 18, 32, 259, 262, 32, 32,
2404 254, 34, 272, 210, 33, 33, 162, 64, 143, 25,
2405 35, 32, 210, 217, 31, 216, 245, 279, 168, 221,
2406 33, 33, 33, 267, 32, 221, 244, 64, 269, 273,
2407 33, 31, 97, 33, 35, 25, 231, 34, 31, 64,
2408 32, 33, 233, 33, 244, 34, 34, 260, 33, 34,
2409 18, 270, 271, 32, 34, 210, 24, 206, 32, 97,
2410 32, 221, 210, 253, 254, 255, 261, 280, 33, 269,
2411 25, 25, 231, 33, 33, 206, 262, 263, 264, 269,
2412 33, 34, 254, 34, 33, 35, 33, 33, 32, 33,
2413 34, 253, 25, 245, 32, 233, 244, 33, 269, 33,
2414 206, 32, 33, 263, 233, 33, 33
2417 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
2418 static const unsigned short int yyr1
[] =
2420 0, 140, 141, 141, 141, 141, 141, 141, 141, 141,
2421 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2422 142, 142, 142, 142, 143, 143, 143, 143, 143, 143,
2423 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2424 143, 143, 143, 144, 144, 144, 144, 144, 144, 144,
2425 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2426 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2427 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2428 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2429 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2430 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2431 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2432 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2433 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2434 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2435 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2436 144, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2437 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2438 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2439 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2440 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2441 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2442 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2443 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2444 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2445 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2446 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2447 145, 145, 145, 145, 145, 145, 145, 146, 146, 147,
2448 147, 148, 148, 148, 148, 148, 148, 148, 148, 148,
2449 148, 148, 148, 148, 148, 149, 150, 150, 151, 151,
2450 151, 151, 151, 151, 151, 151, 152, 152, 153, 153,
2451 154, 154, 154, 155, 155, 156, 156, 157, 157, 157,
2452 158, 158, 159, 159, 159, 159, 160, 160, 160, 160,
2453 161, 161, 162, 162, 163, 163, 164, 164, 164, 164,
2454 164, 164, 164, 164, 164, 164, 164, 165, 165, 166,
2455 166, 167, 168, 168, 168, 169, 169, 169, 170, 170,
2456 171, 171, 172, 172, 173, 173, 173, 173, 173, 174,
2457 174, 174, 174, 174, 175, 175, 175, 176, 176, 177,
2458 177, 178, 178, 178, 179, 179, 179, 179, 180, 180,
2459 180, 181, 181, 182, 182, 182, 183, 183, 183, 183,
2460 184, 184, 184, 184, 184, 184, 185, 185, 186, 186,
2461 186, 186, 187, 187, 187, 188, 188, 189, 189, 190,
2462 190, 191, 192, 192, 193, 193, 194, 194, 194, 194,
2463 195, 196, 196, 197, 197, 198, 198, 199, 199, 200,
2464 200, 201, 201, 201, 201, 202, 202, 203, 204, 205,
2465 206, 206, 206, 207, 207, 208, 208, 208, 209, 209,
2466 210, 210, 211, 212, 213, 213, 214, 215, 215, 216,
2467 216, 217, 217, 218, 219, 219, 220, 220, 221, 221,
2468 221, 221, 221, 221, 222, 222, 222, 222, 222, 222,
2469 223, 223, 224, 224, 225, 225, 225, 226, 227, 228,
2470 229, 229, 230, 230, 231, 231, 231, 231, 232, 232,
2471 233, 233, 233, 234, 234, 234, 234, 235, 235, 236,
2472 236, 237, 237, 238, 238, 239, 239, 240, 240, 241,
2473 241, 241, 242, 242, 243, 243, 244, 245, 246, 247,
2474 247, 248, 248, 248, 248, 249, 249, 249, 249, 249,
2475 250, 250, 251, 251, 251, 251, 251, 252, 252, 253,
2476 253, 253, 254, 254, 254, 254, 254, 254, 255, 255,
2477 256, 257, 257, 258, 259, 259, 259, 259, 259, 259,
2478 259, 259, 259, 259, 260, 260, 261, 261, 262, 262,
2479 263, 263, 264, 264, 265, 266, 266, 267, 267, 267,
2480 268, 269, 269, 269, 270, 270, 271, 271, 271, 271,
2481 271, 271, 271, 271, 272, 272, 273, 273, 274, 275,
2482 275, 276, 277, 277, 278, 279, 279, 280
2485 /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
2486 static const unsigned char yyr2
[] =
2488 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
2489 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2490 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2491 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2492 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2493 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2494 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2495 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2496 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2497 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2498 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2499 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2500 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2501 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2502 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2503 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2504 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2505 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2506 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2507 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2508 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2509 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2510 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2511 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2512 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2513 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2514 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2515 1, 1, 1, 1, 1, 1, 1, 0, 1, 1,
2516 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2517 1, 1, 1, 1, 1, 3, 2, 3, 2, 2,
2518 1, 2, 2, 2, 1, 2, 1, 1, 1, 1,
2519 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2520 1, 1, 2, 6, 2, 2, 0, 1, 1, 3,
2521 1, 3, 0, 1, 1, 2, 3, 2, 3, 5,
2522 2, 4, 1, 1, 1, 1, 4, 0, 1, 1,
2523 3, 6, 1, 1, 1, 1, 1, 1, 3, 4,
2524 1, 2, 1, 2, 1, 1, 2, 4, 4, 1,
2525 1, 1, 3, 3, 1, 2, 2, 1, 1, 1,
2526 1, 2, 2, 2, 1, 1, 1, 1, 1, 1,
2527 2, 1, 1, 1, 1, 2, 1, 1, 2, 2,
2528 0, 1, 1, 2, 1, 2, 0, 1, 0, 1,
2529 1, 2, 0, 1, 2, 3, 4, 0, 4, 1,
2530 2, 4, 0, 2, 1, 3, 3, 4, 3, 4,
2531 3, 1, 2, 1, 1, 1, 2, 1, 1, 5,
2532 7, 5, 7, 13, 16, 5, 7, 6, 5, 1,
2533 0, 1, 1, 1, 3, 1, 1, 2, 1, 2,
2534 3, 2, 4, 4, 1, 1, 3, 4, 5, 0,
2535 2, 2, 4, 5, 1, 3, 1, 3, 1, 4,
2536 3, 3, 2, 5, 1, 1, 1, 1, 1, 1,
2537 4, 2, 1, 2, 2, 1, 1, 2, 2, 2,
2538 0, 1, 0, 1, 0, 2, 7, 9, 0, 7,
2539 0, 3, 3, 0, 1, 1, 1, 0, 1, 1,
2540 2, 1, 2, 1, 2, 1, 1, 4, 5, 7,
2541 8, 13, 1, 3, 2, 4, 2, 1, 1, 1,
2542 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2543 1, 2, 1, 1, 1, 1, 1, 3, 6, 1,
2544 2, 1, 1, 1, 1, 2, 1, 1, 3, 4,
2545 6, 8, 12, 5, 1, 1, 1, 1, 1, 1,
2546 1, 1, 1, 1, 0, 2, 1, 3, 1, 1,
2547 0, 1, 1, 3, 3, 6, 1, 0, 1, 1,
2548 3, 1, 1, 3, 5, 6, 1, 1, 1, 1,
2549 1, 1, 1, 1, 0, 2, 1, 3, 3, 1,
2550 1, 3, 1, 3, 4, 0, 1, 1
2554 /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */
2555 static const unsigned char yydprec
[] =
2557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2559 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2560 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2561 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2562 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2563 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2564 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2565 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2566 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2567 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2568 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2569 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2571 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2572 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2573 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2574 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2575 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2576 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2577 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2578 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2579 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2580 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2581 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2582 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2583 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2584 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2585 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2586 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2587 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2588 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2589 0, 0, 1, 2, 2, 2, 0, 0, 0, 0,
2590 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2591 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2592 0, 0, 2, 1, 0, 0, 0, 0, 0, 0,
2593 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
2594 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2596 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2597 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2598 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2599 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2601 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2602 0, 2, 1, 0, 0, 0, 2, 1, 0, 0,
2603 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2604 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2605 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2606 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2607 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2608 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2610 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2611 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2612 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2613 0, 0, 2, 1, 0, 0, 0, 0, 0, 0,
2614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2616 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2617 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2619 0, 0, 0, 0, 0, 0, 0, 0
2622 /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */
2623 static const unsigned char yymerger
[] =
2625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2626 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2627 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2628 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2629 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2631 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2634 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2635 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2637 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2638 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2639 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2640 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2641 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2642 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2643 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2644 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2645 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2646 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2647 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2648 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2649 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2651 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2652 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2653 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2654 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2655 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2656 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2657 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2658 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2659 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2660 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2661 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2662 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2663 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2664 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2665 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2666 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2667 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2668 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2669 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2670 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2671 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2672 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2673 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2674 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2675 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2676 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2677 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2678 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2679 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2680 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2682 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2683 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2684 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2685 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2686 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2687 0, 0, 0, 0, 0, 0, 0, 0
2690 /* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as
2691 in the case of predicates. */
2692 static const yybool yyimmediate
[] =
2694 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2695 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2698 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2699 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2700 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2701 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2702 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2703 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2704 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2705 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2706 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2707 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2708 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2709 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2711 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2712 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2713 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2714 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2715 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2716 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2719 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2720 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2721 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2722 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2723 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2725 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2726 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2727 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2728 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2729 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2730 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2731 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2732 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2733 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2734 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2735 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2736 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2737 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2739 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2740 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2741 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2742 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2743 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2744 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2745 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2746 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2747 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2748 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2749 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2750 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2752 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2753 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2754 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2755 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2756 0, 0, 0, 0, 0, 0, 0, 0
2759 /* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of
2760 list of conflicting reductions corresponding to action entry for
2761 state STATE-NUM in yytable. 0 means no conflicts. The list in
2762 yyconfl is terminated by a rule number of 0. */
2763 static const unsigned short int yyconflp
[] =
2765 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2766 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2767 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2768 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2769 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2770 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2772 0, 0, 0, 0, 0, 0, 0, 3215, 0, 0,
2773 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2774 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2775 0, 0, 0, 3217, 0, 0, 0, 0, 0, 0,
2776 0, 0, 0, 0, 0, 15, 0, 0, 0, 0,
2777 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,
2778 11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2780 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2781 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2782 0, 0, 0, 0, 3197, 0, 0, 0, 0, 0,
2783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2784 0, 0, 0, 0, 0, 0, 13, 0, 0, 0,
2785 0, 0, 0, 0, 0, 0, 0, 3209, 0, 3211,
2786 3213, 0, 3199, 0, 0, 0, 0, 0, 0, 0,
2787 0, 157, 0, 3219, 0, 3221, 3223, 0, 0, 0,
2788 0, 0, 0, 0, 0, 3201, 3203, 0, 0, 0,
2789 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2790 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2791 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2793 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2794 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2795 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2796 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2797 0, 0, 0, 0, 3205, 0, 0, 0, 0, 0,
2798 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2801 3207, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2802 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2803 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2804 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2805 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2806 3225, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2807 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2808 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2809 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2810 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2811 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2812 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2814 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2816 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
2817 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,
2818 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2819 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2820 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2821 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2822 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2823 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,
2824 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2825 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2826 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2827 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2828 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2829 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2830 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2831 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2833 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2834 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2835 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2836 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2837 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2838 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2839 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2840 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2841 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2842 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2844 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2845 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2846 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2847 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2848 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2849 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2850 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2851 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2852 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2853 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2854 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2855 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2856 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2857 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2858 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2859 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2860 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2861 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2862 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2863 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2864 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2865 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2866 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2867 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2868 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2869 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2870 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2871 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2872 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2873 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2874 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2875 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2876 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2877 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2878 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2879 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2880 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2881 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2882 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2883 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2884 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2885 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2886 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2887 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2888 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2889 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2890 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2891 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2892 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2893 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2894 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2896 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2897 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2898 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2899 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2900 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2901 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2902 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2903 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2904 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2905 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2906 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2907 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2908 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2909 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2910 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2911 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2912 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2913 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2914 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2915 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2916 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2917 0, 0, 159, 0, 0, 0, 0, 0, 0, 0,
2918 0, 161, 0, 0, 0, 0, 163, 165, 0, 0,
2919 0, 167, 0, 0, 169, 171, 173, 175, 0, 0,
2920 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
2921 0, 0, 0, 0, 0, 0, 179, 181, 0, 0,
2922 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
2923 185, 0, 0, 0, 0, 187, 189, 191, 193, 195,
2924 0, 0, 0, 0, 0, 0, 0, 197, 0, 0,
2925 0, 0, 0, 0, 0, 0, 0, 199, 0, 201,
2926 203, 205, 207, 209, 211, 0, 213, 0, 0, 215,
2927 217, 219, 221, 223, 225, 227, 229, 231, 233, 235,
2928 237, 239, 241, 243, 245, 247, 0, 0, 0, 0,
2929 0, 0, 0, 0, 249, 0, 0, 0, 0, 251,
2930 253, 0, 0, 0, 255, 0, 0, 257, 259, 261,
2931 263, 0, 0, 0, 265, 0, 0, 0, 0, 0,
2932 0, 0, 0, 0, 0, 0, 0, 0, 0, 267,
2933 269, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2934 0, 0, 271, 273, 0, 0, 0, 0, 275, 277,
2935 279, 281, 283, 0, 0, 0, 0, 0, 0, 0,
2936 285, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2937 287, 0, 289, 291, 293, 295, 297, 299, 0, 301,
2938 0, 0, 303, 305, 307, 309, 311, 313, 315, 317,
2939 319, 321, 323, 325, 327, 329, 331, 333, 335, 0,
2940 0, 0, 0, 0, 0, 0, 0, 337, 0, 0,
2941 0, 0, 339, 341, 0, 0, 0, 343, 0, 0,
2942 345, 347, 349, 351, 0, 0, 0, 353, 0, 0,
2943 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2944 0, 0, 355, 357, 0, 0, 0, 0, 0, 0,
2945 0, 0, 0, 0, 0, 359, 361, 0, 0, 0,
2946 0, 363, 365, 367, 369, 371, 0, 0, 0, 0,
2947 0, 0, 0, 373, 0, 0, 0, 0, 0, 0,
2948 0, 0, 0, 375, 0, 377, 379, 381, 383, 385,
2949 387, 0, 389, 0, 0, 391, 393, 395, 397, 399,
2950 401, 403, 405, 407, 409, 411, 413, 415, 417, 419,
2951 421, 423, 0, 0, 0, 0, 0, 0, 0, 0,
2952 426, 0, 0, 0, 0, 429, 432, 0, 0, 0,
2953 435, 0, 0, 438, 441, 444, 447, 0, 0, 0,
2954 450, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2955 0, 0, 0, 0, 0, 453, 456, 0, 0, 0,
2956 149, 0, 0, 0, 0, 151, 0, 0, 459, 462,
2957 0, 0, 153, 0, 465, 468, 471, 474, 477, 0,
2958 0, 0, 0, 0, 0, 0, 480, 0, 0, 0,
2959 0, 0, 0, 0, 0, 0, 483, 0, 486, 489,
2960 492, 495, 498, 501, 0, 504, 0, 0, 507, 510,
2961 513, 516, 519, 522, 525, 528, 531, 534, 537, 540,
2962 543, 546, 549, 552, 557, 0, 555, 0, 0, 0,
2963 155, 0, 0, 559, 0, 0, 0, 0, 561, 563,
2964 0, 0, 0, 565, 0, 0, 567, 569, 571, 573,
2965 0, 0, 0, 575, 0, 0, 0, 0, 0, 0,
2966 0, 0, 0, 0, 0, 0, 0, 0, 577, 579,
2967 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2968 0, 581, 583, 0, 0, 0, 0, 585, 587, 589,
2969 591, 593, 0, 0, 0, 0, 0, 0, 0, 595,
2970 0, 0, 0, 0, 0, 0, 0, 0, 0, 597,
2971 0, 599, 601, 603, 605, 607, 609, 0, 611, 0,
2972 0, 613, 615, 617, 619, 621, 623, 625, 627, 629,
2973 631, 633, 635, 637, 639, 641, 643, 645, 0, 0,
2974 0, 0, 0, 0, 0, 0, 647, 0, 0, 0,
2975 0, 649, 651, 0, 0, 0, 653, 0, 0, 655,
2976 657, 659, 661, 0, 0, 0, 663, 0, 0, 0,
2977 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2978 0, 665, 667, 0, 0, 0, 0, 0, 0, 0,
2979 0, 0, 0, 0, 669, 671, 0, 0, 0, 0,
2980 673, 675, 677, 679, 681, 0, 0, 0, 0, 0,
2981 0, 0, 683, 0, 0, 0, 0, 0, 0, 0,
2982 0, 0, 685, 0, 687, 689, 691, 693, 695, 697,
2983 0, 699, 0, 0, 701, 703, 705, 707, 709, 711,
2984 713, 715, 717, 719, 721, 723, 725, 727, 729, 731,
2985 733, 0, 0, 0, 0, 0, 0, 0, 0, 735,
2986 0, 0, 0, 0, 737, 739, 0, 0, 0, 741,
2987 0, 0, 743, 745, 747, 749, 0, 0, 0, 751,
2988 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2989 0, 0, 0, 0, 753, 755, 0, 0, 0, 0,
2990 0, 0, 0, 0, 0, 0, 0, 757, 759, 0,
2991 0, 0, 0, 761, 763, 765, 767, 769, 0, 0,
2992 0, 0, 0, 0, 0, 771, 0, 0, 0, 0,
2993 0, 0, 0, 0, 0, 773, 0, 775, 777, 779,
2994 781, 783, 785, 0, 787, 0, 0, 789, 791, 793,
2995 795, 797, 799, 801, 803, 805, 807, 809, 811, 813,
2996 815, 817, 819, 821, 0, 0, 0, 0, 0, 0,
2997 0, 0, 823, 0, 0, 0, 0, 825, 827, 0,
2998 0, 0, 829, 0, 0, 831, 833, 835, 837, 0,
2999 0, 0, 839, 0, 0, 0, 0, 0, 0, 0,
3000 0, 0, 0, 0, 0, 0, 0, 841, 843, 0,
3001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3002 845, 847, 0, 0, 0, 0, 849, 851, 853, 855,
3003 857, 0, 0, 0, 0, 0, 0, 0, 859, 0,
3004 0, 0, 0, 0, 0, 0, 0, 0, 861, 0,
3005 863, 865, 867, 869, 871, 873, 0, 875, 0, 0,
3006 877, 879, 881, 883, 885, 887, 889, 891, 893, 895,
3007 897, 899, 901, 903, 905, 907, 909, 0, 0, 0,
3008 0, 0, 0, 0, 0, 911, 0, 0, 0, 0,
3009 913, 915, 0, 0, 0, 917, 0, 0, 919, 921,
3010 923, 925, 0, 0, 0, 927, 0, 0, 0, 0,
3011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3012 929, 931, 0, 0, 0, 0, 0, 0, 0, 0,
3013 0, 0, 0, 933, 935, 0, 0, 0, 0, 937,
3014 939, 941, 943, 945, 0, 0, 0, 0, 0, 0,
3015 0, 947, 0, 0, 0, 0, 0, 0, 0, 0,
3016 0, 949, 0, 951, 953, 955, 957, 959, 961, 0,
3017 963, 0, 0, 965, 967, 969, 971, 973, 975, 977,
3018 979, 981, 983, 985, 987, 989, 991, 993, 995, 997,
3019 0, 0, 0, 0, 0, 0, 0, 0, 999, 0,
3020 0, 0, 0, 1001, 1003, 0, 0, 0, 1005, 0,
3021 0, 1007, 1009, 1011, 1013, 0, 0, 0, 1015, 0,
3022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3023 0, 0, 0, 1017, 1019, 0, 0, 0, 0, 0,
3024 0, 0, 0, 0, 0, 0, 1021, 1023, 0, 0,
3025 0, 0, 1025, 1027, 1029, 1031, 1033, 0, 0, 0,
3026 0, 0, 0, 0, 1035, 0, 0, 0, 0, 0,
3027 0, 0, 0, 0, 1037, 0, 1039, 1041, 1043, 1045,
3028 1047, 1049, 0, 1051, 0, 0, 1053, 1055, 1057, 1059,
3029 1061, 1063, 1065, 1067, 1069, 1071, 1073, 1075, 1077, 1079,
3030 1081, 1083, 1085, 0, 0, 0, 0, 0, 0, 0,
3031 0, 1087, 0, 0, 0, 0, 1089, 1091, 0, 0,
3032 0, 1093, 0, 0, 1095, 1097, 1099, 1101, 0, 0,
3033 0, 1103, 0, 0, 0, 0, 0, 0, 0, 0,
3034 0, 0, 0, 0, 0, 0, 1105, 1107, 0, 0,
3035 0, 0, 0, 0, 0, 0, 0, 0, 0, 1109,
3036 1111, 0, 0, 0, 0, 1113, 1115, 1117, 1119, 1121,
3037 0, 0, 0, 0, 0, 0, 0, 1123, 0, 0,
3038 0, 0, 0, 0, 0, 0, 0, 1125, 0, 1127,
3039 1129, 1131, 1133, 1135, 1137, 0, 1139, 0, 0, 1141,
3040 1143, 1145, 1147, 1149, 1151, 1153, 1155, 1157, 1159, 1161,
3041 1163, 1165, 1167, 1169, 1171, 1173, 0, 0, 0, 0,
3042 0, 0, 0, 0, 1175, 0, 0, 0, 0, 1177,
3043 1179, 0, 0, 0, 1181, 0, 0, 1183, 1185, 1187,
3044 1189, 0, 0, 0, 1191, 0, 0, 0, 0, 0,
3045 0, 0, 0, 0, 0, 0, 0, 0, 0, 1193,
3046 1195, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3047 0, 0, 1197, 1199, 0, 0, 0, 0, 1201, 1203,
3048 1205, 1207, 1209, 0, 0, 0, 0, 0, 0, 0,
3049 1211, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3050 1213, 0, 1215, 1217, 1219, 1221, 1223, 1225, 0, 1227,
3051 0, 0, 1229, 1231, 1233, 1235, 1237, 1239, 1241, 1243,
3052 1245, 1247, 1249, 1251, 1253, 1255, 1257, 1259, 1261, 0,
3053 0, 0, 0, 0, 0, 0, 0, 1263, 0, 0,
3054 0, 0, 1265, 1267, 0, 0, 0, 1269, 0, 0,
3055 1271, 1273, 1275, 1277, 0, 0, 0, 1279, 0, 0,
3056 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3057 0, 0, 1281, 1283, 0, 0, 0, 0, 0, 0,
3058 0, 0, 0, 0, 0, 1285, 1287, 0, 0, 0,
3059 0, 1289, 1291, 1293, 1295, 1297, 0, 0, 0, 0,
3060 0, 0, 0, 1299, 0, 0, 0, 0, 0, 0,
3061 0, 0, 0, 1301, 0, 1303, 1305, 1307, 1309, 1311,
3062 1313, 0, 1315, 0, 0, 1317, 1319, 1321, 1323, 1325,
3063 1327, 1329, 1331, 1333, 1335, 1337, 1339, 1341, 1343, 1345,
3064 1347, 1349, 0, 0, 0, 0, 0, 0, 0, 0,
3065 1351, 0, 0, 0, 0, 1353, 1355, 0, 0, 0,
3066 1357, 0, 0, 1359, 1361, 1363, 1365, 0, 0, 0,
3067 1367, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3068 0, 0, 0, 0, 0, 1369, 1371, 0, 0, 0,
3069 0, 0, 0, 0, 0, 0, 0, 0, 1373, 1375,
3070 0, 0, 0, 0, 1377, 1379, 1381, 1383, 1385, 0,
3071 0, 0, 0, 0, 0, 0, 1387, 0, 0, 0,
3072 0, 0, 0, 0, 0, 0, 1389, 0, 1391, 1393,
3073 1395, 1397, 1399, 1401, 0, 1403, 0, 0, 1405, 1407,
3074 1409, 1411, 1413, 1415, 1417, 1419, 1421, 1423, 1425, 1427,
3075 1429, 1431, 1433, 1435, 1437, 0, 0, 0, 0, 0,
3076 0, 0, 0, 1439, 0, 0, 0, 0, 1441, 1443,
3077 0, 0, 0, 1445, 0, 0, 1447, 1449, 1451, 1453,
3078 0, 0, 0, 1455, 0, 0, 0, 0, 0, 0,
3079 0, 0, 0, 0, 0, 0, 0, 0, 1457, 1459,
3080 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3081 0, 1461, 1463, 0, 0, 0, 0, 1465, 1467, 1469,
3082 1471, 1473, 0, 0, 0, 0, 0, 0, 0, 1475,
3083 0, 0, 0, 0, 0, 0, 0, 0, 0, 1477,
3084 0, 1479, 1481, 1483, 1485, 1487, 1489, 0, 1491, 0,
3085 0, 1493, 1495, 1497, 1499, 1501, 1503, 1505, 1507, 1509,
3086 1511, 1513, 1515, 1517, 1519, 1521, 1523, 1525, 0, 0,
3087 0, 0, 0, 0, 0, 0, 1527, 0, 0, 0,
3088 0, 1529, 1531, 0, 0, 0, 1533, 0, 0, 1535,
3089 1537, 1539, 1541, 0, 0, 0, 1543, 0, 0, 0,
3090 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3091 0, 1545, 1547, 0, 0, 0, 0, 0, 0, 0,
3092 0, 0, 0, 0, 1549, 1551, 0, 0, 0, 0,
3093 1553, 1555, 1557, 1559, 1561, 0, 0, 0, 0, 0,
3094 0, 0, 1563, 0, 0, 0, 0, 0, 0, 0,
3095 0, 0, 1565, 0, 1567, 1569, 1571, 1573, 1575, 1577,
3096 0, 1579, 0, 0, 1581, 1583, 1585, 1587, 1589, 1591,
3097 1593, 1595, 1597, 1599, 1601, 1603, 1605, 1607, 1609, 1611,
3098 1613, 0, 0, 0, 0, 0, 0, 0, 0, 1615,
3099 0, 0, 0, 0, 1617, 1619, 0, 0, 0, 1621,
3100 0, 0, 1623, 1625, 1627, 1629, 0, 0, 0, 1631,
3101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3102 0, 0, 0, 0, 1633, 1635, 0, 0, 0, 0,
3103 0, 0, 0, 0, 0, 0, 0, 1637, 1639, 0,
3104 0, 0, 0, 1641, 1643, 1645, 1647, 1649, 0, 0,
3105 0, 0, 0, 0, 0, 1651, 0, 0, 0, 0,
3106 0, 0, 0, 0, 0, 1653, 0, 1655, 1657, 1659,
3107 1661, 1663, 1665, 0, 1667, 0, 0, 1669, 1671, 1673,
3108 1675, 1677, 1679, 1681, 1683, 1685, 1687, 1689, 1691, 1693,
3109 1695, 1697, 1699, 1701, 0, 0, 0, 0, 0, 0,
3110 0, 0, 1703, 0, 0, 0, 0, 1705, 1707, 0,
3111 0, 0, 1709, 0, 0, 1711, 1713, 1715, 1717, 0,
3112 0, 0, 1719, 0, 0, 0, 0, 0, 0, 0,
3113 0, 0, 0, 0, 0, 0, 0, 1721, 1723, 0,
3114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3115 1725, 1727, 0, 0, 0, 0, 1729, 1731, 1733, 1735,
3116 1737, 0, 0, 0, 0, 0, 0, 0, 1739, 0,
3117 0, 0, 0, 0, 0, 0, 0, 0, 1741, 0,
3118 1743, 1745, 1747, 1749, 1751, 1753, 0, 1755, 0, 0,
3119 1757, 1759, 1761, 1763, 1765, 1767, 1769, 1771, 1773, 1775,
3120 1777, 1779, 1781, 1783, 1785, 1787, 1789, 0, 0, 0,
3121 0, 0, 0, 0, 0, 1791, 0, 0, 0, 0,
3122 1793, 1795, 0, 0, 0, 1797, 0, 0, 1799, 1801,
3123 1803, 1805, 0, 0, 0, 1807, 0, 0, 0, 0,
3124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3125 1809, 1811, 0, 0, 0, 0, 0, 0, 0, 0,
3126 0, 0, 0, 1813, 1815, 0, 0, 0, 0, 1817,
3127 1819, 1821, 1823, 1825, 0, 0, 0, 0, 0, 0,
3128 0, 1827, 0, 0, 0, 0, 0, 0, 0, 0,
3129 0, 1829, 0, 1831, 1833, 1835, 1837, 1839, 1841, 0,
3130 1843, 0, 0, 1845, 1847, 1849, 1851, 1853, 1855, 1857,
3131 1859, 1861, 1863, 1865, 1867, 1869, 1871, 1873, 1875, 1877,
3132 0, 0, 0, 0, 0, 0, 0, 0, 1879, 0,
3133 0, 0, 0, 1881, 1883, 0, 0, 0, 1885, 0,
3134 0, 1887, 1889, 1891, 1893, 0, 0, 0, 1895, 0,
3135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3136 0, 0, 0, 1897, 1899, 0, 0, 0, 0, 0,
3137 0, 0, 0, 0, 0, 0, 1901, 1903, 0, 0,
3138 0, 0, 1905, 1907, 1909, 1911, 1913, 0, 0, 0,
3139 0, 0, 0, 0, 1915, 0, 0, 0, 0, 0,
3140 0, 0, 0, 0, 1917, 0, 1919, 1921, 1923, 1925,
3141 1927, 1929, 0, 1931, 0, 0, 1933, 1935, 1937, 1939,
3142 1941, 1943, 1945, 1947, 1949, 1951, 1953, 1955, 1957, 1959,
3143 1961, 1963, 1965, 0, 0, 0, 0, 0, 0, 0,
3144 0, 1967, 0, 0, 0, 0, 1969, 1971, 0, 0,
3145 0, 1973, 0, 0, 1975, 1977, 1979, 1981, 0, 0,
3146 0, 1983, 0, 0, 0, 0, 0, 0, 0, 0,
3147 0, 0, 0, 0, 0, 0, 1985, 1987, 0, 0,
3148 0, 0, 0, 0, 0, 0, 0, 0, 0, 1989,
3149 1991, 0, 0, 0, 0, 1993, 1995, 1997, 1999, 2001,
3150 0, 0, 0, 0, 0, 0, 0, 2003, 0, 0,
3151 0, 0, 0, 0, 0, 0, 0, 2005, 0, 2007,
3152 2009, 2011, 2013, 2015, 2017, 0, 2019, 0, 0, 2021,
3153 2023, 2025, 2027, 2029, 2031, 2033, 2035, 2037, 2039, 2041,
3154 2043, 2045, 2047, 2049, 2051, 2053, 0, 0, 0, 0,
3155 0, 0, 0, 0, 2055, 0, 0, 0, 0, 2057,
3156 2059, 0, 0, 0, 2061, 0, 0, 2063, 2065, 2067,
3157 2069, 0, 0, 0, 2071, 0, 0, 0, 0, 0,
3158 0, 0, 0, 0, 0, 0, 0, 0, 0, 2073,
3159 2075, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3160 0, 0, 2077, 2079, 0, 0, 0, 0, 2081, 2083,
3161 2085, 2087, 2089, 0, 0, 0, 0, 0, 0, 0,
3162 2091, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3163 2093, 0, 2095, 2097, 2099, 2101, 2103, 2105, 0, 2107,
3164 0, 0, 2109, 2111, 2113, 2115, 2117, 2119, 2121, 2123,
3165 2125, 2127, 2129, 2131, 2133, 2135, 2137, 2139, 2141, 0,
3166 0, 0, 0, 0, 0, 0, 0, 2143, 0, 0,
3167 0, 0, 2145, 2147, 0, 0, 0, 2149, 0, 0,
3168 2151, 2153, 2155, 2157, 0, 0, 0, 2159, 0, 0,
3169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3170 0, 0, 2161, 2163, 0, 0, 0, 0, 0, 0,
3171 0, 0, 0, 0, 0, 2165, 2167, 0, 0, 0,
3172 0, 2169, 2171, 2173, 2175, 2177, 0, 0, 0, 0,
3173 0, 0, 0, 2179, 0, 0, 0, 0, 0, 0,
3174 0, 0, 0, 2181, 0, 2183, 2185, 2187, 2189, 2191,
3175 2193, 0, 2195, 0, 0, 2197, 2199, 2201, 2203, 2205,
3176 2207, 2209, 2211, 2213, 2215, 2217, 2219, 2221, 2223, 2225,
3177 2227, 2229, 0, 0, 0, 0, 0, 0, 0, 0,
3178 2231, 0, 0, 0, 0, 2233, 2235, 0, 0, 0,
3179 2237, 0, 0, 2239, 2241, 2243, 2245, 0, 0, 0,
3180 2247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3181 0, 0, 0, 0, 0, 2249, 2251, 0, 0, 0,
3182 0, 0, 0, 0, 0, 0, 0, 0, 2253, 2255,
3183 0, 0, 0, 0, 2257, 2259, 2261, 2263, 2265, 0,
3184 0, 0, 0, 0, 0, 0, 2267, 0, 0, 0,
3185 0, 0, 0, 0, 0, 0, 2269, 0, 2271, 2273,
3186 2275, 2277, 2279, 2281, 0, 2283, 0, 0, 2285, 2287,
3187 2289, 2291, 2293, 2295, 2297, 2299, 2301, 2303, 2305, 2307,
3188 2309, 2311, 2313, 2315, 2317, 0, 0, 0, 0, 0,
3189 0, 0, 0, 2319, 0, 0, 0, 0, 2321, 2323,
3190 0, 0, 0, 2325, 0, 0, 2327, 2329, 2331, 2333,
3191 0, 0, 0, 2335, 0, 0, 0, 0, 0, 0,
3192 0, 0, 0, 0, 0, 0, 0, 0, 2337, 2339,
3193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3194 0, 2341, 2343, 0, 0, 0, 0, 2345, 2347, 2349,
3195 2351, 2353, 0, 0, 0, 0, 0, 0, 0, 2355,
3196 0, 0, 0, 0, 0, 0, 0, 0, 0, 2357,
3197 0, 2359, 2361, 2363, 2365, 2367, 2369, 0, 2371, 0,
3198 0, 2373, 2375, 2377, 2379, 2381, 2383, 2385, 2387, 2389,
3199 2391, 2393, 2395, 2397, 2399, 2401, 2403, 2405, 0, 0,
3200 0, 0, 0, 0, 0, 0, 2407, 0, 0, 0,
3201 0, 2409, 2411, 0, 0, 0, 2413, 0, 0, 2415,
3202 2417, 2419, 2421, 0, 0, 0, 2423, 0, 0, 0,
3203 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3204 0, 2425, 2427, 0, 0, 0, 0, 0, 0, 0,
3205 0, 0, 0, 0, 2429, 2431, 0, 0, 0, 0,
3206 2433, 2435, 2437, 2439, 2441, 0, 0, 0, 0, 0,
3207 0, 0, 2443, 0, 0, 0, 0, 0, 0, 0,
3208 0, 0, 2445, 0, 2447, 2449, 2451, 2453, 2455, 2457,
3209 0, 2459, 0, 0, 2461, 2463, 2465, 2467, 2469, 2471,
3210 2473, 2475, 2477, 2479, 2481, 2483, 2485, 2487, 2489, 2491,
3211 2493, 0, 0, 0, 0, 0, 0, 0, 0, 2495,
3212 0, 0, 0, 0, 2497, 2499, 0, 0, 0, 2501,
3213 0, 0, 2503, 2505, 2507, 2509, 0, 0, 0, 2511,
3214 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3215 0, 0, 0, 0, 2513, 2515, 0, 0, 0, 0,
3216 0, 0, 0, 0, 0, 0, 0, 2517, 2519, 0,
3217 0, 0, 0, 2521, 2523, 2525, 2527, 2529, 0, 0,
3218 0, 0, 0, 0, 0, 2531, 0, 0, 0, 0,
3219 0, 0, 0, 0, 0, 2533, 0, 2535, 2537, 2539,
3220 2541, 2543, 2545, 0, 2547, 0, 0, 2549, 2551, 2553,
3221 2555, 2557, 2559, 2561, 2563, 2565, 2567, 2569, 2571, 2573,
3222 2575, 2577, 2579, 2581, 0, 0, 0, 0, 0, 0,
3223 0, 0, 2583, 0, 0, 0, 0, 2585, 2587, 0,
3224 0, 0, 2589, 0, 0, 2591, 2593, 2595, 2597, 0,
3225 0, 0, 2599, 0, 0, 0, 0, 0, 0, 0,
3226 0, 0, 0, 0, 0, 0, 0, 2601, 2603, 0,
3227 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3228 2605, 2607, 0, 0, 0, 0, 2609, 2611, 2613, 2615,
3229 2617, 0, 0, 0, 0, 0, 0, 0, 2619, 0,
3230 0, 0, 0, 0, 0, 0, 0, 0, 2621, 0,
3231 2623, 2625, 2627, 2629, 2631, 2633, 0, 2635, 0, 0,
3232 2637, 2639, 2641, 2643, 2645, 2647, 2649, 2651, 2653, 2655,
3233 2657, 2659, 2661, 2663, 2665, 2667, 2669, 0, 0, 0,
3234 0, 0, 0, 0, 0, 2671, 0, 0, 0, 0,
3235 2673, 2675, 0, 0, 0, 2677, 0, 0, 2679, 2681,
3236 2683, 2685, 0, 0, 0, 2687, 0, 0, 0, 0,
3237 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3238 2689, 2691, 0, 0, 0, 0, 0, 0, 0, 0,
3239 0, 0, 0, 2693, 2695, 0, 0, 0, 0, 2697,
3240 2699, 2701, 2703, 2705, 0, 0, 0, 0, 0, 0,
3241 0, 2707, 0, 0, 0, 0, 0, 0, 0, 0,
3242 0, 2709, 0, 2711, 2713, 2715, 2717, 2719, 2721, 0,
3243 2723, 0, 0, 2725, 2727, 2729, 2731, 2733, 2735, 2737,
3244 2739, 2741, 2743, 2745, 2747, 2749, 2751, 2753, 2755, 2757,
3245 0, 0, 0, 0, 0, 0, 0, 0, 2759, 0,
3246 0, 0, 0, 2761, 2763, 0, 0, 0, 2765, 0,
3247 0, 2767, 2769, 2771, 2773, 0, 0, 0, 2775, 0,
3248 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3249 0, 0, 0, 2777, 2779, 0, 0, 0, 0, 0,
3250 0, 0, 0, 0, 0, 0, 2781, 2783, 0, 0,
3251 0, 0, 2785, 2787, 2789, 2791, 2793, 0, 0, 0,
3252 0, 0, 0, 0, 2795, 0, 0, 0, 0, 0,
3253 0, 0, 0, 0, 2797, 0, 2799, 2801, 2803, 2805,
3254 2807, 2809, 0, 2811, 0, 0, 2813, 2815, 2817, 2819,
3255 2821, 2823, 2825, 2827, 2829, 2831, 2833, 2835, 2837, 2839,
3256 2841, 2843, 2845, 0, 0, 0, 0, 0, 0, 0,
3257 0, 2847, 0, 0, 0, 0, 2849, 2851, 0, 0,
3258 0, 2853, 0, 0, 2855, 2857, 2859, 2861, 0, 0,
3259 0, 2863, 0, 0, 0, 0, 0, 0, 0, 0,
3260 0, 0, 0, 0, 0, 0, 2865, 2867, 0, 0,
3261 0, 0, 0, 0, 0, 0, 0, 0, 0, 2869,
3262 2871, 0, 0, 0, 0, 2873, 2875, 2877, 2879, 2881,
3263 0, 0, 0, 0, 0, 0, 0, 2883, 0, 0,
3264 0, 0, 0, 0, 0, 0, 0, 2885, 0, 2887,
3265 2889, 2891, 2893, 2895, 2897, 0, 2899, 0, 0, 2901,
3266 2903, 2905, 2907, 2909, 2911, 2913, 2915, 2917, 2919, 2921,
3267 2923, 2925, 2927, 2929, 2931, 2933, 0, 0, 0, 0,
3268 0, 0, 0, 0, 2935, 0, 0, 0, 0, 2937,
3269 2939, 0, 0, 0, 2941, 0, 0, 2943, 2945, 2947,
3270 2949, 0, 0, 0, 2951, 0, 0, 0, 0, 0,
3271 0, 0, 0, 0, 0, 0, 0, 0, 0, 2953,
3272 2955, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3273 0, 0, 2957, 2959, 0, 0, 0, 0, 2961, 2963,
3274 2965, 2967, 2969, 0, 0, 0, 0, 0, 0, 0,
3275 2971, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3276 2973, 0, 2975, 2977, 2979, 2981, 2983, 2985, 0, 2987,
3277 0, 0, 2989, 2991, 2993, 2995, 2997, 2999, 3001, 3003,
3278 3005, 3007, 3009, 3011, 3013, 3015, 3017, 3019, 3021, 0,
3279 0, 0, 0, 0, 0, 0, 0, 3023, 0, 0,
3280 0, 0, 3025, 3027, 0, 0, 0, 3029, 0, 0,
3281 3031, 3033, 3035, 3037, 0, 0, 0, 3039, 0, 0,
3282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3283 0, 0, 3041, 3043, 0, 0, 0, 0, 0, 0,
3284 0, 0, 0, 0, 0, 3045, 3047, 0, 0, 0,
3285 0, 3049, 3051, 3053, 3055, 3057, 0, 0, 0, 0,
3286 0, 0, 0, 3059, 0, 0, 0, 0, 0, 0,
3287 0, 0, 0, 3061, 0, 3063, 3065, 3067, 3069, 3071,
3288 3073, 0, 3075, 0, 0, 3077, 3079, 3081, 3083, 3085,
3289 3087, 3089, 3091, 3093, 3095, 3097, 3099, 3101, 3103, 3105,
3290 3107, 3109, 0, 0, 0, 0, 0, 0, 0, 0,
3291 3111, 0, 0, 0, 0, 3113, 3115, 0, 0, 0,
3292 3117, 0, 0, 3119, 3121, 3123, 3125, 0, 0, 0,
3293 3127, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3294 0, 0, 0, 0, 0, 3129, 3131, 0, 0, 0,
3295 0, 0, 0, 0, 0, 0, 0, 0, 3133, 3135,
3296 0, 0, 0, 0, 3137, 3139, 3141, 3143, 3145, 0,
3297 0, 0, 0, 0, 0, 0, 3147, 0, 0, 0,
3298 0, 0, 0, 0, 0, 0, 3149, 0, 3151, 3153,
3299 3155, 3157, 3159, 3161, 0, 3163, 0, 0, 3165, 3167,
3300 3169, 3171, 3173, 3175, 3177, 3179, 3181, 3183, 3185, 3187,
3301 3189, 3191, 3193, 3195, 0, 0, 0, 0, 0, 0,
3302 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3303 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3304 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3305 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3307 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3311 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3312 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,
3313 0, 0, 0, 0, 0, 0, 19, 0, 0, 0,
3314 0, 21, 23, 0, 0, 0, 25, 0, 0, 0,
3315 0, 0, 0, 27, 29, 31, 33, 35, 37, 39,
3316 41, 43, 45, 47, 49, 0, 51, 53, 55, 57,
3317 59, 61, 63, 65, 67, 69, 71, 73, 75, 77,
3318 79, 81, 83, 85, 0, 0, 0, 0, 0, 87,
3319 89, 91, 93, 95, 97, 0, 0, 0, 0, 0,
3320 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3321 0, 99, 101, 0, 103, 105, 107, 109, 111, 113,
3322 0, 115, 0, 0, 117, 119, 121, 123, 125, 127,
3323 129, 131, 133, 135, 137, 139, 141, 143, 145, 147,
3324 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3325 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3326 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3327 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3329 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3330 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3331 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3333 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3334 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3335 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3336 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3339 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3346 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3347 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3348 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3349 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3350 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3351 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3353 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3356 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3357 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3358 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3359 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3360 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3361 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3362 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3363 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3364 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3366 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3367 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3369 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3373 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3374 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3375 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3376 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3377 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3378 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3379 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3380 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3381 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3382 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3383 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3384 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3385 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3386 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3387 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3388 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3389 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3390 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3391 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3392 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3394 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3395 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3396 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3397 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3399 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3400 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3401 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3402 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3403 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3404 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3405 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3406 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3407 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3408 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3411 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3412 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3413 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3414 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3416 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3417 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3418 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3420 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3421 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3422 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3423 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3427 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3428 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3429 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3430 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3432 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3435 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3436 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3437 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3438 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3439 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3443 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3445 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3446 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3447 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3448 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3449 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3450 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3451 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3452 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3453 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3454 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3455 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3457 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3458 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3460 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3461 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3462 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3463 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3464 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3465 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3466 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3468 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3470 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3471 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3472 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3473 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3474 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3475 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3476 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3481 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3482 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3483 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3484 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3486 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3487 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3488 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3489 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3490 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3491 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3492 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3493 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3494 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3496 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3497 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3499 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3500 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3501 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3502 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3503 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3504 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3506 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3507 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3508 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3509 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3511 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3515 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3516 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3517 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3519 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3520 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3521 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3522 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3523 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3524 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3525 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3526 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3527 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3528 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3529 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3530 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3531 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3532 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3533 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3535 0, 3227, 0, 0, 0, 0, 0, 0, 0, 0,
3536 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3540 /* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
3541 0, pointed into by YYCONFLP. */
3542 static const short int yyconfl
[] =
3544 0, 386, 0, 386, 0, 386, 0, 386, 0, 377,
3545 0, 377, 0, 400, 0, 458, 0, 612, 0, 612,
3546 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3547 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3548 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3549 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3550 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3551 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3552 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3553 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3554 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3555 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3556 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3557 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3558 0, 612, 0, 612, 0, 612, 0, 612, 0, 386,
3559 0, 386, 0, 386, 0, 386, 0, 400, 0, 43,
3560 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3561 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3562 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3563 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3564 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3565 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3566 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3567 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3568 0, 43, 0, 43, 0, 43, 0, 52, 0, 52,
3569 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3570 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3571 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3572 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3573 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3574 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3575 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3576 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3577 0, 52, 0, 52, 0, 613, 0, 613, 0, 613,
3578 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3579 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3580 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3581 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3582 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3583 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3584 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3585 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3586 0, 613, 0, 574, 612, 0, 574, 612, 0, 574,
3587 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3588 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3589 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3590 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3591 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3592 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3593 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3594 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3595 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3596 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3597 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3598 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3599 612, 0, 574, 612, 0, 612, 0, 62, 0, 62,
3600 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3601 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3602 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3603 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3604 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3605 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3606 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3607 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3608 0, 62, 0, 62, 0, 106, 0, 106, 0, 106,
3609 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3610 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3611 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3612 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3613 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3614 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3615 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3616 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3617 0, 106, 0, 107, 0, 107, 0, 107, 0, 107,
3618 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3619 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3620 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3621 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3622 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3623 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3624 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3625 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3626 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3627 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3628 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3629 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3630 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3631 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3632 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3633 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3634 0, 105, 0, 105, 0, 105, 0, 105, 0, 103,
3635 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3636 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3637 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3638 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3639 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3640 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3641 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3642 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3643 0, 103, 0, 103, 0, 103, 0, 104, 0, 104,
3644 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3645 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3646 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3647 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3648 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3649 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3650 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3651 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3652 0, 104, 0, 104, 0, 124, 0, 124, 0, 124,
3653 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3654 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3655 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3656 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3657 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3658 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3659 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3660 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3661 0, 124, 0, 126, 0, 126, 0, 126, 0, 126,
3662 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3663 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3664 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3665 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3666 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3667 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3668 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3669 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3670 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3671 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3672 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3673 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3674 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3675 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3676 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3677 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3678 0, 127, 0, 127, 0, 127, 0, 127, 0, 128,
3679 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3680 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3681 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3682 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3683 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3684 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3685 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3686 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3687 0, 128, 0, 128, 0, 128, 0, 129, 0, 129,
3688 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3689 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3690 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3691 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3692 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3693 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3694 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3695 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3696 0, 129, 0, 129, 0, 130, 0, 130, 0, 130,
3697 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3698 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3699 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3700 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3701 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3702 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3703 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3704 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3705 0, 130, 0, 131, 0, 131, 0, 131, 0, 131,
3706 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3707 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3708 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3709 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3710 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3711 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3712 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3713 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3714 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3715 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3716 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3717 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3718 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3719 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3720 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3721 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3722 0, 160, 0, 160, 0, 160, 0, 160, 0, 582,
3723 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3724 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3725 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3726 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3727 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3728 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3729 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3730 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3731 0, 582, 0, 582, 0, 582, 0, 581, 0, 581,
3732 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3733 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3734 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3735 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3736 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3737 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3738 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3739 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3740 0, 581, 0, 581, 0, 579, 0, 579, 0, 579,
3741 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3742 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3743 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3744 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3745 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3746 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3747 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3748 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3749 0, 579, 0, 577, 0, 577, 0, 577, 0, 577,
3750 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3751 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3752 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3753 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3754 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3755 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3756 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3757 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3758 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3759 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3760 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3761 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3762 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3763 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3764 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3765 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3766 0, 578, 0, 578, 0, 578, 0, 578, 0, 580,
3767 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3768 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3769 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3770 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3771 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3772 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3773 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3774 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3775 0, 580, 0, 580, 0, 580, 0, 576, 0, 576,
3776 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3777 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3778 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3779 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3780 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3781 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3782 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3783 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3784 0, 576, 0, 576, 0, 575, 0, 575, 0, 575,
3785 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3786 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3787 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3788 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3789 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3790 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3791 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3792 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3793 0, 575, 0, 583, 0, 583, 0, 583, 0, 583,
3794 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3795 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3796 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3797 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3798 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3799 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3800 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3801 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3802 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3803 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3804 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3805 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3806 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3807 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3808 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3809 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3810 0, 144, 0, 144, 0, 144, 0, 144, 0, 611,
3811 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3812 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3813 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3814 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3815 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3816 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3817 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3818 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3819 0, 611, 0, 611, 0, 611, 0, 609, 0, 609,
3820 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3821 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3822 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3823 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3824 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3825 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3826 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3827 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3828 0, 609, 0, 609, 0, 608, 0, 608, 0, 608,
3829 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3830 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3831 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3832 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3833 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3834 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3835 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3836 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3837 0, 608, 0, 610, 0, 610, 0, 610, 0, 610,
3838 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3839 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3840 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3841 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3842 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3843 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3844 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3845 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3846 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3847 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3848 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3849 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3850 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3851 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3852 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3853 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3854 0, 607, 0, 607, 0, 607, 0, 607, 0, 606,
3855 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3856 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3857 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3858 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3859 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3860 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3861 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3862 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3863 0, 606, 0, 606, 0, 606, 0, 501, 0, 501,
3864 0, 451, 0, 451, 0, 452, 0, 42, 0, 487,
3865 0, 487, 0, 487, 0, 613, 0, 386, 0, 562,
3866 0, 562, 0, 562, 0, 613, 0, 339, 0, 483,
3870 /* Error token number */
3877 #define yynerrs (yystackp->yyerrcnt)
3879 #define yychar (yystackp->yyrawchar)
3881 #define yylval (yystackp->yyval)
3883 #define yylloc (yystackp->yyloc)
3884 #define psi_parser_proc_nerrs yynerrs
3885 #define psi_parser_proc_char yychar
3886 #define psi_parser_proc_lval yylval
3887 #define psi_parser_proc_lloc yylloc
3889 static const int YYEOF
= 0;
3890 static const int YYEMPTY
= -2;
3892 typedef enum { yyok
, yyaccept
, yyabort
, yyerr
} YYRESULTTAG
;
3894 #define YYCHK(YYE) \
3896 YYRESULTTAG yychk_flag = YYE; \
3897 if (yychk_flag != yyok) \
3898 return yychk_flag; \
3904 # define YYFPRINTF fprintf
3907 /* This macro is provided for backward compatibility. */
3908 #ifndef YY_LOCATION_PRINT
3909 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3913 # define YYDPRINTF(Args) \
3920 /*----------------------------------------.
3921 | Print this symbol's value on YYOUTPUT. |
3922 `----------------------------------------*/
3925 yy_symbol_value_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
3927 FILE *yyo
= yyoutput
;
3938 /*--------------------------------.
3939 | Print this symbol on YYOUTPUT. |
3940 `--------------------------------*/
3943 yy_symbol_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
3945 YYFPRINTF (yyoutput
, "%s %s (",
3946 yytype
< YYNTOKENS
? "token" : "nterm", yytname
[yytype
]);
3948 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
, P
, tokens
, index
);
3949 YYFPRINTF (yyoutput
, ")");
3952 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
3956 YYFPRINTF (stderr, "%s ", Title); \
3957 yy_symbol_print (stderr, Type, Value, P, tokens, index); \
3958 YYFPRINTF (stderr, "\n"); \
3962 /* Nonzero means print parse trace. It is left uninitialized so that
3963 multiple parsers can coexist. */
3967 static void yypstack (struct yyGLRStack
* yystackp
, size_t yyk
)
3968 YY_ATTRIBUTE_UNUSED
;
3969 static void yypdumpstack (struct yyGLRStack
* yystackp
)
3970 YY_ATTRIBUTE_UNUSED
;
3972 #else /* !YYDEBUG */
3974 # define YYDPRINTF(Args)
3975 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3977 #endif /* !YYDEBUG */
3979 /* YYINITDEPTH -- initial size of the parser's stacks. */
3981 # define YYINITDEPTH 200
3984 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3985 if the built-in stack extension method is used).
3987 Do not make this value too large; the results are undefined if
3988 SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem)
3989 evaluated with infinite-precision integer arithmetic. */
3992 # define YYMAXDEPTH 10000
3995 /* Minimum number of free items on the stack allowed after an
3996 allocation. This is to allow allocation and initialization
3997 to be completed by functions that call yyexpandGLRStack before the
3998 stack is expanded, thus insuring that all necessary pointers get
3999 properly redirected to new data. */
4000 #define YYHEADROOM 2
4002 #ifndef YYSTACKEXPANDABLE
4003 # define YYSTACKEXPANDABLE 1
4006 #if YYSTACKEXPANDABLE
4007 # define YY_RESERVE_GLRSTACK(Yystack) \
4009 if (Yystack->yyspaceLeft < YYHEADROOM) \
4010 yyexpandGLRStack (Yystack); \
4013 # define YY_RESERVE_GLRSTACK(Yystack) \
4015 if (Yystack->yyspaceLeft < YYHEADROOM) \
4016 yyMemoryExhausted (Yystack); \
4024 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
4025 # define yystpcpy stpcpy
4027 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
4030 yystpcpy (char *yydest
, const char *yysrc
)
4033 const char *yys
= yysrc
;
4035 while ((*yyd
++ = *yys
++) != '\0')
4044 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
4045 quotes and backslashes, so that it's suitable for yyerror. The
4046 heuristic is that double-quoting is unnecessary unless the string
4047 contains an apostrophe, a comma, or backslash (other than
4048 backslash-backslash). YYSTR is taken from yytname. If YYRES is
4049 null, do not copy; instead, return the length of what the result
4052 yytnamerr (char *yyres
, const char *yystr
)
4057 char const *yyp
= yystr
;
4064 goto do_not_strip_quotes
;
4068 goto do_not_strip_quotes
;
4081 do_not_strip_quotes
: ;
4085 return strlen (yystr
);
4087 return yystpcpy (yyres
, yystr
) - yyres
;
4091 #endif /* !YYERROR_VERBOSE */
4093 /** State numbers, as in LALR(1) machine */
4094 typedef int yyStateNum
;
4096 /** Rule numbers, as in LALR(1) machine */
4097 typedef int yyRuleNum
;
4099 /** Grammar symbol */
4100 typedef int yySymbol
;
4102 /** Item references, as in LALR(1) machine */
4103 typedef short int yyItemNum
;
4105 typedef struct yyGLRState yyGLRState
;
4106 typedef struct yyGLRStateSet yyGLRStateSet
;
4107 typedef struct yySemanticOption yySemanticOption
;
4108 typedef union yyGLRStackItem yyGLRStackItem
;
4109 typedef struct yyGLRStack yyGLRStack
;
4112 /** Type tag: always true. */
4114 /** Type tag for yysemantics. If true, yysval applies, otherwise
4115 * yyfirstVal applies. */
4117 /** Number of corresponding LALR(1) machine state. */
4118 yyStateNum yylrState
;
4119 /** Preceding state in this stack */
4121 /** Source position of the last token produced by my symbol */
4124 /** First in a chain of alternative reductions producing the
4125 * non-terminal corresponding to this state, threaded through
4127 yySemanticOption
* yyfirstVal
;
4128 /** Semantic value for this state. */
4133 struct yyGLRStateSet
{
4134 yyGLRState
** yystates
;
4135 /** During nondeterministic operation, yylookaheadNeeds tracks which
4136 * stacks have actually needed the current lookahead. During deterministic
4137 * operation, yylookaheadNeeds[0] is not maintained since it would merely
4138 * duplicate yychar != YYEMPTY. */
4139 yybool
* yylookaheadNeeds
;
4140 size_t yysize
, yycapacity
;
4143 struct yySemanticOption
{
4144 /** Type tag: always false. */
4146 /** Rule number for this reduction */
4148 /** The last RHS state in the list of states to be reduced. */
4149 yyGLRState
* yystate
;
4150 /** The lookahead for this reduction. */
4153 /** Next sibling in chain of options. To facilitate merging,
4154 * options are chained in decreasing order by address. */
4155 yySemanticOption
* yynext
;
4158 /** Type of the items in the GLR stack. The yyisState field
4159 * indicates which item of the union is valid. */
4160 union yyGLRStackItem
{
4162 yySemanticOption yyoption
;
4173 YYJMP_BUF yyexception_buffer
;
4174 yyGLRStackItem
* yyitems
;
4175 yyGLRStackItem
* yynextFree
;
4177 yyGLRState
* yysplitPoint
;
4178 yyGLRState
* yylastDeleted
;
4179 yyGLRStateSet yytops
;
4182 #if YYSTACKEXPANDABLE
4183 static void yyexpandGLRStack (yyGLRStack
* yystackp
);
4186 static _Noreturn
void
4187 yyFail (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char* yymsg
)
4189 if (yymsg
!= YY_NULLPTR
)
4190 yyerror (P
, tokens
, index
, yymsg
);
4191 YYLONGJMP (yystackp
->yyexception_buffer
, 1);
4194 static _Noreturn
void
4195 yyMemoryExhausted (yyGLRStack
* yystackp
)
4197 YYLONGJMP (yystackp
->yyexception_buffer
, 2);
4200 #if YYDEBUG || YYERROR_VERBOSE
4201 /** A printable representation of TOKEN. */
4202 static inline const char*
4203 yytokenName (yySymbol yytoken
)
4205 if (yytoken
== YYEMPTY
)
4208 return yytname
[yytoken
];
4212 /** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting
4213 * at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred
4214 * containing the pointer to the next state in the chain. */
4215 static void yyfillin (yyGLRStackItem
*, int, int) YY_ATTRIBUTE_UNUSED
;
4217 yyfillin (yyGLRStackItem
*yyvsp
, int yylow0
, int yylow1
)
4220 yyGLRState
*s
= yyvsp
[yylow0
].yystate
.yypred
;
4221 for (i
= yylow0
-1; i
>= yylow1
; i
-= 1)
4224 yyvsp
[i
].yystate
.yylrState
= s
->yylrState
;
4226 yyvsp
[i
].yystate
.yyresolved
= s
->yyresolved
;
4228 yyvsp
[i
].yystate
.yysemantics
.yysval
= s
->yysemantics
.yysval
;
4230 /* The effect of using yysval or yyloc (in an immediate rule) is
4232 yyvsp
[i
].yystate
.yysemantics
.yyfirstVal
= YY_NULLPTR
;
4233 s
= yyvsp
[i
].yystate
.yypred
= s
->yypred
;
4237 /* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in
4238 * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1.
4239 * For convenience, always return YYLOW1. */
4240 static inline int yyfill (yyGLRStackItem
*, int *, int, yybool
)
4241 YY_ATTRIBUTE_UNUSED
;
4243 yyfill (yyGLRStackItem
*yyvsp
, int *yylow
, int yylow1
, yybool yynormal
)
4245 if (!yynormal
&& yylow1
< *yylow
)
4247 yyfillin (yyvsp
, *yylow
, yylow1
);
4253 /** Perform user action for rule number YYN, with RHS length YYRHSLEN,
4254 * and top stack item YYVSP. YYLVALP points to place to put semantic
4255 * value ($$), and yylocp points to place for location information
4256 * (@$). Returns yyok for normal return, yyaccept for YYACCEPT,
4257 * yyerr for YYERROR, yyabort for YYABORT. */
4259 yyuserAction (yyRuleNum yyn
, size_t yyrhslen
, yyGLRStackItem
* yyvsp
,
4260 yyGLRStack
* yystackp
,
4261 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
4263 yybool yynormal YY_ATTRIBUTE_UNUSED
= (yystackp
->yysplitPoint
== YY_NULLPTR
);
4271 # define yyerrok (yystackp->yyerrState = 0)
4273 # define YYACCEPT return yyaccept
4275 # define YYABORT return yyabort
4277 # define YYERROR return yyerrok, yyerr
4278 # undef YYRECOVERING
4279 # define YYRECOVERING() (yystackp->yyerrState != 0)
4281 # define yyclearin (yychar = YYEMPTY)
4283 # define YYFILL(N) yyfill (yyvsp, &yylow, N, yynormal)
4285 # define YYBACKUP(Token, Value) \
4286 return yyerror (P, tokens, index, YY_("syntax error: cannot back up")), \
4291 *yyvalp
= yyval_default
;
4293 *yyvalp
= yyvsp
[YYFILL (1-yyrhslen
)].yystate
.yysemantics
.yysval
;
4297 #line 452 "src/parser_proc_grammar.y" /* glr.c:816 */
4299 if ((*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
4300 psi_cpp_exp_exec((*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), P
->preproc
, PSI_DATA(P
));
4301 psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4304 #line 4305 "src/parser_proc.c" /* glr.c:816 */
4308 #line 458 "src/parser_proc_grammar.y" /* glr.c:816 */
4310 char *libname
= strdup((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4311 P
->file
.libnames
= psi_plist_add(P
->file
.libnames
, &libname
);
4313 #line 4314 "src/parser_proc.c" /* glr.c:816 */
4317 #line 462 "src/parser_proc_grammar.y" /* glr.c:816 */
4319 psi_parser_proc_add_const(P
, (*(struct psi_const
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4321 #line 4322 "src/parser_proc.c" /* glr.c:816 */
4325 #line 465 "src/parser_proc_grammar.y" /* glr.c:816 */
4327 psi_parser_proc_add_decl(P
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4329 #line 4330 "src/parser_proc.c" /* glr.c:816 */
4333 #line 468 "src/parser_proc_grammar.y" /* glr.c:816 */
4335 psi_parser_proc_add_decl_extvars(P
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4337 #line 4338 "src/parser_proc.c" /* glr.c:816 */
4341 #line 471 "src/parser_proc_grammar.y" /* glr.c:816 */
4343 if (P
->flags
& PSI_DEBUG
) {
4344 P
->error(PSI_DATA(P
), (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
, PSI_NOTICE
, "Ignored decl: %s", (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
);
4346 psi_decl_free(&(*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4348 #line 4349 "src/parser_proc.c" /* glr.c:816 */
4352 #line 477 "src/parser_proc_grammar.y" /* glr.c:816 */
4354 psi_parser_proc_add_typedef(P
, (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4356 #line 4357 "src/parser_proc.c" /* glr.c:816 */
4360 #line 480 "src/parser_proc_grammar.y" /* glr.c:816 */
4362 psi_parser_proc_add_struct(P
, (*(struct psi_decl_struct
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4364 #line 4365 "src/parser_proc.c" /* glr.c:816 */
4368 #line 483 "src/parser_proc_grammar.y" /* glr.c:816 */
4370 psi_parser_proc_add_union(P
, (*(struct psi_decl_union
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4372 #line 4373 "src/parser_proc.c" /* glr.c:816 */
4376 #line 486 "src/parser_proc_grammar.y" /* glr.c:816 */
4378 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4380 #line 4381 "src/parser_proc.c" /* glr.c:816 */
4384 #line 489 "src/parser_proc_grammar.y" /* glr.c:816 */
4386 psi_parser_proc_add_impl(P
, (*(struct psi_impl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4388 #line 4389 "src/parser_proc.c" /* glr.c:816 */
4392 #line 495 "src/parser_proc_grammar.y" /* glr.c:816 */
4394 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4396 #line 4397 "src/parser_proc.c" /* glr.c:816 */
4400 #line 501 "src/parser_proc_grammar.y" /* glr.c:816 */
4402 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = NULL
;
4404 #line 4405 "src/parser_proc.c" /* glr.c:816 */
4408 #line 504 "src/parser_proc_grammar.y" /* glr.c:816 */
4410 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = (*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4412 #line 4413 "src/parser_proc.c" /* glr.c:816 */
4416 #line 510 "src/parser_proc_grammar.y" /* glr.c:816 */
4418 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
4419 struct psi_token
*msg
= NULL
;
4421 if (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0, &msg
)) {
4423 struct psi_token
*next
;
4425 msg
= psi_token_copy(msg
);
4426 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), index
++, &next
)) {
4427 struct psi_token
*old
= msg
;
4428 msg
= psi_token_cat(" ", 2, msg
, next
);
4432 psi_plist_free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4434 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, msg
);
4436 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4438 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4440 #line 4441 "src/parser_proc.c" /* glr.c:816 */
4444 #line 533 "src/parser_proc_grammar.y" /* glr.c:816 */
4446 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))));
4447 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4449 #line 4450 "src/parser_proc.c" /* glr.c:816 */
4453 #line 537 "src/parser_proc_grammar.y" /* glr.c:816 */
4455 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4456 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4458 #line 4459 "src/parser_proc.c" /* glr.c:816 */
4462 #line 541 "src/parser_proc_grammar.y" /* glr.c:816 */
4464 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4465 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))));
4466 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4468 #line 4469 "src/parser_proc.c" /* glr.c:816 */
4472 #line 546 "src/parser_proc_grammar.y" /* glr.c:816 */
4474 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_cpp_macro_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4475 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4477 #line 4478 "src/parser_proc.c" /* glr.c:816 */
4481 #line 550 "src/parser_proc_grammar.y" /* glr.c:816 */
4483 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4484 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4486 #line 4487 "src/parser_proc.c" /* glr.c:816 */
4490 #line 554 "src/parser_proc_grammar.y" /* glr.c:816 */
4492 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4493 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4495 #line 4496 "src/parser_proc.c" /* glr.c:816 */
4499 #line 558 "src/parser_proc_grammar.y" /* glr.c:816 */
4501 psi_plist_free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4502 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = NULL
;
4504 #line 4505 "src/parser_proc.c" /* glr.c:816 */
4508 #line 602 "src/parser_proc_grammar.y" /* glr.c:816 */
4510 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4511 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
))) = psi_cpp_macro_decl_init(NULL
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), NULL
);
4512 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4514 #line 4515 "src/parser_proc.c" /* glr.c:816 */
4518 #line 607 "src/parser_proc_grammar.y" /* glr.c:816 */
4520 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4521 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
))) = psi_cpp_macro_decl_init((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), NULL
);
4522 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
4524 #line 4525 "src/parser_proc.c" /* glr.c:816 */
4528 #line 612 "src/parser_proc_grammar.y" /* glr.c:816 */
4530 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4531 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
))) = psi_cpp_macro_decl_init(NULL
, psi_num_exp_tokens((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), NULL
), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4532 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4534 #line 4535 "src/parser_proc.c" /* glr.c:816 */
4538 #line 617 "src/parser_proc_grammar.y" /* glr.c:816 */
4540 struct psi_plist
*list
= psi_plist_init((psi_plist_dtor
) psi_token_free
);
4541 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4542 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
))) = psi_cpp_macro_decl_init(NULL
, psi_plist_add(list
, &(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))), NULL
);
4543 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4545 #line 4546 "src/parser_proc.c" /* glr.c:816 */
4549 #line 626 "src/parser_proc_grammar.y" /* glr.c:816 */
4551 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_init(NULL
);
4553 #line 4554 "src/parser_proc.c" /* glr.c:816 */
4557 #line 629 "src/parser_proc_grammar.y" /* glr.c:816 */
4559 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_init(NULL
); /* FIXME */
4561 #line 4562 "src/parser_proc.c" /* glr.c:816 */
4565 #line 633 "src/parser_proc_grammar.y" /* glr.c:816 */
4567 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4569 #line 4570 "src/parser_proc.c" /* glr.c:816 */
4573 #line 639 "src/parser_proc_grammar.y" /* glr.c:816 */
4575 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4576 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4577 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_token_free
), &(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4579 #line 4580 "src/parser_proc.c" /* glr.c:816 */
4583 #line 644 "src/parser_proc_grammar.y" /* glr.c:816 */
4585 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4586 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4587 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4589 #line 4590 "src/parser_proc.c" /* glr.c:816 */
4593 #line 652 "src/parser_proc_grammar.y" /* glr.c:816 */
4595 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
4597 #line 4598 "src/parser_proc.c" /* glr.c:816 */
4601 #line 659 "src/parser_proc_grammar.y" /* glr.c:816 */
4603 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4604 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_token_free
), &(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4606 #line 4607 "src/parser_proc.c" /* glr.c:816 */
4610 #line 663 "src/parser_proc_grammar.y" /* glr.c:816 */
4612 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4613 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), &(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4615 #line 4616 "src/parser_proc.c" /* glr.c:816 */
4619 #line 670 "src/parser_proc_grammar.y" /* glr.c:816 */
4621 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_unary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4622 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4624 #line 4625 "src/parser_proc.c" /* glr.c:816 */
4628 #line 674 "src/parser_proc_grammar.y" /* glr.c:816 */
4630 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_unary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4631 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4633 #line 4634 "src/parser_proc.c" /* glr.c:816 */
4637 #line 678 "src/parser_proc_grammar.y" /* glr.c:816 */
4639 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_binary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4640 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4642 #line 4643 "src/parser_proc.c" /* glr.c:816 */
4646 #line 682 "src/parser_proc_grammar.y" /* glr.c:816 */
4648 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_ternary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4649 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4651 #line 4652 "src/parser_proc.c" /* glr.c:816 */
4655 #line 687 "src/parser_proc_grammar.y" /* glr.c:816 */
4660 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4661 exists
= psi_cpp_defined(P
->preproc
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4662 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8
, &exists
, 0));
4663 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4664 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4667 #line 4668 "src/parser_proc.c" /* glr.c:816 */
4671 #line 698 "src/parser_proc_grammar.y" /* glr.c:816 */
4676 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4677 exists
= psi_cpp_defined(P
->preproc
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4678 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8
, &exists
, 0));
4679 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4680 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4683 #line 4684 "src/parser_proc.c" /* glr.c:816 */
4687 #line 709 "src/parser_proc_grammar.y" /* glr.c:816 */
4689 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->flags
));
4690 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4691 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4693 #line 4694 "src/parser_proc.c" /* glr.c:816 */
4697 #line 714 "src/parser_proc_grammar.y" /* glr.c:816 */
4699 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0));
4700 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4701 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4703 #line 4704 "src/parser_proc.c" /* glr.c:816 */
4707 #line 719 "src/parser_proc_grammar.y" /* glr.c:816 */
4709 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4710 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4712 #line 4713 "src/parser_proc.c" /* glr.c:816 */
4716 #line 723 "src/parser_proc_grammar.y" /* glr.c:816 */
4718 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4719 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_DEFINE
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0));
4720 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4721 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4723 #line 4724 "src/parser_proc.c" /* glr.c:816 */
4727 #line 729 "src/parser_proc_grammar.y" /* glr.c:816 */
4729 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4730 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_FUNCTION
,
4731 psi_cpp_macro_call_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 0));
4732 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4733 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4735 #line 4736 "src/parser_proc.c" /* glr.c:816 */
4739 #line 739 "src/parser_proc_grammar.y" /* glr.c:816 */
4741 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
4743 #line 4744 "src/parser_proc.c" /* glr.c:816 */
4747 #line 746 "src/parser_proc_grammar.y" /* glr.c:816 */
4749 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_num_exp_free
),
4750 &(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4752 #line 4753 "src/parser_proc.c" /* glr.c:816 */
4756 #line 750 "src/parser_proc_grammar.y" /* glr.c:816 */
4758 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4760 #line 4761 "src/parser_proc.c" /* glr.c:816 */
4764 #line 756 "src/parser_proc_grammar.y" /* glr.c:816 */
4766 (*(struct psi_const
**)(&(*yyvalp
))) = psi_const_init((*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_impl_def_val
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4767 (*(struct psi_const
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4769 #line 4770 "src/parser_proc.c" /* glr.c:816 */
4773 #line 763 "src/parser_proc_grammar.y" /* glr.c:816 */
4775 (*(struct psi_impl_def_val
**)(&(*yyvalp
))) = psi_impl_def_val_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4776 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4778 #line 4779 "src/parser_proc.c" /* glr.c:816 */
4782 #line 767 "src/parser_proc_grammar.y" /* glr.c:816 */
4784 (*(struct psi_impl_def_val
**)(&(*yyvalp
))) = psi_impl_def_val_init(PSI_T_NUMBER
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4785 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4787 #line 4788 "src/parser_proc.c" /* glr.c:816 */
4791 #line 771 "src/parser_proc_grammar.y" /* glr.c:816 */
4793 (*(struct psi_impl_def_val
**)(&(*yyvalp
))) = psi_impl_def_val_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4794 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4796 #line 4797 "src/parser_proc.c" /* glr.c:816 */
4800 #line 784 "src/parser_proc_grammar.y" /* glr.c:816 */
4802 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4804 #line 4805 "src/parser_proc.c" /* glr.c:816 */
4808 #line 798 "src/parser_proc_grammar.y" /* glr.c:816 */
4810 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4812 #line 4813 "src/parser_proc.c" /* glr.c:816 */
4816 #line 804 "src/parser_proc_grammar.y" /* glr.c:816 */
4818 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4820 #line 4821 "src/parser_proc.c" /* glr.c:816 */
4824 #line 807 "src/parser_proc_grammar.y" /* glr.c:816 */
4826 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4828 #line 4829 "src/parser_proc.c" /* glr.c:816 */
4832 #line 813 "src/parser_proc_grammar.y" /* glr.c:816 */
4834 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4836 #line 4837 "src/parser_proc.c" /* glr.c:816 */
4840 #line 816 "src/parser_proc_grammar.y" /* glr.c:816 */
4842 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4844 #line 4845 "src/parser_proc.c" /* glr.c:816 */
4848 #line 823 "src/parser_proc_grammar.y" /* glr.c:816 */
4850 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4851 psi_decl_type_init(PSI_T_FUNCTION
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
),
4852 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
4854 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
4855 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4857 #line 4858 "src/parser_proc.c" /* glr.c:816 */
4861 #line 831 "src/parser_proc_grammar.y" /* glr.c:816 */
4863 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4864 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4865 psi_decl_type_init(PSI_T_ENUM
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->name
),
4866 psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0, 0)
4868 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4869 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->token
);
4870 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.enm
= (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4871 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4873 #line 4874 "src/parser_proc.c" /* glr.c:816 */
4877 #line 842 "src/parser_proc_grammar.y" /* glr.c:816 */
4879 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_STRUCT
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
), (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4880 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
4881 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
= psi_decl_struct_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4882 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4883 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).pos
;
4884 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).len
;
4885 psi_parser_proc_add_struct(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
);
4887 #line 4888 "src/parser_proc.c" /* glr.c:816 */
4891 #line 851 "src/parser_proc_grammar.y" /* glr.c:816 */
4893 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_UNION
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
), (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4894 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
4895 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
= psi_decl_union_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4896 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4897 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).pos
;
4898 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).len
;
4899 psi_parser_proc_add_union(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
);
4901 #line 4902 "src/parser_proc.c" /* glr.c:816 */
4905 #line 864 "src/parser_proc_grammar.y" /* glr.c:816 */
4907 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), psi_decl_var_init(NULL
, 0, 0));
4908 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4910 #line 4911 "src/parser_proc.c" /* glr.c:816 */
4914 #line 868 "src/parser_proc_grammar.y" /* glr.c:816 */
4916 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4917 psi_decl_type_init(PSI_T_ENUM
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->name
),
4918 psi_decl_var_init(NULL
, 0, 0)
4920 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4921 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4922 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.enm
= (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4923 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4925 #line 4926 "src/parser_proc.c" /* glr.c:816 */
4929 #line 878 "src/parser_proc_grammar.y" /* glr.c:816 */
4931 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_STRUCT
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
), psi_decl_var_init(NULL
, 0, 0));
4932 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4933 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
= psi_decl_struct_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4934 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4935 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
4936 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
4937 psi_parser_proc_add_struct(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
);
4939 #line 4940 "src/parser_proc.c" /* glr.c:816 */
4943 #line 887 "src/parser_proc_grammar.y" /* glr.c:816 */
4945 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_UNION
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
), psi_decl_var_init(NULL
, 0, 0));
4946 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4947 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
= psi_decl_union_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4948 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4949 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
4950 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
4951 psi_parser_proc_add_union(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
);
4953 #line 4954 "src/parser_proc.c" /* glr.c:816 */
4957 #line 900 "src/parser_proc_grammar.y" /* glr.c:816 */
4959 (*(struct psi_decl_type
**)(&(*yyvalp
))) = (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4961 #line 4962 "src/parser_proc.c" /* glr.c:816 */
4965 #line 903 "src/parser_proc_grammar.y" /* glr.c:816 */
4967 (*(struct psi_decl_type
**)(&(*yyvalp
))) = (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4969 #line 4970 "src/parser_proc.c" /* glr.c:816 */
4973 #line 914 "src/parser_proc_grammar.y" /* glr.c:816 */
4975 (*(struct psi_decl_type
**)(&(*yyvalp
))) = psi_decl_type_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4976 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4978 #line 4979 "src/parser_proc.c" /* glr.c:816 */
4982 #line 922 "src/parser_proc_grammar.y" /* glr.c:816 */
4984 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4985 (*(struct psi_decl_type
**)(&(*yyvalp
))) = psi_decl_type_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4986 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4988 #line 4989 "src/parser_proc.c" /* glr.c:816 */
4992 #line 927 "src/parser_proc_grammar.y" /* glr.c:816 */
4994 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4995 (*(struct psi_decl_type
**)(&(*yyvalp
))) = psi_decl_type_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4996 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4998 #line 4999 "src/parser_proc.c" /* glr.c:816 */
5002 #line 932 "src/parser_proc_grammar.y" /* glr.c:816 */
5004 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5005 (*(struct psi_decl_type
**)(&(*yyvalp
))) = psi_decl_type_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
5006 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5008 #line 5009 "src/parser_proc.c" /* glr.c:816 */
5012 #line 942 "src/parser_proc_grammar.y" /* glr.c:816 */
5014 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5016 #line 5017 "src/parser_proc.c" /* glr.c:816 */
5020 #line 945 "src/parser_proc_grammar.y" /* glr.c:816 */
5022 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5024 #line 5025 "src/parser_proc.c" /* glr.c:816 */
5028 #line 951 "src/parser_proc_grammar.y" /* glr.c:816 */
5030 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5032 #line 5033 "src/parser_proc.c" /* glr.c:816 */
5036 #line 954 "src/parser_proc_grammar.y" /* glr.c:816 */
5038 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5040 #line 5041 "src/parser_proc.c" /* glr.c:816 */
5044 #line 957 "src/parser_proc_grammar.y" /* glr.c:816 */
5046 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5048 #line 5049 "src/parser_proc.c" /* glr.c:816 */
5052 #line 968 "src/parser_proc_grammar.y" /* glr.c:816 */
5054 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5056 #line 5057 "src/parser_proc.c" /* glr.c:816 */
5060 #line 971 "src/parser_proc_grammar.y" /* glr.c:816 */
5062 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5064 #line 5065 "src/parser_proc.c" /* glr.c:816 */
5068 #line 974 "src/parser_proc_grammar.y" /* glr.c:816 */
5070 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5072 #line 5073 "src/parser_proc.c" /* glr.c:816 */
5076 #line 980 "src/parser_proc_grammar.y" /* glr.c:816 */
5078 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5080 #line 5081 "src/parser_proc.c" /* glr.c:816 */
5084 #line 983 "src/parser_proc_grammar.y" /* glr.c:816 */
5086 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5088 #line 5089 "src/parser_proc.c" /* glr.c:816 */
5092 #line 986 "src/parser_proc_grammar.y" /* glr.c:816 */
5094 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5095 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5096 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5098 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5101 #line 5102 "src/parser_proc.c" /* glr.c:816 */
5105 #line 994 "src/parser_proc_grammar.y" /* glr.c:816 */
5107 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5108 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5109 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5110 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5112 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5115 #line 5116 "src/parser_proc.c" /* glr.c:816 */
5119 #line 1006 "src/parser_proc_grammar.y" /* glr.c:816 */
5121 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5123 #line 5124 "src/parser_proc.c" /* glr.c:816 */
5127 #line 1009 "src/parser_proc_grammar.y" /* glr.c:816 */
5129 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5131 #line 5132 "src/parser_proc.c" /* glr.c:816 */
5135 #line 1012 "src/parser_proc_grammar.y" /* glr.c:816 */
5137 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5139 #line 5140 "src/parser_proc.c" /* glr.c:816 */
5143 #line 1015 "src/parser_proc_grammar.y" /* glr.c:816 */
5145 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5146 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5148 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5151 #line 5152 "src/parser_proc.c" /* glr.c:816 */
5155 #line 1022 "src/parser_proc_grammar.y" /* glr.c:816 */
5157 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5159 #line 5160 "src/parser_proc.c" /* glr.c:816 */
5163 #line 1025 "src/parser_proc_grammar.y" /* glr.c:816 */
5165 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5166 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5168 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5171 #line 5172 "src/parser_proc.c" /* glr.c:816 */
5175 #line 1035 "src/parser_proc_grammar.y" /* glr.c:816 */
5177 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5179 #line 5180 "src/parser_proc.c" /* glr.c:816 */
5183 #line 1041 "src/parser_proc_grammar.y" /* glr.c:816 */
5185 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5187 #line 5188 "src/parser_proc.c" /* glr.c:816 */
5191 #line 1050 "src/parser_proc_grammar.y" /* glr.c:816 */
5193 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5195 #line 5196 "src/parser_proc.c" /* glr.c:816 */
5199 #line 1053 "src/parser_proc_grammar.y" /* glr.c:816 */
5201 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5203 #line 5204 "src/parser_proc.c" /* glr.c:816 */
5207 #line 1056 "src/parser_proc_grammar.y" /* glr.c:816 */
5209 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5210 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat(" ", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5211 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5213 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5216 #line 5217 "src/parser_proc.c" /* glr.c:816 */
5220 #line 1067 "src/parser_proc_grammar.y" /* glr.c:816 */
5222 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5223 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5224 (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->redir
= strdup((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5225 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5228 #line 5229 "src/parser_proc.c" /* glr.c:816 */
5232 #line 1074 "src/parser_proc_grammar.y" /* glr.c:816 */
5234 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5235 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5236 (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->redir
= strdup((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5237 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5240 #line 5241 "src/parser_proc.c" /* glr.c:816 */
5244 #line 1084 "src/parser_proc_grammar.y" /* glr.c:816 */
5246 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5248 #line 5249 "src/parser_proc.c" /* glr.c:816 */
5252 #line 1087 "src/parser_proc_grammar.y" /* glr.c:816 */
5254 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5256 #line 5257 "src/parser_proc.c" /* glr.c:816 */
5260 #line 1093 "src/parser_proc_grammar.y" /* glr.c:816 */
5262 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5264 #line 5265 "src/parser_proc.c" /* glr.c:816 */
5268 #line 1096 "src/parser_proc_grammar.y" /* glr.c:816 */
5270 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_cat("", 2, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5271 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5273 #line 5274 "src/parser_proc.c" /* glr.c:816 */
5277 #line 1103 "src/parser_proc_grammar.y" /* glr.c:816 */
5279 struct psi_plist
*list
= psi_plist_init((psi_plist_dtor
) psi_decl_extvar_free
);
5281 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5283 struct psi_decl_var
*var
;
5285 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &var
)) {
5286 if (psi_decl_extvar_is_blacklisted(var
->name
)) {
5287 psi_decl_var_free(&var
);
5289 struct psi_decl_extvar
*evar
= psi_decl_extvar_init(
5290 psi_decl_arg_init(psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
), var
));
5291 list
= psi_plist_add(list
, &evar
);
5294 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5297 if (psi_decl_extvar_is_blacklisted((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->var
->name
)) {
5298 psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5300 struct psi_decl_extvar
*evar
= psi_decl_extvar_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5301 list
= psi_plist_add(list
, &evar
);
5304 (*(struct psi_plist
**)(&(*yyvalp
))) = list
;
5306 #line 5307 "src/parser_proc.c" /* glr.c:816 */
5310 #line 1134 "src/parser_proc_grammar.y" /* glr.c:816 */
5312 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5314 #line 5315 "src/parser_proc.c" /* glr.c:816 */
5318 #line 1137 "src/parser_proc_grammar.y" /* glr.c:816 */
5320 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5322 #line 5323 "src/parser_proc.c" /* glr.c:816 */
5326 #line 1143 "src/parser_proc_grammar.y" /* glr.c:816 */
5328 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_var_free
), &(*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5330 #line 5331 "src/parser_proc.c" /* glr.c:816 */
5334 #line 1146 "src/parser_proc_grammar.y" /* glr.c:816 */
5336 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5338 #line 5339 "src/parser_proc.c" /* glr.c:816 */
5342 #line 1152 "src/parser_proc_grammar.y" /* glr.c:816 */
5344 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5346 #line 5347 "src/parser_proc.c" /* glr.c:816 */
5350 #line 1155 "src/parser_proc_grammar.y" /* glr.c:816 */
5352 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5354 #line 5355 "src/parser_proc.c" /* glr.c:816 */
5358 #line 1158 "src/parser_proc_grammar.y" /* glr.c:816 */
5360 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5362 #line 5363 "src/parser_proc.c" /* glr.c:816 */
5366 #line 1161 "src/parser_proc_grammar.y" /* glr.c:816 */
5368 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5370 #line 5371 "src/parser_proc.c" /* glr.c:816 */
5374 #line 1182 "src/parser_proc_grammar.y" /* glr.c:816 */
5376 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5377 (*(struct psi_decl
**)(&(*yyvalp
)))->abi
= psi_decl_abi_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5379 #line 5380 "src/parser_proc.c" /* glr.c:816 */
5383 #line 1194 "src/parser_proc_grammar.y" /* glr.c:816 */
5385 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5386 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5387 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5388 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5391 #line 5392 "src/parser_proc.c" /* glr.c:816 */
5395 #line 1201 "src/parser_proc_grammar.y" /* glr.c:816 */
5397 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
5398 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5399 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5400 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5401 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5404 #line 5405 "src/parser_proc.c" /* glr.c:816 */
5408 #line 1212 "src/parser_proc_grammar.y" /* glr.c:816 */
5410 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5411 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5412 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5413 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5416 #line 5417 "src/parser_proc.c" /* glr.c:816 */
5420 #line 1219 "src/parser_proc_grammar.y" /* glr.c:816 */
5422 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
5423 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5424 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5425 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5426 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5429 #line 5430 "src/parser_proc.c" /* glr.c:816 */
5433 #line 1227 "src/parser_proc_grammar.y" /* glr.c:816 */
5435 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
));
5436 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5438 struct psi_token
*type_token
= psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))), 1, "rval");
5439 struct psi_decl_arg
*rval_func
= psi_decl_arg_init((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-12)].yystate
.yysemantics
.yysval
)), psi_decl_var_init(type_token
->text
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
)), 0));
5440 struct psi_decl
*rval_decl
= psi_decl_init(rval_func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5442 rval_func
->var
->token
= psi_token_copy(type_token
);
5443 rval_func
->token
= psi_token_copy(type_token
);
5444 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5445 rval_func
->var
->pointer_level
+= 1;
5446 rval_func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5449 struct psi_decl_type
*type
= psi_decl_type_init(PSI_T_FUNCTION
, type_token
->text
);
5450 struct psi_decl_arg
*func
= psi_decl_arg_init(type
, psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))->text
, 1, 0));
5452 type
->real
.func
= rval_decl
;
5453 func
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)));
5454 func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)));
5456 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init(func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
5458 #line 5459 "src/parser_proc.c" /* glr.c:816 */
5462 #line 1251 "src/parser_proc_grammar.y" /* glr.c:816 */
5464 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-12)].yystate
.yysemantics
.yysval
));
5465 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
));
5466 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5468 struct psi_token
*type_token
= psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))), 1, "rval");
5469 struct psi_decl_arg
*rval_func
= psi_decl_arg_init((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-15)].yystate
.yysemantics
.yysval
)), psi_decl_var_init(type_token
->text
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-14)].yystate
.yysemantics
.yysval
)), 0));
5470 struct psi_decl
*rval_decl
= psi_decl_init(rval_func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5472 rval_func
->var
->token
= psi_token_copy(type_token
);
5473 rval_func
->token
= psi_token_copy(type_token
);
5474 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5475 rval_func
->var
->pointer_level
+= 1;
5476 rval_func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5479 struct psi_decl_type
*type
= psi_decl_type_init(PSI_T_FUNCTION
, type_token
->text
);
5480 struct psi_decl_arg
*func
= psi_decl_arg_init(type
, psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))->text
, 1, 0));
5482 type
->real
.func
= rval_decl
;
5483 func
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
5484 func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
5486 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init(func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
5488 #line 5489 "src/parser_proc.c" /* glr.c:816 */
5492 #line 1279 "src/parser_proc_grammar.y" /* glr.c:816 */
5494 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5495 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5496 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5497 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5500 #line 5501 "src/parser_proc.c" /* glr.c:816 */
5504 #line 1286 "src/parser_proc_grammar.y" /* glr.c:816 */
5506 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
5507 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5508 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5509 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5510 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5513 #line 5514 "src/parser_proc.c" /* glr.c:816 */
5517 #line 1297 "src/parser_proc_grammar.y" /* glr.c:816 */
5519 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5520 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5521 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)), psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), 0));
5522 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5523 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5525 #line 5526 "src/parser_proc.c" /* glr.c:816 */
5529 #line 1343 "src/parser_proc_grammar.y" /* glr.c:816 */
5531 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5532 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), psi_decl_var_init(NULL
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), 0));
5533 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5534 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5536 #line 5537 "src/parser_proc.c" /* glr.c:816 */
5540 #line 1399 "src/parser_proc_grammar.y" /* glr.c:816 */
5542 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5544 #line 5545 "src/parser_proc.c" /* glr.c:816 */
5548 #line 1402 "src/parser_proc_grammar.y" /* glr.c:816 */
5550 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5552 #line 5553 "src/parser_proc.c" /* glr.c:816 */
5556 #line 1405 "src/parser_proc_grammar.y" /* glr.c:816 */
5558 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5560 #line 5561 "src/parser_proc.c" /* glr.c:816 */
5564 #line 1411 "src/parser_proc_grammar.y" /* glr.c:816 */
5566 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
), &(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5568 #line 5569 "src/parser_proc.c" /* glr.c:816 */
5572 #line 1414 "src/parser_proc_grammar.y" /* glr.c:816 */
5574 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5576 #line 5577 "src/parser_proc.c" /* glr.c:816 */
5580 #line 1420 "src/parser_proc_grammar.y" /* glr.c:816 */
5583 struct psi_token
*name
;
5585 psi_token_hash((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
, digest
);
5586 name
= psi_token_append("@", psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
), 2, "funct", digest
);
5588 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5589 psi_decl_type_init(PSI_T_FUNCTION
, name
->text
),
5590 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
5592 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= name
;
5593 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
5594 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5596 #line 5597 "src/parser_proc.c" /* glr.c:816 */
5600 #line 1435 "src/parser_proc_grammar.y" /* glr.c:816 */
5602 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5604 #line 5605 "src/parser_proc.c" /* glr.c:816 */
5608 #line 1438 "src/parser_proc_grammar.y" /* glr.c:816 */
5610 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5611 (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)),
5612 psi_decl_var_init(NULL
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0)
5615 #line 5616 "src/parser_proc.c" /* glr.c:816 */
5619 #line 1467 "src/parser_proc_grammar.y" /* glr.c:816 */
5621 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5622 psi_decl_type_init(PSI_T_FUNCTION
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
),
5623 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
5625 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
5626 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5628 #line 5629 "src/parser_proc.c" /* glr.c:816 */
5632 #line 1475 "src/parser_proc_grammar.y" /* glr.c:816 */
5634 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5636 #line 5637 "src/parser_proc.c" /* glr.c:816 */
5640 #line 1503 "src/parser_proc_grammar.y" /* glr.c:816 */
5642 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5643 (*(struct psi_decl_var
**)(&(*yyvalp
))) = psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)) + !! (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5644 (*(struct psi_decl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5646 #line 5647 "src/parser_proc.c" /* glr.c:816 */
5650 #line 1508 "src/parser_proc_grammar.y" /* glr.c:816 */
5652 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5653 (*(struct psi_decl_var
**)(&(*yyvalp
))) = psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
, !! (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5654 (*(struct psi_decl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5656 #line 5657 "src/parser_proc.c" /* glr.c:816 */
5660 #line 1516 "src/parser_proc_grammar.y" /* glr.c:816 */
5662 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5663 (*(struct psi_decl_union
**)(&(*yyvalp
))) = psi_decl_union_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5664 (*(struct psi_decl_union
**)(&(*yyvalp
)))->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
5665 (*(struct psi_decl_union
**)(&(*yyvalp
)))->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
5666 (*(struct psi_decl_union
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5668 #line 5669 "src/parser_proc.c" /* glr.c:816 */
5672 #line 1526 "src/parser_proc_grammar.y" /* glr.c:816 */
5674 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5675 (*(struct psi_decl_struct
**)(&(*yyvalp
))) = psi_decl_struct_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5676 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
5677 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
5678 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5680 #line 5681 "src/parser_proc.c" /* glr.c:816 */
5684 #line 1536 "src/parser_proc_grammar.y" /* glr.c:816 */
5686 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5688 #line 5689 "src/parser_proc.c" /* glr.c:816 */
5692 #line 1543 "src/parser_proc_grammar.y" /* glr.c:816 */
5694 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5696 #line 5697 "src/parser_proc.c" /* glr.c:816 */
5700 #line 1549 "src/parser_proc_grammar.y" /* glr.c:816 */
5702 (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5703 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
), &(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5704 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5706 struct psi_decl_arg
*arg
;
5708 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &arg
)) {
5709 arg
->type
= psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
);
5710 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&(*yyvalp
))), &arg
);
5712 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5715 #line 5716 "src/parser_proc.c" /* glr.c:816 */
5719 #line 1563 "src/parser_proc_grammar.y" /* glr.c:816 */
5721 (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5722 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), &(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5723 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5725 struct psi_decl_arg
*arg
;
5727 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &arg
)) {
5728 arg
->type
= psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
);
5729 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&(*yyvalp
))), &arg
);
5731 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5734 #line 5735 "src/parser_proc.c" /* glr.c:816 */
5738 #line 1580 "src/parser_proc_grammar.y" /* glr.c:816 */
5740 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5742 #line 5743 "src/parser_proc.c" /* glr.c:816 */
5746 #line 1583 "src/parser_proc_grammar.y" /* glr.c:816 */
5748 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5750 #line 5751 "src/parser_proc.c" /* glr.c:816 */
5754 #line 1589 "src/parser_proc_grammar.y" /* glr.c:816 */
5757 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5758 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5759 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
), &arg
);
5762 #line 5763 "src/parser_proc.c" /* glr.c:816 */
5766 #line 1596 "src/parser_proc_grammar.y" /* glr.c:816 */
5769 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5770 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5771 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), &arg
);
5774 #line 5775 "src/parser_proc.c" /* glr.c:816 */
5778 #line 1606 "src/parser_proc_grammar.y" /* glr.c:816 */
5780 (*(struct psi_decl_enum
**)(&(*yyvalp
))) = psi_decl_enum_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5781 (*(struct psi_decl_enum
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
));
5783 #line 5784 "src/parser_proc.c" /* glr.c:816 */
5787 #line 1613 "src/parser_proc_grammar.y" /* glr.c:816 */
5789 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_enum_item_free
), &(*(struct psi_decl_enum_item
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5791 #line 5792 "src/parser_proc.c" /* glr.c:816 */
5795 #line 1616 "src/parser_proc_grammar.y" /* glr.c:816 */
5797 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_decl_enum_item
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5799 #line 5800 "src/parser_proc.c" /* glr.c:816 */
5803 #line 1622 "src/parser_proc_grammar.y" /* glr.c:816 */
5805 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5806 (*(struct psi_decl_enum_item
**)(&(*yyvalp
))) = psi_decl_enum_item_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, NULL
);
5807 (*(struct psi_decl_enum_item
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5809 #line 5810 "src/parser_proc.c" /* glr.c:816 */
5813 #line 1627 "src/parser_proc_grammar.y" /* glr.c:816 */
5815 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5816 (*(struct psi_decl_enum_item
**)(&(*yyvalp
))) = psi_decl_enum_item_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5817 (*(struct psi_decl_enum_item
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5819 #line 5820 "src/parser_proc.c" /* glr.c:816 */
5823 #line 1635 "src/parser_proc_grammar.y" /* glr.c:816 */
5825 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5826 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
5828 #line 5829 "src/parser_proc.c" /* glr.c:816 */
5832 #line 1639 "src/parser_proc_grammar.y" /* glr.c:816 */
5834 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_cast((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5835 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->token
);
5837 #line 5838 "src/parser_proc.c" /* glr.c:816 */
5841 #line 1643 "src/parser_proc_grammar.y" /* glr.c:816 */
5843 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_unary(PSI_T_LPAREN
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5844 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5846 #line 5847 "src/parser_proc.c" /* glr.c:816 */
5850 #line 1647 "src/parser_proc_grammar.y" /* glr.c:816 */
5852 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_binary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5853 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5855 #line 5856 "src/parser_proc.c" /* glr.c:816 */
5859 #line 1651 "src/parser_proc_grammar.y" /* glr.c:816 */
5861 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_unary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5862 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5864 #line 5865 "src/parser_proc.c" /* glr.c:816 */
5868 #line 1655 "src/parser_proc_grammar.y" /* glr.c:816 */
5870 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_ternary((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5871 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5873 #line 5874 "src/parser_proc.c" /* glr.c:816 */
5877 #line 1662 "src/parser_proc_grammar.y" /* glr.c:816 */
5879 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->flags
);
5880 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5882 #line 5883 "src/parser_proc.c" /* glr.c:816 */
5886 #line 1666 "src/parser_proc_grammar.y" /* glr.c:816 */
5888 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0);
5889 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5891 #line 5892 "src/parser_proc.c" /* glr.c:816 */
5895 #line 1670 "src/parser_proc_grammar.y" /* glr.c:816 */
5897 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0);
5898 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5900 #line 5901 "src/parser_proc.c" /* glr.c:816 */
5904 #line 1674 "src/parser_proc_grammar.y" /* glr.c:816 */
5906 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0);
5907 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5909 #line 5910 "src/parser_proc.c" /* glr.c:816 */
5913 #line 1678 "src/parser_proc_grammar.y" /* glr.c:816 */
5915 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_NAME
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0);
5916 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
5918 #line 5919 "src/parser_proc.c" /* glr.c:816 */
5922 #line 1682 "src/parser_proc_grammar.y" /* glr.c:816 */
5924 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5926 #line 5927 "src/parser_proc.c" /* glr.c:816 */
5930 #line 1688 "src/parser_proc_grammar.y" /* glr.c:816 */
5932 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5933 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5935 #line 5936 "src/parser_proc.c" /* glr.c:816 */
5939 #line 1692 "src/parser_proc_grammar.y" /* glr.c:816 */
5941 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5942 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5944 #line 5945 "src/parser_proc.c" /* glr.c:816 */
5948 #line 1699 "src/parser_proc_grammar.y" /* glr.c:816 */
5950 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5952 #line 5953 "src/parser_proc.c" /* glr.c:816 */
5956 #line 1702 "src/parser_proc_grammar.y" /* glr.c:816 */
5958 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5959 int8_t sizeof_void_p
= sizeof(void *);
5960 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_void_p
, 0);
5961 psi_decl_type_free(&(*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5963 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_SIZEOF
, (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), 0);
5966 #line 5967 "src/parser_proc.c" /* glr.c:816 */
5970 #line 1714 "src/parser_proc_grammar.y" /* glr.c:816 */
5972 int8_t sizeof_void_p
= sizeof(void *);
5973 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_void_p
, 0);
5975 #line 5976 "src/parser_proc.c" /* glr.c:816 */
5979 #line 1718 "src/parser_proc_grammar.y" /* glr.c:816 */
5981 int8_t sizeof_a
= sizeof('a');
5982 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_a
, 0);
5984 #line 5985 "src/parser_proc.c" /* glr.c:816 */
5988 #line 1722 "src/parser_proc_grammar.y" /* glr.c:816 */
5990 uint64_t len
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->size
+ 1;
5991 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_UINT64
, &len
, 0);
5993 #line 5994 "src/parser_proc.c" /* glr.c:816 */
5997 #line 1729 "src/parser_proc_grammar.y" /* glr.c:816 */
5999 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6000 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6004 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6005 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6008 #line 6009 "src/parser_proc.c" /* glr.c:816 */
6012 #line 1742 "src/parser_proc_grammar.y" /* glr.c:816 */
6014 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6015 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6019 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6020 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6023 #line 6024 "src/parser_proc.c" /* glr.c:816 */
6027 #line 1755 "src/parser_proc_grammar.y" /* glr.c:816 */
6029 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6030 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6034 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6035 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6038 #line 6039 "src/parser_proc.c" /* glr.c:816 */
6042 #line 1768 "src/parser_proc_grammar.y" /* glr.c:816 */
6044 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
6046 #line 6047 "src/parser_proc.c" /* glr.c:816 */
6050 #line 1771 "src/parser_proc_grammar.y" /* glr.c:816 */
6052 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6053 (*(struct psi_token
**)(&(*yyvalp
)))->type
= PSI_T_NAME
;
6055 #line 6056 "src/parser_proc.c" /* glr.c:816 */
6059 #line 1783 "src/parser_proc_grammar.y" /* glr.c:816 */
6061 (*(struct psi_layout
**)(&(*yyvalp
))) = NULL
;
6063 #line 6064 "src/parser_proc.c" /* glr.c:816 */
6067 #line 1786 "src/parser_proc_grammar.y" /* glr.c:816 */
6069 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(0, 0, psi_layout_init(0, atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
), NULL
));
6071 #line 6072 "src/parser_proc.c" /* glr.c:816 */
6075 #line 1789 "src/parser_proc_grammar.y" /* glr.c:816 */
6077 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
), atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
), NULL
);
6079 #line 6080 "src/parser_proc.c" /* glr.c:816 */
6083 #line 1792 "src/parser_proc_grammar.y" /* glr.c:816 */
6085 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
), atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
), psi_layout_init(0, atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-7)].yystate
.yysemantics
.yysval
))->text
), NULL
));
6087 #line 6088 "src/parser_proc.c" /* glr.c:816 */
6091 #line 1798 "src/parser_proc_grammar.y" /* glr.c:816 */
6093 (*(struct psi_layout
*)(&(*yyvalp
))).pos
= 0;
6094 (*(struct psi_layout
*)(&(*yyvalp
))).len
= 0;
6096 #line 6097 "src/parser_proc.c" /* glr.c:816 */
6100 #line 1802 "src/parser_proc_grammar.y" /* glr.c:816 */
6102 (*(struct psi_layout
*)(&(*yyvalp
))).pos
= atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
);
6103 (*(struct psi_layout
*)(&(*yyvalp
))).len
= atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
6105 #line 6106 "src/parser_proc.c" /* glr.c:816 */
6109 #line 1809 "src/parser_proc_grammar.y" /* glr.c:816 */
6111 (*(size_t*)(&(*yyvalp
))) = 0;
6113 #line 6114 "src/parser_proc.c" /* glr.c:816 */
6117 #line 1812 "src/parser_proc_grammar.y" /* glr.c:816 */
6119 (*(size_t*)(&(*yyvalp
))) = 0;
6121 #line 6122 "src/parser_proc.c" /* glr.c:816 */
6125 #line 1815 "src/parser_proc_grammar.y" /* glr.c:816 */
6127 struct psi_validate_scope scope
= {0};
6128 psi_validate_scope_ctor(&scope
);
6129 scope
.defs
= &P
->preproc
->defs
;
6130 if (psi_num_exp_validate(PSI_DATA(P
), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), &scope
)) {
6131 (*(size_t*)(&(*yyvalp
))) = psi_num_exp_get_long((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), NULL
, &P
->preproc
->defs
);
6133 (*(size_t*)(&(*yyvalp
))) = 0;
6135 psi_num_exp_free(&(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6136 psi_validate_scope_dtor(&scope
);
6138 #line 6139 "src/parser_proc.c" /* glr.c:816 */
6142 #line 1837 "src/parser_proc_grammar.y" /* glr.c:816 */
6144 (*(size_t*)(&(*yyvalp
))) = 0;
6146 #line 6147 "src/parser_proc.c" /* glr.c:816 */
6150 #line 1840 "src/parser_proc_grammar.y" /* glr.c:816 */
6152 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6154 #line 6155 "src/parser_proc.c" /* glr.c:816 */
6158 #line 1847 "src/parser_proc_grammar.y" /* glr.c:816 */
6160 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6162 #line 6163 "src/parser_proc.c" /* glr.c:816 */
6166 #line 1853 "src/parser_proc_grammar.y" /* glr.c:816 */
6168 (*(size_t*)(&(*yyvalp
))) = 1;
6170 #line 6171 "src/parser_proc.c" /* glr.c:816 */
6174 #line 1856 "src/parser_proc_grammar.y" /* glr.c:816 */
6176 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)) + 1;
6178 #line 6179 "src/parser_proc.c" /* glr.c:816 */
6182 #line 1878 "src/parser_proc_grammar.y" /* glr.c:816 */
6184 (*(struct psi_impl
**)(&(*yyvalp
))) = psi_impl_init((*(struct psi_impl_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6186 #line 6187 "src/parser_proc.c" /* glr.c:816 */
6190 #line 1881 "src/parser_proc_grammar.y" /* glr.c:816 */
6192 (*(struct psi_impl
**)(&(*yyvalp
))) = psi_impl_init((*(struct psi_impl_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6193 (*(struct psi_impl_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->static_memory
= 1;
6195 #line 6196 "src/parser_proc.c" /* glr.c:816 */
6199 #line 1888 "src/parser_proc_grammar.y" /* glr.c:816 */
6201 (*(struct psi_impl_func
**)(&(*yyvalp
))) = psi_impl_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))->text
, NULL
, (*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6202 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6203 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
));
6205 #line 6206 "src/parser_proc.c" /* glr.c:816 */
6209 #line 1893 "src/parser_proc_grammar.y" /* glr.c:816 */
6211 (*(struct psi_impl_func
**)(&(*yyvalp
))) = psi_impl_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), (*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6212 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6213 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
));
6215 #line 6216 "src/parser_proc.c" /* glr.c:816 */
6219 #line 1898 "src/parser_proc_grammar.y" /* glr.c:816 */
6221 (*(struct psi_impl_func
**)(&(*yyvalp
))) = psi_impl_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)), (*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6222 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
)));
6223 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
));
6224 (*(struct psi_impl_func
**)(&(*yyvalp
)))->vararg
= psi_impl_arg_init((*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)), psi_impl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
, (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))), NULL
);
6225 (*(struct psi_impl_func
**)(&(*yyvalp
)))->vararg
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6227 #line 6228 "src/parser_proc.c" /* glr.c:816 */
6231 #line 1908 "src/parser_proc_grammar.y" /* glr.c:816 */
6233 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_impl_arg_free
), &(*(struct psi_impl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6235 #line 6236 "src/parser_proc.c" /* glr.c:816 */
6239 #line 1911 "src/parser_proc_grammar.y" /* glr.c:816 */
6241 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_impl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6243 #line 6244 "src/parser_proc.c" /* glr.c:816 */
6247 #line 1917 "src/parser_proc_grammar.y" /* glr.c:816 */
6249 (*(struct psi_impl_arg
**)(&(*yyvalp
))) = psi_impl_arg_init((*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), NULL
);
6251 #line 6252 "src/parser_proc.c" /* glr.c:816 */
6255 #line 1920 "src/parser_proc_grammar.y" /* glr.c:816 */
6257 (*(struct psi_impl_arg
**)(&(*yyvalp
))) = psi_impl_arg_init((*(struct psi_impl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_impl_def_val
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6259 #line 6260 "src/parser_proc.c" /* glr.c:816 */
6263 #line 1926 "src/parser_proc_grammar.y" /* glr.c:816 */
6265 (*(struct psi_impl_var
**)(&(*yyvalp
))) = psi_impl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6266 (*(struct psi_impl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6268 #line 6269 "src/parser_proc.c" /* glr.c:816 */
6272 #line 1933 "src/parser_proc_grammar.y" /* glr.c:816 */
6274 (*(struct psi_impl_type
**)(&(*yyvalp
))) = psi_impl_type_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
6275 (*(struct psi_impl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6277 #line 6278 "src/parser_proc.c" /* glr.c:816 */
6281 #line 1940 "src/parser_proc_grammar.y" /* glr.c:816 */
6283 (*(struct psi_impl_type
**)(&(*yyvalp
))) = psi_impl_type_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
6284 (*(struct psi_impl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6286 #line 6287 "src/parser_proc.c" /* glr.c:816 */
6290 #line 1967 "src/parser_proc_grammar.y" /* glr.c:816 */
6292 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_impl_stmt_free
), &(*(struct psi_token
***)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6294 #line 6295 "src/parser_proc.c" /* glr.c:816 */
6298 #line 1970 "src/parser_proc_grammar.y" /* glr.c:816 */
6300 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), &(*(struct psi_token
***)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6302 #line 6303 "src/parser_proc.c" /* glr.c:816 */
6306 #line 1976 "src/parser_proc_grammar.y" /* glr.c:816 */
6308 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_return_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6310 #line 6311 "src/parser_proc.c" /* glr.c:816 */
6314 #line 1979 "src/parser_proc_grammar.y" /* glr.c:816 */
6316 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_let_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6318 #line 6319 "src/parser_proc.c" /* glr.c:816 */
6322 #line 1982 "src/parser_proc_grammar.y" /* glr.c:816 */
6324 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_set_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6326 #line 6327 "src/parser_proc.c" /* glr.c:816 */
6330 #line 1985 "src/parser_proc_grammar.y" /* glr.c:816 */
6332 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_assert_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6334 #line 6335 "src/parser_proc.c" /* glr.c:816 */
6338 #line 1988 "src/parser_proc_grammar.y" /* glr.c:816 */
6340 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_free_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6342 #line 6343 "src/parser_proc.c" /* glr.c:816 */
6346 #line 1994 "src/parser_proc_grammar.y" /* glr.c:816 */
6348 (*(struct psi_let_stmt
**)(&(*yyvalp
))) = psi_let_stmt_init((*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6349 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6351 #line 6352 "src/parser_proc.c" /* glr.c:816 */
6355 #line 1998 "src/parser_proc_grammar.y" /* glr.c:816 */
6357 (*(struct psi_let_stmt
**)(&(*yyvalp
))) = psi_let_stmt_init(psi_let_exp_init_ex((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)), PSI_LET_TMP
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))));
6358 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6359 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->exp
->is_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6361 #line 6362 "src/parser_proc.c" /* glr.c:816 */
6365 #line 2007 "src/parser_proc_grammar.y" /* glr.c:816 */
6367 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6368 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= true;
6370 #line 6371 "src/parser_proc.c" /* glr.c:816 */
6374 #line 2011 "src/parser_proc_grammar.y" /* glr.c:816 */
6376 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6377 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= false;
6379 #line 6380 "src/parser_proc.c" /* glr.c:816 */
6383 #line 2018 "src/parser_proc_grammar.y" /* glr.c:816 */
6385 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_NULL
, NULL
);
6387 #line 6388 "src/parser_proc.c" /* glr.c:816 */
6391 #line 2021 "src/parser_proc_grammar.y" /* glr.c:816 */
6393 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init_ex(NULL
, PSI_LET_NUMEXP
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6395 #line 6396 "src/parser_proc.c" /* glr.c:816 */
6399 #line 2024 "src/parser_proc_grammar.y" /* glr.c:816 */
6401 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLOC
, (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6403 #line 6404 "src/parser_proc.c" /* glr.c:816 */
6407 #line 2027 "src/parser_proc_grammar.y" /* glr.c:816 */
6409 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLOC
, (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6410 (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->static_memory
= 1;
6412 #line 6413 "src/parser_proc.c" /* glr.c:816 */
6416 #line 2031 "src/parser_proc_grammar.y" /* glr.c:816 */
6418 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLBACK
, (*(struct psi_let_callback
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6420 #line 6421 "src/parser_proc.c" /* glr.c:816 */
6424 #line 2034 "src/parser_proc_grammar.y" /* glr.c:816 */
6426 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init_ex(NULL
, PSI_LET_FUNC
, (*(struct psi_let_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6428 #line 6429 "src/parser_proc.c" /* glr.c:816 */
6432 #line 2040 "src/parser_proc_grammar.y" /* glr.c:816 */
6434 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6435 (*(struct psi_let_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6437 #line 6438 "src/parser_proc.c" /* glr.c:816 */
6441 #line 2044 "src/parser_proc_grammar.y" /* glr.c:816 */
6443 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6444 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= 1;
6445 (*(struct psi_let_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
6447 #line 6448 "src/parser_proc.c" /* glr.c:816 */
6451 #line 2052 "src/parser_proc_grammar.y" /* glr.c:816 */
6453 (*(struct psi_let_calloc
**)(&(*yyvalp
))) = psi_let_calloc_init((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6454 (*(struct psi_let_calloc
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6456 #line 6457 "src/parser_proc.c" /* glr.c:816 */
6460 #line 2059 "src/parser_proc_grammar.y" /* glr.c:816 */
6462 (*(struct psi_let_callback
**)(&(*yyvalp
))) = psi_let_callback_init(psi_let_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), NULL
);
6463 (*(struct psi_let_callback
**)(&(*yyvalp
)))->func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
6464 (*(struct psi_let_callback
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-7)].yystate
.yysemantics
.yysval
)));
6466 #line 6467 "src/parser_proc.c" /* glr.c:816 */
6470 #line 2064 "src/parser_proc_grammar.y" /* glr.c:816 */
6472 (*(struct psi_let_callback
**)(&(*yyvalp
))) = psi_let_callback_init(psi_let_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
6473 (*(struct psi_let_callback
**)(&(*yyvalp
)))->func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
6474 (*(struct psi_let_callback
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
)));
6476 #line 6477 "src/parser_proc.c" /* glr.c:816 */
6480 #line 2072 "src/parser_proc_grammar.y" /* glr.c:816 */
6482 (*(struct psi_let_func
**)(&(*yyvalp
))) = psi_let_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6483 (*(struct psi_let_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6484 (*(struct psi_let_func
**)(&(*yyvalp
)))->inner
= (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6486 #line 6487 "src/parser_proc.c" /* glr.c:816 */
6490 #line 2093 "src/parser_proc_grammar.y" /* glr.c:816 */
6492 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6494 #line 6495 "src/parser_proc.c" /* glr.c:816 */
6498 #line 2096 "src/parser_proc_grammar.y" /* glr.c:816 */
6500 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6502 #line 6503 "src/parser_proc.c" /* glr.c:816 */
6506 #line 2102 "src/parser_proc_grammar.y" /* glr.c:816 */
6508 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_let_exp_free
), &(*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6510 #line 6511 "src/parser_proc.c" /* glr.c:816 */
6514 #line 2105 "src/parser_proc_grammar.y" /* glr.c:816 */
6516 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6518 #line 6519 "src/parser_proc.c" /* glr.c:816 */
6522 #line 2116 "src/parser_proc_grammar.y" /* glr.c:816 */
6524 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6526 #line 6527 "src/parser_proc.c" /* glr.c:816 */
6530 #line 2119 "src/parser_proc_grammar.y" /* glr.c:816 */
6532 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6534 #line 6535 "src/parser_proc.c" /* glr.c:816 */
6538 #line 2125 "src/parser_proc_grammar.y" /* glr.c:816 */
6540 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_set_exp_free
), &(*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6542 #line 6543 "src/parser_proc.c" /* glr.c:816 */
6546 #line 2128 "src/parser_proc_grammar.y" /* glr.c:816 */
6548 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6550 #line 6551 "src/parser_proc.c" /* glr.c:816 */
6554 #line 2134 "src/parser_proc_grammar.y" /* glr.c:816 */
6556 (*(struct psi_return_stmt
**)(&(*yyvalp
))) = psi_return_stmt_init((*(struct psi_return_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6557 (*(struct psi_return_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6559 #line 6560 "src/parser_proc.c" /* glr.c:816 */
6563 #line 2141 "src/parser_proc_grammar.y" /* glr.c:816 */
6565 (*(struct psi_return_exp
**)(&(*yyvalp
))) = psi_return_exp_init((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)), (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), psi_set_exp_init(PSI_SET_FUNC
, (*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))));
6566 (*(struct psi_return_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->token
);
6568 #line 6569 "src/parser_proc.c" /* glr.c:816 */
6572 #line 2145 "src/parser_proc_grammar.y" /* glr.c:816 */
6574 (*(struct psi_return_exp
**)(&(*yyvalp
))) = psi_return_exp_init(NULL
, NULL
, psi_set_exp_init(PSI_SET_FUNC
, (*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))));
6575 (*(struct psi_return_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
6577 #line 6578 "src/parser_proc.c" /* glr.c:816 */
6581 #line 2152 "src/parser_proc_grammar.y" /* glr.c:816 */
6583 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6585 #line 6586 "src/parser_proc.c" /* glr.c:816 */
6589 #line 2155 "src/parser_proc_grammar.y" /* glr.c:816 */
6591 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6593 #line 6594 "src/parser_proc.c" /* glr.c:816 */
6597 #line 2158 "src/parser_proc_grammar.y" /* glr.c:816 */
6599 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6601 #line 6602 "src/parser_proc.c" /* glr.c:816 */
6605 #line 2164 "src/parser_proc_grammar.y" /* glr.c:816 */
6607 (*(struct psi_set_stmt
**)(&(*yyvalp
))) = psi_set_stmt_init((*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6608 (*(struct psi_set_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6610 #line 6611 "src/parser_proc.c" /* glr.c:816 */
6614 #line 2171 "src/parser_proc_grammar.y" /* glr.c:816 */
6616 (*(struct psi_set_exp
**)(&(*yyvalp
))) = psi_set_exp_init(PSI_SET_FUNC
, (*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6618 #line 6619 "src/parser_proc.c" /* glr.c:816 */
6622 #line 2174 "src/parser_proc_grammar.y" /* glr.c:816 */
6624 (*(struct psi_set_exp
**)(&(*yyvalp
))) = psi_set_exp_init(PSI_SET_NUMEXP
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6626 #line 6627 "src/parser_proc.c" /* glr.c:816 */
6630 #line 2177 "src/parser_proc_grammar.y" /* glr.c:816 */
6632 (*(struct psi_set_exp
**)(&(*yyvalp
))) = (*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6633 (*(struct psi_set_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6635 #line 6636 "src/parser_proc.c" /* glr.c:816 */
6639 #line 2184 "src/parser_proc_grammar.y" /* glr.c:816 */
6641 (*(struct psi_set_func
**)(&(*yyvalp
))) = psi_set_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6642 (*(struct psi_set_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6643 (*(struct psi_set_func
**)(&(*yyvalp
)))->inner
= (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6645 #line 6646 "src/parser_proc.c" /* glr.c:816 */
6649 #line 2189 "src/parser_proc_grammar.y" /* glr.c:816 */
6651 (*(struct psi_set_func
**)(&(*yyvalp
))) = psi_set_func_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6652 (*(struct psi_set_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6653 (*(struct psi_set_func
**)(&(*yyvalp
)))->recursive
= 1;
6655 #line 6656 "src/parser_proc.c" /* glr.c:816 */
6659 #line 2208 "src/parser_proc_grammar.y" /* glr.c:816 */
6661 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6663 #line 6664 "src/parser_proc.c" /* glr.c:816 */
6667 #line 2211 "src/parser_proc_grammar.y" /* glr.c:816 */
6669 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6671 #line 6672 "src/parser_proc.c" /* glr.c:816 */
6675 #line 2217 "src/parser_proc_grammar.y" /* glr.c:816 */
6677 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_set_exp_free
), &(*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6679 #line 6680 "src/parser_proc.c" /* glr.c:816 */
6683 #line 2220 "src/parser_proc_grammar.y" /* glr.c:816 */
6685 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6687 #line 6688 "src/parser_proc.c" /* glr.c:816 */
6691 #line 2226 "src/parser_proc_grammar.y" /* glr.c:816 */
6693 (*(struct psi_assert_stmt
**)(&(*yyvalp
))) = psi_assert_stmt_init((enum psi_assert_kind
) (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6694 (*(struct psi_assert_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6696 #line 6697 "src/parser_proc.c" /* glr.c:816 */
6700 #line 2238 "src/parser_proc_grammar.y" /* glr.c:816 */
6702 (*(struct psi_free_stmt
**)(&(*yyvalp
))) = psi_free_stmt_init((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6703 (*(struct psi_free_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6705 #line 6706 "src/parser_proc.c" /* glr.c:816 */
6709 #line 2245 "src/parser_proc_grammar.y" /* glr.c:816 */
6711 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_free_exp_free
), &(*(struct psi_free_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6713 #line 6714 "src/parser_proc.c" /* glr.c:816 */
6717 #line 2248 "src/parser_proc_grammar.y" /* glr.c:816 */
6719 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &(*(struct psi_free_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6721 #line 6722 "src/parser_proc.c" /* glr.c:816 */
6725 #line 2254 "src/parser_proc_grammar.y" /* glr.c:816 */
6727 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
6728 (*(struct psi_free_exp
**)(&(*yyvalp
))) = psi_free_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6729 (*(struct psi_free_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6731 #line 6732 "src/parser_proc.c" /* glr.c:816 */
6735 #line 2262 "src/parser_proc_grammar.y" /* glr.c:816 */
6737 (*(bool*)(&(*yyvalp
))) = false;
6739 #line 6740 "src/parser_proc.c" /* glr.c:816 */
6743 #line 2265 "src/parser_proc_grammar.y" /* glr.c:816 */
6745 (*(bool*)(&(*yyvalp
))) = true;
6747 #line 6748 "src/parser_proc.c" /* glr.c:816 */
6751 #line 6752 "src/parser_proc.c" /* glr.c:816 */
6762 # undef YYRECOVERING
6767 yyuserMerge (int yyn
, YYSTYPE
* yy0
, YYSTYPE
* yy1
)
6779 /* Bison grammar-table manipulation. */
6781 /*-----------------------------------------------.
6782 | Release the memory associated to this symbol. |
6783 `-----------------------------------------------*/
6786 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
6794 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
6796 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
6799 case 141: /* binary_op_token */
6800 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6802 #line 6803 "src/parser_proc.c" /* glr.c:846 */
6805 case 142: /* unary_op_token */
6806 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6808 #line 6809 "src/parser_proc.c" /* glr.c:846 */
6811 case 143: /* name_token */
6812 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6814 #line 6815 "src/parser_proc.c" /* glr.c:846 */
6817 case 144: /* any_noeol_token */
6818 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6820 #line 6821 "src/parser_proc.c" /* glr.c:846 */
6824 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
6825 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
6826 #line 6827 "src/parser_proc.c" /* glr.c:846 */
6830 #line 324 "src/parser_proc_grammar.y" /* glr.c:846 */
6831 {psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&(*yyvaluep
))));}
6832 #line 6833 "src/parser_proc.c" /* glr.c:846 */
6835 case 151: /* cpp_exp */
6836 #line 324 "src/parser_proc_grammar.y" /* glr.c:846 */
6837 {psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&(*yyvaluep
))));}
6838 #line 6839 "src/parser_proc.c" /* glr.c:846 */
6841 case 153: /* cpp_message_token */
6842 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6844 #line 6845 "src/parser_proc.c" /* glr.c:846 */
6847 case 154: /* cpp_include_token */
6848 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6850 #line 6851 "src/parser_proc.c" /* glr.c:846 */
6853 case 155: /* cpp_header_token */
6854 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6856 #line 6857 "src/parser_proc.c" /* glr.c:846 */
6859 case 156: /* cpp_no_arg_token */
6860 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6862 #line 6863 "src/parser_proc.c" /* glr.c:846 */
6865 case 157: /* cpp_name_arg_token */
6866 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6868 #line 6869 "src/parser_proc.c" /* glr.c:846 */
6871 case 158: /* cpp_exp_arg_token */
6872 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6874 #line 6875 "src/parser_proc.c" /* glr.c:846 */
6877 case 159: /* cpp_macro_decl */
6878 #line 326 "src/parser_proc_grammar.y" /* glr.c:846 */
6879 {psi_cpp_macro_decl_free(&(*(struct psi_cpp_macro_decl
**)(&(*yyvaluep
))));}
6880 #line 6881 "src/parser_proc.c" /* glr.c:846 */
6883 case 160: /* cpp_macro_sig */
6884 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6885 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6886 #line 6887 "src/parser_proc.c" /* glr.c:846 */
6889 case 161: /* cpp_macro_sig_args */
6890 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6891 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6892 #line 6893 "src/parser_proc.c" /* glr.c:846 */
6895 case 162: /* cpp_macro_decl_tokens */
6896 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6897 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6898 #line 6899 "src/parser_proc.c" /* glr.c:846 */
6901 case 163: /* cpp_macro_decl_token_list */
6902 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6903 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6904 #line 6905 "src/parser_proc.c" /* glr.c:846 */
6907 case 164: /* cpp_macro_exp */
6908 #line 330 "src/parser_proc_grammar.y" /* glr.c:846 */
6909 {psi_num_exp_free(&(*(struct psi_num_exp
**)(&(*yyvaluep
))));}
6910 #line 6911 "src/parser_proc.c" /* glr.c:846 */
6913 case 165: /* cpp_macro_call_args */
6914 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6915 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6916 #line 6917 "src/parser_proc.c" /* glr.c:846 */
6919 case 166: /* cpp_macro_call_arg_list */
6920 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6921 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6922 #line 6923 "src/parser_proc.c" /* glr.c:846 */
6925 case 167: /* constant */
6926 #line 336 "src/parser_proc_grammar.y" /* glr.c:846 */
6927 {psi_const_free(&(*(struct psi_const
**)(&(*yyvaluep
))));}
6928 #line 6929 "src/parser_proc.c" /* glr.c:846 */
6931 case 168: /* impl_def_val */
6932 #line 338 "src/parser_proc_grammar.y" /* glr.c:846 */
6933 {psi_impl_def_val_free(&(*(struct psi_impl_def_val
**)(&(*yyvaluep
))));}
6934 #line 6935 "src/parser_proc.c" /* glr.c:846 */
6937 case 169: /* impl_def_val_token */
6938 #line 333 "src/parser_proc_grammar.y" /* glr.c:846 */
6940 #line 6941 "src/parser_proc.c" /* glr.c:846 */
6943 case 170: /* decl_typedef */
6944 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6945 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6946 #line 6947 "src/parser_proc.c" /* glr.c:846 */
6949 case 171: /* typedef */
6950 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6951 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6952 #line 6953 "src/parser_proc.c" /* glr.c:846 */
6955 case 172: /* typedef_anon */
6956 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6957 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6958 #line 6959 "src/parser_proc.c" /* glr.c:846 */
6961 case 173: /* typedef_decl */
6962 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6963 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6964 #line 6965 "src/parser_proc.c" /* glr.c:846 */
6967 case 174: /* typedef_anon_decl */
6968 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6969 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6970 #line 6971 "src/parser_proc.c" /* glr.c:846 */
6973 case 175: /* qualified_decl_type */
6974 #line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
6975 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
6976 #line 6977 "src/parser_proc.c" /* glr.c:846 */
6979 case 177: /* decl_type */
6980 #line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
6981 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
6982 #line 6983 "src/parser_proc.c" /* glr.c:846 */
6985 case 178: /* decl_type_complex */
6986 #line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
6987 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
6988 #line 6989 "src/parser_proc.c" /* glr.c:846 */
6991 case 179: /* decl_type_simple */
6992 #line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
6993 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
6994 #line 6995 "src/parser_proc.c" /* glr.c:846 */
6997 case 180: /* decl_real_type */
6998 #line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
6999 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7000 #line 7001 "src/parser_proc.c" /* glr.c:846 */
7003 case 181: /* int_signed */
7004 #line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
7006 #line 7007 "src/parser_proc.c" /* glr.c:846 */
7009 case 182: /* int_width */
7010 #line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
7011 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7012 #line 7013 "src/parser_proc.c" /* glr.c:846 */
7015 case 183: /* decl_int_type */
7016 #line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
7017 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7018 #line 7019 "src/parser_proc.c" /* glr.c:846 */
7021 case 184: /* int_signed_types */
7022 #line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
7023 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7024 #line 7025 "src/parser_proc.c" /* glr.c:846 */
7027 case 185: /* signed_short_types */
7028 #line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
7030 #line 7031 "src/parser_proc.c" /* glr.c:846 */
7033 case 186: /* signed_long_types */
7034 #line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
7036 #line 7037 "src/parser_proc.c" /* glr.c:846 */
7039 case 187: /* int_width_types */
7040 #line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
7041 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7042 #line 7043 "src/parser_proc.c" /* glr.c:846 */
7045 case 188: /* decl_stmt */
7046 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7047 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7048 #line 7049 "src/parser_proc.c" /* glr.c:846 */
7051 case 189: /* decl_asm */
7052 #line 344 "src/parser_proc_grammar.y" /* glr.c:846 */
7053 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7054 #line 7055 "src/parser_proc.c" /* glr.c:846 */
7057 case 190: /* quoted_strings */
7058 #line 344 "src/parser_proc_grammar.y" /* glr.c:846 */
7059 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7060 #line 7061 "src/parser_proc.c" /* glr.c:846 */
7063 case 191: /* decl_extvar_stmt */
7064 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7065 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7066 #line 7067 "src/parser_proc.c" /* glr.c:846 */
7069 case 192: /* decl_extvar_list */
7070 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7071 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7072 #line 7073 "src/parser_proc.c" /* glr.c:846 */
7075 case 193: /* decl_vars */
7076 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7077 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7078 #line 7079 "src/parser_proc.c" /* glr.c:846 */
7081 case 194: /* ignored_decl */
7082 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7083 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7084 #line 7085 "src/parser_proc.c" /* glr.c:846 */
7087 case 198: /* decl */
7088 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7089 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7090 #line 7091 "src/parser_proc.c" /* glr.c:846 */
7093 case 199: /* decl_body */
7094 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7095 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7096 #line 7097 "src/parser_proc.c" /* glr.c:846 */
7099 case 200: /* decl_func_body */
7100 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7101 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7102 #line 7103 "src/parser_proc.c" /* glr.c:846 */
7105 case 201: /* decl_functor_body */
7106 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7107 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7108 #line 7109 "src/parser_proc.c" /* glr.c:846 */
7111 case 202: /* decl_anon_functor_body */
7112 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7113 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7114 #line 7115 "src/parser_proc.c" /* glr.c:846 */
7117 case 203: /* decl_functor */
7118 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7119 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7120 #line 7121 "src/parser_proc.c" /* glr.c:846 */
7123 case 204: /* decl_anon_functor */
7124 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7125 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7126 #line 7127 "src/parser_proc.c" /* glr.c:846 */
7129 case 205: /* decl_func */
7130 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7131 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7132 #line 7133 "src/parser_proc.c" /* glr.c:846 */
7135 case 206: /* decl_args */
7136 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7137 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7138 #line 7139 "src/parser_proc.c" /* glr.c:846 */
7141 case 207: /* decl_arg_list */
7142 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7143 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7144 #line 7145 "src/parser_proc.c" /* glr.c:846 */
7147 case 208: /* decl_anon_arg */
7148 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7149 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7150 #line 7151 "src/parser_proc.c" /* glr.c:846 */
7153 case 209: /* decl_arg */
7154 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7155 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7156 #line 7157 "src/parser_proc.c" /* glr.c:846 */
7159 case 210: /* decl_var */
7160 #line 353 "src/parser_proc_grammar.y" /* glr.c:846 */
7161 {psi_decl_var_free(&(*(struct psi_decl_var
**)(&(*yyvaluep
))));}
7162 #line 7163 "src/parser_proc.c" /* glr.c:846 */
7165 case 211: /* decl_union */
7166 #line 357 "src/parser_proc_grammar.y" /* glr.c:846 */
7167 {psi_decl_union_free(&(*(struct psi_decl_union
**)(&(*yyvaluep
))));}
7168 #line 7169 "src/parser_proc.c" /* glr.c:846 */
7171 case 212: /* decl_struct */
7172 #line 355 "src/parser_proc_grammar.y" /* glr.c:846 */
7173 {psi_decl_struct_free(&(*(struct psi_decl_struct
**)(&(*yyvaluep
))));}
7174 #line 7175 "src/parser_proc.c" /* glr.c:846 */
7177 case 213: /* decl_struct_args */
7178 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7179 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7180 #line 7181 "src/parser_proc.c" /* glr.c:846 */
7183 case 214: /* struct_args_block */
7184 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7185 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7186 #line 7187 "src/parser_proc.c" /* glr.c:846 */
7189 case 215: /* struct_args */
7190 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7191 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7192 #line 7193 "src/parser_proc.c" /* glr.c:846 */
7195 case 216: /* struct_arg_var_list */
7196 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7197 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7198 #line 7199 "src/parser_proc.c" /* glr.c:846 */
7201 case 217: /* decl_vars_with_layout */
7202 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7203 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7204 #line 7205 "src/parser_proc.c" /* glr.c:846 */
7207 case 218: /* decl_enum */
7208 #line 359 "src/parser_proc_grammar.y" /* glr.c:846 */
7209 {psi_decl_enum_free(&(*(struct psi_decl_enum
**)(&(*yyvaluep
))));}
7210 #line 7211 "src/parser_proc.c" /* glr.c:846 */
7213 case 219: /* decl_enum_items */
7214 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7215 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7216 #line 7217 "src/parser_proc.c" /* glr.c:846 */
7219 case 220: /* decl_enum_item */
7220 #line 361 "src/parser_proc_grammar.y" /* glr.c:846 */
7221 {psi_decl_enum_item_free(&(*(struct psi_decl_enum_item
**)(&(*yyvaluep
))));}
7222 #line 7223 "src/parser_proc.c" /* glr.c:846 */
7225 case 221: /* num_exp */
7226 #line 419 "src/parser_proc_grammar.y" /* glr.c:846 */
7227 {psi_num_exp_free(&(*(struct psi_num_exp
**)(&(*yyvaluep
))));}
7228 #line 7229 "src/parser_proc.c" /* glr.c:846 */
7231 case 222: /* number */
7232 #line 421 "src/parser_proc_grammar.y" /* glr.c:846 */
7233 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7234 #line 7235 "src/parser_proc.c" /* glr.c:846 */
7237 case 223: /* sizeof */
7238 #line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
7239 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7240 #line 7241 "src/parser_proc.c" /* glr.c:846 */
7243 case 224: /* sizeof_body */
7244 #line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
7245 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7246 #line 7247 "src/parser_proc.c" /* glr.c:846 */
7249 case 225: /* sizeof_body_notypes */
7250 #line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
7251 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7252 #line 7253 "src/parser_proc.c" /* glr.c:846 */
7255 case 226: /* enum_name */
7256 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7257 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7258 #line 7259 "src/parser_proc.c" /* glr.c:846 */
7261 case 227: /* union_name */
7262 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7263 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7264 #line 7265 "src/parser_proc.c" /* glr.c:846 */
7267 case 228: /* struct_name */
7268 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7269 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7270 #line 7271 "src/parser_proc.c" /* glr.c:846 */
7273 case 229: /* optional_name */
7274 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7275 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7276 #line 7277 "src/parser_proc.c" /* glr.c:846 */
7279 case 231: /* decl_layout */
7280 #line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
7281 {psi_layout_free(&(*(struct psi_layout
**)(&(*yyvaluep
))));}
7282 #line 7283 "src/parser_proc.c" /* glr.c:846 */
7285 case 232: /* align_and_size */
7286 #line 366 "src/parser_proc_grammar.y" /* glr.c:846 */
7288 #line 7289 "src/parser_proc.c" /* glr.c:846 */
7291 case 233: /* array_size */
7292 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7294 #line 7295 "src/parser_proc.c" /* glr.c:846 */
7297 case 235: /* indirection */
7298 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7300 #line 7301 "src/parser_proc.c" /* glr.c:846 */
7303 case 236: /* pointers */
7304 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7306 #line 7307 "src/parser_proc.c" /* glr.c:846 */
7309 case 237: /* asterisks */
7310 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7312 #line 7313 "src/parser_proc.c" /* glr.c:846 */
7315 case 240: /* impl */
7316 #line 374 "src/parser_proc_grammar.y" /* glr.c:846 */
7317 {psi_impl_free(&(*(struct psi_impl
**)(&(*yyvaluep
))));}
7318 #line 7319 "src/parser_proc.c" /* glr.c:846 */
7321 case 241: /* impl_func */
7322 #line 376 "src/parser_proc_grammar.y" /* glr.c:846 */
7323 {psi_impl_func_free(&(*(struct psi_impl_func
**)(&(*yyvaluep
))));}
7324 #line 7325 "src/parser_proc.c" /* glr.c:846 */
7327 case 242: /* impl_args */
7328 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7329 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7330 #line 7331 "src/parser_proc.c" /* glr.c:846 */
7333 case 243: /* impl_arg */
7334 #line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
7335 {psi_impl_arg_free(&(*(struct psi_impl_arg
**)(&(*yyvaluep
))));}
7336 #line 7337 "src/parser_proc.c" /* glr.c:846 */
7339 case 244: /* impl_var */
7340 #line 382 "src/parser_proc_grammar.y" /* glr.c:846 */
7341 {psi_impl_var_free(&(*(struct psi_impl_var
**)(&(*yyvaluep
))));}
7342 #line 7343 "src/parser_proc.c" /* glr.c:846 */
7345 case 245: /* impl_type */
7346 #line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
7347 {psi_impl_type_free(&(*(struct psi_impl_type
**)(&(*yyvaluep
))));}
7348 #line 7349 "src/parser_proc.c" /* glr.c:846 */
7351 case 246: /* impl_type_restricted */
7352 #line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
7353 {psi_impl_type_free(&(*(struct psi_impl_type
**)(&(*yyvaluep
))));}
7354 #line 7355 "src/parser_proc.c" /* glr.c:846 */
7357 case 247: /* impl_type_token */
7358 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7359 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7360 #line 7361 "src/parser_proc.c" /* glr.c:846 */
7363 case 248: /* impl_type_restricted_token */
7364 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7365 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7366 #line 7367 "src/parser_proc.c" /* glr.c:846 */
7369 case 249: /* impl_type_extended_token */
7370 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7371 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7372 #line 7373 "src/parser_proc.c" /* glr.c:846 */
7375 case 250: /* impl_stmts */
7376 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7377 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7378 #line 7379 "src/parser_proc.c" /* glr.c:846 */
7381 case 251: /* impl_stmt */
7382 #line 412 "src/parser_proc_grammar.y" /* glr.c:846 */
7383 {psi_impl_stmt_free(&(*(struct psi_token
***)(&(*yyvaluep
))));}
7384 #line 7385 "src/parser_proc.c" /* glr.c:846 */
7387 case 252: /* let_stmt */
7388 #line 385 "src/parser_proc_grammar.y" /* glr.c:846 */
7389 {psi_let_stmt_free(&(*(struct psi_let_stmt
**)(&(*yyvaluep
))));}
7390 #line 7391 "src/parser_proc.c" /* glr.c:846 */
7393 case 253: /* let_exp */
7394 #line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
7395 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7396 #line 7397 "src/parser_proc.c" /* glr.c:846 */
7399 case 254: /* let_exp_byref */
7400 #line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
7401 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7402 #line 7403 "src/parser_proc.c" /* glr.c:846 */
7405 case 255: /* let_exp_assign */
7406 #line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
7407 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7408 #line 7409 "src/parser_proc.c" /* glr.c:846 */
7411 case 256: /* let_calloc */
7412 #line 389 "src/parser_proc_grammar.y" /* glr.c:846 */
7413 {psi_let_calloc_free(&(*(struct psi_let_calloc
**)(&(*yyvaluep
))));}
7414 #line 7415 "src/parser_proc.c" /* glr.c:846 */
7417 case 257: /* let_callback */
7418 #line 391 "src/parser_proc_grammar.y" /* glr.c:846 */
7419 {psi_let_callback_free(&(*(struct psi_let_callback
**)(&(*yyvaluep
))));}
7420 #line 7421 "src/parser_proc.c" /* glr.c:846 */
7423 case 258: /* let_func */
7424 #line 393 "src/parser_proc_grammar.y" /* glr.c:846 */
7425 {psi_let_func_free(&(*(struct psi_let_func
**)(&(*yyvaluep
))));}
7426 #line 7427 "src/parser_proc.c" /* glr.c:846 */
7429 case 259: /* let_func_token */
7430 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7431 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7432 #line 7433 "src/parser_proc.c" /* glr.c:846 */
7435 case 260: /* let_func_exps */
7436 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7437 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7438 #line 7439 "src/parser_proc.c" /* glr.c:846 */
7441 case 261: /* let_exps */
7442 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7443 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7444 #line 7445 "src/parser_proc.c" /* glr.c:846 */
7447 case 262: /* callback_rval */
7448 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7449 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7450 #line 7451 "src/parser_proc.c" /* glr.c:846 */
7453 case 263: /* callback_arg_list */
7454 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7455 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7456 #line 7457 "src/parser_proc.c" /* glr.c:846 */
7459 case 264: /* callback_args */
7460 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7461 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7462 #line 7463 "src/parser_proc.c" /* glr.c:846 */
7465 case 265: /* return_stmt */
7466 #line 403 "src/parser_proc_grammar.y" /* glr.c:846 */
7467 {psi_return_stmt_free(&(*(struct psi_return_stmt
**)(&(*yyvaluep
))));}
7468 #line 7469 "src/parser_proc.c" /* glr.c:846 */
7471 case 266: /* return_exp */
7472 #line 405 "src/parser_proc_grammar.y" /* glr.c:846 */
7473 {psi_return_exp_free(&(*(struct psi_return_exp
**)(&(*yyvaluep
))));}
7474 #line 7475 "src/parser_proc.c" /* glr.c:846 */
7477 case 267: /* call_decl_vars */
7478 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7479 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7480 #line 7481 "src/parser_proc.c" /* glr.c:846 */
7483 case 268: /* set_stmt */
7484 #line 395 "src/parser_proc_grammar.y" /* glr.c:846 */
7485 {psi_set_stmt_free(&(*(struct psi_set_stmt
**)(&(*yyvaluep
))));}
7486 #line 7487 "src/parser_proc.c" /* glr.c:846 */
7489 case 269: /* set_exp */
7490 #line 397 "src/parser_proc_grammar.y" /* glr.c:846 */
7491 {psi_set_exp_free(&(*(struct psi_set_exp
**)(&(*yyvaluep
))));}
7492 #line 7493 "src/parser_proc.c" /* glr.c:846 */
7495 case 270: /* set_func */
7496 #line 399 "src/parser_proc_grammar.y" /* glr.c:846 */
7497 {psi_set_func_free(&(*(struct psi_set_func
**)(&(*yyvaluep
))));}
7498 #line 7499 "src/parser_proc.c" /* glr.c:846 */
7501 case 271: /* set_func_token */
7502 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7503 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7504 #line 7505 "src/parser_proc.c" /* glr.c:846 */
7507 case 272: /* set_func_exps */
7508 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7509 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7510 #line 7511 "src/parser_proc.c" /* glr.c:846 */
7513 case 273: /* set_exps */
7514 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7515 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7516 #line 7517 "src/parser_proc.c" /* glr.c:846 */
7519 case 274: /* assert_stmt */
7520 #line 401 "src/parser_proc_grammar.y" /* glr.c:846 */
7521 {psi_assert_stmt_free(&(*(struct psi_assert_stmt
**)(&(*yyvaluep
))));}
7522 #line 7523 "src/parser_proc.c" /* glr.c:846 */
7525 case 275: /* assert_stmt_token */
7526 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7527 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7528 #line 7529 "src/parser_proc.c" /* glr.c:846 */
7531 case 276: /* free_stmt */
7532 #line 407 "src/parser_proc_grammar.y" /* glr.c:846 */
7533 {psi_free_stmt_free(&(*(struct psi_free_stmt
**)(&(*yyvaluep
))));}
7534 #line 7535 "src/parser_proc.c" /* glr.c:846 */
7537 case 277: /* free_exps */
7538 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7539 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7540 #line 7541 "src/parser_proc.c" /* glr.c:846 */
7543 case 278: /* free_exp */
7544 #line 409 "src/parser_proc_grammar.y" /* glr.c:846 */
7545 {psi_free_exp_free(&(*(struct psi_free_exp
**)(&(*yyvaluep
))));}
7546 #line 7547 "src/parser_proc.c" /* glr.c:846 */
7549 case 279: /* reference */
7550 #line 426 "src/parser_proc_grammar.y" /* glr.c:846 */
7552 #line 7553 "src/parser_proc.c" /* glr.c:846 */
7559 YY_IGNORE_MAYBE_UNINITIALIZED_END
7562 /** Number of symbols composing the right hand side of rule #RULE. */
7564 yyrhsLength (yyRuleNum yyrule
)
7566 return yyr2
[yyrule
];
7570 yydestroyGLRState (char const *yymsg
, yyGLRState
*yys
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
7572 if (yys
->yyresolved
)
7573 yydestruct (yymsg
, yystos
[yys
->yylrState
],
7574 &yys
->yysemantics
.yysval
, P
, tokens
, index
);
7580 if (yys
->yysemantics
.yyfirstVal
)
7581 YYFPRINTF (stderr
, "%s unresolved", yymsg
);
7583 YYFPRINTF (stderr
, "%s incomplete", yymsg
);
7584 YY_SYMBOL_PRINT ("", yystos
[yys
->yylrState
], YY_NULLPTR
, &yys
->yyloc
);
7588 if (yys
->yysemantics
.yyfirstVal
)
7590 yySemanticOption
*yyoption
= yys
->yysemantics
.yyfirstVal
;
7593 for (yyrh
= yyoption
->yystate
, yyn
= yyrhsLength (yyoption
->yyrule
);
7595 yyrh
= yyrh
->yypred
, yyn
-= 1)
7596 yydestroyGLRState (yymsg
, yyrh
, P
, tokens
, index
);
7601 /** Left-hand-side symbol for rule #YYRULE. */
7602 static inline yySymbol
7603 yylhsNonterm (yyRuleNum yyrule
)
7605 return yyr1
[yyrule
];
7608 #define yypact_value_is_default(Yystate) \
7609 (!!((Yystate) == (-717)))
7611 /** True iff LR state YYSTATE has only a default reduction (regardless
7613 static inline yybool
7614 yyisDefaultedState (yyStateNum yystate
)
7616 return yypact_value_is_default (yypact
[yystate
]);
7619 /** The default reduction for YYSTATE, assuming it has one. */
7620 static inline yyRuleNum
7621 yydefaultAction (yyStateNum yystate
)
7623 return yydefact
[yystate
];
7626 #define yytable_value_is_error(Yytable_value) \
7629 /** Set *YYACTION to the action to take in YYSTATE on seeing YYTOKEN.
7631 * R < 0: Reduce on rule -R.
7633 * R > 0: Shift to state R.
7634 * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list
7635 * of conflicting reductions.
7638 yygetLRActions (yyStateNum yystate
, int yytoken
,
7639 int* yyaction
, const short int** yyconflicts
)
7641 int yyindex
= yypact
[yystate
] + yytoken
;
7642 if (yypact_value_is_default (yypact
[yystate
])
7643 || yyindex
< 0 || YYLAST
< yyindex
|| yycheck
[yyindex
] != yytoken
)
7645 *yyaction
= -yydefact
[yystate
];
7646 *yyconflicts
= yyconfl
;
7648 else if (! yytable_value_is_error (yytable
[yyindex
]))
7650 *yyaction
= yytable
[yyindex
];
7651 *yyconflicts
= yyconfl
+ yyconflp
[yyindex
];
7656 *yyconflicts
= yyconfl
+ yyconflp
[yyindex
];
7660 /** Compute post-reduction state.
7661 * \param yystate the current state
7662 * \param yysym the nonterminal to push on the stack
7664 static inline yyStateNum
7665 yyLRgotoState (yyStateNum yystate
, yySymbol yysym
)
7667 int yyr
= yypgoto
[yysym
- YYNTOKENS
] + yystate
;
7668 if (0 <= yyr
&& yyr
<= YYLAST
&& yycheck
[yyr
] == yystate
)
7669 return yytable
[yyr
];
7671 return yydefgoto
[yysym
- YYNTOKENS
];
7674 static inline yybool
7675 yyisShiftAction (int yyaction
)
7677 return 0 < yyaction
;
7680 static inline yybool
7681 yyisErrorAction (int yyaction
)
7683 return yyaction
== 0;
7688 /** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state
7689 * if YYISSTATE, and otherwise a semantic option. Callers should call
7690 * YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient
7693 static inline yyGLRStackItem
*
7694 yynewGLRStackItem (yyGLRStack
* yystackp
, yybool yyisState
)
7696 yyGLRStackItem
* yynewItem
= yystackp
->yynextFree
;
7697 yystackp
->yyspaceLeft
-= 1;
7698 yystackp
->yynextFree
+= 1;
7699 yynewItem
->yystate
.yyisState
= yyisState
;
7703 /** Add a new semantic action that will execute the action for rule
7704 * YYRULE on the semantic values in YYRHS to the list of
7705 * alternative actions for YYSTATE. Assumes that YYRHS comes from
7706 * stack #YYK of *YYSTACKP. */
7708 yyaddDeferredAction (yyGLRStack
* yystackp
, size_t yyk
, yyGLRState
* yystate
,
7709 yyGLRState
* yyrhs
, yyRuleNum yyrule
)
7711 yySemanticOption
* yynewOption
=
7712 &yynewGLRStackItem (yystackp
, yyfalse
)->yyoption
;
7713 YYASSERT (!yynewOption
->yyisState
);
7714 yynewOption
->yystate
= yyrhs
;
7715 yynewOption
->yyrule
= yyrule
;
7716 if (yystackp
->yytops
.yylookaheadNeeds
[yyk
])
7718 yynewOption
->yyrawchar
= yychar
;
7719 yynewOption
->yyval
= yylval
;
7722 yynewOption
->yyrawchar
= YYEMPTY
;
7723 yynewOption
->yynext
= yystate
->yysemantics
.yyfirstVal
;
7724 yystate
->yysemantics
.yyfirstVal
= yynewOption
;
7726 YY_RESERVE_GLRSTACK (yystackp
);
7731 /** Initialize YYSET to a singleton set containing an empty stack. */
7733 yyinitStateSet (yyGLRStateSet
* yyset
)
7736 yyset
->yycapacity
= 16;
7737 yyset
->yystates
= (yyGLRState
**) YYMALLOC (16 * sizeof yyset
->yystates
[0]);
7738 if (! yyset
->yystates
)
7740 yyset
->yystates
[0] = YY_NULLPTR
;
7741 yyset
->yylookaheadNeeds
=
7742 (yybool
*) YYMALLOC (16 * sizeof yyset
->yylookaheadNeeds
[0]);
7743 if (! yyset
->yylookaheadNeeds
)
7745 YYFREE (yyset
->yystates
);
7751 static void yyfreeStateSet (yyGLRStateSet
* yyset
)
7753 YYFREE (yyset
->yystates
);
7754 YYFREE (yyset
->yylookaheadNeeds
);
7757 /** Initialize *YYSTACKP to a single empty stack, with total maximum
7758 * capacity for all stacks of YYSIZE. */
7760 yyinitGLRStack (yyGLRStack
* yystackp
, size_t yysize
)
7762 yystackp
->yyerrState
= 0;
7764 yystackp
->yyspaceLeft
= yysize
;
7766 (yyGLRStackItem
*) YYMALLOC (yysize
* sizeof yystackp
->yynextFree
[0]);
7767 if (!yystackp
->yyitems
)
7769 yystackp
->yynextFree
= yystackp
->yyitems
;
7770 yystackp
->yysplitPoint
= YY_NULLPTR
;
7771 yystackp
->yylastDeleted
= YY_NULLPTR
;
7772 return yyinitStateSet (&yystackp
->yytops
);
7776 #if YYSTACKEXPANDABLE
7777 # define YYRELOC(YYFROMITEMS,YYTOITEMS,YYX,YYTYPE) \
7778 &((YYTOITEMS) - ((YYFROMITEMS) - (yyGLRStackItem*) (YYX)))->YYTYPE
7780 /** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the
7781 stack from outside should be considered invalid after this call.
7782 We always expand when there are 1 or fewer items left AFTER an
7783 allocation, so that we can avoid having external pointers exist
7784 across an allocation. */
7786 yyexpandGLRStack (yyGLRStack
* yystackp
)
7788 yyGLRStackItem
* yynewItems
;
7789 yyGLRStackItem
* yyp0
, *yyp1
;
7792 size_t yysize
= yystackp
->yynextFree
- yystackp
->yyitems
;
7793 if (YYMAXDEPTH
- YYHEADROOM
< yysize
)
7794 yyMemoryExhausted (yystackp
);
7795 yynewSize
= 2*yysize
;
7796 if (YYMAXDEPTH
< yynewSize
)
7797 yynewSize
= YYMAXDEPTH
;
7798 yynewItems
= (yyGLRStackItem
*) YYMALLOC (yynewSize
* sizeof yynewItems
[0]);
7800 yyMemoryExhausted (yystackp
);
7801 for (yyp0
= yystackp
->yyitems
, yyp1
= yynewItems
, yyn
= yysize
;
7803 yyn
-= 1, yyp0
+= 1, yyp1
+= 1)
7806 if (*(yybool
*) yyp0
)
7808 yyGLRState
* yys0
= &yyp0
->yystate
;
7809 yyGLRState
* yys1
= &yyp1
->yystate
;
7810 if (yys0
->yypred
!= YY_NULLPTR
)
7812 YYRELOC (yyp0
, yyp1
, yys0
->yypred
, yystate
);
7813 if (! yys0
->yyresolved
&& yys0
->yysemantics
.yyfirstVal
!= YY_NULLPTR
)
7814 yys1
->yysemantics
.yyfirstVal
=
7815 YYRELOC (yyp0
, yyp1
, yys0
->yysemantics
.yyfirstVal
, yyoption
);
7819 yySemanticOption
* yyv0
= &yyp0
->yyoption
;
7820 yySemanticOption
* yyv1
= &yyp1
->yyoption
;
7821 if (yyv0
->yystate
!= YY_NULLPTR
)
7822 yyv1
->yystate
= YYRELOC (yyp0
, yyp1
, yyv0
->yystate
, yystate
);
7823 if (yyv0
->yynext
!= YY_NULLPTR
)
7824 yyv1
->yynext
= YYRELOC (yyp0
, yyp1
, yyv0
->yynext
, yyoption
);
7827 if (yystackp
->yysplitPoint
!= YY_NULLPTR
)
7828 yystackp
->yysplitPoint
= YYRELOC (yystackp
->yyitems
, yynewItems
,
7829 yystackp
->yysplitPoint
, yystate
);
7831 for (yyn
= 0; yyn
< yystackp
->yytops
.yysize
; yyn
+= 1)
7832 if (yystackp
->yytops
.yystates
[yyn
] != YY_NULLPTR
)
7833 yystackp
->yytops
.yystates
[yyn
] =
7834 YYRELOC (yystackp
->yyitems
, yynewItems
,
7835 yystackp
->yytops
.yystates
[yyn
], yystate
);
7836 YYFREE (yystackp
->yyitems
);
7837 yystackp
->yyitems
= yynewItems
;
7838 yystackp
->yynextFree
= yynewItems
+ yysize
;
7839 yystackp
->yyspaceLeft
= yynewSize
- yysize
;
7844 yyfreeGLRStack (yyGLRStack
* yystackp
)
7846 YYFREE (yystackp
->yyitems
);
7847 yyfreeStateSet (&yystackp
->yytops
);
7850 /** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the
7851 * splitpoint of *YYSTACKP, if needed, so that it is at least as deep as
7854 yyupdateSplit (yyGLRStack
* yystackp
, yyGLRState
* yys
)
7856 if (yystackp
->yysplitPoint
!= YY_NULLPTR
&& yystackp
->yysplitPoint
> yys
)
7857 yystackp
->yysplitPoint
= yys
;
7860 /** Invalidate stack #YYK in *YYSTACKP. */
7862 yymarkStackDeleted (yyGLRStack
* yystackp
, size_t yyk
)
7864 if (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
7865 yystackp
->yylastDeleted
= yystackp
->yytops
.yystates
[yyk
];
7866 yystackp
->yytops
.yystates
[yyk
] = YY_NULLPTR
;
7869 /** Undelete the last stack in *YYSTACKP that was marked as deleted. Can
7870 only be done once after a deletion, and only when all other stacks have
7873 yyundeleteLastStack (yyGLRStack
* yystackp
)
7875 if (yystackp
->yylastDeleted
== YY_NULLPTR
|| yystackp
->yytops
.yysize
!= 0)
7877 yystackp
->yytops
.yystates
[0] = yystackp
->yylastDeleted
;
7878 yystackp
->yytops
.yysize
= 1;
7879 YYDPRINTF ((stderr
, "Restoring last deleted stack as stack #0.\n"));
7880 yystackp
->yylastDeleted
= YY_NULLPTR
;
7884 yyremoveDeletes (yyGLRStack
* yystackp
)
7888 while (yyj
< yystackp
->yytops
.yysize
)
7890 if (yystackp
->yytops
.yystates
[yyi
] == YY_NULLPTR
)
7894 YYDPRINTF ((stderr
, "Removing dead stacks.\n"));
7896 yystackp
->yytops
.yysize
-= 1;
7900 yystackp
->yytops
.yystates
[yyj
] = yystackp
->yytops
.yystates
[yyi
];
7901 /* In the current implementation, it's unnecessary to copy
7902 yystackp->yytops.yylookaheadNeeds[yyi] since, after
7903 yyremoveDeletes returns, the parser immediately either enters
7904 deterministic operation or shifts a token. However, it doesn't
7905 hurt, and the code might evolve to need it. */
7906 yystackp
->yytops
.yylookaheadNeeds
[yyj
] =
7907 yystackp
->yytops
.yylookaheadNeeds
[yyi
];
7910 YYDPRINTF ((stderr
, "Rename stack %lu -> %lu.\n",
7911 (unsigned long int) yyi
, (unsigned long int) yyj
));
7919 /** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR
7920 * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic
7921 * value *YYVALP and source location *YYLOCP. */
7923 yyglrShift (yyGLRStack
* yystackp
, size_t yyk
, yyStateNum yylrState
,
7927 yyGLRState
* yynewState
= &yynewGLRStackItem (yystackp
, yytrue
)->yystate
;
7929 yynewState
->yylrState
= yylrState
;
7930 yynewState
->yyposn
= yyposn
;
7931 yynewState
->yyresolved
= yytrue
;
7932 yynewState
->yypred
= yystackp
->yytops
.yystates
[yyk
];
7933 yynewState
->yysemantics
.yysval
= *yyvalp
;
7934 yystackp
->yytops
.yystates
[yyk
] = yynewState
;
7936 YY_RESERVE_GLRSTACK (yystackp
);
7939 /** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR
7940 * state YYLRSTATE, at input position YYPOSN, with the (unresolved)
7941 * semantic value of YYRHS under the action for YYRULE. */
7943 yyglrShiftDefer (yyGLRStack
* yystackp
, size_t yyk
, yyStateNum yylrState
,
7944 size_t yyposn
, yyGLRState
* yyrhs
, yyRuleNum yyrule
)
7946 yyGLRState
* yynewState
= &yynewGLRStackItem (yystackp
, yytrue
)->yystate
;
7947 YYASSERT (yynewState
->yyisState
);
7949 yynewState
->yylrState
= yylrState
;
7950 yynewState
->yyposn
= yyposn
;
7951 yynewState
->yyresolved
= yyfalse
;
7952 yynewState
->yypred
= yystackp
->yytops
.yystates
[yyk
];
7953 yynewState
->yysemantics
.yyfirstVal
= YY_NULLPTR
;
7954 yystackp
->yytops
.yystates
[yyk
] = yynewState
;
7956 /* Invokes YY_RESERVE_GLRSTACK. */
7957 yyaddDeferredAction (yystackp
, yyk
, yynewState
, yyrhs
, yyrule
);
7961 # define YY_REDUCE_PRINT(Args)
7963 # define YY_REDUCE_PRINT(Args) \
7966 yy_reduce_print Args; \
7969 /*----------------------------------------------------------------------.
7970 | Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. |
7971 `----------------------------------------------------------------------*/
7974 yy_reduce_print (int yynormal
, yyGLRStackItem
* yyvsp
, size_t yyk
,
7975 yyRuleNum yyrule
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
7977 int yynrhs
= yyrhsLength (yyrule
);
7979 YYFPRINTF (stderr
, "Reducing stack %lu by rule %d (line %lu):\n",
7980 (unsigned long int) yyk
, yyrule
- 1,
7981 (unsigned long int) yyrline
[yyrule
]);
7983 yyfillin (yyvsp
, 1, -yynrhs
);
7984 /* The symbols being reduced. */
7985 for (yyi
= 0; yyi
< yynrhs
; yyi
++)
7987 YYFPRINTF (stderr
, " $%d = ", yyi
+ 1);
7988 yy_symbol_print (stderr
,
7989 yystos
[yyvsp
[yyi
- yynrhs
+ 1].yystate
.yylrState
],
7990 &yyvsp
[yyi
- yynrhs
+ 1].yystate
.yysemantics
.yysval
7991 , P
, tokens
, index
);
7992 if (!yyvsp
[yyi
- yynrhs
+ 1].yystate
.yyresolved
)
7993 YYFPRINTF (stderr
, " (unresolved)");
7994 YYFPRINTF (stderr
, "\n");
7999 /** Pop the symbols consumed by reduction #YYRULE from the top of stack
8000 * #YYK of *YYSTACKP, and perform the appropriate semantic action on their
8001 * semantic values. Assumes that all ambiguities in semantic values
8002 * have been previously resolved. Set *YYVALP to the resulting value,
8003 * and *YYLOCP to the computed location (if any). Return value is as
8004 * for userAction. */
8005 static inline YYRESULTTAG
8006 yydoAction (yyGLRStack
* yystackp
, size_t yyk
, yyRuleNum yyrule
,
8007 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8009 int yynrhs
= yyrhsLength (yyrule
);
8011 if (yystackp
->yysplitPoint
== YY_NULLPTR
)
8013 /* Standard special case: single stack. */
8014 yyGLRStackItem
* yyrhs
= (yyGLRStackItem
*) yystackp
->yytops
.yystates
[yyk
];
8015 YYASSERT (yyk
== 0);
8016 yystackp
->yynextFree
-= yynrhs
;
8017 yystackp
->yyspaceLeft
+= yynrhs
;
8018 yystackp
->yytops
.yystates
[0] = & yystackp
->yynextFree
[-1].yystate
;
8019 YY_REDUCE_PRINT ((1, yyrhs
, yyk
, yyrule
, P
, tokens
, index
));
8020 return yyuserAction (yyrule
, yynrhs
, yyrhs
, yystackp
,
8021 yyvalp
, P
, tokens
, index
);
8027 yyGLRStackItem yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
+ 1];
8028 yys
= yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
].yystate
.yypred
8029 = yystackp
->yytops
.yystates
[yyk
];
8030 for (yyi
= 0; yyi
< yynrhs
; yyi
+= 1)
8035 yyupdateSplit (yystackp
, yys
);
8036 yystackp
->yytops
.yystates
[yyk
] = yys
;
8037 YY_REDUCE_PRINT ((0, yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1, yyk
, yyrule
, P
, tokens
, index
));
8038 return yyuserAction (yyrule
, yynrhs
, yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1,
8039 yystackp
, yyvalp
, P
, tokens
, index
);
8043 /** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE,
8044 * and push back on the resulting nonterminal symbol. Perform the
8045 * semantic action associated with YYRULE and store its value with the
8046 * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently
8047 * unambiguous. Otherwise, store the deferred semantic action with
8048 * the new state. If the new state would have an identical input
8049 * position, LR state, and predecessor to an existing state on the stack,
8050 * it is identified with that existing state, eliminating stack #YYK from
8051 * *YYSTACKP. In this case, the semantic value is
8052 * added to the options for the existing state's semantic value.
8054 static inline YYRESULTTAG
8055 yyglrReduce (yyGLRStack
* yystackp
, size_t yyk
, yyRuleNum yyrule
,
8056 yybool yyforceEval
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8058 size_t yyposn
= yystackp
->yytops
.yystates
[yyk
]->yyposn
;
8060 if (yyforceEval
|| yystackp
->yysplitPoint
== YY_NULLPTR
)
8064 YYRESULTTAG yyflag
= yydoAction (yystackp
, yyk
, yyrule
, &yysval
, P
, tokens
, index
);
8065 if (yyflag
== yyerr
&& yystackp
->yysplitPoint
!= YY_NULLPTR
)
8067 YYDPRINTF ((stderr
, "Parse on stack %lu rejected by rule #%d.\n",
8068 (unsigned long int) yyk
, yyrule
- 1));
8072 YY_SYMBOL_PRINT ("-> $$ =", yyr1
[yyrule
], &yysval
, &yyloc
);
8073 yyglrShift (yystackp
, yyk
,
8074 yyLRgotoState (yystackp
->yytops
.yystates
[yyk
]->yylrState
,
8075 yylhsNonterm (yyrule
)),
8082 yyGLRState
* yys
, *yys0
= yystackp
->yytops
.yystates
[yyk
];
8083 yyStateNum yynewLRState
;
8085 for (yys
= yystackp
->yytops
.yystates
[yyk
], yyn
= yyrhsLength (yyrule
);
8091 yyupdateSplit (yystackp
, yys
);
8092 yynewLRState
= yyLRgotoState (yys
->yylrState
, yylhsNonterm (yyrule
));
8094 "Reduced stack %lu by rule #%d; action deferred. "
8095 "Now in state %d.\n",
8096 (unsigned long int) yyk
, yyrule
- 1, yynewLRState
));
8097 for (yyi
= 0; yyi
< yystackp
->yytops
.yysize
; yyi
+= 1)
8098 if (yyi
!= yyk
&& yystackp
->yytops
.yystates
[yyi
] != YY_NULLPTR
)
8100 yyGLRState
*yysplit
= yystackp
->yysplitPoint
;
8101 yyGLRState
*yyp
= yystackp
->yytops
.yystates
[yyi
];
8102 while (yyp
!= yys
&& yyp
!= yysplit
&& yyp
->yyposn
>= yyposn
)
8104 if (yyp
->yylrState
== yynewLRState
&& yyp
->yypred
== yys
)
8106 yyaddDeferredAction (yystackp
, yyk
, yyp
, yys0
, yyrule
);
8107 yymarkStackDeleted (yystackp
, yyk
);
8108 YYDPRINTF ((stderr
, "Merging stack %lu into stack %lu.\n",
8109 (unsigned long int) yyk
,
8110 (unsigned long int) yyi
));
8116 yystackp
->yytops
.yystates
[yyk
] = yys
;
8117 yyglrShiftDefer (yystackp
, yyk
, yynewLRState
, yyposn
, yys0
, yyrule
);
8123 yysplitStack (yyGLRStack
* yystackp
, size_t yyk
)
8125 if (yystackp
->yysplitPoint
== YY_NULLPTR
)
8127 YYASSERT (yyk
== 0);
8128 yystackp
->yysplitPoint
= yystackp
->yytops
.yystates
[yyk
];
8130 if (yystackp
->yytops
.yysize
>= yystackp
->yytops
.yycapacity
)
8132 yyGLRState
** yynewStates
;
8133 yybool
* yynewLookaheadNeeds
;
8135 yynewStates
= YY_NULLPTR
;
8137 if (yystackp
->yytops
.yycapacity
8138 > (YYSIZEMAX
/ (2 * sizeof yynewStates
[0])))
8139 yyMemoryExhausted (yystackp
);
8140 yystackp
->yytops
.yycapacity
*= 2;
8143 (yyGLRState
**) YYREALLOC (yystackp
->yytops
.yystates
,
8144 (yystackp
->yytops
.yycapacity
8145 * sizeof yynewStates
[0]));
8146 if (yynewStates
== YY_NULLPTR
)
8147 yyMemoryExhausted (yystackp
);
8148 yystackp
->yytops
.yystates
= yynewStates
;
8150 yynewLookaheadNeeds
=
8151 (yybool
*) YYREALLOC (yystackp
->yytops
.yylookaheadNeeds
,
8152 (yystackp
->yytops
.yycapacity
8153 * sizeof yynewLookaheadNeeds
[0]));
8154 if (yynewLookaheadNeeds
== YY_NULLPTR
)
8155 yyMemoryExhausted (yystackp
);
8156 yystackp
->yytops
.yylookaheadNeeds
= yynewLookaheadNeeds
;
8158 yystackp
->yytops
.yystates
[yystackp
->yytops
.yysize
]
8159 = yystackp
->yytops
.yystates
[yyk
];
8160 yystackp
->yytops
.yylookaheadNeeds
[yystackp
->yytops
.yysize
]
8161 = yystackp
->yytops
.yylookaheadNeeds
[yyk
];
8162 yystackp
->yytops
.yysize
+= 1;
8163 return yystackp
->yytops
.yysize
-1;
8166 /** True iff YYY0 and YYY1 represent identical options at the top level.
8167 * That is, they represent the same rule applied to RHS symbols
8168 * that produce the same terminal symbols. */
8170 yyidenticalOptions (yySemanticOption
* yyy0
, yySemanticOption
* yyy1
)
8172 if (yyy0
->yyrule
== yyy1
->yyrule
)
8174 yyGLRState
*yys0
, *yys1
;
8176 for (yys0
= yyy0
->yystate
, yys1
= yyy1
->yystate
,
8177 yyn
= yyrhsLength (yyy0
->yyrule
);
8179 yys0
= yys0
->yypred
, yys1
= yys1
->yypred
, yyn
-= 1)
8180 if (yys0
->yyposn
!= yys1
->yyposn
)
8188 /** Assuming identicalOptions (YYY0,YYY1), destructively merge the
8189 * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */
8191 yymergeOptionSets (yySemanticOption
* yyy0
, yySemanticOption
* yyy1
)
8193 yyGLRState
*yys0
, *yys1
;
8195 for (yys0
= yyy0
->yystate
, yys1
= yyy1
->yystate
,
8196 yyn
= yyrhsLength (yyy0
->yyrule
);
8198 yys0
= yys0
->yypred
, yys1
= yys1
->yypred
, yyn
-= 1)
8202 else if (yys0
->yyresolved
)
8204 yys1
->yyresolved
= yytrue
;
8205 yys1
->yysemantics
.yysval
= yys0
->yysemantics
.yysval
;
8207 else if (yys1
->yyresolved
)
8209 yys0
->yyresolved
= yytrue
;
8210 yys0
->yysemantics
.yysval
= yys1
->yysemantics
.yysval
;
8214 yySemanticOption
** yyz0p
= &yys0
->yysemantics
.yyfirstVal
;
8215 yySemanticOption
* yyz1
= yys1
->yysemantics
.yyfirstVal
;
8218 if (yyz1
== *yyz0p
|| yyz1
== YY_NULLPTR
)
8220 else if (*yyz0p
== YY_NULLPTR
)
8225 else if (*yyz0p
< yyz1
)
8227 yySemanticOption
* yyz
= *yyz0p
;
8229 yyz1
= yyz1
->yynext
;
8230 (*yyz0p
)->yynext
= yyz
;
8232 yyz0p
= &(*yyz0p
)->yynext
;
8234 yys1
->yysemantics
.yyfirstVal
= yys0
->yysemantics
.yyfirstVal
;
8239 /** Y0 and Y1 represent two possible actions to take in a given
8240 * parsing state; return 0 if no combination is possible,
8241 * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */
8243 yypreference (yySemanticOption
* y0
, yySemanticOption
* y1
)
8245 yyRuleNum r0
= y0
->yyrule
, r1
= y1
->yyrule
;
8246 int p0
= yydprec
[r0
], p1
= yydprec
[r1
];
8250 if (yymerger
[r0
] == 0 || yymerger
[r0
] != yymerger
[r1
])
8255 if (p0
== 0 || p1
== 0)
8264 static YYRESULTTAG
yyresolveValue (yyGLRState
* yys
,
8265 yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
);
8268 /** Resolve the previous YYN states starting at and including state YYS
8269 * on *YYSTACKP. If result != yyok, some states may have been left
8270 * unresolved possibly with empty semantic option chains. Regardless
8271 * of whether result = yyok, each state has been left with consistent
8272 * data so that yydestroyGLRState can be invoked if necessary. */
8274 yyresolveStates (yyGLRState
* yys
, int yyn
,
8275 yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8279 YYASSERT (yys
->yypred
);
8280 YYCHK (yyresolveStates (yys
->yypred
, yyn
-1, yystackp
, P
, tokens
, index
));
8281 if (! yys
->yyresolved
)
8282 YYCHK (yyresolveValue (yys
, yystackp
, P
, tokens
, index
));
8287 /** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its
8288 * user action, and return the semantic value and location in *YYVALP
8289 * and *YYLOCP. Regardless of whether result = yyok, all RHS states
8290 * have been destroyed (assuming the user action destroys all RHS
8291 * semantic values if invoked). */
8293 yyresolveAction (yySemanticOption
* yyopt
, yyGLRStack
* yystackp
,
8294 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8296 yyGLRStackItem yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
+ 1];
8297 int yynrhs
= yyrhsLength (yyopt
->yyrule
);
8298 YYRESULTTAG yyflag
=
8299 yyresolveStates (yyopt
->yystate
, yynrhs
, yystackp
, P
, tokens
, index
);
8303 for (yys
= yyopt
->yystate
; yynrhs
> 0; yys
= yys
->yypred
, yynrhs
-= 1)
8304 yydestroyGLRState ("Cleanup: popping", yys
, P
, tokens
, index
);
8308 yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
].yystate
.yypred
= yyopt
->yystate
;
8310 int yychar_current
= yychar
;
8311 YYSTYPE yylval_current
= yylval
;
8312 yychar
= yyopt
->yyrawchar
;
8313 yylval
= yyopt
->yyval
;
8314 yyflag
= yyuserAction (yyopt
->yyrule
, yynrhs
,
8315 yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1,
8316 yystackp
, yyvalp
, P
, tokens
, index
);
8317 yychar
= yychar_current
;
8318 yylval
= yylval_current
;
8325 yyreportTree (yySemanticOption
* yyx
, int yyindent
)
8327 int yynrhs
= yyrhsLength (yyx
->yyrule
);
8330 yyGLRState
* yystates
[1 + YYMAXRHS
];
8331 yyGLRState yyleftmost_state
;
8333 for (yyi
= yynrhs
, yys
= yyx
->yystate
; 0 < yyi
; yyi
-= 1, yys
= yys
->yypred
)
8334 yystates
[yyi
] = yys
;
8335 if (yys
== YY_NULLPTR
)
8337 yyleftmost_state
.yyposn
= 0;
8338 yystates
[0] = &yyleftmost_state
;
8343 if (yyx
->yystate
->yyposn
< yys
->yyposn
+ 1)
8344 YYFPRINTF (stderr
, "%*s%s -> <Rule %d, empty>\n",
8345 yyindent
, "", yytokenName (yylhsNonterm (yyx
->yyrule
)),
8348 YYFPRINTF (stderr
, "%*s%s -> <Rule %d, tokens %lu .. %lu>\n",
8349 yyindent
, "", yytokenName (yylhsNonterm (yyx
->yyrule
)),
8350 yyx
->yyrule
- 1, (unsigned long int) (yys
->yyposn
+ 1),
8351 (unsigned long int) yyx
->yystate
->yyposn
);
8352 for (yyi
= 1; yyi
<= yynrhs
; yyi
+= 1)
8354 if (yystates
[yyi
]->yyresolved
)
8356 if (yystates
[yyi
-1]->yyposn
+1 > yystates
[yyi
]->yyposn
)
8357 YYFPRINTF (stderr
, "%*s%s <empty>\n", yyindent
+2, "",
8358 yytokenName (yystos
[yystates
[yyi
]->yylrState
]));
8360 YYFPRINTF (stderr
, "%*s%s <tokens %lu .. %lu>\n", yyindent
+2, "",
8361 yytokenName (yystos
[yystates
[yyi
]->yylrState
]),
8362 (unsigned long int) (yystates
[yyi
-1]->yyposn
+ 1),
8363 (unsigned long int) yystates
[yyi
]->yyposn
);
8366 yyreportTree (yystates
[yyi
]->yysemantics
.yyfirstVal
, yyindent
+2);
8372 yyreportAmbiguity (yySemanticOption
* yyx0
,
8373 yySemanticOption
* yyx1
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8379 YYFPRINTF (stderr
, "Ambiguity detected.\n");
8380 YYFPRINTF (stderr
, "Option 1,\n");
8381 yyreportTree (yyx0
, 2);
8382 YYFPRINTF (stderr
, "\nOption 2,\n");
8383 yyreportTree (yyx1
, 2);
8384 YYFPRINTF (stderr
, "\n");
8387 yyerror (P
, tokens
, index
, YY_("syntax is ambiguous"));
8391 /** Resolve the ambiguity represented in state YYS in *YYSTACKP,
8392 * perform the indicated actions, and set the semantic value of YYS.
8393 * If result != yyok, the chain of semantic options in YYS has been
8394 * cleared instead or it has been left unmodified except that
8395 * redundant options may have been removed. Regardless of whether
8396 * result = yyok, YYS has been left with consistent data so that
8397 * yydestroyGLRState can be invoked if necessary. */
8399 yyresolveValue (yyGLRState
* yys
, yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8401 yySemanticOption
* yyoptionList
= yys
->yysemantics
.yyfirstVal
;
8402 yySemanticOption
* yybest
= yyoptionList
;
8403 yySemanticOption
** yypp
;
8404 yybool yymerge
= yyfalse
;
8408 for (yypp
= &yyoptionList
->yynext
; *yypp
!= YY_NULLPTR
; )
8410 yySemanticOption
* yyp
= *yypp
;
8412 if (yyidenticalOptions (yybest
, yyp
))
8414 yymergeOptionSets (yybest
, yyp
);
8415 *yypp
= yyp
->yynext
;
8419 switch (yypreference (yybest
, yyp
))
8422 return yyreportAmbiguity (yybest
, yyp
, P
, tokens
, index
);
8434 /* This cannot happen so it is not worth a YYASSERT (yyfalse),
8435 but some compilers complain if the default case is
8439 yypp
= &yyp
->yynext
;
8445 yySemanticOption
* yyp
;
8446 int yyprec
= yydprec
[yybest
->yyrule
];
8447 yyflag
= yyresolveAction (yybest
, yystackp
, &yysval
, P
, tokens
, index
);
8449 for (yyp
= yybest
->yynext
; yyp
!= YY_NULLPTR
; yyp
= yyp
->yynext
)
8451 if (yyprec
== yydprec
[yyp
->yyrule
])
8453 YYSTYPE yysval_other
;
8454 yyflag
= yyresolveAction (yyp
, yystackp
, &yysval_other
, P
, tokens
, index
);
8457 yydestruct ("Cleanup: discarding incompletely merged value for",
8458 yystos
[yys
->yylrState
],
8459 &yysval
, P
, tokens
, index
);
8462 yyuserMerge (yymerger
[yyp
->yyrule
], &yysval
, &yysval_other
);
8467 yyflag
= yyresolveAction (yybest
, yystackp
, &yysval
, P
, tokens
, index
);
8471 yys
->yyresolved
= yytrue
;
8472 yys
->yysemantics
.yysval
= yysval
;
8475 yys
->yysemantics
.yyfirstVal
= YY_NULLPTR
;
8480 yyresolveStack (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8482 if (yystackp
->yysplitPoint
!= YY_NULLPTR
)
8487 for (yyn
= 0, yys
= yystackp
->yytops
.yystates
[0];
8488 yys
!= yystackp
->yysplitPoint
;
8489 yys
= yys
->yypred
, yyn
+= 1)
8491 YYCHK (yyresolveStates (yystackp
->yytops
.yystates
[0], yyn
, yystackp
8492 , P
, tokens
, index
));
8498 yycompressStack (yyGLRStack
* yystackp
)
8500 yyGLRState
* yyp
, *yyq
, *yyr
;
8502 if (yystackp
->yytops
.yysize
!= 1 || yystackp
->yysplitPoint
== YY_NULLPTR
)
8505 for (yyp
= yystackp
->yytops
.yystates
[0], yyq
= yyp
->yypred
, yyr
= YY_NULLPTR
;
8506 yyp
!= yystackp
->yysplitPoint
;
8507 yyr
= yyp
, yyp
= yyq
, yyq
= yyp
->yypred
)
8510 yystackp
->yyspaceLeft
+= yystackp
->yynextFree
- yystackp
->yyitems
;
8511 yystackp
->yynextFree
= ((yyGLRStackItem
*) yystackp
->yysplitPoint
) + 1;
8512 yystackp
->yyspaceLeft
-= yystackp
->yynextFree
- yystackp
->yyitems
;
8513 yystackp
->yysplitPoint
= YY_NULLPTR
;
8514 yystackp
->yylastDeleted
= YY_NULLPTR
;
8516 while (yyr
!= YY_NULLPTR
)
8518 yystackp
->yynextFree
->yystate
= *yyr
;
8520 yystackp
->yynextFree
->yystate
.yypred
= &yystackp
->yynextFree
[-1].yystate
;
8521 yystackp
->yytops
.yystates
[0] = &yystackp
->yynextFree
->yystate
;
8522 yystackp
->yynextFree
+= 1;
8523 yystackp
->yyspaceLeft
-= 1;
8528 yyprocessOneStack (yyGLRStack
* yystackp
, size_t yyk
,
8529 size_t yyposn
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8531 while (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
8533 yyStateNum yystate
= yystackp
->yytops
.yystates
[yyk
]->yylrState
;
8534 YYDPRINTF ((stderr
, "Stack %lu Entering state %d\n",
8535 (unsigned long int) yyk
, yystate
));
8537 YYASSERT (yystate
!= YYFINAL
);
8539 if (yyisDefaultedState (yystate
))
8542 yyRuleNum yyrule
= yydefaultAction (yystate
);
8545 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8546 (unsigned long int) yyk
));
8547 yymarkStackDeleted (yystackp
, yyk
);
8550 yyflag
= yyglrReduce (yystackp
, yyk
, yyrule
, yyimmediate
[yyrule
], P
, tokens
, index
);
8551 if (yyflag
== yyerr
)
8555 "(predicate failure or explicit user error).\n",
8556 (unsigned long int) yyk
));
8557 yymarkStackDeleted (yystackp
, yyk
);
8567 const short int* yyconflicts
;
8569 yystackp
->yytops
.yylookaheadNeeds
[yyk
] = yytrue
;
8570 if (yychar
== YYEMPTY
)
8572 YYDPRINTF ((stderr
, "Reading a token: "));
8573 yychar
= yylex (&yylval
, P
, tokens
, index
);
8576 if (yychar
<= YYEOF
)
8578 yychar
= yytoken
= YYEOF
;
8579 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8583 yytoken
= YYTRANSLATE (yychar
);
8584 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8587 yygetLRActions (yystate
, yytoken
, &yyaction
, &yyconflicts
);
8589 while (*yyconflicts
!= 0)
8592 size_t yynewStack
= yysplitStack (yystackp
, yyk
);
8593 YYDPRINTF ((stderr
, "Splitting off stack %lu from %lu.\n",
8594 (unsigned long int) yynewStack
,
8595 (unsigned long int) yyk
));
8596 yyflag
= yyglrReduce (yystackp
, yynewStack
,
8598 yyimmediate
[*yyconflicts
], P
, tokens
, index
);
8600 YYCHK (yyprocessOneStack (yystackp
, yynewStack
,
8601 yyposn
, P
, tokens
, index
));
8602 else if (yyflag
== yyerr
)
8604 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8605 (unsigned long int) yynewStack
));
8606 yymarkStackDeleted (yystackp
, yynewStack
);
8613 if (yyisShiftAction (yyaction
))
8615 else if (yyisErrorAction (yyaction
))
8617 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8618 (unsigned long int) yyk
));
8619 yymarkStackDeleted (yystackp
, yyk
);
8624 YYRESULTTAG yyflag
= yyglrReduce (yystackp
, yyk
, -yyaction
,
8625 yyimmediate
[-yyaction
], P
, tokens
, index
);
8626 if (yyflag
== yyerr
)
8630 "(predicate failure or explicit user error).\n",
8631 (unsigned long int) yyk
));
8632 yymarkStackDeleted (yystackp
, yyk
);
8635 else if (yyflag
!= yyok
)
8644 yyreportSyntaxError (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8646 if (yystackp
->yyerrState
!= 0)
8648 #if ! YYERROR_VERBOSE
8649 yyerror (P
, tokens
, index
, YY_("syntax error"));
8652 yySymbol yytoken
= yychar
== YYEMPTY
? YYEMPTY
: YYTRANSLATE (yychar
);
8653 size_t yysize0
= yytnamerr (YY_NULLPTR
, yytokenName (yytoken
));
8654 size_t yysize
= yysize0
;
8655 yybool yysize_overflow
= yyfalse
;
8656 char* yymsg
= YY_NULLPTR
;
8657 enum { YYERROR_VERBOSE_ARGS_MAXIMUM
= 5 };
8658 /* Internationalized format string. */
8659 const char *yyformat
= YY_NULLPTR
;
8660 /* Arguments of yyformat. */
8661 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
8662 /* Number of reported tokens (one for the "unexpected", one per
8666 /* There are many possibilities here to consider:
8667 - If this state is a consistent state with a default action, then
8668 the only way this function was invoked is if the default action
8669 is an error action. In that case, don't check for expected
8670 tokens because there are none.
8671 - The only way there can be no lookahead present (in yychar) is if
8672 this state is a consistent state with a default action. Thus,
8673 detecting the absence of a lookahead is sufficient to determine
8674 that there is no unexpected or expected token to report. In that
8675 case, just report a simple "syntax error".
8676 - Don't assume there isn't a lookahead just because this state is a
8677 consistent state with a default action. There might have been a
8678 previous inconsistent state, consistent state with a non-default
8679 action, or user semantic action that manipulated yychar.
8680 - Of course, the expected token list depends on states to have
8681 correct lookahead information, and it depends on the parser not
8682 to perform extra reductions after fetching a lookahead from the
8683 scanner and before detecting a syntax error. Thus, state merging
8684 (from LALR or IELR) and default reductions corrupt the expected
8685 token list. However, the list is correct for canonical LR with
8686 one exception: it will still contain any token that will not be
8687 accepted due to an error action in a later state.
8689 if (yytoken
!= YYEMPTY
)
8691 int yyn
= yypact
[yystackp
->yytops
.yystates
[0]->yylrState
];
8692 yyarg
[yycount
++] = yytokenName (yytoken
);
8693 if (!yypact_value_is_default (yyn
))
8695 /* Start YYX at -YYN if negative to avoid negative indexes in
8696 YYCHECK. In other words, skip the first -YYN actions for this
8697 state because they are default actions. */
8698 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
8699 /* Stay within bounds of both yycheck and yytname. */
8700 int yychecklim
= YYLAST
- yyn
+ 1;
8701 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
8703 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
8704 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
8705 && !yytable_value_is_error (yytable
[yyx
+ yyn
]))
8707 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
8713 yyarg
[yycount
++] = yytokenName (yyx
);
8715 size_t yysz
= yysize
+ yytnamerr (YY_NULLPTR
, yytokenName (yyx
));
8716 yysize_overflow
|= yysz
< yysize
;
8725 #define YYCASE_(N, S) \
8729 YYCASE_(0, YY_("syntax error"));
8730 YYCASE_(1, YY_("syntax error, unexpected %s"));
8731 YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
8732 YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
8733 YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
8734 YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
8739 size_t yysz
= yysize
+ strlen (yyformat
);
8740 yysize_overflow
|= yysz
< yysize
;
8744 if (!yysize_overflow
)
8745 yymsg
= (char *) YYMALLOC (yysize
);
8751 while ((*yyp
= *yyformat
))
8753 if (*yyp
== '%' && yyformat
[1] == 's' && yyi
< yycount
)
8755 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
8764 yyerror (P
, tokens
, index
, yymsg
);
8769 yyerror (P
, tokens
, index
, YY_("syntax error"));
8770 yyMemoryExhausted (yystackp
);
8773 #endif /* YYERROR_VERBOSE */
8777 /* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP,
8778 yylval, and yylloc are the syntactic category, semantic value, and location
8779 of the lookahead. */
8781 yyrecoverSyntaxError (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8786 if (yystackp
->yyerrState
== 3)
8787 /* We just shifted the error token and (perhaps) took some
8788 reductions. Skip tokens until we can proceed. */
8792 if (yychar
== YYEOF
)
8793 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8794 if (yychar
!= YYEMPTY
)
8796 yytoken
= YYTRANSLATE (yychar
);
8797 yydestruct ("Error: discarding",
8798 yytoken
, &yylval
, P
, tokens
, index
);
8800 YYDPRINTF ((stderr
, "Reading a token: "));
8801 yychar
= yylex (&yylval
, P
, tokens
, index
);
8802 if (yychar
<= YYEOF
)
8804 yychar
= yytoken
= YYEOF
;
8805 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8809 yytoken
= YYTRANSLATE (yychar
);
8810 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8812 yyj
= yypact
[yystackp
->yytops
.yystates
[0]->yylrState
];
8813 if (yypact_value_is_default (yyj
))
8816 if (yyj
< 0 || YYLAST
< yyj
|| yycheck
[yyj
] != yytoken
)
8818 if (yydefact
[yystackp
->yytops
.yystates
[0]->yylrState
] != 0)
8821 else if (! yytable_value_is_error (yytable
[yyj
]))
8825 /* Reduce to one stack. */
8826 for (yyk
= 0; yyk
< yystackp
->yytops
.yysize
; yyk
+= 1)
8827 if (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
8829 if (yyk
>= yystackp
->yytops
.yysize
)
8830 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8831 for (yyk
+= 1; yyk
< yystackp
->yytops
.yysize
; yyk
+= 1)
8832 yymarkStackDeleted (yystackp
, yyk
);
8833 yyremoveDeletes (yystackp
);
8834 yycompressStack (yystackp
);
8836 /* Now pop stack until we find a state that shifts the error token. */
8837 yystackp
->yyerrState
= 3;
8838 while (yystackp
->yytops
.yystates
[0] != YY_NULLPTR
)
8840 yyGLRState
*yys
= yystackp
->yytops
.yystates
[0];
8841 yyj
= yypact
[yys
->yylrState
];
8842 if (! yypact_value_is_default (yyj
))
8845 if (0 <= yyj
&& yyj
<= YYLAST
&& yycheck
[yyj
] == YYTERROR
8846 && yyisShiftAction (yytable
[yyj
]))
8848 /* Shift the error token. */
8849 YY_SYMBOL_PRINT ("Shifting", yystos
[yytable
[yyj
]],
8850 &yylval
, &yyerrloc
);
8851 yyglrShift (yystackp
, 0, yytable
[yyj
],
8852 yys
->yyposn
, &yylval
);
8853 yys
= yystackp
->yytops
.yystates
[0];
8857 if (yys
->yypred
!= YY_NULLPTR
)
8858 yydestroyGLRState ("Error: popping", yys
, P
, tokens
, index
);
8859 yystackp
->yytops
.yystates
[0] = yys
->yypred
;
8860 yystackp
->yynextFree
-= 1;
8861 yystackp
->yyspaceLeft
+= 1;
8863 if (yystackp
->yytops
.yystates
[0] == YY_NULLPTR
)
8864 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8867 #define YYCHK1(YYE) \
8877 goto yyuser_error; \
8888 yyparse (struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8892 yyGLRStack
* const yystackp
= &yystack
;
8895 YYDPRINTF ((stderr
, "Starting parse\n"));
8898 yylval
= yyval_default
;
8900 /* User initialization code. */
8901 #line 144 "src/parser_proc_grammar.y" /* glr.c:2270 */
8905 #line 8906 "src/parser_proc.c" /* glr.c:2270 */
8907 if (! yyinitGLRStack (yystackp
, YYINITDEPTH
))
8908 goto yyexhaustedlab
;
8909 switch (YYSETJMP (yystack
.yyexception_buffer
))
8912 case 1: goto yyabortlab
;
8913 case 2: goto yyexhaustedlab
;
8914 default: goto yybuglab
;
8916 yyglrShift (&yystack
, 0, 0, 0, &yylval
);
8921 /* For efficiency, we have two loops, the first of which is
8922 specialized to deterministic operation (single stack, no
8923 potential ambiguity). */
8929 const short int* yyconflicts
;
8931 yyStateNum yystate
= yystack
.yytops
.yystates
[0]->yylrState
;
8932 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
8933 if (yystate
== YYFINAL
)
8935 if (yyisDefaultedState (yystate
))
8937 yyrule
= yydefaultAction (yystate
);
8941 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
8944 YYCHK1 (yyglrReduce (&yystack
, 0, yyrule
, yytrue
, P
, tokens
, index
));
8949 if (yychar
== YYEMPTY
)
8951 YYDPRINTF ((stderr
, "Reading a token: "));
8952 yychar
= yylex (&yylval
, P
, tokens
, index
);
8955 if (yychar
<= YYEOF
)
8957 yychar
= yytoken
= YYEOF
;
8958 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8962 yytoken
= YYTRANSLATE (yychar
);
8963 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8966 yygetLRActions (yystate
, yytoken
, &yyaction
, &yyconflicts
);
8967 if (*yyconflicts
!= 0)
8969 if (yyisShiftAction (yyaction
))
8971 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
8974 yyglrShift (&yystack
, 0, yyaction
, yyposn
, &yylval
);
8975 if (0 < yystack
.yyerrState
)
8976 yystack
.yyerrState
-= 1;
8978 else if (yyisErrorAction (yyaction
))
8981 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
8985 YYCHK1 (yyglrReduce (&yystack
, 0, -yyaction
, yytrue
, P
, tokens
, index
));
8991 yySymbol yytoken_to_shift
;
8994 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
8995 yystackp
->yytops
.yylookaheadNeeds
[yys
] = yychar
!= YYEMPTY
;
8997 /* yyprocessOneStack returns one of three things:
8999 - An error flag. If the caller is yyprocessOneStack, it
9000 immediately returns as well. When the caller is finally
9001 yyparse, it jumps to an error label via YYCHK1.
9003 - yyok, but yyprocessOneStack has invoked yymarkStackDeleted
9004 (&yystack, yys), which sets the top state of yys to NULL. Thus,
9005 yyparse's following invocation of yyremoveDeletes will remove
9008 - yyok, when ready to shift a token.
9010 Except in the first case, yyparse will invoke yyremoveDeletes and
9011 then shift the next token onto all remaining stacks. This
9012 synchronization of the shift (that is, after all preceding
9013 reductions on all stacks) helps prevent double destructor calls
9014 on yylval in the event of memory exhaustion. */
9016 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9017 YYCHK1 (yyprocessOneStack (&yystack
, yys
, yyposn
, P
, tokens
, index
));
9018 yyremoveDeletes (&yystack
);
9019 if (yystack
.yytops
.yysize
== 0)
9021 yyundeleteLastStack (&yystack
);
9022 if (yystack
.yytops
.yysize
== 0)
9023 yyFail (&yystack
, P
, tokens
, index
, YY_("syntax error"));
9024 YYCHK1 (yyresolveStack (&yystack
, P
, tokens
, index
));
9025 YYDPRINTF ((stderr
, "Returning to deterministic operation.\n"));
9027 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
9031 /* If any yyglrShift call fails, it will fail after shifting. Thus,
9032 a copy of yylval will already be on stack 0 in the event of a
9033 failure in the following loop. Thus, yychar is set to YYEMPTY
9034 before the loop to make sure the user destructor for yylval isn't
9036 yytoken_to_shift
= YYTRANSLATE (yychar
);
9039 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9042 const short int* yyconflicts
;
9043 yyStateNum yystate
= yystack
.yytops
.yystates
[yys
]->yylrState
;
9044 yygetLRActions (yystate
, yytoken_to_shift
, &yyaction
,
9046 /* Note that yyconflicts were handled by yyprocessOneStack. */
9047 YYDPRINTF ((stderr
, "On stack %lu, ", (unsigned long int) yys
));
9048 YY_SYMBOL_PRINT ("shifting", yytoken_to_shift
, &yylval
, &yylloc
);
9049 yyglrShift (&yystack
, yys
, yyaction
, yyposn
,
9051 YYDPRINTF ((stderr
, "Stack %lu now in state #%d\n",
9052 (unsigned long int) yys
,
9053 yystack
.yytops
.yystates
[yys
]->yylrState
));
9056 if (yystack
.yytops
.yysize
== 1)
9058 YYCHK1 (yyresolveStack (&yystack
, P
, tokens
, index
));
9059 YYDPRINTF ((stderr
, "Returning to deterministic operation.\n"));
9060 yycompressStack (&yystack
);
9066 yyrecoverSyntaxError (&yystack
, P
, tokens
, index
);
9067 yyposn
= yystack
.yytops
.yystates
[0]->yyposn
;
9083 yyerror (P
, tokens
, index
, YY_("memory exhausted"));
9088 if (yychar
!= YYEMPTY
)
9089 yydestruct ("Cleanup: discarding lookahead",
9090 YYTRANSLATE (yychar
), &yylval
, P
, tokens
, index
);
9092 /* If the stack is well-formed, pop the stack until it is empty,
9093 destroying its entries as we go. But free the stack regardless
9094 of whether it is well-formed. */
9095 if (yystack
.yyitems
)
9097 yyGLRState
** yystates
= yystack
.yytops
.yystates
;
9100 size_t yysize
= yystack
.yytops
.yysize
;
9102 for (yyk
= 0; yyk
< yysize
; yyk
+= 1)
9105 while (yystates
[yyk
])
9107 yyGLRState
*yys
= yystates
[yyk
];
9108 if (yys
->yypred
!= YY_NULLPTR
)
9109 yydestroyGLRState ("Cleanup: popping", yys
, P
, tokens
, index
);
9110 yystates
[yyk
] = yys
->yypred
;
9111 yystack
.yynextFree
-= 1;
9112 yystack
.yyspaceLeft
+= 1;
9117 yyfreeGLRStack (&yystack
);
9123 /* DEBUGGING ONLY */
9126 yy_yypstack (yyGLRState
* yys
)
9130 yy_yypstack (yys
->yypred
);
9131 YYFPRINTF (stderr
, " -> ");
9133 YYFPRINTF (stderr
, "%d@%lu", yys
->yylrState
,
9134 (unsigned long int) yys
->yyposn
);
9138 yypstates (yyGLRState
* yyst
)
9140 if (yyst
== YY_NULLPTR
)
9141 YYFPRINTF (stderr
, "<null>");
9144 YYFPRINTF (stderr
, "\n");
9148 yypstack (yyGLRStack
* yystackp
, size_t yyk
)
9150 yypstates (yystackp
->yytops
.yystates
[yyk
]);
9153 #define YYINDEX(YYX) \
9154 ((YYX) == YY_NULLPTR ? -1 : (yyGLRStackItem*) (YYX) - yystackp->yyitems)
9158 yypdumpstack (yyGLRStack
* yystackp
)
9160 yyGLRStackItem
* yyp
;
9162 for (yyp
= yystackp
->yyitems
; yyp
< yystackp
->yynextFree
; yyp
+= 1)
9164 YYFPRINTF (stderr
, "%3lu. ",
9165 (unsigned long int) (yyp
- yystackp
->yyitems
));
9166 if (*(yybool
*) yyp
)
9168 YYASSERT (yyp
->yystate
.yyisState
);
9169 YYASSERT (yyp
->yyoption
.yyisState
);
9170 YYFPRINTF (stderr
, "Res: %d, LR State: %d, posn: %lu, pred: %ld",
9171 yyp
->yystate
.yyresolved
, yyp
->yystate
.yylrState
,
9172 (unsigned long int) yyp
->yystate
.yyposn
,
9173 (long int) YYINDEX (yyp
->yystate
.yypred
));
9174 if (! yyp
->yystate
.yyresolved
)
9175 YYFPRINTF (stderr
, ", firstVal: %ld",
9176 (long int) YYINDEX (yyp
->yystate
9177 .yysemantics
.yyfirstVal
));
9181 YYASSERT (!yyp
->yystate
.yyisState
);
9182 YYASSERT (!yyp
->yyoption
.yyisState
);
9183 YYFPRINTF (stderr
, "Option. rule: %d, state: %ld, next: %ld",
9184 yyp
->yyoption
.yyrule
- 1,
9185 (long int) YYINDEX (yyp
->yyoption
.yystate
),
9186 (long int) YYINDEX (yyp
->yyoption
.yynext
));
9188 YYFPRINTF (stderr
, "\n");
9190 YYFPRINTF (stderr
, "Tops:");
9191 for (yyi
= 0; yyi
< yystackp
->yytops
.yysize
; yyi
+= 1)
9192 YYFPRINTF (stderr
, "%lu: %ld; ", (unsigned long int) yyi
,
9193 (long int) YYINDEX (yystackp
->yytops
.yystates
[yyi
]));
9194 YYFPRINTF (stderr
, "\n");
9202 /* Substitute the variable and function names. */
9203 #define yyparse psi_parser_proc_parse
9204 #define yylex psi_parser_proc_lex
9205 #define yyerror psi_parser_proc_error
9206 #define yylval psi_parser_proc_lval
9207 #define yychar psi_parser_proc_char
9208 #define yydebug psi_parser_proc_debug
9209 #define yynerrs psi_parser_proc_nerrs
9211 #line 2274 "src/parser_proc_grammar.y" /* glr.c:2584 */
9216 static int psi_parser_proc_lex(YYSTYPE
*lvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
9218 struct psi_token
*token
;
9220 if (psi_plist_get(tokens
, (*index
)++, &token
)) {
9221 if (P
->flags
& PSI_DEBUG
) {
9222 psi_token_dump(2, token
);
9225 *((struct psi_token
**)lvalp
) = token
;
9229 PSI_DEBUG_PRINT(P
, "EOF(%d)\n", PSI_T_EOF
);
9235 static void psi_parser_proc_error(struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char *msg
)
9237 struct psi_token
*T
= NULL
;
9246 psi_plist_get(tokens
, last
, &T
);
9248 P
->error(PSI_DATA(P
), T
, PSI_WARNING
, "PSI %s at col %u", msg
, T
->col
);
9250 P
->error(PSI_DATA(P
), NULL
, PSI_WARNING
, "PSI %s", msg
);