1 /* A Bison parser, made by GNU Bison 3.2. */
3 /* Skeleton implementation for Bison GLR parsers in C
5 Copyright (C) 2002-2015, 2018 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 /* Undocumented macros, especially those whose name start with YY_,
36 are private implementation details. Do not rely on them. */
38 /* Identify Bison output. */
42 #define YYBISON_VERSION "3.2"
45 #define YYSKELETON_NAME "glr.c"
51 /* "%code top" blocks. */
52 #line 1 "src/parser_proc_grammar.y" /* glr.c:221 */
57 # include "php_config.h"
60 #line 61 "src/parser_proc.c" /* glr.c:221 */
63 /* Substitute the variable and function names. */
64 #define yyparse psi_parser_proc_parse
65 #define yylex psi_parser_proc_lex
66 #define yyerror psi_parser_proc_error
67 #define yydebug psi_parser_proc_debug
73 # if defined __cplusplus
74 # if 201103L <= __cplusplus
75 # define YY_NULLPTR nullptr
80 # define YY_NULLPTR ((void*)0)
84 #include "parser_proc.h"
86 /* Enabling verbose error messages. */
87 #ifdef YYERROR_VERBOSE
88 # undef YYERROR_VERBOSE
89 # define YYERROR_VERBOSE 1
91 # define YYERROR_VERBOSE 1
94 /* Default (constant) value used for initialization for null
95 right-hand sides. Unlike the standard yacc.c template, here we set
96 the default value of $$ to a zeroed-out value. Since the default
97 value is undefined, this behavior is technically correct. */
98 static YYSTYPE yyval_default
;
101 /* Unqualified %code blocks. */
102 #line 9 "src/parser_proc_grammar.y" /* glr.c:261 */
111 #define PSI_PARSER_PROC_DEBUG 1
113 static int psi_parser_proc_lex(YYSTYPE
*u
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
);
114 static void psi_parser_proc_error(struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char *msg
);
116 static inline void psi_parser_proc_add_struct(struct psi_parser
*P
, struct psi_decl_struct
*strct
)
120 P
->structs
= psi_plist_init((psi_plist_dtor
) psi_decl_struct_free
);
122 P
->structs
= psi_plist_add(P
->structs
, &strct
);
124 static inline void psi_parser_proc_add_union(struct psi_parser
*P
, struct psi_decl_union
*u
)
128 P
->unions
= psi_plist_init((psi_plist_dtor
) psi_decl_union_free
);
130 P
->unions
= psi_plist_add(P
->unions
, &u
);
132 static inline void psi_parser_proc_add_enum(struct psi_parser
*P
, struct psi_decl_enum
*e
)
136 P
->enums
= psi_plist_init((psi_plist_dtor
) psi_decl_enum_free
);
138 P
->enums
= psi_plist_add(P
->enums
, &e
);
140 static inline void psi_parser_proc_add_typedef(struct psi_parser
*P
, struct psi_decl_arg
*def
)
144 P
->types
= psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
);
146 P
->types
= psi_plist_add(P
->types
, &def
);
148 static inline void psi_parser_proc_add_const(struct psi_parser
*P
, struct psi_const
*cnst
) {
151 P
->consts
= psi_plist_init((psi_plist_dtor
) psi_const_free
);
153 P
->consts
= psi_plist_add(P
->consts
, &cnst
);
156 static inline void psi_parser_proc_add_decl(struct psi_parser
*P
, struct psi_decl
*decl
) {
159 if (psi_decl_is_blacklisted(decl
->func
->var
->name
->val
)) {
160 psi_decl_free(&decl
);
165 P
->decls
= psi_plist_init((psi_plist_dtor
) psi_decl_free
);
167 P
->decls
= psi_plist_add(P
->decls
, &decl
);
169 static inline void psi_parser_proc_add_decl_extvars(struct psi_parser
*P
, struct psi_plist
*list
) {
172 P
->vars
= psi_plist_init((psi_plist_dtor
) psi_decl_extvar_free
);
174 P
->vars
= psi_plist_add_r(P
->vars
, psi_plist_count(list
), psi_plist_eles(list
));
177 static inline void psi_parser_proc_add_impl(struct psi_parser
*P
, struct psi_impl
*impl
) {
180 P
->impls
= psi_plist_init((psi_plist_dtor
) psi_impl_free
);
182 P
->impls
= psi_plist_add(P
->impls
, &impl
);
187 #line 188 "src/parser_proc.c" /* glr.c:261 */
194 # if defined YYENABLE_NLS && YYENABLE_NLS
196 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
197 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
201 # define YY_(Msgid) Msgid
209 # define YYMALLOC malloc
212 # define YYREALLOC realloc
215 #define YYSIZEMAX ((size_t) -1)
220 # define yyfalse false
222 /* When we move to stdbool, get rid of the various casts to yybool. */
223 typedef unsigned char yybool
;
230 # define YYJMP_BUF jmp_buf
231 # define YYSETJMP(Env) setjmp (Env)
232 /* Pacify Clang and ICC. */
233 # define YYLONGJMP(Env, Val) \
235 longjmp (Env, Val); \
241 # if (defined __GNUC__ \
242 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
243 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
244 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
246 # define YY_ATTRIBUTE(Spec) /* empty */
250 #ifndef YY_ATTRIBUTE_PURE
251 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
254 #ifndef YY_ATTRIBUTE_UNUSED
255 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
258 #if !defined _Noreturn \
259 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
260 # if defined _MSC_VER && 1200 <= _MSC_VER
261 # define _Noreturn __declspec (noreturn)
263 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
267 /* Suppress unused-variable warnings by "using" E. */
268 #if ! defined lint || defined __GNUC__
269 # define YYUSE(E) ((void) (E))
271 # define YYUSE(E) /* empty */
274 #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
275 /* Suppress an incorrect diagnostic about yylval being uninitialized. */
276 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
277 _Pragma ("GCC diagnostic push") \
278 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
279 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
280 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
281 _Pragma ("GCC diagnostic pop")
283 # define YY_INITIAL_VALUE(Value) Value
285 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
286 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
287 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
289 #ifndef YY_INITIAL_VALUE
290 # define YY_INITIAL_VALUE(Value) /* Nothing. */
295 # define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0)))
298 /* YYFINAL -- State number of the termination state. */
300 /* YYLAST -- Last index in YYTABLE. */
303 /* YYNTOKENS -- Number of terminals. */
304 #define YYNTOKENS 138
305 /* YYNNTS -- Number of nonterminals. */
307 /* YYNRULES -- Number of rules. */
309 /* YYNRULES -- Number of states. */
310 #define YYNSTATES 938
311 /* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
313 /* YYMAXLEFT -- Maximum number of symbols to the left of a handle
314 accessed by $0, $-1, etc., in any rule. */
317 /* YYTRANSLATE(X) -- Bison symbol number corresponding to X. */
319 #define YYMAXUTOK 392
321 #define YYTRANSLATE(YYX) \
322 ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
324 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
325 static const unsigned char yytranslate
[] =
327 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
328 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
329 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
330 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
331 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
332 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
333 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
334 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
335 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
336 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
337 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
338 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
339 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
340 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
341 2, 2, 2, 2, 2, 2, 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, 1, 2, 3, 4,
353 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
354 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
355 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
356 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
357 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
358 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
359 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
360 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
361 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
362 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
363 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
364 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
365 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
370 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
371 static const unsigned short yyrline
[] =
373 0, 410, 410, 410, 410, 410, 410, 410, 410, 410,
374 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
375 411, 411, 411, 411, 412, 412, 412, 412, 412, 412,
376 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
377 412, 412, 412, 412, 413, 413, 413, 413, 413, 413,
378 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
379 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
380 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
381 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
382 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
383 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
384 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
385 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
386 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
387 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
388 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
389 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
390 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
391 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
392 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
393 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
394 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
395 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
396 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
397 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
398 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
399 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
400 414, 414, 414, 414, 418, 419, 422, 423, 426, 427,
401 428, 429, 435, 438, 441, 444, 450, 453, 456, 459,
402 462, 468, 471, 477, 500, 504, 508, 513, 517, 521,
403 528, 529, 534, 538, 539, 543, 544, 545, 549, 550,
404 554, 555, 559, 560, 561, 565, 566, 570, 575, 580,
405 585, 594, 597, 600, 601, 607, 612, 620, 623, 627,
406 631, 638, 642, 646, 650, 655, 666, 677, 682, 687,
407 691, 697, 708, 711, 715, 723, 727, 733, 737, 744,
408 748, 752, 759, 760, 761, 765, 779, 785, 788, 794,
409 797, 803, 804, 812, 823, 832, 844, 845, 849, 859,
410 868, 880, 881, 884, 890, 891, 895, 899, 903, 908,
411 913, 921, 922, 923, 926, 932, 935, 938, 944, 945,
412 949, 952, 955, 961, 964, 967, 975, 987, 990, 993,
413 996, 1003, 1006, 1016, 1019, 1022, 1025, 1026, 1027, 1031,
414 1034, 1037, 1048, 1055, 1065, 1068, 1074, 1077, 1084, 1120,
415 1123, 1129, 1132, 1138, 1144, 1145, 1146, 1147, 1148, 1149,
416 1153, 1157, 1158, 1162, 1163, 1167, 1168, 1175, 1176, 1180,
417 1187, 1198, 1205, 1213, 1237, 1266, 1273, 1284, 1330, 1371,
418 1386, 1389, 1392, 1398, 1401, 1407, 1422, 1425, 1454, 1462,
419 1490, 1495, 1503, 1513, 1523, 1526, 1530, 1536, 1550, 1567,
420 1570, 1576, 1583, 1590, 1598, 1609, 1616, 1619, 1625, 1630,
421 1638, 1642, 1646, 1650, 1654, 1658, 1665, 1669, 1673, 1677,
422 1681, 1685, 1691, 1695, 1702, 1705, 1717, 1721, 1725, 1732,
423 1745, 1758, 1771, 1774, 1781, 1782, 1786, 1789, 1792, 1795,
424 1801, 1805, 1812, 1815, 1818, 1833, 1834, 1835, 1836, 1840,
425 1843, 1849, 1850, 1856, 1859, 1865, 1866, 1870, 1871, 1881,
426 1884, 1891, 1896, 1901, 1911, 1914, 1920, 1923, 1929, 1936,
427 1943, 1950, 1951, 1955, 1956, 1957, 1958, 1959, 1963, 1964,
428 1965, 1966, 1970, 1973, 1979, 1982, 1985, 1988, 1991, 1997,
429 2001, 2009, 2010, 2014, 2021, 2024, 2027, 2030, 2034, 2037,
430 2043, 2047, 2055, 2062, 2067, 2075, 2083, 2084, 2085, 2086,
431 2087, 2088, 2089, 2090, 2091, 2092, 2096, 2099, 2105, 2108,
432 2114, 2115, 2119, 2122, 2128, 2131, 2137, 2144, 2148, 2155,
433 2158, 2161, 2167, 2174, 2177, 2180, 2187, 2192, 2200, 2201,
434 2202, 2203, 2204, 2205, 2206, 2207, 2211, 2214, 2220, 2223,
435 2229, 2236, 2237, 2241, 2248, 2251, 2257, 2265, 2268, 2274
439 #if YYDEBUG || YYERROR_VERBOSE || 1
440 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
441 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
442 static const char *const yytname
[] =
444 "\"end of file\"", "error", "$undefined", "BOOL", "CHAR", "SHORT",
445 "INT", "SIGNED", "UNSIGNED", "LONG", "FLOAT", "DOUBLE", "STRING",
446 "MIXED", "ARRAY", "OBJECT", "CALLABLE", "VOID", "ZVAL", "NULL", "TRUE",
447 "FALSE", "NAME", "NSNAME", "DOLLAR_NAME", "NUMBER", "QUOTED_STRING",
448 "QUOTED_CHAR", "SIZEOF", "VOLATILE", "\"end of line\"", "\";\"", "\"(\"",
449 "\")\"", "\",\"", "\":\"", "\"{\"", "\"}\"", "\"[\"", "\"]\"", "\"=\"",
450 "\"#\"", "\"|\"", "\"^\"", "\"&\"", "\"<<\"", "\">>\"", "\"+\"", "\"-\"",
451 "\"*\"", "\"/\"", "\"%\"", "\"<\"", "\">\"", "\">=\"", "\"<=\"",
452 "\"||\"", "\"&&\"", "\"==\"", "\"!=\"", "\"~\"", "\"!\"", "\".\"",
453 "\"\\\\\"", "\"...\"", "\"?\"", "PRAGMA", "LINE", "ERROR", "WARNING",
454 "IF", "IFDEF", "IFNDEF", "ELSE", "ELIF", "ENDIF", "DEFINE", "DEFINED",
455 "UNDEF", "IMPORT", "INCLUDE", "INCLUDE_NEXT", "TYPEDEF", "STRUCT",
456 "UNION", "ENUM", "CONST", "STATIC", "CALLBACK", "FUNCTION", "LET", "SET",
457 "TEMP", "FREE", "RETURN", "AS", "PRE_ASSERT", "POST_ASSERT", "BOOLVAL",
458 "INTVAL", "STRVAL", "PATHVAL", "STRLEN", "FLOATVAL", "ARRVAL", "OBJVAL",
459 "COUNT", "CALLOC", "TO_BOOL", "TO_INT", "TO_STRING", "TO_FLOAT",
460 "TO_ARRAY", "TO_OBJECT", "COMMENT", "WHITESPACE", "NO_WHITESPACE",
461 "CPP_HEADER", "CPP_ATTRIBUTE", "CPP_EXTENSION", "CPP_PASTE",
462 "CPP_INLINE", "CPP_RESTRICT", "CPP_ASM", "BSLASH", "LONG_DOUBLE", "INT8",
463 "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64",
464 "INT128", "UINT128", "BINARY", "UNARY", "$accept", "binary_op_token",
465 "unary_op_token", "name_token", "any_noeol_token", "any_nobrace_token",
466 "file", "blocks", "block", "cpp", "cpp_exp", "cpp_macro_decl_arg_token",
467 "cpp_ignored_token", "cpp_message_token", "cpp_include_token",
468 "cpp_header_token", "cpp_no_arg_token", "cpp_name_arg_token",
469 "cpp_exp_arg_token", "cpp_macro_decl", "cpp_macro_sig",
470 "cpp_macro_sig_args", "cpp_macro_decl_tokens",
471 "cpp_macro_decl_token_list", "cpp_macro_exp", "cpp_macro_call_args",
472 "cpp_macro_call_arg_list", "constant", "impl_def_val",
473 "impl_def_val_token", "decl_typedef", "typedef", "typedef_anon",
474 "typedef_decl", "typedef_anon_decl", "qualified_decl_type",
475 "decl_type_qualifier_token", "decl_type", "decl_type_complex",
476 "decl_type_simple", "decl_real_type", "int_signed", "int_width",
477 "decl_int_type", "int_signed_types", "signed_short_types",
478 "signed_long_types", "int_width_types", "decl_stmt", "decl_asm",
479 "quoted_strings", "decl_extvar_stmt", "decl_extvar_list", "decl_vars",
480 "ignored_decl", "ignored_decl_qualifiers", "ignored_decl_body",
481 "ignored_decl_body_stmts", "ignored_decl_body_stmt", "decl", "decl_body",
482 "decl_func_body", "decl_functor_body", "decl_anon_functor_body",
483 "decl_functor", "decl_anon_functor", "decl_func", "decl_args",
484 "decl_arg_list", "decl_anon_arg", "decl_arg", "decl_var", "decl_union",
485 "decl_struct", "decl_struct_args", "struct_args_block", "struct_args",
486 "struct_arg_var_list", "decl_vars_with_layout", "decl_enum",
487 "decl_enum_items", "decl_enum_item", "num_exp", "number", "sizeof",
488 "sizeof_body", "sizeof_body_notypes", "enum_name", "union_name",
489 "struct_name", "optional_name", "optional_comma", "decl_layout",
490 "align_and_size", "array_size", "array_qualifier_token", "indirection",
491 "pointers", "asterisks", "asterisk", "pointer_qualifier_token", "impl",
492 "impl_func", "impl_args", "impl_arg", "impl_var", "impl_type",
493 "impl_type_restricted", "impl_type_token", "impl_type_restricted_token",
494 "impl_type_extended_token", "impl_stmts", "impl_stmt", "let_stmt",
495 "let_exp", "let_exp_byref", "let_exp_assign", "let_calloc",
496 "let_callback", "let_func", "let_func_token", "let_func_exps",
497 "let_exps", "callback_rval", "callback_arg_list", "callback_args",
498 "return_stmt", "return_exp", "call_decl_vars", "set_stmt", "set_exp",
499 "set_func", "set_func_token", "set_func_exps", "set_exps", "assert_stmt",
500 "assert_stmt_token", "free_stmt", "free_exps", "free_exp", "reference",
505 #define YYPACT_NINF -710
506 #define YYTABLE_NINF -628
508 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
510 static const short yypact
[] =
512 529, -710, -710, -710, -710, -710, 90, -710, -710, -710,
513 500, -710, -710, -710, 742, 1480, 7560, 7560, 7560, 158,
514 -25, 18, -710, 247, -710, 71, 529, -710, -710, -710,
515 -710, 6818, 570, -710, -710, -710, -710, 119, 192, -710,
516 -710, -710, -710, 758, -41, -710, -710, 35, 55, 117,
517 -710, -710, -710, -710, 59, -710, 104, -710, -710, -710,
518 7560, 7560, 7560, -710, -710, -710, 102, -710, -710, -710,
519 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
520 -710, -710, -710, 133, 851, 975, 975, 31, -710, 975,
521 6596, 7560, 7560, 1743, 138, -710, -710, -710, 159, 7560,
522 171, 171, -710, -710, -710, -710, -710, -710, 1335, -710,
523 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
524 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
525 -710, -710, -710, -710, -710, -710, -710, 108, -710, -710,
526 108, 180, -710, -710, -710, -710, -710, -710, 184, 204,
527 -710, -710, 193, -710, 209, -710, 1854, 1480, 113, -710,
528 -41, -710, -710, 34, 198, -710, -710, 214, 7560, 9,
529 -710, -710, -710, 242, -710, 136, -710, -710, -710, 179,
530 -710, 229, 218, 231, 1965, 1965, 7560, 129, -710, -710,
531 -710, 7151, -41, -710, -710, 1709, -710, -710, -710, -710,
532 -710, -710, -710, -710, 1820, 1931, 2042, 2153, -710, 2264,
533 2375, -710, -710, -710, 2486, -710, -710, -710, -710, -710,
534 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
535 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
536 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
537 -710, -710, -710, -710, -710, -710, -710, 2597, 2708, 2819,
538 2930, -710, -710, -710, -710, -710, -710, -710, -710, -710,
539 -710, -710, -710, -710, -710, -710, -710, 3041, 3152, 3263,
540 3374, 3485, 3596, -710, 3707, -710, -710, 3818, 3929, 4040,
541 4151, 4262, 4373, 4484, 4595, 4706, 4817, 4928, 5039, 5150,
542 5261, 5372, 5483, -710, -710, -710, -710, -710, -710, -710,
543 5594, 975, -710, -710, -710, -710, -710, -710, -710, -710,
544 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
545 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
546 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
547 975, -710, -710, -710, -710, -710, -710, -710, 83, 6596,
548 -710, -710, -710, -710, 7213, 6596, 238, 7738, -710, 77,
549 -710, 121, -710, -710, -710, -710, 236, 237, 237, 43,
550 43, 5819, 232, 129, 243, 248, -710, 249, -710, -710,
551 -710, 1447, -710, 225, 198, -710, -710, -710, -710, -710,
552 275, -710, -710, 1223, -710, 256, -710, 96, 6818, -710,
553 251, 146, 255, -710, -710, 169, 245, 257, -710, 7151,
554 6263, 7151, 7560, 7151, -710, -710, 475, -710, -710, -710,
555 -710, -710, 6485, -710, 259, -710, 7560, 263, -710, 266,
556 7738, 269, -710, -710, -710, -710, 6628, 277, -710, 6921,
557 7560, -710, -710, 1598, -710, -710, -710, -710, -710, -710,
558 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
559 -710, -710, 6596, 6596, 268, 1566, 7151, 7151, -710, -710,
560 -710, -710, 142, -710, -710, -710, -710, -710, 5708, 6485,
561 270, -710, 269, -710, 7762, -710, -710, 5819, 512, 623,
562 -710, -710, -710, -710, -710, -710, 7714, 264, 7275, -710,
563 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
564 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
565 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
566 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
567 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
568 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
569 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
570 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
571 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
572 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
573 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
574 -710, -710, -710, -710, -710, -710, -710, -710, 1099, -710,
575 88, 94, 1965, 198, 240, 758, 198, 244, 6485, 7560,
576 265, 267, 278, 7762, 280, 290, -710, 274, 298, 283,
577 292, 131, -710, 293, 297, -710, -710, -710, 6806, 7151,
578 -710, 7333, -710, 225, 302, -710, -710, -710, 303, -710,
579 7738, 305, 312, 7665, -710, 314, 1743, 313, -710, -710,
580 6707, 721, 7560, 171, 171, -710, -710, 61, 64, 73,
581 7134, -710, -710, 6485, 6485, 316, -710, -710, -710, -710,
582 -710, 318, 181, -710, 18, -710, -710, -710, -710, -710,
583 225, 206, -710, -710, -710, 225, -710, 207, -710, 321,
584 -710, -710, 322, 7762, -710, -710, 5930, -710, 6263, -710,
585 7151, -710, 18, 7151, -710, 7560, 7444, -710, -710, -710,
586 -710, -710, 323, 315, -710, -710, -710, -710, 6596, 6596,
587 333, -710, 63, 335, -710, 313, 237, 237, 6485, -710,
588 7690, -710, -710, 782, 337, 782, 330, 7560, 1965, -710,
589 6929, 198, 309, 198, 198, 156, 272, 213, 342, 7762,
590 -710, -710, -710, -710, 344, 6374, -710, 347, 7151, 226,
591 -710, 349, 259, 350, 975, 7502, 7738, 7786, 359, 352,
592 353, 7040, 360, 335, 7151, 7151, -710, 6485, -710, 782,
593 -710, 18, 5819, 361, 362, -710, -710, 363, -710, -710,
594 342, -710, -710, -710, 7444, -710, 370, 6485, 18, -710,
595 6041, 372, 375, -710, 317, -710, -710, -710, 376, 358,
596 385, 313, 377, -710, -710, 382, 7810, -710, 44, -710,
597 383, 381, 198, 386, 18, 7640, 384, 387, -710, 389,
598 -710, -710, 100, -710, 392, 391, -710, 7040, -710, 397,
599 1965, 394, -710, 332, 398, 6485, 5930, 399, -710, 6263,
600 -710, -710, 401, 406, 410, 313, -710, 404, 405, 1965,
601 260, 6152, 7427, 267, -710, -710, -710, 407, 6374, -710,
602 -710, 408, 411, -710, 412, 415, 416, 418, 420, 409,
603 -710, -710, 5930, -710, 426, -710, 782, 423, 198, 18,
604 432, 6263, -710, 433, -710, 1965, -710, 435, -710, -710,
605 -710, 439, 6152, 198, 440, -710, 441, -710
608 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
609 Performed when YYTABLE does not specify something else to do. Zero
610 means the default is an error. */
611 static const unsigned short yydefact
[] =
613 274, 393, 390, 394, 388, 389, 391, 385, 386, 384,
614 383, 375, 279, 278, 0, 0, 0, 0, 502, 374,
615 424, 627, 280, 0, 428, 0, 275, 276, 281, 282,
616 286, 519, 0, 371, 377, 376, 382, 397, 409, 381,
617 283, 284, 285, 0, 414, 435, 437, 438, 0, 0,
618 449, 288, 287, 289, 0, 290, 0, 392, 387, 383,
619 0, 0, 0, 374, 429, 436, 419, 291, 301, 302,
620 303, 304, 315, 312, 313, 310, 316, 311, 300, 314,
621 305, 306, 307, 0, 0, 327, 327, 0, 295, 0,
622 0, 502, 502, 0, 0, 357, 362, 458, 361, 0,
623 510, 510, 32, 33, 34, 35, 36, 615, 576, 24,
624 40, 39, 37, 38, 31, 25, 29, 28, 26, 27,
625 41, 584, 583, 581, 579, 580, 582, 578, 577, 585,
626 30, 613, 611, 610, 612, 609, 608, 378, 42, 43,
627 379, 380, 499, 543, 544, 545, 546, 547, 0, 0,
628 540, 425, 0, 629, 0, 628, 383, 0, 0, 426,
629 414, 1, 277, 525, 512, 373, 459, 0, 520, 521,
630 523, 372, 399, 403, 401, 405, 398, 395, 410, 397,
631 396, 0, 0, 0, 450, 450, 0, 0, 378, 379,
632 380, 0, 414, 292, 69, 44, 45, 46, 47, 48,
633 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
634 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
635 157, 158, 70, 71, 72, 73, 74, 75, 76, 77,
636 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
637 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
638 98, 99, 100, 101, 102, 103, 108, 107, 106, 104,
639 105, 109, 110, 111, 112, 113, 114, 115, 116, 117,
640 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
641 128, 129, 130, 131, 159, 132, 133, 134, 135, 136,
642 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
643 147, 148, 149, 150, 151, 155, 152, 153, 154, 156,
644 0, 327, 297, 44, 53, 54, 55, 56, 58, 59,
645 63, 107, 106, 104, 105, 125, 126, 127, 128, 129,
646 130, 159, 134, 135, 136, 137, 138, 139, 140, 141,
647 142, 143, 144, 145, 146, 147, 148, 149, 329, 299,
648 328, 293, 308, 309, 294, 296, 337, 338, 0, 0,
649 22, 23, 20, 21, 0, 0, 340, 298, 339, 378,
650 501, 379, 500, 358, 355, 363, 0, 0, 0, 0,
651 0, 0, 0, 0, 0, 0, 427, 0, 528, 527,
652 526, 515, 461, 519, 512, 522, 524, 404, 400, 406,
653 407, 402, 411, 0, 423, 0, 412, 384, 519, 455,
654 0, 0, 452, 453, 456, 0, 478, 504, 476, 0,
655 627, 0, 0, 0, 621, 622, 0, 552, 555, 554,
656 556, 557, 0, 558, 420, 421, 0, 0, 416, 0,
657 319, 320, 317, 330, 498, 497, 0, 0, 493, 0,
658 0, 335, 332, 342, 2, 3, 4, 5, 6, 7,
659 8, 9, 10, 11, 13, 12, 14, 15, 16, 17,
660 18, 19, 0, 0, 0, 0, 0, 0, 464, 463,
661 465, 462, 489, 353, 354, 487, 486, 488, 0, 0,
662 0, 349, 351, 490, 350, 480, 491, 0, 0, 0,
663 356, 413, 489, 517, 518, 516, 0, 0, 0, 520,
664 460, 408, 185, 160, 161, 162, 163, 164, 165, 166,
665 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
666 177, 178, 179, 180, 181, 182, 183, 184, 271, 272,
667 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
668 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
669 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
670 216, 217, 222, 221, 220, 218, 219, 223, 224, 225,
671 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
672 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
673 273, 246, 247, 248, 249, 250, 251, 252, 253, 254,
674 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
675 265, 269, 266, 267, 268, 270, 433, 434, 0, 431,
676 0, 512, 450, 512, 0, 0, 512, 0, 0, 505,
677 0, 0, 0, 604, 0, 0, 603, 43, 0, 0,
678 0, 0, 624, 0, 0, 598, 529, 553, 0, 0,
679 418, 321, 417, 519, 0, 494, 496, 331, 0, 344,
680 345, 0, 343, 0, 333, 0, 0, 506, 366, 359,
681 367, 0, 368, 510, 510, 365, 364, 615, 24, 0,
682 0, 484, 348, 0, 0, 0, 530, 549, 550, 551,
683 548, 0, 0, 534, 627, 539, 541, 542, 514, 513,
684 519, 0, 430, 432, 415, 519, 457, 0, 441, 0,
685 454, 439, 0, 479, 477, 475, 0, 559, 627, 602,
686 0, 538, 627, 0, 623, 0, 599, 596, 620, 422,
687 322, 325, 0, 323, 495, 492, 336, 341, 0, 0,
688 0, 360, 0, 469, 466, 506, 0, 0, 0, 482,
689 0, 483, 347, 0, 0, 0, 536, 0, 450, 447,
690 0, 512, 0, 512, 512, 489, 0, 31, 30, 565,
691 570, 566, 568, 569, 42, 0, 605, 616, 0, 0,
692 625, 615, 601, 0, 327, 0, 346, 334, 0, 507,
693 0, 506, 0, 469, 370, 369, 481, 0, 531, 0,
694 535, 627, 0, 0, 0, 448, 445, 0, 442, 440,
695 0, 567, 590, 576, 599, 591, 0, 0, 627, 571,
696 627, 0, 0, 626, 0, 318, 324, 326, 0, 0,
697 0, 506, 470, 473, 467, 0, 485, 532, 0, 537,
698 0, 0, 512, 0, 627, 0, 586, 0, 618, 617,
699 606, 560, 0, 511, 0, 0, 471, 506, 468, 0,
700 450, 0, 446, 0, 0, 0, 0, 0, 607, 627,
701 614, 597, 0, 0, 0, 506, 474, 0, 0, 450,
702 0, 592, 0, 490, 588, 563, 561, 587, 0, 575,
703 619, 0, 0, 472, 0, 0, 0, 0, 0, 593,
704 594, 572, 0, 562, 0, 508, 0, 0, 512, 627,
705 0, 627, 589, 0, 533, 450, 443, 0, 573, 595,
706 509, 0, 592, 512, 0, 444, 0, 574
709 /* YYPGOTO[NTERM-NUM]. */
710 static const short yypgoto
[] =
712 -710, -333, -75, -14, -62, -710, -710, -710, 442, -710,
713 -710, -710, -710, -710, -710, -710, -710, -710, -710, -710,
714 -710, -710, -78, -710, -279, -710, -710, -710, -468, -710,
715 -710, 324, -206, 29, -197, -178, -19, -6, -710, -710,
716 -710, 445, -710, -710, 301, -710, -710, -710, -710, -87,
717 -250, -710, -710, -177, -710, -710, 306, -710, -144, 463,
718 41, -4, 49, -710, -710, -710, -710, -180, -710, -145,
719 10, -31, -710, -710, 111, -340, -710, -311, -710, 13,
720 -710, -146, -351, -710, -73, -710, 50, -710, -434, -432,
721 176, -710, -690, -85, -370, -710, -358, -22, -710, 326,
722 -710, -710, 477, -710, -266, -676, -709, -710, -710, 481,
723 -710, 118, -365, -710, -410, -681, 95, -263, -710, -710,
724 -694, -710, -710, -375, -416, -710, -710, -710, -306, -710,
725 -401, -400, -402, -710, -710, -710, -710, -710, -710, -214,
729 /* YYDEFGOTO[NTERM-NUM]. */
730 static const short yydefgoto
[] =
732 -1, 694, 489, 164, 348, 626, 25, 26, 27, 28,
733 83, 84, 85, 86, 87, 354, 88, 89, 90, 312,
734 742, 743, 349, 350, 367, 671, 672, 29, 490, 491,
735 30, 94, 677, 678, 679, 31, 32, 33, 34, 35,
736 36, 37, 38, 39, 177, 398, 401, 180, 40, 183,
737 492, 41, 192, 792, 42, 43, 627, 628, 629, 44,
738 45, 46, 97, 409, 48, 410, 49, 411, 412, 413,
739 414, 493, 51, 52, 479, 480, 681, 802, 842, 99,
740 417, 418, 643, 495, 496, 664, 448, 54, 100, 101,
741 142, 640, 753, 377, 392, 507, 167, 436, 169, 170,
742 390, 55, 56, 702, 703, 644, 704, 149, 705, 706,
743 707, 426, 427, 428, 894, 895, 896, 781, 782, 783,
744 138, 877, 897, 826, 908, 909, 429, 654, 793, 430,
745 910, 646, 139, 831, 859, 431, 432, 433, 651, 652,
749 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
750 positive, shift that token. If negative, reduce the rule whose
751 number is the opposite. If YYTABLE_NINF, syntax error. */
752 static const short yytable
[] =
754 166, 154, 137, 140, 141, 415, 408, 408, 351, 168,
755 50, 96, 165, 53, 434, 365, 378, 368, 647, 645,
756 66, 647, 311, 655, 510, 98, 171, 355, 766, 695,
757 494, 440, 784, 50, 473, 508, 50, 476, 477, 53,
758 506, 683, 785, 684, 95, 780, 188, 189, 190, 47,
759 631, 65, 379, 50, 808, 380, 811, 352, 163, 47,
760 441, 657, 153, 388, 21, 803, -438, -458, 731, -458,
761 310, 161, 47, 387, 478, 47, 366, 369, 371, 475,
762 449, 658, 182, 825, 181, 375, 452, 184, 799, 96,
763 -384, 784, 47, -383, -384, 186, 151, -24, 800, 57,
764 847, 58, 11, 98, 829, 437, 758, 473, 869, 444,
765 445, 843, -378, -503, 662, 446, 473, 107, 880, 473,
766 389, 714, 373, 172, 173, 174, 715, 447, 175, -384,
767 -384, 395, 391, 657, -449, 766, 191, 690, 691, -510,
768 187, 176, 399, 376, -510, 400, 494, -384, 353, 185,
769 -383, 866, 856, 96, 394, 630, -379, -503, -438, 63,
770 435, 143, 734, 193, 144, 735, 50, 98, 145, 374,
771 146, 147, 416, -352, 670, -352, -352, 886, 874, 633,
772 634, 148, 784, 172, 173, 174, 95, -489, 175, -489,
773 -489, -449, 898, 673, 674, 903, 825, 65, 178, 4,
774 5, 176, 636, 637, 784, 47, 376, 924, 131, 132,
775 133, 134, 135, 136, 764, 765, -503, 913, 784, 419,
776 420, 421, 422, 423, 381, 424, 425, 382, 898, 383,
777 822, 823, 384, 442, 386, 365, 391, 368, 768, 769,
778 771, 772, 683, 927, 684, 824, 393, 683, 397, 684,
779 405, 1, 2, 3, 4, 5, 6, 7, 8, 833,
780 659, 716, 406, 718, 9, 403, 721, 370, 372, 156,
781 453, 474, 497, 475, 163, 499, 11, 822, 823, 500,
782 501, 511, 438, 632, 365, 638, 368, 723, 443, 635,
783 365, 639, 368, 659, 660, 662, 366, 680, 661, 666,
784 675, 692, 725, 709, 719, 744, 730, 726, 722, 727,
785 689, 121, 122, 123, 124, 125, 126, 127, 128, 129,
786 728, 729, 731, 732, 733, 736, 647, 786, 737, 157,
787 60, 61, 62, 63, 158, 745, 746, 473, 747, 750,
788 473, 473, 760, 761, 849, 366, 748, 762, 752, 795,
789 451, 366, 767, 763, 773, 774, 794, 770, 121, 122,
790 123, 124, 125, 126, 127, 128, 129, 798, 159, 801,
791 812, 509, 809, 817, 827, 779, 828, 166, 365, 820,
792 368, 830, -600, 834, 838, 840, 168, 839, 641, 165,
793 649, 844, 653, 864, 850, 851, 852, 365, 365, 368,
794 368, 816, 854, 818, 819, 860, 861, 806, 650, 863,
795 865, 867, 862, 868, 871, 870, 804, 805, 876, 873,
796 878, 887, 394, 879, 883, 884, 889, 890, 647, 858,
797 891, 901, 899, 730, 779, 902, 668, 904, 905, 366,
798 663, 912, 914, 921, 915, 685, 686, 916, 917, 918,
799 919, 923, 717, 920, 408, 925, 846, 408, 366, 366,
800 882, 494, 881, 473, 473, 928, 930, 932, 162, 796,
801 797, 96, 933, 936, 937, 755, 855, 647, 900, 751,
802 402, 385, 872, 179, 713, 98, 160, 404, 682, 647,
803 720, 481, 845, 724, 711, 396, 665, 152, 680, 810,
804 150, 498, 922, 680, 1, 2, 3, 4, 5, 6,
805 7, 8, 656, 821, 642, 907, 934, 9, 853, 647,
806 929, 790, 59, 0, 892, 779, 0, 0, 0, 11,
807 647, 0, 0, 1, 2, 3, 4, 5, 6, 7,
808 8, 0, 0, 0, 0, 0, 9, 779, 926, 696,
809 0, 10, 0, 0, 0, 0, 789, 0, 11, 12,
810 13, 779, 0, 935, 0, 419, 420, 421, 422, 423,
811 14, 424, 425, 0, 1, 2, 3, 4, 5, 6,
812 7, 8, 0, 60, 61, 62, 63, 9, 814, 0,
813 408, 0, 59, 0, 0, 0, 0, 0, 756, 757,
814 0, 0, 419, 420, 421, 422, 423, 0, 424, 425,
815 0, 15, 16, 17, 18, 19, 20, 0, 21, 0,
816 0, 64, 0, 0, 0, 416, 143, 0, 739, 144,
817 0, 0, 0, 145, 0, 146, 147, 697, 698, 699,
818 700, 509, 0, 22, 0, 0, 0, 741, 23, 166,
819 24, 0, 0, 60, 61, 62, 701, 0, 168, 0,
820 0, 165, 0, 0, 0, 0, 0, 0, 375, 0,
821 165, 0, 96, 365, 365, 368, 368, 96, 0, 0,
822 0, 0, 0, 0, 0, 0, 98, 0, 509, 682,
823 888, 98, 408, 509, 682, 0, 0, 0, 0, 787,
824 0, 0, 435, 0, 0, 435, 0, 0, 0, 906,
825 0, 408, 788, 0, 0, 0, 835, 0, 0, 0,
826 0, 650, 0, 0, 0, 1, 2, 3, 4, 5,
827 6, 7, 8, 0, 366, 366, 0, 0, 9, 0,
828 0, 0, 0, 59, 0, 931, 0, 408, 0, 0,
829 11, 0, 0, 813, 0, 0, 711, 832, 754, 0,
830 0, 0, 1, 2, 3, 4, 5, 6, 7, 8,
831 841, 0, 67, 685, 686, 9, 0, 0, 0, 0,
832 59, 837, 0, 0, 0, 143, 0, 11, 144, 0,
833 0, 848, 145, 435, 146, 147, 697, 698, 699, 700,
834 0, 0, 0, 0, 91, 92, 18, 63, 68, 69,
835 70, 71, 72, 73, 74, 75, 76, 77, 78, 0,
836 79, 80, 81, 82, 0, 0, 0, 0, 0, 0,
837 0, 0, 0, 0, 0, 0, 885, 0, 0, 0,
838 676, 60, 61, 62, 63, 893, 0, 0, 0, 0,
839 0, 194, 0, 0, 195, 196, 197, 198, 199, 200,
840 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
841 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
842 221, 893, 222, 223, 224, 225, 226, 227, 228, 229,
843 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
844 240, 241, 242, 243, 244, 245, 246, 247, 248, 249,
845 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
846 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
847 0, 270, 0, 271, 272, 273, 274, 275, 276, 277,
848 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
849 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
850 298, 299, 300, 301, 302, 303, 0, 0, 304, 0,
851 305, 306, 307, 308, 309, 194, 0, 0, 313, 196,
852 197, 198, 199, 200, 201, 202, 203, 314, 315, 316,
853 317, 208, 318, 319, 211, 212, 213, 320, 215, 216,
854 217, 218, 219, 220, 221, 0, 222, 223, 224, 225,
855 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
856 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
857 246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
858 256, 321, 322, 323, 324, 261, 262, 263, 264, 265,
859 266, 267, 268, 269, 0, 270, 0, 271, 272, 273,
860 274, 275, 276, 325, 326, 327, 328, 329, 330, 283,
861 331, 285, 286, 332, 333, 334, 335, 336, 337, 338,
862 339, 340, 341, 342, 343, 344, 345, 346, 347, 303,
863 0, 0, 304, 0, 305, 306, 307, 308, 309, 512,
864 0, 0, 513, 514, 515, 516, 517, 518, 519, 520,
865 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
866 531, 532, 533, 534, 535, 536, 537, 538, 539, 0,
867 540, 541, 542, 543, 544, 403, 712, 545, 546, 547,
868 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
869 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
870 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
871 578, 579, 580, 581, 582, 583, 584, 585, 0, 586,
872 0, 587, 588, 589, 590, 591, 592, 593, 594, 595,
873 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
874 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
875 616, 617, 618, 619, 0, 0, 620, 0, 621, 622,
876 623, 624, 625, 512, 0, 0, 513, 514, 515, 516,
877 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
878 527, 528, 529, 530, 531, 532, 533, 534, 535, 536,
879 537, 538, 539, 0, 540, 541, 542, 543, 544, 403,
880 0, 545, 546, 547, 548, 549, 550, 551, 552, 553,
881 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
882 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
883 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
884 584, 585, 0, 586, 0, 587, 588, 589, 590, 591,
885 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
886 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
887 612, 613, 614, 615, 616, 617, 618, 619, -576, 0,
888 620, 0, 621, 622, 623, 624, 625, -576, -576, -576,
889 -576, 0, -576, -576, 0, 0, 0, -576, 0, 0,
890 0, 0, 0, 0, -576, -576, -576, -576, -576, -576,
891 -576, -576, -576, -576, -576, -576, 0, -576, -576, -576,
892 -576, -576, -576, -576, -576, -576, -576, -576, -576, -576,
893 -576, -576, -576, -576, -576, 0, 0, 0, 0, 0,
894 -576, -576, -576, -576, -576, 0, 0, 0, 0, 0,
895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
896 0, -576, 0, -576, -576, -576, -576, -576, -576, 0,
897 -576, 0, 0, -576, -576, -576, -576, -576, -576, -576,
898 -576, -576, -576, -576, -576, -576, -576, -576, -576, 0,
899 102, 0, 0, 0, 0, 0, 0, 0, -576, 103,
900 104, 105, 106, 0, 107, 108, 502, 0, 0, 109,
901 485, 0, 486, 0, 487, 358, 503, 0, 0, 488,
902 0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
903 7, 8, 0, 0, 360, 361, 163, 9, 0, 0,
904 0, 0, 59, 0, 0, 0, 0, 362, 363, 11,
905 0, 0, 0, 110, 111, 112, 113, 0, 0, 0,
906 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
907 0, 0, 0, 504, 0, 114, 115, 116, 117, 118,
908 119, 0, 120, 0, 0, 121, 122, 123, 124, 125,
909 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
910 136, 0, 0, 91, 92, 18, 63, 0, 0, 505,
911 1, 2, 3, 4, 5, 6, 7, 8, 0, 0,
912 0, 0, 0, 9, 0, 0, 0, 0, 59, 0,
913 0, 0, 0, 0, 0, 11, 0, 0, 0, 93,
914 0, 102, 0, 0, 0, 0, 0, 0, 0, 0,
915 103, 104, 105, 106, 0, 107, 108, 0, 0, 0,
916 109, 0, 0, 356, 0, 357, 358, 0, 0, 0,
917 359, 0, 0, 0, 0, 0, 0, 0, 0, 0,
918 0, 0, 0, 0, 0, 360, 361, 0, 0, 91,
919 92, 18, 63, 0, 0, 0, 0, 0, 362, 363,
920 0, 0, 0, 0, 110, 111, 112, 113, 0, 0,
921 0, 0, 0, 0, 0, 364, 0, 0, 0, 0,
922 0, 0, 0, 0, 0, 676, 114, 115, 116, 117,
923 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
924 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
925 135, 136, -32, 0, 0, 669, 0, 0, 0, 0,
926 0, -32, -32, -32, -32, 0, -32, -32, 0, 0,
927 0, -32, 0, 0, -32, -32, -32, -32, 0, 0,
928 0, -32, 0, 0, 0, 0, 0, 1, 2, 3,
929 4, 5, 6, 7, 8, 0, -32, -32, 0, 0,
930 9, 0, 0, 0, 0, 59, 0, 0, 0, -32,
931 -32, 0, 11, 0, 0, -32, -32, -32, -32, 0,
932 0, 0, 0, 0, 0, 0, -32, 0, 0, 0,
933 0, 0, 0, 0, 0, 0, 0, -32, -32, -32,
934 -32, -32, -32, 0, -32, 0, 0, -32, -32, -32,
935 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32,
936 -32, -32, -32, -33, 0, -32, 91, 92, 18, 63,
937 0, 0, -33, -33, -33, -33, 0, -33, -33, 0,
938 0, 0, -33, 0, 0, -33, -33, -33, -33, 0,
939 0, 0, -33, 0, 0, 0, 0, 0, 1, 2,
940 3, 4, 5, 6, 7, 8, 0, -33, -33, 0,
941 0, 9, 0, 0, 0, 0, 59, 0, 0, 0,
942 -33, -33, 0, 11, 0, 0, -33, -33, -33, -33,
943 0, 0, 0, 0, 0, 0, 0, -33, 0, 0,
944 0, 0, 0, 0, 0, 0, 0, 0, -33, -33,
945 -33, -33, -33, -33, 0, -33, 0, 0, -33, -33,
946 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
947 -33, -33, -33, -33, -34, 0, -33, 60, 61, 62,
948 63, 0, 0, -34, -34, -34, -34, 0, -34, -34,
949 0, 0, 0, -34, 0, 0, -34, -34, -34, -34,
950 0, 0, 0, -34, 0, 0, 0, 0, 0, 1,
951 2, 3, 4, 5, 6, 7, 8, 0, -34, -34,
952 0, 0, 407, 0, 0, 0, 0, 59, 0, 0,
953 0, -34, -34, 0, 11, 0, 0, -34, -34, -34,
954 -34, 0, 0, 0, 0, 0, 0, 0, -34, 0,
955 0, 0, 0, 0, 0, 0, 0, 0, 0, -34,
956 -34, -34, -34, -34, -34, 0, -34, 0, 0, -34,
957 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
958 -34, -34, -34, -34, -34, -35, 0, -34, 60, 61,
959 62, 63, 0, 0, -35, -35, -35, -35, 0, -35,
960 -35, 0, 0, 0, -35, 0, 0, -35, -35, -35,
961 -35, 0, 0, 0, -35, 0, 0, 0, 0, 0,
962 0, 0, 0, 0, 0, 0, 0, 0, 0, -35,
963 -35, 0, 0, 0, 0, 0, 0, 0, 0, 0,
964 0, 0, -35, -35, 0, 0, 0, 0, -35, -35,
965 -35, -35, 0, 0, 0, 0, 0, 0, 0, -35,
966 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
967 -35, -35, -35, -35, -35, -35, 0, -35, 0, 0,
968 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35,
969 -35, -35, -35, -35, -35, -35, -36, 0, -35, 0,
970 0, 0, 0, 0, 0, -36, -36, -36, -36, 0,
971 -36, -36, 0, 0, 0, -36, 0, 0, -36, -36,
972 -36, -36, 0, 0, 0, -36, 0, 0, 0, 0,
973 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
974 -36, -36, 0, 0, 0, 0, 0, 0, 0, 0,
975 0, 0, 0, -36, -36, 0, 0, 0, 0, -36,
976 -36, -36, -36, 0, 0, 0, 0, 0, 0, 0,
977 -36, 0, 0, 0, 0, 0, 0, 0, 0, 0,
978 0, -36, -36, -36, -36, -36, -36, 0, -36, 0,
979 0, -36, -36, -36, -36, -36, -36, -36, -36, -36,
980 -36, -36, -36, -36, -36, -36, -36, -58, 0, -36,
981 0, 0, 0, 0, 0, 0, -58, -58, -58, -58,
982 0, -58, -58, 0, 0, 0, -58, 0, 0, -58,
983 -58, -58, -58, 0, 0, 0, -58, 0, 0, 0,
984 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
985 0, -58, -58, 0, 0, 0, 0, 0, 0, 0,
986 0, 0, 0, 0, -58, -58, 0, 0, 0, 0,
987 -58, -58, -58, -58, 0, 0, 0, 0, 0, 0,
988 0, -58, 0, 0, 0, 0, 0, 0, 0, 0,
989 0, 0, -58, -58, -58, -58, -58, -58, 0, -58,
990 0, 0, -58, -58, -58, -58, -58, -58, -58, -58,
991 -58, -58, -58, -58, -58, -58, -58, -58, -59, 0,
992 -615, 0, 0, 0, 0, 0, 0, -59, -59, -59,
993 -59, 0, -59, -59, 0, 0, 0, -59, 0, 0,
994 -59, -59, -59, -59, 0, 0, 0, -59, 0, 0,
995 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
996 0, 0, -59, -59, 0, 0, 0, 0, 0, 0,
997 0, 0, 0, 0, 0, -59, -59, 0, 0, 0,
998 0, -59, -59, -59, -59, 0, 0, 0, 0, 0,
999 0, 0, -59, 0, 0, 0, 0, 0, 0, 0,
1000 0, 0, 0, -59, -59, -59, -59, -59, -59, 0,
1001 -59, 0, 0, -59, -59, -59, -59, -59, -59, -59,
1002 -59, -59, -59, -59, -59, -59, -59, -59, -59, -24,
1003 0, -576, 0, 0, 0, 0, 0, 0, -24, -24,
1004 -24, -24, 0, -24, -24, 0, 0, 0, -24, 0,
1005 0, -24, -24, -24, -24, 0, 0, 0, -24, 0,
1006 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1007 0, 0, 0, -24, -24, 0, 0, 0, 0, 0,
1008 0, 0, 0, 0, 0, 0, -24, -24, 0, 0,
1009 0, 0, -24, -24, -24, -24, 0, 0, 0, 0,
1010 0, 0, 0, -24, 0, 0, 0, 0, 0, 0,
1011 0, 0, 0, 0, -24, -24, -24, -24, -24, -24,
1012 0, -24, 0, 0, -24, -24, -24, -24, -24, -24,
1013 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
1014 -40, 0, -24, 0, 0, 0, 0, 0, 0, -40,
1015 -40, -40, -40, 0, -40, -40, 0, 0, 0, -40,
1016 0, 0, -40, -40, -40, -40, 0, 0, 0, -40,
1017 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1018 0, 0, 0, 0, -40, -40, 0, 0, 0, 0,
1019 0, 0, 0, 0, 0, 0, 0, -40, -40, 0,
1020 0, 0, 0, -40, -40, -40, -40, 0, 0, 0,
1021 0, 0, 0, 0, -40, 0, 0, 0, 0, 0,
1022 0, 0, 0, 0, 0, -40, -40, -40, -40, -40,
1023 -40, 0, -40, 0, 0, -40, -40, -40, -40, -40,
1024 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40,
1025 -40, -39, 0, -40, 0, 0, 0, 0, 0, 0,
1026 -39, -39, -39, -39, 0, -39, -39, 0, 0, 0,
1027 -39, 0, 0, -39, -39, -39, -39, 0, 0, 0,
1028 -39, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1029 0, 0, 0, 0, 0, -39, -39, 0, 0, 0,
1030 0, 0, 0, 0, 0, 0, 0, 0, -39, -39,
1031 0, 0, 0, 0, -39, -39, -39, -39, 0, 0,
1032 0, 0, 0, 0, 0, -39, 0, 0, 0, 0,
1033 0, 0, 0, 0, 0, 0, -39, -39, -39, -39,
1034 -39, -39, 0, -39, 0, 0, -39, -39, -39, -39,
1035 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
1036 -39, -39, -37, 0, -39, 0, 0, 0, 0, 0,
1037 0, -37, -37, -37, -37, 0, -37, -37, 0, 0,
1038 0, -37, 0, 0, -37, -37, -37, -37, 0, 0,
1039 0, -37, 0, 0, 0, 0, 0, 0, 0, 0,
1040 0, 0, 0, 0, 0, 0, -37, -37, 0, 0,
1041 0, 0, 0, 0, 0, 0, 0, 0, 0, -37,
1042 -37, 0, 0, 0, 0, -37, -37, -37, -37, 0,
1043 0, 0, 0, 0, 0, 0, -37, 0, 0, 0,
1044 0, 0, 0, 0, 0, 0, 0, -37, -37, -37,
1045 -37, -37, -37, 0, -37, 0, 0, -37, -37, -37,
1046 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
1047 -37, -37, -37, -38, 0, -37, 0, 0, 0, 0,
1048 0, 0, -38, -38, -38, -38, 0, -38, -38, 0,
1049 0, 0, -38, 0, 0, -38, -38, -38, -38, 0,
1050 0, 0, -38, 0, 0, 0, 0, 0, 0, 0,
1051 0, 0, 0, 0, 0, 0, 0, -38, -38, 0,
1052 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1053 -38, -38, 0, 0, 0, 0, -38, -38, -38, -38,
1054 0, 0, 0, 0, 0, 0, 0, -38, 0, 0,
1055 0, 0, 0, 0, 0, 0, 0, 0, -38, -38,
1056 -38, -38, -38, -38, 0, -38, 0, 0, -38, -38,
1057 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38,
1058 -38, -38, -38, -38, -31, 0, -38, 0, 0, 0,
1059 0, 0, 0, -31, -31, -31, -31, 0, -31, -31,
1060 0, 0, 0, -31, 0, 0, -31, -31, -31, -31,
1061 0, 0, 0, -31, 0, 0, 0, 0, 0, 0,
1062 0, 0, 0, 0, 0, 0, 0, 0, -31, -31,
1063 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1064 0, -31, -31, 0, 0, 0, 0, -31, -31, -31,
1065 -31, 0, 0, 0, 0, 0, 0, 0, -31, 0,
1066 0, 0, 0, 0, 0, 0, 0, 0, 0, -31,
1067 -31, -31, -31, -31, -31, 0, -31, 0, 0, -31,
1068 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
1069 -31, -31, -31, -31, -31, -25, 0, -31, 0, 0,
1070 0, 0, 0, 0, -25, -25, -25, -25, 0, -25,
1071 -25, 0, 0, 0, -25, 0, 0, -25, -25, -25,
1072 -25, 0, 0, 0, -25, 0, 0, 0, 0, 0,
1073 0, 0, 0, 0, 0, 0, 0, 0, 0, -25,
1074 -25, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1075 0, 0, -25, -25, 0, 0, 0, 0, -25, -25,
1076 -25, -25, 0, 0, 0, 0, 0, 0, 0, -25,
1077 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1078 -25, -25, -25, -25, -25, -25, 0, -25, 0, 0,
1079 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
1080 -25, -25, -25, -25, -25, -25, -29, 0, -25, 0,
1081 0, 0, 0, 0, 0, -29, -29, -29, -29, 0,
1082 -29, -29, 0, 0, 0, -29, 0, 0, -29, -29,
1083 -29, -29, 0, 0, 0, -29, 0, 0, 0, 0,
1084 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1085 -29, -29, 0, 0, 0, 0, 0, 0, 0, 0,
1086 0, 0, 0, -29, -29, 0, 0, 0, 0, -29,
1087 -29, -29, -29, 0, 0, 0, 0, 0, 0, 0,
1088 -29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1089 0, -29, -29, -29, -29, -29, -29, 0, -29, 0,
1090 0, -29, -29, -29, -29, -29, -29, -29, -29, -29,
1091 -29, -29, -29, -29, -29, -29, -29, -28, 0, -29,
1092 0, 0, 0, 0, 0, 0, -28, -28, -28, -28,
1093 0, -28, -28, 0, 0, 0, -28, 0, 0, -28,
1094 -28, -28, -28, 0, 0, 0, -28, 0, 0, 0,
1095 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1096 0, -28, -28, 0, 0, 0, 0, 0, 0, 0,
1097 0, 0, 0, 0, -28, -28, 0, 0, 0, 0,
1098 -28, -28, -28, -28, 0, 0, 0, 0, 0, 0,
1099 0, -28, 0, 0, 0, 0, 0, 0, 0, 0,
1100 0, 0, -28, -28, -28, -28, -28, -28, 0, -28,
1101 0, 0, -28, -28, -28, -28, -28, -28, -28, -28,
1102 -28, -28, -28, -28, -28, -28, -28, -28, -26, 0,
1103 -28, 0, 0, 0, 0, 0, 0, -26, -26, -26,
1104 -26, 0, -26, -26, 0, 0, 0, -26, 0, 0,
1105 -26, -26, -26, -26, 0, 0, 0, -26, 0, 0,
1106 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1107 0, 0, -26, -26, 0, 0, 0, 0, 0, 0,
1108 0, 0, 0, 0, 0, -26, -26, 0, 0, 0,
1109 0, -26, -26, -26, -26, 0, 0, 0, 0, 0,
1110 0, 0, -26, 0, 0, 0, 0, 0, 0, 0,
1111 0, 0, 0, -26, -26, -26, -26, -26, -26, 0,
1112 -26, 0, 0, -26, -26, -26, -26, -26, -26, -26,
1113 -26, -26, -26, -26, -26, -26, -26, -26, -26, -27,
1114 0, -26, 0, 0, 0, 0, 0, 0, -27, -27,
1115 -27, -27, 0, -27, -27, 0, 0, 0, -27, 0,
1116 0, -27, -27, -27, -27, 0, 0, 0, -27, 0,
1117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1118 0, 0, 0, -27, -27, 0, 0, 0, 0, 0,
1119 0, 0, 0, 0, 0, 0, -27, -27, 0, 0,
1120 0, 0, -27, -27, -27, -27, 0, 0, 0, 0,
1121 0, 0, 0, -27, 0, 0, 0, 0, 0, 0,
1122 0, 0, 0, 0, -27, -27, -27, -27, -27, -27,
1123 0, -27, 0, 0, -27, -27, -27, -27, -27, -27,
1124 -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
1125 -41, 0, -27, 0, 0, 0, 0, 0, 0, -41,
1126 -41, -41, -41, 0, -41, -41, 0, 0, 0, -41,
1127 0, 0, -41, -41, -41, -41, 0, 0, 0, -41,
1128 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1129 0, 0, 0, 0, -41, -41, 0, 0, 0, 0,
1130 0, 0, 0, 0, 0, 0, 0, -41, -41, 0,
1131 0, 0, 0, -41, -41, -41, -41, 0, 0, 0,
1132 0, 0, 0, 0, -41, 0, 0, 0, 0, 0,
1133 0, 0, 0, 0, 0, -41, -41, -41, -41, -41,
1134 -41, 0, -41, 0, 0, -41, -41, -41, -41, -41,
1135 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41,
1136 -41, -134, 0, -41, 0, 0, 0, 0, 0, 0,
1137 -134, -134, -134, -134, 0, -134, -134, 0, 0, 0,
1138 -134, 0, 0, -134, -134, -134, -134, 0, 0, 0,
1139 -134, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1140 0, 0, 0, 0, 0, -134, -134, 0, 0, 0,
1141 0, 0, 0, 0, 0, 0, 0, 0, -134, -134,
1142 0, 0, 0, 0, -134, -134, -134, -134, 0, 0,
1143 0, 0, 0, 0, 0, -134, 0, 0, 0, 0,
1144 0, 0, 0, 0, 0, 0, -134, -134, -134, -134,
1145 -134, -134, 0, -134, 0, 0, -134, -134, -134, -134,
1146 -134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
1147 -134, -134, -135, 0, -584, 0, 0, 0, 0, 0,
1148 0, -135, -135, -135, -135, 0, -135, -135, 0, 0,
1149 0, -135, 0, 0, -135, -135, -135, -135, 0, 0,
1150 0, -135, 0, 0, 0, 0, 0, 0, 0, 0,
1151 0, 0, 0, 0, 0, 0, -135, -135, 0, 0,
1152 0, 0, 0, 0, 0, 0, 0, 0, 0, -135,
1153 -135, 0, 0, 0, 0, -135, -135, -135, -135, 0,
1154 0, 0, 0, 0, 0, 0, -135, 0, 0, 0,
1155 0, 0, 0, 0, 0, 0, 0, -135, -135, -135,
1156 -135, -135, -135, 0, -135, 0, 0, -135, -135, -135,
1157 -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
1158 -135, -135, -135, -136, 0, -583, 0, 0, 0, 0,
1159 0, 0, -136, -136, -136, -136, 0, -136, -136, 0,
1160 0, 0, -136, 0, 0, -136, -136, -136, -136, 0,
1161 0, 0, -136, 0, 0, 0, 0, 0, 0, 0,
1162 0, 0, 0, 0, 0, 0, 0, -136, -136, 0,
1163 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1164 -136, -136, 0, 0, 0, 0, -136, -136, -136, -136,
1165 0, 0, 0, 0, 0, 0, 0, -136, 0, 0,
1166 0, 0, 0, 0, 0, 0, 0, 0, -136, -136,
1167 -136, -136, -136, -136, 0, -136, 0, 0, -136, -136,
1168 -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
1169 -136, -136, -136, -136, -137, 0, -581, 0, 0, 0,
1170 0, 0, 0, -137, -137, -137, -137, 0, -137, -137,
1171 0, 0, 0, -137, 0, 0, -137, -137, -137, -137,
1172 0, 0, 0, -137, 0, 0, 0, 0, 0, 0,
1173 0, 0, 0, 0, 0, 0, 0, 0, -137, -137,
1174 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1175 0, -137, -137, 0, 0, 0, 0, -137, -137, -137,
1176 -137, 0, 0, 0, 0, 0, 0, 0, -137, 0,
1177 0, 0, 0, 0, 0, 0, 0, 0, 0, -137,
1178 -137, -137, -137, -137, -137, 0, -137, 0, 0, -137,
1179 -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
1180 -137, -137, -137, -137, -137, -138, 0, -579, 0, 0,
1181 0, 0, 0, 0, -138, -138, -138, -138, 0, -138,
1182 -138, 0, 0, 0, -138, 0, 0, -138, -138, -138,
1183 -138, 0, 0, 0, -138, 0, 0, 0, 0, 0,
1184 0, 0, 0, 0, 0, 0, 0, 0, 0, -138,
1185 -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1186 0, 0, -138, -138, 0, 0, 0, 0, -138, -138,
1187 -138, -138, 0, 0, 0, 0, 0, 0, 0, -138,
1188 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1189 -138, -138, -138, -138, -138, -138, 0, -138, 0, 0,
1190 -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
1191 -138, -138, -138, -138, -138, -138, -139, 0, -580, 0,
1192 0, 0, 0, 0, 0, -139, -139, -139, -139, 0,
1193 -139, -139, 0, 0, 0, -139, 0, 0, -139, -139,
1194 -139, -139, 0, 0, 0, -139, 0, 0, 0, 0,
1195 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1196 -139, -139, 0, 0, 0, 0, 0, 0, 0, 0,
1197 0, 0, 0, -139, -139, 0, 0, 0, 0, -139,
1198 -139, -139, -139, 0, 0, 0, 0, 0, 0, 0,
1199 -139, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1200 0, -139, -139, -139, -139, -139, -139, 0, -139, 0,
1201 0, -139, -139, -139, -139, -139, -139, -139, -139, -139,
1202 -139, -139, -139, -139, -139, -139, -139, -140, 0, -582,
1203 0, 0, 0, 0, 0, 0, -140, -140, -140, -140,
1204 0, -140, -140, 0, 0, 0, -140, 0, 0, -140,
1205 -140, -140, -140, 0, 0, 0, -140, 0, 0, 0,
1206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1207 0, -140, -140, 0, 0, 0, 0, 0, 0, 0,
1208 0, 0, 0, 0, -140, -140, 0, 0, 0, 0,
1209 -140, -140, -140, -140, 0, 0, 0, 0, 0, 0,
1210 0, -140, 0, 0, 0, 0, 0, 0, 0, 0,
1211 0, 0, -140, -140, -140, -140, -140, -140, 0, -140,
1212 0, 0, -140, -140, -140, -140, -140, -140, -140, -140,
1213 -140, -140, -140, -140, -140, -140, -140, -140, -141, 0,
1214 -578, 0, 0, 0, 0, 0, 0, -141, -141, -141,
1215 -141, 0, -141, -141, 0, 0, 0, -141, 0, 0,
1216 -141, -141, -141, -141, 0, 0, 0, -141, 0, 0,
1217 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1218 0, 0, -141, -141, 0, 0, 0, 0, 0, 0,
1219 0, 0, 0, 0, 0, -141, -141, 0, 0, 0,
1220 0, -141, -141, -141, -141, 0, 0, 0, 0, 0,
1221 0, 0, -141, 0, 0, 0, 0, 0, 0, 0,
1222 0, 0, 0, -141, -141, -141, -141, -141, -141, 0,
1223 -141, 0, 0, -141, -141, -141, -141, -141, -141, -141,
1224 -141, -141, -141, -141, -141, -141, -141, -141, -141, -142,
1225 0, -577, 0, 0, 0, 0, 0, 0, -142, -142,
1226 -142, -142, 0, -142, -142, 0, 0, 0, -142, 0,
1227 0, -142, -142, -142, -142, 0, 0, 0, -142, 0,
1228 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1229 0, 0, 0, -142, -142, 0, 0, 0, 0, 0,
1230 0, 0, 0, 0, 0, 0, -142, -142, 0, 0,
1231 0, 0, -142, -142, -142, -142, 0, 0, 0, 0,
1232 0, 0, 0, -142, 0, 0, 0, 0, 0, 0,
1233 0, 0, 0, 0, -142, -142, -142, -142, -142, -142,
1234 0, -142, 0, 0, -142, -142, -142, -142, -142, -142,
1235 -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
1236 -30, 0, -585, 0, 0, 0, 0, 0, 0, -30,
1237 -30, -30, -30, 0, -30, -30, 0, 0, 0, -30,
1238 0, 0, -30, -30, -30, -30, 0, 0, 0, -30,
1239 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1240 0, 0, 0, 0, -30, -30, 0, 0, 0, 0,
1241 0, 0, 0, 0, 0, 0, 0, -30, -30, 0,
1242 0, 0, 0, -30, -30, -30, -30, 0, 0, 0,
1243 0, 0, 0, 0, -30, 0, 0, 0, 0, 0,
1244 0, 0, 0, 0, 0, -30, -30, -30, -30, -30,
1245 -30, 0, -30, 0, 0, -30, -30, -30, -30, -30,
1246 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
1247 -30, -144, 0, -30, 0, 0, 0, 0, 0, 0,
1248 -144, -144, -144, -144, 0, -144, -144, 0, 0, 0,
1249 -144, 0, 0, -144, -144, -144, -144, 0, 0, 0,
1250 -144, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1251 0, 0, 0, 0, 0, -144, -144, 0, 0, 0,
1252 0, 0, 0, 0, 0, 0, 0, 0, -144, -144,
1253 0, 0, 0, 0, -144, -144, -144, -144, 0, 0,
1254 0, 0, 0, 0, 0, -144, 0, 0, 0, 0,
1255 0, 0, 0, 0, 0, 0, -144, -144, -144, -144,
1256 -144, -144, 0, -144, 0, 0, -144, -144, -144, -144,
1257 -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
1258 -144, -144, -145, 0, -613, 0, 0, 0, 0, 0,
1259 0, -145, -145, -145, -145, 0, -145, -145, 0, 0,
1260 0, -145, 0, 0, -145, -145, -145, -145, 0, 0,
1261 0, -145, 0, 0, 0, 0, 0, 0, 0, 0,
1262 0, 0, 0, 0, 0, 0, -145, -145, 0, 0,
1263 0, 0, 0, 0, 0, 0, 0, 0, 0, -145,
1264 -145, 0, 0, 0, 0, -145, -145, -145, -145, 0,
1265 0, 0, 0, 0, 0, 0, -145, 0, 0, 0,
1266 0, 0, 0, 0, 0, 0, 0, -145, -145, -145,
1267 -145, -145, -145, 0, -145, 0, 0, -145, -145, -145,
1268 -145, -145, -145, -145, -145, -145, -145, -145, -145, -145,
1269 -145, -145, -145, -146, 0, -611, 0, 0, 0, 0,
1270 0, 0, -146, -146, -146, -146, 0, -146, -146, 0,
1271 0, 0, -146, 0, 0, -146, -146, -146, -146, 0,
1272 0, 0, -146, 0, 0, 0, 0, 0, 0, 0,
1273 0, 0, 0, 0, 0, 0, 0, -146, -146, 0,
1274 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1275 -146, -146, 0, 0, 0, 0, -146, -146, -146, -146,
1276 0, 0, 0, 0, 0, 0, 0, -146, 0, 0,
1277 0, 0, 0, 0, 0, 0, 0, 0, -146, -146,
1278 -146, -146, -146, -146, 0, -146, 0, 0, -146, -146,
1279 -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
1280 -146, -146, -146, -146, -147, 0, -610, 0, 0, 0,
1281 0, 0, 0, -147, -147, -147, -147, 0, -147, -147,
1282 0, 0, 0, -147, 0, 0, -147, -147, -147, -147,
1283 0, 0, 0, -147, 0, 0, 0, 0, 0, 0,
1284 0, 0, 0, 0, 0, 0, 0, 0, -147, -147,
1285 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1286 0, -147, -147, 0, 0, 0, 0, -147, -147, -147,
1287 -147, 0, 0, 0, 0, 0, 0, 0, -147, 0,
1288 0, 0, 0, 0, 0, 0, 0, 0, 0, -147,
1289 -147, -147, -147, -147, -147, 0, -147, 0, 0, -147,
1290 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
1291 -147, -147, -147, -147, -147, -148, 0, -612, 0, 0,
1292 0, 0, 0, 0, -148, -148, -148, -148, 0, -148,
1293 -148, 0, 0, 0, -148, 0, 0, -148, -148, -148,
1294 -148, 0, 0, 0, -148, 0, 0, 0, 0, 0,
1295 0, 0, 0, 0, 0, 0, 0, 0, 0, -148,
1296 -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1297 0, 0, -148, -148, 0, 0, 0, 0, -148, -148,
1298 -148, -148, 0, 0, 0, 0, 0, 0, 0, -148,
1299 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1300 -148, -148, -148, -148, -148, -148, 0, -148, 0, 0,
1301 -148, -148, -148, -148, -148, -148, -148, -148, -148, -148,
1302 -148, -148, -148, -148, -148, -148, -149, 0, -609, 0,
1303 0, 0, 0, 0, 0, -149, -149, -149, -149, 0,
1304 -149, -149, 0, 0, 0, -149, 0, 0, -149, -149,
1305 -149, -149, 0, 0, 0, -149, 0, 0, 0, 0,
1306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1307 -149, -149, 0, 0, 0, 0, 0, 0, 0, 0,
1308 0, 0, 0, -149, -149, 0, 0, 0, 0, -149,
1309 -149, -149, -149, 0, 0, 0, 0, 0, 0, 0,
1310 -149, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1311 0, -149, -149, -149, -149, -149, -149, 0, -149, 0,
1312 0, -149, -149, -149, -149, -149, -149, -149, -149, -149,
1313 -149, -149, -149, -149, -149, -149, -149, 102, 0, -608,
1314 0, 0, 0, 0, 0, 0, 103, 104, 105, 106,
1315 0, 107, 108, 0, 0, 0, 109, 0, 0, 356,
1316 438, 357, 358, 0, 0, 0, 359, 0, 0, 0,
1317 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1318 0, 360, 361, 0, 0, 0, 0, 0, 0, 0,
1319 0, 0, 0, 0, 362, 363, 0, 0, 0, 0,
1320 110, 111, 112, 113, 0, 0, 0, 0, 0, 0,
1321 0, 364, 0, 0, 0, 0, 0, 0, 0, 0,
1322 0, 0, 114, 115, 116, 117, 118, 119, 0, 120,
1323 0, 0, 121, 122, 123, 124, 125, 126, 127, 128,
1324 129, 130, 131, 132, 133, 134, 135, 136, 0, 0,
1325 439, 102, 1, 2, 3, 4, 5, 6, 7, 8,
1326 103, 104, 105, 106, 0, 687, 108, 502, 0, 0,
1327 688, 485, 0, 486, 0, 487, 358, 11, 0, 0,
1328 488, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1329 0, 0, 0, 0, 0, 360, 361, 163, 0, 0,
1330 0, 0, 0, 0, 0, 0, 0, 0, 362, 363,
1331 0, 0, 0, 0, 110, 111, 112, 113, 0, 0,
1332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1333 0, 60, 61, 62, 63, 0, 114, 115, 116, 117,
1334 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
1335 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1336 135, 136, 102, 0, 0, 0, 0, 0, 0, 0,
1337 0, 103, 104, 105, 106, 0, 107, 108, 482, 483,
1338 484, 109, 485, 0, 486, 438, 487, 358, 0, 0,
1339 0, 488, 0, 0, 0, 0, 0, 0, 0, 0,
1340 0, 0, 0, 0, 0, 0, 360, 361, 163, 0,
1341 0, 0, 0, 0, 0, 0, 0, 0, 0, 362,
1342 363, 0, 0, 0, 0, 110, 111, 112, 113, 0,
1343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1344 0, 0, 0, 0, 0, 0, 0, 114, 115, 116,
1345 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
1346 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1347 134, 135, 136, 102, 0, 0, 0, 0, 0, 0,
1348 0, 0, 103, 104, 105, 106, 0, 107, 108, 775,
1349 0, 0, 109, 485, 0, 486, 0, 487, 358, 0,
1350 0, 0, 488, 0, 0, 0, 0, 0, 0, 0,
1351 0, 0, 0, 0, 153, 0, 0, 360, 361, 163,
1352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1353 362, 363, 0, 0, 0, 0, 110, 111, 112, 113,
1354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1355 0, 0, 0, 0, 0, 0, 0, 776, 777, 115,
1356 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1357 123, 124, 125, 126, 127, 128, 129, 778, 131, 132,
1358 133, 134, 135, 136, 102, 0, 0, 0, 0, 0,
1359 0, 0, 0, 103, 104, 105, 106, 0, 107, 108,
1360 502, 0, 0, 109, 485, 0, 486, 0, 487, 358,
1361 0, 0, 0, 488, 0, 0, 0, 0, 0, 0,
1362 0, 0, 0, 0, 0, 153, 0, 0, 360, 361,
1363 163, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1364 0, 362, 363, 0, 0, 857, 0, 110, 111, 112,
1365 113, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1366 0, 0, 0, 0, 0, 0, 0, 0, 0, 114,
1367 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1368 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1369 132, 133, 134, 135, 136, 102, 0, 0, 0, 0,
1370 0, 0, 0, 0, 103, 104, 105, 106, 0, 107,
1371 108, 502, 0, 0, 109, 485, -627, 486, 0, 487,
1372 358, 0, 0, 0, 488, 0, 0, 0, 0, 0,
1373 0, 0, 0, 0, 0, 0, 153, 0, 0, 360,
1374 361, 163, 0, 0, 0, 0, 0, 0, 0, 0,
1375 0, 0, 362, 363, 0, 0, 0, 0, 110, 111,
1376 112, 113, 0, 0, 0, 0, 0, 0, 0, 0,
1377 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1378 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1379 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1380 131, 132, 133, 134, 135, 136, 102, 0, 0, 0,
1381 0, 0, 0, 0, 0, 103, 104, 105, 106, 0,
1382 107, 108, 502, 0, 0, 109, 485, 0, 486, 0,
1383 487, 358, 0, 0, 0, 488, 0, 0, 0, 0,
1384 0, 0, 0, 0, 0, 0, 0, 153, 0, 0,
1385 360, 361, 163, 0, 0, 0, 0, 0, 0, 0,
1386 0, 0, 0, 362, 363, 0, 0, 0, 0, 110,
1387 111, 112, 113, 0, 0, 0, 0, 0, 0, 0,
1388 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1389 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1390 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1391 130, 131, 132, 133, 134, 135, 136, 102, 0, 0,
1392 0, 0, 0, 0, 0, 0, 103, 104, 105, 106,
1393 0, 107, 108, 775, 0, 0, 109, 485, 0, 486,
1394 0, 487, 358, 0, 0, 0, 488, 0, 0, 0,
1395 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1396 0, 360, 361, 163, 0, 0, 0, 0, 0, 0,
1397 0, 0, 0, 0, 362, 363, 0, 0, 0, 0,
1398 110, 111, 112, 113, 0, 0, 0, 0, 0, 0,
1399 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1400 0, 776, 777, 115, 116, 117, 118, 119, 0, 120,
1401 0, 0, 121, 122, 123, 124, 125, 126, 127, 128,
1402 129, 778, 131, 132, 133, 134, 135, 136, 102, 0,
1403 0, 0, 0, 0, 0, 0, 0, 103, 104, 105,
1404 106, 0, 107, 108, 502, 0, 0, 109, 485, 0,
1405 486, 0, 487, 358, 0, 0, 0, 488, 0, 0,
1406 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1407 0, 0, 360, 361, 163, 0, 0, 0, 0, 0,
1408 0, 0, 0, 0, 0, 362, 363, 0, 0, 0,
1409 0, 110, 111, 112, 113, 0, 0, 0, 0, 0,
1410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1411 0, 0, 0, 114, 115, 116, 117, 118, 119, 0,
1412 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
1413 128, 129, 130, 131, 132, 133, 134, 135, 136, 102,
1414 0, 0, 0, 0, 0, 0, 0, 0, 103, 104,
1415 105, 106, 0, 107, 108, 0, 0, 0, 109, 0,
1416 0, 356, 0, 357, 358, 0, 0, 0, 359, 0,
1417 0, 0, 1, 2, 3, 4, 5, 6, 7, 8,
1418 0, 0, 0, 360, 361, 9, 0, 0, 0, 0,
1419 59, 0, 0, 0, 444, 445, 362, 363, 0, 0,
1420 0, 0, 110, 111, 112, 113, 0, 0, 0, 0,
1421 0, 0, 447, 364, 0, 0, 0, 0, 0, 0,
1422 0, 0, 0, 0, 114, 115, 116, 117, 118, 119,
1423 0, 120, 0, 0, 121, 122, 123, 124, 125, 126,
1424 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1425 102, 60, 61, 62, 0, 0, 0, 0, 0, 103,
1426 104, 105, 106, 0, 107, 108, 0, 0, 0, 109,
1427 0, 0, 0, 0, 0, 0, 11, 0, 0, -519,
1428 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1429 0, 0, 0, 0, 0, 0, 163, 0, 0, 0,
1430 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1431 0, 0, 0, 110, 111, 112, 113, 0, 0, 0,
1432 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1433 0, 0, 0, 63, 0, 114, 115, 116, 117, 118,
1434 119, 0, 120, 0, 0, 121, 122, 123, 124, 125,
1435 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
1436 136, 102, 0, 0, 0, 0, 0, 0, 0, 0,
1437 103, 104, 105, 106, 0, 107, 108, 738, 0, 0,
1438 109, 0, 0, 0, 0, 0, 0, 11, 454, 455,
1439 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
1440 466, 467, 468, 469, 470, 471, 0, 163, 0, 0,
1441 0, 693, 0, 0, 0, 0, 0, 0, 0, 0,
1442 0, 0, 0, 0, 110, 111, 112, 113, 0, 0,
1443 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1444 0, 0, 0, 0, 63, 0, 114, 115, 116, 117,
1445 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
1446 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1447 135, 136, 102, 0, 0, 0, 0, 0, 0, 0,
1448 0, 103, 104, 105, 106, 0, 107, 108, 0, 0,
1449 0, 109, 0, 0, 667, 0, 0, 0, 0, 0,
1450 0, 710, 815, 454, 455, 456, 457, 458, 459, 460,
1451 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
1452 471, 0, 0, 0, 0, 0, 472, 0, 0, 0,
1453 0, 0, 0, 0, 0, 110, 111, 112, 113, 0,
1454 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1455 0, 0, 0, 0, 0, 0, 0, 114, 115, 116,
1456 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
1457 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1458 134, 135, 136, 102, 0, 0, 0, 0, 0, 0,
1459 0, 0, 103, 104, 105, 106, 0, 107, 108, 0,
1460 0, 0, 109, 0, 0, 0, 0, 0, 0, 0,
1461 0, 0, 0, 0, 0, 752, 0, 0, 0, 0,
1462 0, 0, 0, 0, 0, 0, 0, 0, 0, 163,
1463 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1464 0, 0, 0, 0, 0, 0, 110, 111, 112, 113,
1465 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1466 0, 0, 0, 0, 0, 0, 0, 0, 114, 115,
1467 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1468 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1469 133, 134, 135, 136, 102, 0, 0, 0, 0, 0,
1470 0, 0, 0, 103, 104, 105, 106, 759, 107, 108,
1471 0, 0, 0, 109, 0, 0, 454, 455, 456, 457,
1472 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
1473 468, 469, 470, 471, 0, 0, 0, 0, 0, 693,
1474 163, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1475 0, 0, 0, 0, 0, 0, 102, 110, 111, 112,
1476 113, 0, 0, 0, 0, 103, 104, 105, 106, 0,
1477 107, 108, 0, 0, 0, 109, 0, 0, 0, 114,
1478 115, 116, 117, 118, 119, 450, 120, 0, 0, 121,
1479 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1480 132, 133, 134, 135, 136, 0, 0, 0, 0, 0,
1481 0, 0, 0, 0, 0, 0, 0, 0, 102, 110,
1482 111, 112, 113, 0, 0, 0, 0, 103, 104, 105,
1483 106, 0, 107, 108, 0, 0, 0, 109, 0, 0,
1484 0, 114, 115, 116, 117, 118, 119, 710, 120, 0,
1485 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1486 130, 131, 132, 133, 134, 135, 136, 0, 0, 0,
1487 0, 0, 0, 0, 0, 0, 102, 0, 0, 0,
1488 0, 110, 111, 112, 113, 103, 104, 105, 106, 0,
1489 107, 108, 0, 0, 0, 109, 0, 0, 0, 0,
1490 0, 0, 0, 114, 115, 116, 117, 118, 119, 0,
1491 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
1492 128, 129, 130, 131, 132, 133, 134, 135, 136, 0,
1493 0, 0, 0, 0, 0, 0, 0, 740, 0, 110,
1494 111, 112, 113, 0, 0, 0, 0, 0, 0, 0,
1495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1496 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1497 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1498 130, 131, 132, 133, 134, 135, 136, 102, 0, 0,
1499 0, 0, 0, 0, 0, 0, 103, 104, 105, 106,
1500 911, 791, 108, 0, 0, 0, 109, 0, 0, 454,
1501 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
1502 465, 466, 467, 468, 469, 470, 471, 0, 0, 0,
1503 0, 0, 693, 163, 0, 0, 0, 0, 0, 0,
1504 0, 0, 0, 0, 0, 102, 0, 0, 0, 0,
1505 110, 111, 112, 113, 103, 104, 105, 106, 0, 107,
1506 108, 0, 0, 0, 109, 0, 0, 0, 0, 0,
1507 0, 0, 114, 115, 116, 117, 118, 119, 0, 120,
1508 0, 0, 121, 122, 123, 124, 125, 126, 127, 128,
1509 129, 130, 131, 132, 133, 134, 135, 136, 0, 0,
1510 0, 0, 0, 102, 0, 0, 836, 0, 110, 111,
1511 112, 113, 103, 104, 105, 106, 0, 107, 108, 0,
1512 0, 0, 109, 0, 0, 0, 0, 0, 0, 0,
1513 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1514 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1515 131, 132, 133, 134, 135, 136, 0, 0, 0, 0,
1516 0, 0, 0, 0, 0, 0, 110, 111, 112, 113,
1517 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1518 0, 0, 0, 0, 0, 0, 0, 0, 114, 115,
1519 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1520 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1521 133, 134, 135, 136, 875, 0, 0, 0, 0, 0,
1522 0, 0, 454, 455, 456, 457, 458, 459, 460, 461,
1523 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1524 749, 0, 0, 0, 0, 693, 0, 454, 455, 456,
1525 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
1526 467, 468, 469, 470, 471, 807, 0, 0, 0, 0,
1527 472, 0, 454, 455, 456, 457, 458, 459, 460, 461,
1528 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1529 0, 0, 0, 708, 0, 693, 454, 455, 456, 457,
1530 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
1531 468, 469, 470, 471, 0, 0, 0, 0, 0, 693,
1532 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
1533 464, 465, 466, 467, 468, 469, 470, 471, 0, 0,
1534 0, 0, 0, 472, 454, 455, 456, 457, 458, 459,
1535 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
1536 470, 471, 0, 0, 0, 0, 0, 693, 454, 455,
1537 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
1538 466, 467, 468, 469, 470, 471, 0, 0, 0, 0,
1539 0, 472, 454, 455, 456, 457, 458, 459, 460, 461,
1540 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1544 static const short yycheck
[] =
1546 31, 21, 16, 17, 18, 185, 184, 185, 86, 31,
1547 0, 15, 31, 0, 191, 90, 101, 90, 420, 420,
1548 10, 423, 84, 423, 394, 15, 32, 89, 704, 497,
1549 381, 310, 726, 23, 367, 393, 26, 377, 378, 26,
1550 391, 475, 726, 475, 15, 726, 60, 61, 62, 0,
1551 408, 10, 137, 43, 763, 140, 765, 26, 49, 10,
1552 310, 426, 44, 29, 89, 755, 31, 32, 24, 34,
1553 84, 0, 23, 160, 31, 26, 90, 91, 92, 36,
1554 359, 432, 123, 777, 43, 99, 365, 32, 25, 93,
1555 29, 785, 43, 29, 33, 36, 121, 33, 35, 9,
1556 809, 11, 29, 93, 785, 192, 33, 440, 64, 26,
1557 27, 801, 35, 36, 26, 32, 449, 17, 18, 452,
1558 86, 33, 93, 4, 5, 6, 32, 44, 9, 33,
1559 34, 122, 38, 498, 32, 811, 34, 488, 489, 31,
1560 36, 22, 6, 35, 36, 9, 497, 86, 117, 32,
1561 86, 841, 828, 157, 168, 405, 35, 36, 123, 86,
1562 191, 3, 31, 30, 6, 34, 156, 157, 10, 31,
1563 12, 13, 186, 31, 453, 33, 34, 867, 854, 33,
1564 34, 23, 876, 4, 5, 6, 157, 31, 9, 33,
1565 34, 32, 876, 472, 473, 885, 890, 156, 6, 7,
1566 8, 22, 33, 34, 898, 156, 35, 916, 108, 109,
1567 110, 111, 112, 113, 33, 34, 36, 898, 912, 90,
1568 91, 92, 93, 94, 40, 96, 97, 23, 912, 36,
1569 17, 18, 23, 311, 121, 310, 38, 310, 32, 33,
1570 33, 34, 676, 919, 676, 32, 32, 681, 6, 681,
1571 32, 4, 5, 6, 7, 8, 9, 10, 11, 33,
1572 34, 631, 31, 633, 17, 36, 636, 91, 92, 22,
1573 32, 35, 40, 36, 49, 32, 29, 17, 18, 31,
1574 31, 6, 26, 32, 359, 40, 359, 638, 350, 34,
1575 365, 34, 365, 34, 31, 26, 310, 475, 32, 22,
1576 32, 31, 37, 39, 64, 663, 32, 40, 64, 31,
1577 488, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1578 40, 31, 24, 40, 32, 32, 728, 728, 31, 82,
1579 83, 84, 85, 86, 87, 33, 33, 670, 33, 25,
1580 673, 674, 693, 694, 812, 359, 34, 31, 35, 34,
1581 364, 365, 710, 35, 33, 33, 33, 715, 98, 99,
1582 100, 101, 102, 103, 104, 105, 106, 34, 121, 34,
1583 40, 393, 35, 64, 32, 726, 32, 408, 453, 107,
1584 453, 34, 33, 33, 25, 32, 408, 35, 419, 408,
1585 421, 31, 423, 35, 33, 33, 33, 472, 473, 472,
1586 473, 771, 32, 773, 774, 33, 31, 758, 422, 33,
1587 25, 34, 95, 31, 33, 32, 756, 757, 34, 33,
1588 33, 24, 436, 34, 32, 34, 32, 95, 830, 830,
1589 32, 25, 33, 32, 785, 25, 450, 33, 33, 453,
1590 446, 34, 34, 34, 33, 476, 477, 35, 33, 33,
1591 32, 25, 632, 33, 632, 32, 807, 635, 472, 473,
1592 862, 812, 862, 796, 797, 33, 33, 32, 26, 748,
1593 749, 475, 33, 33, 33, 681, 827, 879, 879, 676,
1594 179, 157, 852, 38, 628, 475, 23, 181, 475, 891,
1595 635, 380, 803, 639, 508, 169, 446, 20, 676, 765,
1596 19, 383, 912, 681, 4, 5, 6, 7, 8, 9,
1597 10, 11, 37, 776, 419, 890, 932, 17, 824, 921,
1598 921, 735, 22, -1, 875, 876, -1, -1, -1, 29,
1599 932, -1, -1, 4, 5, 6, 7, 8, 9, 10,
1600 11, -1, -1, -1, -1, -1, 17, 898, 918, 37,
1601 -1, 22, -1, -1, -1, -1, 733, -1, 29, 30,
1602 31, 912, -1, 933, -1, 90, 91, 92, 93, 94,
1603 41, 96, 97, -1, 4, 5, 6, 7, 8, 9,
1604 10, 11, -1, 83, 84, 85, 86, 17, 768, -1,
1605 768, -1, 22, -1, -1, -1, -1, -1, 683, 684,
1606 -1, -1, 90, 91, 92, 93, 94, -1, 96, 97,
1607 -1, 82, 83, 84, 85, 86, 87, -1, 89, -1,
1608 -1, 121, -1, -1, -1, 639, 3, -1, 659, 6,
1609 -1, -1, -1, 10, -1, 12, 13, 14, 15, 16,
1610 17, 663, -1, 114, -1, -1, -1, 661, 119, 680,
1611 121, -1, -1, 83, 84, 85, 33, -1, 680, -1,
1612 -1, 680, -1, -1, -1, -1, -1, -1, 682, -1,
1613 689, -1, 676, 748, 749, 748, 749, 681, -1, -1,
1614 -1, -1, -1, -1, -1, -1, 676, -1, 710, 676,
1615 870, 681, 870, 715, 681, -1, -1, -1, -1, 730,
1616 -1, -1, 733, -1, -1, 736, -1, -1, -1, 889,
1617 -1, 889, 732, -1, -1, -1, 794, -1, -1, -1,
1618 -1, 735, -1, -1, -1, 4, 5, 6, 7, 8,
1619 9, 10, 11, -1, 748, 749, -1, -1, 17, -1,
1620 -1, -1, -1, 22, -1, 925, -1, 925, -1, -1,
1621 29, -1, -1, 767, -1, -1, 770, 788, 37, -1,
1622 -1, -1, 4, 5, 6, 7, 8, 9, 10, 11,
1623 801, -1, 30, 804, 805, 17, -1, -1, -1, -1,
1624 22, 795, -1, -1, -1, 3, -1, 29, 6, -1,
1625 -1, 811, 10, 824, 12, 13, 14, 15, 16, 17,
1626 -1, -1, -1, -1, 83, 84, 85, 86, 66, 67,
1627 68, 69, 70, 71, 72, 73, 74, 75, 76, -1,
1628 78, 79, 80, 81, -1, -1, -1, -1, -1, -1,
1629 -1, -1, -1, -1, -1, -1, 867, -1, -1, -1,
1630 119, 83, 84, 85, 86, 876, -1, -1, -1, -1,
1631 -1, 0, -1, -1, 3, 4, 5, 6, 7, 8,
1632 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1633 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1634 29, 912, 31, 32, 33, 34, 35, 36, 37, 38,
1635 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
1636 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
1637 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1638 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1639 -1, 80, -1, 82, 83, 84, 85, 86, 87, 88,
1640 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1641 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1642 109, 110, 111, 112, 113, 114, -1, -1, 117, -1,
1643 119, 120, 121, 122, 123, 0, -1, -1, 3, 4,
1644 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
1645 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1646 25, 26, 27, 28, 29, -1, 31, 32, 33, 34,
1647 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
1648 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1649 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1650 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1651 75, 76, 77, 78, -1, 80, -1, 82, 83, 84,
1652 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1653 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1654 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1655 -1, -1, 117, -1, 119, 120, 121, 122, 123, 0,
1656 -1, -1, 3, 4, 5, 6, 7, 8, 9, 10,
1657 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1658 21, 22, 23, 24, 25, 26, 27, 28, 29, -1,
1659 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1660 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1661 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1662 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1663 71, 72, 73, 74, 75, 76, 77, 78, -1, 80,
1664 -1, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1665 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1666 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1667 111, 112, 113, 114, -1, -1, 117, -1, 119, 120,
1668 121, 122, 123, 0, -1, -1, 3, 4, 5, 6,
1669 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1670 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1671 27, 28, 29, -1, 31, 32, 33, 34, 35, 36,
1672 -1, 38, 39, 40, 41, 42, 43, 44, 45, 46,
1673 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1674 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1675 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1676 77, 78, -1, 80, -1, 82, 83, 84, 85, 86,
1677 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1678 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1679 107, 108, 109, 110, 111, 112, 113, 114, 3, -1,
1680 117, -1, 119, 120, 121, 122, 123, 12, 13, 14,
1681 15, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1682 -1, -1, -1, -1, 29, 30, 31, 32, 33, 34,
1683 35, 36, 37, 38, 39, 40, -1, 42, 43, 44,
1684 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1685 55, 56, 57, 58, 59, -1, -1, -1, -1, -1,
1686 65, 66, 67, 68, 69, -1, -1, -1, -1, -1,
1687 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1688 -1, 86, -1, 88, 89, 90, 91, 92, 93, -1,
1689 95, -1, -1, 98, 99, 100, 101, 102, 103, 104,
1690 105, 106, 107, 108, 109, 110, 111, 112, 113, -1,
1691 3, -1, -1, -1, -1, -1, -1, -1, 123, 12,
1692 13, 14, 15, -1, 17, 18, 19, -1, -1, 22,
1693 23, -1, 25, -1, 27, 28, 29, -1, -1, 32,
1694 -1, -1, -1, -1, 4, 5, 6, 7, 8, 9,
1695 10, 11, -1, -1, 47, 48, 49, 17, -1, -1,
1696 -1, -1, 22, -1, -1, -1, -1, 60, 61, 29,
1697 -1, -1, -1, 66, 67, 68, 69, -1, -1, -1,
1698 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1699 -1, -1, -1, 86, -1, 88, 89, 90, 91, 92,
1700 93, -1, 95, -1, -1, 98, 99, 100, 101, 102,
1701 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1702 113, -1, -1, 83, 84, 85, 86, -1, -1, 122,
1703 4, 5, 6, 7, 8, 9, 10, 11, -1, -1,
1704 -1, -1, -1, 17, -1, -1, -1, -1, 22, -1,
1705 -1, -1, -1, -1, -1, 29, -1, -1, -1, 119,
1706 -1, 3, -1, -1, -1, -1, -1, -1, -1, -1,
1707 12, 13, 14, 15, -1, 17, 18, -1, -1, -1,
1708 22, -1, -1, 25, -1, 27, 28, -1, -1, -1,
1709 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1710 -1, -1, -1, -1, -1, 47, 48, -1, -1, 83,
1711 84, 85, 86, -1, -1, -1, -1, -1, 60, 61,
1712 -1, -1, -1, -1, 66, 67, 68, 69, -1, -1,
1713 -1, -1, -1, -1, -1, 77, -1, -1, -1, -1,
1714 -1, -1, -1, -1, -1, 119, 88, 89, 90, 91,
1715 92, 93, -1, 95, -1, -1, 98, 99, 100, 101,
1716 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1717 112, 113, 3, -1, -1, 117, -1, -1, -1, -1,
1718 -1, 12, 13, 14, 15, -1, 17, 18, -1, -1,
1719 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1720 -1, 32, -1, -1, -1, -1, -1, 4, 5, 6,
1721 7, 8, 9, 10, 11, -1, 47, 48, -1, -1,
1722 17, -1, -1, -1, -1, 22, -1, -1, -1, 60,
1723 61, -1, 29, -1, -1, 66, 67, 68, 69, -1,
1724 -1, -1, -1, -1, -1, -1, 77, -1, -1, -1,
1725 -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
1726 91, 92, 93, -1, 95, -1, -1, 98, 99, 100,
1727 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1728 111, 112, 113, 3, -1, 116, 83, 84, 85, 86,
1729 -1, -1, 12, 13, 14, 15, -1, 17, 18, -1,
1730 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1731 -1, -1, 32, -1, -1, -1, -1, -1, 4, 5,
1732 6, 7, 8, 9, 10, 11, -1, 47, 48, -1,
1733 -1, 17, -1, -1, -1, -1, 22, -1, -1, -1,
1734 60, 61, -1, 29, -1, -1, 66, 67, 68, 69,
1735 -1, -1, -1, -1, -1, -1, -1, 77, -1, -1,
1736 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
1737 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
1738 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1739 110, 111, 112, 113, 3, -1, 116, 83, 84, 85,
1740 86, -1, -1, 12, 13, 14, 15, -1, 17, 18,
1741 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1742 -1, -1, -1, 32, -1, -1, -1, -1, -1, 4,
1743 5, 6, 7, 8, 9, 10, 11, -1, 47, 48,
1744 -1, -1, 17, -1, -1, -1, -1, 22, -1, -1,
1745 -1, 60, 61, -1, 29, -1, -1, 66, 67, 68,
1746 69, -1, -1, -1, -1, -1, -1, -1, 77, -1,
1747 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1748 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
1749 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1750 109, 110, 111, 112, 113, 3, -1, 116, 83, 84,
1751 85, 86, -1, -1, 12, 13, 14, 15, -1, 17,
1752 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1753 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1754 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1755 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1756 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1757 68, 69, -1, -1, -1, -1, -1, -1, -1, 77,
1758 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1759 88, 89, 90, 91, 92, 93, -1, 95, -1, -1,
1760 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1761 108, 109, 110, 111, 112, 113, 3, -1, 116, -1,
1762 -1, -1, -1, -1, -1, 12, 13, 14, 15, -1,
1763 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1764 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1765 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1766 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1767 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1768 67, 68, 69, -1, -1, -1, -1, -1, -1, -1,
1769 77, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1770 -1, 88, 89, 90, 91, 92, 93, -1, 95, -1,
1771 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1772 107, 108, 109, 110, 111, 112, 113, 3, -1, 116,
1773 -1, -1, -1, -1, -1, -1, 12, 13, 14, 15,
1774 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1775 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1776 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1777 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1778 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1779 66, 67, 68, 69, -1, -1, -1, -1, -1, -1,
1780 -1, 77, -1, -1, -1, -1, -1, -1, -1, -1,
1781 -1, -1, 88, 89, 90, 91, 92, 93, -1, 95,
1782 -1, -1, 98, 99, 100, 101, 102, 103, 104, 105,
1783 106, 107, 108, 109, 110, 111, 112, 113, 3, -1,
1784 116, -1, -1, -1, -1, -1, -1, 12, 13, 14,
1785 15, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1786 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1787 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1788 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
1789 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
1790 -1, 66, 67, 68, 69, -1, -1, -1, -1, -1,
1791 -1, -1, 77, -1, -1, -1, -1, -1, -1, -1,
1792 -1, -1, -1, 88, 89, 90, 91, 92, 93, -1,
1793 95, -1, -1, 98, 99, 100, 101, 102, 103, 104,
1794 105, 106, 107, 108, 109, 110, 111, 112, 113, 3,
1795 -1, 116, -1, -1, -1, -1, -1, -1, 12, 13,
1796 14, 15, -1, 17, 18, -1, -1, -1, 22, -1,
1797 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
1798 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1799 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
1800 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
1801 -1, -1, 66, 67, 68, 69, -1, -1, -1, -1,
1802 -1, -1, -1, 77, -1, -1, -1, -1, -1, -1,
1803 -1, -1, -1, -1, 88, 89, 90, 91, 92, 93,
1804 -1, 95, -1, -1, 98, 99, 100, 101, 102, 103,
1805 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1806 3, -1, 116, -1, -1, -1, -1, -1, -1, 12,
1807 13, 14, 15, -1, 17, 18, -1, -1, -1, 22,
1808 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1809 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1810 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1811 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1812 -1, -1, -1, 66, 67, 68, 69, -1, -1, -1,
1813 -1, -1, -1, -1, 77, -1, -1, -1, -1, -1,
1814 -1, -1, -1, -1, -1, 88, 89, 90, 91, 92,
1815 93, -1, 95, -1, -1, 98, 99, 100, 101, 102,
1816 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1817 113, 3, -1, 116, -1, -1, -1, -1, -1, -1,
1818 12, 13, 14, 15, -1, 17, 18, -1, -1, -1,
1819 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1820 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1821 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
1822 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
1823 -1, -1, -1, -1, 66, 67, 68, 69, -1, -1,
1824 -1, -1, -1, -1, -1, 77, -1, -1, -1, -1,
1825 -1, -1, -1, -1, -1, -1, 88, 89, 90, 91,
1826 92, 93, -1, 95, -1, -1, 98, 99, 100, 101,
1827 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1828 112, 113, 3, -1, 116, -1, -1, -1, -1, -1,
1829 -1, 12, 13, 14, 15, -1, 17, 18, -1, -1,
1830 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1831 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1832 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1833 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1834 61, -1, -1, -1, -1, 66, 67, 68, 69, -1,
1835 -1, -1, -1, -1, -1, -1, 77, -1, -1, -1,
1836 -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
1837 91, 92, 93, -1, 95, -1, -1, 98, 99, 100,
1838 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1839 111, 112, 113, 3, -1, 116, -1, -1, -1, -1,
1840 -1, -1, 12, 13, 14, 15, -1, 17, 18, -1,
1841 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1842 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
1843 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
1844 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1845 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
1846 -1, -1, -1, -1, -1, -1, -1, 77, -1, -1,
1847 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
1848 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
1849 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1850 110, 111, 112, 113, 3, -1, 116, -1, -1, -1,
1851 -1, -1, -1, 12, 13, 14, 15, -1, 17, 18,
1852 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1853 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1854 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
1855 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1856 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
1857 69, -1, -1, -1, -1, -1, -1, -1, 77, -1,
1858 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1859 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
1860 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1861 109, 110, 111, 112, 113, 3, -1, 116, -1, -1,
1862 -1, -1, -1, -1, 12, 13, 14, 15, -1, 17,
1863 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1864 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1865 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1866 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1867 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1868 68, 69, -1, -1, -1, -1, -1, -1, -1, 77,
1869 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1870 88, 89, 90, 91, 92, 93, -1, 95, -1, -1,
1871 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1872 108, 109, 110, 111, 112, 113, 3, -1, 116, -1,
1873 -1, -1, -1, -1, -1, 12, 13, 14, 15, -1,
1874 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1875 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1876 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1877 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1878 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1879 67, 68, 69, -1, -1, -1, -1, -1, -1, -1,
1880 77, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1881 -1, 88, 89, 90, 91, 92, 93, -1, 95, -1,
1882 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1883 107, 108, 109, 110, 111, 112, 113, 3, -1, 116,
1884 -1, -1, -1, -1, -1, -1, 12, 13, 14, 15,
1885 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1886 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1887 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1888 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1889 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1890 66, 67, 68, 69, -1, -1, -1, -1, -1, -1,
1891 -1, 77, -1, -1, -1, -1, -1, -1, -1, -1,
1892 -1, -1, 88, 89, 90, 91, 92, 93, -1, 95,
1893 -1, -1, 98, 99, 100, 101, 102, 103, 104, 105,
1894 106, 107, 108, 109, 110, 111, 112, 113, 3, -1,
1895 116, -1, -1, -1, -1, -1, -1, 12, 13, 14,
1896 15, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1897 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1898 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1899 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
1900 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
1901 -1, 66, 67, 68, 69, -1, -1, -1, -1, -1,
1902 -1, -1, 77, -1, -1, -1, -1, -1, -1, -1,
1903 -1, -1, -1, 88, 89, 90, 91, 92, 93, -1,
1904 95, -1, -1, 98, 99, 100, 101, 102, 103, 104,
1905 105, 106, 107, 108, 109, 110, 111, 112, 113, 3,
1906 -1, 116, -1, -1, -1, -1, -1, -1, 12, 13,
1907 14, 15, -1, 17, 18, -1, -1, -1, 22, -1,
1908 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
1909 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1910 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
1911 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
1912 -1, -1, 66, 67, 68, 69, -1, -1, -1, -1,
1913 -1, -1, -1, 77, -1, -1, -1, -1, -1, -1,
1914 -1, -1, -1, -1, 88, 89, 90, 91, 92, 93,
1915 -1, 95, -1, -1, 98, 99, 100, 101, 102, 103,
1916 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1917 3, -1, 116, -1, -1, -1, -1, -1, -1, 12,
1918 13, 14, 15, -1, 17, 18, -1, -1, -1, 22,
1919 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1920 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1921 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1922 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1923 -1, -1, -1, 66, 67, 68, 69, -1, -1, -1,
1924 -1, -1, -1, -1, 77, -1, -1, -1, -1, -1,
1925 -1, -1, -1, -1, -1, 88, 89, 90, 91, 92,
1926 93, -1, 95, -1, -1, 98, 99, 100, 101, 102,
1927 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1928 113, 3, -1, 116, -1, -1, -1, -1, -1, -1,
1929 12, 13, 14, 15, -1, 17, 18, -1, -1, -1,
1930 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1931 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1932 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
1933 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
1934 -1, -1, -1, -1, 66, 67, 68, 69, -1, -1,
1935 -1, -1, -1, -1, -1, 77, -1, -1, -1, -1,
1936 -1, -1, -1, -1, -1, -1, 88, 89, 90, 91,
1937 92, 93, -1, 95, -1, -1, 98, 99, 100, 101,
1938 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1939 112, 113, 3, -1, 116, -1, -1, -1, -1, -1,
1940 -1, 12, 13, 14, 15, -1, 17, 18, -1, -1,
1941 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1942 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1943 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1944 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1945 61, -1, -1, -1, -1, 66, 67, 68, 69, -1,
1946 -1, -1, -1, -1, -1, -1, 77, -1, -1, -1,
1947 -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
1948 91, 92, 93, -1, 95, -1, -1, 98, 99, 100,
1949 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1950 111, 112, 113, 3, -1, 116, -1, -1, -1, -1,
1951 -1, -1, 12, 13, 14, 15, -1, 17, 18, -1,
1952 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1953 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
1954 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
1955 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1956 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
1957 -1, -1, -1, -1, -1, -1, -1, 77, -1, -1,
1958 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
1959 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
1960 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1961 110, 111, 112, 113, 3, -1, 116, -1, -1, -1,
1962 -1, -1, -1, 12, 13, 14, 15, -1, 17, 18,
1963 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1964 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1965 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
1966 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1967 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
1968 69, -1, -1, -1, -1, -1, -1, -1, 77, -1,
1969 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1970 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
1971 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1972 109, 110, 111, 112, 113, 3, -1, 116, -1, -1,
1973 -1, -1, -1, -1, 12, 13, 14, 15, -1, 17,
1974 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1975 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1976 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1977 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1978 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1979 68, 69, -1, -1, -1, -1, -1, -1, -1, 77,
1980 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1981 88, 89, 90, 91, 92, 93, -1, 95, -1, -1,
1982 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1983 108, 109, 110, 111, 112, 113, 3, -1, 116, -1,
1984 -1, -1, -1, -1, -1, 12, 13, 14, 15, -1,
1985 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1986 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1987 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1988 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1989 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1990 67, 68, 69, -1, -1, -1, -1, -1, -1, -1,
1991 77, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1992 -1, 88, 89, 90, 91, 92, 93, -1, 95, -1,
1993 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1994 107, 108, 109, 110, 111, 112, 113, 3, -1, 116,
1995 -1, -1, -1, -1, -1, -1, 12, 13, 14, 15,
1996 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1997 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1998 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1999 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
2000 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
2001 66, 67, 68, 69, -1, -1, -1, -1, -1, -1,
2002 -1, 77, -1, -1, -1, -1, -1, -1, -1, -1,
2003 -1, -1, 88, 89, 90, 91, 92, 93, -1, 95,
2004 -1, -1, 98, 99, 100, 101, 102, 103, 104, 105,
2005 106, 107, 108, 109, 110, 111, 112, 113, 3, -1,
2006 116, -1, -1, -1, -1, -1, -1, 12, 13, 14,
2007 15, -1, 17, 18, -1, -1, -1, 22, -1, -1,
2008 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
2009 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2010 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
2011 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
2012 -1, 66, 67, 68, 69, -1, -1, -1, -1, -1,
2013 -1, -1, 77, -1, -1, -1, -1, -1, -1, -1,
2014 -1, -1, -1, 88, 89, 90, 91, 92, 93, -1,
2015 95, -1, -1, 98, 99, 100, 101, 102, 103, 104,
2016 105, 106, 107, 108, 109, 110, 111, 112, 113, 3,
2017 -1, 116, -1, -1, -1, -1, -1, -1, 12, 13,
2018 14, 15, -1, 17, 18, -1, -1, -1, 22, -1,
2019 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
2020 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2021 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
2022 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
2023 -1, -1, 66, 67, 68, 69, -1, -1, -1, -1,
2024 -1, -1, -1, 77, -1, -1, -1, -1, -1, -1,
2025 -1, -1, -1, -1, 88, 89, 90, 91, 92, 93,
2026 -1, 95, -1, -1, 98, 99, 100, 101, 102, 103,
2027 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2028 3, -1, 116, -1, -1, -1, -1, -1, -1, 12,
2029 13, 14, 15, -1, 17, 18, -1, -1, -1, 22,
2030 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
2031 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2032 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
2033 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
2034 -1, -1, -1, 66, 67, 68, 69, -1, -1, -1,
2035 -1, -1, -1, -1, 77, -1, -1, -1, -1, -1,
2036 -1, -1, -1, -1, -1, 88, 89, 90, 91, 92,
2037 93, -1, 95, -1, -1, 98, 99, 100, 101, 102,
2038 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2039 113, 3, -1, 116, -1, -1, -1, -1, -1, -1,
2040 12, 13, 14, 15, -1, 17, 18, -1, -1, -1,
2041 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
2042 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2043 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
2044 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
2045 -1, -1, -1, -1, 66, 67, 68, 69, -1, -1,
2046 -1, -1, -1, -1, -1, 77, -1, -1, -1, -1,
2047 -1, -1, -1, -1, -1, -1, 88, 89, 90, 91,
2048 92, 93, -1, 95, -1, -1, 98, 99, 100, 101,
2049 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2050 112, 113, 3, -1, 116, -1, -1, -1, -1, -1,
2051 -1, 12, 13, 14, 15, -1, 17, 18, -1, -1,
2052 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
2053 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
2054 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
2055 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
2056 61, -1, -1, -1, -1, 66, 67, 68, 69, -1,
2057 -1, -1, -1, -1, -1, -1, 77, -1, -1, -1,
2058 -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
2059 91, 92, 93, -1, 95, -1, -1, 98, 99, 100,
2060 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2061 111, 112, 113, 3, -1, 116, -1, -1, -1, -1,
2062 -1, -1, 12, 13, 14, 15, -1, 17, 18, -1,
2063 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
2064 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
2065 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
2066 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2067 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
2068 -1, -1, -1, -1, -1, -1, -1, 77, -1, -1,
2069 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
2070 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
2071 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2072 110, 111, 112, 113, 3, -1, 116, -1, -1, -1,
2073 -1, -1, -1, 12, 13, 14, 15, -1, 17, 18,
2074 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
2075 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
2076 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
2077 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2078 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
2079 69, -1, -1, -1, -1, -1, -1, -1, 77, -1,
2080 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
2081 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
2082 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2083 109, 110, 111, 112, 113, 3, -1, 116, -1, -1,
2084 -1, -1, -1, -1, 12, 13, 14, 15, -1, 17,
2085 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
2086 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
2087 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
2088 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2089 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
2090 68, 69, -1, -1, -1, -1, -1, -1, -1, 77,
2091 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2092 88, 89, 90, 91, 92, 93, -1, 95, -1, -1,
2093 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
2094 108, 109, 110, 111, 112, 113, 3, -1, 116, -1,
2095 -1, -1, -1, -1, -1, 12, 13, 14, 15, -1,
2096 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
2097 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
2098 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2099 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
2100 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
2101 67, 68, 69, -1, -1, -1, -1, -1, -1, -1,
2102 77, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2103 -1, 88, 89, 90, 91, 92, 93, -1, 95, -1,
2104 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
2105 107, 108, 109, 110, 111, 112, 113, 3, -1, 116,
2106 -1, -1, -1, -1, -1, -1, 12, 13, 14, 15,
2107 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
2108 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
2109 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2110 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
2111 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
2112 66, 67, 68, 69, -1, -1, -1, -1, -1, -1,
2113 -1, 77, -1, -1, -1, -1, -1, -1, -1, -1,
2114 -1, -1, 88, 89, 90, 91, 92, 93, -1, 95,
2115 -1, -1, 98, 99, 100, 101, 102, 103, 104, 105,
2116 106, 107, 108, 109, 110, 111, 112, 113, -1, -1,
2117 116, 3, 4, 5, 6, 7, 8, 9, 10, 11,
2118 12, 13, 14, 15, -1, 17, 18, 19, -1, -1,
2119 22, 23, -1, 25, -1, 27, 28, 29, -1, -1,
2120 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2121 -1, -1, -1, -1, -1, 47, 48, 49, -1, -1,
2122 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
2123 -1, -1, -1, -1, 66, 67, 68, 69, -1, -1,
2124 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2125 -1, 83, 84, 85, 86, -1, 88, 89, 90, 91,
2126 92, 93, -1, 95, -1, -1, 98, 99, 100, 101,
2127 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2128 112, 113, 3, -1, -1, -1, -1, -1, -1, -1,
2129 -1, 12, 13, 14, 15, -1, 17, 18, 19, 20,
2130 21, 22, 23, -1, 25, 26, 27, 28, -1, -1,
2131 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
2132 -1, -1, -1, -1, -1, -1, 47, 48, 49, -1,
2133 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
2134 61, -1, -1, -1, -1, 66, 67, 68, 69, -1,
2135 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2136 -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
2137 91, 92, 93, -1, 95, -1, -1, 98, 99, 100,
2138 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2139 111, 112, 113, 3, -1, -1, -1, -1, -1, -1,
2140 -1, -1, 12, 13, 14, 15, -1, 17, 18, 19,
2141 -1, -1, 22, 23, -1, 25, -1, 27, 28, -1,
2142 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
2143 -1, -1, -1, -1, 44, -1, -1, 47, 48, 49,
2144 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2145 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
2146 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2147 -1, -1, -1, -1, -1, -1, -1, 87, 88, 89,
2148 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
2149 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2150 110, 111, 112, 113, 3, -1, -1, -1, -1, -1,
2151 -1, -1, -1, 12, 13, 14, 15, -1, 17, 18,
2152 19, -1, -1, 22, 23, -1, 25, -1, 27, 28,
2153 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
2154 -1, -1, -1, -1, -1, 44, -1, -1, 47, 48,
2155 49, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2156 -1, 60, 61, -1, -1, 64, -1, 66, 67, 68,
2157 69, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2158 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
2159 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
2160 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2161 109, 110, 111, 112, 113, 3, -1, -1, -1, -1,
2162 -1, -1, -1, -1, 12, 13, 14, 15, -1, 17,
2163 18, 19, -1, -1, 22, 23, 24, 25, -1, 27,
2164 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
2165 -1, -1, -1, -1, -1, -1, 44, -1, -1, 47,
2166 48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
2167 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
2168 68, 69, -1, -1, -1, -1, -1, -1, -1, -1,
2169 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2170 88, 89, 90, 91, 92, 93, -1, 95, -1, -1,
2171 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
2172 108, 109, 110, 111, 112, 113, 3, -1, -1, -1,
2173 -1, -1, -1, -1, -1, 12, 13, 14, 15, -1,
2174 17, 18, 19, -1, -1, 22, 23, -1, 25, -1,
2175 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
2176 -1, -1, -1, -1, -1, -1, -1, 44, -1, -1,
2177 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
2178 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
2179 67, 68, 69, -1, -1, -1, -1, -1, -1, -1,
2180 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2181 -1, 88, 89, 90, 91, 92, 93, -1, 95, -1,
2182 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
2183 107, 108, 109, 110, 111, 112, 113, 3, -1, -1,
2184 -1, -1, -1, -1, -1, -1, 12, 13, 14, 15,
2185 -1, 17, 18, 19, -1, -1, 22, 23, -1, 25,
2186 -1, 27, 28, -1, -1, -1, 32, -1, -1, -1,
2187 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2188 -1, 47, 48, 49, -1, -1, -1, -1, -1, -1,
2189 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
2190 66, 67, 68, 69, -1, -1, -1, -1, -1, -1,
2191 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2192 -1, 87, 88, 89, 90, 91, 92, 93, -1, 95,
2193 -1, -1, 98, 99, 100, 101, 102, 103, 104, 105,
2194 106, 107, 108, 109, 110, 111, 112, 113, 3, -1,
2195 -1, -1, -1, -1, -1, -1, -1, 12, 13, 14,
2196 15, -1, 17, 18, 19, -1, -1, 22, 23, -1,
2197 25, -1, 27, 28, -1, -1, -1, 32, -1, -1,
2198 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2199 -1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
2200 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
2201 -1, 66, 67, 68, 69, -1, -1, -1, -1, -1,
2202 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2203 -1, -1, -1, 88, 89, 90, 91, 92, 93, -1,
2204 95, -1, -1, 98, 99, 100, 101, 102, 103, 104,
2205 105, 106, 107, 108, 109, 110, 111, 112, 113, 3,
2206 -1, -1, -1, -1, -1, -1, -1, -1, 12, 13,
2207 14, 15, -1, 17, 18, -1, -1, -1, 22, -1,
2208 -1, 25, -1, 27, 28, -1, -1, -1, 32, -1,
2209 -1, -1, 4, 5, 6, 7, 8, 9, 10, 11,
2210 -1, -1, -1, 47, 48, 17, -1, -1, -1, -1,
2211 22, -1, -1, -1, 26, 27, 60, 61, -1, -1,
2212 -1, -1, 66, 67, 68, 69, -1, -1, -1, -1,
2213 -1, -1, 44, 77, -1, -1, -1, -1, -1, -1,
2214 -1, -1, -1, -1, 88, 89, 90, 91, 92, 93,
2215 -1, 95, -1, -1, 98, 99, 100, 101, 102, 103,
2216 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2217 3, 83, 84, 85, -1, -1, -1, -1, -1, 12,
2218 13, 14, 15, -1, 17, 18, -1, -1, -1, 22,
2219 -1, -1, -1, -1, -1, -1, 29, -1, -1, 32,
2220 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2221 -1, -1, -1, -1, -1, -1, 49, -1, -1, -1,
2222 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2223 -1, -1, -1, 66, 67, 68, 69, -1, -1, -1,
2224 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2225 -1, -1, -1, 86, -1, 88, 89, 90, 91, 92,
2226 93, -1, 95, -1, -1, 98, 99, 100, 101, 102,
2227 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2228 113, 3, -1, -1, -1, -1, -1, -1, -1, -1,
2229 12, 13, 14, 15, -1, 17, 18, 31, -1, -1,
2230 22, -1, -1, -1, -1, -1, -1, 29, 42, 43,
2231 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
2232 54, 55, 56, 57, 58, 59, -1, 49, -1, -1,
2233 -1, 65, -1, -1, -1, -1, -1, -1, -1, -1,
2234 -1, -1, -1, -1, 66, 67, 68, 69, -1, -1,
2235 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2236 -1, -1, -1, -1, 86, -1, 88, 89, 90, 91,
2237 92, 93, -1, 95, -1, -1, 98, 99, 100, 101,
2238 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2239 112, 113, 3, -1, -1, -1, -1, -1, -1, -1,
2240 -1, 12, 13, 14, 15, -1, 17, 18, -1, -1,
2241 -1, 22, -1, -1, 33, -1, -1, -1, -1, -1,
2242 -1, 32, 33, 42, 43, 44, 45, 46, 47, 48,
2243 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
2244 59, -1, -1, -1, -1, -1, 65, -1, -1, -1,
2245 -1, -1, -1, -1, -1, 66, 67, 68, 69, -1,
2246 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2247 -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
2248 91, 92, 93, -1, 95, -1, -1, 98, 99, 100,
2249 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2250 111, 112, 113, 3, -1, -1, -1, -1, -1, -1,
2251 -1, -1, 12, 13, 14, 15, -1, 17, 18, -1,
2252 -1, -1, 22, -1, -1, -1, -1, -1, -1, -1,
2253 -1, -1, -1, -1, -1, 35, -1, -1, -1, -1,
2254 -1, -1, -1, -1, -1, -1, -1, -1, -1, 49,
2255 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2256 -1, -1, -1, -1, -1, -1, 66, 67, 68, 69,
2257 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2258 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
2259 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
2260 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2261 110, 111, 112, 113, 3, -1, -1, -1, -1, -1,
2262 -1, -1, -1, 12, 13, 14, 15, 33, 17, 18,
2263 -1, -1, -1, 22, -1, -1, 42, 43, 44, 45,
2264 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2265 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2266 49, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2267 -1, -1, -1, -1, -1, -1, 3, 66, 67, 68,
2268 69, -1, -1, -1, -1, 12, 13, 14, 15, -1,
2269 17, 18, -1, -1, -1, 22, -1, -1, -1, 88,
2270 89, 90, 91, 92, 93, 32, 95, -1, -1, 98,
2271 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2272 109, 110, 111, 112, 113, -1, -1, -1, -1, -1,
2273 -1, -1, -1, -1, -1, -1, -1, -1, 3, 66,
2274 67, 68, 69, -1, -1, -1, -1, 12, 13, 14,
2275 15, -1, 17, 18, -1, -1, -1, 22, -1, -1,
2276 -1, 88, 89, 90, 91, 92, 93, 32, 95, -1,
2277 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
2278 107, 108, 109, 110, 111, 112, 113, -1, -1, -1,
2279 -1, -1, -1, -1, -1, -1, 3, -1, -1, -1,
2280 -1, 66, 67, 68, 69, 12, 13, 14, 15, -1,
2281 17, 18, -1, -1, -1, 22, -1, -1, -1, -1,
2282 -1, -1, -1, 88, 89, 90, 91, 92, 93, -1,
2283 95, -1, -1, 98, 99, 100, 101, 102, 103, 104,
2284 105, 106, 107, 108, 109, 110, 111, 112, 113, -1,
2285 -1, -1, -1, -1, -1, -1, -1, 64, -1, 66,
2286 67, 68, 69, -1, -1, -1, -1, -1, -1, -1,
2287 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2288 -1, 88, 89, 90, 91, 92, 93, -1, 95, -1,
2289 -1, 98, 99, 100, 101, 102, 103, 104, 105, 106,
2290 107, 108, 109, 110, 111, 112, 113, 3, -1, -1,
2291 -1, -1, -1, -1, -1, -1, 12, 13, 14, 15,
2292 33, 17, 18, -1, -1, -1, 22, -1, -1, 42,
2293 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
2294 53, 54, 55, 56, 57, 58, 59, -1, -1, -1,
2295 -1, -1, 65, 49, -1, -1, -1, -1, -1, -1,
2296 -1, -1, -1, -1, -1, 3, -1, -1, -1, -1,
2297 66, 67, 68, 69, 12, 13, 14, 15, -1, 17,
2298 18, -1, -1, -1, 22, -1, -1, -1, -1, -1,
2299 -1, -1, 88, 89, 90, 91, 92, 93, -1, 95,
2300 -1, -1, 98, 99, 100, 101, 102, 103, 104, 105,
2301 106, 107, 108, 109, 110, 111, 112, 113, -1, -1,
2302 -1, -1, -1, 3, -1, -1, 64, -1, 66, 67,
2303 68, 69, 12, 13, 14, 15, -1, 17, 18, -1,
2304 -1, -1, 22, -1, -1, -1, -1, -1, -1, -1,
2305 88, 89, 90, 91, 92, 93, -1, 95, -1, -1,
2306 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
2307 108, 109, 110, 111, 112, 113, -1, -1, -1, -1,
2308 -1, -1, -1, -1, -1, -1, 66, 67, 68, 69,
2309 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2310 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
2311 90, 91, 92, 93, -1, 95, -1, -1, 98, 99,
2312 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2313 110, 111, 112, 113, 34, -1, -1, -1, -1, -1,
2314 -1, -1, 42, 43, 44, 45, 46, 47, 48, 49,
2315 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2316 35, -1, -1, -1, -1, 65, -1, 42, 43, 44,
2317 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2318 55, 56, 57, 58, 59, 35, -1, -1, -1, -1,
2319 65, -1, 42, 43, 44, 45, 46, 47, 48, 49,
2320 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2321 -1, -1, -1, 39, -1, 65, 42, 43, 44, 45,
2322 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2323 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2324 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
2325 52, 53, 54, 55, 56, 57, 58, 59, -1, -1,
2326 -1, -1, -1, 65, 42, 43, 44, 45, 46, 47,
2327 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2328 58, 59, -1, -1, -1, -1, -1, 65, 42, 43,
2329 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
2330 54, 55, 56, 57, 58, 59, -1, -1, -1, -1,
2331 -1, 65, 42, 43, 44, 45, 46, 47, 48, 49,
2332 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2333 -1, -1, -1, -1, -1, 65
2336 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2337 symbol of state STATE-NUM. */
2338 static const unsigned short yystos
[] =
2340 0, 4, 5, 6, 7, 8, 9, 10, 11, 17,
2341 22, 29, 30, 31, 41, 82, 83, 84, 85, 86,
2342 87, 89, 114, 119, 121, 144, 145, 146, 147, 165,
2343 168, 173, 174, 175, 176, 177, 178, 179, 180, 181,
2344 186, 189, 192, 193, 197, 198, 199, 200, 202, 204,
2345 208, 210, 211, 217, 225, 239, 240, 9, 11, 22,
2346 83, 84, 85, 86, 121, 198, 208, 30, 66, 67,
2347 68, 69, 70, 71, 72, 73, 74, 75, 76, 78,
2348 79, 80, 81, 148, 149, 150, 151, 152, 154, 155,
2349 156, 83, 84, 119, 169, 171, 199, 200, 208, 217,
2350 226, 227, 3, 12, 13, 14, 15, 17, 18, 22,
2351 66, 67, 68, 69, 88, 89, 90, 91, 92, 93,
2352 95, 98, 99, 100, 101, 102, 103, 104, 105, 106,
2353 107, 108, 109, 110, 111, 112, 113, 141, 258, 270,
2354 141, 141, 228, 3, 6, 10, 12, 13, 23, 245,
2355 247, 121, 240, 44, 278, 279, 22, 82, 87, 121,
2356 197, 0, 146, 49, 141, 174, 209, 234, 235, 236,
2357 237, 175, 4, 5, 6, 9, 22, 182, 6, 179,
2358 185, 198, 123, 187, 32, 32, 36, 36, 141, 141,
2359 141, 34, 190, 30, 0, 3, 4, 5, 6, 7,
2360 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
2361 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
2362 28, 29, 31, 32, 33, 34, 35, 36, 37, 38,
2363 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2364 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
2365 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
2366 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
2367 80, 82, 83, 84, 85, 86, 87, 88, 89, 90,
2368 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
2369 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2370 111, 112, 113, 114, 117, 119, 120, 121, 122, 123,
2371 141, 142, 157, 3, 12, 13, 14, 15, 17, 18,
2372 22, 66, 67, 68, 69, 88, 89, 90, 91, 92,
2373 93, 95, 98, 99, 100, 101, 102, 103, 104, 105,
2374 106, 107, 108, 109, 110, 111, 112, 113, 142, 160,
2375 161, 160, 26, 117, 153, 142, 25, 27, 28, 32,
2376 47, 48, 60, 61, 77, 140, 141, 162, 222, 141,
2377 228, 141, 228, 171, 31, 141, 35, 231, 231, 231,
2378 231, 40, 23, 36, 23, 169, 121, 187, 29, 86,
2379 238, 38, 232, 32, 141, 122, 237, 6, 183, 6,
2380 9, 184, 182, 36, 194, 32, 31, 17, 173, 201,
2381 203, 205, 206, 207, 208, 205, 141, 218, 219, 90,
2382 91, 92, 93, 94, 96, 97, 249, 250, 251, 264,
2383 267, 273, 274, 275, 191, 209, 235, 187, 26, 116,
2384 162, 188, 160, 142, 26, 27, 32, 44, 224, 162,
2385 32, 141, 162, 32, 42, 43, 44, 45, 46, 47,
2386 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2387 58, 59, 65, 139, 35, 36, 213, 213, 31, 212,
2388 213, 212, 19, 20, 21, 23, 25, 27, 32, 140,
2389 166, 167, 188, 209, 220, 221, 222, 40, 249, 32,
2390 31, 31, 19, 29, 86, 122, 220, 233, 234, 235,
2391 232, 6, 0, 3, 4, 5, 6, 7, 8, 9,
2392 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2393 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
2394 31, 32, 33, 34, 35, 38, 39, 40, 41, 42,
2395 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
2396 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
2397 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
2398 73, 74, 75, 76, 77, 78, 80, 82, 83, 84,
2399 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
2400 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
2401 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2402 117, 119, 120, 121, 122, 123, 143, 194, 195, 196,
2403 188, 234, 32, 33, 34, 34, 33, 34, 40, 34,
2404 229, 209, 254, 220, 243, 268, 269, 270, 278, 209,
2405 141, 276, 277, 209, 265, 269, 37, 250, 220, 34,
2406 31, 32, 26, 175, 223, 224, 22, 33, 141, 117,
2407 162, 163, 164, 162, 162, 32, 119, 170, 171, 172,
2408 173, 214, 217, 226, 227, 209, 209, 17, 22, 173,
2409 220, 220, 31, 65, 139, 166, 37, 14, 15, 16,
2410 17, 33, 241, 242, 244, 246, 247, 248, 39, 39,
2411 32, 141, 37, 196, 33, 32, 232, 205, 232, 64,
2412 207, 232, 64, 220, 219, 37, 40, 31, 40, 31,
2413 32, 24, 40, 32, 31, 34, 32, 31, 31, 209,
2414 64, 141, 158, 159, 234, 33, 33, 33, 34, 35,
2415 25, 172, 35, 230, 37, 170, 231, 231, 33, 33,
2416 220, 220, 31, 35, 33, 34, 243, 234, 32, 33,
2417 234, 33, 34, 33, 33, 19, 87, 88, 107, 220,
2418 253, 255, 256, 257, 258, 279, 268, 209, 278, 191,
2419 277, 17, 191, 266, 33, 34, 162, 162, 34, 25,
2420 35, 34, 215, 230, 213, 213, 220, 35, 244, 35,
2421 242, 244, 40, 141, 205, 33, 232, 64, 232, 232,
2422 107, 255, 17, 18, 32, 258, 261, 32, 32, 253,
2423 34, 271, 209, 33, 33, 160, 64, 141, 25, 35,
2424 32, 209, 216, 230, 31, 215, 220, 244, 278, 166,
2425 33, 33, 33, 266, 32, 220, 243, 64, 268, 272,
2426 33, 31, 95, 33, 35, 25, 230, 34, 31, 64,
2427 32, 33, 232, 33, 243, 34, 34, 259, 33, 34,
2428 18, 269, 270, 32, 34, 209, 230, 24, 205, 32,
2429 95, 32, 220, 209, 252, 253, 254, 260, 279, 33,
2430 268, 25, 25, 230, 33, 33, 205, 261, 262, 263,
2431 268, 33, 34, 253, 34, 33, 35, 33, 33, 32,
2432 33, 34, 252, 25, 244, 32, 232, 243, 33, 268,
2433 33, 205, 32, 33, 262, 232, 33, 33
2436 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
2437 static const unsigned short yyr1
[] =
2439 0, 138, 139, 139, 139, 139, 139, 139, 139, 139,
2440 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2441 140, 140, 140, 140, 141, 141, 141, 141, 141, 141,
2442 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2443 141, 141, 141, 141, 142, 142, 142, 142, 142, 142,
2444 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2445 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2446 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2447 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2448 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2449 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2450 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2451 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2452 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2453 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2454 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
2455 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2456 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2457 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2458 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2459 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2460 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2461 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2462 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2463 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2464 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2465 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2466 143, 143, 143, 143, 144, 144, 145, 145, 146, 146,
2467 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
2468 146, 147, 147, 148, 148, 148, 148, 148, 148, 148,
2469 149, 149, 150, 151, 151, 152, 152, 152, 153, 153,
2470 154, 154, 155, 155, 155, 156, 156, 157, 157, 157,
2471 157, 158, 158, 158, 158, 159, 159, 160, 160, 161,
2472 161, 162, 162, 162, 162, 162, 162, 162, 162, 162,
2473 162, 162, 163, 163, 164, 164, 164, 165, 165, 166,
2474 166, 166, 167, 167, 167, 168, 168, 169, 169, 170,
2475 170, 171, 171, 171, 171, 171, 172, 172, 172, 172,
2476 172, 173, 173, 173, 174, 174, 175, 175, 176, 176,
2477 176, 177, 177, 177, 177, 178, 178, 178, 179, 179,
2478 180, 180, 180, 181, 181, 181, 181, 182, 182, 182,
2479 182, 182, 182, 183, 183, 184, 184, 184, 184, 185,
2480 185, 185, 186, 186, 187, 187, 188, 188, 189, 190,
2481 190, 191, 191, 192, 193, 193, 193, 193, 193, 193,
2482 194, 195, 195, 196, 196, 197, 197, 198, 198, 199,
2483 199, 200, 200, 200, 200, 201, 201, 202, 203, 204,
2484 205, 205, 205, 206, 206, 207, 207, 207, 208, 208,
2485 209, 209, 210, 211, 212, 212, 213, 214, 214, 215,
2486 215, 216, 216, 216, 216, 217, 218, 218, 219, 219,
2487 220, 220, 220, 220, 220, 220, 221, 221, 221, 221,
2488 221, 221, 222, 222, 223, 223, 224, 224, 224, 225,
2489 226, 227, 228, 228, 229, 229, 230, 230, 230, 230,
2490 231, 231, 232, 232, 232, 233, 233, 233, 233, 234,
2491 234, 235, 235, 236, 236, 237, 237, 238, 238, 239,
2492 239, 240, 240, 240, 241, 241, 242, 242, 243, 244,
2493 245, 246, 246, 247, 247, 247, 247, 247, 248, 248,
2494 248, 248, 249, 249, 250, 250, 250, 250, 250, 251,
2495 251, 252, 252, 252, 253, 253, 253, 253, 253, 253,
2496 254, 254, 255, 256, 256, 257, 258, 258, 258, 258,
2497 258, 258, 258, 258, 258, 258, 259, 259, 260, 260,
2498 261, 261, 262, 262, 263, 263, 264, 265, 265, 266,
2499 266, 266, 267, 268, 268, 268, 269, 269, 270, 270,
2500 270, 270, 270, 270, 270, 270, 271, 271, 272, 272,
2501 273, 274, 274, 275, 276, 276, 277, 278, 278, 279
2504 /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
2505 static const unsigned char yyr2
[] =
2507 0, 2, 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, 1, 1, 1,
2516 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2517 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2518 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2519 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2520 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2521 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2522 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2523 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2524 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2525 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2526 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2527 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2528 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2529 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2530 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2531 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2532 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2533 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2534 1, 1, 1, 1, 0, 1, 1, 2, 1, 1,
2535 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2536 1, 2, 3, 2, 2, 1, 2, 2, 2, 2,
2537 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2538 1, 1, 1, 1, 1, 1, 1, 2, 6, 2,
2539 2, 0, 1, 1, 3, 1, 3, 0, 1, 1,
2540 2, 3, 2, 3, 5, 2, 4, 1, 1, 1,
2541 1, 4, 0, 1, 1, 1, 3, 6, 5, 1,
2542 1, 1, 1, 1, 1, 3, 4, 1, 2, 1,
2543 2, 1, 1, 2, 4, 4, 1, 1, 1, 3,
2544 3, 1, 2, 2, 1, 1, 1, 1, 2, 2,
2545 2, 1, 1, 1, 1, 1, 1, 2, 1, 1,
2546 1, 1, 2, 1, 1, 2, 2, 0, 1, 1,
2547 2, 1, 2, 0, 1, 0, 1, 1, 2, 0,
2548 1, 2, 3, 4, 0, 4, 1, 2, 5, 0,
2549 2, 1, 3, 3, 1, 2, 2, 3, 1, 2,
2550 3, 1, 2, 1, 1, 1, 2, 1, 1, 5,
2551 7, 5, 7, 13, 16, 5, 7, 6, 5, 1,
2552 0, 1, 1, 1, 3, 1, 1, 3, 1, 2,
2553 3, 2, 4, 4, 1, 1, 3, 4, 5, 0,
2554 2, 2, 4, 1, 3, 5, 1, 3, 1, 3,
2555 1, 4, 3, 3, 2, 5, 1, 1, 1, 1,
2556 1, 1, 4, 2, 1, 2, 2, 1, 1, 2,
2557 2, 2, 0, 1, 0, 1, 0, 2, 7, 9,
2558 0, 7, 0, 3, 3, 0, 1, 1, 1, 0,
2559 1, 1, 2, 1, 2, 1, 2, 1, 1, 4,
2560 5, 7, 8, 13, 1, 3, 2, 4, 2, 1,
2561 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2562 1, 1, 1, 2, 1, 1, 1, 1, 1, 3,
2563 6, 1, 2, 1, 1, 1, 1, 2, 1, 1,
2564 3, 4, 6, 8, 12, 5, 1, 1, 1, 1,
2565 1, 1, 1, 1, 1, 1, 0, 2, 1, 3,
2566 1, 1, 0, 1, 1, 3, 3, 6, 1, 0,
2567 1, 1, 3, 1, 1, 3, 5, 6, 1, 1,
2568 1, 1, 1, 1, 1, 1, 0, 2, 1, 3,
2569 3, 1, 1, 3, 1, 3, 4, 0, 1, 1
2573 /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */
2574 static const unsigned char yydprec
[] =
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, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0,
2593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2594 0, 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, 0, 0, 0, 0, 0, 0, 0, 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, 1, 2, 2,
2608 2, 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, 2,
2611 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2612 0, 0, 0, 0, 0, 0, 2, 1, 0, 0,
2613 0, 0, 0, 0, 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, 0, 0,
2620 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2621 0, 2, 1, 0, 0, 0, 2, 1, 0, 0,
2622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
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, 2, 1, 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
2641 /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */
2642 static const unsigned char yymerger
[] =
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, 0, 0,
2688 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2689 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2690 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2691 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2692 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2693 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
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
2709 /* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as
2710 in the case of predicates. */
2711 static const yybool yyimmediate
[] =
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, 0, 0,
2757 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2758 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2759 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2760 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2761 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2762 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2763 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2764 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
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, 0, 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, 0, 0, 0, 0, 0, 0, 0
2778 /* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of
2779 list of conflicting reductions corresponding to action entry for
2780 state STATE-NUM in yytable. 0 means no conflicts. The list in
2781 yyconfl is terminated by a rule number of 0. */
2782 static const unsigned short yyconflp
[] =
2784 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2785 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2786 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2787 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2788 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2789 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2790 0, 0, 0, 0, 0, 0, 15, 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, 3380, 0, 0, 3382, 0, 0,
2794 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2795 0, 0, 3362, 0, 0, 0, 0, 0, 0, 0,
2796 0, 0, 0, 0, 0, 0, 0, 0, 0, 3366,
2797 3368, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2798 0, 13, 0, 0, 0, 0, 0, 0, 0, 0,
2799 0, 0, 0, 0, 0, 0, 3364, 0, 17, 0,
2800 0, 0, 0, 0, 9, 0, 0, 0, 11, 0,
2801 0, 0, 0, 3372, 0, 3374, 3376, 0, 0, 0,
2802 0, 0, 0, 0, 0, 0, 0, 3384, 0, 3386,
2803 3388, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2804 0, 163, 0, 0, 0, 0, 0, 0, 0, 0,
2805 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2806 0, 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, 3370,
2813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2814 0, 0, 0, 0, 0, 0, 3378, 0, 0, 0,
2815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2816 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2817 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2818 0, 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, 3390, 0, 0, 0, 0, 0, 0, 0,
2823 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 0, 0,
2836 0, 0, 3, 0, 0, 0, 0, 0, 0, 5,
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, 7, 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, 0, 0, 0, 0, 0, 0, 19, 0,
2918 0, 0, 0, 0, 0, 0, 0, 21, 23, 25,
2919 27, 0, 29, 31, 0, 0, 0, 33, 0, 0,
2920 0, 0, 0, 0, 35, 37, 39, 41, 43, 45,
2921 47, 49, 51, 53, 55, 57, 0, 59, 61, 63,
2922 65, 67, 69, 71, 73, 75, 77, 79, 81, 83,
2923 85, 87, 89, 91, 93, 0, 0, 0, 0, 0,
2924 95, 97, 99, 101, 103, 0, 0, 0, 0, 0,
2925 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2926 0, 105, 0, 107, 109, 111, 113, 115, 117, 0,
2927 119, 0, 0, 121, 123, 125, 127, 129, 131, 133,
2928 135, 137, 139, 141, 143, 145, 147, 149, 151, 0,
2929 0, 0, 0, 0, 0, 0, 0, 0, 153, 0,
2930 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2931 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2932 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2933 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2934 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2935 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2936 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2937 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2938 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2939 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2940 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2941 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2942 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2943 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2944 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2945 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2946 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2947 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2948 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2949 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2950 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2951 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2952 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2953 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2954 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2955 0, 0, 165, 0, 0, 0, 0, 0, 0, 0,
2956 0, 167, 169, 171, 173, 0, 175, 177, 0, 0,
2957 0, 179, 0, 0, 181, 183, 185, 187, 0, 0,
2958 0, 189, 0, 0, 0, 0, 0, 0, 0, 0,
2959 0, 0, 0, 0, 0, 0, 191, 193, 0, 0,
2960 0, 0, 0, 0, 0, 0, 0, 0, 0, 195,
2961 197, 0, 0, 0, 0, 199, 201, 203, 205, 0,
2962 0, 0, 0, 0, 0, 0, 207, 0, 0, 0,
2963 0, 0, 0, 0, 0, 0, 0, 209, 211, 213,
2964 215, 217, 219, 0, 221, 0, 0, 223, 225, 227,
2965 229, 231, 233, 235, 237, 239, 241, 243, 245, 247,
2966 249, 251, 253, 255, 0, 0, 0, 0, 0, 0,
2967 0, 0, 257, 259, 261, 263, 0, 265, 267, 0,
2968 0, 0, 269, 0, 0, 271, 273, 275, 277, 0,
2969 0, 0, 279, 0, 0, 0, 0, 0, 0, 0,
2970 0, 0, 0, 0, 0, 0, 0, 281, 283, 0,
2971 0, 155, 0, 0, 0, 0, 157, 0, 0, 0,
2972 285, 287, 0, 159, 0, 0, 289, 291, 293, 295,
2973 0, 0, 0, 0, 0, 0, 0, 297, 0, 0,
2974 0, 0, 0, 0, 0, 0, 0, 0, 299, 301,
2975 303, 305, 307, 309, 0, 311, 0, 0, 313, 315,
2976 317, 319, 321, 323, 325, 327, 329, 331, 333, 335,
2977 337, 339, 341, 343, 345, 0, 0, 0, 0, 0,
2978 161, 0, 0, 347, 349, 351, 353, 0, 355, 357,
2979 0, 0, 0, 359, 0, 0, 361, 363, 365, 367,
2980 0, 0, 0, 369, 0, 0, 0, 0, 0, 0,
2981 0, 0, 0, 0, 0, 0, 0, 0, 371, 373,
2982 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2983 0, 375, 377, 0, 0, 0, 0, 379, 381, 383,
2984 385, 0, 0, 0, 0, 0, 0, 0, 387, 0,
2985 0, 0, 0, 0, 0, 0, 0, 0, 0, 389,
2986 391, 393, 395, 397, 399, 0, 401, 0, 0, 403,
2987 405, 407, 409, 411, 413, 415, 417, 419, 421, 423,
2988 425, 427, 429, 431, 433, 435, 0, 0, 0, 0,
2989 0, 0, 0, 0, 437, 439, 441, 443, 0, 445,
2990 447, 0, 0, 0, 449, 0, 0, 451, 453, 455,
2991 457, 0, 0, 0, 459, 0, 0, 0, 0, 0,
2992 0, 0, 0, 0, 0, 0, 0, 0, 0, 461,
2993 463, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2994 0, 0, 465, 467, 0, 0, 0, 0, 469, 471,
2995 473, 475, 0, 0, 0, 0, 0, 0, 0, 477,
2996 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2997 479, 481, 483, 485, 487, 489, 0, 491, 0, 0,
2998 493, 495, 497, 499, 501, 503, 505, 507, 509, 511,
2999 513, 515, 517, 519, 521, 523, 525, 0, 0, 0,
3000 0, 0, 0, 0, 0, 527, 529, 531, 533, 0,
3001 535, 537, 0, 0, 0, 539, 0, 0, 541, 543,
3002 545, 547, 0, 0, 0, 549, 0, 0, 0, 0,
3003 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3004 551, 553, 0, 0, 0, 0, 0, 0, 0, 0,
3005 0, 0, 0, 555, 557, 0, 0, 0, 0, 559,
3006 561, 563, 565, 0, 0, 0, 0, 0, 0, 0,
3007 567, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3008 0, 569, 571, 573, 575, 577, 579, 0, 581, 0,
3009 0, 583, 585, 587, 589, 591, 593, 595, 597, 599,
3010 601, 603, 605, 607, 609, 611, 613, 615, 0, 0,
3011 0, 0, 0, 0, 0, 0, 617, 619, 621, 623,
3012 0, 625, 627, 0, 0, 0, 629, 0, 0, 631,
3013 633, 635, 637, 0, 0, 0, 639, 0, 0, 0,
3014 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3015 0, 641, 643, 0, 0, 0, 0, 0, 0, 0,
3016 0, 0, 0, 0, 645, 647, 0, 0, 0, 0,
3017 649, 651, 653, 655, 0, 0, 0, 0, 0, 0,
3018 0, 657, 0, 0, 0, 0, 0, 0, 0, 0,
3019 0, 0, 659, 661, 663, 665, 667, 669, 0, 671,
3020 0, 0, 673, 675, 677, 679, 681, 683, 685, 687,
3021 689, 691, 693, 695, 697, 699, 701, 703, 705, 0,
3022 0, 0, 0, 0, 0, 0, 0, 708, 711, 714,
3023 717, 0, 720, 723, 0, 0, 0, 726, 0, 0,
3024 729, 732, 735, 738, 0, 0, 0, 741, 0, 0,
3025 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3026 0, 0, 744, 747, 0, 0, 0, 0, 0, 0,
3027 0, 0, 0, 0, 0, 750, 753, 0, 0, 0,
3028 0, 756, 759, 762, 765, 0, 0, 0, 0, 0,
3029 0, 0, 768, 0, 0, 0, 0, 0, 0, 0,
3030 0, 0, 0, 771, 774, 777, 780, 783, 786, 0,
3031 789, 0, 0, 792, 795, 798, 801, 804, 807, 810,
3032 813, 816, 819, 822, 825, 828, 831, 834, 837, 842,
3033 0, 840, 0, 0, 0, 0, 0, 0, 844, 846,
3034 848, 850, 0, 852, 854, 0, 0, 0, 856, 0,
3035 0, 858, 860, 862, 864, 0, 0, 0, 866, 0,
3036 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3037 0, 0, 0, 868, 870, 0, 0, 0, 0, 0,
3038 0, 0, 0, 0, 0, 0, 872, 874, 0, 0,
3039 0, 0, 876, 878, 880, 882, 0, 0, 0, 0,
3040 0, 0, 0, 884, 0, 0, 0, 0, 0, 0,
3041 0, 0, 0, 0, 886, 888, 890, 892, 894, 896,
3042 0, 898, 0, 0, 900, 902, 904, 906, 908, 910,
3043 912, 914, 916, 918, 920, 922, 924, 926, 928, 930,
3044 932, 0, 0, 0, 0, 0, 0, 0, 0, 934,
3045 936, 938, 940, 0, 942, 944, 0, 0, 0, 946,
3046 0, 0, 948, 950, 952, 954, 0, 0, 0, 956,
3047 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3048 0, 0, 0, 0, 958, 960, 0, 0, 0, 0,
3049 0, 0, 0, 0, 0, 0, 0, 962, 964, 0,
3050 0, 0, 0, 966, 968, 970, 972, 0, 0, 0,
3051 0, 0, 0, 0, 974, 0, 0, 0, 0, 0,
3052 0, 0, 0, 0, 0, 976, 978, 980, 982, 984,
3053 986, 0, 988, 0, 0, 990, 992, 994, 996, 998,
3054 1000, 1002, 1004, 1006, 1008, 1010, 1012, 1014, 1016, 1018,
3055 1020, 1022, 0, 0, 0, 0, 0, 0, 0, 0,
3056 1024, 1026, 1028, 1030, 0, 1032, 1034, 0, 0, 0,
3057 1036, 0, 0, 1038, 1040, 1042, 1044, 0, 0, 0,
3058 1046, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3059 0, 0, 0, 0, 0, 1048, 1050, 0, 0, 0,
3060 0, 0, 0, 0, 0, 0, 0, 0, 1052, 1054,
3061 0, 0, 0, 0, 1056, 1058, 1060, 1062, 0, 0,
3062 0, 0, 0, 0, 0, 1064, 0, 0, 0, 0,
3063 0, 0, 0, 0, 0, 0, 1066, 1068, 1070, 1072,
3064 1074, 1076, 0, 1078, 0, 0, 1080, 1082, 1084, 1086,
3065 1088, 1090, 1092, 1094, 1096, 1098, 1100, 1102, 1104, 1106,
3066 1108, 1110, 1112, 0, 0, 0, 0, 0, 0, 0,
3067 0, 1114, 1116, 1118, 1120, 0, 1122, 1124, 0, 0,
3068 0, 1126, 0, 0, 1128, 1130, 1132, 1134, 0, 0,
3069 0, 1136, 0, 0, 0, 0, 0, 0, 0, 0,
3070 0, 0, 0, 0, 0, 0, 1138, 1140, 0, 0,
3071 0, 0, 0, 0, 0, 0, 0, 0, 0, 1142,
3072 1144, 0, 0, 0, 0, 1146, 1148, 1150, 1152, 0,
3073 0, 0, 0, 0, 0, 0, 1154, 0, 0, 0,
3074 0, 0, 0, 0, 0, 0, 0, 1156, 1158, 1160,
3075 1162, 1164, 1166, 0, 1168, 0, 0, 1170, 1172, 1174,
3076 1176, 1178, 1180, 1182, 1184, 1186, 1188, 1190, 1192, 1194,
3077 1196, 1198, 1200, 1202, 0, 0, 0, 0, 0, 0,
3078 0, 0, 1204, 1206, 1208, 1210, 0, 1212, 1214, 0,
3079 0, 0, 1216, 0, 0, 1218, 1220, 1222, 1224, 0,
3080 0, 0, 1226, 0, 0, 0, 0, 0, 0, 0,
3081 0, 0, 0, 0, 0, 0, 0, 1228, 1230, 0,
3082 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3083 1232, 1234, 0, 0, 0, 0, 1236, 1238, 1240, 1242,
3084 0, 0, 0, 0, 0, 0, 0, 1244, 0, 0,
3085 0, 0, 0, 0, 0, 0, 0, 0, 1246, 1248,
3086 1250, 1252, 1254, 1256, 0, 1258, 0, 0, 1260, 1262,
3087 1264, 1266, 1268, 1270, 1272, 1274, 1276, 1278, 1280, 1282,
3088 1284, 1286, 1288, 1290, 1292, 0, 0, 0, 0, 0,
3089 0, 0, 0, 1294, 1296, 1298, 1300, 0, 1302, 1304,
3090 0, 0, 0, 1306, 0, 0, 1308, 1310, 1312, 1314,
3091 0, 0, 0, 1316, 0, 0, 0, 0, 0, 0,
3092 0, 0, 0, 0, 0, 0, 0, 0, 1318, 1320,
3093 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3094 0, 1322, 1324, 0, 0, 0, 0, 1326, 1328, 1330,
3095 1332, 0, 0, 0, 0, 0, 0, 0, 1334, 0,
3096 0, 0, 0, 0, 0, 0, 0, 0, 0, 1336,
3097 1338, 1340, 1342, 1344, 1346, 0, 1348, 0, 0, 1350,
3098 1352, 1354, 1356, 1358, 1360, 1362, 1364, 1366, 1368, 1370,
3099 1372, 1374, 1376, 1378, 1380, 1382, 0, 0, 0, 0,
3100 0, 0, 0, 0, 1384, 1386, 1388, 1390, 0, 1392,
3101 1394, 0, 0, 0, 1396, 0, 0, 1398, 1400, 1402,
3102 1404, 0, 0, 0, 1406, 0, 0, 0, 0, 0,
3103 0, 0, 0, 0, 0, 0, 0, 0, 0, 1408,
3104 1410, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3105 0, 0, 1412, 1414, 0, 0, 0, 0, 1416, 1418,
3106 1420, 1422, 0, 0, 0, 0, 0, 0, 0, 1424,
3107 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3108 1426, 1428, 1430, 1432, 1434, 1436, 0, 1438, 0, 0,
3109 1440, 1442, 1444, 1446, 1448, 1450, 1452, 1454, 1456, 1458,
3110 1460, 1462, 1464, 1466, 1468, 1470, 1472, 0, 0, 0,
3111 0, 0, 0, 0, 0, 1474, 1476, 1478, 1480, 0,
3112 1482, 1484, 0, 0, 0, 1486, 0, 0, 1488, 1490,
3113 1492, 1494, 0, 0, 0, 1496, 0, 0, 0, 0,
3114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3115 1498, 1500, 0, 0, 0, 0, 0, 0, 0, 0,
3116 0, 0, 0, 1502, 1504, 0, 0, 0, 0, 1506,
3117 1508, 1510, 1512, 0, 0, 0, 0, 0, 0, 0,
3118 1514, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3119 0, 1516, 1518, 1520, 1522, 1524, 1526, 0, 1528, 0,
3120 0, 1530, 1532, 1534, 1536, 1538, 1540, 1542, 1544, 1546,
3121 1548, 1550, 1552, 1554, 1556, 1558, 1560, 1562, 0, 0,
3122 0, 0, 0, 0, 0, 0, 1564, 1566, 1568, 1570,
3123 0, 1572, 1574, 0, 0, 0, 1576, 0, 0, 1578,
3124 1580, 1582, 1584, 0, 0, 0, 1586, 0, 0, 0,
3125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3126 0, 1588, 1590, 0, 0, 0, 0, 0, 0, 0,
3127 0, 0, 0, 0, 1592, 1594, 0, 0, 0, 0,
3128 1596, 1598, 1600, 1602, 0, 0, 0, 0, 0, 0,
3129 0, 1604, 0, 0, 0, 0, 0, 0, 0, 0,
3130 0, 0, 1606, 1608, 1610, 1612, 1614, 1616, 0, 1618,
3131 0, 0, 1620, 1622, 1624, 1626, 1628, 1630, 1632, 1634,
3132 1636, 1638, 1640, 1642, 1644, 1646, 1648, 1650, 1652, 0,
3133 0, 0, 0, 0, 0, 0, 0, 1654, 1656, 1658,
3134 1660, 0, 1662, 1664, 0, 0, 0, 1666, 0, 0,
3135 1668, 1670, 1672, 1674, 0, 0, 0, 1676, 0, 0,
3136 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3137 0, 0, 1678, 1680, 0, 0, 0, 0, 0, 0,
3138 0, 0, 0, 0, 0, 1682, 1684, 0, 0, 0,
3139 0, 1686, 1688, 1690, 1692, 0, 0, 0, 0, 0,
3140 0, 0, 1694, 0, 0, 0, 0, 0, 0, 0,
3141 0, 0, 0, 1696, 1698, 1700, 1702, 1704, 1706, 0,
3142 1708, 0, 0, 1710, 1712, 1714, 1716, 1718, 1720, 1722,
3143 1724, 1726, 1728, 1730, 1732, 1734, 1736, 1738, 1740, 1742,
3144 0, 0, 0, 0, 0, 0, 0, 0, 1744, 1746,
3145 1748, 1750, 0, 1752, 1754, 0, 0, 0, 1756, 0,
3146 0, 1758, 1760, 1762, 1764, 0, 0, 0, 1766, 0,
3147 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3148 0, 0, 0, 1768, 1770, 0, 0, 0, 0, 0,
3149 0, 0, 0, 0, 0, 0, 1772, 1774, 0, 0,
3150 0, 0, 1776, 1778, 1780, 1782, 0, 0, 0, 0,
3151 0, 0, 0, 1784, 0, 0, 0, 0, 0, 0,
3152 0, 0, 0, 0, 1786, 1788, 1790, 1792, 1794, 1796,
3153 0, 1798, 0, 0, 1800, 1802, 1804, 1806, 1808, 1810,
3154 1812, 1814, 1816, 1818, 1820, 1822, 1824, 1826, 1828, 1830,
3155 1832, 0, 0, 0, 0, 0, 0, 0, 0, 1834,
3156 1836, 1838, 1840, 0, 1842, 1844, 0, 0, 0, 1846,
3157 0, 0, 1848, 1850, 1852, 1854, 0, 0, 0, 1856,
3158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3159 0, 0, 0, 0, 1858, 1860, 0, 0, 0, 0,
3160 0, 0, 0, 0, 0, 0, 0, 1862, 1864, 0,
3161 0, 0, 0, 1866, 1868, 1870, 1872, 0, 0, 0,
3162 0, 0, 0, 0, 1874, 0, 0, 0, 0, 0,
3163 0, 0, 0, 0, 0, 1876, 1878, 1880, 1882, 1884,
3164 1886, 0, 1888, 0, 0, 1890, 1892, 1894, 1896, 1898,
3165 1900, 1902, 1904, 1906, 1908, 1910, 1912, 1914, 1916, 1918,
3166 1920, 1922, 0, 0, 0, 0, 0, 0, 0, 0,
3167 1924, 1926, 1928, 1930, 0, 1932, 1934, 0, 0, 0,
3168 1936, 0, 0, 1938, 1940, 1942, 1944, 0, 0, 0,
3169 1946, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3170 0, 0, 0, 0, 0, 1948, 1950, 0, 0, 0,
3171 0, 0, 0, 0, 0, 0, 0, 0, 1952, 1954,
3172 0, 0, 0, 0, 1956, 1958, 1960, 1962, 0, 0,
3173 0, 0, 0, 0, 0, 1964, 0, 0, 0, 0,
3174 0, 0, 0, 0, 0, 0, 1966, 1968, 1970, 1972,
3175 1974, 1976, 0, 1978, 0, 0, 1980, 1982, 1984, 1986,
3176 1988, 1990, 1992, 1994, 1996, 1998, 2000, 2002, 2004, 2006,
3177 2008, 2010, 2012, 0, 0, 0, 0, 0, 0, 0,
3178 0, 2014, 2016, 2018, 2020, 0, 2022, 2024, 0, 0,
3179 0, 2026, 0, 0, 2028, 2030, 2032, 2034, 0, 0,
3180 0, 2036, 0, 0, 0, 0, 0, 0, 0, 0,
3181 0, 0, 0, 0, 0, 0, 2038, 2040, 0, 0,
3182 0, 0, 0, 0, 0, 0, 0, 0, 0, 2042,
3183 2044, 0, 0, 0, 0, 2046, 2048, 2050, 2052, 0,
3184 0, 0, 0, 0, 0, 0, 2054, 0, 0, 0,
3185 0, 0, 0, 0, 0, 0, 0, 2056, 2058, 2060,
3186 2062, 2064, 2066, 0, 2068, 0, 0, 2070, 2072, 2074,
3187 2076, 2078, 2080, 2082, 2084, 2086, 2088, 2090, 2092, 2094,
3188 2096, 2098, 2100, 2102, 0, 0, 0, 0, 0, 0,
3189 0, 0, 2104, 2106, 2108, 2110, 0, 2112, 2114, 0,
3190 0, 0, 2116, 0, 0, 2118, 2120, 2122, 2124, 0,
3191 0, 0, 2126, 0, 0, 0, 0, 0, 0, 0,
3192 0, 0, 0, 0, 0, 0, 0, 2128, 2130, 0,
3193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3194 2132, 2134, 0, 0, 0, 0, 2136, 2138, 2140, 2142,
3195 0, 0, 0, 0, 0, 0, 0, 2144, 0, 0,
3196 0, 0, 0, 0, 0, 0, 0, 0, 2146, 2148,
3197 2150, 2152, 2154, 2156, 0, 2158, 0, 0, 2160, 2162,
3198 2164, 2166, 2168, 2170, 2172, 2174, 2176, 2178, 2180, 2182,
3199 2184, 2186, 2188, 2190, 2192, 0, 0, 0, 0, 0,
3200 0, 0, 0, 2194, 2196, 2198, 2200, 0, 2202, 2204,
3201 0, 0, 0, 2206, 0, 0, 2208, 2210, 2212, 2214,
3202 0, 0, 0, 2216, 0, 0, 0, 0, 0, 0,
3203 0, 0, 0, 0, 0, 0, 0, 0, 2218, 2220,
3204 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3205 0, 2222, 2224, 0, 0, 0, 0, 2226, 2228, 2230,
3206 2232, 0, 0, 0, 0, 0, 0, 0, 2234, 0,
3207 0, 0, 0, 0, 0, 0, 0, 0, 0, 2236,
3208 2238, 2240, 2242, 2244, 2246, 0, 2248, 0, 0, 2250,
3209 2252, 2254, 2256, 2258, 2260, 2262, 2264, 2266, 2268, 2270,
3210 2272, 2274, 2276, 2278, 2280, 2282, 0, 0, 0, 0,
3211 0, 0, 0, 0, 2284, 2286, 2288, 2290, 0, 2292,
3212 2294, 0, 0, 0, 2296, 0, 0, 2298, 2300, 2302,
3213 2304, 0, 0, 0, 2306, 0, 0, 0, 0, 0,
3214 0, 0, 0, 0, 0, 0, 0, 0, 0, 2308,
3215 2310, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3216 0, 0, 2312, 2314, 0, 0, 0, 0, 2316, 2318,
3217 2320, 2322, 0, 0, 0, 0, 0, 0, 0, 2324,
3218 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3219 2326, 2328, 2330, 2332, 2334, 2336, 0, 2338, 0, 0,
3220 2340, 2342, 2344, 2346, 2348, 2350, 2352, 2354, 2356, 2358,
3221 2360, 2362, 2364, 2366, 2368, 2370, 2372, 0, 0, 0,
3222 0, 0, 0, 0, 0, 2374, 2376, 2378, 2380, 0,
3223 2382, 2384, 0, 0, 0, 2386, 0, 0, 2388, 2390,
3224 2392, 2394, 0, 0, 0, 2396, 0, 0, 0, 0,
3225 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3226 2398, 2400, 0, 0, 0, 0, 0, 0, 0, 0,
3227 0, 0, 0, 2402, 2404, 0, 0, 0, 0, 2406,
3228 2408, 2410, 2412, 0, 0, 0, 0, 0, 0, 0,
3229 2414, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3230 0, 2416, 2418, 2420, 2422, 2424, 2426, 0, 2428, 0,
3231 0, 2430, 2432, 2434, 2436, 2438, 2440, 2442, 2444, 2446,
3232 2448, 2450, 2452, 2454, 2456, 2458, 2460, 2462, 0, 0,
3233 0, 0, 0, 0, 0, 0, 2464, 2466, 2468, 2470,
3234 0, 2472, 2474, 0, 0, 0, 2476, 0, 0, 2478,
3235 2480, 2482, 2484, 0, 0, 0, 2486, 0, 0, 0,
3236 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3237 0, 2488, 2490, 0, 0, 0, 0, 0, 0, 0,
3238 0, 0, 0, 0, 2492, 2494, 0, 0, 0, 0,
3239 2496, 2498, 2500, 2502, 0, 0, 0, 0, 0, 0,
3240 0, 2504, 0, 0, 0, 0, 0, 0, 0, 0,
3241 0, 0, 2506, 2508, 2510, 2512, 2514, 2516, 0, 2518,
3242 0, 0, 2520, 2522, 2524, 2526, 2528, 2530, 2532, 2534,
3243 2536, 2538, 2540, 2542, 2544, 2546, 2548, 2550, 2552, 0,
3244 0, 0, 0, 0, 0, 0, 0, 2554, 2556, 2558,
3245 2560, 0, 2562, 2564, 0, 0, 0, 2566, 0, 0,
3246 2568, 2570, 2572, 2574, 0, 0, 0, 2576, 0, 0,
3247 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3248 0, 0, 2578, 2580, 0, 0, 0, 0, 0, 0,
3249 0, 0, 0, 0, 0, 2582, 2584, 0, 0, 0,
3250 0, 2586, 2588, 2590, 2592, 0, 0, 0, 0, 0,
3251 0, 0, 2594, 0, 0, 0, 0, 0, 0, 0,
3252 0, 0, 0, 2596, 2598, 2600, 2602, 2604, 2606, 0,
3253 2608, 0, 0, 2610, 2612, 2614, 2616, 2618, 2620, 2622,
3254 2624, 2626, 2628, 2630, 2632, 2634, 2636, 2638, 2640, 2642,
3255 0, 0, 0, 0, 0, 0, 0, 0, 2644, 2646,
3256 2648, 2650, 0, 2652, 2654, 0, 0, 0, 2656, 0,
3257 0, 2658, 2660, 2662, 2664, 0, 0, 0, 2666, 0,
3258 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3259 0, 0, 0, 2668, 2670, 0, 0, 0, 0, 0,
3260 0, 0, 0, 0, 0, 0, 2672, 2674, 0, 0,
3261 0, 0, 2676, 2678, 2680, 2682, 0, 0, 0, 0,
3262 0, 0, 0, 2684, 0, 0, 0, 0, 0, 0,
3263 0, 0, 0, 0, 2686, 2688, 2690, 2692, 2694, 2696,
3264 0, 2698, 0, 0, 2700, 2702, 2704, 2706, 2708, 2710,
3265 2712, 2714, 2716, 2718, 2720, 2722, 2724, 2726, 2728, 2730,
3266 2732, 0, 0, 0, 0, 0, 0, 0, 0, 2734,
3267 2736, 2738, 2740, 0, 2742, 2744, 0, 0, 0, 2746,
3268 0, 0, 2748, 2750, 2752, 2754, 0, 0, 0, 2756,
3269 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3270 0, 0, 0, 0, 2758, 2760, 0, 0, 0, 0,
3271 0, 0, 0, 0, 0, 0, 0, 2762, 2764, 0,
3272 0, 0, 0, 2766, 2768, 2770, 2772, 0, 0, 0,
3273 0, 0, 0, 0, 2774, 0, 0, 0, 0, 0,
3274 0, 0, 0, 0, 0, 2776, 2778, 2780, 2782, 2784,
3275 2786, 0, 2788, 0, 0, 2790, 2792, 2794, 2796, 2798,
3276 2800, 2802, 2804, 2806, 2808, 2810, 2812, 2814, 2816, 2818,
3277 2820, 2822, 0, 0, 0, 0, 0, 0, 0, 0,
3278 2824, 2826, 2828, 2830, 0, 2832, 2834, 0, 0, 0,
3279 2836, 0, 0, 2838, 2840, 2842, 2844, 0, 0, 0,
3280 2846, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3281 0, 0, 0, 0, 0, 2848, 2850, 0, 0, 0,
3282 0, 0, 0, 0, 0, 0, 0, 0, 2852, 2854,
3283 0, 0, 0, 0, 2856, 2858, 2860, 2862, 0, 0,
3284 0, 0, 0, 0, 0, 2864, 0, 0, 0, 0,
3285 0, 0, 0, 0, 0, 0, 2866, 2868, 2870, 2872,
3286 2874, 2876, 0, 2878, 0, 0, 2880, 2882, 2884, 2886,
3287 2888, 2890, 2892, 2894, 2896, 2898, 2900, 2902, 2904, 2906,
3288 2908, 2910, 2912, 0, 0, 0, 0, 0, 0, 0,
3289 0, 2914, 2916, 2918, 2920, 0, 2922, 2924, 0, 0,
3290 0, 2926, 0, 0, 2928, 2930, 2932, 2934, 0, 0,
3291 0, 2936, 0, 0, 0, 0, 0, 0, 0, 0,
3292 0, 0, 0, 0, 0, 0, 2938, 2940, 0, 0,
3293 0, 0, 0, 0, 0, 0, 0, 0, 0, 2942,
3294 2944, 0, 0, 0, 0, 2946, 2948, 2950, 2952, 0,
3295 0, 0, 0, 0, 0, 0, 2954, 0, 0, 0,
3296 0, 0, 0, 0, 0, 0, 0, 2956, 2958, 2960,
3297 2962, 2964, 2966, 0, 2968, 0, 0, 2970, 2972, 2974,
3298 2976, 2978, 2980, 2982, 2984, 2986, 2988, 2990, 2992, 2994,
3299 2996, 2998, 3000, 3002, 0, 0, 0, 0, 0, 0,
3300 0, 0, 3004, 3006, 3008, 3010, 0, 3012, 3014, 0,
3301 0, 0, 3016, 0, 0, 3018, 3020, 3022, 3024, 0,
3302 0, 0, 3026, 0, 0, 0, 0, 0, 0, 0,
3303 0, 0, 0, 0, 0, 0, 0, 3028, 3030, 0,
3304 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3305 3032, 3034, 0, 0, 0, 0, 3036, 3038, 3040, 3042,
3306 0, 0, 0, 0, 0, 0, 0, 3044, 0, 0,
3307 0, 0, 0, 0, 0, 0, 0, 0, 3046, 3048,
3308 3050, 3052, 3054, 3056, 0, 3058, 0, 0, 3060, 3062,
3309 3064, 3066, 3068, 3070, 3072, 3074, 3076, 3078, 3080, 3082,
3310 3084, 3086, 3088, 3090, 3092, 0, 0, 0, 0, 0,
3311 0, 0, 0, 3094, 3096, 3098, 3100, 0, 3102, 3104,
3312 0, 0, 0, 3106, 0, 0, 3108, 3110, 3112, 3114,
3313 0, 0, 0, 3116, 0, 0, 0, 0, 0, 0,
3314 0, 0, 0, 0, 0, 0, 0, 0, 3118, 3120,
3315 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3316 0, 3122, 3124, 0, 0, 0, 0, 3126, 3128, 3130,
3317 3132, 0, 0, 0, 0, 0, 0, 0, 3134, 0,
3318 0, 0, 0, 0, 0, 0, 0, 0, 0, 3136,
3319 3138, 3140, 3142, 3144, 3146, 0, 3148, 0, 0, 3150,
3320 3152, 3154, 3156, 3158, 3160, 3162, 3164, 3166, 3168, 3170,
3321 3172, 3174, 3176, 3178, 3180, 3182, 0, 0, 0, 0,
3322 0, 0, 0, 0, 3184, 3186, 3188, 3190, 0, 3192,
3323 3194, 0, 0, 0, 3196, 0, 0, 3198, 3200, 3202,
3324 3204, 0, 0, 0, 3206, 0, 0, 0, 0, 0,
3325 0, 0, 0, 0, 0, 0, 0, 0, 0, 3208,
3326 3210, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3327 0, 0, 3212, 3214, 0, 0, 0, 0, 3216, 3218,
3328 3220, 3222, 0, 0, 0, 0, 0, 0, 0, 3224,
3329 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3330 3226, 3228, 3230, 3232, 3234, 3236, 0, 3238, 0, 0,
3331 3240, 3242, 3244, 3246, 3248, 3250, 3252, 3254, 3256, 3258,
3332 3260, 3262, 3264, 3266, 3268, 3270, 3272, 0, 0, 0,
3333 0, 0, 0, 0, 0, 3274, 3276, 3278, 3280, 0,
3334 3282, 3284, 0, 0, 0, 3286, 0, 0, 3288, 3290,
3335 3292, 3294, 0, 0, 0, 3296, 0, 0, 0, 0,
3336 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3337 3298, 3300, 0, 0, 0, 0, 0, 0, 0, 0,
3338 0, 0, 0, 3302, 3304, 0, 0, 0, 0, 3306,
3339 3308, 3310, 3312, 0, 0, 0, 0, 0, 0, 0,
3340 3314, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3341 0, 3316, 3318, 3320, 3322, 3324, 3326, 0, 3328, 0,
3342 0, 3330, 3332, 3334, 3336, 3338, 3340, 3342, 3344, 3346,
3343 3348, 3350, 3352, 3354, 3356, 3358, 3360, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3536 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3537 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3538 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3539 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3540 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3541 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3542 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3543 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3544 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3545 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3547 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3548 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3549 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3550 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3551 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3552 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3553 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3554 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3555 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3556 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3559 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3560 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3561 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3562 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3563 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3564 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3565 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3566 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3567 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3568 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3569 0, 3392, 0, 0, 0, 0, 0, 0, 0, 0,
3570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3574 /* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
3575 0, pointed into by YYCONFLP. */
3576 static const short yyconfl
[] =
3578 0, 383, 0, 383, 0, 383, 0, 383, 0, 374,
3579 0, 374, 0, 397, 0, 458, 0, 458, 0, 614,
3580 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3581 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3582 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3583 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3584 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3585 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3586 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3587 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3588 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3589 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3590 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3591 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3592 0, 614, 0, 614, 0, 614, 0, 614, 0, 614,
3593 0, 614, 0, 614, 0, 383, 0, 383, 0, 383,
3594 0, 383, 0, 397, 0, 44, 0, 44, 0, 44,
3595 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3596 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3597 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3598 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3599 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3600 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3601 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3602 0, 44, 0, 44, 0, 44, 0, 44, 0, 44,
3603 0, 44, 0, 44, 0, 53, 0, 53, 0, 53,
3604 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3605 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3606 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3607 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3608 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3609 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3610 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3611 0, 53, 0, 53, 0, 53, 0, 53, 0, 53,
3612 0, 53, 0, 53, 0, 54, 0, 54, 0, 54,
3613 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3614 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3615 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3616 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3617 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3618 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3619 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3620 0, 54, 0, 54, 0, 54, 0, 54, 0, 54,
3621 0, 54, 0, 54, 0, 55, 0, 55, 0, 55,
3622 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3623 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3624 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3625 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3626 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3627 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3628 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3629 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
3630 0, 55, 0, 55, 0, 56, 0, 56, 0, 56,
3631 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3632 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3633 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3634 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3635 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3636 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3637 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3638 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
3639 0, 56, 0, 56, 0, 615, 0, 615, 0, 615,
3640 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3641 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3642 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3643 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3644 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3645 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3646 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3647 0, 615, 0, 615, 0, 615, 0, 615, 0, 615,
3648 0, 615, 0, 615, 0, 576, 614, 0, 576, 614,
3649 0, 576, 614, 0, 576, 614, 0, 576, 614, 0,
3650 576, 614, 0, 576, 614, 0, 576, 614, 0, 576,
3651 614, 0, 576, 614, 0, 576, 614, 0, 576, 614,
3652 0, 576, 614, 0, 576, 614, 0, 576, 614, 0,
3653 576, 614, 0, 576, 614, 0, 576, 614, 0, 576,
3654 614, 0, 576, 614, 0, 576, 614, 0, 576, 614,
3655 0, 576, 614, 0, 576, 614, 0, 576, 614, 0,
3656 576, 614, 0, 576, 614, 0, 576, 614, 0, 576,
3657 614, 0, 576, 614, 0, 576, 614, 0, 576, 614,
3658 0, 576, 614, 0, 576, 614, 0, 576, 614, 0,
3659 576, 614, 0, 576, 614, 0, 576, 614, 0, 576,
3660 614, 0, 576, 614, 0, 576, 614, 0, 576, 614,
3661 0, 576, 614, 0, 576, 614, 0, 576, 614, 0,
3662 614, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3663 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3664 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3665 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3666 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3667 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3668 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3669 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3670 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
3671 63, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3672 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3673 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3674 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3675 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3676 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3677 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3678 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3679 107, 0, 107, 0, 107, 0, 107, 0, 107, 0,
3680 107, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3681 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3682 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3683 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3684 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3685 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3686 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3687 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3688 106, 0, 106, 0, 106, 0, 106, 0, 106, 0,
3689 106, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3690 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3691 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3692 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3693 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3694 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3695 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3696 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3697 104, 0, 104, 0, 104, 0, 104, 0, 104, 0,
3698 104, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3699 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3700 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3701 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3702 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3703 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3704 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3705 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3706 105, 0, 105, 0, 105, 0, 105, 0, 105, 0,
3707 105, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3708 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3709 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3710 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3711 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3712 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3713 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3714 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3715 125, 0, 125, 0, 125, 0, 125, 0, 125, 0,
3716 125, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3717 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3718 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3719 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3720 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3721 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3722 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3723 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3724 126, 0, 126, 0, 126, 0, 126, 0, 126, 0,
3725 126, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3726 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3727 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3728 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3729 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3730 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3731 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3732 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3733 127, 0, 127, 0, 127, 0, 127, 0, 127, 0,
3734 127, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3735 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3736 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3737 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3738 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3739 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3740 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3741 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3742 128, 0, 128, 0, 128, 0, 128, 0, 128, 0,
3743 128, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3744 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3745 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3746 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3747 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3748 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3749 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3750 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3751 129, 0, 129, 0, 129, 0, 129, 0, 129, 0,
3752 129, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3753 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3754 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3755 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3756 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3757 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3758 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3759 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3760 130, 0, 130, 0, 130, 0, 130, 0, 130, 0,
3761 130, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3762 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3763 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3764 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3765 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3766 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3767 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3768 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3769 159, 0, 159, 0, 159, 0, 159, 0, 159, 0,
3770 159, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3771 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3772 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3773 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3774 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3775 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3776 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3777 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3778 584, 0, 584, 0, 584, 0, 584, 0, 584, 0,
3779 584, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3780 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3781 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3782 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3783 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3784 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3785 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3786 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3787 583, 0, 583, 0, 583, 0, 583, 0, 583, 0,
3788 583, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3789 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3790 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3791 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3792 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3793 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3794 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3795 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3796 581, 0, 581, 0, 581, 0, 581, 0, 581, 0,
3797 581, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3798 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3799 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3800 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3801 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3802 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3803 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3804 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3805 579, 0, 579, 0, 579, 0, 579, 0, 579, 0,
3806 579, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3807 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3808 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3809 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3810 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3811 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3812 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3813 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3814 580, 0, 580, 0, 580, 0, 580, 0, 580, 0,
3815 580, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3816 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3817 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3818 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3819 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3820 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3821 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3822 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3823 582, 0, 582, 0, 582, 0, 582, 0, 582, 0,
3824 582, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3825 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3826 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3827 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3828 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3829 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3830 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3831 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3832 578, 0, 578, 0, 578, 0, 578, 0, 578, 0,
3833 578, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3834 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3835 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3836 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3837 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3838 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3839 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3840 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3841 577, 0, 577, 0, 577, 0, 577, 0, 577, 0,
3842 577, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3843 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3844 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3845 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3846 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3847 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3848 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3849 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3850 585, 0, 585, 0, 585, 0, 585, 0, 585, 0,
3851 585, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3852 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3853 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3854 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3855 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3856 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3857 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3858 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3859 143, 0, 143, 0, 143, 0, 143, 0, 143, 0,
3860 143, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3861 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3862 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3863 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3864 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3865 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3866 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3867 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3868 613, 0, 613, 0, 613, 0, 613, 0, 613, 0,
3869 613, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3870 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3871 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3872 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3873 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3874 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3875 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3876 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3877 611, 0, 611, 0, 611, 0, 611, 0, 611, 0,
3878 611, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3879 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3880 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3881 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3882 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3883 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3884 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3885 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3886 610, 0, 610, 0, 610, 0, 610, 0, 610, 0,
3887 610, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3888 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3889 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3890 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3891 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3892 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3893 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3894 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3895 612, 0, 612, 0, 612, 0, 612, 0, 612, 0,
3896 612, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3897 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3898 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3899 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3900 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3901 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3902 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3903 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3904 609, 0, 609, 0, 609, 0, 609, 0, 609, 0,
3905 609, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3906 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3907 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3908 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3909 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3910 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3911 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3912 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3913 608, 0, 608, 0, 608, 0, 608, 0, 608, 0,
3914 608, 0, 503, 0, 503, 0, 451, 0, 451, 0,
3915 452, 0, 489, 0, 489, 0, 489, 0, 43, 0,
3916 615, 0, 383, 0, 564, 0, 564, 0, 564, 0,
3917 615, 0, 334, 0, 485, 0
3920 /* Error token number */
3927 #define yynerrs (yystackp->yyerrcnt)
3929 #define yychar (yystackp->yyrawchar)
3931 #define yylval (yystackp->yyval)
3933 #define yylloc (yystackp->yyloc)
3934 #define psi_parser_proc_nerrs yynerrs
3935 #define psi_parser_proc_char yychar
3936 #define psi_parser_proc_lval yylval
3937 #define psi_parser_proc_lloc yylloc
3939 static const int YYEOF
= 0;
3940 static const int YYEMPTY
= -2;
3942 typedef enum { yyok
, yyaccept
, yyabort
, yyerr
} YYRESULTTAG
;
3944 #define YYCHK(YYE) \
3946 YYRESULTTAG yychk_flag = YYE; \
3947 if (yychk_flag != yyok) \
3948 return yychk_flag; \
3954 # define YYFPRINTF fprintf
3957 /* This macro is provided for backward compatibility. */
3958 #ifndef YY_LOCATION_PRINT
3959 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3963 # define YYDPRINTF(Args) \
3970 /*-----------------------------------.
3971 | Print this symbol's value on YYO. |
3972 `-----------------------------------*/
3975 yy_symbol_value_print (FILE *yyo
, int yytype
, YYSTYPE
const * const yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
3977 FILE *yyoutput
= yyo
;
3988 /*---------------------------.
3989 | Print this symbol on YYO. |
3990 `---------------------------*/
3993 yy_symbol_print (FILE *yyo
, int yytype
, YYSTYPE
const * const yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
3995 YYFPRINTF (yyo
, "%s %s (",
3996 yytype
< YYNTOKENS
? "token" : "nterm", yytname
[yytype
]);
3998 yy_symbol_value_print (yyo
, yytype
, yyvaluep
, P
, tokens
, index
);
3999 YYFPRINTF (yyo
, ")");
4002 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
4006 YYFPRINTF (stderr, "%s ", Title); \
4007 yy_symbol_print (stderr, Type, Value, P, tokens, index); \
4008 YYFPRINTF (stderr, "\n"); \
4012 /* Nonzero means print parse trace. It is left uninitialized so that
4013 multiple parsers can coexist. */
4017 static void yypstack (struct yyGLRStack
* yystackp
, size_t yyk
)
4018 YY_ATTRIBUTE_UNUSED
;
4019 static void yypdumpstack (struct yyGLRStack
* yystackp
)
4020 YY_ATTRIBUTE_UNUSED
;
4022 #else /* !YYDEBUG */
4024 # define YYDPRINTF(Args)
4025 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
4027 #endif /* !YYDEBUG */
4029 /* YYINITDEPTH -- initial size of the parser's stacks. */
4031 # define YYINITDEPTH 200
4034 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
4035 if the built-in stack extension method is used).
4037 Do not make this value too large; the results are undefined if
4038 SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem)
4039 evaluated with infinite-precision integer arithmetic. */
4042 # define YYMAXDEPTH 10000
4045 /* Minimum number of free items on the stack allowed after an
4046 allocation. This is to allow allocation and initialization
4047 to be completed by functions that call yyexpandGLRStack before the
4048 stack is expanded, thus insuring that all necessary pointers get
4049 properly redirected to new data. */
4050 #define YYHEADROOM 2
4052 #ifndef YYSTACKEXPANDABLE
4053 # define YYSTACKEXPANDABLE 1
4056 #if YYSTACKEXPANDABLE
4057 # define YY_RESERVE_GLRSTACK(Yystack) \
4059 if (Yystack->yyspaceLeft < YYHEADROOM) \
4060 yyexpandGLRStack (Yystack); \
4063 # define YY_RESERVE_GLRSTACK(Yystack) \
4065 if (Yystack->yyspaceLeft < YYHEADROOM) \
4066 yyMemoryExhausted (Yystack); \
4074 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
4075 # define yystpcpy stpcpy
4077 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
4080 yystpcpy (char *yydest
, const char *yysrc
)
4083 const char *yys
= yysrc
;
4085 while ((*yyd
++ = *yys
++) != '\0')
4094 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
4095 quotes and backslashes, so that it's suitable for yyerror. The
4096 heuristic is that double-quoting is unnecessary unless the string
4097 contains an apostrophe, a comma, or backslash (other than
4098 backslash-backslash). YYSTR is taken from yytname. If YYRES is
4099 null, do not copy; instead, return the length of what the result
4102 yytnamerr (char *yyres
, const char *yystr
)
4107 char const *yyp
= yystr
;
4114 goto do_not_strip_quotes
;
4118 goto do_not_strip_quotes
;
4131 do_not_strip_quotes
: ;
4135 return strlen (yystr
);
4137 return (size_t) (yystpcpy (yyres
, yystr
) - yyres
);
4141 #endif /* !YYERROR_VERBOSE */
4143 /** State numbers, as in LALR(1) machine */
4144 typedef int yyStateNum
;
4146 /** Rule numbers, as in LALR(1) machine */
4147 typedef int yyRuleNum
;
4149 /** Grammar symbol */
4150 typedef int yySymbol
;
4152 /** Item references, as in LALR(1) machine */
4153 typedef short yyItemNum
;
4155 typedef struct yyGLRState yyGLRState
;
4156 typedef struct yyGLRStateSet yyGLRStateSet
;
4157 typedef struct yySemanticOption yySemanticOption
;
4158 typedef union yyGLRStackItem yyGLRStackItem
;
4159 typedef struct yyGLRStack yyGLRStack
;
4162 /** Type tag: always true. */
4164 /** Type tag for yysemantics. If true, yysval applies, otherwise
4165 * yyfirstVal applies. */
4167 /** Number of corresponding LALR(1) machine state. */
4168 yyStateNum yylrState
;
4169 /** Preceding state in this stack */
4171 /** Source position of the last token produced by my symbol */
4174 /** First in a chain of alternative reductions producing the
4175 * non-terminal corresponding to this state, threaded through
4177 yySemanticOption
* yyfirstVal
;
4178 /** Semantic value for this state. */
4183 struct yyGLRStateSet
{
4184 yyGLRState
** yystates
;
4185 /** During nondeterministic operation, yylookaheadNeeds tracks which
4186 * stacks have actually needed the current lookahead. During deterministic
4187 * operation, yylookaheadNeeds[0] is not maintained since it would merely
4188 * duplicate yychar != YYEMPTY. */
4189 yybool
* yylookaheadNeeds
;
4190 size_t yysize
, yycapacity
;
4193 struct yySemanticOption
{
4194 /** Type tag: always false. */
4196 /** Rule number for this reduction */
4198 /** The last RHS state in the list of states to be reduced. */
4199 yyGLRState
* yystate
;
4200 /** The lookahead for this reduction. */
4203 /** Next sibling in chain of options. To facilitate merging,
4204 * options are chained in decreasing order by address. */
4205 yySemanticOption
* yynext
;
4208 /** Type of the items in the GLR stack. The yyisState field
4209 * indicates which item of the union is valid. */
4210 union yyGLRStackItem
{
4212 yySemanticOption yyoption
;
4223 YYJMP_BUF yyexception_buffer
;
4224 yyGLRStackItem
* yyitems
;
4225 yyGLRStackItem
* yynextFree
;
4227 yyGLRState
* yysplitPoint
;
4228 yyGLRState
* yylastDeleted
;
4229 yyGLRStateSet yytops
;
4232 #if YYSTACKEXPANDABLE
4233 static void yyexpandGLRStack (yyGLRStack
* yystackp
);
4236 static _Noreturn
void
4237 yyFail (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char* yymsg
)
4239 if (yymsg
!= YY_NULLPTR
)
4240 yyerror (P
, tokens
, index
, yymsg
);
4241 YYLONGJMP (yystackp
->yyexception_buffer
, 1);
4244 static _Noreturn
void
4245 yyMemoryExhausted (yyGLRStack
* yystackp
)
4247 YYLONGJMP (yystackp
->yyexception_buffer
, 2);
4250 #if YYDEBUG || YYERROR_VERBOSE
4251 /** A printable representation of TOKEN. */
4252 static inline const char*
4253 yytokenName (yySymbol yytoken
)
4255 if (yytoken
== YYEMPTY
)
4258 return yytname
[yytoken
];
4262 /** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting
4263 * at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred
4264 * containing the pointer to the next state in the chain. */
4265 static void yyfillin (yyGLRStackItem
*, int, int) YY_ATTRIBUTE_UNUSED
;
4267 yyfillin (yyGLRStackItem
*yyvsp
, int yylow0
, int yylow1
)
4270 yyGLRState
*s
= yyvsp
[yylow0
].yystate
.yypred
;
4271 for (i
= yylow0
-1; i
>= yylow1
; i
-= 1)
4274 yyvsp
[i
].yystate
.yylrState
= s
->yylrState
;
4276 yyvsp
[i
].yystate
.yyresolved
= s
->yyresolved
;
4278 yyvsp
[i
].yystate
.yysemantics
.yysval
= s
->yysemantics
.yysval
;
4280 /* The effect of using yysval or yyloc (in an immediate rule) is
4282 yyvsp
[i
].yystate
.yysemantics
.yyfirstVal
= YY_NULLPTR
;
4283 s
= yyvsp
[i
].yystate
.yypred
= s
->yypred
;
4287 /* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in
4288 * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1.
4289 * For convenience, always return YYLOW1. */
4290 static inline int yyfill (yyGLRStackItem
*, int *, int, yybool
)
4291 YY_ATTRIBUTE_UNUSED
;
4293 yyfill (yyGLRStackItem
*yyvsp
, int *yylow
, int yylow1
, yybool yynormal
)
4295 if (!yynormal
&& yylow1
< *yylow
)
4297 yyfillin (yyvsp
, *yylow
, yylow1
);
4303 /** Perform user action for rule number YYN, with RHS length YYRHSLEN,
4304 * and top stack item YYVSP. YYLVALP points to place to put semantic
4305 * value ($$), and yylocp points to place for location information
4306 * (@$). Returns yyok for normal return, yyaccept for YYACCEPT,
4307 * yyerr for YYERROR, yyabort for YYABORT. */
4309 yyuserAction (yyRuleNum yyn
, int yyrhslen
, yyGLRStackItem
* yyvsp
,
4310 yyGLRStack
* yystackp
,
4311 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
4313 yybool yynormal YY_ATTRIBUTE_UNUSED
= (yybool
) (yystackp
->yysplitPoint
== YY_NULLPTR
);
4321 # define yyerrok (yystackp->yyerrState = 0)
4323 # define YYACCEPT return yyaccept
4325 # define YYABORT return yyabort
4327 # define YYERROR return yyerrok, yyerr
4328 # undef YYRECOVERING
4329 # define YYRECOVERING() (yystackp->yyerrState != 0)
4331 # define yyclearin (yychar = YYEMPTY)
4333 # define YYFILL(N) yyfill (yyvsp, &yylow, (N), yynormal)
4335 # define YYBACKUP(Token, Value) \
4336 return yyerror (P, tokens, index, YY_("syntax error: cannot back up")), \
4341 *yyvalp
= yyval_default
;
4343 *yyvalp
= yyvsp
[YYFILL (1-yyrhslen
)].yystate
.yysemantics
.yysval
;
4347 #line 429 "src/parser_proc_grammar.y" /* glr.c:821 */
4349 if ((*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
4350 psi_cpp_exp_exec((*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), P
->preproc
, PSI_DATA(P
));
4351 psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4354 #line 4355 "src/parser_proc.c" /* glr.c:821 */
4358 #line 435 "src/parser_proc_grammar.y" /* glr.c:821 */
4360 psi_parser_proc_add_const(P
, (*(struct psi_const
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4362 #line 4363 "src/parser_proc.c" /* glr.c:821 */
4366 #line 438 "src/parser_proc_grammar.y" /* glr.c:821 */
4368 psi_parser_proc_add_decl(P
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4370 #line 4371 "src/parser_proc.c" /* glr.c:821 */
4374 #line 441 "src/parser_proc_grammar.y" /* glr.c:821 */
4376 psi_parser_proc_add_decl_extvars(P
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4378 #line 4379 "src/parser_proc.c" /* glr.c:821 */
4382 #line 444 "src/parser_proc_grammar.y" /* glr.c:821 */
4384 if (P
->flags
& PSI_DEBUG
) {
4385 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
->val
);
4387 psi_decl_free(&(*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4389 #line 4390 "src/parser_proc.c" /* glr.c:821 */
4393 #line 450 "src/parser_proc_grammar.y" /* glr.c:821 */
4395 psi_parser_proc_add_typedef(P
, (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4397 #line 4398 "src/parser_proc.c" /* glr.c:821 */
4401 #line 453 "src/parser_proc_grammar.y" /* glr.c:821 */
4403 psi_parser_proc_add_struct(P
, (*(struct psi_decl_struct
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4405 #line 4406 "src/parser_proc.c" /* glr.c:821 */
4409 #line 456 "src/parser_proc_grammar.y" /* glr.c:821 */
4411 psi_parser_proc_add_union(P
, (*(struct psi_decl_union
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4413 #line 4414 "src/parser_proc.c" /* glr.c:821 */
4417 #line 459 "src/parser_proc_grammar.y" /* glr.c:821 */
4419 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4421 #line 4422 "src/parser_proc.c" /* glr.c:821 */
4425 #line 462 "src/parser_proc_grammar.y" /* glr.c:821 */
4427 psi_parser_proc_add_impl(P
, (*(struct psi_impl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4429 #line 4430 "src/parser_proc.c" /* glr.c:821 */
4433 #line 468 "src/parser_proc_grammar.y" /* glr.c:821 */
4435 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = NULL
;
4437 #line 4438 "src/parser_proc.c" /* glr.c:821 */
4441 #line 471 "src/parser_proc_grammar.y" /* glr.c:821 */
4443 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = (*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4445 #line 4446 "src/parser_proc.c" /* glr.c:821 */
4449 #line 477 "src/parser_proc_grammar.y" /* glr.c:821 */
4451 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
4452 struct psi_token
*msg
= NULL
;
4454 if (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0, &msg
)) {
4456 struct psi_token
*next
;
4458 msg
= psi_token_copy(msg
);
4459 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), index
++, &next
)) {
4460 struct psi_token
*old
= msg
;
4461 msg
= psi_token_cat(" ", 2, msg
, next
);
4462 psi_token_free(&old
);
4465 psi_plist_free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4467 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, msg
);
4469 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4471 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4473 #line 4474 "src/parser_proc.c" /* glr.c:821 */
4477 #line 500 "src/parser_proc_grammar.y" /* glr.c:821 */
4479 (*(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
))));
4480 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4482 #line 4483 "src/parser_proc.c" /* glr.c:821 */
4486 #line 504 "src/parser_proc_grammar.y" /* glr.c:821 */
4488 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4489 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4491 #line 4492 "src/parser_proc.c" /* glr.c:821 */
4495 #line 508 "src/parser_proc_grammar.y" /* glr.c:821 */
4497 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4498 (*(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
))));
4499 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4501 #line 4502 "src/parser_proc.c" /* glr.c:821 */
4505 #line 513 "src/parser_proc_grammar.y" /* glr.c:821 */
4507 (*(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
)));
4508 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4510 #line 4511 "src/parser_proc.c" /* glr.c:821 */
4514 #line 517 "src/parser_proc_grammar.y" /* glr.c:821 */
4516 (*(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
)));
4517 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4519 #line 4520 "src/parser_proc.c" /* glr.c:821 */
4523 #line 521 "src/parser_proc_grammar.y" /* glr.c:821 */
4525 psi_plist_free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4526 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = NULL
;
4528 #line 4529 "src/parser_proc.c" /* glr.c:821 */
4532 #line 570 "src/parser_proc_grammar.y" /* glr.c:821 */
4534 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4535 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
))) = psi_cpp_macro_decl_init(NULL
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), NULL
);
4536 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4538 #line 4539 "src/parser_proc.c" /* glr.c:821 */
4542 #line 575 "src/parser_proc_grammar.y" /* glr.c:821 */
4544 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4545 (*(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
);
4546 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
4548 #line 4549 "src/parser_proc.c" /* glr.c:821 */
4552 #line 580 "src/parser_proc_grammar.y" /* glr.c:821 */
4554 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4555 (*(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
)));
4556 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4558 #line 4559 "src/parser_proc.c" /* glr.c:821 */
4562 #line 585 "src/parser_proc_grammar.y" /* glr.c:821 */
4564 struct psi_plist
*list
= psi_plist_init((psi_plist_dtor
) psi_token_free
);
4565 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4566 (*(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
);
4567 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4569 #line 4570 "src/parser_proc.c" /* glr.c:821 */
4573 #line 594 "src/parser_proc_grammar.y" /* glr.c:821 */
4575 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_init(NULL
);
4577 #line 4578 "src/parser_proc.c" /* glr.c:821 */
4581 #line 597 "src/parser_proc_grammar.y" /* glr.c:821 */
4583 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_init(NULL
); /* FIXME */
4585 #line 4586 "src/parser_proc.c" /* glr.c:821 */
4589 #line 601 "src/parser_proc_grammar.y" /* glr.c:821 */
4591 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4593 #line 4594 "src/parser_proc.c" /* glr.c:821 */
4597 #line 607 "src/parser_proc_grammar.y" /* glr.c:821 */
4599 (*(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
)));
4600 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4601 (*(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
)));
4603 #line 4604 "src/parser_proc.c" /* glr.c:821 */
4607 #line 612 "src/parser_proc_grammar.y" /* glr.c:821 */
4609 (*(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
)));
4610 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4611 (*(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
)));
4613 #line 4614 "src/parser_proc.c" /* glr.c:821 */
4617 #line 620 "src/parser_proc_grammar.y" /* glr.c:821 */
4619 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
4621 #line 4622 "src/parser_proc.c" /* glr.c:821 */
4625 #line 627 "src/parser_proc_grammar.y" /* glr.c:821 */
4627 (*(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
)));
4628 (*(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
)));
4630 #line 4631 "src/parser_proc.c" /* glr.c:821 */
4634 #line 631 "src/parser_proc_grammar.y" /* glr.c:821 */
4636 (*(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
)));
4637 (*(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
)));
4639 #line 4640 "src/parser_proc.c" /* glr.c:821 */
4643 #line 638 "src/parser_proc_grammar.y" /* glr.c:821 */
4645 (*(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
)));
4646 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4648 #line 4649 "src/parser_proc.c" /* glr.c:821 */
4652 #line 642 "src/parser_proc_grammar.y" /* glr.c:821 */
4654 (*(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
)));
4655 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4657 #line 4658 "src/parser_proc.c" /* glr.c:821 */
4661 #line 646 "src/parser_proc_grammar.y" /* glr.c:821 */
4663 (*(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
)));
4664 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4666 #line 4667 "src/parser_proc.c" /* glr.c:821 */
4670 #line 650 "src/parser_proc_grammar.y" /* glr.c:821 */
4672 (*(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
)));
4673 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4675 #line 4676 "src/parser_proc.c" /* glr.c:821 */
4679 #line 655 "src/parser_proc_grammar.y" /* glr.c:821 */
4684 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4685 exists
= psi_cpp_defined(P
->preproc
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4686 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_DEFINED
, &exists
, 0));
4687 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4688 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4691 #line 4692 "src/parser_proc.c" /* glr.c:821 */
4695 #line 666 "src/parser_proc_grammar.y" /* glr.c:821 */
4700 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4701 exists
= psi_cpp_defined(P
->preproc
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4702 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_DEFINED
, &exists
, 0));
4703 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4704 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4707 #line 4708 "src/parser_proc.c" /* glr.c:821 */
4711 #line 677 "src/parser_proc_grammar.y" /* glr.c:821 */
4713 (*(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
));
4714 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4715 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4717 #line 4718 "src/parser_proc.c" /* glr.c:821 */
4721 #line 682 "src/parser_proc_grammar.y" /* glr.c:821 */
4723 (*(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));
4724 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4725 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4727 #line 4728 "src/parser_proc.c" /* glr.c:821 */
4731 #line 687 "src/parser_proc_grammar.y" /* glr.c:821 */
4733 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4734 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4736 #line 4737 "src/parser_proc.c" /* glr.c:821 */
4740 #line 691 "src/parser_proc_grammar.y" /* glr.c:821 */
4742 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4743 (*(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));
4744 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4745 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4747 #line 4748 "src/parser_proc.c" /* glr.c:821 */
4751 #line 697 "src/parser_proc_grammar.y" /* glr.c:821 */
4753 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4754 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_FUNCTION
,
4755 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));
4756 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4757 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4758 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->data
.call
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4760 #line 4761 "src/parser_proc.c" /* glr.c:821 */
4764 #line 708 "src/parser_proc_grammar.y" /* glr.c:821 */
4766 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
4768 #line 4769 "src/parser_proc.c" /* glr.c:821 */
4772 #line 715 "src/parser_proc_grammar.y" /* glr.c:821 */
4774 /* TODO: clang include test macros */
4776 struct psi_num_exp
*exp
= psi_num_exp_init_num(psi_number_init(PSI_T_UINT8
, &no
, 0));
4777 exp
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4778 exp
->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4779 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_num_exp_free
), &exp
);
4781 #line 4782 "src/parser_proc.c" /* glr.c:821 */
4785 #line 723 "src/parser_proc_grammar.y" /* glr.c:821 */
4787 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_num_exp_free
),
4788 &(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4790 #line 4791 "src/parser_proc.c" /* glr.c:821 */
4794 #line 727 "src/parser_proc_grammar.y" /* glr.c:821 */
4796 (*(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
)));
4798 #line 4799 "src/parser_proc.c" /* glr.c:821 */
4802 #line 733 "src/parser_proc_grammar.y" /* glr.c:821 */
4804 (*(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
)));
4805 (*(struct psi_const
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4807 #line 4808 "src/parser_proc.c" /* glr.c:821 */
4811 #line 737 "src/parser_proc_grammar.y" /* glr.c:821 */
4813 (*(struct psi_const
**)(&(*yyvalp
))) = psi_const_init(NULL
, (*(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
)));
4814 (*(struct psi_const
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4816 #line 4817 "src/parser_proc.c" /* glr.c:821 */
4820 #line 744 "src/parser_proc_grammar.y" /* glr.c:821 */
4822 (*(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
);
4823 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4825 #line 4826 "src/parser_proc.c" /* glr.c:821 */
4829 #line 748 "src/parser_proc_grammar.y" /* glr.c:821 */
4831 (*(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
)));
4832 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4834 #line 4835 "src/parser_proc.c" /* glr.c:821 */
4838 #line 752 "src/parser_proc_grammar.y" /* glr.c:821 */
4840 (*(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
);
4841 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4843 #line 4844 "src/parser_proc.c" /* glr.c:821 */
4847 #line 765 "src/parser_proc_grammar.y" /* glr.c:821 */
4849 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4851 #line 4852 "src/parser_proc.c" /* glr.c:821 */
4855 #line 779 "src/parser_proc_grammar.y" /* glr.c:821 */
4857 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4859 #line 4860 "src/parser_proc.c" /* glr.c:821 */
4863 #line 785 "src/parser_proc_grammar.y" /* glr.c:821 */
4865 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4867 #line 4868 "src/parser_proc.c" /* glr.c:821 */
4871 #line 788 "src/parser_proc_grammar.y" /* glr.c:821 */
4873 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4875 #line 4876 "src/parser_proc.c" /* glr.c:821 */
4879 #line 794 "src/parser_proc_grammar.y" /* glr.c:821 */
4881 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4883 #line 4884 "src/parser_proc.c" /* glr.c:821 */
4887 #line 797 "src/parser_proc_grammar.y" /* glr.c:821 */
4889 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4891 #line 4892 "src/parser_proc.c" /* glr.c:821 */
4895 #line 804 "src/parser_proc_grammar.y" /* glr.c:821 */
4897 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4898 psi_decl_type_init(PSI_T_FUNCTION
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
),
4899 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
4901 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
4902 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4904 #line 4905 "src/parser_proc.c" /* glr.c:821 */
4908 #line 812 "src/parser_proc_grammar.y" /* glr.c:821 */
4910 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4911 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4912 psi_decl_type_init(PSI_T_ENUM
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->name
),
4913 psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0, 0)
4915 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4916 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->token
);
4917 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.enm
= (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4918 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4920 #line 4921 "src/parser_proc.c" /* glr.c:821 */
4924 #line 823 "src/parser_proc_grammar.y" /* glr.c:821 */
4926 (*(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
)));
4927 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
4928 (*(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
)));
4929 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4930 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).pos
;
4931 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).len
;
4932 psi_parser_proc_add_struct(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
);
4934 #line 4935 "src/parser_proc.c" /* glr.c:821 */
4938 #line 832 "src/parser_proc_grammar.y" /* glr.c:821 */
4940 (*(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
)));
4941 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
4942 (*(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
)));
4943 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4944 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).pos
;
4945 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).len
;
4946 psi_parser_proc_add_union(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
);
4948 #line 4949 "src/parser_proc.c" /* glr.c:821 */
4952 #line 845 "src/parser_proc_grammar.y" /* glr.c:821 */
4954 (*(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));
4955 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4957 #line 4958 "src/parser_proc.c" /* glr.c:821 */
4961 #line 849 "src/parser_proc_grammar.y" /* glr.c:821 */
4963 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4964 psi_decl_type_init(PSI_T_ENUM
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->name
),
4965 psi_decl_var_init(NULL
, 0, 0)
4967 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4968 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4969 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.enm
= (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4970 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4972 #line 4973 "src/parser_proc.c" /* glr.c:821 */
4976 #line 859 "src/parser_proc_grammar.y" /* glr.c:821 */
4978 (*(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));
4979 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4980 (*(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
)));
4981 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4982 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
4983 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
4984 psi_parser_proc_add_struct(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
);
4986 #line 4987 "src/parser_proc.c" /* glr.c:821 */
4990 #line 868 "src/parser_proc_grammar.y" /* glr.c:821 */
4992 (*(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));
4993 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4994 (*(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
)));
4995 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4996 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
4997 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
4998 psi_parser_proc_add_union(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
);
5000 #line 5001 "src/parser_proc.c" /* glr.c:821 */
5004 #line 881 "src/parser_proc_grammar.y" /* glr.c:821 */
5006 (*(struct psi_decl_type
**)(&(*yyvalp
))) = (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5008 #line 5009 "src/parser_proc.c" /* glr.c:821 */
5012 #line 884 "src/parser_proc_grammar.y" /* glr.c:821 */
5014 (*(struct psi_decl_type
**)(&(*yyvalp
))) = (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5016 #line 5017 "src/parser_proc.c" /* glr.c:821 */
5020 #line 895 "src/parser_proc_grammar.y" /* glr.c:821 */
5022 (*(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
);
5023 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5025 #line 5026 "src/parser_proc.c" /* glr.c:821 */
5029 #line 903 "src/parser_proc_grammar.y" /* glr.c:821 */
5031 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5032 (*(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
);
5033 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5035 #line 5036 "src/parser_proc.c" /* glr.c:821 */
5039 #line 908 "src/parser_proc_grammar.y" /* glr.c:821 */
5041 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5042 (*(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
);
5043 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5045 #line 5046 "src/parser_proc.c" /* glr.c:821 */
5049 #line 913 "src/parser_proc_grammar.y" /* glr.c:821 */
5051 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5052 (*(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
);
5053 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5055 #line 5056 "src/parser_proc.c" /* glr.c:821 */
5059 #line 923 "src/parser_proc_grammar.y" /* glr.c:821 */
5061 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5063 #line 5064 "src/parser_proc.c" /* glr.c:821 */
5067 #line 926 "src/parser_proc_grammar.y" /* glr.c:821 */
5069 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5071 #line 5072 "src/parser_proc.c" /* glr.c:821 */
5075 #line 932 "src/parser_proc_grammar.y" /* glr.c:821 */
5077 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5079 #line 5080 "src/parser_proc.c" /* glr.c:821 */
5083 #line 935 "src/parser_proc_grammar.y" /* glr.c:821 */
5085 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5087 #line 5088 "src/parser_proc.c" /* glr.c:821 */
5091 #line 938 "src/parser_proc_grammar.y" /* glr.c:821 */
5093 (*(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
)));
5095 #line 5096 "src/parser_proc.c" /* glr.c:821 */
5099 #line 949 "src/parser_proc_grammar.y" /* glr.c:821 */
5101 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5103 #line 5104 "src/parser_proc.c" /* glr.c:821 */
5107 #line 952 "src/parser_proc_grammar.y" /* glr.c:821 */
5109 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5111 #line 5112 "src/parser_proc.c" /* glr.c:821 */
5115 #line 955 "src/parser_proc_grammar.y" /* glr.c:821 */
5117 (*(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
)));
5119 #line 5120 "src/parser_proc.c" /* glr.c:821 */
5123 #line 961 "src/parser_proc_grammar.y" /* glr.c:821 */
5125 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5127 #line 5128 "src/parser_proc.c" /* glr.c:821 */
5131 #line 964 "src/parser_proc_grammar.y" /* glr.c:821 */
5133 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5135 #line 5136 "src/parser_proc.c" /* glr.c:821 */
5139 #line 967 "src/parser_proc_grammar.y" /* glr.c:821 */
5141 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5142 (*(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
)));
5143 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5145 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5148 #line 5149 "src/parser_proc.c" /* glr.c:821 */
5152 #line 975 "src/parser_proc_grammar.y" /* glr.c:821 */
5154 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5155 (*(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
)));
5156 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5157 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5159 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5162 #line 5163 "src/parser_proc.c" /* glr.c:821 */
5166 #line 987 "src/parser_proc_grammar.y" /* glr.c:821 */
5168 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5170 #line 5171 "src/parser_proc.c" /* glr.c:821 */
5174 #line 990 "src/parser_proc_grammar.y" /* glr.c:821 */
5176 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5178 #line 5179 "src/parser_proc.c" /* glr.c:821 */
5182 #line 993 "src/parser_proc_grammar.y" /* glr.c:821 */
5184 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5186 #line 5187 "src/parser_proc.c" /* glr.c:821 */
5190 #line 996 "src/parser_proc_grammar.y" /* glr.c:821 */
5192 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5193 (*(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
)));
5195 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5198 #line 5199 "src/parser_proc.c" /* glr.c:821 */
5202 #line 1003 "src/parser_proc_grammar.y" /* glr.c:821 */
5204 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5206 #line 5207 "src/parser_proc.c" /* glr.c:821 */
5210 #line 1006 "src/parser_proc_grammar.y" /* glr.c:821 */
5212 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5213 (*(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
)));
5215 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5218 #line 5219 "src/parser_proc.c" /* glr.c:821 */
5222 #line 1016 "src/parser_proc_grammar.y" /* glr.c:821 */
5224 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5226 #line 5227 "src/parser_proc.c" /* glr.c:821 */
5230 #line 1022 "src/parser_proc_grammar.y" /* glr.c:821 */
5232 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5234 #line 5235 "src/parser_proc.c" /* glr.c:821 */
5238 #line 1031 "src/parser_proc_grammar.y" /* glr.c:821 */
5240 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5242 #line 5243 "src/parser_proc.c" /* glr.c:821 */
5246 #line 1034 "src/parser_proc_grammar.y" /* glr.c:821 */
5248 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5250 #line 5251 "src/parser_proc.c" /* glr.c:821 */
5254 #line 1037 "src/parser_proc_grammar.y" /* glr.c:821 */
5256 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5257 (*(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
)));
5258 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5260 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5263 #line 5264 "src/parser_proc.c" /* glr.c:821 */
5267 #line 1048 "src/parser_proc_grammar.y" /* glr.c:821 */
5269 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5270 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5271 (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->redir
= zend_string_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5272 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5275 #line 5276 "src/parser_proc.c" /* glr.c:821 */
5279 #line 1055 "src/parser_proc_grammar.y" /* glr.c:821 */
5281 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5282 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5283 (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->redir
= zend_string_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5284 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5287 #line 5288 "src/parser_proc.c" /* glr.c:821 */
5291 #line 1065 "src/parser_proc_grammar.y" /* glr.c:821 */
5293 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5295 #line 5296 "src/parser_proc.c" /* glr.c:821 */
5299 #line 1068 "src/parser_proc_grammar.y" /* glr.c:821 */
5301 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5303 #line 5304 "src/parser_proc.c" /* glr.c:821 */
5307 #line 1074 "src/parser_proc_grammar.y" /* glr.c:821 */
5309 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5311 #line 5312 "src/parser_proc.c" /* glr.c:821 */
5315 #line 1077 "src/parser_proc_grammar.y" /* glr.c:821 */
5317 (*(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
)));
5318 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5320 #line 5321 "src/parser_proc.c" /* glr.c:821 */
5324 #line 1084 "src/parser_proc_grammar.y" /* glr.c:821 */
5326 struct psi_plist
*list
= psi_plist_init((psi_plist_dtor
) psi_decl_extvar_free
);
5328 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))) {
5330 struct psi_decl_var
*var
;
5332 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), i
++, &var
)) {
5333 if (psi_decl_extvar_is_blacklisted(var
->name
->val
)) {
5334 psi_decl_var_free(&var
);
5336 struct psi_decl_extvar
*evar
= psi_decl_extvar_init(
5337 psi_decl_arg_init(psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
), var
));
5338 list
= psi_plist_add(list
, &evar
);
5341 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5344 if (psi_decl_extvar_is_blacklisted((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->var
->name
->val
)) {
5345 psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5347 struct psi_decl_extvar
*evar
= psi_decl_extvar_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5349 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5350 evar
->redir
= zend_string_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5351 psi_token_free(&(*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5353 list
= psi_plist_add(list
, &evar
);
5356 (*(struct psi_plist
**)(&(*yyvalp
))) = list
;
5358 #line 5359 "src/parser_proc.c" /* glr.c:821 */
5362 #line 1120 "src/parser_proc_grammar.y" /* glr.c:821 */
5364 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5366 #line 5367 "src/parser_proc.c" /* glr.c:821 */
5370 #line 1123 "src/parser_proc_grammar.y" /* glr.c:821 */
5372 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5374 #line 5375 "src/parser_proc.c" /* glr.c:821 */
5378 #line 1129 "src/parser_proc_grammar.y" /* glr.c:821 */
5380 (*(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
)));
5382 #line 5383 "src/parser_proc.c" /* glr.c:821 */
5386 #line 1132 "src/parser_proc_grammar.y" /* glr.c:821 */
5388 (*(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
)));
5390 #line 5391 "src/parser_proc.c" /* glr.c:821 */
5394 #line 1138 "src/parser_proc_grammar.y" /* glr.c:821 */
5396 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5398 #line 5399 "src/parser_proc.c" /* glr.c:821 */
5402 #line 1168 "src/parser_proc_grammar.y" /* glr.c:821 */
5404 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5405 (*(struct psi_decl
**)(&(*yyvalp
)))->abi
= psi_decl_abi_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5407 #line 5408 "src/parser_proc.c" /* glr.c:821 */
5411 #line 1180 "src/parser_proc_grammar.y" /* glr.c:821 */
5413 (*(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
)));
5414 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5415 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5416 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5419 #line 5420 "src/parser_proc.c" /* glr.c:821 */
5423 #line 1187 "src/parser_proc_grammar.y" /* glr.c:821 */
5425 (*(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
)));
5426 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5427 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5428 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5429 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5432 #line 5433 "src/parser_proc.c" /* glr.c:821 */
5436 #line 1198 "src/parser_proc_grammar.y" /* glr.c:821 */
5438 (*(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
)));
5439 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5440 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5441 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5444 #line 5445 "src/parser_proc.c" /* glr.c:821 */
5448 #line 1205 "src/parser_proc_grammar.y" /* glr.c:821 */
5450 (*(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
)));
5451 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5452 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5453 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5454 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5457 #line 5458 "src/parser_proc.c" /* glr.c:821 */
5461 #line 1213 "src/parser_proc_grammar.y" /* glr.c:821 */
5463 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
));
5464 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5466 struct psi_token
*type_token
= psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))), 1, "rval");
5467 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));
5468 struct psi_decl
*rval_decl
= psi_decl_init(rval_func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5470 rval_func
->var
->token
= psi_token_copy(type_token
);
5471 rval_func
->token
= psi_token_copy(type_token
);
5472 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5473 rval_func
->var
->pointer_level
+= 1;
5474 rval_func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5477 struct psi_decl_type
*type
= psi_decl_type_init(PSI_T_FUNCTION
, type_token
->text
);
5478 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));
5480 type
->real
.func
= rval_decl
;
5481 func
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)));
5482 func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)));
5484 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init(func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
5486 #line 5487 "src/parser_proc.c" /* glr.c:821 */
5490 #line 1237 "src/parser_proc_grammar.y" /* glr.c:821 */
5492 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-12)].yystate
.yysemantics
.yysval
));
5493 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
));
5494 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5496 struct psi_token
*type_token
= psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))), 1, "rval");
5497 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));
5498 struct psi_decl
*rval_decl
= psi_decl_init(rval_func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5500 rval_func
->var
->token
= psi_token_copy(type_token
);
5501 rval_func
->token
= psi_token_copy(type_token
);
5502 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5503 rval_func
->var
->pointer_level
+= 1;
5504 rval_func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5507 struct psi_decl_type
*type
= psi_decl_type_init(PSI_T_FUNCTION
, type_token
->text
);
5508 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));
5510 type
->real
.func
= rval_decl
;
5511 func
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
5512 func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
5513 type
->token
= type_token
;
5515 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init(func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
5517 #line 5518 "src/parser_proc.c" /* glr.c:821 */
5521 #line 1266 "src/parser_proc_grammar.y" /* glr.c:821 */
5523 (*(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
)));
5524 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5525 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5526 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5529 #line 5530 "src/parser_proc.c" /* glr.c:821 */
5533 #line 1273 "src/parser_proc_grammar.y" /* glr.c:821 */
5535 (*(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
)));
5536 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5537 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5538 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5539 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5542 #line 5543 "src/parser_proc.c" /* glr.c:821 */
5546 #line 1284 "src/parser_proc_grammar.y" /* glr.c:821 */
5548 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5549 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5550 (*(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));
5551 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5552 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5554 #line 5555 "src/parser_proc.c" /* glr.c:821 */
5558 #line 1330 "src/parser_proc_grammar.y" /* glr.c:821 */
5560 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5561 (*(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));
5562 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5563 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5565 #line 5566 "src/parser_proc.c" /* glr.c:821 */
5569 #line 1386 "src/parser_proc_grammar.y" /* glr.c:821 */
5571 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5573 #line 5574 "src/parser_proc.c" /* glr.c:821 */
5577 #line 1389 "src/parser_proc_grammar.y" /* glr.c:821 */
5579 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5581 #line 5582 "src/parser_proc.c" /* glr.c:821 */
5585 #line 1392 "src/parser_proc_grammar.y" /* glr.c:821 */
5587 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5589 #line 5590 "src/parser_proc.c" /* glr.c:821 */
5593 #line 1398 "src/parser_proc_grammar.y" /* glr.c:821 */
5595 (*(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
)));
5597 #line 5598 "src/parser_proc.c" /* glr.c:821 */
5601 #line 1401 "src/parser_proc_grammar.y" /* glr.c:821 */
5603 (*(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
)));
5605 #line 5606 "src/parser_proc.c" /* glr.c:821 */
5609 #line 1407 "src/parser_proc_grammar.y" /* glr.c:821 */
5612 struct psi_token
*name
;
5614 psi_token_hash((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
, digest
);
5615 name
= psi_token_append("@", psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
), 2, "funct", digest
);
5617 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5618 psi_decl_type_init(PSI_T_FUNCTION
, name
->text
),
5619 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
5621 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= name
;
5622 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
5623 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5625 #line 5626 "src/parser_proc.c" /* glr.c:821 */
5629 #line 1422 "src/parser_proc_grammar.y" /* glr.c:821 */
5631 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5633 #line 5634 "src/parser_proc.c" /* glr.c:821 */
5637 #line 1425 "src/parser_proc_grammar.y" /* glr.c:821 */
5639 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5640 (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)),
5641 psi_decl_var_init(NULL
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)))
5644 #line 5645 "src/parser_proc.c" /* glr.c:821 */
5648 #line 1454 "src/parser_proc_grammar.y" /* glr.c:821 */
5650 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5651 psi_decl_type_init(PSI_T_FUNCTION
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
),
5652 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
5654 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
5655 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5657 #line 5658 "src/parser_proc.c" /* glr.c:821 */
5661 #line 1462 "src/parser_proc_grammar.y" /* glr.c:821 */
5663 (*(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
)));
5665 #line 5666 "src/parser_proc.c" /* glr.c:821 */
5669 #line 1490 "src/parser_proc_grammar.y" /* glr.c:821 */
5671 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5672 (*(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
)));
5673 (*(struct psi_decl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5675 #line 5676 "src/parser_proc.c" /* glr.c:821 */
5679 #line 1495 "src/parser_proc_grammar.y" /* glr.c:821 */
5681 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5682 (*(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
)));
5683 (*(struct psi_decl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5685 #line 5686 "src/parser_proc.c" /* glr.c:821 */
5689 #line 1503 "src/parser_proc_grammar.y" /* glr.c:821 */
5691 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5692 (*(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
)));
5693 (*(struct psi_decl_union
**)(&(*yyvalp
)))->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
5694 (*(struct psi_decl_union
**)(&(*yyvalp
)))->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
5695 (*(struct psi_decl_union
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5697 #line 5698 "src/parser_proc.c" /* glr.c:821 */
5701 #line 1513 "src/parser_proc_grammar.y" /* glr.c:821 */
5703 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5704 (*(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
)));
5705 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
5706 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
5707 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5709 #line 5710 "src/parser_proc.c" /* glr.c:821 */
5713 #line 1523 "src/parser_proc_grammar.y" /* glr.c:821 */
5715 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5717 #line 5718 "src/parser_proc.c" /* glr.c:821 */
5721 #line 1530 "src/parser_proc_grammar.y" /* glr.c:821 */
5723 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5725 #line 5726 "src/parser_proc.c" /* glr.c:821 */
5729 #line 1536 "src/parser_proc_grammar.y" /* glr.c:821 */
5731 (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5732 (*(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
)));
5733 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5735 struct psi_decl_arg
*arg
;
5737 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &arg
)) {
5738 arg
->type
= psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
);
5739 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&(*yyvalp
))), &arg
);
5741 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5744 #line 5745 "src/parser_proc.c" /* glr.c:821 */
5748 #line 1550 "src/parser_proc_grammar.y" /* glr.c:821 */
5750 (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5751 (*(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
)));
5752 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5754 struct psi_decl_arg
*arg
;
5756 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &arg
)) {
5757 arg
->type
= psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
);
5758 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&(*yyvalp
))), &arg
);
5760 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5763 #line 5764 "src/parser_proc.c" /* glr.c:821 */
5767 #line 1567 "src/parser_proc_grammar.y" /* glr.c:821 */
5769 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5771 #line 5772 "src/parser_proc.c" /* glr.c:821 */
5775 #line 1570 "src/parser_proc_grammar.y" /* glr.c:821 */
5777 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5779 #line 5780 "src/parser_proc.c" /* glr.c:821 */
5783 #line 1576 "src/parser_proc_grammar.y" /* glr.c:821 */
5786 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5787 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5788 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
), &arg
);
5791 #line 5792 "src/parser_proc.c" /* glr.c:821 */
5795 #line 1583 "src/parser_proc_grammar.y" /* glr.c:821 */
5798 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5799 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5800 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), &arg
);
5803 #line 5804 "src/parser_proc.c" /* glr.c:821 */
5807 #line 1590 "src/parser_proc_grammar.y" /* glr.c:821 */
5810 struct psi_decl_var
*var
= psi_decl_var_init(NULL
, 0, 0);
5811 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, var
);
5812 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5813 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
), &arg
);
5816 #line 5817 "src/parser_proc.c" /* glr.c:821 */
5820 #line 1598 "src/parser_proc_grammar.y" /* glr.c:821 */
5823 struct psi_decl_var
*var
= psi_decl_var_init(NULL
, 0, 0);
5824 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, var
);
5825 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5826 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)), &arg
);
5829 #line 5830 "src/parser_proc.c" /* glr.c:821 */
5833 #line 1609 "src/parser_proc_grammar.y" /* glr.c:821 */
5835 (*(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
)));
5836 (*(struct psi_decl_enum
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
));
5838 #line 5839 "src/parser_proc.c" /* glr.c:821 */
5842 #line 1616 "src/parser_proc_grammar.y" /* glr.c:821 */
5844 (*(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
)));
5846 #line 5847 "src/parser_proc.c" /* glr.c:821 */
5850 #line 1619 "src/parser_proc_grammar.y" /* glr.c:821 */
5852 (*(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
)));
5854 #line 5855 "src/parser_proc.c" /* glr.c:821 */
5858 #line 1625 "src/parser_proc_grammar.y" /* glr.c:821 */
5860 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5861 (*(struct psi_decl_enum_item
**)(&(*yyvalp
))) = psi_decl_enum_item_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, NULL
);
5862 (*(struct psi_decl_enum_item
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5864 #line 5865 "src/parser_proc.c" /* glr.c:821 */
5868 #line 1630 "src/parser_proc_grammar.y" /* glr.c:821 */
5870 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5871 (*(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
)));
5872 (*(struct psi_decl_enum_item
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5874 #line 5875 "src/parser_proc.c" /* glr.c:821 */
5878 #line 1638 "src/parser_proc_grammar.y" /* glr.c:821 */
5880 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5881 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
5883 #line 5884 "src/parser_proc.c" /* glr.c:821 */
5887 #line 1642 "src/parser_proc_grammar.y" /* glr.c:821 */
5889 (*(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
)));
5890 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->token
);
5892 #line 5893 "src/parser_proc.c" /* glr.c:821 */
5896 #line 1646 "src/parser_proc_grammar.y" /* glr.c:821 */
5898 (*(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
)));
5899 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5901 #line 5902 "src/parser_proc.c" /* glr.c:821 */
5905 #line 1650 "src/parser_proc_grammar.y" /* glr.c:821 */
5907 (*(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
)));
5908 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5910 #line 5911 "src/parser_proc.c" /* glr.c:821 */
5914 #line 1654 "src/parser_proc_grammar.y" /* glr.c:821 */
5916 (*(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
)));
5917 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5919 #line 5920 "src/parser_proc.c" /* glr.c:821 */
5923 #line 1658 "src/parser_proc_grammar.y" /* glr.c:821 */
5925 (*(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
)));
5926 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5928 #line 5929 "src/parser_proc.c" /* glr.c:821 */
5932 #line 1665 "src/parser_proc_grammar.y" /* glr.c:821 */
5934 (*(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
);
5935 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5937 #line 5938 "src/parser_proc.c" /* glr.c:821 */
5941 #line 1669 "src/parser_proc_grammar.y" /* glr.c:821 */
5943 (*(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);
5944 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5946 #line 5947 "src/parser_proc.c" /* glr.c:821 */
5950 #line 1673 "src/parser_proc_grammar.y" /* glr.c:821 */
5952 (*(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);
5953 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5955 #line 5956 "src/parser_proc.c" /* glr.c:821 */
5959 #line 1677 "src/parser_proc_grammar.y" /* glr.c:821 */
5961 (*(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);
5962 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5964 #line 5965 "src/parser_proc.c" /* glr.c:821 */
5968 #line 1681 "src/parser_proc_grammar.y" /* glr.c:821 */
5970 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_NAME
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0);
5971 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
5973 #line 5974 "src/parser_proc.c" /* glr.c:821 */
5977 #line 1685 "src/parser_proc_grammar.y" /* glr.c:821 */
5979 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5981 #line 5982 "src/parser_proc.c" /* glr.c:821 */
5985 #line 1691 "src/parser_proc_grammar.y" /* glr.c:821 */
5987 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5988 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5990 #line 5991 "src/parser_proc.c" /* glr.c:821 */
5994 #line 1695 "src/parser_proc_grammar.y" /* glr.c:821 */
5996 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5997 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5999 #line 6000 "src/parser_proc.c" /* glr.c:821 */
6003 #line 1702 "src/parser_proc_grammar.y" /* glr.c:821 */
6005 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6007 #line 6008 "src/parser_proc.c" /* glr.c:821 */
6011 #line 1705 "src/parser_proc_grammar.y" /* glr.c:821 */
6013 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6014 int8_t sizeof_void_p
= sizeof(void *);
6015 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_void_p
, 0);
6016 psi_decl_type_free(&(*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6018 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_SIZEOF
, (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), 0);
6021 #line 6022 "src/parser_proc.c" /* glr.c:821 */
6025 #line 1717 "src/parser_proc_grammar.y" /* glr.c:821 */
6027 int8_t sizeof_void_p
= sizeof(void *);
6028 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_void_p
, 0);
6030 #line 6031 "src/parser_proc.c" /* glr.c:821 */
6034 #line 1721 "src/parser_proc_grammar.y" /* glr.c:821 */
6036 int8_t sizeof_a
= sizeof('a');
6037 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_a
, 0);
6039 #line 6040 "src/parser_proc.c" /* glr.c:821 */
6043 #line 1725 "src/parser_proc_grammar.y" /* glr.c:821 */
6045 uint64_t len
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
->len
+ 1;
6046 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_UINT64
, &len
, 0);
6048 #line 6049 "src/parser_proc.c" /* glr.c:821 */
6052 #line 1732 "src/parser_proc_grammar.y" /* glr.c:821 */
6054 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6055 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6059 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6060 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6063 #line 6064 "src/parser_proc.c" /* glr.c:821 */
6067 #line 1745 "src/parser_proc_grammar.y" /* glr.c:821 */
6069 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6070 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6074 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6075 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6078 #line 6079 "src/parser_proc.c" /* glr.c:821 */
6082 #line 1758 "src/parser_proc_grammar.y" /* glr.c:821 */
6084 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6085 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6089 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6090 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6093 #line 6094 "src/parser_proc.c" /* glr.c:821 */
6097 #line 1771 "src/parser_proc_grammar.y" /* glr.c:821 */
6099 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
6101 #line 6102 "src/parser_proc.c" /* glr.c:821 */
6105 #line 1774 "src/parser_proc_grammar.y" /* glr.c:821 */
6107 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6108 (*(struct psi_token
**)(&(*yyvalp
)))->type
= PSI_T_NAME
;
6110 #line 6111 "src/parser_proc.c" /* glr.c:821 */
6114 #line 1786 "src/parser_proc_grammar.y" /* glr.c:821 */
6116 (*(struct psi_layout
**)(&(*yyvalp
))) = NULL
;
6118 #line 6119 "src/parser_proc.c" /* glr.c:821 */
6122 #line 1789 "src/parser_proc_grammar.y" /* glr.c:821 */
6124 (*(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
->val
), NULL
));
6126 #line 6127 "src/parser_proc.c" /* glr.c:821 */
6130 #line 1792 "src/parser_proc_grammar.y" /* glr.c:821 */
6132 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
->val
), atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
->val
), NULL
);
6134 #line 6135 "src/parser_proc.c" /* glr.c:821 */
6138 #line 1795 "src/parser_proc_grammar.y" /* glr.c:821 */
6140 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
->val
), atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
->val
), psi_layout_init(0, atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-7)].yystate
.yysemantics
.yysval
))->text
->val
), NULL
));
6142 #line 6143 "src/parser_proc.c" /* glr.c:821 */
6146 #line 1801 "src/parser_proc_grammar.y" /* glr.c:821 */
6148 (*(struct psi_layout
*)(&(*yyvalp
))).pos
= 0;
6149 (*(struct psi_layout
*)(&(*yyvalp
))).len
= 0;
6151 #line 6152 "src/parser_proc.c" /* glr.c:821 */
6155 #line 1805 "src/parser_proc_grammar.y" /* glr.c:821 */
6157 (*(struct psi_layout
*)(&(*yyvalp
))).pos
= atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
->val
);
6158 (*(struct psi_layout
*)(&(*yyvalp
))).len
= atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
->val
);
6160 #line 6161 "src/parser_proc.c" /* glr.c:821 */
6164 #line 1812 "src/parser_proc_grammar.y" /* glr.c:821 */
6166 (*(size_t*)(&(*yyvalp
))) = 0;
6168 #line 6169 "src/parser_proc.c" /* glr.c:821 */
6172 #line 1815 "src/parser_proc_grammar.y" /* glr.c:821 */
6174 (*(size_t*)(&(*yyvalp
))) = 0;
6176 #line 6177 "src/parser_proc.c" /* glr.c:821 */
6180 #line 1818 "src/parser_proc_grammar.y" /* glr.c:821 */
6182 struct psi_validate_scope scope
= {0};
6183 psi_validate_scope_ctor(&scope
);
6184 scope
.cpp
= P
->preproc
;
6185 if (psi_num_exp_validate(PSI_DATA(P
), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), &scope
)) {
6186 (*(size_t*)(&(*yyvalp
))) = psi_num_exp_get_long((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), NULL
, P
->preproc
);
6188 (*(size_t*)(&(*yyvalp
))) = 0;
6190 psi_num_exp_free(&(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6191 psi_validate_scope_dtor(&scope
);
6193 #line 6194 "src/parser_proc.c" /* glr.c:821 */
6197 #line 1840 "src/parser_proc_grammar.y" /* glr.c:821 */
6199 (*(size_t*)(&(*yyvalp
))) = 0;
6201 #line 6202 "src/parser_proc.c" /* glr.c:821 */
6205 #line 1843 "src/parser_proc_grammar.y" /* glr.c:821 */
6207 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6209 #line 6210 "src/parser_proc.c" /* glr.c:821 */
6213 #line 1850 "src/parser_proc_grammar.y" /* glr.c:821 */
6215 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6217 #line 6218 "src/parser_proc.c" /* glr.c:821 */
6221 #line 1856 "src/parser_proc_grammar.y" /* glr.c:821 */
6223 (*(size_t*)(&(*yyvalp
))) = 1;
6225 #line 6226 "src/parser_proc.c" /* glr.c:821 */
6229 #line 1859 "src/parser_proc_grammar.y" /* glr.c:821 */
6231 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)) + 1;
6233 #line 6234 "src/parser_proc.c" /* glr.c:821 */
6237 #line 1881 "src/parser_proc_grammar.y" /* glr.c:821 */
6239 (*(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
)));
6241 #line 6242 "src/parser_proc.c" /* glr.c:821 */
6245 #line 1884 "src/parser_proc_grammar.y" /* glr.c:821 */
6247 (*(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
)));
6248 (*(struct psi_impl_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->static_memory
= 1;
6250 #line 6251 "src/parser_proc.c" /* glr.c:821 */
6254 #line 1891 "src/parser_proc_grammar.y" /* glr.c:821 */
6256 (*(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
)));
6257 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6258 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
));
6260 #line 6261 "src/parser_proc.c" /* glr.c:821 */
6264 #line 1896 "src/parser_proc_grammar.y" /* glr.c:821 */
6266 (*(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
)));
6267 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6268 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
));
6270 #line 6271 "src/parser_proc.c" /* glr.c:821 */
6274 #line 1901 "src/parser_proc_grammar.y" /* glr.c:821 */
6276 (*(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
)));
6277 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
)));
6278 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
));
6279 (*(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
);
6280 (*(struct psi_impl_func
**)(&(*yyvalp
)))->vararg
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6282 #line 6283 "src/parser_proc.c" /* glr.c:821 */
6286 #line 1911 "src/parser_proc_grammar.y" /* glr.c:821 */
6288 (*(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
)));
6290 #line 6291 "src/parser_proc.c" /* glr.c:821 */
6294 #line 1914 "src/parser_proc_grammar.y" /* glr.c:821 */
6296 (*(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
)));
6298 #line 6299 "src/parser_proc.c" /* glr.c:821 */
6302 #line 1920 "src/parser_proc_grammar.y" /* glr.c:821 */
6304 (*(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
);
6306 #line 6307 "src/parser_proc.c" /* glr.c:821 */
6310 #line 1923 "src/parser_proc_grammar.y" /* glr.c:821 */
6312 (*(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
)));
6314 #line 6315 "src/parser_proc.c" /* glr.c:821 */
6318 #line 1929 "src/parser_proc_grammar.y" /* glr.c:821 */
6320 (*(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
)));
6321 (*(struct psi_impl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6323 #line 6324 "src/parser_proc.c" /* glr.c:821 */
6327 #line 1936 "src/parser_proc_grammar.y" /* glr.c:821 */
6329 (*(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
);
6330 (*(struct psi_impl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6332 #line 6333 "src/parser_proc.c" /* glr.c:821 */
6336 #line 1943 "src/parser_proc_grammar.y" /* glr.c:821 */
6338 (*(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
);
6339 (*(struct psi_impl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6341 #line 6342 "src/parser_proc.c" /* glr.c:821 */
6345 #line 1970 "src/parser_proc_grammar.y" /* glr.c:821 */
6347 (*(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
)));
6349 #line 6350 "src/parser_proc.c" /* glr.c:821 */
6353 #line 1973 "src/parser_proc_grammar.y" /* glr.c:821 */
6355 (*(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
)));
6357 #line 6358 "src/parser_proc.c" /* glr.c:821 */
6361 #line 1979 "src/parser_proc_grammar.y" /* glr.c:821 */
6363 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_return_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6365 #line 6366 "src/parser_proc.c" /* glr.c:821 */
6369 #line 1982 "src/parser_proc_grammar.y" /* glr.c:821 */
6371 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_let_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6373 #line 6374 "src/parser_proc.c" /* glr.c:821 */
6377 #line 1985 "src/parser_proc_grammar.y" /* glr.c:821 */
6379 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_set_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6381 #line 6382 "src/parser_proc.c" /* glr.c:821 */
6385 #line 1988 "src/parser_proc_grammar.y" /* glr.c:821 */
6387 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_assert_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6389 #line 6390 "src/parser_proc.c" /* glr.c:821 */
6393 #line 1991 "src/parser_proc_grammar.y" /* glr.c:821 */
6395 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_free_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6397 #line 6398 "src/parser_proc.c" /* glr.c:821 */
6401 #line 1997 "src/parser_proc_grammar.y" /* glr.c:821 */
6403 (*(struct psi_let_stmt
**)(&(*yyvalp
))) = psi_let_stmt_init((*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6404 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6406 #line 6407 "src/parser_proc.c" /* glr.c:821 */
6410 #line 2001 "src/parser_proc_grammar.y" /* glr.c:821 */
6412 (*(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
))));
6413 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6414 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->exp
->is_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6416 #line 6417 "src/parser_proc.c" /* glr.c:821 */
6420 #line 2010 "src/parser_proc_grammar.y" /* glr.c:821 */
6422 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6423 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= true;
6425 #line 6426 "src/parser_proc.c" /* glr.c:821 */
6429 #line 2014 "src/parser_proc_grammar.y" /* glr.c:821 */
6431 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6432 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= false;
6434 #line 6435 "src/parser_proc.c" /* glr.c:821 */
6438 #line 2021 "src/parser_proc_grammar.y" /* glr.c:821 */
6440 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_NULL
, NULL
);
6442 #line 6443 "src/parser_proc.c" /* glr.c:821 */
6446 #line 2024 "src/parser_proc_grammar.y" /* glr.c:821 */
6448 (*(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
)));
6450 #line 6451 "src/parser_proc.c" /* glr.c:821 */
6454 #line 2027 "src/parser_proc_grammar.y" /* glr.c:821 */
6456 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLOC
, (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6458 #line 6459 "src/parser_proc.c" /* glr.c:821 */
6462 #line 2030 "src/parser_proc_grammar.y" /* glr.c:821 */
6464 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLOC
, (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6465 (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->static_memory
= 1;
6467 #line 6468 "src/parser_proc.c" /* glr.c:821 */
6471 #line 2034 "src/parser_proc_grammar.y" /* glr.c:821 */
6473 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLBACK
, (*(struct psi_let_callback
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6475 #line 6476 "src/parser_proc.c" /* glr.c:821 */
6479 #line 2037 "src/parser_proc_grammar.y" /* glr.c:821 */
6481 (*(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
)));
6483 #line 6484 "src/parser_proc.c" /* glr.c:821 */
6487 #line 2043 "src/parser_proc_grammar.y" /* glr.c:821 */
6489 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6490 (*(struct psi_let_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6492 #line 6493 "src/parser_proc.c" /* glr.c:821 */
6496 #line 2047 "src/parser_proc_grammar.y" /* glr.c:821 */
6498 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6499 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= 1;
6500 (*(struct psi_let_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
6502 #line 6503 "src/parser_proc.c" /* glr.c:821 */
6506 #line 2055 "src/parser_proc_grammar.y" /* glr.c:821 */
6508 (*(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
)));
6509 (*(struct psi_let_calloc
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6511 #line 6512 "src/parser_proc.c" /* glr.c:821 */
6515 #line 2062 "src/parser_proc_grammar.y" /* glr.c:821 */
6517 (*(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
);
6518 (*(struct psi_let_callback
**)(&(*yyvalp
)))->func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
6519 (*(struct psi_let_callback
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-7)].yystate
.yysemantics
.yysval
)));
6521 #line 6522 "src/parser_proc.c" /* glr.c:821 */
6525 #line 2067 "src/parser_proc_grammar.y" /* glr.c:821 */
6527 (*(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
)));
6528 (*(struct psi_let_callback
**)(&(*yyvalp
)))->func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
6529 (*(struct psi_let_callback
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
)));
6531 #line 6532 "src/parser_proc.c" /* glr.c:821 */
6535 #line 2075 "src/parser_proc_grammar.y" /* glr.c:821 */
6537 (*(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
)));
6538 (*(struct psi_let_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6539 (*(struct psi_let_func
**)(&(*yyvalp
)))->inner
= (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6541 #line 6542 "src/parser_proc.c" /* glr.c:821 */
6545 #line 2096 "src/parser_proc_grammar.y" /* glr.c:821 */
6547 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6549 #line 6550 "src/parser_proc.c" /* glr.c:821 */
6553 #line 2099 "src/parser_proc_grammar.y" /* glr.c:821 */
6555 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6557 #line 6558 "src/parser_proc.c" /* glr.c:821 */
6561 #line 2105 "src/parser_proc_grammar.y" /* glr.c:821 */
6563 (*(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
)));
6565 #line 6566 "src/parser_proc.c" /* glr.c:821 */
6569 #line 2108 "src/parser_proc_grammar.y" /* glr.c:821 */
6571 (*(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
)));
6573 #line 6574 "src/parser_proc.c" /* glr.c:821 */
6577 #line 2119 "src/parser_proc_grammar.y" /* glr.c:821 */
6579 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6581 #line 6582 "src/parser_proc.c" /* glr.c:821 */
6585 #line 2122 "src/parser_proc_grammar.y" /* glr.c:821 */
6587 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6589 #line 6590 "src/parser_proc.c" /* glr.c:821 */
6593 #line 2128 "src/parser_proc_grammar.y" /* glr.c:821 */
6595 (*(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
)));
6597 #line 6598 "src/parser_proc.c" /* glr.c:821 */
6601 #line 2131 "src/parser_proc_grammar.y" /* glr.c:821 */
6603 (*(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
)));
6605 #line 6606 "src/parser_proc.c" /* glr.c:821 */
6609 #line 2137 "src/parser_proc_grammar.y" /* glr.c:821 */
6611 (*(struct psi_return_stmt
**)(&(*yyvalp
))) = psi_return_stmt_init((*(struct psi_return_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6612 (*(struct psi_return_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6614 #line 6615 "src/parser_proc.c" /* glr.c:821 */
6618 #line 2144 "src/parser_proc_grammar.y" /* glr.c:821 */
6620 (*(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
))));
6621 (*(struct psi_return_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->token
);
6623 #line 6624 "src/parser_proc.c" /* glr.c:821 */
6627 #line 2148 "src/parser_proc_grammar.y" /* glr.c:821 */
6629 (*(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
))));
6630 (*(struct psi_return_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
6632 #line 6633 "src/parser_proc.c" /* glr.c:821 */
6636 #line 2155 "src/parser_proc_grammar.y" /* glr.c:821 */
6638 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6640 #line 6641 "src/parser_proc.c" /* glr.c:821 */
6644 #line 2158 "src/parser_proc_grammar.y" /* glr.c:821 */
6646 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6648 #line 6649 "src/parser_proc.c" /* glr.c:821 */
6652 #line 2161 "src/parser_proc_grammar.y" /* glr.c:821 */
6654 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6656 #line 6657 "src/parser_proc.c" /* glr.c:821 */
6660 #line 2167 "src/parser_proc_grammar.y" /* glr.c:821 */
6662 (*(struct psi_set_stmt
**)(&(*yyvalp
))) = psi_set_stmt_init((*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6663 (*(struct psi_set_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6665 #line 6666 "src/parser_proc.c" /* glr.c:821 */
6669 #line 2174 "src/parser_proc_grammar.y" /* glr.c:821 */
6671 (*(struct psi_set_exp
**)(&(*yyvalp
))) = psi_set_exp_init(PSI_SET_FUNC
, (*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6673 #line 6674 "src/parser_proc.c" /* glr.c:821 */
6677 #line 2177 "src/parser_proc_grammar.y" /* glr.c:821 */
6679 (*(struct psi_set_exp
**)(&(*yyvalp
))) = psi_set_exp_init(PSI_SET_NUMEXP
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6681 #line 6682 "src/parser_proc.c" /* glr.c:821 */
6685 #line 2180 "src/parser_proc_grammar.y" /* glr.c:821 */
6687 (*(struct psi_set_exp
**)(&(*yyvalp
))) = (*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6688 (*(struct psi_set_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6690 #line 6691 "src/parser_proc.c" /* glr.c:821 */
6694 #line 2187 "src/parser_proc_grammar.y" /* glr.c:821 */
6696 (*(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
)));
6697 (*(struct psi_set_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6698 (*(struct psi_set_func
**)(&(*yyvalp
)))->inner
= (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6700 #line 6701 "src/parser_proc.c" /* glr.c:821 */
6704 #line 2192 "src/parser_proc_grammar.y" /* glr.c:821 */
6706 (*(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
)));
6707 (*(struct psi_set_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6708 (*(struct psi_set_func
**)(&(*yyvalp
)))->recursive
= 1;
6710 #line 6711 "src/parser_proc.c" /* glr.c:821 */
6714 #line 2211 "src/parser_proc_grammar.y" /* glr.c:821 */
6716 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6718 #line 6719 "src/parser_proc.c" /* glr.c:821 */
6722 #line 2214 "src/parser_proc_grammar.y" /* glr.c:821 */
6724 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6726 #line 6727 "src/parser_proc.c" /* glr.c:821 */
6730 #line 2220 "src/parser_proc_grammar.y" /* glr.c:821 */
6732 (*(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
)));
6734 #line 6735 "src/parser_proc.c" /* glr.c:821 */
6738 #line 2223 "src/parser_proc_grammar.y" /* glr.c:821 */
6740 (*(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
)));
6742 #line 6743 "src/parser_proc.c" /* glr.c:821 */
6746 #line 2229 "src/parser_proc_grammar.y" /* glr.c:821 */
6748 (*(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
)));
6749 (*(struct psi_assert_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6751 #line 6752 "src/parser_proc.c" /* glr.c:821 */
6755 #line 2241 "src/parser_proc_grammar.y" /* glr.c:821 */
6757 (*(struct psi_free_stmt
**)(&(*yyvalp
))) = psi_free_stmt_init((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6758 (*(struct psi_free_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6760 #line 6761 "src/parser_proc.c" /* glr.c:821 */
6764 #line 2248 "src/parser_proc_grammar.y" /* glr.c:821 */
6766 (*(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
)));
6768 #line 6769 "src/parser_proc.c" /* glr.c:821 */
6772 #line 2251 "src/parser_proc_grammar.y" /* glr.c:821 */
6774 (*(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
)));
6776 #line 6777 "src/parser_proc.c" /* glr.c:821 */
6780 #line 2257 "src/parser_proc_grammar.y" /* glr.c:821 */
6782 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
6783 (*(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
)));
6784 (*(struct psi_free_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6786 #line 6787 "src/parser_proc.c" /* glr.c:821 */
6790 #line 2265 "src/parser_proc_grammar.y" /* glr.c:821 */
6792 (*(bool*)(&(*yyvalp
))) = false;
6794 #line 6795 "src/parser_proc.c" /* glr.c:821 */
6798 #line 2268 "src/parser_proc_grammar.y" /* glr.c:821 */
6800 (*(bool*)(&(*yyvalp
))) = true;
6802 #line 6803 "src/parser_proc.c" /* glr.c:821 */
6806 #line 6807 "src/parser_proc.c" /* glr.c:821 */
6817 # undef YYRECOVERING
6822 yyuserMerge (int yyn
, YYSTYPE
* yy0
, YYSTYPE
* yy1
)
6834 /* Bison grammar-table manipulation. */
6836 /*-----------------------------------------------.
6837 | Release the memory associated to this symbol. |
6838 `-----------------------------------------------*/
6841 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
6849 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
6851 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
6854 case 139: /* binary_op_token */
6855 #line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
6857 #line 6858 "src/parser_proc.c" /* glr.c:851 */
6860 case 140: /* unary_op_token */
6861 #line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
6863 #line 6864 "src/parser_proc.c" /* glr.c:851 */
6866 case 141: /* name_token */
6867 #line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
6869 #line 6870 "src/parser_proc.c" /* glr.c:851 */
6872 case 142: /* any_noeol_token */
6873 #line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
6875 #line 6876 "src/parser_proc.c" /* glr.c:851 */
6879 #line 301 "src/parser_proc_grammar.y" /* glr.c:851 */
6880 {psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&(*yyvaluep
))));}
6881 #line 6882 "src/parser_proc.c" /* glr.c:851 */
6884 case 148: /* cpp_exp */
6885 #line 301 "src/parser_proc_grammar.y" /* glr.c:851 */
6886 {psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&(*yyvaluep
))));}
6887 #line 6888 "src/parser_proc.c" /* glr.c:851 */
6890 case 149: /* cpp_macro_decl_arg_token */
6891 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6893 #line 6894 "src/parser_proc.c" /* glr.c:851 */
6896 case 151: /* cpp_message_token */
6897 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6899 #line 6900 "src/parser_proc.c" /* glr.c:851 */
6902 case 152: /* cpp_include_token */
6903 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6905 #line 6906 "src/parser_proc.c" /* glr.c:851 */
6908 case 153: /* cpp_header_token */
6909 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6911 #line 6912 "src/parser_proc.c" /* glr.c:851 */
6914 case 154: /* cpp_no_arg_token */
6915 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6917 #line 6918 "src/parser_proc.c" /* glr.c:851 */
6920 case 155: /* cpp_name_arg_token */
6921 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6923 #line 6924 "src/parser_proc.c" /* glr.c:851 */
6926 case 156: /* cpp_exp_arg_token */
6927 #line 289 "src/parser_proc_grammar.y" /* glr.c:851 */
6929 #line 6930 "src/parser_proc.c" /* glr.c:851 */
6932 case 157: /* cpp_macro_decl */
6933 #line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
6934 {psi_cpp_macro_decl_free(&(*(struct psi_cpp_macro_decl
**)(&(*yyvaluep
))));}
6935 #line 6936 "src/parser_proc.c" /* glr.c:851 */
6938 case 158: /* cpp_macro_sig */
6939 #line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
6940 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6941 #line 6942 "src/parser_proc.c" /* glr.c:851 */
6944 case 159: /* cpp_macro_sig_args */
6945 #line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
6946 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6947 #line 6948 "src/parser_proc.c" /* glr.c:851 */
6950 case 160: /* cpp_macro_decl_tokens */
6951 #line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
6952 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6953 #line 6954 "src/parser_proc.c" /* glr.c:851 */
6956 case 161: /* cpp_macro_decl_token_list */
6957 #line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
6958 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6959 #line 6960 "src/parser_proc.c" /* glr.c:851 */
6962 case 162: /* cpp_macro_exp */
6963 #line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
6964 {psi_num_exp_free(&(*(struct psi_num_exp
**)(&(*yyvaluep
))));}
6965 #line 6966 "src/parser_proc.c" /* glr.c:851 */
6968 case 163: /* cpp_macro_call_args */
6969 #line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
6970 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6971 #line 6972 "src/parser_proc.c" /* glr.c:851 */
6974 case 164: /* cpp_macro_call_arg_list */
6975 #line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
6976 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6977 #line 6978 "src/parser_proc.c" /* glr.c:851 */
6980 case 165: /* constant */
6981 #line 313 "src/parser_proc_grammar.y" /* glr.c:851 */
6982 {psi_const_free(&(*(struct psi_const
**)(&(*yyvaluep
))));}
6983 #line 6984 "src/parser_proc.c" /* glr.c:851 */
6986 case 166: /* impl_def_val */
6987 #line 315 "src/parser_proc_grammar.y" /* glr.c:851 */
6988 {psi_impl_def_val_free(&(*(struct psi_impl_def_val
**)(&(*yyvaluep
))));}
6989 #line 6990 "src/parser_proc.c" /* glr.c:851 */
6992 case 167: /* impl_def_val_token */
6993 #line 310 "src/parser_proc_grammar.y" /* glr.c:851 */
6995 #line 6996 "src/parser_proc.c" /* glr.c:851 */
6998 case 168: /* decl_typedef */
6999 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7000 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7001 #line 7002 "src/parser_proc.c" /* glr.c:851 */
7004 case 169: /* typedef */
7005 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7006 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7007 #line 7008 "src/parser_proc.c" /* glr.c:851 */
7010 case 170: /* typedef_anon */
7011 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7012 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7013 #line 7014 "src/parser_proc.c" /* glr.c:851 */
7016 case 171: /* typedef_decl */
7017 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7018 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7019 #line 7020 "src/parser_proc.c" /* glr.c:851 */
7022 case 172: /* typedef_anon_decl */
7023 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7024 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7025 #line 7026 "src/parser_proc.c" /* glr.c:851 */
7028 case 173: /* qualified_decl_type */
7029 #line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
7030 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
7031 #line 7032 "src/parser_proc.c" /* glr.c:851 */
7034 case 175: /* decl_type */
7035 #line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
7036 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
7037 #line 7038 "src/parser_proc.c" /* glr.c:851 */
7040 case 176: /* decl_type_complex */
7041 #line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
7042 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
7043 #line 7044 "src/parser_proc.c" /* glr.c:851 */
7046 case 177: /* decl_type_simple */
7047 #line 318 "src/parser_proc_grammar.y" /* glr.c:851 */
7048 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7049 #line 7050 "src/parser_proc.c" /* glr.c:851 */
7052 case 178: /* decl_real_type */
7053 #line 318 "src/parser_proc_grammar.y" /* glr.c:851 */
7054 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7055 #line 7056 "src/parser_proc.c" /* glr.c:851 */
7058 case 179: /* int_signed */
7059 #line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
7061 #line 7062 "src/parser_proc.c" /* glr.c:851 */
7064 case 180: /* int_width */
7065 #line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
7066 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7067 #line 7068 "src/parser_proc.c" /* glr.c:851 */
7070 case 181: /* decl_int_type */
7071 #line 318 "src/parser_proc_grammar.y" /* glr.c:851 */
7072 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7073 #line 7074 "src/parser_proc.c" /* glr.c:851 */
7076 case 182: /* int_signed_types */
7077 #line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
7078 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7079 #line 7080 "src/parser_proc.c" /* glr.c:851 */
7082 case 183: /* signed_short_types */
7083 #line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
7085 #line 7086 "src/parser_proc.c" /* glr.c:851 */
7088 case 184: /* signed_long_types */
7089 #line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
7091 #line 7092 "src/parser_proc.c" /* glr.c:851 */
7094 case 185: /* int_width_types */
7095 #line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
7096 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7097 #line 7098 "src/parser_proc.c" /* glr.c:851 */
7100 case 186: /* decl_stmt */
7101 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7102 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7103 #line 7104 "src/parser_proc.c" /* glr.c:851 */
7106 case 187: /* decl_asm */
7107 #line 321 "src/parser_proc_grammar.y" /* glr.c:851 */
7108 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7109 #line 7110 "src/parser_proc.c" /* glr.c:851 */
7112 case 188: /* quoted_strings */
7113 #line 321 "src/parser_proc_grammar.y" /* glr.c:851 */
7114 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7115 #line 7116 "src/parser_proc.c" /* glr.c:851 */
7118 case 189: /* decl_extvar_stmt */
7119 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7120 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7121 #line 7122 "src/parser_proc.c" /* glr.c:851 */
7124 case 190: /* decl_extvar_list */
7125 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7126 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7127 #line 7128 "src/parser_proc.c" /* glr.c:851 */
7130 case 191: /* decl_vars */
7131 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7132 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7133 #line 7134 "src/parser_proc.c" /* glr.c:851 */
7136 case 192: /* ignored_decl */
7137 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7138 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7139 #line 7140 "src/parser_proc.c" /* glr.c:851 */
7142 case 197: /* decl */
7143 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7144 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7145 #line 7146 "src/parser_proc.c" /* glr.c:851 */
7148 case 198: /* decl_body */
7149 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7150 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7151 #line 7152 "src/parser_proc.c" /* glr.c:851 */
7154 case 199: /* decl_func_body */
7155 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7156 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7157 #line 7158 "src/parser_proc.c" /* glr.c:851 */
7160 case 200: /* decl_functor_body */
7161 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7162 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7163 #line 7164 "src/parser_proc.c" /* glr.c:851 */
7166 case 201: /* decl_anon_functor_body */
7167 #line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
7168 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7169 #line 7170 "src/parser_proc.c" /* glr.c:851 */
7172 case 202: /* decl_functor */
7173 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7174 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7175 #line 7176 "src/parser_proc.c" /* glr.c:851 */
7178 case 203: /* decl_anon_functor */
7179 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7180 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7181 #line 7182 "src/parser_proc.c" /* glr.c:851 */
7184 case 204: /* decl_func */
7185 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7186 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7187 #line 7188 "src/parser_proc.c" /* glr.c:851 */
7190 case 205: /* decl_args */
7191 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7192 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7193 #line 7194 "src/parser_proc.c" /* glr.c:851 */
7196 case 206: /* decl_arg_list */
7197 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7198 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7199 #line 7200 "src/parser_proc.c" /* glr.c:851 */
7202 case 207: /* decl_anon_arg */
7203 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7204 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7205 #line 7206 "src/parser_proc.c" /* glr.c:851 */
7208 case 208: /* decl_arg */
7209 #line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
7210 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7211 #line 7212 "src/parser_proc.c" /* glr.c:851 */
7214 case 209: /* decl_var */
7215 #line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
7216 {psi_decl_var_free(&(*(struct psi_decl_var
**)(&(*yyvaluep
))));}
7217 #line 7218 "src/parser_proc.c" /* glr.c:851 */
7220 case 210: /* decl_union */
7221 #line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
7222 {psi_decl_union_free(&(*(struct psi_decl_union
**)(&(*yyvaluep
))));}
7223 #line 7224 "src/parser_proc.c" /* glr.c:851 */
7226 case 211: /* decl_struct */
7227 #line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
7228 {psi_decl_struct_free(&(*(struct psi_decl_struct
**)(&(*yyvaluep
))));}
7229 #line 7230 "src/parser_proc.c" /* glr.c:851 */
7232 case 212: /* decl_struct_args */
7233 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7234 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7235 #line 7236 "src/parser_proc.c" /* glr.c:851 */
7238 case 213: /* struct_args_block */
7239 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7240 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7241 #line 7242 "src/parser_proc.c" /* glr.c:851 */
7244 case 214: /* struct_args */
7245 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7246 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7247 #line 7248 "src/parser_proc.c" /* glr.c:851 */
7250 case 215: /* struct_arg_var_list */
7251 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7252 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7253 #line 7254 "src/parser_proc.c" /* glr.c:851 */
7256 case 216: /* decl_vars_with_layout */
7257 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7258 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7259 #line 7260 "src/parser_proc.c" /* glr.c:851 */
7262 case 217: /* decl_enum */
7263 #line 336 "src/parser_proc_grammar.y" /* glr.c:851 */
7264 {psi_decl_enum_free(&(*(struct psi_decl_enum
**)(&(*yyvaluep
))));}
7265 #line 7266 "src/parser_proc.c" /* glr.c:851 */
7268 case 218: /* decl_enum_items */
7269 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7270 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7271 #line 7272 "src/parser_proc.c" /* glr.c:851 */
7274 case 219: /* decl_enum_item */
7275 #line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
7276 {psi_decl_enum_item_free(&(*(struct psi_decl_enum_item
**)(&(*yyvaluep
))));}
7277 #line 7278 "src/parser_proc.c" /* glr.c:851 */
7280 case 220: /* num_exp */
7281 #line 396 "src/parser_proc_grammar.y" /* glr.c:851 */
7282 {psi_num_exp_free(&(*(struct psi_num_exp
**)(&(*yyvaluep
))));}
7283 #line 7284 "src/parser_proc.c" /* glr.c:851 */
7286 case 221: /* number */
7287 #line 398 "src/parser_proc_grammar.y" /* glr.c:851 */
7288 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7289 #line 7290 "src/parser_proc.c" /* glr.c:851 */
7292 case 222: /* sizeof */
7293 #line 348 "src/parser_proc_grammar.y" /* glr.c:851 */
7294 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7295 #line 7296 "src/parser_proc.c" /* glr.c:851 */
7298 case 223: /* sizeof_body */
7299 #line 348 "src/parser_proc_grammar.y" /* glr.c:851 */
7300 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7301 #line 7302 "src/parser_proc.c" /* glr.c:851 */
7304 case 224: /* sizeof_body_notypes */
7305 #line 348 "src/parser_proc_grammar.y" /* glr.c:851 */
7306 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7307 #line 7308 "src/parser_proc.c" /* glr.c:851 */
7310 case 225: /* enum_name */
7311 #line 286 "src/parser_proc_grammar.y" /* glr.c:851 */
7312 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7313 #line 7314 "src/parser_proc.c" /* glr.c:851 */
7316 case 226: /* union_name */
7317 #line 286 "src/parser_proc_grammar.y" /* glr.c:851 */
7318 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7319 #line 7320 "src/parser_proc.c" /* glr.c:851 */
7322 case 227: /* struct_name */
7323 #line 286 "src/parser_proc_grammar.y" /* glr.c:851 */
7324 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7325 #line 7326 "src/parser_proc.c" /* glr.c:851 */
7328 case 228: /* optional_name */
7329 #line 286 "src/parser_proc_grammar.y" /* glr.c:851 */
7330 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7331 #line 7332 "src/parser_proc.c" /* glr.c:851 */
7334 case 230: /* decl_layout */
7335 #line 345 "src/parser_proc_grammar.y" /* glr.c:851 */
7336 {psi_layout_free(&(*(struct psi_layout
**)(&(*yyvaluep
))));}
7337 #line 7338 "src/parser_proc.c" /* glr.c:851 */
7340 case 231: /* align_and_size */
7341 #line 343 "src/parser_proc_grammar.y" /* glr.c:851 */
7343 #line 7344 "src/parser_proc.c" /* glr.c:851 */
7346 case 232: /* array_size */
7347 #line 401 "src/parser_proc_grammar.y" /* glr.c:851 */
7349 #line 7350 "src/parser_proc.c" /* glr.c:851 */
7352 case 234: /* indirection */
7353 #line 401 "src/parser_proc_grammar.y" /* glr.c:851 */
7355 #line 7356 "src/parser_proc.c" /* glr.c:851 */
7358 case 235: /* pointers */
7359 #line 401 "src/parser_proc_grammar.y" /* glr.c:851 */
7361 #line 7362 "src/parser_proc.c" /* glr.c:851 */
7364 case 236: /* asterisks */
7365 #line 401 "src/parser_proc_grammar.y" /* glr.c:851 */
7367 #line 7368 "src/parser_proc.c" /* glr.c:851 */
7370 case 239: /* impl */
7371 #line 351 "src/parser_proc_grammar.y" /* glr.c:851 */
7372 {psi_impl_free(&(*(struct psi_impl
**)(&(*yyvaluep
))));}
7373 #line 7374 "src/parser_proc.c" /* glr.c:851 */
7376 case 240: /* impl_func */
7377 #line 353 "src/parser_proc_grammar.y" /* glr.c:851 */
7378 {psi_impl_func_free(&(*(struct psi_impl_func
**)(&(*yyvaluep
))));}
7379 #line 7380 "src/parser_proc.c" /* glr.c:851 */
7382 case 241: /* impl_args */
7383 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7384 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7385 #line 7386 "src/parser_proc.c" /* glr.c:851 */
7388 case 242: /* impl_arg */
7389 #line 355 "src/parser_proc_grammar.y" /* glr.c:851 */
7390 {psi_impl_arg_free(&(*(struct psi_impl_arg
**)(&(*yyvaluep
))));}
7391 #line 7392 "src/parser_proc.c" /* glr.c:851 */
7394 case 243: /* impl_var */
7395 #line 359 "src/parser_proc_grammar.y" /* glr.c:851 */
7396 {psi_impl_var_free(&(*(struct psi_impl_var
**)(&(*yyvaluep
))));}
7397 #line 7398 "src/parser_proc.c" /* glr.c:851 */
7400 case 244: /* impl_type */
7401 #line 357 "src/parser_proc_grammar.y" /* glr.c:851 */
7402 {psi_impl_type_free(&(*(struct psi_impl_type
**)(&(*yyvaluep
))));}
7403 #line 7404 "src/parser_proc.c" /* glr.c:851 */
7406 case 245: /* impl_type_restricted */
7407 #line 357 "src/parser_proc_grammar.y" /* glr.c:851 */
7408 {psi_impl_type_free(&(*(struct psi_impl_type
**)(&(*yyvaluep
))));}
7409 #line 7410 "src/parser_proc.c" /* glr.c:851 */
7412 case 246: /* impl_type_token */
7413 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7415 #line 7416 "src/parser_proc.c" /* glr.c:851 */
7418 case 247: /* impl_type_restricted_token */
7419 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7421 #line 7422 "src/parser_proc.c" /* glr.c:851 */
7424 case 248: /* impl_type_extended_token */
7425 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7427 #line 7428 "src/parser_proc.c" /* glr.c:851 */
7430 case 249: /* impl_stmts */
7431 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7432 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7433 #line 7434 "src/parser_proc.c" /* glr.c:851 */
7436 case 250: /* impl_stmt */
7437 #line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
7438 {psi_impl_stmt_free(&(*(struct psi_token
***)(&(*yyvaluep
))));}
7439 #line 7440 "src/parser_proc.c" /* glr.c:851 */
7442 case 251: /* let_stmt */
7443 #line 362 "src/parser_proc_grammar.y" /* glr.c:851 */
7444 {psi_let_stmt_free(&(*(struct psi_let_stmt
**)(&(*yyvaluep
))));}
7445 #line 7446 "src/parser_proc.c" /* glr.c:851 */
7448 case 252: /* let_exp */
7449 #line 364 "src/parser_proc_grammar.y" /* glr.c:851 */
7450 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7451 #line 7452 "src/parser_proc.c" /* glr.c:851 */
7454 case 253: /* let_exp_byref */
7455 #line 364 "src/parser_proc_grammar.y" /* glr.c:851 */
7456 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7457 #line 7458 "src/parser_proc.c" /* glr.c:851 */
7460 case 254: /* let_exp_assign */
7461 #line 364 "src/parser_proc_grammar.y" /* glr.c:851 */
7462 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7463 #line 7464 "src/parser_proc.c" /* glr.c:851 */
7466 case 255: /* let_calloc */
7467 #line 366 "src/parser_proc_grammar.y" /* glr.c:851 */
7468 {psi_let_calloc_free(&(*(struct psi_let_calloc
**)(&(*yyvaluep
))));}
7469 #line 7470 "src/parser_proc.c" /* glr.c:851 */
7472 case 256: /* let_callback */
7473 #line 368 "src/parser_proc_grammar.y" /* glr.c:851 */
7474 {psi_let_callback_free(&(*(struct psi_let_callback
**)(&(*yyvaluep
))));}
7475 #line 7476 "src/parser_proc.c" /* glr.c:851 */
7478 case 257: /* let_func */
7479 #line 370 "src/parser_proc_grammar.y" /* glr.c:851 */
7480 {psi_let_func_free(&(*(struct psi_let_func
**)(&(*yyvaluep
))));}
7481 #line 7482 "src/parser_proc.c" /* glr.c:851 */
7484 case 258: /* let_func_token */
7485 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7487 #line 7488 "src/parser_proc.c" /* glr.c:851 */
7490 case 259: /* let_func_exps */
7491 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7492 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7493 #line 7494 "src/parser_proc.c" /* glr.c:851 */
7496 case 260: /* let_exps */
7497 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7498 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7499 #line 7500 "src/parser_proc.c" /* glr.c:851 */
7502 case 261: /* callback_rval */
7503 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7505 #line 7506 "src/parser_proc.c" /* glr.c:851 */
7508 case 262: /* callback_arg_list */
7509 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7510 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7511 #line 7512 "src/parser_proc.c" /* glr.c:851 */
7514 case 263: /* callback_args */
7515 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7516 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7517 #line 7518 "src/parser_proc.c" /* glr.c:851 */
7520 case 264: /* return_stmt */
7521 #line 380 "src/parser_proc_grammar.y" /* glr.c:851 */
7522 {psi_return_stmt_free(&(*(struct psi_return_stmt
**)(&(*yyvaluep
))));}
7523 #line 7524 "src/parser_proc.c" /* glr.c:851 */
7526 case 265: /* return_exp */
7527 #line 382 "src/parser_proc_grammar.y" /* glr.c:851 */
7528 {psi_return_exp_free(&(*(struct psi_return_exp
**)(&(*yyvaluep
))));}
7529 #line 7530 "src/parser_proc.c" /* glr.c:851 */
7532 case 266: /* call_decl_vars */
7533 #line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
7534 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7535 #line 7536 "src/parser_proc.c" /* glr.c:851 */
7538 case 267: /* set_stmt */
7539 #line 372 "src/parser_proc_grammar.y" /* glr.c:851 */
7540 {psi_set_stmt_free(&(*(struct psi_set_stmt
**)(&(*yyvaluep
))));}
7541 #line 7542 "src/parser_proc.c" /* glr.c:851 */
7544 case 268: /* set_exp */
7545 #line 374 "src/parser_proc_grammar.y" /* glr.c:851 */
7546 {psi_set_exp_free(&(*(struct psi_set_exp
**)(&(*yyvaluep
))));}
7547 #line 7548 "src/parser_proc.c" /* glr.c:851 */
7550 case 269: /* set_func */
7551 #line 376 "src/parser_proc_grammar.y" /* glr.c:851 */
7552 {psi_set_func_free(&(*(struct psi_set_func
**)(&(*yyvaluep
))));}
7553 #line 7554 "src/parser_proc.c" /* glr.c:851 */
7556 case 270: /* set_func_token */
7557 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7559 #line 7560 "src/parser_proc.c" /* glr.c:851 */
7562 case 271: /* set_func_exps */
7563 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7564 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7565 #line 7566 "src/parser_proc.c" /* glr.c:851 */
7568 case 272: /* set_exps */
7569 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7570 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7571 #line 7572 "src/parser_proc.c" /* glr.c:851 */
7574 case 273: /* assert_stmt */
7575 #line 378 "src/parser_proc_grammar.y" /* glr.c:851 */
7576 {psi_assert_stmt_free(&(*(struct psi_assert_stmt
**)(&(*yyvaluep
))));}
7577 #line 7578 "src/parser_proc.c" /* glr.c:851 */
7580 case 274: /* assert_stmt_token */
7581 #line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
7583 #line 7584 "src/parser_proc.c" /* glr.c:851 */
7586 case 275: /* free_stmt */
7587 #line 384 "src/parser_proc_grammar.y" /* glr.c:851 */
7588 {psi_free_stmt_free(&(*(struct psi_free_stmt
**)(&(*yyvaluep
))));}
7589 #line 7590 "src/parser_proc.c" /* glr.c:851 */
7592 case 276: /* free_exps */
7593 #line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
7594 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7595 #line 7596 "src/parser_proc.c" /* glr.c:851 */
7598 case 277: /* free_exp */
7599 #line 386 "src/parser_proc_grammar.y" /* glr.c:851 */
7600 {psi_free_exp_free(&(*(struct psi_free_exp
**)(&(*yyvaluep
))));}
7601 #line 7602 "src/parser_proc.c" /* glr.c:851 */
7604 case 278: /* reference */
7605 #line 403 "src/parser_proc_grammar.y" /* glr.c:851 */
7607 #line 7608 "src/parser_proc.c" /* glr.c:851 */
7614 YY_IGNORE_MAYBE_UNINITIALIZED_END
7617 /** Number of symbols composing the right hand side of rule #RULE. */
7619 yyrhsLength (yyRuleNum yyrule
)
7621 return yyr2
[yyrule
];
7625 yydestroyGLRState (char const *yymsg
, yyGLRState
*yys
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
7627 if (yys
->yyresolved
)
7628 yydestruct (yymsg
, yystos
[yys
->yylrState
],
7629 &yys
->yysemantics
.yysval
, P
, tokens
, index
);
7635 if (yys
->yysemantics
.yyfirstVal
)
7636 YYFPRINTF (stderr
, "%s unresolved", yymsg
);
7638 YYFPRINTF (stderr
, "%s incomplete", yymsg
);
7639 YY_SYMBOL_PRINT ("", yystos
[yys
->yylrState
], YY_NULLPTR
, &yys
->yyloc
);
7643 if (yys
->yysemantics
.yyfirstVal
)
7645 yySemanticOption
*yyoption
= yys
->yysemantics
.yyfirstVal
;
7648 for (yyrh
= yyoption
->yystate
, yyn
= yyrhsLength (yyoption
->yyrule
);
7650 yyrh
= yyrh
->yypred
, yyn
-= 1)
7651 yydestroyGLRState (yymsg
, yyrh
, P
, tokens
, index
);
7656 /** Left-hand-side symbol for rule #YYRULE. */
7657 static inline yySymbol
7658 yylhsNonterm (yyRuleNum yyrule
)
7660 return yyr1
[yyrule
];
7663 #define yypact_value_is_default(Yystate) \
7664 (!!((Yystate) == (-710)))
7666 /** True iff LR state YYSTATE has only a default reduction (regardless
7668 static inline yybool
7669 yyisDefaultedState (yyStateNum yystate
)
7671 return (yybool
) yypact_value_is_default (yypact
[yystate
]);
7674 /** The default reduction for YYSTATE, assuming it has one. */
7675 static inline yyRuleNum
7676 yydefaultAction (yyStateNum yystate
)
7678 return yydefact
[yystate
];
7681 #define yytable_value_is_error(Yytable_value) \
7684 /** Set *YYACTION to the action to take in YYSTATE on seeing YYTOKEN.
7686 * R < 0: Reduce on rule -R.
7688 * R > 0: Shift to state R.
7689 * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list
7690 * of conflicting reductions.
7693 yygetLRActions (yyStateNum yystate
, int yytoken
,
7694 int* yyaction
, const short** yyconflicts
)
7696 int yyindex
= yypact
[yystate
] + yytoken
;
7697 if (yyisDefaultedState (yystate
)
7698 || yyindex
< 0 || YYLAST
< yyindex
|| yycheck
[yyindex
] != yytoken
)
7700 *yyaction
= -yydefact
[yystate
];
7701 *yyconflicts
= yyconfl
;
7703 else if (! yytable_value_is_error (yytable
[yyindex
]))
7705 *yyaction
= yytable
[yyindex
];
7706 *yyconflicts
= yyconfl
+ yyconflp
[yyindex
];
7711 *yyconflicts
= yyconfl
+ yyconflp
[yyindex
];
7715 /** Compute post-reduction state.
7716 * \param yystate the current state
7717 * \param yysym the nonterminal to push on the stack
7719 static inline yyStateNum
7720 yyLRgotoState (yyStateNum yystate
, yySymbol yysym
)
7722 int yyr
= yypgoto
[yysym
- YYNTOKENS
] + yystate
;
7723 if (0 <= yyr
&& yyr
<= YYLAST
&& yycheck
[yyr
] == yystate
)
7724 return yytable
[yyr
];
7726 return yydefgoto
[yysym
- YYNTOKENS
];
7729 static inline yybool
7730 yyisShiftAction (int yyaction
)
7732 return (yybool
) (0 < yyaction
);
7735 static inline yybool
7736 yyisErrorAction (int yyaction
)
7738 return (yybool
) (yyaction
== 0);
7743 /** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state
7744 * if YYISSTATE, and otherwise a semantic option. Callers should call
7745 * YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient
7748 static inline yyGLRStackItem
*
7749 yynewGLRStackItem (yyGLRStack
* yystackp
, yybool yyisState
)
7751 yyGLRStackItem
* yynewItem
= yystackp
->yynextFree
;
7752 yystackp
->yyspaceLeft
-= 1;
7753 yystackp
->yynextFree
+= 1;
7754 yynewItem
->yystate
.yyisState
= yyisState
;
7758 /** Add a new semantic action that will execute the action for rule
7759 * YYRULE on the semantic values in YYRHS to the list of
7760 * alternative actions for YYSTATE. Assumes that YYRHS comes from
7761 * stack #YYK of *YYSTACKP. */
7763 yyaddDeferredAction (yyGLRStack
* yystackp
, size_t yyk
, yyGLRState
* yystate
,
7764 yyGLRState
* yyrhs
, yyRuleNum yyrule
)
7766 yySemanticOption
* yynewOption
=
7767 &yynewGLRStackItem (yystackp
, yyfalse
)->yyoption
;
7768 YYASSERT (!yynewOption
->yyisState
);
7769 yynewOption
->yystate
= yyrhs
;
7770 yynewOption
->yyrule
= yyrule
;
7771 if (yystackp
->yytops
.yylookaheadNeeds
[yyk
])
7773 yynewOption
->yyrawchar
= yychar
;
7774 yynewOption
->yyval
= yylval
;
7777 yynewOption
->yyrawchar
= YYEMPTY
;
7778 yynewOption
->yynext
= yystate
->yysemantics
.yyfirstVal
;
7779 yystate
->yysemantics
.yyfirstVal
= yynewOption
;
7781 YY_RESERVE_GLRSTACK (yystackp
);
7786 /** Initialize YYSET to a singleton set containing an empty stack. */
7788 yyinitStateSet (yyGLRStateSet
* yyset
)
7791 yyset
->yycapacity
= 16;
7792 yyset
->yystates
= (yyGLRState
**) YYMALLOC (16 * sizeof yyset
->yystates
[0]);
7793 if (! yyset
->yystates
)
7795 yyset
->yystates
[0] = YY_NULLPTR
;
7796 yyset
->yylookaheadNeeds
=
7797 (yybool
*) YYMALLOC (16 * sizeof yyset
->yylookaheadNeeds
[0]);
7798 if (! yyset
->yylookaheadNeeds
)
7800 YYFREE (yyset
->yystates
);
7806 static void yyfreeStateSet (yyGLRStateSet
* yyset
)
7808 YYFREE (yyset
->yystates
);
7809 YYFREE (yyset
->yylookaheadNeeds
);
7812 /** Initialize *YYSTACKP to a single empty stack, with total maximum
7813 * capacity for all stacks of YYSIZE. */
7815 yyinitGLRStack (yyGLRStack
* yystackp
, size_t yysize
)
7817 yystackp
->yyerrState
= 0;
7819 yystackp
->yyspaceLeft
= yysize
;
7821 (yyGLRStackItem
*) YYMALLOC (yysize
* sizeof yystackp
->yynextFree
[0]);
7822 if (!yystackp
->yyitems
)
7824 yystackp
->yynextFree
= yystackp
->yyitems
;
7825 yystackp
->yysplitPoint
= YY_NULLPTR
;
7826 yystackp
->yylastDeleted
= YY_NULLPTR
;
7827 return yyinitStateSet (&yystackp
->yytops
);
7831 #if YYSTACKEXPANDABLE
7832 # define YYRELOC(YYFROMITEMS,YYTOITEMS,YYX,YYTYPE) \
7833 &((YYTOITEMS) - ((YYFROMITEMS) - (yyGLRStackItem*) (YYX)))->YYTYPE
7835 /** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the
7836 stack from outside should be considered invalid after this call.
7837 We always expand when there are 1 or fewer items left AFTER an
7838 allocation, so that we can avoid having external pointers exist
7839 across an allocation. */
7841 yyexpandGLRStack (yyGLRStack
* yystackp
)
7843 yyGLRStackItem
* yynewItems
;
7844 yyGLRStackItem
* yyp0
, *yyp1
;
7847 size_t yysize
= (size_t) (yystackp
->yynextFree
- yystackp
->yyitems
);
7848 if (YYMAXDEPTH
- YYHEADROOM
< yysize
)
7849 yyMemoryExhausted (yystackp
);
7850 yynewSize
= 2*yysize
;
7851 if (YYMAXDEPTH
< yynewSize
)
7852 yynewSize
= YYMAXDEPTH
;
7853 yynewItems
= (yyGLRStackItem
*) YYMALLOC (yynewSize
* sizeof yynewItems
[0]);
7855 yyMemoryExhausted (yystackp
);
7856 for (yyp0
= yystackp
->yyitems
, yyp1
= yynewItems
, yyn
= yysize
;
7858 yyn
-= 1, yyp0
+= 1, yyp1
+= 1)
7861 if (*(yybool
*) yyp0
)
7863 yyGLRState
* yys0
= &yyp0
->yystate
;
7864 yyGLRState
* yys1
= &yyp1
->yystate
;
7865 if (yys0
->yypred
!= YY_NULLPTR
)
7867 YYRELOC (yyp0
, yyp1
, yys0
->yypred
, yystate
);
7868 if (! yys0
->yyresolved
&& yys0
->yysemantics
.yyfirstVal
!= YY_NULLPTR
)
7869 yys1
->yysemantics
.yyfirstVal
=
7870 YYRELOC (yyp0
, yyp1
, yys0
->yysemantics
.yyfirstVal
, yyoption
);
7874 yySemanticOption
* yyv0
= &yyp0
->yyoption
;
7875 yySemanticOption
* yyv1
= &yyp1
->yyoption
;
7876 if (yyv0
->yystate
!= YY_NULLPTR
)
7877 yyv1
->yystate
= YYRELOC (yyp0
, yyp1
, yyv0
->yystate
, yystate
);
7878 if (yyv0
->yynext
!= YY_NULLPTR
)
7879 yyv1
->yynext
= YYRELOC (yyp0
, yyp1
, yyv0
->yynext
, yyoption
);
7882 if (yystackp
->yysplitPoint
!= YY_NULLPTR
)
7883 yystackp
->yysplitPoint
= YYRELOC (yystackp
->yyitems
, yynewItems
,
7884 yystackp
->yysplitPoint
, yystate
);
7886 for (yyn
= 0; yyn
< yystackp
->yytops
.yysize
; yyn
+= 1)
7887 if (yystackp
->yytops
.yystates
[yyn
] != YY_NULLPTR
)
7888 yystackp
->yytops
.yystates
[yyn
] =
7889 YYRELOC (yystackp
->yyitems
, yynewItems
,
7890 yystackp
->yytops
.yystates
[yyn
], yystate
);
7891 YYFREE (yystackp
->yyitems
);
7892 yystackp
->yyitems
= yynewItems
;
7893 yystackp
->yynextFree
= yynewItems
+ yysize
;
7894 yystackp
->yyspaceLeft
= yynewSize
- yysize
;
7899 yyfreeGLRStack (yyGLRStack
* yystackp
)
7901 YYFREE (yystackp
->yyitems
);
7902 yyfreeStateSet (&yystackp
->yytops
);
7905 /** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the
7906 * splitpoint of *YYSTACKP, if needed, so that it is at least as deep as
7909 yyupdateSplit (yyGLRStack
* yystackp
, yyGLRState
* yys
)
7911 if (yystackp
->yysplitPoint
!= YY_NULLPTR
&& yystackp
->yysplitPoint
> yys
)
7912 yystackp
->yysplitPoint
= yys
;
7915 /** Invalidate stack #YYK in *YYSTACKP. */
7917 yymarkStackDeleted (yyGLRStack
* yystackp
, size_t yyk
)
7919 if (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
7920 yystackp
->yylastDeleted
= yystackp
->yytops
.yystates
[yyk
];
7921 yystackp
->yytops
.yystates
[yyk
] = YY_NULLPTR
;
7924 /** Undelete the last stack in *YYSTACKP that was marked as deleted. Can
7925 only be done once after a deletion, and only when all other stacks have
7928 yyundeleteLastStack (yyGLRStack
* yystackp
)
7930 if (yystackp
->yylastDeleted
== YY_NULLPTR
|| yystackp
->yytops
.yysize
!= 0)
7932 yystackp
->yytops
.yystates
[0] = yystackp
->yylastDeleted
;
7933 yystackp
->yytops
.yysize
= 1;
7934 YYDPRINTF ((stderr
, "Restoring last deleted stack as stack #0.\n"));
7935 yystackp
->yylastDeleted
= YY_NULLPTR
;
7939 yyremoveDeletes (yyGLRStack
* yystackp
)
7943 while (yyj
< yystackp
->yytops
.yysize
)
7945 if (yystackp
->yytops
.yystates
[yyi
] == YY_NULLPTR
)
7949 YYDPRINTF ((stderr
, "Removing dead stacks.\n"));
7951 yystackp
->yytops
.yysize
-= 1;
7955 yystackp
->yytops
.yystates
[yyj
] = yystackp
->yytops
.yystates
[yyi
];
7956 /* In the current implementation, it's unnecessary to copy
7957 yystackp->yytops.yylookaheadNeeds[yyi] since, after
7958 yyremoveDeletes returns, the parser immediately either enters
7959 deterministic operation or shifts a token. However, it doesn't
7960 hurt, and the code might evolve to need it. */
7961 yystackp
->yytops
.yylookaheadNeeds
[yyj
] =
7962 yystackp
->yytops
.yylookaheadNeeds
[yyi
];
7965 YYDPRINTF ((stderr
, "Rename stack %lu -> %lu.\n",
7966 (unsigned long) yyi
, (unsigned long) yyj
));
7974 /** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR
7975 * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic
7976 * value *YYVALP and source location *YYLOCP. */
7978 yyglrShift (yyGLRStack
* yystackp
, size_t yyk
, yyStateNum yylrState
,
7982 yyGLRState
* yynewState
= &yynewGLRStackItem (yystackp
, yytrue
)->yystate
;
7984 yynewState
->yylrState
= yylrState
;
7985 yynewState
->yyposn
= yyposn
;
7986 yynewState
->yyresolved
= yytrue
;
7987 yynewState
->yypred
= yystackp
->yytops
.yystates
[yyk
];
7988 yynewState
->yysemantics
.yysval
= *yyvalp
;
7989 yystackp
->yytops
.yystates
[yyk
] = yynewState
;
7991 YY_RESERVE_GLRSTACK (yystackp
);
7994 /** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR
7995 * state YYLRSTATE, at input position YYPOSN, with the (unresolved)
7996 * semantic value of YYRHS under the action for YYRULE. */
7998 yyglrShiftDefer (yyGLRStack
* yystackp
, size_t yyk
, yyStateNum yylrState
,
7999 size_t yyposn
, yyGLRState
* yyrhs
, yyRuleNum yyrule
)
8001 yyGLRState
* yynewState
= &yynewGLRStackItem (yystackp
, yytrue
)->yystate
;
8002 YYASSERT (yynewState
->yyisState
);
8004 yynewState
->yylrState
= yylrState
;
8005 yynewState
->yyposn
= yyposn
;
8006 yynewState
->yyresolved
= yyfalse
;
8007 yynewState
->yypred
= yystackp
->yytops
.yystates
[yyk
];
8008 yynewState
->yysemantics
.yyfirstVal
= YY_NULLPTR
;
8009 yystackp
->yytops
.yystates
[yyk
] = yynewState
;
8011 /* Invokes YY_RESERVE_GLRSTACK. */
8012 yyaddDeferredAction (yystackp
, yyk
, yynewState
, yyrhs
, yyrule
);
8016 # define YY_REDUCE_PRINT(Args)
8018 # define YY_REDUCE_PRINT(Args) \
8021 yy_reduce_print Args; \
8024 /*----------------------------------------------------------------------.
8025 | Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. |
8026 `----------------------------------------------------------------------*/
8029 yy_reduce_print (yybool yynormal
, yyGLRStackItem
* yyvsp
, size_t yyk
,
8030 yyRuleNum yyrule
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8032 int yynrhs
= yyrhsLength (yyrule
);
8034 YYFPRINTF (stderr
, "Reducing stack %lu by rule %d (line %lu):\n",
8035 (unsigned long) yyk
, yyrule
- 1,
8036 (unsigned long) yyrline
[yyrule
]);
8038 yyfillin (yyvsp
, 1, -yynrhs
);
8039 /* The symbols being reduced. */
8040 for (yyi
= 0; yyi
< yynrhs
; yyi
++)
8042 YYFPRINTF (stderr
, " $%d = ", yyi
+ 1);
8043 yy_symbol_print (stderr
,
8044 yystos
[yyvsp
[yyi
- yynrhs
+ 1].yystate
.yylrState
],
8045 &yyvsp
[yyi
- yynrhs
+ 1].yystate
.yysemantics
.yysval
, P
, tokens
, index
);
8046 if (!yyvsp
[yyi
- yynrhs
+ 1].yystate
.yyresolved
)
8047 YYFPRINTF (stderr
, " (unresolved)");
8048 YYFPRINTF (stderr
, "\n");
8053 /** Pop the symbols consumed by reduction #YYRULE from the top of stack
8054 * #YYK of *YYSTACKP, and perform the appropriate semantic action on their
8055 * semantic values. Assumes that all ambiguities in semantic values
8056 * have been previously resolved. Set *YYVALP to the resulting value,
8057 * and *YYLOCP to the computed location (if any). Return value is as
8058 * for userAction. */
8059 static inline YYRESULTTAG
8060 yydoAction (yyGLRStack
* yystackp
, size_t yyk
, yyRuleNum yyrule
,
8061 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8063 int yynrhs
= yyrhsLength (yyrule
);
8065 if (yystackp
->yysplitPoint
== YY_NULLPTR
)
8067 /* Standard special case: single stack. */
8068 yyGLRStackItem
* yyrhs
= (yyGLRStackItem
*) yystackp
->yytops
.yystates
[yyk
];
8069 YYASSERT (yyk
== 0);
8070 yystackp
->yynextFree
-= yynrhs
;
8071 yystackp
->yyspaceLeft
+= (size_t) yynrhs
;
8072 yystackp
->yytops
.yystates
[0] = & yystackp
->yynextFree
[-1].yystate
;
8073 YY_REDUCE_PRINT ((yytrue
, yyrhs
, yyk
, yyrule
, P
, tokens
, index
));
8074 return yyuserAction (yyrule
, yynrhs
, yyrhs
, yystackp
,
8075 yyvalp
, P
, tokens
, index
);
8081 yyGLRStackItem yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
+ 1];
8082 yys
= yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
].yystate
.yypred
8083 = yystackp
->yytops
.yystates
[yyk
];
8084 for (yyi
= 0; yyi
< yynrhs
; yyi
+= 1)
8089 yyupdateSplit (yystackp
, yys
);
8090 yystackp
->yytops
.yystates
[yyk
] = yys
;
8091 YY_REDUCE_PRINT ((yyfalse
, yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1, yyk
, yyrule
, P
, tokens
, index
));
8092 return yyuserAction (yyrule
, yynrhs
, yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1,
8093 yystackp
, yyvalp
, P
, tokens
, index
);
8097 /** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE,
8098 * and push back on the resulting nonterminal symbol. Perform the
8099 * semantic action associated with YYRULE and store its value with the
8100 * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently
8101 * unambiguous. Otherwise, store the deferred semantic action with
8102 * the new state. If the new state would have an identical input
8103 * position, LR state, and predecessor to an existing state on the stack,
8104 * it is identified with that existing state, eliminating stack #YYK from
8105 * *YYSTACKP. In this case, the semantic value is
8106 * added to the options for the existing state's semantic value.
8108 static inline YYRESULTTAG
8109 yyglrReduce (yyGLRStack
* yystackp
, size_t yyk
, yyRuleNum yyrule
,
8110 yybool yyforceEval
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8112 size_t yyposn
= yystackp
->yytops
.yystates
[yyk
]->yyposn
;
8114 if (yyforceEval
|| yystackp
->yysplitPoint
== YY_NULLPTR
)
8118 YYRESULTTAG yyflag
= yydoAction (yystackp
, yyk
, yyrule
, &yysval
, P
, tokens
, index
);
8119 if (yyflag
== yyerr
&& yystackp
->yysplitPoint
!= YY_NULLPTR
)
8121 YYDPRINTF ((stderr
, "Parse on stack %lu rejected by rule #%d.\n",
8122 (unsigned long) yyk
, yyrule
- 1));
8126 YY_SYMBOL_PRINT ("-> $$ =", yyr1
[yyrule
], &yysval
, &yyloc
);
8127 yyglrShift (yystackp
, yyk
,
8128 yyLRgotoState (yystackp
->yytops
.yystates
[yyk
]->yylrState
,
8129 yylhsNonterm (yyrule
)),
8136 yyGLRState
* yys
, *yys0
= yystackp
->yytops
.yystates
[yyk
];
8137 yyStateNum yynewLRState
;
8139 for (yys
= yystackp
->yytops
.yystates
[yyk
], yyn
= yyrhsLength (yyrule
);
8145 yyupdateSplit (yystackp
, yys
);
8146 yynewLRState
= yyLRgotoState (yys
->yylrState
, yylhsNonterm (yyrule
));
8148 "Reduced stack %lu by rule #%d; action deferred. "
8149 "Now in state %d.\n",
8150 (unsigned long) yyk
, yyrule
- 1, yynewLRState
));
8151 for (yyi
= 0; yyi
< yystackp
->yytops
.yysize
; yyi
+= 1)
8152 if (yyi
!= yyk
&& yystackp
->yytops
.yystates
[yyi
] != YY_NULLPTR
)
8154 yyGLRState
*yysplit
= yystackp
->yysplitPoint
;
8155 yyGLRState
*yyp
= yystackp
->yytops
.yystates
[yyi
];
8156 while (yyp
!= yys
&& yyp
!= yysplit
&& yyp
->yyposn
>= yyposn
)
8158 if (yyp
->yylrState
== yynewLRState
&& yyp
->yypred
== yys
)
8160 yyaddDeferredAction (yystackp
, yyk
, yyp
, yys0
, yyrule
);
8161 yymarkStackDeleted (yystackp
, yyk
);
8162 YYDPRINTF ((stderr
, "Merging stack %lu into stack %lu.\n",
8163 (unsigned long) yyk
,
8164 (unsigned long) yyi
));
8170 yystackp
->yytops
.yystates
[yyk
] = yys
;
8171 yyglrShiftDefer (yystackp
, yyk
, yynewLRState
, yyposn
, yys0
, yyrule
);
8177 yysplitStack (yyGLRStack
* yystackp
, size_t yyk
)
8179 if (yystackp
->yysplitPoint
== YY_NULLPTR
)
8181 YYASSERT (yyk
== 0);
8182 yystackp
->yysplitPoint
= yystackp
->yytops
.yystates
[yyk
];
8184 if (yystackp
->yytops
.yysize
>= yystackp
->yytops
.yycapacity
)
8186 yyGLRState
** yynewStates
= YY_NULLPTR
;
8187 yybool
* yynewLookaheadNeeds
;
8189 if (yystackp
->yytops
.yycapacity
8190 > (YYSIZEMAX
/ (2 * sizeof yynewStates
[0])))
8191 yyMemoryExhausted (yystackp
);
8192 yystackp
->yytops
.yycapacity
*= 2;
8195 (yyGLRState
**) YYREALLOC (yystackp
->yytops
.yystates
,
8196 (yystackp
->yytops
.yycapacity
8197 * sizeof yynewStates
[0]));
8198 if (yynewStates
== YY_NULLPTR
)
8199 yyMemoryExhausted (yystackp
);
8200 yystackp
->yytops
.yystates
= yynewStates
;
8202 yynewLookaheadNeeds
=
8203 (yybool
*) YYREALLOC (yystackp
->yytops
.yylookaheadNeeds
,
8204 (yystackp
->yytops
.yycapacity
8205 * sizeof yynewLookaheadNeeds
[0]));
8206 if (yynewLookaheadNeeds
== YY_NULLPTR
)
8207 yyMemoryExhausted (yystackp
);
8208 yystackp
->yytops
.yylookaheadNeeds
= yynewLookaheadNeeds
;
8210 yystackp
->yytops
.yystates
[yystackp
->yytops
.yysize
]
8211 = yystackp
->yytops
.yystates
[yyk
];
8212 yystackp
->yytops
.yylookaheadNeeds
[yystackp
->yytops
.yysize
]
8213 = yystackp
->yytops
.yylookaheadNeeds
[yyk
];
8214 yystackp
->yytops
.yysize
+= 1;
8215 return yystackp
->yytops
.yysize
-1;
8218 /** True iff YYY0 and YYY1 represent identical options at the top level.
8219 * That is, they represent the same rule applied to RHS symbols
8220 * that produce the same terminal symbols. */
8222 yyidenticalOptions (yySemanticOption
* yyy0
, yySemanticOption
* yyy1
)
8224 if (yyy0
->yyrule
== yyy1
->yyrule
)
8226 yyGLRState
*yys0
, *yys1
;
8228 for (yys0
= yyy0
->yystate
, yys1
= yyy1
->yystate
,
8229 yyn
= yyrhsLength (yyy0
->yyrule
);
8231 yys0
= yys0
->yypred
, yys1
= yys1
->yypred
, yyn
-= 1)
8232 if (yys0
->yyposn
!= yys1
->yyposn
)
8240 /** Assuming identicalOptions (YYY0,YYY1), destructively merge the
8241 * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */
8243 yymergeOptionSets (yySemanticOption
* yyy0
, yySemanticOption
* yyy1
)
8245 yyGLRState
*yys0
, *yys1
;
8247 for (yys0
= yyy0
->yystate
, yys1
= yyy1
->yystate
,
8248 yyn
= yyrhsLength (yyy0
->yyrule
);
8250 yys0
= yys0
->yypred
, yys1
= yys1
->yypred
, yyn
-= 1)
8254 else if (yys0
->yyresolved
)
8256 yys1
->yyresolved
= yytrue
;
8257 yys1
->yysemantics
.yysval
= yys0
->yysemantics
.yysval
;
8259 else if (yys1
->yyresolved
)
8261 yys0
->yyresolved
= yytrue
;
8262 yys0
->yysemantics
.yysval
= yys1
->yysemantics
.yysval
;
8266 yySemanticOption
** yyz0p
= &yys0
->yysemantics
.yyfirstVal
;
8267 yySemanticOption
* yyz1
= yys1
->yysemantics
.yyfirstVal
;
8270 if (yyz1
== *yyz0p
|| yyz1
== YY_NULLPTR
)
8272 else if (*yyz0p
== YY_NULLPTR
)
8277 else if (*yyz0p
< yyz1
)
8279 yySemanticOption
* yyz
= *yyz0p
;
8281 yyz1
= yyz1
->yynext
;
8282 (*yyz0p
)->yynext
= yyz
;
8284 yyz0p
= &(*yyz0p
)->yynext
;
8286 yys1
->yysemantics
.yyfirstVal
= yys0
->yysemantics
.yyfirstVal
;
8291 /** Y0 and Y1 represent two possible actions to take in a given
8292 * parsing state; return 0 if no combination is possible,
8293 * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */
8295 yypreference (yySemanticOption
* y0
, yySemanticOption
* y1
)
8297 yyRuleNum r0
= y0
->yyrule
, r1
= y1
->yyrule
;
8298 int p0
= yydprec
[r0
], p1
= yydprec
[r1
];
8302 if (yymerger
[r0
] == 0 || yymerger
[r0
] != yymerger
[r1
])
8307 if (p0
== 0 || p1
== 0)
8316 static YYRESULTTAG
yyresolveValue (yyGLRState
* yys
,
8317 yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
);
8320 /** Resolve the previous YYN states starting at and including state YYS
8321 * on *YYSTACKP. If result != yyok, some states may have been left
8322 * unresolved possibly with empty semantic option chains. Regardless
8323 * of whether result = yyok, each state has been left with consistent
8324 * data so that yydestroyGLRState can be invoked if necessary. */
8326 yyresolveStates (yyGLRState
* yys
, int yyn
,
8327 yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8331 YYASSERT (yys
->yypred
);
8332 YYCHK (yyresolveStates (yys
->yypred
, yyn
-1, yystackp
, P
, tokens
, index
));
8333 if (! yys
->yyresolved
)
8334 YYCHK (yyresolveValue (yys
, yystackp
, P
, tokens
, index
));
8339 /** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its
8340 * user action, and return the semantic value and location in *YYVALP
8341 * and *YYLOCP. Regardless of whether result = yyok, all RHS states
8342 * have been destroyed (assuming the user action destroys all RHS
8343 * semantic values if invoked). */
8345 yyresolveAction (yySemanticOption
* yyopt
, yyGLRStack
* yystackp
,
8346 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8348 yyGLRStackItem yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
+ 1];
8349 int yynrhs
= yyrhsLength (yyopt
->yyrule
);
8350 YYRESULTTAG yyflag
=
8351 yyresolveStates (yyopt
->yystate
, yynrhs
, yystackp
, P
, tokens
, index
);
8355 for (yys
= yyopt
->yystate
; yynrhs
> 0; yys
= yys
->yypred
, yynrhs
-= 1)
8356 yydestroyGLRState ("Cleanup: popping", yys
, P
, tokens
, index
);
8360 yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
].yystate
.yypred
= yyopt
->yystate
;
8362 int yychar_current
= yychar
;
8363 YYSTYPE yylval_current
= yylval
;
8364 yychar
= yyopt
->yyrawchar
;
8365 yylval
= yyopt
->yyval
;
8366 yyflag
= yyuserAction (yyopt
->yyrule
, yynrhs
,
8367 yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1,
8368 yystackp
, yyvalp
, P
, tokens
, index
);
8369 yychar
= yychar_current
;
8370 yylval
= yylval_current
;
8377 yyreportTree (yySemanticOption
* yyx
, int yyindent
)
8379 int yynrhs
= yyrhsLength (yyx
->yyrule
);
8382 yyGLRState
* yystates
[1 + YYMAXRHS
];
8383 yyGLRState yyleftmost_state
;
8385 for (yyi
= yynrhs
, yys
= yyx
->yystate
; 0 < yyi
; yyi
-= 1, yys
= yys
->yypred
)
8386 yystates
[yyi
] = yys
;
8387 if (yys
== YY_NULLPTR
)
8389 yyleftmost_state
.yyposn
= 0;
8390 yystates
[0] = &yyleftmost_state
;
8395 if (yyx
->yystate
->yyposn
< yys
->yyposn
+ 1)
8396 YYFPRINTF (stderr
, "%*s%s -> <Rule %d, empty>\n",
8397 yyindent
, "", yytokenName (yylhsNonterm (yyx
->yyrule
)),
8400 YYFPRINTF (stderr
, "%*s%s -> <Rule %d, tokens %lu .. %lu>\n",
8401 yyindent
, "", yytokenName (yylhsNonterm (yyx
->yyrule
)),
8402 yyx
->yyrule
- 1, (unsigned long) (yys
->yyposn
+ 1),
8403 (unsigned long) yyx
->yystate
->yyposn
);
8404 for (yyi
= 1; yyi
<= yynrhs
; yyi
+= 1)
8406 if (yystates
[yyi
]->yyresolved
)
8408 if (yystates
[yyi
-1]->yyposn
+1 > yystates
[yyi
]->yyposn
)
8409 YYFPRINTF (stderr
, "%*s%s <empty>\n", yyindent
+2, "",
8410 yytokenName (yystos
[yystates
[yyi
]->yylrState
]));
8412 YYFPRINTF (stderr
, "%*s%s <tokens %lu .. %lu>\n", yyindent
+2, "",
8413 yytokenName (yystos
[yystates
[yyi
]->yylrState
]),
8414 (unsigned long) (yystates
[yyi
-1]->yyposn
+ 1),
8415 (unsigned long) yystates
[yyi
]->yyposn
);
8418 yyreportTree (yystates
[yyi
]->yysemantics
.yyfirstVal
, yyindent
+2);
8424 yyreportAmbiguity (yySemanticOption
* yyx0
,
8425 yySemanticOption
* yyx1
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8431 YYFPRINTF (stderr
, "Ambiguity detected.\n");
8432 YYFPRINTF (stderr
, "Option 1,\n");
8433 yyreportTree (yyx0
, 2);
8434 YYFPRINTF (stderr
, "\nOption 2,\n");
8435 yyreportTree (yyx1
, 2);
8436 YYFPRINTF (stderr
, "\n");
8439 yyerror (P
, tokens
, index
, YY_("syntax is ambiguous"));
8443 /** Resolve the ambiguity represented in state YYS in *YYSTACKP,
8444 * perform the indicated actions, and set the semantic value of YYS.
8445 * If result != yyok, the chain of semantic options in YYS has been
8446 * cleared instead or it has been left unmodified except that
8447 * redundant options may have been removed. Regardless of whether
8448 * result = yyok, YYS has been left with consistent data so that
8449 * yydestroyGLRState can be invoked if necessary. */
8451 yyresolveValue (yyGLRState
* yys
, yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8453 yySemanticOption
* yyoptionList
= yys
->yysemantics
.yyfirstVal
;
8454 yySemanticOption
* yybest
= yyoptionList
;
8455 yySemanticOption
** yypp
;
8456 yybool yymerge
= yyfalse
;
8460 for (yypp
= &yyoptionList
->yynext
; *yypp
!= YY_NULLPTR
; )
8462 yySemanticOption
* yyp
= *yypp
;
8464 if (yyidenticalOptions (yybest
, yyp
))
8466 yymergeOptionSets (yybest
, yyp
);
8467 *yypp
= yyp
->yynext
;
8471 switch (yypreference (yybest
, yyp
))
8474 return yyreportAmbiguity (yybest
, yyp
, P
, tokens
, index
);
8486 /* This cannot happen so it is not worth a YYASSERT (yyfalse),
8487 but some compilers complain if the default case is
8491 yypp
= &yyp
->yynext
;
8497 yySemanticOption
* yyp
;
8498 int yyprec
= yydprec
[yybest
->yyrule
];
8499 yyflag
= yyresolveAction (yybest
, yystackp
, &yysval
, P
, tokens
, index
);
8501 for (yyp
= yybest
->yynext
; yyp
!= YY_NULLPTR
; yyp
= yyp
->yynext
)
8503 if (yyprec
== yydprec
[yyp
->yyrule
])
8505 YYSTYPE yysval_other
;
8506 yyflag
= yyresolveAction (yyp
, yystackp
, &yysval_other
, P
, tokens
, index
);
8509 yydestruct ("Cleanup: discarding incompletely merged value for",
8510 yystos
[yys
->yylrState
],
8511 &yysval
, P
, tokens
, index
);
8514 yyuserMerge (yymerger
[yyp
->yyrule
], &yysval
, &yysval_other
);
8519 yyflag
= yyresolveAction (yybest
, yystackp
, &yysval
, P
, tokens
, index
);
8523 yys
->yyresolved
= yytrue
;
8524 yys
->yysemantics
.yysval
= yysval
;
8527 yys
->yysemantics
.yyfirstVal
= YY_NULLPTR
;
8532 yyresolveStack (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8534 if (yystackp
->yysplitPoint
!= YY_NULLPTR
)
8539 for (yyn
= 0, yys
= yystackp
->yytops
.yystates
[0];
8540 yys
!= yystackp
->yysplitPoint
;
8541 yys
= yys
->yypred
, yyn
+= 1)
8543 YYCHK (yyresolveStates (yystackp
->yytops
.yystates
[0], yyn
, yystackp
8544 , P
, tokens
, index
));
8550 yycompressStack (yyGLRStack
* yystackp
)
8552 yyGLRState
* yyp
, *yyq
, *yyr
;
8554 if (yystackp
->yytops
.yysize
!= 1 || yystackp
->yysplitPoint
== YY_NULLPTR
)
8557 for (yyp
= yystackp
->yytops
.yystates
[0], yyq
= yyp
->yypred
, yyr
= YY_NULLPTR
;
8558 yyp
!= yystackp
->yysplitPoint
;
8559 yyr
= yyp
, yyp
= yyq
, yyq
= yyp
->yypred
)
8562 yystackp
->yyspaceLeft
+= (size_t) (yystackp
->yynextFree
- yystackp
->yyitems
);
8563 yystackp
->yynextFree
= ((yyGLRStackItem
*) yystackp
->yysplitPoint
) + 1;
8564 yystackp
->yyspaceLeft
-= (size_t) (yystackp
->yynextFree
- yystackp
->yyitems
);
8565 yystackp
->yysplitPoint
= YY_NULLPTR
;
8566 yystackp
->yylastDeleted
= YY_NULLPTR
;
8568 while (yyr
!= YY_NULLPTR
)
8570 yystackp
->yynextFree
->yystate
= *yyr
;
8572 yystackp
->yynextFree
->yystate
.yypred
= &yystackp
->yynextFree
[-1].yystate
;
8573 yystackp
->yytops
.yystates
[0] = &yystackp
->yynextFree
->yystate
;
8574 yystackp
->yynextFree
+= 1;
8575 yystackp
->yyspaceLeft
-= 1;
8580 yyprocessOneStack (yyGLRStack
* yystackp
, size_t yyk
,
8581 size_t yyposn
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8583 while (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
8585 yyStateNum yystate
= yystackp
->yytops
.yystates
[yyk
]->yylrState
;
8586 YYDPRINTF ((stderr
, "Stack %lu Entering state %d\n",
8587 (unsigned long) yyk
, yystate
));
8589 YYASSERT (yystate
!= YYFINAL
);
8591 if (yyisDefaultedState (yystate
))
8594 yyRuleNum yyrule
= yydefaultAction (yystate
);
8597 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8598 (unsigned long) yyk
));
8599 yymarkStackDeleted (yystackp
, yyk
);
8602 yyflag
= yyglrReduce (yystackp
, yyk
, yyrule
, yyimmediate
[yyrule
], P
, tokens
, index
);
8603 if (yyflag
== yyerr
)
8607 "(predicate failure or explicit user error).\n",
8608 (unsigned long) yyk
));
8609 yymarkStackDeleted (yystackp
, yyk
);
8619 const short* yyconflicts
;
8621 yystackp
->yytops
.yylookaheadNeeds
[yyk
] = yytrue
;
8622 if (yychar
== YYEMPTY
)
8624 YYDPRINTF ((stderr
, "Reading a token: "));
8625 yychar
= yylex (&yylval
, P
, tokens
, index
);
8628 if (yychar
<= YYEOF
)
8630 yychar
= yytoken
= YYEOF
;
8631 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8635 yytoken
= YYTRANSLATE (yychar
);
8636 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8639 yygetLRActions (yystate
, yytoken
, &yyaction
, &yyconflicts
);
8641 while (*yyconflicts
!= 0)
8644 size_t yynewStack
= yysplitStack (yystackp
, yyk
);
8645 YYDPRINTF ((stderr
, "Splitting off stack %lu from %lu.\n",
8646 (unsigned long) yynewStack
,
8647 (unsigned long) yyk
));
8648 yyflag
= yyglrReduce (yystackp
, yynewStack
,
8650 yyimmediate
[*yyconflicts
], P
, tokens
, index
);
8652 YYCHK (yyprocessOneStack (yystackp
, yynewStack
,
8653 yyposn
, P
, tokens
, index
));
8654 else if (yyflag
== yyerr
)
8656 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8657 (unsigned long) yynewStack
));
8658 yymarkStackDeleted (yystackp
, yynewStack
);
8665 if (yyisShiftAction (yyaction
))
8667 else if (yyisErrorAction (yyaction
))
8669 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8670 (unsigned long) yyk
));
8671 yymarkStackDeleted (yystackp
, yyk
);
8676 YYRESULTTAG yyflag
= yyglrReduce (yystackp
, yyk
, -yyaction
,
8677 yyimmediate
[-yyaction
], P
, tokens
, index
);
8678 if (yyflag
== yyerr
)
8682 "(predicate failure or explicit user error).\n",
8683 (unsigned long) yyk
));
8684 yymarkStackDeleted (yystackp
, yyk
);
8687 else if (yyflag
!= yyok
)
8696 yyreportSyntaxError (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8698 if (yystackp
->yyerrState
!= 0)
8700 #if ! YYERROR_VERBOSE
8701 yyerror (P
, tokens
, index
, YY_("syntax error"));
8704 yySymbol yytoken
= yychar
== YYEMPTY
? YYEMPTY
: YYTRANSLATE (yychar
);
8705 size_t yysize0
= yytnamerr (YY_NULLPTR
, yytokenName (yytoken
));
8706 size_t yysize
= yysize0
;
8707 yybool yysize_overflow
= yyfalse
;
8708 char* yymsg
= YY_NULLPTR
;
8709 enum { YYERROR_VERBOSE_ARGS_MAXIMUM
= 5 };
8710 /* Internationalized format string. */
8711 const char *yyformat
= YY_NULLPTR
;
8712 /* Arguments of yyformat. */
8713 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
8714 /* Number of reported tokens (one for the "unexpected", one per
8718 /* There are many possibilities here to consider:
8719 - If this state is a consistent state with a default action, then
8720 the only way this function was invoked is if the default action
8721 is an error action. In that case, don't check for expected
8722 tokens because there are none.
8723 - The only way there can be no lookahead present (in yychar) is if
8724 this state is a consistent state with a default action. Thus,
8725 detecting the absence of a lookahead is sufficient to determine
8726 that there is no unexpected or expected token to report. In that
8727 case, just report a simple "syntax error".
8728 - Don't assume there isn't a lookahead just because this state is a
8729 consistent state with a default action. There might have been a
8730 previous inconsistent state, consistent state with a non-default
8731 action, or user semantic action that manipulated yychar.
8732 - Of course, the expected token list depends on states to have
8733 correct lookahead information, and it depends on the parser not
8734 to perform extra reductions after fetching a lookahead from the
8735 scanner and before detecting a syntax error. Thus, state merging
8736 (from LALR or IELR) and default reductions corrupt the expected
8737 token list. However, the list is correct for canonical LR with
8738 one exception: it will still contain any token that will not be
8739 accepted due to an error action in a later state.
8741 if (yytoken
!= YYEMPTY
)
8743 int yyn
= yypact
[yystackp
->yytops
.yystates
[0]->yylrState
];
8744 yyarg
[yycount
++] = yytokenName (yytoken
);
8745 if (!yypact_value_is_default (yyn
))
8747 /* Start YYX at -YYN if negative to avoid negative indexes in
8748 YYCHECK. In other words, skip the first -YYN actions for this
8749 state because they are default actions. */
8750 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
8751 /* Stay within bounds of both yycheck and yytname. */
8752 int yychecklim
= YYLAST
- yyn
+ 1;
8753 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
8755 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
8756 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
8757 && !yytable_value_is_error (yytable
[yyx
+ yyn
]))
8759 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
8765 yyarg
[yycount
++] = yytokenName (yyx
);
8767 size_t yysz
= yysize
+ yytnamerr (YY_NULLPTR
, yytokenName (yyx
));
8769 yysize_overflow
= yytrue
;
8778 #define YYCASE_(N, S) \
8782 default: /* Avoid compiler warnings. */
8783 YYCASE_(0, YY_("syntax error"));
8784 YYCASE_(1, YY_("syntax error, unexpected %s"));
8785 YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
8786 YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
8787 YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
8788 YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
8793 size_t yysz
= yysize
+ strlen (yyformat
);
8795 yysize_overflow
= yytrue
;
8799 if (!yysize_overflow
)
8800 yymsg
= (char *) YYMALLOC (yysize
);
8806 while ((*yyp
= *yyformat
))
8808 if (*yyp
== '%' && yyformat
[1] == 's' && yyi
< yycount
)
8810 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
8819 yyerror (P
, tokens
, index
, yymsg
);
8824 yyerror (P
, tokens
, index
, YY_("syntax error"));
8825 yyMemoryExhausted (yystackp
);
8828 #endif /* YYERROR_VERBOSE */
8832 /* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP,
8833 yylval, and yylloc are the syntactic category, semantic value, and location
8834 of the lookahead. */
8836 yyrecoverSyntaxError (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8841 if (yystackp
->yyerrState
== 3)
8842 /* We just shifted the error token and (perhaps) took some
8843 reductions. Skip tokens until we can proceed. */
8847 if (yychar
== YYEOF
)
8848 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8849 if (yychar
!= YYEMPTY
)
8851 yytoken
= YYTRANSLATE (yychar
);
8852 yydestruct ("Error: discarding",
8853 yytoken
, &yylval
, P
, tokens
, index
);
8855 YYDPRINTF ((stderr
, "Reading a token: "));
8856 yychar
= yylex (&yylval
, P
, tokens
, index
);
8857 if (yychar
<= YYEOF
)
8859 yychar
= yytoken
= YYEOF
;
8860 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8864 yytoken
= YYTRANSLATE (yychar
);
8865 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8867 yyj
= yypact
[yystackp
->yytops
.yystates
[0]->yylrState
];
8868 if (yypact_value_is_default (yyj
))
8871 if (yyj
< 0 || YYLAST
< yyj
|| yycheck
[yyj
] != yytoken
)
8873 if (yydefact
[yystackp
->yytops
.yystates
[0]->yylrState
] != 0)
8876 else if (! yytable_value_is_error (yytable
[yyj
]))
8880 /* Reduce to one stack. */
8881 for (yyk
= 0; yyk
< yystackp
->yytops
.yysize
; yyk
+= 1)
8882 if (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
8884 if (yyk
>= yystackp
->yytops
.yysize
)
8885 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8886 for (yyk
+= 1; yyk
< yystackp
->yytops
.yysize
; yyk
+= 1)
8887 yymarkStackDeleted (yystackp
, yyk
);
8888 yyremoveDeletes (yystackp
);
8889 yycompressStack (yystackp
);
8891 /* Now pop stack until we find a state that shifts the error token. */
8892 yystackp
->yyerrState
= 3;
8893 while (yystackp
->yytops
.yystates
[0] != YY_NULLPTR
)
8895 yyGLRState
*yys
= yystackp
->yytops
.yystates
[0];
8896 yyj
= yypact
[yys
->yylrState
];
8897 if (! yypact_value_is_default (yyj
))
8900 if (0 <= yyj
&& yyj
<= YYLAST
&& yycheck
[yyj
] == YYTERROR
8901 && yyisShiftAction (yytable
[yyj
]))
8903 /* Shift the error token. */
8904 YY_SYMBOL_PRINT ("Shifting", yystos
[yytable
[yyj
]],
8905 &yylval
, &yyerrloc
);
8906 yyglrShift (yystackp
, 0, yytable
[yyj
],
8907 yys
->yyposn
, &yylval
);
8908 yys
= yystackp
->yytops
.yystates
[0];
8912 if (yys
->yypred
!= YY_NULLPTR
)
8913 yydestroyGLRState ("Error: popping", yys
, P
, tokens
, index
);
8914 yystackp
->yytops
.yystates
[0] = yys
->yypred
;
8915 yystackp
->yynextFree
-= 1;
8916 yystackp
->yyspaceLeft
+= 1;
8918 if (yystackp
->yytops
.yystates
[0] == YY_NULLPTR
)
8919 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8922 #define YYCHK1(YYE) \
8932 goto yyuser_error; \
8943 yyparse (struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8947 yyGLRStack
* const yystackp
= &yystack
;
8950 YYDPRINTF ((stderr
, "Starting parse\n"));
8953 yylval
= yyval_default
;
8955 /* User initialization code. */
8956 #line 123 "src/parser_proc_grammar.y" /* glr.c:2265 */
8960 #line 8961 "src/parser_proc.c" /* glr.c:2265 */
8962 if (! yyinitGLRStack (yystackp
, YYINITDEPTH
))
8963 goto yyexhaustedlab
;
8964 switch (YYSETJMP (yystack
.yyexception_buffer
))
8967 case 1: goto yyabortlab
;
8968 case 2: goto yyexhaustedlab
;
8969 default: goto yybuglab
;
8971 yyglrShift (&yystack
, 0, 0, 0, &yylval
);
8976 /* For efficiency, we have two loops, the first of which is
8977 specialized to deterministic operation (single stack, no
8978 potential ambiguity). */
8984 const short* yyconflicts
;
8986 yyStateNum yystate
= yystack
.yytops
.yystates
[0]->yylrState
;
8987 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
8988 if (yystate
== YYFINAL
)
8990 if (yyisDefaultedState (yystate
))
8992 yyrule
= yydefaultAction (yystate
);
8995 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
8998 YYCHK1 (yyglrReduce (&yystack
, 0, yyrule
, yytrue
, P
, tokens
, index
));
9003 if (yychar
== YYEMPTY
)
9005 YYDPRINTF ((stderr
, "Reading a token: "));
9006 yychar
= yylex (&yylval
, P
, tokens
, index
);
9009 if (yychar
<= YYEOF
)
9011 yychar
= yytoken
= YYEOF
;
9012 YYDPRINTF ((stderr
, "Now at end of input.\n"));
9016 yytoken
= YYTRANSLATE (yychar
);
9017 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
9020 yygetLRActions (yystate
, yytoken
, &yyaction
, &yyconflicts
);
9021 if (*yyconflicts
!= 0)
9023 if (yyisShiftAction (yyaction
))
9025 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
9028 yyglrShift (&yystack
, 0, yyaction
, yyposn
, &yylval
);
9029 if (0 < yystack
.yyerrState
)
9030 yystack
.yyerrState
-= 1;
9032 else if (yyisErrorAction (yyaction
))
9034 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
9038 YYCHK1 (yyglrReduce (&yystack
, 0, -yyaction
, yytrue
, P
, tokens
, index
));
9044 yySymbol yytoken_to_shift
;
9047 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9048 yystackp
->yytops
.yylookaheadNeeds
[yys
] = (yybool
) (yychar
!= YYEMPTY
);
9050 /* yyprocessOneStack returns one of three things:
9052 - An error flag. If the caller is yyprocessOneStack, it
9053 immediately returns as well. When the caller is finally
9054 yyparse, it jumps to an error label via YYCHK1.
9056 - yyok, but yyprocessOneStack has invoked yymarkStackDeleted
9057 (&yystack, yys), which sets the top state of yys to NULL. Thus,
9058 yyparse's following invocation of yyremoveDeletes will remove
9061 - yyok, when ready to shift a token.
9063 Except in the first case, yyparse will invoke yyremoveDeletes and
9064 then shift the next token onto all remaining stacks. This
9065 synchronization of the shift (that is, after all preceding
9066 reductions on all stacks) helps prevent double destructor calls
9067 on yylval in the event of memory exhaustion. */
9069 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9070 YYCHK1 (yyprocessOneStack (&yystack
, yys
, yyposn
, P
, tokens
, index
));
9071 yyremoveDeletes (&yystack
);
9072 if (yystack
.yytops
.yysize
== 0)
9074 yyundeleteLastStack (&yystack
);
9075 if (yystack
.yytops
.yysize
== 0)
9076 yyFail (&yystack
, P
, tokens
, index
, YY_("syntax error"));
9077 YYCHK1 (yyresolveStack (&yystack
, P
, tokens
, index
));
9078 YYDPRINTF ((stderr
, "Returning to deterministic operation.\n"));
9079 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
9083 /* If any yyglrShift call fails, it will fail after shifting. Thus,
9084 a copy of yylval will already be on stack 0 in the event of a
9085 failure in the following loop. Thus, yychar is set to YYEMPTY
9086 before the loop to make sure the user destructor for yylval isn't
9088 yytoken_to_shift
= YYTRANSLATE (yychar
);
9091 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9094 const short* yyconflicts
;
9095 yyStateNum yystate
= yystack
.yytops
.yystates
[yys
]->yylrState
;
9096 yygetLRActions (yystate
, yytoken_to_shift
, &yyaction
,
9098 /* Note that yyconflicts were handled by yyprocessOneStack. */
9099 YYDPRINTF ((stderr
, "On stack %lu, ", (unsigned long) yys
));
9100 YY_SYMBOL_PRINT ("shifting", yytoken_to_shift
, &yylval
, &yylloc
);
9101 yyglrShift (&yystack
, yys
, yyaction
, yyposn
,
9103 YYDPRINTF ((stderr
, "Stack %lu now in state #%d\n",
9104 (unsigned long) yys
,
9105 yystack
.yytops
.yystates
[yys
]->yylrState
));
9108 if (yystack
.yytops
.yysize
== 1)
9110 YYCHK1 (yyresolveStack (&yystack
, P
, tokens
, index
));
9111 YYDPRINTF ((stderr
, "Returning to deterministic operation.\n"));
9112 yycompressStack (&yystack
);
9118 yyrecoverSyntaxError (&yystack
, P
, tokens
, index
);
9119 yyposn
= yystack
.yytops
.yystates
[0]->yyposn
;
9135 yyerror (P
, tokens
, index
, YY_("memory exhausted"));
9140 if (yychar
!= YYEMPTY
)
9141 yydestruct ("Cleanup: discarding lookahead",
9142 YYTRANSLATE (yychar
), &yylval
, P
, tokens
, index
);
9144 /* If the stack is well-formed, pop the stack until it is empty,
9145 destroying its entries as we go. But free the stack regardless
9146 of whether it is well-formed. */
9147 if (yystack
.yyitems
)
9149 yyGLRState
** yystates
= yystack
.yytops
.yystates
;
9152 size_t yysize
= yystack
.yytops
.yysize
;
9154 for (yyk
= 0; yyk
< yysize
; yyk
+= 1)
9157 while (yystates
[yyk
])
9159 yyGLRState
*yys
= yystates
[yyk
];
9160 if (yys
->yypred
!= YY_NULLPTR
)
9161 yydestroyGLRState ("Cleanup: popping", yys
, P
, tokens
, index
);
9162 yystates
[yyk
] = yys
->yypred
;
9163 yystack
.yynextFree
-= 1;
9164 yystack
.yyspaceLeft
+= 1;
9169 yyfreeGLRStack (&yystack
);
9175 /* DEBUGGING ONLY */
9178 yy_yypstack (yyGLRState
* yys
)
9182 yy_yypstack (yys
->yypred
);
9183 YYFPRINTF (stderr
, " -> ");
9185 YYFPRINTF (stderr
, "%d@%lu", yys
->yylrState
,
9186 (unsigned long) yys
->yyposn
);
9190 yypstates (yyGLRState
* yyst
)
9192 if (yyst
== YY_NULLPTR
)
9193 YYFPRINTF (stderr
, "<null>");
9196 YYFPRINTF (stderr
, "\n");
9200 yypstack (yyGLRStack
* yystackp
, size_t yyk
)
9202 yypstates (yystackp
->yytops
.yystates
[yyk
]);
9205 #define YYINDEX(YYX) \
9206 ((YYX) == YY_NULLPTR ? -1 : (yyGLRStackItem*) (YYX) - yystackp->yyitems)
9210 yypdumpstack (yyGLRStack
* yystackp
)
9212 yyGLRStackItem
* yyp
;
9214 for (yyp
= yystackp
->yyitems
; yyp
< yystackp
->yynextFree
; yyp
+= 1)
9216 YYFPRINTF (stderr
, "%3lu. ",
9217 (unsigned long) (yyp
- yystackp
->yyitems
));
9218 if (*(yybool
*) yyp
)
9220 YYASSERT (yyp
->yystate
.yyisState
);
9221 YYASSERT (yyp
->yyoption
.yyisState
);
9222 YYFPRINTF (stderr
, "Res: %d, LR State: %d, posn: %lu, pred: %ld",
9223 yyp
->yystate
.yyresolved
, yyp
->yystate
.yylrState
,
9224 (unsigned long) yyp
->yystate
.yyposn
,
9225 (long) YYINDEX (yyp
->yystate
.yypred
));
9226 if (! yyp
->yystate
.yyresolved
)
9227 YYFPRINTF (stderr
, ", firstVal: %ld",
9228 (long) YYINDEX (yyp
->yystate
9229 .yysemantics
.yyfirstVal
));
9233 YYASSERT (!yyp
->yystate
.yyisState
);
9234 YYASSERT (!yyp
->yyoption
.yyisState
);
9235 YYFPRINTF (stderr
, "Option. rule: %d, state: %ld, next: %ld",
9236 yyp
->yyoption
.yyrule
- 1,
9237 (long) YYINDEX (yyp
->yyoption
.yystate
),
9238 (long) YYINDEX (yyp
->yyoption
.yynext
));
9240 YYFPRINTF (stderr
, "\n");
9242 YYFPRINTF (stderr
, "Tops:");
9243 for (yyi
= 0; yyi
< yystackp
->yytops
.yysize
; yyi
+= 1)
9244 YYFPRINTF (stderr
, "%lu: %ld; ", (unsigned long) yyi
,
9245 (long) YYINDEX (yystackp
->yytops
.yystates
[yyi
]));
9246 YYFPRINTF (stderr
, "\n");
9254 /* Substitute the variable and function names. */
9255 #define yyparse psi_parser_proc_parse
9256 #define yylex psi_parser_proc_lex
9257 #define yyerror psi_parser_proc_error
9258 #define yylval psi_parser_proc_lval
9259 #define yychar psi_parser_proc_char
9260 #define yydebug psi_parser_proc_debug
9261 #define yynerrs psi_parser_proc_nerrs
9263 #line 2277 "src/parser_proc_grammar.y" /* glr.c:2578 */
9268 #define PSI_DEBUG_LEX 0
9269 static int psi_parser_proc_lex(YYSTYPE
*lvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
9271 struct psi_token
*token
;
9273 PSI_DEBUG_PRINT(P
, "PSI: LEX index %4zu ", *index
);
9275 if (psi_plist_get(tokens
, (*index
)++, &token
) && token
) {
9277 PSI_DEBUG_DUMP(P
, psi_token_dump
, token
);
9279 *((struct psi_token
**)lvalp
) = token
;
9283 PSI_DEBUG_PRINT(P
, "EOF\n");
9291 static void psi_parser_proc_error(struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char *msg
)
9293 struct psi_token
*T
= NULL
;
9302 psi_plist_get(tokens
, last
, &T
);
9304 size_t i
= (last
>= 5) ? last
- 5 : 0;
9306 P
->error(PSI_DATA(P
), T
, PSI_WARNING
, "PSI %s at col %u", msg
, T
->col
);
9307 while (i
<= last
|| T
->type
!= PSI_T_EOS
) {
9310 if (!psi_plist_get(tokens
, i
++, &T
)) {
9316 } else if (i
> last
+ 1) {
9322 P
->error(PSI_DATA(P
), T
, PSI_WARNING
, "PSI %s token '%s' at col %u",
9323 pos
, T
? T
->text
->val
: "<deleted>", T
? T
->col
: 0);
9326 P
->error(PSI_DATA(P
), NULL
, PSI_WARNING
, "PSI %s", msg
);