1 /* A Bison parser, made by GNU Bison 3.0.4. */
3 /* Skeleton implementation for Bison GLR parsers in C
5 Copyright (C) 2002-2015 Free Software Foundation, Inc.
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
20 /* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
33 /* C GLR parser skeleton written by Paul Hilfinger. */
35 /* Identify Bison output. */
39 #define YYBISON_VERSION "3.0.4"
42 #define YYSKELETON_NAME "glr.c"
48 /* "%code top" blocks. */
49 #line 1 "src/parser_proc_grammar.y" /* glr.c:222 */
51 #include "php_psi_stdinc.h"
53 #line 54 "src/parser_proc.c" /* glr.c:222 */
56 /* Substitute the variable and function names. */
57 #define yyparse psi_parser_proc_parse
58 #define yylex psi_parser_proc_lex
59 #define yyerror psi_parser_proc_error
60 #define yydebug psi_parser_proc_debug
63 /* First part of user declarations. */
65 #line 66 "src/parser_proc.c" /* glr.c:240 */
68 # if defined __cplusplus && 201103L <= __cplusplus
69 # define YY_NULLPTR nullptr
75 #include "parser_proc.h"
77 /* Enabling verbose error messages. */
78 #ifdef YYERROR_VERBOSE
79 # undef YYERROR_VERBOSE
80 # define YYERROR_VERBOSE 1
82 # define YYERROR_VERBOSE 1
85 /* Default (constant) value used for initialization for null
86 right-hand sides. Unlike the standard yacc.c template, here we set
87 the default value of $$ to a zeroed-out value. Since the default
88 value is undefined, this behavior is technically correct. */
89 static YYSTYPE yyval_default
;
91 /* Copy the second part of user declarations. */
93 #line 94 "src/parser_proc.c" /* glr.c:263 */
94 /* Unqualified %code blocks. */
95 #line 5 "src/parser_proc_grammar.y" /* glr.c:264 */
104 #define PSI_PARSER_PROC_DEBUG 1
106 static int psi_parser_proc_lex(YYSTYPE
*u
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
);
107 static void psi_parser_proc_error(struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char *msg
);
109 static inline void psi_parser_proc_add_struct(struct psi_parser
*P
, struct psi_decl_struct
*strct
)
113 P
->structs
= psi_plist_init((psi_plist_dtor
) psi_decl_struct_free
);
115 P
->structs
= psi_plist_add(P
->structs
, &strct
);
117 static inline void psi_parser_proc_add_union(struct psi_parser
*P
, struct psi_decl_union
*u
)
121 P
->unions
= psi_plist_init((psi_plist_dtor
) psi_decl_union_free
);
123 P
->unions
= psi_plist_add(P
->unions
, &u
);
125 static inline void psi_parser_proc_add_enum(struct psi_parser
*P
, struct psi_decl_enum
*e
)
129 P
->enums
= psi_plist_init((psi_plist_dtor
) psi_decl_enum_free
);
131 P
->enums
= psi_plist_add(P
->enums
, &e
);
133 static inline void psi_parser_proc_deanon_typedef(struct psi_decl_arg
*def
)
135 switch (def
->type
->type
) {
137 if (!psi_decl_type_is_anon(def
->type
->name
, "struct")) {
142 if (!psi_decl_type_is_anon(def
->type
->name
, "union")) {
147 if (!psi_decl_type_is_anon(def
->type
->name
, "enum")) {
154 free(def
->type
->name
);
155 def
->type
->name
= strdup(def
->var
->name
);
157 static inline void psi_parser_proc_add_typedef(struct psi_parser
*P
, struct psi_decl_arg
*def
)
161 P
->types
= psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
);
163 //psi_parser_proc_deanon_typedef(def);
164 P
->types
= psi_plist_add(P
->types
, &def
);
166 static inline void psi_parser_proc_add_const(struct psi_parser
*P
, struct psi_const
*cnst
) {
169 P
->consts
= psi_plist_init((psi_plist_dtor
) psi_const_free
);
171 P
->consts
= psi_plist_add(P
->consts
, &cnst
);
174 static inline void psi_parser_proc_add_decl(struct psi_parser
*P
, struct psi_decl
*decl
) {
177 if (psi_decl_is_blacklisted(decl
->func
->var
->name
)) {
178 psi_decl_free(&decl
);
183 P
->decls
= psi_plist_init((psi_plist_dtor
) psi_decl_free
);
185 P
->decls
= psi_plist_add(P
->decls
, &decl
);
187 static inline void psi_parser_proc_add_decl_extvars(struct psi_parser
*P
, struct psi_plist
*list
) {
190 P
->vars
= psi_plist_init((psi_plist_dtor
) psi_decl_extvar_free
);
192 P
->vars
= psi_plist_add_r(P
->vars
, psi_plist_count(list
), psi_plist_eles(list
));
195 static inline void psi_parser_proc_add_impl(struct psi_parser
*P
, struct psi_impl
*impl
) {
198 P
->impls
= psi_plist_init((psi_plist_dtor
) psi_impl_free
);
200 P
->impls
= psi_plist_add(P
->impls
, &impl
);
205 #line 206 "src/parser_proc.c" /* glr.c:264 */
212 # if defined YYENABLE_NLS && YYENABLE_NLS
214 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
215 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
219 # define YY_(Msgid) Msgid
227 # define YYMALLOC malloc
230 # define YYREALLOC realloc
233 #define YYSIZEMAX ((size_t) -1)
238 typedef unsigned char yybool
;
245 # define YYJMP_BUF jmp_buf
246 # define YYSETJMP(Env) setjmp (Env)
248 # define YYLONGJMP(Env, Val) (longjmp (Env, Val), YYASSERT (0))
252 # if (defined __GNUC__ \
253 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
254 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
255 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
257 # define YY_ATTRIBUTE(Spec) /* empty */
261 #ifndef YY_ATTRIBUTE_PURE
262 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
265 #ifndef YY_ATTRIBUTE_UNUSED
266 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
269 #if !defined _Noreturn \
270 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
271 # if defined _MSC_VER && 1200 <= _MSC_VER
272 # define _Noreturn __declspec (noreturn)
274 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
278 /* Suppress unused-variable warnings by "using" E. */
279 #if ! defined lint || defined __GNUC__
280 # define YYUSE(E) ((void) (E))
282 # define YYUSE(E) /* empty */
285 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
286 /* Suppress an incorrect diagnostic about yylval being uninitialized. */
287 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
288 _Pragma ("GCC diagnostic push") \
289 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
290 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
291 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
292 _Pragma ("GCC diagnostic pop")
294 # define YY_INITIAL_VALUE(Value) Value
296 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
297 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
298 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
300 #ifndef YY_INITIAL_VALUE
301 # define YY_INITIAL_VALUE(Value) /* Nothing. */
306 # define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0)))
309 /* YYFINAL -- State number of the termination state. */
311 /* YYLAST -- Last index in YYTABLE. */
314 /* YYNTOKENS -- Number of terminals. */
315 #define YYNTOKENS 140
316 /* YYNNTS -- Number of nonterminals. */
318 /* YYNRULES -- Number of rules. */
320 /* YYNRULES -- Number of states. */
321 #define YYNSTATES 937
322 /* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
324 /* YYMAXLEFT -- Maximum number of symbols to the left of a handle
325 accessed by $0, $-1, etc., in any rule. */
328 /* YYTRANSLATE(X) -- Bison symbol number corresponding to X. */
330 #define YYMAXUTOK 394
332 #define YYTRANSLATE(YYX) \
333 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
335 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
336 static const unsigned char yytranslate
[] =
338 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
339 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
340 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
341 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
342 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
343 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
344 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
345 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
346 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
347 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
348 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
349 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
350 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
351 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
352 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
353 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
354 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
355 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
356 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
357 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
358 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
359 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
360 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
361 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
362 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
363 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
364 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
365 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
366 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
367 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
368 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
369 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
370 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
371 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
372 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
373 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
374 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
375 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
376 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
377 135, 136, 137, 138, 139
381 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
382 static const unsigned short int yyrline
[] =
384 0, 433, 433, 433, 433, 433, 433, 433, 433, 433,
385 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
386 434, 434, 434, 434, 435, 435, 435, 435, 435, 435,
387 435, 435, 435, 435, 435, 435, 435, 435, 435, 435,
388 435, 435, 435, 436, 436, 436, 436, 436, 436, 436,
389 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
390 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
391 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
392 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
393 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
394 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
395 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
396 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
397 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
398 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
399 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
400 436, 437, 437, 437, 437, 437, 437, 437, 437, 437,
401 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
402 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
403 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
404 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
405 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
406 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
407 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
408 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
409 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
410 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
411 437, 437, 437, 437, 437, 437, 437, 441, 442, 445,
412 446, 449, 450, 451, 452, 458, 466, 469, 472, 475,
413 481, 484, 487, 490, 493, 499, 505, 508, 514, 537,
414 541, 545, 550, 554, 558, 562, 569, 570, 574, 575,
415 579, 580, 581, 585, 586, 590, 591, 595, 596, 597,
416 601, 602, 606, 611, 616, 621, 630, 633, 636, 637,
417 643, 648, 656, 659, 663, 667, 674, 678, 682, 686,
418 691, 702, 713, 718, 723, 727, 733, 743, 746, 750,
419 754, 760, 767, 771, 775, 782, 783, 784, 788, 802,
420 808, 811, 817, 820, 826, 827, 835, 846, 855, 867,
421 868, 872, 882, 891, 903, 904, 907, 913, 914, 918,
422 922, 926, 931, 936, 944, 945, 946, 949, 955, 958,
423 961, 967, 968, 972, 975, 978, 984, 987, 990, 998,
424 1010, 1013, 1016, 1019, 1026, 1029, 1039, 1042, 1045, 1048,
425 1049, 1050, 1054, 1057, 1060, 1071, 1078, 1088, 1091, 1097,
426 1100, 1107, 1137, 1140, 1146, 1149, 1155, 1158, 1161, 1164,
427 1170, 1174, 1175, 1179, 1180, 1184, 1185, 1192, 1193, 1197,
428 1204, 1215, 1222, 1230, 1254, 1282, 1289, 1300, 1346, 1387,
429 1402, 1405, 1408, 1414, 1417, 1423, 1438, 1441, 1470, 1478,
430 1506, 1511, 1519, 1529, 1539, 1542, 1546, 1552, 1566, 1583,
431 1586, 1592, 1599, 1609, 1616, 1619, 1625, 1630, 1638, 1642,
432 1646, 1650, 1654, 1658, 1665, 1669, 1673, 1677, 1681, 1685,
433 1691, 1695, 1702, 1705, 1717, 1721, 1725, 1732, 1745, 1758,
434 1771, 1774, 1781, 1782, 1786, 1789, 1792, 1795, 1801, 1805,
435 1812, 1815, 1818, 1833, 1834, 1835, 1836, 1840, 1843, 1849,
436 1850, 1856, 1859, 1865, 1866, 1870, 1871, 1881, 1884, 1891,
437 1896, 1901, 1911, 1914, 1920, 1923, 1929, 1936, 1943, 1950,
438 1951, 1955, 1956, 1957, 1958, 1962, 1963, 1964, 1965, 1966,
439 1970, 1973, 1979, 1982, 1985, 1988, 1991, 1997, 2001, 2009,
440 2010, 2014, 2021, 2024, 2027, 2030, 2034, 2037, 2043, 2047,
441 2055, 2062, 2067, 2075, 2083, 2084, 2085, 2086, 2087, 2088,
442 2089, 2090, 2091, 2092, 2096, 2099, 2105, 2108, 2114, 2115,
443 2119, 2122, 2128, 2131, 2137, 2144, 2148, 2155, 2158, 2161,
444 2167, 2174, 2177, 2180, 2187, 2192, 2200, 2201, 2202, 2203,
445 2204, 2205, 2206, 2207, 2211, 2214, 2220, 2223, 2229, 2236,
446 2237, 2241, 2248, 2251, 2257, 2265, 2268, 2274
450 #if YYDEBUG || YYERROR_VERBOSE || 1
451 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
452 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
453 static const char *const yytname
[] =
455 "\"end of file\"", "error", "$undefined", "BOOL", "CHAR", "SHORT",
456 "INT", "SIGNED", "UNSIGNED", "LONG", "FLOAT", "DOUBLE", "STRING",
457 "MIXED", "ARRAY", "OBJECT", "CALLABLE", "VOID", "ZVAL", "NULL", "TRUE",
458 "FALSE", "NAME", "NSNAME", "DOLLAR_NAME", "NUMBER", "QUOTED_STRING",
459 "QUOTED_CHAR", "SIZEOF", "VOLATILE", "\"end of line\"", "\";\"", "\"(\"",
460 "\")\"", "\",\"", "\":\"", "\"{\"", "\"}\"", "\"[\"", "\"]\"", "\"=\"",
461 "\"#\"", "\"|\"", "\"^\"", "\"&\"", "\"<<\"", "\">>\"", "\"+\"", "\"-\"",
462 "\"*\"", "\"/\"", "\"%\"", "\"<\"", "\">\"", "\">=\"", "\"<=\"",
463 "\"||\"", "\"&&\"", "\"==\"", "\"!=\"", "\"~\"", "\"!\"", "\".\"",
464 "\"\\\\\"", "\"...\"", "\"?\"", "PRAGMA", "PRAGMA_ONCE", "LINE", "ERROR",
465 "WARNING", "IF", "IFDEF", "IFNDEF", "ELSE", "ELIF", "ENDIF", "DEFINE",
466 "DEFINED", "UNDEF", "IMPORT", "INCLUDE", "INCLUDE_NEXT", "TYPEDEF",
467 "STRUCT", "UNION", "ENUM", "CONST", "LIB", "STATIC", "CALLBACK",
468 "FUNCTION", "LET", "SET", "TEMP", "FREE", "RETURN", "AS", "PRE_ASSERT",
469 "POST_ASSERT", "BOOLVAL", "INTVAL", "STRVAL", "PATHVAL", "STRLEN",
470 "FLOATVAL", "ARRVAL", "OBJVAL", "COUNT", "CALLOC", "TO_BOOL", "TO_INT",
471 "TO_STRING", "TO_FLOAT", "TO_ARRAY", "TO_OBJECT", "COMMENT",
472 "WHITESPACE", "NO_WHITESPACE", "CPP_HEADER", "CPP_ATTRIBUTE",
473 "CPP_EXTENSION", "CPP_PASTE", "CPP_INLINE", "CPP_RESTRICT", "CPP_ASM",
474 "BSLASH", "LONG_DOUBLE", "INT8", "UINT8", "INT16", "UINT16", "INT32",
475 "UINT32", "INT64", "UINT64", "INT128", "UINT128", "BINARY", "UNARY",
476 "$accept", "binary_op_token", "unary_op_token", "name_token",
477 "any_noeol_token", "any_nobrace_token", "file", "blocks", "block", "lib",
478 "cpp", "cpp_exp", "cpp_ignored_token", "cpp_message_token",
479 "cpp_include_token", "cpp_header_token", "cpp_no_arg_token",
480 "cpp_name_arg_token", "cpp_exp_arg_token", "cpp_macro_decl",
481 "cpp_macro_sig", "cpp_macro_sig_args", "cpp_macro_decl_tokens",
482 "cpp_macro_decl_token_list", "cpp_macro_exp", "cpp_macro_call_args",
483 "cpp_macro_call_arg_list", "constant", "impl_def_val",
484 "impl_def_val_token", "decl_typedef", "typedef", "typedef_anon",
485 "typedef_decl", "typedef_anon_decl", "qualified_decl_type",
486 "decl_type_qualifier_token", "decl_type", "decl_type_complex",
487 "decl_type_simple", "decl_real_type", "int_signed", "int_width",
488 "decl_int_type", "int_signed_types", "signed_short_types",
489 "signed_long_types", "int_width_types", "decl_stmt", "decl_asm",
490 "quoted_strings", "decl_extvar_stmt", "decl_extvar_list", "decl_vars",
491 "ignored_decl", "ignored_decl_body", "ignored_decl_body_stmts",
492 "ignored_decl_body_stmt", "decl", "decl_body", "decl_func_body",
493 "decl_functor_body", "decl_anon_functor_body", "decl_functor",
494 "decl_anon_functor", "decl_func", "decl_args", "decl_arg_list",
495 "decl_anon_arg", "decl_arg", "decl_var", "decl_union", "decl_struct",
496 "decl_struct_args", "struct_args_block", "struct_args",
497 "struct_arg_var_list", "decl_vars_with_layout", "decl_enum",
498 "decl_enum_items", "decl_enum_item", "num_exp", "number", "sizeof",
499 "sizeof_body", "sizeof_body_notypes", "enum_name", "union_name",
500 "struct_name", "optional_name", "optional_comma", "decl_layout",
501 "align_and_size", "array_size", "array_qualifier_token", "indirection",
502 "pointers", "asterisks", "asterisk", "pointer_qualifier_token", "impl",
503 "impl_func", "impl_args", "impl_arg", "impl_var", "impl_type",
504 "impl_type_restricted", "impl_type_token", "impl_type_restricted_token",
505 "impl_type_extended_token", "impl_stmts", "impl_stmt", "let_stmt",
506 "let_exp", "let_exp_byref", "let_exp_assign", "let_calloc",
507 "let_callback", "let_func", "let_func_token", "let_func_exps",
508 "let_exps", "callback_rval", "callback_arg_list", "callback_args",
509 "return_stmt", "return_exp", "call_decl_vars", "set_stmt", "set_exp",
510 "set_func", "set_func_token", "set_func_exps", "set_exps", "assert_stmt",
511 "assert_stmt_token", "free_stmt", "free_exps", "free_exp", "reference",
516 #define YYPACT_NINF -717
517 #define YYTABLE_NINF -626
519 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
521 static const short int yypact
[] =
523 713, -717, -717, -717, -717, -717, 54, -717, -717, -717,
524 501, -717, -717, -717, 741, 1409, 7459, 7459, 7459, 120,
525 26, 236, 23, -717, 5541, 1667, 71, 713, -717, -717,
526 -717, -717, -717, 6717, 597, -717, -717, -717, -717, 174,
527 162, -717, -717, -717, -717, -40, -717, -717, 84, 64,
528 87, -717, -717, -717, -717, 91, -717, 97, -717, -717,
529 -717, 7459, 7459, 7459, -717, 1667, -717, 79, -717, -717,
530 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
531 884, -717, -717, -717, -717, 123, 1010, 1010, 25, -717,
532 1010, 6491, 7459, 7459, 1780, 125, -717, -717, -717, 129,
533 7459, 141, 141, -717, -717, -717, 5474, -717, -717, -717,
534 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
535 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
536 -717, -717, -717, -717, -717, -717, -717, 131, -717, -717,
537 131, 128, -717, -717, -717, -717, -717, 158, -717, 155,
538 1667, 152, 161, -717, 171, -717, 1893, 1409, -40, 152,
539 -717, -717, 27, 164, -717, -717, 168, 7459, 4, -717,
540 -717, -717, 222, -717, 73, -717, -717, -717, 199, -717,
541 198, 207, 2006, 2006, 7459, 217, -717, -717, -717, 152,
542 6943, 232, -717, 1519, -717, -717, -717, -717, -717, -717,
543 -717, -717, 1632, -717, -717, -717, -717, 1745, 1858, -717,
544 -717, -717, 1971, -717, -717, -717, -717, -717, -717, -717,
545 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
546 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
547 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
548 -717, -717, -717, -717, -717, 2084, 2197, 2310, 2423, 2536,
549 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
550 -717, -717, -717, -717, -717, 2649, -717, 2762, 2875, 2988,
551 3101, 3214, 3327, -717, 3440, -717, -717, 3553, 3666, 3779,
552 3892, 4005, 4118, 4231, 4344, 4457, 4570, 4683, 4796, 4909,
553 5022, 5135, 5248, -717, -717, -717, -717, -717, -717, -717,
554 5361, 1010, -717, -717, -717, -717, -717, -717, -717, -717,
555 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
556 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
557 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
558 1010, -717, -717, -717, -717, -717, -717, -717, 80, 6491,
559 -717, -717, -717, -717, 7056, 6491, 201, 7588, -717, 139,
560 -717, 177, -717, -717, -717, -717, 241, 243, 243, 52,
561 52, 245, -717, 152, 1262, -717, 217, 251, 264, 283,
562 -717, -717, -717, -717, 1376, -717, 253, 164, -717, -717,
563 -717, -717, -717, 311, -717, -717, 292, -717, 202, 6717,
564 -717, 287, 216, 290, -717, -717, 218, 285, 294, -717,
565 6943, 6152, 6943, 7459, 6943, -717, -717, 43, -717, -717,
566 -717, -717, -717, 6378, -717, -717, 296, -717, 7459, -717,
567 -717, 299, 7588, 300, -717, -717, -717, -717, 567, 312,
568 -717, 6822, 7459, -717, -717, 6491, -717, -717, -717, -717,
569 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
570 -717, -717, -717, -717, 6491, 6491, 314, 1497, 6943, 6943,
571 -717, -717, -717, -717, 5700, -717, -717, -717, -717, -717,
572 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
573 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
574 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
575 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
576 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
577 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
578 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
579 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
580 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
581 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
582 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
583 -717, -717, -717, -717, 1136, -717, 56, 258, -717, -717,
584 -717, -717, -717, -717, -717, 5587, -717, -717, 6378, -717,
585 7564, -717, -717, 309, 7169, -717, -717, -717, 68, 317,
586 2006, 164, 291, 1667, 164, 297, 6378, 7459, 319, 318,
587 320, 7612, 324, 323, -717, 328, 341, 326, 335, 112,
588 -717, 338, 340, -717, -717, -717, 6705, 6943, 7228, -717,
589 253, 339, -717, -717, -717, 342, 7588, 345, 346, 7322,
590 -717, 348, 1780, 344, -717, -717, 6604, 408, 7459, 141,
591 141, -717, -717, 176, -717, -717, 350, -717, 300, 7612,
592 -717, -717, -717, -717, -717, -717, -717, -717, 349, 233,
593 -717, 23, -717, -717, -717, 44, 70, 76, 6924, -717,
594 -717, 6378, 6378, -717, 253, 249, -717, 253, 255, -717,
595 352, -717, -717, 353, 7612, -717, -717, 5813, -717, 6152,
596 -717, 6943, -717, 23, 6943, -717, 7459, 7341, -717, -717,
597 -717, -717, -717, 356, 357, -717, -717, -717, -717, 6491,
598 6491, 363, -717, 51, 365, -717, 344, 243, 243, -717,
599 284, 367, 284, 343, 6378, -717, 7540, -717, 7459, 2006,
600 -717, 6830, 164, 347, 164, 164, 192, 295, 237, 371,
601 7612, -717, -717, -717, -717, 374, 6265, -717, 375, 6943,
602 271, -717, 377, 296, 387, 1010, 7400, 7588, 7636, 397,
603 388, 392, 6943, 395, 365, 6943, 6943, -717, 284, -717,
604 23, 5700, -717, 6378, 396, 399, -717, -717, 400, -717,
605 -717, 371, -717, -717, -717, 7341, -717, 406, 6378, 23,
606 -717, 5926, 407, 411, -717, 331, -717, -717, -717, 410,
607 404, 419, 344, 414, -717, 418, -717, 40, -717, 7660,
608 425, 427, 164, 428, 23, 7160, 424, 435, -717, 436,
609 -717, -717, 104, -717, 439, 440, -717, 6943, -717, 451,
610 2006, 449, -717, 385, 453, 6378, 5813, 454, -717, 6152,
611 -717, -717, 456, 461, 464, 344, 458, 463, 2006, 459,
612 6039, 7047, 318, -717, -717, -717, 465, 6265, -717, -717,
613 466, 468, -717, 462, 469, 471, 481, 482, 480, -717,
614 -717, 5813, -717, 494, -717, 284, 489, 164, 23, 492,
615 6152, -717, 493, -717, 2006, -717, 490, -717, -717, -717,
616 495, 6039, 164, 499, -717, 500, -717
619 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
620 Performed when YYTABLE does not specify something else to do. Zero
621 means the default is an error. */
622 static const unsigned short int yydefact
[] =
624 277, 396, 393, 397, 391, 392, 394, 388, 389, 387,
625 386, 378, 282, 281, 0, 0, 0, 0, 500, 377,
626 0, 0, 625, 283, 0, 0, 0, 278, 279, 285,
627 284, 286, 290, 517, 0, 374, 380, 379, 385, 400,
628 412, 384, 287, 288, 289, 417, 435, 437, 438, 0,
629 0, 449, 292, 291, 293, 0, 294, 0, 395, 390,
630 386, 0, 0, 0, 377, 0, 436, 422, 296, 307,
631 304, 306, 308, 309, 320, 317, 318, 315, 321, 316,
632 0, 319, 310, 311, 312, 0, 332, 332, 0, 300,
633 0, 0, 500, 500, 0, 0, 360, 365, 458, 364,
634 0, 508, 508, 33, 34, 613, 574, 24, 39, 38,
635 37, 35, 36, 32, 31, 25, 29, 28, 26, 27,
636 40, 582, 581, 579, 577, 578, 580, 576, 575, 583,
637 30, 611, 609, 608, 610, 607, 606, 381, 41, 42,
638 382, 383, 497, 541, 542, 543, 544, 0, 538, 0,
639 0, 0, 0, 627, 0, 626, 386, 0, 417, 0,
640 1, 280, 523, 510, 376, 459, 0, 518, 519, 521,
641 375, 402, 406, 404, 408, 401, 398, 413, 400, 399,
642 0, 0, 450, 450, 0, 0, 381, 382, 383, 0,
643 0, 0, 68, 43, 44, 45, 46, 47, 48, 49,
644 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
645 60, 61, 62, 63, 64, 65, 66, 67, 158, 159,
646 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
647 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
648 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
649 99, 100, 101, 102, 108, 106, 107, 105, 103, 104,
650 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
651 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
652 129, 130, 131, 132, 160, 133, 134, 135, 136, 137,
653 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
654 148, 149, 150, 151, 152, 156, 153, 154, 155, 157,
655 0, 332, 302, 297, 43, 52, 57, 58, 62, 106,
656 107, 105, 103, 104, 124, 126, 127, 128, 129, 130,
657 131, 160, 135, 136, 137, 138, 139, 140, 141, 142,
658 143, 144, 145, 146, 147, 148, 149, 150, 334, 305,
659 333, 298, 313, 314, 299, 301, 342, 343, 0, 0,
660 22, 23, 20, 21, 0, 0, 345, 303, 344, 381,
661 499, 382, 498, 361, 358, 366, 0, 0, 0, 0,
662 0, 0, 295, 0, 0, 426, 0, 0, 0, 0,
663 428, 526, 525, 524, 513, 461, 517, 510, 520, 522,
664 407, 403, 409, 410, 405, 414, 0, 415, 387, 517,
665 455, 0, 0, 452, 453, 456, 0, 476, 502, 474,
666 0, 625, 0, 0, 0, 619, 620, 0, 550, 553,
667 552, 554, 555, 0, 556, 429, 423, 424, 0, 421,
668 419, 0, 324, 325, 322, 335, 496, 495, 0, 0,
669 491, 0, 0, 340, 337, 347, 2, 3, 4, 5,
670 6, 7, 8, 9, 10, 11, 13, 12, 14, 15,
671 16, 17, 18, 19, 0, 0, 0, 0, 0, 0,
672 464, 463, 465, 462, 0, 427, 186, 161, 162, 163,
673 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
674 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
675 184, 185, 274, 275, 187, 188, 189, 190, 191, 192,
676 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
677 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
678 213, 214, 215, 216, 217, 218, 224, 222, 223, 221,
679 219, 220, 225, 226, 227, 228, 229, 230, 231, 232,
680 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
681 243, 244, 245, 246, 247, 248, 276, 249, 250, 251,
682 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
683 262, 263, 264, 265, 266, 267, 268, 272, 269, 270,
684 271, 273, 433, 434, 0, 431, 0, 0, 359, 416,
685 487, 485, 484, 486, 515, 0, 516, 514, 0, 488,
686 0, 478, 489, 0, 0, 518, 460, 411, 0, 457,
687 450, 510, 0, 0, 510, 0, 0, 503, 0, 0,
688 0, 602, 0, 0, 601, 42, 0, 0, 0, 0,
689 622, 0, 0, 596, 527, 551, 0, 0, 326, 420,
690 517, 0, 492, 494, 336, 0, 349, 0, 348, 0,
691 338, 0, 0, 504, 369, 362, 370, 0, 371, 508,
692 508, 368, 367, 487, 356, 357, 0, 352, 354, 353,
693 430, 432, 528, 546, 547, 548, 549, 545, 0, 0,
694 532, 625, 537, 539, 540, 613, 24, 0, 0, 482,
695 512, 0, 0, 511, 517, 0, 418, 517, 0, 441,
696 0, 454, 439, 0, 477, 475, 473, 0, 557, 625,
697 600, 0, 536, 625, 0, 621, 0, 597, 594, 618,
698 425, 327, 330, 0, 328, 493, 490, 341, 346, 0,
699 0, 0, 363, 0, 469, 466, 504, 0, 0, 351,
700 0, 0, 0, 534, 0, 480, 0, 481, 0, 450,
701 447, 0, 510, 0, 510, 510, 487, 0, 31, 30,
702 563, 568, 564, 566, 567, 41, 0, 603, 614, 0,
703 0, 623, 613, 599, 0, 332, 0, 350, 339, 0,
704 505, 0, 0, 0, 469, 373, 372, 529, 0, 533,
705 625, 0, 479, 0, 0, 0, 448, 445, 0, 442,
706 440, 0, 565, 588, 574, 597, 589, 0, 0, 625,
707 569, 625, 0, 0, 624, 0, 323, 329, 331, 0,
708 0, 0, 504, 470, 467, 0, 530, 0, 535, 483,
709 0, 0, 510, 0, 625, 0, 584, 0, 616, 615,
710 604, 558, 0, 509, 0, 0, 471, 0, 468, 0,
711 450, 0, 446, 0, 0, 0, 0, 0, 605, 625,
712 612, 595, 0, 0, 0, 504, 0, 0, 450, 0,
713 590, 0, 488, 586, 561, 559, 585, 0, 573, 617,
714 0, 0, 472, 0, 0, 0, 0, 0, 591, 592,
715 570, 0, 560, 0, 506, 0, 0, 510, 625, 0,
716 625, 587, 0, 531, 450, 443, 0, 571, 593, 507,
717 0, 590, 510, 0, 444, 0, 572
720 /* YYPGOTO[NTERM-NUM]. */
721 static const short int yypgoto
[] =
723 -717, -334, -81, -2, -58, -717, -717, -717, 507, -717,
724 -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
725 -717, -717, -84, -717, -284, -717, -717, -717, -276, -717,
726 -717, 370, -141, 35, -135, -174, -22, -14, -717, -717,
727 -717, 502, -717, -717, 361, -717, -717, -717, -717, 382,
728 -261, -717, -717, -177, -717, -121, -717, -63, 520, 37,
729 3, 45, -717, -717, -717, -717, -179, -717, -88, -10,
730 -32, -717, -717, 166, -350, -717, -257, -717, 7, -717,
731 -89, -359, -717, -79, -717, 101, -717, -440, -438, 214,
732 -717, -708, -83, -374, -717, -367, -27, -717, 383, -717,
733 -717, 529, -717, -209, -670, -716, -717, -717, 535, -717,
734 169, -384, -717, -355, -686, 148, -208, -717, -717, -691,
735 -717, -717, -319, -352, -717, -717, -717, -245, -717, -396,
736 -407, -400, -717, -717, -717, -717, -717, -717, -155, -20,
740 /* YYDEFGOTO[NTERM-NUM]. */
741 static const short int yydefgoto
[] =
743 -1, 712, 618, 163, 348, 602, 26, 27, 28, 29,
744 30, 85, 86, 87, 88, 354, 89, 90, 91, 312,
745 743, 744, 349, 350, 367, 667, 668, 31, 686, 687,
746 32, 95, 673, 674, 675, 33, 34, 35, 36, 37,
747 38, 39, 40, 41, 176, 401, 404, 179, 42, 181,
748 688, 43, 191, 793, 44, 603, 604, 605, 45, 46,
749 47, 98, 410, 49, 411, 50, 412, 413, 414, 51,
750 619, 52, 53, 481, 482, 677, 803, 843, 100, 418,
751 419, 641, 621, 622, 661, 450, 55, 101, 102, 142,
752 638, 754, 377, 395, 623, 166, 438, 168, 169, 393,
753 56, 57, 699, 700, 642, 701, 147, 702, 703, 704,
754 427, 428, 429, 893, 894, 895, 782, 783, 784, 138,
755 877, 896, 827, 907, 908, 430, 652, 794, 431, 909,
756 644, 139, 832, 859, 432, 433, 434, 649, 650, 646,
760 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
761 positive, shift that token. If negative, reduce the rule whose
762 number is the opposite. If YYTABLE_NINF, syntax error. */
763 static const short int yytable
[] =
765 67, 165, 154, 351, 416, 99, 167, 54, 409, 409,
766 365, 164, 368, 436, 137, 140, 141, 653, 97, 378,
767 170, 645, 311, 626, 645, 643, 442, 478, 479, 624,
768 385, 763, 355, 475, 54, 620, 785, 679, 390, 680,
769 786, 781, 629, 655, 807, 48, 810, 66, 804, 443,
770 96, 352, 149, 162, 379, 48, 391, 380, 151, 186,
771 187, 188, 159, 58, 732, 59, 48, 153, 435, 48,
772 48, 160, 48, -387, 656, 451, 800, -387, 310, 402,
773 654, 454, 403, 480, 99, 180, 801, 826, 477, 366,
774 369, 371, 846, 692, 659, 785, 182, 97, 375, -386,
775 830, 716, 189, -24, 869, 11, 446, 447, 475, 764,
776 48, -449, 448, 190, 392, -438, -458, 475, -458, 183,
777 475, 105, 880, 143, 449, 689, 144, 184, 398, 373,
778 145, -387, 146, 185, 866, 420, 421, 422, 423, 424,
779 763, 425, 426, 735, 353, 628, 736, 99, 420, 421,
780 422, 423, 424, 313, 425, 426, 374, -386, 437, 856,
781 97, -449, -508, 64, -501, 397, 376, -508, 177, 4,
782 5, 666, 415, 415, -381, -501, 376, 902, 171, 172,
783 173, 381, 417, 174, 874, 785, 382, 383, 384, 897,
784 669, 670, 96, 66, 387, 48, 175, 386, 826, 923,
785 396, 48, 394, 171, 172, 173, 785, -355, 174, -355,
786 -355, 912, -382, -501, 131, 132, 133, 134, 135, 136,
787 785, 175, 655, -487, 897, -487, -487, 444, 400, 365,
788 406, 368, 679, 455, 680, -387, -387, 679, 407, 680,
789 1, 2, 3, 4, 5, 6, 7, 8, 926, 631,
790 632, 634, 635, 9, 823, 824, 708, 719, 60, 709,
791 722, 143, 485, 439, 144, 11, 761, 762, 145, 825,
792 146, 693, 694, 695, 696, 697, 476, 724, 365, 477,
793 368, 769, 770, 607, 365, 484, 368, 143, 772, 773,
794 144, 698, 445, 745, 145, 608, 146, 693, 694, 695,
795 696, 697, 162, 676, 834, 657, 370, 372, 366, 420,
796 421, 422, 423, 424, 609, 425, 426, 627, 440, 630,
797 61, 62, 63, 64, 633, 636, 659, 22, 637, 645,
798 657, 658, 475, 787, 663, 475, 475, 121, 122, 123,
799 124, 125, 126, 127, 128, 129, 671, 768, 713, 717,
800 771, 728, 766, 767, 730, 720, 726, 366, 727, 150,
801 731, 723, 453, 366, 729, 732, 733, 734, 780, 625,
802 737, 738, 746, 751, 365, 747, 368, 165, 748, 753,
803 749, 759, 167, 811, 760, 774, 775, 164, 639, 795,
804 647, 796, 651, 365, 365, 368, 368, 799, 817, 802,
805 819, 820, 808, 828, 821, 812, 829, 805, 806, 831,
806 -598, 818, 1, 2, 3, 4, 5, 6, 7, 8,
807 835, 648, 839, 840, 841, 9, 844, 780, 862, 850,
808 60, 645, 851, 852, 660, 858, 397, 11, 854, 864,
809 860, 707, 861, 863, 865, 755, 681, 682, 867, 868,
810 665, 718, 689, 366, 849, 881, 409, 870, 876, 409,
811 871, 873, 882, 475, 475, 797, 798, 99, 878, 855,
812 879, 883, 366, 366, 884, 886, 823, 824, 872, 645,
813 97, 888, 889, 899, 678, 890, 900, 898, 731, 901,
814 645, 903, 92, 93, 18, 64, 904, 915, 676, 911,
815 913, 914, 916, 676, 917, 1, 2, 3, 4, 5,
816 6, 7, 8, 918, 920, 919, 891, 780, 9, 922,
817 645, 924, 931, 60, 928, 927, 929, 388, 932, 672,
818 11, 645, 935, 936, 161, 848, 756, 752, 780, 405,
819 389, 691, 178, 925, 158, 721, 483, 845, 725, 662,
820 152, 399, 780, 809, 148, 606, 921, 790, 934, 121,
821 122, 123, 124, 125, 126, 127, 128, 129, 640, 822,
822 906, 1, 2, 3, 4, 5, 6, 7, 8, 933,
823 853, 791, 0, 0, 9, 61, 62, 63, 64, 60,
824 815, 0, 0, 446, 447, 409, 757, 758, 0, 0,
825 0, 1, 2, 3, 4, 5, 6, 7, 8, 0,
826 0, 449, 0, 0, 9, 0, 0, 0, 0, 60,
827 415, 0, 715, 415, 65, 740, 0, 0, 0, 0,
828 0, 0, 0, 625, 0, 417, 0, 0, 0, 0,
829 0, 0, 0, 0, 165, 0, 0, 0, 0, 167,
830 0, 61, 62, 63, 164, 0, 742, 0, 0, 0,
831 0, 0, 99, 0, 0, 0, 0, 99, 365, 365,
832 368, 368, 0, 0, 0, 97, 375, 0, 0, 678,
833 97, 61, 62, 63, 678, 164, 0, 625, 0, 0,
834 625, 887, 0, 0, 0, 0, 409, 0, 0, 788,
835 0, 0, 437, 0, 0, 437, 0, 0, 0, 905,
836 0, 836, 0, 789, 409, 0, 0, 1, 2, 3,
837 4, 5, 6, 7, 8, 0, 0, 0, 0, 0,
838 9, 0, 0, 0, 648, 10, 0, 0, 0, 0,
839 0, 0, 11, 12, 13, 930, 0, 366, 366, 0,
840 409, 0, 0, 0, 14, 0, 0, 833, 0, 415,
841 0, 0, 0, 0, 0, 0, 814, 0, 0, 715,
842 842, 68, 0, 681, 682, 0, 0, 0, 0, 0,
843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
844 847, 0, 0, 437, 838, 0, 15, 16, 17, 18,
845 19, 20, 21, 0, 22, 0, 0, 69, 70, 71,
846 72, 73, 74, 75, 76, 77, 78, 79, 80, 0,
847 81, 82, 83, 84, 0, 0, 0, 0, 0, 23,
848 0, 0, 0, 0, 24, 885, 25, 0, 0, 0,
849 0, 0, 0, 0, 892, 0, 0, 0, 0, 0,
850 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
851 415, 0, 0, 0, 0, 0, 0, 0, 0, 0,
852 0, 0, 0, 0, 0, 0, 0, 0, 415, 892,
853 0, 0, 0, 0, 192, 0, 0, 193, 194, 195,
854 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
855 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
856 216, 217, 218, 219, 415, 220, 221, 222, 223, 224,
857 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
858 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
859 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
860 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
861 265, 266, 267, 268, 0, 269, 0, 270, 271, 272,
862 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
863 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
864 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
865 303, 0, 0, 304, 0, 305, 306, 307, 308, 309,
866 192, 0, 0, 314, 194, 195, 196, 197, 198, 199,
867 200, 201, 315, 203, 204, 205, 206, 316, 317, 209,
868 210, 211, 318, 213, 214, 215, 216, 217, 218, 219,
869 0, 220, 221, 222, 223, 224, 225, 226, 227, 228,
870 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
871 239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
872 249, 250, 251, 252, 253, 254, 319, 320, 321, 322,
873 323, 260, 261, 262, 263, 264, 265, 266, 267, 268,
874 0, 269, 0, 270, 271, 272, 273, 274, 324, 276,
875 325, 326, 327, 328, 329, 330, 283, 331, 285, 286,
876 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
877 342, 343, 344, 345, 346, 347, 303, 0, 0, 304,
878 0, 305, 306, 307, 308, 309, 486, 0, 0, 487,
879 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
880 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
881 508, 509, 510, 511, 512, 513, 0, 514, 515, 516,
882 517, 518, 384, 690, 519, 520, 521, 522, 523, 524,
883 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
884 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
885 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
886 555, 556, 557, 558, 559, 560, 0, 561, 0, 562,
887 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
888 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
889 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
890 593, 594, 595, 0, 0, 596, 0, 597, 598, 599,
891 600, 601, 486, 0, 0, 487, 488, 489, 490, 491,
892 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
893 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
894 512, 513, 0, 514, 515, 516, 517, 518, 384, 0,
895 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
896 529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
897 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
898 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
899 559, 560, 0, 561, 0, 562, 563, 564, 565, 566,
900 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
901 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
902 587, 588, 589, 590, 591, 592, 593, 594, 595, 103,
903 0, 596, 0, 597, 598, 599, 600, 601, 104, 0,
904 0, 0, 0, 105, 106, 610, 0, 0, 107, 611,
905 0, 612, 0, 613, 358, 614, 0, 0, 615, 0,
906 0, 0, 0, 1, 2, 3, 4, 5, 6, 7,
907 8, 0, 0, 360, 361, 162, 9, 0, 0, 0,
908 0, 60, 0, 0, 0, 0, 362, 363, 11, 0,
909 0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
910 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
911 0, 0, 0, 616, 113, 0, 114, 115, 116, 117,
912 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
913 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
914 135, 136, 0, 92, 93, 18, 64, 0, 0, 0,
915 617, 1, 2, 3, 4, 5, 6, 7, 8, 0,
916 0, 0, 0, 0, 9, 0, 0, 0, 0, 60,
917 0, 0, -33, 0, 0, 0, 11, 0, 0, 0,
918 94, -33, 0, 0, 0, 0, -33, -33, 0, 0,
919 0, -33, 0, 0, -33, -33, -33, -33, 0, 0,
920 0, -33, 0, 0, 0, 0, 0, 0, 0, 0,
921 0, 0, 0, 0, 0, 0, -33, -33, 0, 0,
922 0, 0, 0, 0, 0, 0, 0, 0, 0, -33,
923 -33, 92, 93, 18, 64, -33, -33, -33, -33, -33,
924 0, 0, 0, 0, 0, 0, 0, -33, 0, 0,
925 0, 0, 0, 0, 0, 0, 0, -33, 0, -33,
926 -33, -33, -33, -33, -33, 0, -33, 0, 672, -33,
927 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
928 -33, -33, -33, -33, -33, -34, 0, -33, 0, 0,
929 0, 0, 0, 0, -34, 0, 0, 0, 0, -34,
930 -34, 0, 0, 0, -34, 0, 0, -34, -34, -34,
931 -34, 0, 0, 0, -34, 0, 0, 0, 0, 0,
932 0, 1, 2, 3, 4, 5, 6, 7, 8, -34,
933 -34, 0, 0, 0, 9, 0, 0, 0, 0, 60,
934 0, 0, -34, -34, 0, 0, 11, 0, -34, -34,
935 -34, -34, -34, 0, 0, 0, 0, 0, 0, 0,
936 -34, 0, 0, 0, 0, 0, 0, 0, 0, 0,
937 -34, 0, -34, -34, -34, -34, -34, -34, 0, -34,
938 0, 0, -34, -34, -34, -34, -34, -34, -34, -34,
939 -34, -34, -34, -34, -34, -34, -34, -34, -57, 0,
940 -34, 61, 62, 63, 64, 0, 0, -57, 0, 0,
941 0, 0, -57, -57, 0, 0, 0, -57, 0, 0,
942 -57, -57, -57, -57, 0, 0, 0, -57, 0, 0,
943 0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
944 7, 8, -57, -57, 0, 0, 0, 9, 0, 0,
945 0, 0, 60, 0, 0, -57, -57, 0, 0, 11,
946 0, -57, -57, -57, -57, -57, 0, 0, 0, 0,
947 0, 0, 0, -57, 0, 0, 0, 0, 0, 0,
948 0, 0, 0, -57, 0, -57, -57, -57, -57, -57,
949 -57, 0, -57, 0, 0, -57, -57, -57, -57, -57,
950 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
951 -57, -58, 0, -613, 92, 93, 18, 64, 0, 0,
952 -58, 0, 0, 0, 0, -58, -58, 0, 0, 0,
953 -58, 0, 0, -58, -58, -58, -58, 0, 0, 0,
954 -58, 0, 0, 0, 0, 0, 0, 1, 2, 3,
955 4, 5, 6, 7, 8, -58, -58, 0, 0, 0,
956 9, 0, 0, 0, 0, 60, 0, 0, -58, -58,
957 0, 0, 11, 0, -58, -58, -58, -58, -58, 0,
958 0, 0, 0, 0, 0, 0, -58, 0, 0, 0,
959 0, 0, 0, 0, 0, 0, -58, 0, -58, -58,
960 -58, -58, -58, -58, 0, -58, 0, 0, -58, -58,
961 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58,
962 -58, -58, -58, -58, -24, 0, -574, 61, 62, 63,
963 64, 0, 0, -24, 0, 0, 0, 0, -24, -24,
964 0, 0, 0, -24, 0, 0, -24, -24, -24, -24,
965 0, 0, 0, -24, 0, 0, 0, 0, 0, 0,
966 1, 2, 3, 4, 5, 6, 7, 8, -24, -24,
967 0, 0, 0, 408, 0, 0, 0, 0, 60, 0,
968 0, -24, -24, 0, 0, 11, 0, -24, -24, -24,
969 -24, -24, 0, 0, 0, 0, 0, 0, 0, -24,
970 0, 0, 0, 0, 0, 0, 0, 0, 0, -24,
971 0, -24, -24, -24, -24, -24, -24, 0, -24, 0,
972 0, -24, -24, -24, -24, -24, -24, -24, -24, -24,
973 -24, -24, -24, -24, -24, -24, -24, -39, 0, -24,
974 61, 62, 63, 64, 0, 0, -39, 0, 0, 0,
975 0, -39, -39, 0, 0, 0, -39, 0, 0, -39,
976 -39, -39, -39, 0, 0, 0, -39, 0, 0, 0,
977 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
978 0, -39, -39, 0, 0, 0, 0, 0, 0, 0,
979 0, 0, 0, 0, -39, -39, 0, 0, 0, 0,
980 -39, -39, -39, -39, -39, 0, 0, 0, 0, 0,
981 0, 0, -39, 0, 0, 0, 0, 0, 0, 0,
982 0, 0, -39, 0, -39, -39, -39, -39, -39, -39,
983 0, -39, 0, 0, -39, -39, -39, -39, -39, -39,
984 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
985 -38, 0, -39, 0, 0, 0, 0, 0, 0, -38,
986 0, 0, 0, 0, -38, -38, 0, 0, 0, -38,
987 0, 0, -38, -38, -38, -38, 0, 0, 0, -38,
988 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
989 0, 0, 0, 0, -38, -38, 0, 0, 0, 0,
990 0, 0, 0, 0, 0, 0, 0, -38, -38, 0,
991 0, 0, 0, -38, -38, -38, -38, -38, 0, 0,
992 0, 0, 0, 0, 0, -38, 0, 0, 0, 0,
993 0, 0, 0, 0, 0, -38, 0, -38, -38, -38,
994 -38, -38, -38, 0, -38, 0, 0, -38, -38, -38,
995 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38,
996 -38, -38, -38, -37, 0, -38, 0, 0, 0, 0,
997 0, 0, -37, 0, 0, 0, 0, -37, -37, 0,
998 0, 0, -37, 0, 0, -37, -37, -37, -37, 0,
999 0, 0, -37, 0, 0, 0, 0, 0, 0, 0,
1000 0, 0, 0, 0, 0, 0, 0, -37, -37, 0,
1001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1002 -37, -37, 0, 0, 0, 0, -37, -37, -37, -37,
1003 -37, 0, 0, 0, 0, 0, 0, 0, -37, 0,
1004 0, 0, 0, 0, 0, 0, 0, 0, -37, 0,
1005 -37, -37, -37, -37, -37, -37, 0, -37, 0, 0,
1006 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
1007 -37, -37, -37, -37, -37, -37, -35, 0, -37, 0,
1008 0, 0, 0, 0, 0, -35, 0, 0, 0, 0,
1009 -35, -35, 0, 0, 0, -35, 0, 0, -35, -35,
1010 -35, -35, 0, 0, 0, -35, 0, 0, 0, 0,
1011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1012 -35, -35, 0, 0, 0, 0, 0, 0, 0, 0,
1013 0, 0, 0, -35, -35, 0, 0, 0, 0, -35,
1014 -35, -35, -35, -35, 0, 0, 0, 0, 0, 0,
1015 0, -35, 0, 0, 0, 0, 0, 0, 0, 0,
1016 0, -35, 0, -35, -35, -35, -35, -35, -35, 0,
1017 -35, 0, 0, -35, -35, -35, -35, -35, -35, -35,
1018 -35, -35, -35, -35, -35, -35, -35, -35, -35, -36,
1019 0, -35, 0, 0, 0, 0, 0, 0, -36, 0,
1020 0, 0, 0, -36, -36, 0, 0, 0, -36, 0,
1021 0, -36, -36, -36, -36, 0, 0, 0, -36, 0,
1022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1023 0, 0, 0, -36, -36, 0, 0, 0, 0, 0,
1024 0, 0, 0, 0, 0, 0, -36, -36, 0, 0,
1025 0, 0, -36, -36, -36, -36, -36, 0, 0, 0,
1026 0, 0, 0, 0, -36, 0, 0, 0, 0, 0,
1027 0, 0, 0, 0, -36, 0, -36, -36, -36, -36,
1028 -36, -36, 0, -36, 0, 0, -36, -36, -36, -36,
1029 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
1030 -36, -36, -32, 0, -36, 0, 0, 0, 0, 0,
1031 0, -32, 0, 0, 0, 0, -32, -32, 0, 0,
1032 0, -32, 0, 0, -32, -32, -32, -32, 0, 0,
1033 0, -32, 0, 0, 0, 0, 0, 0, 0, 0,
1034 0, 0, 0, 0, 0, 0, -32, -32, 0, 0,
1035 0, 0, 0, 0, 0, 0, 0, 0, 0, -32,
1036 -32, 0, 0, 0, 0, -32, -32, -32, -32, -32,
1037 0, 0, 0, 0, 0, 0, 0, -32, 0, 0,
1038 0, 0, 0, 0, 0, 0, 0, -32, 0, -32,
1039 -32, -32, -32, -32, -32, 0, -32, 0, 0, -32,
1040 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32,
1041 -32, -32, -32, -32, -32, -31, 0, -32, 0, 0,
1042 0, 0, 0, 0, -31, 0, 0, 0, 0, -31,
1043 -31, 0, 0, 0, -31, 0, 0, -31, -31, -31,
1044 -31, 0, 0, 0, -31, 0, 0, 0, 0, 0,
1045 0, 0, 0, 0, 0, 0, 0, 0, 0, -31,
1046 -31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1047 0, 0, -31, -31, 0, 0, 0, 0, -31, -31,
1048 -31, -31, -31, 0, 0, 0, 0, 0, 0, 0,
1049 -31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1050 -31, 0, -31, -31, -31, -31, -31, -31, 0, -31,
1051 0, 0, -31, -31, -31, -31, -31, -31, -31, -31,
1052 -31, -31, -31, -31, -31, -31, -31, -31, -25, 0,
1053 -31, 0, 0, 0, 0, 0, 0, -25, 0, 0,
1054 0, 0, -25, -25, 0, 0, 0, -25, 0, 0,
1055 -25, -25, -25, -25, 0, 0, 0, -25, 0, 0,
1056 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1057 0, 0, -25, -25, 0, 0, 0, 0, 0, 0,
1058 0, 0, 0, 0, 0, -25, -25, 0, 0, 0,
1059 0, -25, -25, -25, -25, -25, 0, 0, 0, 0,
1060 0, 0, 0, -25, 0, 0, 0, 0, 0, 0,
1061 0, 0, 0, -25, 0, -25, -25, -25, -25, -25,
1062 -25, 0, -25, 0, 0, -25, -25, -25, -25, -25,
1063 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
1064 -25, -29, 0, -25, 0, 0, 0, 0, 0, 0,
1065 -29, 0, 0, 0, 0, -29, -29, 0, 0, 0,
1066 -29, 0, 0, -29, -29, -29, -29, 0, 0, 0,
1067 -29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1068 0, 0, 0, 0, 0, -29, -29, 0, 0, 0,
1069 0, 0, 0, 0, 0, 0, 0, 0, -29, -29,
1070 0, 0, 0, 0, -29, -29, -29, -29, -29, 0,
1071 0, 0, 0, 0, 0, 0, -29, 0, 0, 0,
1072 0, 0, 0, 0, 0, 0, -29, 0, -29, -29,
1073 -29, -29, -29, -29, 0, -29, 0, 0, -29, -29,
1074 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29,
1075 -29, -29, -29, -29, -28, 0, -29, 0, 0, 0,
1076 0, 0, 0, -28, 0, 0, 0, 0, -28, -28,
1077 0, 0, 0, -28, 0, 0, -28, -28, -28, -28,
1078 0, 0, 0, -28, 0, 0, 0, 0, 0, 0,
1079 0, 0, 0, 0, 0, 0, 0, 0, -28, -28,
1080 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1081 0, -28, -28, 0, 0, 0, 0, -28, -28, -28,
1082 -28, -28, 0, 0, 0, 0, 0, 0, 0, -28,
1083 0, 0, 0, 0, 0, 0, 0, 0, 0, -28,
1084 0, -28, -28, -28, -28, -28, -28, 0, -28, 0,
1085 0, -28, -28, -28, -28, -28, -28, -28, -28, -28,
1086 -28, -28, -28, -28, -28, -28, -28, -26, 0, -28,
1087 0, 0, 0, 0, 0, 0, -26, 0, 0, 0,
1088 0, -26, -26, 0, 0, 0, -26, 0, 0, -26,
1089 -26, -26, -26, 0, 0, 0, -26, 0, 0, 0,
1090 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1091 0, -26, -26, 0, 0, 0, 0, 0, 0, 0,
1092 0, 0, 0, 0, -26, -26, 0, 0, 0, 0,
1093 -26, -26, -26, -26, -26, 0, 0, 0, 0, 0,
1094 0, 0, -26, 0, 0, 0, 0, 0, 0, 0,
1095 0, 0, -26, 0, -26, -26, -26, -26, -26, -26,
1096 0, -26, 0, 0, -26, -26, -26, -26, -26, -26,
1097 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
1098 -27, 0, -26, 0, 0, 0, 0, 0, 0, -27,
1099 0, 0, 0, 0, -27, -27, 0, 0, 0, -27,
1100 0, 0, -27, -27, -27, -27, 0, 0, 0, -27,
1101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1102 0, 0, 0, 0, -27, -27, 0, 0, 0, 0,
1103 0, 0, 0, 0, 0, 0, 0, -27, -27, 0,
1104 0, 0, 0, -27, -27, -27, -27, -27, 0, 0,
1105 0, 0, 0, 0, 0, -27, 0, 0, 0, 0,
1106 0, 0, 0, 0, 0, -27, 0, -27, -27, -27,
1107 -27, -27, -27, 0, -27, 0, 0, -27, -27, -27,
1108 -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
1109 -27, -27, -27, -40, 0, -27, 0, 0, 0, 0,
1110 0, 0, -40, 0, 0, 0, 0, -40, -40, 0,
1111 0, 0, -40, 0, 0, -40, -40, -40, -40, 0,
1112 0, 0, -40, 0, 0, 0, 0, 0, 0, 0,
1113 0, 0, 0, 0, 0, 0, 0, -40, -40, 0,
1114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1115 -40, -40, 0, 0, 0, 0, -40, -40, -40, -40,
1116 -40, 0, 0, 0, 0, 0, 0, 0, -40, 0,
1117 0, 0, 0, 0, 0, 0, 0, 0, -40, 0,
1118 -40, -40, -40, -40, -40, -40, 0, -40, 0, 0,
1119 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40,
1120 -40, -40, -40, -40, -40, -40, -135, 0, -40, 0,
1121 0, 0, 0, 0, 0, -135, 0, 0, 0, 0,
1122 -135, -135, 0, 0, 0, -135, 0, 0, -135, -135,
1123 -135, -135, 0, 0, 0, -135, 0, 0, 0, 0,
1124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1125 -135, -135, 0, 0, 0, 0, 0, 0, 0, 0,
1126 0, 0, 0, -135, -135, 0, 0, 0, 0, -135,
1127 -135, -135, -135, -135, 0, 0, 0, 0, 0, 0,
1128 0, -135, 0, 0, 0, 0, 0, 0, 0, 0,
1129 0, -135, 0, -135, -135, -135, -135, -135, -135, 0,
1130 -135, 0, 0, -135, -135, -135, -135, -135, -135, -135,
1131 -135, -135, -135, -135, -135, -135, -135, -135, -135, -136,
1132 0, -582, 0, 0, 0, 0, 0, 0, -136, 0,
1133 0, 0, 0, -136, -136, 0, 0, 0, -136, 0,
1134 0, -136, -136, -136, -136, 0, 0, 0, -136, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1136 0, 0, 0, -136, -136, 0, 0, 0, 0, 0,
1137 0, 0, 0, 0, 0, 0, -136, -136, 0, 0,
1138 0, 0, -136, -136, -136, -136, -136, 0, 0, 0,
1139 0, 0, 0, 0, -136, 0, 0, 0, 0, 0,
1140 0, 0, 0, 0, -136, 0, -136, -136, -136, -136,
1141 -136, -136, 0, -136, 0, 0, -136, -136, -136, -136,
1142 -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
1143 -136, -136, -137, 0, -581, 0, 0, 0, 0, 0,
1144 0, -137, 0, 0, 0, 0, -137, -137, 0, 0,
1145 0, -137, 0, 0, -137, -137, -137, -137, 0, 0,
1146 0, -137, 0, 0, 0, 0, 0, 0, 0, 0,
1147 0, 0, 0, 0, 0, 0, -137, -137, 0, 0,
1148 0, 0, 0, 0, 0, 0, 0, 0, 0, -137,
1149 -137, 0, 0, 0, 0, -137, -137, -137, -137, -137,
1150 0, 0, 0, 0, 0, 0, 0, -137, 0, 0,
1151 0, 0, 0, 0, 0, 0, 0, -137, 0, -137,
1152 -137, -137, -137, -137, -137, 0, -137, 0, 0, -137,
1153 -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
1154 -137, -137, -137, -137, -137, -138, 0, -579, 0, 0,
1155 0, 0, 0, 0, -138, 0, 0, 0, 0, -138,
1156 -138, 0, 0, 0, -138, 0, 0, -138, -138, -138,
1157 -138, 0, 0, 0, -138, 0, 0, 0, 0, 0,
1158 0, 0, 0, 0, 0, 0, 0, 0, 0, -138,
1159 -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1160 0, 0, -138, -138, 0, 0, 0, 0, -138, -138,
1161 -138, -138, -138, 0, 0, 0, 0, 0, 0, 0,
1162 -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1163 -138, 0, -138, -138, -138, -138, -138, -138, 0, -138,
1164 0, 0, -138, -138, -138, -138, -138, -138, -138, -138,
1165 -138, -138, -138, -138, -138, -138, -138, -138, -139, 0,
1166 -577, 0, 0, 0, 0, 0, 0, -139, 0, 0,
1167 0, 0, -139, -139, 0, 0, 0, -139, 0, 0,
1168 -139, -139, -139, -139, 0, 0, 0, -139, 0, 0,
1169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1170 0, 0, -139, -139, 0, 0, 0, 0, 0, 0,
1171 0, 0, 0, 0, 0, -139, -139, 0, 0, 0,
1172 0, -139, -139, -139, -139, -139, 0, 0, 0, 0,
1173 0, 0, 0, -139, 0, 0, 0, 0, 0, 0,
1174 0, 0, 0, -139, 0, -139, -139, -139, -139, -139,
1175 -139, 0, -139, 0, 0, -139, -139, -139, -139, -139,
1176 -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
1177 -139, -140, 0, -578, 0, 0, 0, 0, 0, 0,
1178 -140, 0, 0, 0, 0, -140, -140, 0, 0, 0,
1179 -140, 0, 0, -140, -140, -140, -140, 0, 0, 0,
1180 -140, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1181 0, 0, 0, 0, 0, -140, -140, 0, 0, 0,
1182 0, 0, 0, 0, 0, 0, 0, 0, -140, -140,
1183 0, 0, 0, 0, -140, -140, -140, -140, -140, 0,
1184 0, 0, 0, 0, 0, 0, -140, 0, 0, 0,
1185 0, 0, 0, 0, 0, 0, -140, 0, -140, -140,
1186 -140, -140, -140, -140, 0, -140, 0, 0, -140, -140,
1187 -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
1188 -140, -140, -140, -140, -141, 0, -580, 0, 0, 0,
1189 0, 0, 0, -141, 0, 0, 0, 0, -141, -141,
1190 0, 0, 0, -141, 0, 0, -141, -141, -141, -141,
1191 0, 0, 0, -141, 0, 0, 0, 0, 0, 0,
1192 0, 0, 0, 0, 0, 0, 0, 0, -141, -141,
1193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1194 0, -141, -141, 0, 0, 0, 0, -141, -141, -141,
1195 -141, -141, 0, 0, 0, 0, 0, 0, 0, -141,
1196 0, 0, 0, 0, 0, 0, 0, 0, 0, -141,
1197 0, -141, -141, -141, -141, -141, -141, 0, -141, 0,
1198 0, -141, -141, -141, -141, -141, -141, -141, -141, -141,
1199 -141, -141, -141, -141, -141, -141, -141, -142, 0, -576,
1200 0, 0, 0, 0, 0, 0, -142, 0, 0, 0,
1201 0, -142, -142, 0, 0, 0, -142, 0, 0, -142,
1202 -142, -142, -142, 0, 0, 0, -142, 0, 0, 0,
1203 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1204 0, -142, -142, 0, 0, 0, 0, 0, 0, 0,
1205 0, 0, 0, 0, -142, -142, 0, 0, 0, 0,
1206 -142, -142, -142, -142, -142, 0, 0, 0, 0, 0,
1207 0, 0, -142, 0, 0, 0, 0, 0, 0, 0,
1208 0, 0, -142, 0, -142, -142, -142, -142, -142, -142,
1209 0, -142, 0, 0, -142, -142, -142, -142, -142, -142,
1210 -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
1211 -143, 0, -575, 0, 0, 0, 0, 0, 0, -143,
1212 0, 0, 0, 0, -143, -143, 0, 0, 0, -143,
1213 0, 0, -143, -143, -143, -143, 0, 0, 0, -143,
1214 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1215 0, 0, 0, 0, -143, -143, 0, 0, 0, 0,
1216 0, 0, 0, 0, 0, 0, 0, -143, -143, 0,
1217 0, 0, 0, -143, -143, -143, -143, -143, 0, 0,
1218 0, 0, 0, 0, 0, -143, 0, 0, 0, 0,
1219 0, 0, 0, 0, 0, -143, 0, -143, -143, -143,
1220 -143, -143, -143, 0, -143, 0, 0, -143, -143, -143,
1221 -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
1222 -143, -143, -143, -30, 0, -583, 0, 0, 0, 0,
1223 0, 0, -30, 0, 0, 0, 0, -30, -30, 0,
1224 0, 0, -30, 0, 0, -30, -30, -30, -30, 0,
1225 0, 0, -30, 0, 0, 0, 0, 0, 0, 0,
1226 0, 0, 0, 0, 0, 0, 0, -30, -30, 0,
1227 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1228 -30, -30, 0, 0, 0, 0, -30, -30, -30, -30,
1229 -30, 0, 0, 0, 0, 0, 0, 0, -30, 0,
1230 0, 0, 0, 0, 0, 0, 0, 0, -30, 0,
1231 -30, -30, -30, -30, -30, -30, 0, -30, 0, 0,
1232 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
1233 -30, -30, -30, -30, -30, -30, -145, 0, -30, 0,
1234 0, 0, 0, 0, 0, -145, 0, 0, 0, 0,
1235 -145, -145, 0, 0, 0, -145, 0, 0, -145, -145,
1236 -145, -145, 0, 0, 0, -145, 0, 0, 0, 0,
1237 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1238 -145, -145, 0, 0, 0, 0, 0, 0, 0, 0,
1239 0, 0, 0, -145, -145, 0, 0, 0, 0, -145,
1240 -145, -145, -145, -145, 0, 0, 0, 0, 0, 0,
1241 0, -145, 0, 0, 0, 0, 0, 0, 0, 0,
1242 0, -145, 0, -145, -145, -145, -145, -145, -145, 0,
1243 -145, 0, 0, -145, -145, -145, -145, -145, -145, -145,
1244 -145, -145, -145, -145, -145, -145, -145, -145, -145, -146,
1245 0, -611, 0, 0, 0, 0, 0, 0, -146, 0,
1246 0, 0, 0, -146, -146, 0, 0, 0, -146, 0,
1247 0, -146, -146, -146, -146, 0, 0, 0, -146, 0,
1248 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1249 0, 0, 0, -146, -146, 0, 0, 0, 0, 0,
1250 0, 0, 0, 0, 0, 0, -146, -146, 0, 0,
1251 0, 0, -146, -146, -146, -146, -146, 0, 0, 0,
1252 0, 0, 0, 0, -146, 0, 0, 0, 0, 0,
1253 0, 0, 0, 0, -146, 0, -146, -146, -146, -146,
1254 -146, -146, 0, -146, 0, 0, -146, -146, -146, -146,
1255 -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
1256 -146, -146, -147, 0, -609, 0, 0, 0, 0, 0,
1257 0, -147, 0, 0, 0, 0, -147, -147, 0, 0,
1258 0, -147, 0, 0, -147, -147, -147, -147, 0, 0,
1259 0, -147, 0, 0, 0, 0, 0, 0, 0, 0,
1260 0, 0, 0, 0, 0, 0, -147, -147, 0, 0,
1261 0, 0, 0, 0, 0, 0, 0, 0, 0, -147,
1262 -147, 0, 0, 0, 0, -147, -147, -147, -147, -147,
1263 0, 0, 0, 0, 0, 0, 0, -147, 0, 0,
1264 0, 0, 0, 0, 0, 0, 0, -147, 0, -147,
1265 -147, -147, -147, -147, -147, 0, -147, 0, 0, -147,
1266 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
1267 -147, -147, -147, -147, -147, -148, 0, -608, 0, 0,
1268 0, 0, 0, 0, -148, 0, 0, 0, 0, -148,
1269 -148, 0, 0, 0, -148, 0, 0, -148, -148, -148,
1270 -148, 0, 0, 0, -148, 0, 0, 0, 0, 0,
1271 0, 0, 0, 0, 0, 0, 0, 0, 0, -148,
1272 -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1273 0, 0, -148, -148, 0, 0, 0, 0, -148, -148,
1274 -148, -148, -148, 0, 0, 0, 0, 0, 0, 0,
1275 -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1276 -148, 0, -148, -148, -148, -148, -148, -148, 0, -148,
1277 0, 0, -148, -148, -148, -148, -148, -148, -148, -148,
1278 -148, -148, -148, -148, -148, -148, -148, -148, -149, 0,
1279 -610, 0, 0, 0, 0, 0, 0, -149, 0, 0,
1280 0, 0, -149, -149, 0, 0, 0, -149, 0, 0,
1281 -149, -149, -149, -149, 0, 0, 0, -149, 0, 0,
1282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1283 0, 0, -149, -149, 0, 0, 0, 0, 0, 0,
1284 0, 0, 0, 0, 0, -149, -149, 0, 0, 0,
1285 0, -149, -149, -149, -149, -149, 0, 0, 0, 0,
1286 0, 0, 0, -149, 0, 0, 0, 0, 0, 0,
1287 0, 0, 0, -149, 0, -149, -149, -149, -149, -149,
1288 -149, 0, -149, 0, 0, -149, -149, -149, -149, -149,
1289 -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
1290 -149, -150, 0, -607, 0, 0, 0, 0, 0, 0,
1291 -150, 0, 0, 0, 0, -150, -150, 0, 0, 0,
1292 -150, 0, 0, -150, -150, -150, -150, 0, 0, 0,
1293 -150, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1294 0, 0, 0, 0, 0, -150, -150, 0, 0, 0,
1295 0, 0, 0, 0, 0, 0, 0, 0, -150, -150,
1296 0, 0, 0, 0, -150, -150, -150, -150, -150, 0,
1297 0, 0, 0, 0, 0, 0, -150, 0, 0, 0,
1298 0, 0, 0, 0, 0, 0, -150, 0, -150, -150,
1299 -150, -150, -150, -150, 0, -150, 0, 0, -150, -150,
1300 -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
1301 -150, -150, -150, -150, 103, 0, -606, 0, 0, 0,
1302 0, 0, 0, 104, 0, 0, 0, 0, 105, 106,
1303 0, 0, 0, 107, 0, 0, 356, 440, 357, 358,
1304 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
1305 0, 0, 0, 0, 0, 0, 0, 0, 360, 361,
1306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1307 0, 362, 363, 0, 0, 0, 0, 108, 109, 110,
1308 111, 112, 0, 0, 0, 0, 0, 0, 0, 364,
1309 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
1310 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1311 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1312 130, 131, 132, 133, 134, 135, 136, -574, 0, 441,
1313 0, 0, 0, 0, 0, 0, -574, 0, 0, 0,
1314 0, -574, -574, 0, 0, 0, -574, 0, 0, 0,
1315 0, 0, 0, -574, -574, -574, -574, -574, -574, -574,
1316 -574, -574, -574, -574, -574, 0, -574, -574, -574, -574,
1317 -574, -574, -574, -574, -574, -574, -574, -574, -574, -574,
1318 -574, -574, -574, -574, 0, 0, 0, 0, 0, -574,
1319 -574, -574, -574, -574, -574, 1, 2, 3, 4, 5,
1320 6, 7, 8, 0, 0, 0, 0, 0, 9, 0,
1321 0, -574, -574, 156, -574, -574, -574, -574, -574, -574,
1322 11, -574, 0, 0, -574, -574, -574, -574, -574, -574,
1323 -574, -574, -574, -574, -574, -574, -574, -574, -574, -574,
1324 103, 1, 2, 3, 4, 5, 6, 7, 8, 104,
1325 0, 0, 0, 0, 705, 106, 610, 0, 0, 706,
1326 611, 0, 612, 0, 613, 358, 11, 0, 0, 615,
1327 0, 0, 0, 0, 157, 61, 62, 63, 64, 0,
1328 0, 0, 0, 0, 360, 361, 162, 0, 0, 0,
1329 0, 0, 0, 0, 0, 0, 0, 362, 363, 0,
1330 0, 0, 0, 108, 109, 110, 111, 112, 0, 0,
1331 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1332 0, 61, 62, 63, 64, 113, 0, 114, 115, 116,
1333 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
1334 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1335 134, 135, 136, 103, 0, 0, 0, 0, 0, 0,
1336 0, 0, 104, 0, 0, 0, 0, 105, 106, 683,
1337 684, 685, 107, 611, 0, 612, 440, 613, 358, 0,
1338 0, 0, 615, 0, 0, 0, 0, 0, 0, 0,
1339 0, 0, 0, 0, 0, 0, 0, 360, 361, 162,
1340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1341 362, 363, 0, 0, 0, 0, 108, 109, 110, 111,
1342 112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1343 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
1344 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1345 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1346 131, 132, 133, 134, 135, 136, 103, 0, 0, 0,
1347 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
1348 105, 106, 776, 0, 0, 107, 611, 0, 612, 0,
1349 613, 358, 0, 0, 0, 615, 0, 0, 0, 0,
1350 0, 0, 0, 0, 0, 0, 0, 153, 0, 0,
1351 360, 361, 162, 0, 0, 0, 0, 0, 0, 0,
1352 0, 0, 0, 362, 363, 0, 0, 0, 0, 108,
1353 109, 110, 111, 112, 0, 0, 0, 0, 0, 0,
1354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1355 0, 113, 777, 778, 115, 116, 117, 118, 119, 0,
1356 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
1357 128, 129, 779, 131, 132, 133, 134, 135, 136, 103,
1358 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
1359 0, 0, 0, 105, 106, 610, 0, 0, 107, 611,
1360 0, 612, 0, 613, 358, 0, 0, 0, 615, 0,
1361 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1362 153, 0, 0, 360, 361, 162, 0, 0, 0, 0,
1363 0, 0, 0, 0, 0, 0, 362, 363, 0, 0,
1364 857, 0, 108, 109, 110, 111, 112, 0, 0, 0,
1365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1366 0, 0, 0, 0, 113, 0, 114, 115, 116, 117,
1367 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
1368 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1369 135, 136, 103, 0, 0, 0, 0, 0, 0, 0,
1370 0, 104, 0, 0, 0, 0, 105, 106, 610, 0,
1371 0, 107, 611, -625, 612, 0, 613, 358, 0, 0,
1372 0, 615, 0, 0, 0, 0, 0, 0, 0, 0,
1373 0, 0, 0, 153, 0, 0, 360, 361, 162, 0,
1374 0, 0, 0, 0, 0, 0, 0, 0, 0, 362,
1375 363, 0, 0, 0, 0, 108, 109, 110, 111, 112,
1376 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1377 0, 0, 0, 0, 0, 0, 0, 113, 0, 114,
1378 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1379 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1380 132, 133, 134, 135, 136, 103, 0, 0, 0, 0,
1381 0, 0, 0, 0, 104, 0, 0, 0, 0, 105,
1382 106, 610, 0, 0, 107, 611, 0, 612, 0, 613,
1383 358, 0, 0, 0, 615, 0, 0, 0, 0, 0,
1384 0, 0, 0, 0, 0, 0, 153, 0, 0, 360,
1385 361, 162, 0, 0, 0, 0, 0, 0, 0, 0,
1386 0, 0, 362, 363, 0, 0, 0, 0, 108, 109,
1387 110, 111, 112, 0, 0, 0, 0, 0, 0, 0,
1388 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1389 113, 0, 114, 115, 116, 117, 118, 119, 0, 120,
1390 0, 0, 121, 122, 123, 124, 125, 126, 127, 128,
1391 129, 130, 131, 132, 133, 134, 135, 136, 103, 0,
1392 0, 0, 0, 0, 0, 0, 0, 104, 0, 0,
1393 0, 0, 105, 106, 776, 0, 0, 107, 611, 0,
1394 612, 0, 613, 358, 0, 0, 0, 615, 0, 0,
1395 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1396 0, 0, 360, 361, 162, 0, 0, 0, 0, 0,
1397 0, 0, 0, 0, 0, 362, 363, 0, 0, 0,
1398 0, 108, 109, 110, 111, 112, 0, 0, 0, 0,
1399 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1400 0, 0, 0, 113, 777, 778, 115, 116, 117, 118,
1401 119, 0, 120, 0, 0, 121, 122, 123, 124, 125,
1402 126, 127, 128, 129, 779, 131, 132, 133, 134, 135,
1403 136, 103, 0, 0, 0, 0, 0, 0, 0, 0,
1404 104, 0, 0, 0, 0, 105, 106, 610, 0, 0,
1405 107, 611, 0, 612, 0, 613, 358, 0, 0, 0,
1406 615, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1407 0, 0, 0, 0, 0, 360, 361, 162, 0, 0,
1408 0, 0, 0, 0, 0, 0, 0, 0, 362, 363,
1409 0, 0, 0, 0, 108, 109, 110, 111, 112, 0,
1410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1411 0, 0, 0, 0, 0, 0, 113, 0, 114, 115,
1412 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1413 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1414 133, 134, 135, 136, 103, 0, 0, 0, 0, 0,
1415 0, 0, 0, 104, 0, 0, 0, 0, 105, 106,
1416 0, 0, 0, 107, 0, 0, 356, 0, 357, 358,
1417 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
1418 0, 0, 0, 0, 0, 0, 0, 0, 360, 361,
1419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1420 0, 362, 363, 0, 0, 0, 0, 108, 109, 110,
1421 111, 112, 0, 0, 0, 0, 0, 0, 0, 364,
1422 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
1423 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1424 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1425 130, 131, 132, 133, 134, 135, 136, 103, 0, 0,
1426 0, 0, 0, 0, 0, 0, 104, 0, 0, 0,
1427 0, 105, 106, 0, 0, 0, 107, 0, 0, 0,
1428 0, 0, 0, 11, 0, 0, -517, 0, 0, 0,
1429 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1430 0, 0, 0, 162, 0, 0, 0, 0, 0, 0,
1431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1432 108, 109, 110, 111, 112, 0, 0, 0, 0, 0,
1433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1434 0, 64, 113, 0, 114, 115, 116, 117, 118, 119,
1435 0, 120, 0, 0, 121, 122, 123, 124, 125, 126,
1436 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1437 103, 0, 0, 0, 0, 0, 0, 0, 0, 104,
1438 0, 0, 0, 0, 105, 106, 739, 0, 0, 107,
1439 0, 0, 0, 0, 0, 0, 11, 456, 457, 458,
1440 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
1441 469, 470, 471, 472, 473, 0, 162, 0, 0, 0,
1442 711, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1443 0, 0, 0, 108, 109, 110, 111, 112, 0, 0,
1444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1445 0, 0, 0, 0, 64, 113, 0, 114, 115, 116,
1446 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
1447 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1448 134, 135, 136, 103, 0, 0, 0, 0, 0, 0,
1449 0, 0, 104, 0, 0, 0, 0, 105, 106, 0,
1450 0, 0, 107, 0, 0, 664, 0, 0, 0, 0,
1451 0, 0, 714, 816, 456, 457, 458, 459, 460, 461,
1452 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1453 472, 473, 0, 0, 0, 0, 0, 474, 0, 0,
1454 0, 0, 0, 0, 0, 0, 108, 109, 110, 111,
1455 112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1456 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
1457 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1458 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1459 131, 132, 133, 134, 135, 136, 103, 0, 0, 0,
1460 0, 0, 0, 0, 0, 104, 0, 765, 0, 0,
1461 105, 106, 0, 0, 0, 107, 456, 457, 458, 459,
1462 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
1463 470, 471, 472, 473, 0, 0, 0, 0, 0, 711,
1464 0, 0, 162, 0, 0, 0, 0, 0, 0, 0,
1465 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
1466 109, 110, 111, 112, 0, 0, 0, 0, 0, 0,
1467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1468 0, 113, 0, 114, 115, 116, 117, 118, 119, 0,
1469 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
1470 128, 129, 130, 131, 132, 133, 134, 135, 136, 103,
1471 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
1472 0, 0, 0, 105, 106, 0, 0, 0, 107, 0,
1473 910, 0, 0, 0, 0, 0, 0, 0, 452, 456,
1474 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
1475 467, 468, 469, 470, 471, 472, 473, 0, 0, 0,
1476 0, 0, 711, 0, 0, 0, 0, 0, 0, 0,
1477 0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
1478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1479 0, 0, 0, 0, 113, 0, 114, 115, 116, 117,
1480 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
1481 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1482 135, 136, 103, 0, 0, 0, 0, 0, 0, 0,
1483 0, 104, 0, 0, 0, 0, 105, 106, 0, 0,
1484 0, 107, 0, 0, 875, 0, 0, 0, 0, 0,
1485 0, 714, 456, 457, 458, 459, 460, 461, 462, 463,
1486 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1487 0, 0, 0, 0, 0, 711, 0, 0, 0, 0,
1488 0, 103, 0, 0, 0, 108, 109, 110, 111, 112,
1489 104, 0, 0, 0, 0, 105, 106, 0, 0, 0,
1490 107, 0, 0, 0, 0, 0, 0, 113, 0, 114,
1491 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1492 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1493 132, 133, 134, 135, 136, 0, 0, 0, 0, 0,
1494 0, 0, 741, 0, 108, 109, 110, 111, 112, 0,
1495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1496 0, 0, 0, 0, 0, 0, 113, 0, 114, 115,
1497 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
1498 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1499 133, 134, 135, 136, 103, 0, 0, 0, 0, 0,
1500 0, 0, 0, 104, 0, 0, 0, 750, 792, 106,
1501 0, 0, 0, 107, 456, 457, 458, 459, 460, 461,
1502 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1503 472, 473, 0, 0, 0, 0, 0, 474, 0, 0,
1504 162, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1505 0, 0, 0, 103, 0, 0, 0, 108, 109, 110,
1506 111, 112, 104, 0, 0, 0, 0, 105, 106, 0,
1507 0, 0, 107, 0, 0, 0, 0, 0, 0, 113,
1508 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
1509 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1510 130, 131, 132, 133, 134, 135, 136, 0, 0, 0,
1511 0, 0, 103, 0, 837, 0, 108, 109, 110, 111,
1512 112, 104, 0, 0, 0, 0, 105, 106, 0, 0,
1513 0, 107, 0, 0, 0, 0, 0, 0, 113, 0,
1514 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
1515 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1516 131, 132, 133, 134, 135, 136, 0, 0, 0, 0,
1517 0, 0, 0, 0, 0, 108, 109, 110, 111, 112,
1518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1519 0, 0, 0, 0, 0, 0, 0, 113, 0, 114,
1520 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
1521 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1522 132, 133, 134, 135, 136, 813, 0, 0, 0, 0,
1523 0, 0, 456, 457, 458, 459, 460, 461, 462, 463,
1524 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1525 0, 0, 0, 710, 0, 711, 456, 457, 458, 459,
1526 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
1527 470, 471, 472, 473, 0, 0, 0, 0, 0, 711,
1528 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
1529 466, 467, 468, 469, 470, 471, 472, 473, 0, 0,
1530 0, 0, 0, 474, 456, 457, 458, 459, 460, 461,
1531 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
1532 472, 473, 0, 0, 0, 0, 0, 711, 456, 457,
1533 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
1534 468, 469, 470, 471, 472, 473, 0, 0, 0, 0,
1535 0, 474, 456, 457, 458, 459, 460, 461, 462, 463,
1536 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1540 static const short int yycheck
[] =
1542 10, 33, 22, 87, 183, 15, 33, 0, 182, 183,
1543 91, 33, 91, 190, 16, 17, 18, 424, 15, 102,
1544 34, 421, 80, 397, 424, 421, 310, 377, 378, 396,
1545 151, 701, 90, 367, 27, 394, 727, 477, 159, 477,
1546 727, 727, 409, 427, 760, 0, 762, 10, 756, 310,
1547 15, 26, 26, 49, 137, 10, 29, 140, 21, 61,
1548 62, 63, 25, 9, 24, 11, 21, 44, 189, 24,
1549 25, 0, 27, 29, 433, 359, 25, 33, 80, 6,
1550 37, 365, 9, 31, 94, 125, 35, 778, 36, 91,
1551 92, 93, 808, 37, 26, 786, 32, 94, 100, 29,
1552 786, 33, 65, 33, 64, 29, 26, 27, 442, 33,
1553 65, 32, 32, 34, 87, 31, 32, 451, 34, 32,
1554 454, 17, 18, 3, 44, 484, 6, 36, 124, 94,
1555 10, 87, 12, 36, 842, 92, 93, 94, 95, 96,
1556 810, 98, 99, 31, 119, 406, 34, 157, 92, 93,
1557 94, 95, 96, 30, 98, 99, 31, 87, 190, 829,
1558 157, 32, 31, 87, 36, 167, 35, 36, 6, 7,
1559 8, 455, 182, 183, 35, 36, 35, 885, 4, 5,
1560 6, 23, 184, 9, 854, 876, 31, 150, 36, 876,
1561 474, 475, 157, 156, 23, 150, 22, 36, 889, 915,
1562 32, 156, 38, 4, 5, 6, 897, 31, 9, 33,
1563 34, 897, 35, 36, 110, 111, 112, 113, 114, 115,
1564 911, 22, 606, 31, 911, 33, 34, 311, 6, 310,
1565 32, 310, 672, 32, 672, 33, 34, 677, 31, 677,
1566 4, 5, 6, 7, 8, 9, 10, 11, 918, 33,
1567 34, 33, 34, 17, 17, 18, 615, 631, 22, 618,
1568 634, 3, 383, 31, 6, 29, 33, 34, 10, 32,
1569 12, 13, 14, 15, 16, 17, 35, 636, 359, 36,
1570 359, 32, 33, 32, 365, 40, 365, 3, 33, 34,
1571 6, 33, 350, 660, 10, 31, 12, 13, 14, 15,
1572 16, 17, 49, 477, 33, 34, 92, 93, 310, 92,
1573 93, 94, 95, 96, 31, 98, 99, 6, 26, 32,
1574 84, 85, 86, 87, 34, 40, 26, 91, 34, 729,
1575 34, 32, 666, 729, 22, 669, 670, 100, 101, 102,
1576 103, 104, 105, 106, 107, 108, 32, 714, 39, 32,
1577 717, 31, 711, 712, 31, 64, 37, 359, 40, 123,
1578 32, 64, 364, 365, 40, 24, 40, 32, 727, 396,
1579 32, 31, 33, 25, 455, 33, 455, 409, 33, 35,
1580 34, 31, 409, 40, 35, 33, 33, 409, 420, 33,
1581 422, 34, 424, 474, 475, 474, 475, 34, 772, 34,
1582 774, 775, 35, 32, 109, 764, 32, 757, 758, 34,
1583 33, 64, 4, 5, 6, 7, 8, 9, 10, 11,
1584 33, 423, 25, 35, 32, 17, 31, 786, 97, 33,
1585 22, 831, 33, 33, 448, 831, 438, 29, 32, 35,
1586 33, 615, 31, 33, 25, 37, 478, 479, 34, 31,
1587 452, 630, 811, 455, 813, 862, 630, 32, 34, 633,
1588 33, 33, 862, 797, 798, 749, 750, 477, 33, 828,
1589 34, 32, 474, 475, 34, 24, 17, 18, 852, 879,
1590 477, 32, 97, 879, 477, 32, 25, 33, 32, 25,
1591 890, 33, 84, 85, 86, 87, 33, 35, 672, 34,
1592 34, 33, 33, 677, 33, 4, 5, 6, 7, 8,
1593 9, 10, 11, 32, 34, 33, 875, 876, 17, 25,
1594 920, 32, 32, 22, 920, 33, 33, 157, 33, 121,
1595 29, 931, 33, 33, 27, 811, 677, 672, 897, 178,
1596 158, 604, 40, 917, 24, 633, 380, 804, 637, 448,
1597 21, 168, 911, 762, 19, 386, 911, 734, 932, 100,
1598 101, 102, 103, 104, 105, 106, 107, 108, 420, 777,
1599 889, 4, 5, 6, 7, 8, 9, 10, 11, 931,
1600 825, 736, -1, -1, 17, 84, 85, 86, 87, 22,
1601 769, -1, -1, 26, 27, 769, 679, 680, -1, -1,
1602 -1, 4, 5, 6, 7, 8, 9, 10, 11, -1,
1603 -1, 44, -1, -1, 17, -1, -1, -1, -1, 22,
1604 630, -1, 624, 633, 123, 657, -1, -1, -1, -1,
1605 -1, -1, -1, 660, -1, 637, -1, -1, -1, -1,
1606 -1, -1, -1, -1, 676, -1, -1, -1, -1, 676,
1607 -1, 84, 85, 86, 676, -1, 658, -1, -1, -1,
1608 -1, -1, 672, -1, -1, -1, -1, 677, 749, 750,
1609 749, 750, -1, -1, -1, 672, 678, -1, -1, 672,
1610 677, 84, 85, 86, 677, 707, -1, 714, -1, -1,
1611 717, 870, -1, -1, -1, -1, 870, -1, -1, 731,
1612 -1, -1, 734, -1, -1, 737, -1, -1, -1, 888,
1613 -1, 795, -1, 733, 888, -1, -1, 4, 5, 6,
1614 7, 8, 9, 10, 11, -1, -1, -1, -1, -1,
1615 17, -1, -1, -1, 736, 22, -1, -1, -1, -1,
1616 -1, -1, 29, 30, 31, 924, -1, 749, 750, -1,
1617 924, -1, -1, -1, 41, -1, -1, 789, -1, 769,
1618 -1, -1, -1, -1, -1, -1, 768, -1, -1, 771,
1619 802, 30, -1, 805, 806, -1, -1, -1, -1, -1,
1620 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1621 810, -1, -1, 825, 796, -1, 83, 84, 85, 86,
1622 87, 88, 89, -1, 91, -1, -1, 66, 67, 68,
1623 69, 70, 71, 72, 73, 74, 75, 76, 77, -1,
1624 79, 80, 81, 82, -1, -1, -1, -1, -1, 116,
1625 -1, -1, -1, -1, 121, 867, 123, -1, -1, -1,
1626 -1, -1, -1, -1, 876, -1, -1, -1, -1, -1,
1627 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1628 870, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1629 -1, -1, -1, -1, -1, -1, -1, -1, 888, 911,
1630 -1, -1, -1, -1, 0, -1, -1, 3, 4, 5,
1631 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1632 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1633 26, 27, 28, 29, 924, 31, 32, 33, 34, 35,
1634 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
1635 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1636 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1637 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1638 76, 77, 78, 79, -1, 81, -1, 83, 84, 85,
1639 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1640 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
1641 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1642 116, -1, -1, 119, -1, 121, 122, 123, 124, 125,
1643 0, -1, -1, 3, 4, 5, 6, 7, 8, 9,
1644 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1645 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1646 -1, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1647 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1648 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1649 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1650 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1651 -1, 81, -1, 83, 84, 85, 86, 87, 88, 89,
1652 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1653 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1654 110, 111, 112, 113, 114, 115, 116, -1, -1, 119,
1655 -1, 121, 122, 123, 124, 125, 0, -1, -1, 3,
1656 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1657 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1658 24, 25, 26, 27, 28, 29, -1, 31, 32, 33,
1659 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1660 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1661 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1662 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1663 74, 75, 76, 77, 78, 79, -1, 81, -1, 83,
1664 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1665 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1666 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1667 114, 115, 116, -1, -1, 119, -1, 121, 122, 123,
1668 124, 125, 0, -1, -1, 3, 4, 5, 6, 7,
1669 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1670 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1671 28, 29, -1, 31, 32, 33, 34, 35, 36, -1,
1672 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1673 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
1674 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1675 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
1676 78, 79, -1, 81, -1, 83, 84, 85, 86, 87,
1677 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1678 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1679 108, 109, 110, 111, 112, 113, 114, 115, 116, 3,
1680 -1, 119, -1, 121, 122, 123, 124, 125, 12, -1,
1681 -1, -1, -1, 17, 18, 19, -1, -1, 22, 23,
1682 -1, 25, -1, 27, 28, 29, -1, -1, 32, -1,
1683 -1, -1, -1, 4, 5, 6, 7, 8, 9, 10,
1684 11, -1, -1, 47, 48, 49, 17, -1, -1, -1,
1685 -1, 22, -1, -1, -1, -1, 60, 61, 29, -1,
1686 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
1687 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1688 -1, -1, -1, 87, 88, -1, 90, 91, 92, 93,
1689 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
1690 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1691 114, 115, -1, 84, 85, 86, 87, -1, -1, -1,
1692 124, 4, 5, 6, 7, 8, 9, 10, 11, -1,
1693 -1, -1, -1, -1, 17, -1, -1, -1, -1, 22,
1694 -1, -1, 3, -1, -1, -1, 29, -1, -1, -1,
1695 121, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1696 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1697 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1698 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1699 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1700 61, 84, 85, 86, 87, 66, 67, 68, 69, 70,
1701 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
1702 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
1703 91, 92, 93, 94, 95, -1, 97, -1, 121, 100,
1704 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1705 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
1706 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1707 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1708 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1709 -1, 4, 5, 6, 7, 8, 9, 10, 11, 47,
1710 48, -1, -1, -1, 17, -1, -1, -1, -1, 22,
1711 -1, -1, 60, 61, -1, -1, 29, -1, 66, 67,
1712 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
1713 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1714 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
1715 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
1716 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
1717 118, 84, 85, 86, 87, -1, -1, 12, -1, -1,
1718 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1719 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1720 -1, -1, -1, -1, 4, 5, 6, 7, 8, 9,
1721 10, 11, 47, 48, -1, -1, -1, 17, -1, -1,
1722 -1, -1, 22, -1, -1, 60, 61, -1, -1, 29,
1723 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
1724 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
1725 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
1726 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
1727 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1728 115, 3, -1, 118, 84, 85, 86, 87, -1, -1,
1729 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1730 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1731 32, -1, -1, -1, -1, -1, -1, 4, 5, 6,
1732 7, 8, 9, 10, 11, 47, 48, -1, -1, -1,
1733 17, -1, -1, -1, -1, 22, -1, -1, 60, 61,
1734 -1, -1, 29, -1, 66, 67, 68, 69, 70, -1,
1735 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
1736 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
1737 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
1738 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1739 112, 113, 114, 115, 3, -1, 118, 84, 85, 86,
1740 87, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1741 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1742 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1743 4, 5, 6, 7, 8, 9, 10, 11, 47, 48,
1744 -1, -1, -1, 17, -1, -1, -1, -1, 22, -1,
1745 -1, 60, 61, -1, -1, 29, -1, 66, 67, 68,
1746 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
1747 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1748 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
1749 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1750 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
1751 84, 85, 86, 87, -1, -1, 12, -1, -1, -1,
1752 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1753 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1754 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1755 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1756 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1757 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
1758 -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
1759 -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
1760 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
1761 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1762 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
1763 -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
1764 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1765 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1766 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1767 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1768 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
1769 -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
1770 -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
1771 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
1772 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1773 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
1774 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
1775 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1776 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
1777 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
1778 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1779 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
1780 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
1781 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
1782 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
1783 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1784 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
1785 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
1786 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1787 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1788 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1789 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1790 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1791 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
1792 -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
1793 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
1794 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
1795 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
1796 -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
1797 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
1798 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
1799 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1800 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
1801 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
1802 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
1803 -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
1804 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
1805 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
1806 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1807 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
1808 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1809 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1810 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1811 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1812 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1813 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
1814 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
1815 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
1816 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
1817 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1818 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
1819 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1820 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1821 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1822 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1823 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1824 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1825 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
1826 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1827 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
1828 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
1829 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
1830 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
1831 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1832 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1833 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1834 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
1835 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
1836 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
1837 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
1838 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
1839 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
1840 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1841 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
1842 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1843 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1844 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1845 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
1846 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
1847 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
1848 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
1849 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
1850 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
1851 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1852 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
1853 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1854 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1855 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1856 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
1857 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1858 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
1859 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
1860 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1861 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
1862 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1863 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
1864 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
1865 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1866 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1867 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1868 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1869 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1870 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
1871 -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
1872 -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
1873 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
1874 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1875 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
1876 -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
1877 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1879 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1880 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1881 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
1882 -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
1883 -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
1884 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
1885 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1886 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
1887 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
1888 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
1889 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
1890 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
1891 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1892 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
1893 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
1894 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
1895 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
1896 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1897 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
1898 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
1899 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
1900 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
1901 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1902 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
1903 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
1904 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
1905 -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
1906 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
1907 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
1908 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
1909 -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
1910 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
1911 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
1912 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1913 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
1914 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
1915 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
1916 -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
1917 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
1918 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
1919 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1920 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
1921 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
1922 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
1923 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
1924 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
1925 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
1926 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
1927 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
1928 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
1929 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
1930 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1931 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
1932 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
1933 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
1934 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
1935 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
1936 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1937 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
1938 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
1939 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1940 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
1941 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
1942 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
1943 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
1944 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
1945 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
1946 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1947 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
1948 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
1949 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
1950 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
1951 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
1952 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
1953 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1954 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
1955 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
1956 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
1957 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1958 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
1959 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
1960 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
1961 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
1962 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
1963 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
1964 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1965 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
1966 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
1967 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
1968 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
1969 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
1970 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1971 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
1972 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
1973 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
1974 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
1975 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1976 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
1977 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
1978 -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
1979 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
1980 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1981 -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
1982 -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
1983 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
1984 -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
1985 -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
1986 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
1987 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1988 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
1989 -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
1990 -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
1991 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1992 -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
1993 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
1994 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
1995 -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
1996 -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
1997 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
1998 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1999 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
2000 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
2001 -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
2002 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
2003 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
2004 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2005 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
2006 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
2007 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
2008 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2009 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2010 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
2011 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
2012 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
2013 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
2014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2015 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
2016 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
2017 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
2018 -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
2019 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
2020 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
2021 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
2022 -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
2023 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
2024 -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
2025 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2026 -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
2027 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
2028 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
2029 -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
2030 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
2031 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
2032 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2033 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
2034 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
2035 -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
2036 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
2037 -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
2038 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
2039 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
2040 -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
2041 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2042 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2043 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2044 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
2045 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
2046 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
2047 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
2048 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
2049 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2050 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
2051 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
2052 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2053 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
2054 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
2055 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
2056 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
2057 -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
2058 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
2059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2060 -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
2061 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
2062 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
2063 -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
2064 -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
2065 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
2066 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2067 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
2068 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
2069 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
2070 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2071 -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
2072 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
2073 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
2074 -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
2075 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
2076 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
2077 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2078 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
2079 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
2080 -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
2081 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
2082 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
2083 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2084 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
2085 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
2086 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
2087 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
2088 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2089 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
2090 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
2091 -1, 17, 18, -1, -1, -1, 22, -1, -1, -1,
2092 -1, -1, -1, 29, 30, 31, 32, 33, 34, 35,
2093 36, 37, 38, 39, 40, -1, 42, 43, 44, 45,
2094 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2095 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2096 66, 67, 68, 69, 70, 4, 5, 6, 7, 8,
2097 9, 10, 11, -1, -1, -1, -1, -1, 17, -1,
2098 -1, 87, 88, 22, 90, 91, 92, 93, 94, 95,
2099 29, 97, -1, -1, 100, 101, 102, 103, 104, 105,
2100 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
2101 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
2102 -1, -1, -1, -1, 17, 18, 19, -1, -1, 22,
2103 23, -1, 25, -1, 27, 28, 29, -1, -1, 32,
2104 -1, -1, -1, -1, 83, 84, 85, 86, 87, -1,
2105 -1, -1, -1, -1, 47, 48, 49, -1, -1, -1,
2106 -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
2107 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
2108 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2109 -1, 84, 85, 86, 87, 88, -1, 90, 91, 92,
2110 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
2111 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2112 113, 114, 115, 3, -1, -1, -1, -1, -1, -1,
2113 -1, -1, 12, -1, -1, -1, -1, 17, 18, 19,
2114 20, 21, 22, 23, -1, 25, 26, 27, 28, -1,
2115 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
2116 -1, -1, -1, -1, -1, -1, -1, 47, 48, 49,
2117 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2118 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
2119 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2120 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
2121 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2122 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2123 110, 111, 112, 113, 114, 115, 3, -1, -1, -1,
2124 -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
2125 17, 18, 19, -1, -1, 22, 23, -1, 25, -1,
2126 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
2127 -1, -1, -1, -1, -1, -1, -1, 44, -1, -1,
2128 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
2129 -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
2130 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
2131 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2132 -1, 88, 89, 90, 91, 92, 93, 94, 95, -1,
2133 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
2134 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
2135 -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
2136 -1, -1, -1, 17, 18, 19, -1, -1, 22, 23,
2137 -1, 25, -1, 27, 28, -1, -1, -1, 32, -1,
2138 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2139 44, -1, -1, 47, 48, 49, -1, -1, -1, -1,
2140 -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
2141 64, -1, 66, 67, 68, 69, 70, -1, -1, -1,
2142 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2143 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
2144 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
2145 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2146 114, 115, 3, -1, -1, -1, -1, -1, -1, -1,
2147 -1, 12, -1, -1, -1, -1, 17, 18, 19, -1,
2148 -1, 22, 23, 24, 25, -1, 27, 28, -1, -1,
2149 -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
2150 -1, -1, -1, 44, -1, -1, 47, 48, 49, -1,
2151 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
2152 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
2153 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2154 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2155 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2156 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2157 111, 112, 113, 114, 115, 3, -1, -1, -1, -1,
2158 -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
2159 18, 19, -1, -1, 22, 23, -1, 25, -1, 27,
2160 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
2161 -1, -1, -1, -1, -1, -1, 44, -1, -1, 47,
2162 48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
2163 -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
2164 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
2165 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2166 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
2167 -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
2168 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
2169 -1, -1, -1, -1, -1, -1, -1, 12, -1, -1,
2170 -1, -1, 17, 18, 19, -1, -1, 22, 23, -1,
2171 25, -1, 27, 28, -1, -1, -1, 32, -1, -1,
2172 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2173 -1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
2174 -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
2175 -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
2176 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2177 -1, -1, -1, 88, 89, 90, 91, 92, 93, 94,
2178 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
2179 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2180 115, 3, -1, -1, -1, -1, -1, -1, -1, -1,
2181 12, -1, -1, -1, -1, 17, 18, 19, -1, -1,
2182 22, 23, -1, 25, -1, 27, 28, -1, -1, -1,
2183 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2184 -1, -1, -1, -1, -1, 47, 48, 49, -1, -1,
2185 -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
2186 -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
2187 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2188 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
2189 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
2190 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2191 112, 113, 114, 115, 3, -1, -1, -1, -1, -1,
2192 -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
2193 -1, -1, -1, 22, -1, -1, 25, -1, 27, 28,
2194 -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
2195 -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
2196 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2197 -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
2198 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
2199 -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
2200 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
2201 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2202 109, 110, 111, 112, 113, 114, 115, 3, -1, -1,
2203 -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
2204 -1, 17, 18, -1, -1, -1, 22, -1, -1, -1,
2205 -1, -1, -1, 29, -1, -1, 32, -1, -1, -1,
2206 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2207 -1, -1, -1, 49, -1, -1, -1, -1, -1, -1,
2208 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2209 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
2210 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2211 -1, 87, 88, -1, 90, 91, 92, 93, 94, 95,
2212 -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
2213 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
2214 3, -1, -1, -1, -1, -1, -1, -1, -1, 12,
2215 -1, -1, -1, -1, 17, 18, 31, -1, -1, 22,
2216 -1, -1, -1, -1, -1, -1, 29, 42, 43, 44,
2217 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2218 55, 56, 57, 58, 59, -1, 49, -1, -1, -1,
2219 65, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2220 -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
2221 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2222 -1, -1, -1, -1, 87, 88, -1, 90, 91, 92,
2223 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
2224 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2225 113, 114, 115, 3, -1, -1, -1, -1, -1, -1,
2226 -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
2227 -1, -1, 22, -1, -1, 33, -1, -1, -1, -1,
2228 -1, -1, 32, 33, 42, 43, 44, 45, 46, 47,
2229 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2230 58, 59, -1, -1, -1, -1, -1, 65, -1, -1,
2231 -1, -1, -1, -1, -1, -1, 66, 67, 68, 69,
2232 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2233 -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
2234 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2235 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2236 110, 111, 112, 113, 114, 115, 3, -1, -1, -1,
2237 -1, -1, -1, -1, -1, 12, -1, 33, -1, -1,
2238 17, 18, -1, -1, -1, 22, 42, 43, 44, 45,
2239 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2240 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2241 -1, -1, 49, -1, -1, -1, -1, -1, -1, -1,
2242 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2243 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
2244 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2245 -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
2246 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
2247 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
2248 -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
2249 -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
2250 33, -1, -1, -1, -1, -1, -1, -1, 32, 42,
2251 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
2252 53, 54, 55, 56, 57, 58, 59, -1, -1, -1,
2253 -1, -1, 65, -1, -1, -1, -1, -1, -1, -1,
2254 -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
2255 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2256 -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
2257 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
2258 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
2259 114, 115, 3, -1, -1, -1, -1, -1, -1, -1,
2260 -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
2261 -1, 22, -1, -1, 34, -1, -1, -1, -1, -1,
2262 -1, 32, 42, 43, 44, 45, 46, 47, 48, 49,
2263 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2264 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
2265 -1, 3, -1, -1, -1, 66, 67, 68, 69, 70,
2266 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
2267 22, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2268 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2269 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2270 111, 112, 113, 114, 115, -1, -1, -1, -1, -1,
2271 -1, -1, 64, -1, 66, 67, 68, 69, 70, -1,
2272 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2273 -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
2274 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
2275 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2276 112, 113, 114, 115, 3, -1, -1, -1, -1, -1,
2277 -1, -1, -1, 12, -1, -1, -1, 35, 17, 18,
2278 -1, -1, -1, 22, 42, 43, 44, 45, 46, 47,
2279 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2280 58, 59, -1, -1, -1, -1, -1, 65, -1, -1,
2281 49, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2282 -1, -1, -1, 3, -1, -1, -1, 66, 67, 68,
2283 69, 70, 12, -1, -1, -1, -1, 17, 18, -1,
2284 -1, -1, 22, -1, -1, -1, -1, -1, -1, 88,
2285 -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
2286 -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2287 109, 110, 111, 112, 113, 114, 115, -1, -1, -1,
2288 -1, -1, 3, -1, 64, -1, 66, 67, 68, 69,
2289 70, 12, -1, -1, -1, -1, 17, 18, -1, -1,
2290 -1, 22, -1, -1, -1, -1, -1, -1, 88, -1,
2291 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
2292 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2293 110, 111, 112, 113, 114, 115, -1, -1, -1, -1,
2294 -1, -1, -1, -1, -1, 66, 67, 68, 69, 70,
2295 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2296 -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
2297 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
2298 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2299 111, 112, 113, 114, 115, 35, -1, -1, -1, -1,
2300 -1, -1, 42, 43, 44, 45, 46, 47, 48, 49,
2301 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2302 -1, -1, -1, 39, -1, 65, 42, 43, 44, 45,
2303 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2304 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
2305 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
2306 52, 53, 54, 55, 56, 57, 58, 59, -1, -1,
2307 -1, -1, -1, 65, 42, 43, 44, 45, 46, 47,
2308 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2309 58, 59, -1, -1, -1, -1, -1, 65, 42, 43,
2310 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
2311 54, 55, 56, 57, 58, 59, -1, -1, -1, -1,
2312 -1, 65, 42, 43, 44, 45, 46, 47, 48, 49,
2313 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2314 -1, -1, -1, -1, -1, 65
2317 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2318 symbol of state STATE-NUM. */
2319 static const unsigned short int yystos
[] =
2321 0, 4, 5, 6, 7, 8, 9, 10, 11, 17,
2322 22, 29, 30, 31, 41, 83, 84, 85, 86, 87,
2323 88, 89, 91, 116, 121, 123, 146, 147, 148, 149,
2324 150, 167, 170, 175, 176, 177, 178, 179, 180, 181,
2325 182, 183, 188, 191, 194, 198, 199, 200, 201, 203,
2326 205, 209, 211, 212, 218, 226, 240, 241, 9, 11,
2327 22, 84, 85, 86, 87, 123, 199, 209, 30, 66,
2328 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
2329 77, 79, 80, 81, 82, 151, 152, 153, 154, 156,
2330 157, 158, 84, 85, 121, 171, 173, 200, 201, 209,
2331 218, 227, 228, 3, 12, 17, 18, 22, 66, 67,
2332 68, 69, 70, 88, 90, 91, 92, 93, 94, 95,
2333 97, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2334 109, 110, 111, 112, 113, 114, 115, 143, 259, 271,
2335 143, 143, 229, 3, 6, 10, 12, 246, 248, 26,
2336 123, 199, 241, 44, 279, 280, 22, 83, 198, 199,
2337 0, 148, 49, 143, 176, 210, 235, 236, 237, 238,
2338 177, 4, 5, 6, 9, 22, 184, 6, 181, 187,
2339 125, 189, 32, 32, 36, 36, 143, 143, 143, 199,
2340 34, 192, 0, 3, 4, 5, 6, 7, 8, 9,
2341 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2342 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
2343 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2344 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2345 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2346 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
2347 71, 72, 73, 74, 75, 76, 77, 78, 79, 81,
2348 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
2349 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
2350 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
2351 113, 114, 115, 116, 119, 121, 122, 123, 124, 125,
2352 143, 144, 159, 30, 3, 12, 17, 18, 22, 66,
2353 67, 68, 69, 70, 88, 90, 91, 92, 93, 94,
2354 95, 97, 100, 101, 102, 103, 104, 105, 106, 107,
2355 108, 109, 110, 111, 112, 113, 114, 115, 144, 162,
2356 163, 162, 26, 119, 155, 144, 25, 27, 28, 32,
2357 47, 48, 60, 61, 78, 142, 143, 164, 223, 143,
2358 229, 143, 229, 173, 31, 143, 35, 232, 232, 232,
2359 232, 23, 31, 199, 36, 195, 36, 23, 171, 189,
2360 195, 29, 87, 239, 38, 233, 32, 143, 124, 238,
2361 6, 185, 6, 9, 186, 184, 32, 31, 17, 175,
2362 202, 204, 206, 207, 208, 209, 206, 143, 219, 220,
2363 92, 93, 94, 95, 96, 98, 99, 250, 251, 252,
2364 265, 268, 274, 275, 276, 195, 193, 210, 236, 31,
2365 26, 118, 164, 190, 162, 144, 26, 27, 32, 44,
2366 225, 164, 32, 143, 164, 32, 42, 43, 44, 45,
2367 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2368 56, 57, 58, 59, 65, 141, 35, 36, 214, 214,
2369 31, 213, 214, 213, 40, 195, 0, 3, 4, 5,
2370 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
2371 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
2372 26, 27, 28, 29, 31, 32, 33, 34, 35, 38,
2373 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2374 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
2375 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
2376 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
2377 79, 81, 83, 84, 85, 86, 87, 88, 89, 90,
2378 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
2379 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
2380 111, 112, 113, 114, 115, 116, 119, 121, 122, 123,
2381 124, 125, 145, 195, 196, 197, 250, 32, 31, 31,
2382 19, 23, 25, 27, 29, 32, 87, 124, 142, 210,
2383 221, 222, 223, 234, 235, 236, 233, 6, 190, 235,
2384 32, 33, 34, 34, 33, 34, 40, 34, 230, 210,
2385 255, 221, 244, 269, 270, 271, 279, 210, 143, 277,
2386 278, 210, 266, 270, 37, 251, 221, 34, 32, 26,
2387 177, 224, 225, 22, 33, 143, 164, 165, 166, 164,
2388 164, 32, 121, 172, 173, 174, 175, 215, 218, 227,
2389 228, 210, 210, 19, 20, 21, 168, 169, 190, 221,
2390 37, 197, 37, 13, 14, 15, 16, 17, 33, 242,
2391 243, 245, 247, 248, 249, 17, 22, 175, 221, 221,
2392 39, 65, 141, 39, 32, 143, 33, 32, 206, 233,
2393 64, 208, 233, 64, 221, 220, 37, 40, 31, 40,
2394 31, 32, 24, 40, 32, 31, 34, 32, 31, 31,
2395 210, 64, 143, 160, 161, 235, 33, 33, 33, 34,
2396 35, 25, 174, 35, 231, 37, 172, 232, 232, 31,
2397 35, 33, 34, 244, 33, 33, 221, 221, 235, 32,
2398 33, 235, 33, 34, 33, 33, 19, 89, 90, 109,
2399 221, 254, 256, 257, 258, 259, 280, 269, 210, 279,
2400 193, 278, 17, 193, 267, 33, 34, 164, 164, 34,
2401 25, 35, 34, 216, 231, 214, 214, 245, 35, 243,
2402 245, 40, 221, 35, 143, 206, 33, 233, 64, 233,
2403 233, 109, 256, 17, 18, 32, 259, 262, 32, 32,
2404 254, 34, 272, 210, 33, 33, 162, 64, 143, 25,
2405 35, 32, 210, 217, 31, 216, 245, 279, 168, 221,
2406 33, 33, 33, 267, 32, 221, 244, 64, 269, 273,
2407 33, 31, 97, 33, 35, 25, 231, 34, 31, 64,
2408 32, 33, 233, 33, 244, 34, 34, 260, 33, 34,
2409 18, 270, 271, 32, 34, 210, 24, 206, 32, 97,
2410 32, 221, 210, 253, 254, 255, 261, 280, 33, 269,
2411 25, 25, 231, 33, 33, 206, 262, 263, 264, 269,
2412 33, 34, 254, 34, 33, 35, 33, 33, 32, 33,
2413 34, 253, 25, 245, 32, 233, 244, 33, 269, 33,
2414 206, 32, 33, 263, 233, 33, 33
2417 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
2418 static const unsigned short int yyr1
[] =
2420 0, 140, 141, 141, 141, 141, 141, 141, 141, 141,
2421 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2422 142, 142, 142, 142, 143, 143, 143, 143, 143, 143,
2423 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2424 143, 143, 143, 144, 144, 144, 144, 144, 144, 144,
2425 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2426 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2427 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2428 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2429 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2430 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2431 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2432 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2433 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2434 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2435 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2436 144, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2437 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2438 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2439 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2440 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2441 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2442 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2443 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2444 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2445 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2446 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
2447 145, 145, 145, 145, 145, 145, 145, 146, 146, 147,
2448 147, 148, 148, 148, 148, 148, 148, 148, 148, 148,
2449 148, 148, 148, 148, 148, 149, 150, 150, 151, 151,
2450 151, 151, 151, 151, 151, 151, 152, 152, 153, 153,
2451 154, 154, 154, 155, 155, 156, 156, 157, 157, 157,
2452 158, 158, 159, 159, 159, 159, 160, 160, 160, 160,
2453 161, 161, 162, 162, 163, 163, 164, 164, 164, 164,
2454 164, 164, 164, 164, 164, 164, 164, 165, 165, 166,
2455 166, 167, 168, 168, 168, 169, 169, 169, 170, 170,
2456 171, 171, 172, 172, 173, 173, 173, 173, 173, 174,
2457 174, 174, 174, 174, 175, 175, 175, 176, 176, 177,
2458 177, 178, 178, 178, 179, 179, 179, 179, 180, 180,
2459 180, 181, 181, 182, 182, 182, 183, 183, 183, 183,
2460 184, 184, 184, 184, 184, 184, 185, 185, 186, 186,
2461 186, 186, 187, 187, 187, 188, 188, 189, 189, 190,
2462 190, 191, 192, 192, 193, 193, 194, 194, 194, 194,
2463 195, 196, 196, 197, 197, 198, 198, 199, 199, 200,
2464 200, 201, 201, 201, 201, 202, 202, 203, 204, 205,
2465 206, 206, 206, 207, 207, 208, 208, 208, 209, 209,
2466 210, 210, 211, 212, 213, 213, 214, 215, 215, 216,
2467 216, 217, 217, 218, 219, 219, 220, 220, 221, 221,
2468 221, 221, 221, 221, 222, 222, 222, 222, 222, 222,
2469 223, 223, 224, 224, 225, 225, 225, 226, 227, 228,
2470 229, 229, 230, 230, 231, 231, 231, 231, 232, 232,
2471 233, 233, 233, 234, 234, 234, 234, 235, 235, 236,
2472 236, 237, 237, 238, 238, 239, 239, 240, 240, 241,
2473 241, 241, 242, 242, 243, 243, 244, 245, 246, 247,
2474 247, 248, 248, 248, 248, 249, 249, 249, 249, 249,
2475 250, 250, 251, 251, 251, 251, 251, 252, 252, 253,
2476 253, 253, 254, 254, 254, 254, 254, 254, 255, 255,
2477 256, 257, 257, 258, 259, 259, 259, 259, 259, 259,
2478 259, 259, 259, 259, 260, 260, 261, 261, 262, 262,
2479 263, 263, 264, 264, 265, 266, 266, 267, 267, 267,
2480 268, 269, 269, 269, 270, 270, 271, 271, 271, 271,
2481 271, 271, 271, 271, 272, 272, 273, 273, 274, 275,
2482 275, 276, 277, 277, 278, 279, 279, 280
2485 /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
2486 static const unsigned char yyr2
[] =
2488 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
2489 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2490 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2491 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2492 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2493 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2494 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2495 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2496 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2497 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2498 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2499 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2500 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2501 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2502 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2503 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2504 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2505 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2506 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2507 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2508 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2509 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2510 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2511 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2512 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2513 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2514 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2515 1, 1, 1, 1, 1, 1, 1, 0, 1, 1,
2516 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2517 1, 1, 1, 1, 1, 3, 2, 3, 2, 2,
2518 1, 2, 2, 2, 1, 2, 1, 1, 1, 1,
2519 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2520 1, 1, 2, 6, 2, 2, 0, 1, 1, 3,
2521 1, 3, 0, 1, 1, 2, 3, 2, 3, 5,
2522 2, 4, 1, 1, 1, 1, 4, 0, 1, 1,
2523 3, 6, 1, 1, 1, 1, 1, 1, 3, 4,
2524 1, 2, 1, 2, 1, 1, 2, 4, 4, 1,
2525 1, 1, 3, 3, 1, 2, 2, 1, 1, 1,
2526 1, 2, 2, 2, 1, 1, 1, 1, 1, 1,
2527 2, 1, 1, 1, 1, 2, 1, 1, 2, 2,
2528 0, 1, 1, 2, 1, 2, 0, 1, 0, 1,
2529 1, 2, 0, 1, 2, 3, 4, 0, 4, 1,
2530 2, 4, 0, 2, 1, 3, 3, 4, 3, 4,
2531 3, 1, 2, 1, 1, 1, 2, 1, 1, 5,
2532 7, 5, 7, 13, 16, 5, 7, 6, 5, 1,
2533 0, 1, 1, 1, 3, 1, 1, 2, 1, 2,
2534 3, 2, 4, 4, 1, 1, 3, 4, 5, 0,
2535 2, 2, 4, 5, 1, 3, 1, 3, 1, 4,
2536 3, 3, 2, 5, 1, 1, 1, 1, 1, 1,
2537 4, 2, 1, 2, 2, 1, 1, 2, 2, 2,
2538 0, 1, 0, 1, 0, 2, 7, 9, 0, 7,
2539 0, 3, 3, 0, 1, 1, 1, 0, 1, 1,
2540 2, 1, 2, 1, 2, 1, 1, 4, 5, 7,
2541 8, 13, 1, 3, 2, 4, 2, 1, 1, 1,
2542 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2543 1, 2, 1, 1, 1, 1, 1, 3, 6, 1,
2544 2, 1, 1, 1, 1, 2, 1, 1, 3, 4,
2545 6, 8, 12, 5, 1, 1, 1, 1, 1, 1,
2546 1, 1, 1, 1, 0, 2, 1, 3, 1, 1,
2547 0, 1, 1, 3, 3, 6, 1, 0, 1, 1,
2548 3, 1, 1, 3, 5, 6, 1, 1, 1, 1,
2549 1, 1, 1, 1, 0, 2, 1, 3, 3, 1,
2550 1, 3, 1, 3, 4, 0, 1, 1
2554 /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */
2555 static const unsigned char yydprec
[] =
2557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2559 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2560 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2561 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2562 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2563 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2564 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2565 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2566 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2567 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2568 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2569 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2571 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2572 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2573 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2574 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2575 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2576 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2577 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2578 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2579 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2580 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2581 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2582 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2583 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2584 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2585 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2586 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2587 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2588 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2589 0, 0, 1, 2, 2, 2, 0, 0, 0, 0,
2590 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2591 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2592 0, 0, 2, 1, 0, 0, 0, 0, 0, 0,
2593 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
2594 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2596 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2597 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2598 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2599 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2601 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2602 0, 2, 1, 0, 0, 0, 2, 1, 0, 0,
2603 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2604 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2605 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2606 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2607 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2608 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2610 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2611 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2612 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2613 0, 0, 2, 1, 0, 0, 0, 0, 0, 0,
2614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2616 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2617 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2619 0, 0, 0, 0, 0, 0, 0, 0
2622 /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */
2623 static const unsigned char yymerger
[] =
2625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2626 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2627 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2628 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2629 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2631 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2634 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2635 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2637 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2638 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2639 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2640 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2641 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2642 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2643 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2644 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2645 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2646 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2647 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2648 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2649 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2651 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2652 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2653 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2654 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2655 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2656 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2657 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2658 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2659 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2660 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2661 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2662 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2663 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2664 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2665 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2666 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2667 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2668 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2669 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2670 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2671 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2672 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2673 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2674 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2675 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2676 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2677 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2678 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2679 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2680 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2682 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2683 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2684 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2685 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2686 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2687 0, 0, 0, 0, 0, 0, 0, 0
2690 /* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as
2691 in the case of predicates. */
2692 static const yybool yyimmediate
[] =
2694 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2695 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2698 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2699 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2700 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2701 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2702 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2703 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2704 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2705 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2706 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2707 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2708 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2709 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2711 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2712 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2713 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2714 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2715 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2716 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2719 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2720 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2721 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2722 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2723 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2725 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2726 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2727 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2728 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2729 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2730 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2731 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2732 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2733 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2734 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2735 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2736 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2737 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2739 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2740 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2741 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2742 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2743 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2744 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2745 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2746 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2747 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2748 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2749 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2750 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2752 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2753 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2754 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2755 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2756 0, 0, 0, 0, 0, 0, 0, 0
2759 /* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of
2760 list of conflicting reductions corresponding to action entry for
2761 state STATE-NUM in yytable. 0 means no conflicts. The list in
2762 yyconfl is terminated by a rule number of 0. */
2763 static const unsigned short int yyconflp
[] =
2765 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2766 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2767 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2768 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2769 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2770 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2772 0, 0, 0, 0, 0, 0, 0, 3215, 0, 0,
2773 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2774 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2775 0, 0, 0, 3217, 0, 0, 0, 0, 0, 0,
2776 0, 0, 0, 0, 0, 15, 0, 0, 0, 0,
2777 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,
2778 11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2780 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2781 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2782 0, 0, 0, 0, 3197, 0, 0, 0, 0, 0,
2783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2784 0, 0, 0, 0, 0, 0, 13, 0, 0, 0,
2785 0, 0, 0, 0, 0, 0, 0, 3209, 0, 3211,
2786 3213, 0, 3199, 0, 0, 0, 0, 0, 0, 0,
2787 0, 157, 0, 3219, 0, 3221, 3223, 0, 0, 0,
2788 0, 0, 0, 0, 0, 3201, 3203, 0, 0, 0,
2789 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2790 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2791 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2793 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2794 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2795 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2796 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2797 0, 0, 0, 0, 3205, 0, 0, 0, 0, 0,
2798 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2801 3207, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2802 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2803 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2804 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2805 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2806 3225, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2807 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2808 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2809 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2810 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2811 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2812 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2814 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2816 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
2817 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,
2818 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2819 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2820 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2821 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2822 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2823 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,
2824 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2825 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2826 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2827 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2828 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2829 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2830 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2831 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2833 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2834 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2835 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2836 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2837 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2838 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2839 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2840 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2841 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2842 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2844 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2845 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2846 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2847 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2848 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2849 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2850 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2851 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2852 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2853 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2854 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2855 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2856 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2857 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2858 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2859 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2860 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2861 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2862 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2863 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2864 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2865 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2866 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2867 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2868 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2869 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2870 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2871 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2872 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2873 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2874 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2875 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2876 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2877 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2878 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2879 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2880 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2881 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2882 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2883 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2884 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2885 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2886 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2887 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2888 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2889 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2890 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2891 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2892 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2893 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2894 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2896 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2897 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2898 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2899 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2900 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2901 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2902 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2903 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2904 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2905 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2906 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2907 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2908 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2909 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2910 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2911 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2912 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2913 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2914 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2915 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2916 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2917 0, 0, 159, 0, 0, 0, 0, 0, 0, 0,
2918 0, 161, 0, 0, 0, 0, 163, 165, 0, 0,
2919 0, 167, 0, 0, 169, 171, 173, 175, 0, 0,
2920 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
2921 0, 0, 0, 0, 0, 0, 179, 181, 0, 0,
2922 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
2923 185, 0, 0, 0, 0, 187, 189, 191, 193, 195,
2924 0, 0, 0, 0, 0, 0, 0, 197, 0, 0,
2925 0, 0, 0, 0, 0, 0, 0, 199, 0, 201,
2926 203, 205, 207, 209, 211, 0, 213, 0, 0, 215,
2927 217, 219, 221, 223, 225, 227, 229, 231, 233, 235,
2928 237, 239, 241, 243, 245, 247, 0, 0, 0, 0,
2929 0, 0, 0, 0, 249, 0, 0, 0, 0, 251,
2930 253, 0, 0, 0, 255, 0, 0, 257, 259, 261,
2931 263, 0, 0, 0, 265, 0, 0, 0, 0, 0,
2932 0, 0, 0, 0, 0, 0, 0, 0, 0, 267,
2933 269, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2934 0, 0, 271, 273, 0, 0, 0, 0, 275, 277,
2935 279, 281, 283, 0, 0, 0, 0, 0, 0, 0,
2936 285, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2937 287, 0, 289, 291, 293, 295, 297, 299, 0, 301,
2938 0, 0, 303, 305, 307, 309, 311, 313, 315, 317,
2939 319, 321, 323, 325, 327, 329, 331, 333, 335, 0,
2940 0, 0, 0, 0, 0, 0, 0, 337, 0, 0,
2941 0, 0, 339, 341, 0, 0, 0, 343, 0, 0,
2942 345, 347, 349, 351, 0, 0, 0, 353, 0, 0,
2943 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2944 0, 0, 355, 357, 0, 0, 0, 0, 0, 0,
2945 0, 0, 0, 0, 0, 359, 361, 0, 0, 0,
2946 0, 363, 365, 367, 369, 371, 0, 0, 0, 0,
2947 0, 0, 0, 373, 0, 0, 0, 0, 0, 0,
2948 0, 0, 0, 375, 0, 377, 379, 381, 383, 385,
2949 387, 0, 389, 0, 0, 391, 393, 395, 397, 399,
2950 401, 403, 405, 407, 409, 411, 413, 415, 417, 419,
2951 421, 423, 0, 0, 0, 0, 0, 0, 0, 0,
2952 426, 0, 0, 0, 0, 429, 432, 0, 0, 0,
2953 435, 0, 0, 438, 441, 444, 447, 0, 0, 0,
2954 450, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2955 0, 0, 0, 0, 0, 453, 456, 0, 0, 0,
2956 149, 0, 0, 0, 0, 151, 0, 0, 459, 462,
2957 0, 0, 153, 0, 465, 468, 471, 474, 477, 0,
2958 0, 0, 0, 0, 0, 0, 480, 0, 0, 0,
2959 0, 0, 0, 0, 0, 0, 483, 0, 486, 489,
2960 492, 495, 498, 501, 0, 504, 0, 0, 507, 510,
2961 513, 516, 519, 522, 525, 528, 531, 534, 537, 540,
2962 543, 546, 549, 552, 557, 0, 555, 0, 0, 0,
2963 155, 0, 0, 559, 0, 0, 0, 0, 561, 563,
2964 0, 0, 0, 565, 0, 0, 567, 569, 571, 573,
2965 0, 0, 0, 575, 0, 0, 0, 0, 0, 0,
2966 0, 0, 0, 0, 0, 0, 0, 0, 577, 579,
2967 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2968 0, 581, 583, 0, 0, 0, 0, 585, 587, 589,
2969 591, 593, 0, 0, 0, 0, 0, 0, 0, 595,
2970 0, 0, 0, 0, 0, 0, 0, 0, 0, 597,
2971 0, 599, 601, 603, 605, 607, 609, 0, 611, 0,
2972 0, 613, 615, 617, 619, 621, 623, 625, 627, 629,
2973 631, 633, 635, 637, 639, 641, 643, 645, 0, 0,
2974 0, 0, 0, 0, 0, 0, 647, 0, 0, 0,
2975 0, 649, 651, 0, 0, 0, 653, 0, 0, 655,
2976 657, 659, 661, 0, 0, 0, 663, 0, 0, 0,
2977 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2978 0, 665, 667, 0, 0, 0, 0, 0, 0, 0,
2979 0, 0, 0, 0, 669, 671, 0, 0, 0, 0,
2980 673, 675, 677, 679, 681, 0, 0, 0, 0, 0,
2981 0, 0, 683, 0, 0, 0, 0, 0, 0, 0,
2982 0, 0, 685, 0, 687, 689, 691, 693, 695, 697,
2983 0, 699, 0, 0, 701, 703, 705, 707, 709, 711,
2984 713, 715, 717, 719, 721, 723, 725, 727, 729, 731,
2985 733, 0, 0, 0, 0, 0, 0, 0, 0, 735,
2986 0, 0, 0, 0, 737, 739, 0, 0, 0, 741,
2987 0, 0, 743, 745, 747, 749, 0, 0, 0, 751,
2988 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2989 0, 0, 0, 0, 753, 755, 0, 0, 0, 0,
2990 0, 0, 0, 0, 0, 0, 0, 757, 759, 0,
2991 0, 0, 0, 761, 763, 765, 767, 769, 0, 0,
2992 0, 0, 0, 0, 0, 771, 0, 0, 0, 0,
2993 0, 0, 0, 0, 0, 773, 0, 775, 777, 779,
2994 781, 783, 785, 0, 787, 0, 0, 789, 791, 793,
2995 795, 797, 799, 801, 803, 805, 807, 809, 811, 813,
2996 815, 817, 819, 821, 0, 0, 0, 0, 0, 0,
2997 0, 0, 823, 0, 0, 0, 0, 825, 827, 0,
2998 0, 0, 829, 0, 0, 831, 833, 835, 837, 0,
2999 0, 0, 839, 0, 0, 0, 0, 0, 0, 0,
3000 0, 0, 0, 0, 0, 0, 0, 841, 843, 0,
3001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3002 845, 847, 0, 0, 0, 0, 849, 851, 853, 855,
3003 857, 0, 0, 0, 0, 0, 0, 0, 859, 0,
3004 0, 0, 0, 0, 0, 0, 0, 0, 861, 0,
3005 863, 865, 867, 869, 871, 873, 0, 875, 0, 0,
3006 877, 879, 881, 883, 885, 887, 889, 891, 893, 895,
3007 897, 899, 901, 903, 905, 907, 909, 0, 0, 0,
3008 0, 0, 0, 0, 0, 911, 0, 0, 0, 0,
3009 913, 915, 0, 0, 0, 917, 0, 0, 919, 921,
3010 923, 925, 0, 0, 0, 927, 0, 0, 0, 0,
3011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3012 929, 931, 0, 0, 0, 0, 0, 0, 0, 0,
3013 0, 0, 0, 933, 935, 0, 0, 0, 0, 937,
3014 939, 941, 943, 945, 0, 0, 0, 0, 0, 0,
3015 0, 947, 0, 0, 0, 0, 0, 0, 0, 0,
3016 0, 949, 0, 951, 953, 955, 957, 959, 961, 0,
3017 963, 0, 0, 965, 967, 969, 971, 973, 975, 977,
3018 979, 981, 983, 985, 987, 989, 991, 993, 995, 997,
3019 0, 0, 0, 0, 0, 0, 0, 0, 999, 0,
3020 0, 0, 0, 1001, 1003, 0, 0, 0, 1005, 0,
3021 0, 1007, 1009, 1011, 1013, 0, 0, 0, 1015, 0,
3022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3023 0, 0, 0, 1017, 1019, 0, 0, 0, 0, 0,
3024 0, 0, 0, 0, 0, 0, 1021, 1023, 0, 0,
3025 0, 0, 1025, 1027, 1029, 1031, 1033, 0, 0, 0,
3026 0, 0, 0, 0, 1035, 0, 0, 0, 0, 0,
3027 0, 0, 0, 0, 1037, 0, 1039, 1041, 1043, 1045,
3028 1047, 1049, 0, 1051, 0, 0, 1053, 1055, 1057, 1059,
3029 1061, 1063, 1065, 1067, 1069, 1071, 1073, 1075, 1077, 1079,
3030 1081, 1083, 1085, 0, 0, 0, 0, 0, 0, 0,
3031 0, 1087, 0, 0, 0, 0, 1089, 1091, 0, 0,
3032 0, 1093, 0, 0, 1095, 1097, 1099, 1101, 0, 0,
3033 0, 1103, 0, 0, 0, 0, 0, 0, 0, 0,
3034 0, 0, 0, 0, 0, 0, 1105, 1107, 0, 0,
3035 0, 0, 0, 0, 0, 0, 0, 0, 0, 1109,
3036 1111, 0, 0, 0, 0, 1113, 1115, 1117, 1119, 1121,
3037 0, 0, 0, 0, 0, 0, 0, 1123, 0, 0,
3038 0, 0, 0, 0, 0, 0, 0, 1125, 0, 1127,
3039 1129, 1131, 1133, 1135, 1137, 0, 1139, 0, 0, 1141,
3040 1143, 1145, 1147, 1149, 1151, 1153, 1155, 1157, 1159, 1161,
3041 1163, 1165, 1167, 1169, 1171, 1173, 0, 0, 0, 0,
3042 0, 0, 0, 0, 1175, 0, 0, 0, 0, 1177,
3043 1179, 0, 0, 0, 1181, 0, 0, 1183, 1185, 1187,
3044 1189, 0, 0, 0, 1191, 0, 0, 0, 0, 0,
3045 0, 0, 0, 0, 0, 0, 0, 0, 0, 1193,
3046 1195, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3047 0, 0, 1197, 1199, 0, 0, 0, 0, 1201, 1203,
3048 1205, 1207, 1209, 0, 0, 0, 0, 0, 0, 0,
3049 1211, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3050 1213, 0, 1215, 1217, 1219, 1221, 1223, 1225, 0, 1227,
3051 0, 0, 1229, 1231, 1233, 1235, 1237, 1239, 1241, 1243,
3052 1245, 1247, 1249, 1251, 1253, 1255, 1257, 1259, 1261, 0,
3053 0, 0, 0, 0, 0, 0, 0, 1263, 0, 0,
3054 0, 0, 1265, 1267, 0, 0, 0, 1269, 0, 0,
3055 1271, 1273, 1275, 1277, 0, 0, 0, 1279, 0, 0,
3056 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3057 0, 0, 1281, 1283, 0, 0, 0, 0, 0, 0,
3058 0, 0, 0, 0, 0, 1285, 1287, 0, 0, 0,
3059 0, 1289, 1291, 1293, 1295, 1297, 0, 0, 0, 0,
3060 0, 0, 0, 1299, 0, 0, 0, 0, 0, 0,
3061 0, 0, 0, 1301, 0, 1303, 1305, 1307, 1309, 1311,
3062 1313, 0, 1315, 0, 0, 1317, 1319, 1321, 1323, 1325,
3063 1327, 1329, 1331, 1333, 1335, 1337, 1339, 1341, 1343, 1345,
3064 1347, 1349, 0, 0, 0, 0, 0, 0, 0, 0,
3065 1351, 0, 0, 0, 0, 1353, 1355, 0, 0, 0,
3066 1357, 0, 0, 1359, 1361, 1363, 1365, 0, 0, 0,
3067 1367, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3068 0, 0, 0, 0, 0, 1369, 1371, 0, 0, 0,
3069 0, 0, 0, 0, 0, 0, 0, 0, 1373, 1375,
3070 0, 0, 0, 0, 1377, 1379, 1381, 1383, 1385, 0,
3071 0, 0, 0, 0, 0, 0, 1387, 0, 0, 0,
3072 0, 0, 0, 0, 0, 0, 1389, 0, 1391, 1393,
3073 1395, 1397, 1399, 1401, 0, 1403, 0, 0, 1405, 1407,
3074 1409, 1411, 1413, 1415, 1417, 1419, 1421, 1423, 1425, 1427,
3075 1429, 1431, 1433, 1435, 1437, 0, 0, 0, 0, 0,
3076 0, 0, 0, 1439, 0, 0, 0, 0, 1441, 1443,
3077 0, 0, 0, 1445, 0, 0, 1447, 1449, 1451, 1453,
3078 0, 0, 0, 1455, 0, 0, 0, 0, 0, 0,
3079 0, 0, 0, 0, 0, 0, 0, 0, 1457, 1459,
3080 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3081 0, 1461, 1463, 0, 0, 0, 0, 1465, 1467, 1469,
3082 1471, 1473, 0, 0, 0, 0, 0, 0, 0, 1475,
3083 0, 0, 0, 0, 0, 0, 0, 0, 0, 1477,
3084 0, 1479, 1481, 1483, 1485, 1487, 1489, 0, 1491, 0,
3085 0, 1493, 1495, 1497, 1499, 1501, 1503, 1505, 1507, 1509,
3086 1511, 1513, 1515, 1517, 1519, 1521, 1523, 1525, 0, 0,
3087 0, 0, 0, 0, 0, 0, 1527, 0, 0, 0,
3088 0, 1529, 1531, 0, 0, 0, 1533, 0, 0, 1535,
3089 1537, 1539, 1541, 0, 0, 0, 1543, 0, 0, 0,
3090 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3091 0, 1545, 1547, 0, 0, 0, 0, 0, 0, 0,
3092 0, 0, 0, 0, 1549, 1551, 0, 0, 0, 0,
3093 1553, 1555, 1557, 1559, 1561, 0, 0, 0, 0, 0,
3094 0, 0, 1563, 0, 0, 0, 0, 0, 0, 0,
3095 0, 0, 1565, 0, 1567, 1569, 1571, 1573, 1575, 1577,
3096 0, 1579, 0, 0, 1581, 1583, 1585, 1587, 1589, 1591,
3097 1593, 1595, 1597, 1599, 1601, 1603, 1605, 1607, 1609, 1611,
3098 1613, 0, 0, 0, 0, 0, 0, 0, 0, 1615,
3099 0, 0, 0, 0, 1617, 1619, 0, 0, 0, 1621,
3100 0, 0, 1623, 1625, 1627, 1629, 0, 0, 0, 1631,
3101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3102 0, 0, 0, 0, 1633, 1635, 0, 0, 0, 0,
3103 0, 0, 0, 0, 0, 0, 0, 1637, 1639, 0,
3104 0, 0, 0, 1641, 1643, 1645, 1647, 1649, 0, 0,
3105 0, 0, 0, 0, 0, 1651, 0, 0, 0, 0,
3106 0, 0, 0, 0, 0, 1653, 0, 1655, 1657, 1659,
3107 1661, 1663, 1665, 0, 1667, 0, 0, 1669, 1671, 1673,
3108 1675, 1677, 1679, 1681, 1683, 1685, 1687, 1689, 1691, 1693,
3109 1695, 1697, 1699, 1701, 0, 0, 0, 0, 0, 0,
3110 0, 0, 1703, 0, 0, 0, 0, 1705, 1707, 0,
3111 0, 0, 1709, 0, 0, 1711, 1713, 1715, 1717, 0,
3112 0, 0, 1719, 0, 0, 0, 0, 0, 0, 0,
3113 0, 0, 0, 0, 0, 0, 0, 1721, 1723, 0,
3114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3115 1725, 1727, 0, 0, 0, 0, 1729, 1731, 1733, 1735,
3116 1737, 0, 0, 0, 0, 0, 0, 0, 1739, 0,
3117 0, 0, 0, 0, 0, 0, 0, 0, 1741, 0,
3118 1743, 1745, 1747, 1749, 1751, 1753, 0, 1755, 0, 0,
3119 1757, 1759, 1761, 1763, 1765, 1767, 1769, 1771, 1773, 1775,
3120 1777, 1779, 1781, 1783, 1785, 1787, 1789, 0, 0, 0,
3121 0, 0, 0, 0, 0, 1791, 0, 0, 0, 0,
3122 1793, 1795, 0, 0, 0, 1797, 0, 0, 1799, 1801,
3123 1803, 1805, 0, 0, 0, 1807, 0, 0, 0, 0,
3124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3125 1809, 1811, 0, 0, 0, 0, 0, 0, 0, 0,
3126 0, 0, 0, 1813, 1815, 0, 0, 0, 0, 1817,
3127 1819, 1821, 1823, 1825, 0, 0, 0, 0, 0, 0,
3128 0, 1827, 0, 0, 0, 0, 0, 0, 0, 0,
3129 0, 1829, 0, 1831, 1833, 1835, 1837, 1839, 1841, 0,
3130 1843, 0, 0, 1845, 1847, 1849, 1851, 1853, 1855, 1857,
3131 1859, 1861, 1863, 1865, 1867, 1869, 1871, 1873, 1875, 1877,
3132 0, 0, 0, 0, 0, 0, 0, 0, 1879, 0,
3133 0, 0, 0, 1881, 1883, 0, 0, 0, 1885, 0,
3134 0, 1887, 1889, 1891, 1893, 0, 0, 0, 1895, 0,
3135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3136 0, 0, 0, 1897, 1899, 0, 0, 0, 0, 0,
3137 0, 0, 0, 0, 0, 0, 1901, 1903, 0, 0,
3138 0, 0, 1905, 1907, 1909, 1911, 1913, 0, 0, 0,
3139 0, 0, 0, 0, 1915, 0, 0, 0, 0, 0,
3140 0, 0, 0, 0, 1917, 0, 1919, 1921, 1923, 1925,
3141 1927, 1929, 0, 1931, 0, 0, 1933, 1935, 1937, 1939,
3142 1941, 1943, 1945, 1947, 1949, 1951, 1953, 1955, 1957, 1959,
3143 1961, 1963, 1965, 0, 0, 0, 0, 0, 0, 0,
3144 0, 1967, 0, 0, 0, 0, 1969, 1971, 0, 0,
3145 0, 1973, 0, 0, 1975, 1977, 1979, 1981, 0, 0,
3146 0, 1983, 0, 0, 0, 0, 0, 0, 0, 0,
3147 0, 0, 0, 0, 0, 0, 1985, 1987, 0, 0,
3148 0, 0, 0, 0, 0, 0, 0, 0, 0, 1989,
3149 1991, 0, 0, 0, 0, 1993, 1995, 1997, 1999, 2001,
3150 0, 0, 0, 0, 0, 0, 0, 2003, 0, 0,
3151 0, 0, 0, 0, 0, 0, 0, 2005, 0, 2007,
3152 2009, 2011, 2013, 2015, 2017, 0, 2019, 0, 0, 2021,
3153 2023, 2025, 2027, 2029, 2031, 2033, 2035, 2037, 2039, 2041,
3154 2043, 2045, 2047, 2049, 2051, 2053, 0, 0, 0, 0,
3155 0, 0, 0, 0, 2055, 0, 0, 0, 0, 2057,
3156 2059, 0, 0, 0, 2061, 0, 0, 2063, 2065, 2067,
3157 2069, 0, 0, 0, 2071, 0, 0, 0, 0, 0,
3158 0, 0, 0, 0, 0, 0, 0, 0, 0, 2073,
3159 2075, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3160 0, 0, 2077, 2079, 0, 0, 0, 0, 2081, 2083,
3161 2085, 2087, 2089, 0, 0, 0, 0, 0, 0, 0,
3162 2091, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3163 2093, 0, 2095, 2097, 2099, 2101, 2103, 2105, 0, 2107,
3164 0, 0, 2109, 2111, 2113, 2115, 2117, 2119, 2121, 2123,
3165 2125, 2127, 2129, 2131, 2133, 2135, 2137, 2139, 2141, 0,
3166 0, 0, 0, 0, 0, 0, 0, 2143, 0, 0,
3167 0, 0, 2145, 2147, 0, 0, 0, 2149, 0, 0,
3168 2151, 2153, 2155, 2157, 0, 0, 0, 2159, 0, 0,
3169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3170 0, 0, 2161, 2163, 0, 0, 0, 0, 0, 0,
3171 0, 0, 0, 0, 0, 2165, 2167, 0, 0, 0,
3172 0, 2169, 2171, 2173, 2175, 2177, 0, 0, 0, 0,
3173 0, 0, 0, 2179, 0, 0, 0, 0, 0, 0,
3174 0, 0, 0, 2181, 0, 2183, 2185, 2187, 2189, 2191,
3175 2193, 0, 2195, 0, 0, 2197, 2199, 2201, 2203, 2205,
3176 2207, 2209, 2211, 2213, 2215, 2217, 2219, 2221, 2223, 2225,
3177 2227, 2229, 0, 0, 0, 0, 0, 0, 0, 0,
3178 2231, 0, 0, 0, 0, 2233, 2235, 0, 0, 0,
3179 2237, 0, 0, 2239, 2241, 2243, 2245, 0, 0, 0,
3180 2247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3181 0, 0, 0, 0, 0, 2249, 2251, 0, 0, 0,
3182 0, 0, 0, 0, 0, 0, 0, 0, 2253, 2255,
3183 0, 0, 0, 0, 2257, 2259, 2261, 2263, 2265, 0,
3184 0, 0, 0, 0, 0, 0, 2267, 0, 0, 0,
3185 0, 0, 0, 0, 0, 0, 2269, 0, 2271, 2273,
3186 2275, 2277, 2279, 2281, 0, 2283, 0, 0, 2285, 2287,
3187 2289, 2291, 2293, 2295, 2297, 2299, 2301, 2303, 2305, 2307,
3188 2309, 2311, 2313, 2315, 2317, 0, 0, 0, 0, 0,
3189 0, 0, 0, 2319, 0, 0, 0, 0, 2321, 2323,
3190 0, 0, 0, 2325, 0, 0, 2327, 2329, 2331, 2333,
3191 0, 0, 0, 2335, 0, 0, 0, 0, 0, 0,
3192 0, 0, 0, 0, 0, 0, 0, 0, 2337, 2339,
3193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3194 0, 2341, 2343, 0, 0, 0, 0, 2345, 2347, 2349,
3195 2351, 2353, 0, 0, 0, 0, 0, 0, 0, 2355,
3196 0, 0, 0, 0, 0, 0, 0, 0, 0, 2357,
3197 0, 2359, 2361, 2363, 2365, 2367, 2369, 0, 2371, 0,
3198 0, 2373, 2375, 2377, 2379, 2381, 2383, 2385, 2387, 2389,
3199 2391, 2393, 2395, 2397, 2399, 2401, 2403, 2405, 0, 0,
3200 0, 0, 0, 0, 0, 0, 2407, 0, 0, 0,
3201 0, 2409, 2411, 0, 0, 0, 2413, 0, 0, 2415,
3202 2417, 2419, 2421, 0, 0, 0, 2423, 0, 0, 0,
3203 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3204 0, 2425, 2427, 0, 0, 0, 0, 0, 0, 0,
3205 0, 0, 0, 0, 2429, 2431, 0, 0, 0, 0,
3206 2433, 2435, 2437, 2439, 2441, 0, 0, 0, 0, 0,
3207 0, 0, 2443, 0, 0, 0, 0, 0, 0, 0,
3208 0, 0, 2445, 0, 2447, 2449, 2451, 2453, 2455, 2457,
3209 0, 2459, 0, 0, 2461, 2463, 2465, 2467, 2469, 2471,
3210 2473, 2475, 2477, 2479, 2481, 2483, 2485, 2487, 2489, 2491,
3211 2493, 0, 0, 0, 0, 0, 0, 0, 0, 2495,
3212 0, 0, 0, 0, 2497, 2499, 0, 0, 0, 2501,
3213 0, 0, 2503, 2505, 2507, 2509, 0, 0, 0, 2511,
3214 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3215 0, 0, 0, 0, 2513, 2515, 0, 0, 0, 0,
3216 0, 0, 0, 0, 0, 0, 0, 2517, 2519, 0,
3217 0, 0, 0, 2521, 2523, 2525, 2527, 2529, 0, 0,
3218 0, 0, 0, 0, 0, 2531, 0, 0, 0, 0,
3219 0, 0, 0, 0, 0, 2533, 0, 2535, 2537, 2539,
3220 2541, 2543, 2545, 0, 2547, 0, 0, 2549, 2551, 2553,
3221 2555, 2557, 2559, 2561, 2563, 2565, 2567, 2569, 2571, 2573,
3222 2575, 2577, 2579, 2581, 0, 0, 0, 0, 0, 0,
3223 0, 0, 2583, 0, 0, 0, 0, 2585, 2587, 0,
3224 0, 0, 2589, 0, 0, 2591, 2593, 2595, 2597, 0,
3225 0, 0, 2599, 0, 0, 0, 0, 0, 0, 0,
3226 0, 0, 0, 0, 0, 0, 0, 2601, 2603, 0,
3227 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3228 2605, 2607, 0, 0, 0, 0, 2609, 2611, 2613, 2615,
3229 2617, 0, 0, 0, 0, 0, 0, 0, 2619, 0,
3230 0, 0, 0, 0, 0, 0, 0, 0, 2621, 0,
3231 2623, 2625, 2627, 2629, 2631, 2633, 0, 2635, 0, 0,
3232 2637, 2639, 2641, 2643, 2645, 2647, 2649, 2651, 2653, 2655,
3233 2657, 2659, 2661, 2663, 2665, 2667, 2669, 0, 0, 0,
3234 0, 0, 0, 0, 0, 2671, 0, 0, 0, 0,
3235 2673, 2675, 0, 0, 0, 2677, 0, 0, 2679, 2681,
3236 2683, 2685, 0, 0, 0, 2687, 0, 0, 0, 0,
3237 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3238 2689, 2691, 0, 0, 0, 0, 0, 0, 0, 0,
3239 0, 0, 0, 2693, 2695, 0, 0, 0, 0, 2697,
3240 2699, 2701, 2703, 2705, 0, 0, 0, 0, 0, 0,
3241 0, 2707, 0, 0, 0, 0, 0, 0, 0, 0,
3242 0, 2709, 0, 2711, 2713, 2715, 2717, 2719, 2721, 0,
3243 2723, 0, 0, 2725, 2727, 2729, 2731, 2733, 2735, 2737,
3244 2739, 2741, 2743, 2745, 2747, 2749, 2751, 2753, 2755, 2757,
3245 0, 0, 0, 0, 0, 0, 0, 0, 2759, 0,
3246 0, 0, 0, 2761, 2763, 0, 0, 0, 2765, 0,
3247 0, 2767, 2769, 2771, 2773, 0, 0, 0, 2775, 0,
3248 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3249 0, 0, 0, 2777, 2779, 0, 0, 0, 0, 0,
3250 0, 0, 0, 0, 0, 0, 2781, 2783, 0, 0,
3251 0, 0, 2785, 2787, 2789, 2791, 2793, 0, 0, 0,
3252 0, 0, 0, 0, 2795, 0, 0, 0, 0, 0,
3253 0, 0, 0, 0, 2797, 0, 2799, 2801, 2803, 2805,
3254 2807, 2809, 0, 2811, 0, 0, 2813, 2815, 2817, 2819,
3255 2821, 2823, 2825, 2827, 2829, 2831, 2833, 2835, 2837, 2839,
3256 2841, 2843, 2845, 0, 0, 0, 0, 0, 0, 0,
3257 0, 2847, 0, 0, 0, 0, 2849, 2851, 0, 0,
3258 0, 2853, 0, 0, 2855, 2857, 2859, 2861, 0, 0,
3259 0, 2863, 0, 0, 0, 0, 0, 0, 0, 0,
3260 0, 0, 0, 0, 0, 0, 2865, 2867, 0, 0,
3261 0, 0, 0, 0, 0, 0, 0, 0, 0, 2869,
3262 2871, 0, 0, 0, 0, 2873, 2875, 2877, 2879, 2881,
3263 0, 0, 0, 0, 0, 0, 0, 2883, 0, 0,
3264 0, 0, 0, 0, 0, 0, 0, 2885, 0, 2887,
3265 2889, 2891, 2893, 2895, 2897, 0, 2899, 0, 0, 2901,
3266 2903, 2905, 2907, 2909, 2911, 2913, 2915, 2917, 2919, 2921,
3267 2923, 2925, 2927, 2929, 2931, 2933, 0, 0, 0, 0,
3268 0, 0, 0, 0, 2935, 0, 0, 0, 0, 2937,
3269 2939, 0, 0, 0, 2941, 0, 0, 2943, 2945, 2947,
3270 2949, 0, 0, 0, 2951, 0, 0, 0, 0, 0,
3271 0, 0, 0, 0, 0, 0, 0, 0, 0, 2953,
3272 2955, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3273 0, 0, 2957, 2959, 0, 0, 0, 0, 2961, 2963,
3274 2965, 2967, 2969, 0, 0, 0, 0, 0, 0, 0,
3275 2971, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3276 2973, 0, 2975, 2977, 2979, 2981, 2983, 2985, 0, 2987,
3277 0, 0, 2989, 2991, 2993, 2995, 2997, 2999, 3001, 3003,
3278 3005, 3007, 3009, 3011, 3013, 3015, 3017, 3019, 3021, 0,
3279 0, 0, 0, 0, 0, 0, 0, 3023, 0, 0,
3280 0, 0, 3025, 3027, 0, 0, 0, 3029, 0, 0,
3281 3031, 3033, 3035, 3037, 0, 0, 0, 3039, 0, 0,
3282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3283 0, 0, 3041, 3043, 0, 0, 0, 0, 0, 0,
3284 0, 0, 0, 0, 0, 3045, 3047, 0, 0, 0,
3285 0, 3049, 3051, 3053, 3055, 3057, 0, 0, 0, 0,
3286 0, 0, 0, 3059, 0, 0, 0, 0, 0, 0,
3287 0, 0, 0, 3061, 0, 3063, 3065, 3067, 3069, 3071,
3288 3073, 0, 3075, 0, 0, 3077, 3079, 3081, 3083, 3085,
3289 3087, 3089, 3091, 3093, 3095, 3097, 3099, 3101, 3103, 3105,
3290 3107, 3109, 0, 0, 0, 0, 0, 0, 0, 0,
3291 3111, 0, 0, 0, 0, 3113, 3115, 0, 0, 0,
3292 3117, 0, 0, 3119, 3121, 3123, 3125, 0, 0, 0,
3293 3127, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3294 0, 0, 0, 0, 0, 3129, 3131, 0, 0, 0,
3295 0, 0, 0, 0, 0, 0, 0, 0, 3133, 3135,
3296 0, 0, 0, 0, 3137, 3139, 3141, 3143, 3145, 0,
3297 0, 0, 0, 0, 0, 0, 3147, 0, 0, 0,
3298 0, 0, 0, 0, 0, 0, 3149, 0, 3151, 3153,
3299 3155, 3157, 3159, 3161, 0, 3163, 0, 0, 3165, 3167,
3300 3169, 3171, 3173, 3175, 3177, 3179, 3181, 3183, 3185, 3187,
3301 3189, 3191, 3193, 3195, 0, 0, 0, 0, 0, 0,
3302 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3303 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3304 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3305 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3307 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3311 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3312 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,
3313 0, 0, 0, 0, 0, 0, 19, 0, 0, 0,
3314 0, 21, 23, 0, 0, 0, 25, 0, 0, 0,
3315 0, 0, 0, 27, 29, 31, 33, 35, 37, 39,
3316 41, 43, 45, 47, 49, 0, 51, 53, 55, 57,
3317 59, 61, 63, 65, 67, 69, 71, 73, 75, 77,
3318 79, 81, 83, 85, 0, 0, 0, 0, 0, 87,
3319 89, 91, 93, 95, 97, 0, 0, 0, 0, 0,
3320 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3321 0, 99, 101, 0, 103, 105, 107, 109, 111, 113,
3322 0, 115, 0, 0, 117, 119, 121, 123, 125, 127,
3323 129, 131, 133, 135, 137, 139, 141, 143, 145, 147,
3324 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3325 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3326 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3327 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3329 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3330 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3331 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3333 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3334 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3335 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3336 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3339 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3346 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3347 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3348 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3349 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3350 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3351 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3353 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3356 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3357 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3358 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3359 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3360 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3361 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3362 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3363 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3364 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3366 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3367 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3369 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3373 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3374 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3375 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3376 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3377 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3378 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3379 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3380 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3381 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3382 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3383 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3384 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3385 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3386 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3387 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3388 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3389 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3390 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3391 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3392 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3394 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3395 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3396 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3397 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3399 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3400 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3401 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3402 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3403 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3404 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3405 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3406 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3407 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3408 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3411 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3412 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3413 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3414 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3416 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3417 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3418 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3420 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3421 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3422 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3423 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3427 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3428 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3429 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3430 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3432 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3435 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3436 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3437 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3438 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3439 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3443 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3445 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3446 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3447 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3448 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3449 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3450 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3451 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3452 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3453 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3454 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3455 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3457 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3458 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3460 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3461 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3462 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3463 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3464 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3465 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3466 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3468 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3470 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3471 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3472 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3473 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3474 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3475 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3476 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3481 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3482 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3483 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3484 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3486 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3487 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3488 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3489 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3490 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3491 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3492 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3493 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3494 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3496 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3497 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3499 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3500 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3501 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3502 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3503 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3504 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3506 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3507 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3508 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3509 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3511 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3515 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3516 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3517 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3519 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3520 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3521 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3522 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3523 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3524 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3525 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3526 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3527 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3528 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3529 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3530 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3531 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3532 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3533 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3535 0, 3227, 0, 0, 0, 0, 0, 0, 0, 0,
3536 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3540 /* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
3541 0, pointed into by YYCONFLP. */
3542 static const short int yyconfl
[] =
3544 0, 386, 0, 386, 0, 386, 0, 386, 0, 377,
3545 0, 377, 0, 400, 0, 458, 0, 612, 0, 612,
3546 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3547 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3548 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3549 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3550 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3551 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3552 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3553 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3554 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3555 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3556 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3557 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
3558 0, 612, 0, 612, 0, 612, 0, 612, 0, 386,
3559 0, 386, 0, 386, 0, 386, 0, 400, 0, 43,
3560 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3561 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3562 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3563 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3564 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3565 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3566 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3567 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
3568 0, 43, 0, 43, 0, 43, 0, 52, 0, 52,
3569 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3570 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3571 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3572 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3573 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3574 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3575 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3576 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
3577 0, 52, 0, 52, 0, 613, 0, 613, 0, 613,
3578 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3579 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3580 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3581 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3582 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3583 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3584 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3585 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
3586 0, 613, 0, 574, 612, 0, 574, 612, 0, 574,
3587 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3588 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3589 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3590 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3591 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3592 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3593 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3594 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3595 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3596 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
3597 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
3598 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
3599 612, 0, 574, 612, 0, 612, 0, 62, 0, 62,
3600 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3601 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3602 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3603 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3604 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3605 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3606 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3607 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
3608 0, 62, 0, 62, 0, 106, 0, 106, 0, 106,
3609 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3610 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3611 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3612 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3613 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3614 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3615 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3616 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
3617 0, 106, 0, 107, 0, 107, 0, 107, 0, 107,
3618 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3619 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3620 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3621 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3622 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3623 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3624 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3625 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
3626 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3627 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3628 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3629 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3630 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3631 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3632 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3633 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
3634 0, 105, 0, 105, 0, 105, 0, 105, 0, 103,
3635 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3636 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3637 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3638 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3639 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3640 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3641 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3642 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
3643 0, 103, 0, 103, 0, 103, 0, 104, 0, 104,
3644 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3645 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3646 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3647 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3648 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3649 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3650 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3651 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
3652 0, 104, 0, 104, 0, 124, 0, 124, 0, 124,
3653 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3654 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3655 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3656 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3657 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3658 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3659 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3660 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
3661 0, 124, 0, 126, 0, 126, 0, 126, 0, 126,
3662 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3663 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3664 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3665 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3666 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3667 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3668 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3669 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
3670 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3671 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3672 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3673 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3674 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3675 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3676 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3677 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
3678 0, 127, 0, 127, 0, 127, 0, 127, 0, 128,
3679 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3680 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3681 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3682 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3683 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3684 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3685 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3686 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
3687 0, 128, 0, 128, 0, 128, 0, 129, 0, 129,
3688 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3689 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3690 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3691 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3692 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3693 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3694 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3695 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
3696 0, 129, 0, 129, 0, 130, 0, 130, 0, 130,
3697 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3698 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3699 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3700 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3701 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3702 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3703 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3704 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
3705 0, 130, 0, 131, 0, 131, 0, 131, 0, 131,
3706 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3707 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3708 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3709 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3710 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3711 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3712 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3713 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
3714 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3715 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3716 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3717 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3718 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3719 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3720 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3721 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
3722 0, 160, 0, 160, 0, 160, 0, 160, 0, 582,
3723 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3724 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3725 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3726 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3727 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3728 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3729 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3730 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
3731 0, 582, 0, 582, 0, 582, 0, 581, 0, 581,
3732 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3733 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3734 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3735 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3736 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3737 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3738 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3739 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
3740 0, 581, 0, 581, 0, 579, 0, 579, 0, 579,
3741 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3742 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3743 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3744 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3745 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3746 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3747 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3748 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
3749 0, 579, 0, 577, 0, 577, 0, 577, 0, 577,
3750 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3751 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3752 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3753 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3754 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3755 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3756 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3757 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
3758 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3759 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3760 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3761 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3762 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3763 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3764 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3765 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
3766 0, 578, 0, 578, 0, 578, 0, 578, 0, 580,
3767 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3768 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3769 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3770 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3771 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3772 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3773 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3774 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
3775 0, 580, 0, 580, 0, 580, 0, 576, 0, 576,
3776 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3777 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3778 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3779 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3780 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3781 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3782 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3783 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
3784 0, 576, 0, 576, 0, 575, 0, 575, 0, 575,
3785 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3786 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3787 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3788 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3789 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3790 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3791 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3792 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
3793 0, 575, 0, 583, 0, 583, 0, 583, 0, 583,
3794 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3795 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3796 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3797 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3798 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3799 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3800 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3801 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
3802 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3803 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3804 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3805 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3806 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3807 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3808 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3809 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
3810 0, 144, 0, 144, 0, 144, 0, 144, 0, 611,
3811 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3812 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3813 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3814 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3815 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3816 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3817 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3818 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
3819 0, 611, 0, 611, 0, 611, 0, 609, 0, 609,
3820 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3821 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3822 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3823 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3824 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3825 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3826 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3827 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
3828 0, 609, 0, 609, 0, 608, 0, 608, 0, 608,
3829 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3830 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3831 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3832 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3833 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3834 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3835 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3836 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
3837 0, 608, 0, 610, 0, 610, 0, 610, 0, 610,
3838 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3839 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3840 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3841 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3842 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3843 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3844 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3845 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
3846 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3847 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3848 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3849 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3850 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3851 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3852 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3853 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
3854 0, 607, 0, 607, 0, 607, 0, 607, 0, 606,
3855 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3856 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3857 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3858 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3859 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3860 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3861 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3862 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
3863 0, 606, 0, 606, 0, 606, 0, 501, 0, 501,
3864 0, 451, 0, 451, 0, 452, 0, 42, 0, 487,
3865 0, 487, 0, 487, 0, 613, 0, 386, 0, 562,
3866 0, 562, 0, 562, 0, 613, 0, 339, 0, 483,
3870 /* Error token number */
3877 #define yynerrs (yystackp->yyerrcnt)
3879 #define yychar (yystackp->yyrawchar)
3881 #define yylval (yystackp->yyval)
3883 #define yylloc (yystackp->yyloc)
3884 #define psi_parser_proc_nerrs yynerrs
3885 #define psi_parser_proc_char yychar
3886 #define psi_parser_proc_lval yylval
3887 #define psi_parser_proc_lloc yylloc
3889 static const int YYEOF
= 0;
3890 static const int YYEMPTY
= -2;
3892 typedef enum { yyok
, yyaccept
, yyabort
, yyerr
} YYRESULTTAG
;
3894 #define YYCHK(YYE) \
3896 YYRESULTTAG yychk_flag = YYE; \
3897 if (yychk_flag != yyok) \
3898 return yychk_flag; \
3904 # define YYFPRINTF fprintf
3907 /* This macro is provided for backward compatibility. */
3908 #ifndef YY_LOCATION_PRINT
3909 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3913 # define YYDPRINTF(Args) \
3920 /*----------------------------------------.
3921 | Print this symbol's value on YYOUTPUT. |
3922 `----------------------------------------*/
3925 yy_symbol_value_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
3927 FILE *yyo
= yyoutput
;
3938 /*--------------------------------.
3939 | Print this symbol on YYOUTPUT. |
3940 `--------------------------------*/
3943 yy_symbol_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
3945 YYFPRINTF (yyoutput
, "%s %s (",
3946 yytype
< YYNTOKENS
? "token" : "nterm", yytname
[yytype
]);
3948 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
, P
, tokens
, index
);
3949 YYFPRINTF (yyoutput
, ")");
3952 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
3956 YYFPRINTF (stderr, "%s ", Title); \
3957 yy_symbol_print (stderr, Type, Value, P, tokens, index); \
3958 YYFPRINTF (stderr, "\n"); \
3962 /* Nonzero means print parse trace. It is left uninitialized so that
3963 multiple parsers can coexist. */
3967 static void yypstack (struct yyGLRStack
* yystackp
, size_t yyk
)
3968 YY_ATTRIBUTE_UNUSED
;
3969 static void yypdumpstack (struct yyGLRStack
* yystackp
)
3970 YY_ATTRIBUTE_UNUSED
;
3972 #else /* !YYDEBUG */
3974 # define YYDPRINTF(Args)
3975 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3977 #endif /* !YYDEBUG */
3979 /* YYINITDEPTH -- initial size of the parser's stacks. */
3981 # define YYINITDEPTH 200
3984 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3985 if the built-in stack extension method is used).
3987 Do not make this value too large; the results are undefined if
3988 SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem)
3989 evaluated with infinite-precision integer arithmetic. */
3992 # define YYMAXDEPTH 10000
3995 /* Minimum number of free items on the stack allowed after an
3996 allocation. This is to allow allocation and initialization
3997 to be completed by functions that call yyexpandGLRStack before the
3998 stack is expanded, thus insuring that all necessary pointers get
3999 properly redirected to new data. */
4000 #define YYHEADROOM 2
4002 #ifndef YYSTACKEXPANDABLE
4003 # define YYSTACKEXPANDABLE 1
4006 #if YYSTACKEXPANDABLE
4007 # define YY_RESERVE_GLRSTACK(Yystack) \
4009 if (Yystack->yyspaceLeft < YYHEADROOM) \
4010 yyexpandGLRStack (Yystack); \
4013 # define YY_RESERVE_GLRSTACK(Yystack) \
4015 if (Yystack->yyspaceLeft < YYHEADROOM) \
4016 yyMemoryExhausted (Yystack); \
4024 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
4025 # define yystpcpy stpcpy
4027 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
4030 yystpcpy (char *yydest
, const char *yysrc
)
4033 const char *yys
= yysrc
;
4035 while ((*yyd
++ = *yys
++) != '\0')
4044 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
4045 quotes and backslashes, so that it's suitable for yyerror. The
4046 heuristic is that double-quoting is unnecessary unless the string
4047 contains an apostrophe, a comma, or backslash (other than
4048 backslash-backslash). YYSTR is taken from yytname. If YYRES is
4049 null, do not copy; instead, return the length of what the result
4052 yytnamerr (char *yyres
, const char *yystr
)
4057 char const *yyp
= yystr
;
4064 goto do_not_strip_quotes
;
4068 goto do_not_strip_quotes
;
4081 do_not_strip_quotes
: ;
4085 return strlen (yystr
);
4087 return yystpcpy (yyres
, yystr
) - yyres
;
4091 #endif /* !YYERROR_VERBOSE */
4093 /** State numbers, as in LALR(1) machine */
4094 typedef int yyStateNum
;
4096 /** Rule numbers, as in LALR(1) machine */
4097 typedef int yyRuleNum
;
4099 /** Grammar symbol */
4100 typedef int yySymbol
;
4102 /** Item references, as in LALR(1) machine */
4103 typedef short int yyItemNum
;
4105 typedef struct yyGLRState yyGLRState
;
4106 typedef struct yyGLRStateSet yyGLRStateSet
;
4107 typedef struct yySemanticOption yySemanticOption
;
4108 typedef union yyGLRStackItem yyGLRStackItem
;
4109 typedef struct yyGLRStack yyGLRStack
;
4112 /** Type tag: always true. */
4114 /** Type tag for yysemantics. If true, yysval applies, otherwise
4115 * yyfirstVal applies. */
4117 /** Number of corresponding LALR(1) machine state. */
4118 yyStateNum yylrState
;
4119 /** Preceding state in this stack */
4121 /** Source position of the last token produced by my symbol */
4124 /** First in a chain of alternative reductions producing the
4125 * non-terminal corresponding to this state, threaded through
4127 yySemanticOption
* yyfirstVal
;
4128 /** Semantic value for this state. */
4133 struct yyGLRStateSet
{
4134 yyGLRState
** yystates
;
4135 /** During nondeterministic operation, yylookaheadNeeds tracks which
4136 * stacks have actually needed the current lookahead. During deterministic
4137 * operation, yylookaheadNeeds[0] is not maintained since it would merely
4138 * duplicate yychar != YYEMPTY. */
4139 yybool
* yylookaheadNeeds
;
4140 size_t yysize
, yycapacity
;
4143 struct yySemanticOption
{
4144 /** Type tag: always false. */
4146 /** Rule number for this reduction */
4148 /** The last RHS state in the list of states to be reduced. */
4149 yyGLRState
* yystate
;
4150 /** The lookahead for this reduction. */
4153 /** Next sibling in chain of options. To facilitate merging,
4154 * options are chained in decreasing order by address. */
4155 yySemanticOption
* yynext
;
4158 /** Type of the items in the GLR stack. The yyisState field
4159 * indicates which item of the union is valid. */
4160 union yyGLRStackItem
{
4162 yySemanticOption yyoption
;
4173 YYJMP_BUF yyexception_buffer
;
4174 yyGLRStackItem
* yyitems
;
4175 yyGLRStackItem
* yynextFree
;
4177 yyGLRState
* yysplitPoint
;
4178 yyGLRState
* yylastDeleted
;
4179 yyGLRStateSet yytops
;
4182 #if YYSTACKEXPANDABLE
4183 static void yyexpandGLRStack (yyGLRStack
* yystackp
);
4186 static _Noreturn
void
4187 yyFail (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char* yymsg
)
4189 if (yymsg
!= YY_NULLPTR
)
4190 yyerror (P
, tokens
, index
, yymsg
);
4191 YYLONGJMP (yystackp
->yyexception_buffer
, 1);
4194 static _Noreturn
void
4195 yyMemoryExhausted (yyGLRStack
* yystackp
)
4197 YYLONGJMP (yystackp
->yyexception_buffer
, 2);
4200 #if YYDEBUG || YYERROR_VERBOSE
4201 /** A printable representation of TOKEN. */
4202 static inline const char*
4203 yytokenName (yySymbol yytoken
)
4205 if (yytoken
== YYEMPTY
)
4208 return yytname
[yytoken
];
4212 /** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting
4213 * at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred
4214 * containing the pointer to the next state in the chain. */
4215 static void yyfillin (yyGLRStackItem
*, int, int) YY_ATTRIBUTE_UNUSED
;
4217 yyfillin (yyGLRStackItem
*yyvsp
, int yylow0
, int yylow1
)
4220 yyGLRState
*s
= yyvsp
[yylow0
].yystate
.yypred
;
4221 for (i
= yylow0
-1; i
>= yylow1
; i
-= 1)
4224 yyvsp
[i
].yystate
.yylrState
= s
->yylrState
;
4226 yyvsp
[i
].yystate
.yyresolved
= s
->yyresolved
;
4228 yyvsp
[i
].yystate
.yysemantics
.yysval
= s
->yysemantics
.yysval
;
4230 /* The effect of using yysval or yyloc (in an immediate rule) is
4232 yyvsp
[i
].yystate
.yysemantics
.yyfirstVal
= YY_NULLPTR
;
4233 s
= yyvsp
[i
].yystate
.yypred
= s
->yypred
;
4237 /* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in
4238 * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1.
4239 * For convenience, always return YYLOW1. */
4240 static inline int yyfill (yyGLRStackItem
*, int *, int, yybool
)
4241 YY_ATTRIBUTE_UNUSED
;
4243 yyfill (yyGLRStackItem
*yyvsp
, int *yylow
, int yylow1
, yybool yynormal
)
4245 if (!yynormal
&& yylow1
< *yylow
)
4247 yyfillin (yyvsp
, *yylow
, yylow1
);
4253 /** Perform user action for rule number YYN, with RHS length YYRHSLEN,
4254 * and top stack item YYVSP. YYLVALP points to place to put semantic
4255 * value ($$), and yylocp points to place for location information
4256 * (@$). Returns yyok for normal return, yyaccept for YYACCEPT,
4257 * yyerr for YYERROR, yyabort for YYABORT. */
4259 yyuserAction (yyRuleNum yyn
, size_t yyrhslen
, yyGLRStackItem
* yyvsp
,
4260 yyGLRStack
* yystackp
,
4261 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
4263 yybool yynormal YY_ATTRIBUTE_UNUSED
= (yystackp
->yysplitPoint
== YY_NULLPTR
);
4271 # define yyerrok (yystackp->yyerrState = 0)
4273 # define YYACCEPT return yyaccept
4275 # define YYABORT return yyabort
4277 # define YYERROR return yyerrok, yyerr
4278 # undef YYRECOVERING
4279 # define YYRECOVERING() (yystackp->yyerrState != 0)
4281 # define yyclearin (yychar = YYEMPTY)
4283 # define YYFILL(N) yyfill (yyvsp, &yylow, N, yynormal)
4285 # define YYBACKUP(Token, Value) \
4286 return yyerror (P, tokens, index, YY_("syntax error: cannot back up")), \
4291 *yyvalp
= yyval_default
;
4293 *yyvalp
= yyvsp
[YYFILL (1-yyrhslen
)].yystate
.yysemantics
.yysval
;
4297 #line 452 "src/parser_proc_grammar.y" /* glr.c:816 */
4299 if ((*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
4300 psi_cpp_exp_exec((*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), P
->preproc
, PSI_DATA(P
));
4301 psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4304 #line 4305 "src/parser_proc.c" /* glr.c:816 */
4308 #line 458 "src/parser_proc_grammar.y" /* glr.c:816 */
4311 P
->error(PSI_DATA(P
), (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), PSI_WARNING
,
4312 "Extra 'lib \"%s\"' statement has no effect", (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
);
4314 P
->file
.ln
= strndup((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->size
);
4317 #line 4318 "src/parser_proc.c" /* glr.c:816 */
4321 #line 466 "src/parser_proc_grammar.y" /* glr.c:816 */
4323 psi_parser_proc_add_const(P
, (*(struct psi_const
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4325 #line 4326 "src/parser_proc.c" /* glr.c:816 */
4329 #line 469 "src/parser_proc_grammar.y" /* glr.c:816 */
4331 psi_parser_proc_add_decl(P
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4333 #line 4334 "src/parser_proc.c" /* glr.c:816 */
4337 #line 472 "src/parser_proc_grammar.y" /* glr.c:816 */
4339 psi_parser_proc_add_decl_extvars(P
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4341 #line 4342 "src/parser_proc.c" /* glr.c:816 */
4345 #line 475 "src/parser_proc_grammar.y" /* glr.c:816 */
4347 if (P
->flags
& PSI_DEBUG
) {
4348 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
);
4350 psi_decl_free(&(*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4352 #line 4353 "src/parser_proc.c" /* glr.c:816 */
4356 #line 481 "src/parser_proc_grammar.y" /* glr.c:816 */
4358 psi_parser_proc_add_typedef(P
, (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4360 #line 4361 "src/parser_proc.c" /* glr.c:816 */
4364 #line 484 "src/parser_proc_grammar.y" /* glr.c:816 */
4366 psi_parser_proc_add_struct(P
, (*(struct psi_decl_struct
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4368 #line 4369 "src/parser_proc.c" /* glr.c:816 */
4372 #line 487 "src/parser_proc_grammar.y" /* glr.c:816 */
4374 psi_parser_proc_add_union(P
, (*(struct psi_decl_union
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4376 #line 4377 "src/parser_proc.c" /* glr.c:816 */
4380 #line 490 "src/parser_proc_grammar.y" /* glr.c:816 */
4382 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4384 #line 4385 "src/parser_proc.c" /* glr.c:816 */
4388 #line 493 "src/parser_proc_grammar.y" /* glr.c:816 */
4390 psi_parser_proc_add_impl(P
, (*(struct psi_impl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4392 #line 4393 "src/parser_proc.c" /* glr.c:816 */
4396 #line 499 "src/parser_proc_grammar.y" /* glr.c:816 */
4398 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4400 #line 4401 "src/parser_proc.c" /* glr.c:816 */
4404 #line 505 "src/parser_proc_grammar.y" /* glr.c:816 */
4406 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = NULL
;
4408 #line 4409 "src/parser_proc.c" /* glr.c:816 */
4412 #line 508 "src/parser_proc_grammar.y" /* glr.c:816 */
4414 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = (*(struct psi_cpp_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4416 #line 4417 "src/parser_proc.c" /* glr.c:816 */
4420 #line 514 "src/parser_proc_grammar.y" /* glr.c:816 */
4422 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
4423 struct psi_token
*msg
= NULL
;
4425 if (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0, &msg
)) {
4427 struct psi_token
*next
;
4429 msg
= psi_token_copy(msg
);
4430 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), index
++, &next
)) {
4431 struct psi_token
*old
= msg
;
4432 msg
= psi_token_cat(" ", 2, msg
, next
);
4436 psi_plist_free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4438 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, msg
);
4440 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4442 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4444 #line 4445 "src/parser_proc.c" /* glr.c:816 */
4448 #line 537 "src/parser_proc_grammar.y" /* glr.c:816 */
4450 (*(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
))));
4451 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4453 #line 4454 "src/parser_proc.c" /* glr.c:816 */
4457 #line 541 "src/parser_proc_grammar.y" /* glr.c:816 */
4459 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4460 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4462 #line 4463 "src/parser_proc.c" /* glr.c:816 */
4466 #line 545 "src/parser_proc_grammar.y" /* glr.c:816 */
4468 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4469 (*(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
))));
4470 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4472 #line 4473 "src/parser_proc.c" /* glr.c:816 */
4476 #line 550 "src/parser_proc_grammar.y" /* glr.c:816 */
4478 (*(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
)));
4479 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4481 #line 4482 "src/parser_proc.c" /* glr.c:816 */
4485 #line 554 "src/parser_proc_grammar.y" /* glr.c:816 */
4487 (*(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
)));
4488 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4490 #line 4491 "src/parser_proc.c" /* glr.c:816 */
4494 #line 558 "src/parser_proc_grammar.y" /* glr.c:816 */
4496 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = psi_cpp_exp_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
, NULL
);
4497 (*(struct psi_cpp_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4499 #line 4500 "src/parser_proc.c" /* glr.c:816 */
4503 #line 562 "src/parser_proc_grammar.y" /* glr.c:816 */
4505 psi_plist_free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4506 (*(struct psi_cpp_exp
**)(&(*yyvalp
))) = NULL
;
4508 #line 4509 "src/parser_proc.c" /* glr.c:816 */
4512 #line 606 "src/parser_proc_grammar.y" /* glr.c:816 */
4514 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4515 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
))) = psi_cpp_macro_decl_init(NULL
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), NULL
);
4516 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4518 #line 4519 "src/parser_proc.c" /* glr.c:816 */
4522 #line 611 "src/parser_proc_grammar.y" /* glr.c:816 */
4524 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4525 (*(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
);
4526 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
4528 #line 4529 "src/parser_proc.c" /* glr.c:816 */
4532 #line 616 "src/parser_proc_grammar.y" /* glr.c:816 */
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
, 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
)));
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:816 */
4542 #line 621 "src/parser_proc_grammar.y" /* glr.c:816 */
4544 struct psi_plist
*list
= psi_plist_init((psi_plist_dtor
) psi_token_free
);
4545 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4546 (*(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
);
4547 (*(struct psi_cpp_macro_decl
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4549 #line 4550 "src/parser_proc.c" /* glr.c:816 */
4553 #line 630 "src/parser_proc_grammar.y" /* glr.c:816 */
4555 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_init(NULL
);
4557 #line 4558 "src/parser_proc.c" /* glr.c:816 */
4561 #line 633 "src/parser_proc_grammar.y" /* glr.c:816 */
4563 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_init(NULL
); /* FIXME */
4565 #line 4566 "src/parser_proc.c" /* glr.c:816 */
4569 #line 637 "src/parser_proc_grammar.y" /* glr.c:816 */
4571 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4573 #line 4574 "src/parser_proc.c" /* glr.c:816 */
4577 #line 643 "src/parser_proc_grammar.y" /* glr.c:816 */
4579 (*(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
)));
4580 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4581 (*(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
)));
4583 #line 4584 "src/parser_proc.c" /* glr.c:816 */
4587 #line 648 "src/parser_proc_grammar.y" /* glr.c:816 */
4589 (*(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
)));
4590 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4591 (*(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
)));
4593 #line 4594 "src/parser_proc.c" /* glr.c:816 */
4597 #line 656 "src/parser_proc_grammar.y" /* glr.c:816 */
4599 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
4601 #line 4602 "src/parser_proc.c" /* glr.c:816 */
4605 #line 663 "src/parser_proc_grammar.y" /* glr.c:816 */
4607 (*(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
)));
4608 (*(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
)));
4610 #line 4611 "src/parser_proc.c" /* glr.c:816 */
4614 #line 667 "src/parser_proc_grammar.y" /* glr.c:816 */
4616 (*(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
)));
4617 (*(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
)));
4619 #line 4620 "src/parser_proc.c" /* glr.c:816 */
4623 #line 674 "src/parser_proc_grammar.y" /* glr.c:816 */
4625 (*(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
)));
4626 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4628 #line 4629 "src/parser_proc.c" /* glr.c:816 */
4632 #line 678 "src/parser_proc_grammar.y" /* glr.c:816 */
4634 (*(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
)));
4635 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4637 #line 4638 "src/parser_proc.c" /* glr.c:816 */
4641 #line 682 "src/parser_proc_grammar.y" /* glr.c:816 */
4643 (*(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
)));
4644 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4646 #line 4647 "src/parser_proc.c" /* glr.c:816 */
4650 #line 686 "src/parser_proc_grammar.y" /* glr.c:816 */
4652 (*(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
)));
4653 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4655 #line 4656 "src/parser_proc.c" /* glr.c:816 */
4659 #line 691 "src/parser_proc_grammar.y" /* glr.c:816 */
4664 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4665 exists
= psi_cpp_defined(P
->preproc
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4666 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8
, &exists
, 0));
4667 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4668 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4671 #line 4672 "src/parser_proc.c" /* glr.c:816 */
4675 #line 702 "src/parser_proc_grammar.y" /* glr.c:816 */
4680 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4681 exists
= psi_cpp_defined(P
->preproc
, (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4682 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8
, &exists
, 0));
4683 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4684 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4687 #line 4688 "src/parser_proc.c" /* glr.c:816 */
4691 #line 713 "src/parser_proc_grammar.y" /* glr.c:816 */
4693 (*(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
));
4694 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4695 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4697 #line 4698 "src/parser_proc.c" /* glr.c:816 */
4701 #line 718 "src/parser_proc_grammar.y" /* glr.c:816 */
4703 (*(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));
4704 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4705 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4707 #line 4708 "src/parser_proc.c" /* glr.c:816 */
4711 #line 723 "src/parser_proc_grammar.y" /* glr.c:816 */
4713 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4714 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4716 #line 4717 "src/parser_proc.c" /* glr.c:816 */
4720 #line 727 "src/parser_proc_grammar.y" /* glr.c:816 */
4722 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4723 (*(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));
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:816 */
4731 #line 733 "src/parser_proc_grammar.y" /* glr.c:816 */
4733 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4734 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num(psi_number_init(PSI_T_FUNCTION
,
4735 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));
4736 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4737 (*(struct psi_num_exp
**)(&(*yyvalp
)))->data
.n
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4739 #line 4740 "src/parser_proc.c" /* glr.c:816 */
4743 #line 743 "src/parser_proc_grammar.y" /* glr.c:816 */
4745 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
4747 #line 4748 "src/parser_proc.c" /* glr.c:816 */
4751 #line 750 "src/parser_proc_grammar.y" /* glr.c:816 */
4753 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_num_exp_free
),
4754 &(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4756 #line 4757 "src/parser_proc.c" /* glr.c:816 */
4760 #line 754 "src/parser_proc_grammar.y" /* glr.c:816 */
4762 (*(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
)));
4764 #line 4765 "src/parser_proc.c" /* glr.c:816 */
4768 #line 760 "src/parser_proc_grammar.y" /* glr.c:816 */
4770 (*(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
)));
4771 (*(struct psi_const
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4773 #line 4774 "src/parser_proc.c" /* glr.c:816 */
4777 #line 767 "src/parser_proc_grammar.y" /* glr.c:816 */
4779 (*(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
);
4780 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4782 #line 4783 "src/parser_proc.c" /* glr.c:816 */
4786 #line 771 "src/parser_proc_grammar.y" /* glr.c:816 */
4788 (*(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
)));
4789 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4791 #line 4792 "src/parser_proc.c" /* glr.c:816 */
4795 #line 775 "src/parser_proc_grammar.y" /* glr.c:816 */
4797 (*(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
);
4798 (*(struct psi_impl_def_val
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4800 #line 4801 "src/parser_proc.c" /* glr.c:816 */
4804 #line 788 "src/parser_proc_grammar.y" /* glr.c:816 */
4806 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4808 #line 4809 "src/parser_proc.c" /* glr.c:816 */
4812 #line 802 "src/parser_proc_grammar.y" /* glr.c:816 */
4814 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4816 #line 4817 "src/parser_proc.c" /* glr.c:816 */
4820 #line 808 "src/parser_proc_grammar.y" /* glr.c:816 */
4822 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4824 #line 4825 "src/parser_proc.c" /* glr.c:816 */
4828 #line 811 "src/parser_proc_grammar.y" /* glr.c:816 */
4830 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4832 #line 4833 "src/parser_proc.c" /* glr.c:816 */
4836 #line 817 "src/parser_proc_grammar.y" /* glr.c:816 */
4838 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4840 #line 4841 "src/parser_proc.c" /* glr.c:816 */
4844 #line 820 "src/parser_proc_grammar.y" /* glr.c:816 */
4846 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4848 #line 4849 "src/parser_proc.c" /* glr.c:816 */
4852 #line 827 "src/parser_proc_grammar.y" /* glr.c:816 */
4854 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4855 psi_decl_type_init(PSI_T_FUNCTION
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
),
4856 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
4858 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
4859 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4861 #line 4862 "src/parser_proc.c" /* glr.c:816 */
4865 #line 835 "src/parser_proc_grammar.y" /* glr.c:816 */
4867 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4868 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4869 psi_decl_type_init(PSI_T_ENUM
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->name
),
4870 psi_decl_var_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, 0, 0)
4872 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4873 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->token
);
4874 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.enm
= (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4875 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
4877 #line 4878 "src/parser_proc.c" /* glr.c:816 */
4881 #line 846 "src/parser_proc_grammar.y" /* glr.c:816 */
4883 (*(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
)));
4884 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
4885 (*(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
)));
4886 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4887 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).pos
;
4888 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).len
;
4889 psi_parser_proc_add_struct(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
);
4891 #line 4892 "src/parser_proc.c" /* glr.c:816 */
4895 #line 855 "src/parser_proc_grammar.y" /* glr.c:816 */
4897 (*(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
)));
4898 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
4899 (*(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
)));
4900 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
4901 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).pos
;
4902 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)).len
;
4903 psi_parser_proc_add_union(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
);
4905 #line 4906 "src/parser_proc.c" /* glr.c:816 */
4909 #line 868 "src/parser_proc_grammar.y" /* glr.c:816 */
4911 (*(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));
4912 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4914 #line 4915 "src/parser_proc.c" /* glr.c:816 */
4918 #line 872 "src/parser_proc_grammar.y" /* glr.c:816 */
4920 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
4921 psi_decl_type_init(PSI_T_ENUM
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->name
),
4922 psi_decl_var_init(NULL
, 0, 0)
4924 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4925 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
4926 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.enm
= (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4927 psi_parser_proc_add_enum(P
, (*(struct psi_decl_enum
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4929 #line 4930 "src/parser_proc.c" /* glr.c:816 */
4933 #line 882 "src/parser_proc_grammar.y" /* glr.c:816 */
4935 (*(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));
4936 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4937 (*(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
)));
4938 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4939 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
4940 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
4941 psi_parser_proc_add_struct(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.strct
);
4943 #line 4944 "src/parser_proc.c" /* glr.c:816 */
4947 #line 891 "src/parser_proc_grammar.y" /* glr.c:816 */
4949 (*(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));
4950 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
4951 (*(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
)));
4952 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
4953 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
4954 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
4955 psi_parser_proc_add_union(P
, (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.unn
);
4957 #line 4958 "src/parser_proc.c" /* glr.c:816 */
4961 #line 904 "src/parser_proc_grammar.y" /* glr.c:816 */
4963 (*(struct psi_decl_type
**)(&(*yyvalp
))) = (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4965 #line 4966 "src/parser_proc.c" /* glr.c:816 */
4969 #line 907 "src/parser_proc_grammar.y" /* glr.c:816 */
4971 (*(struct psi_decl_type
**)(&(*yyvalp
))) = (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
4973 #line 4974 "src/parser_proc.c" /* glr.c:816 */
4977 #line 918 "src/parser_proc_grammar.y" /* glr.c:816 */
4979 (*(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
);
4980 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
4982 #line 4983 "src/parser_proc.c" /* glr.c:816 */
4986 #line 926 "src/parser_proc_grammar.y" /* glr.c:816 */
4988 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4989 (*(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
);
4990 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
4992 #line 4993 "src/parser_proc.c" /* glr.c:816 */
4996 #line 931 "src/parser_proc_grammar.y" /* glr.c:816 */
4998 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
4999 (*(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
);
5000 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5002 #line 5003 "src/parser_proc.c" /* glr.c:816 */
5006 #line 936 "src/parser_proc_grammar.y" /* glr.c:816 */
5008 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5009 (*(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
);
5010 (*(struct psi_decl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5012 #line 5013 "src/parser_proc.c" /* glr.c:816 */
5016 #line 946 "src/parser_proc_grammar.y" /* glr.c:816 */
5018 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5020 #line 5021 "src/parser_proc.c" /* glr.c:816 */
5024 #line 949 "src/parser_proc_grammar.y" /* glr.c:816 */
5026 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5028 #line 5029 "src/parser_proc.c" /* glr.c:816 */
5032 #line 955 "src/parser_proc_grammar.y" /* glr.c:816 */
5034 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5036 #line 5037 "src/parser_proc.c" /* glr.c:816 */
5040 #line 958 "src/parser_proc_grammar.y" /* glr.c:816 */
5042 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5044 #line 5045 "src/parser_proc.c" /* glr.c:816 */
5048 #line 961 "src/parser_proc_grammar.y" /* glr.c:816 */
5050 (*(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
)));
5052 #line 5053 "src/parser_proc.c" /* glr.c:816 */
5056 #line 972 "src/parser_proc_grammar.y" /* glr.c:816 */
5058 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5060 #line 5061 "src/parser_proc.c" /* glr.c:816 */
5064 #line 975 "src/parser_proc_grammar.y" /* glr.c:816 */
5066 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5068 #line 5069 "src/parser_proc.c" /* glr.c:816 */
5072 #line 978 "src/parser_proc_grammar.y" /* glr.c:816 */
5074 (*(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
)));
5076 #line 5077 "src/parser_proc.c" /* glr.c:816 */
5080 #line 984 "src/parser_proc_grammar.y" /* glr.c:816 */
5082 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5084 #line 5085 "src/parser_proc.c" /* glr.c:816 */
5088 #line 987 "src/parser_proc_grammar.y" /* glr.c:816 */
5090 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5092 #line 5093 "src/parser_proc.c" /* glr.c:816 */
5096 #line 990 "src/parser_proc_grammar.y" /* glr.c:816 */
5098 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5099 (*(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
)));
5100 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5102 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5105 #line 5106 "src/parser_proc.c" /* glr.c:816 */
5109 #line 998 "src/parser_proc_grammar.y" /* glr.c:816 */
5111 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5112 (*(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
)));
5113 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5114 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5116 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5119 #line 5120 "src/parser_proc.c" /* glr.c:816 */
5123 #line 1010 "src/parser_proc_grammar.y" /* glr.c:816 */
5125 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5127 #line 5128 "src/parser_proc.c" /* glr.c:816 */
5131 #line 1013 "src/parser_proc_grammar.y" /* glr.c:816 */
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:816 */
5139 #line 1016 "src/parser_proc_grammar.y" /* glr.c:816 */
5141 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5143 #line 5144 "src/parser_proc.c" /* glr.c:816 */
5147 #line 1019 "src/parser_proc_grammar.y" /* glr.c:816 */
5149 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5150 (*(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
)));
5152 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5155 #line 5156 "src/parser_proc.c" /* glr.c:816 */
5159 #line 1026 "src/parser_proc_grammar.y" /* glr.c:816 */
5161 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5163 #line 5164 "src/parser_proc.c" /* glr.c:816 */
5167 #line 1029 "src/parser_proc_grammar.y" /* glr.c:816 */
5169 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5170 (*(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
)));
5172 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5175 #line 5176 "src/parser_proc.c" /* glr.c:816 */
5179 #line 1039 "src/parser_proc_grammar.y" /* glr.c:816 */
5181 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5183 #line 5184 "src/parser_proc.c" /* glr.c:816 */
5187 #line 1045 "src/parser_proc_grammar.y" /* glr.c:816 */
5189 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5191 #line 5192 "src/parser_proc.c" /* glr.c:816 */
5195 #line 1054 "src/parser_proc_grammar.y" /* glr.c:816 */
5197 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5199 #line 5200 "src/parser_proc.c" /* glr.c:816 */
5203 #line 1057 "src/parser_proc_grammar.y" /* glr.c:816 */
5205 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5207 #line 5208 "src/parser_proc.c" /* glr.c:816 */
5211 #line 1060 "src/parser_proc_grammar.y" /* glr.c:816 */
5213 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5214 (*(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 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5217 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5220 #line 5221 "src/parser_proc.c" /* glr.c:816 */
5224 #line 1071 "src/parser_proc_grammar.y" /* glr.c:816 */
5226 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5227 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5228 (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->redir
= strdup((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5229 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5232 #line 5233 "src/parser_proc.c" /* glr.c:816 */
5236 #line 1078 "src/parser_proc_grammar.y" /* glr.c:816 */
5238 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5239 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5240 (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->redir
= strdup((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5241 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5244 #line 5245 "src/parser_proc.c" /* glr.c:816 */
5248 #line 1088 "src/parser_proc_grammar.y" /* glr.c:816 */
5250 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
5252 #line 5253 "src/parser_proc.c" /* glr.c:816 */
5256 #line 1091 "src/parser_proc_grammar.y" /* glr.c:816 */
5258 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5260 #line 5261 "src/parser_proc.c" /* glr.c:816 */
5264 #line 1097 "src/parser_proc_grammar.y" /* glr.c:816 */
5266 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5268 #line 5269 "src/parser_proc.c" /* glr.c:816 */
5272 #line 1100 "src/parser_proc_grammar.y" /* glr.c:816 */
5274 (*(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
)));
5275 free((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5277 #line 5278 "src/parser_proc.c" /* glr.c:816 */
5281 #line 1107 "src/parser_proc_grammar.y" /* glr.c:816 */
5283 struct psi_plist
*list
= psi_plist_init((psi_plist_dtor
) psi_decl_extvar_free
);
5285 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5287 struct psi_decl_var
*var
;
5289 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &var
)) {
5290 if (psi_decl_extvar_is_blacklisted(var
->name
)) {
5291 psi_decl_var_free(&var
);
5293 list
= psi_plist_add(list
, psi_decl_extvar_init(
5294 psi_decl_arg_init(psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
), var
)));
5297 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5300 if (psi_decl_extvar_is_blacklisted((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->var
->name
)) {
5301 psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5303 struct psi_decl_extvar
*evar
= psi_decl_extvar_init((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5304 list
= psi_plist_add(list
, &evar
);
5307 (*(struct psi_plist
**)(&(*yyvalp
))) = list
;
5309 #line 5310 "src/parser_proc.c" /* glr.c:816 */
5313 #line 1137 "src/parser_proc_grammar.y" /* glr.c:816 */
5315 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5317 #line 5318 "src/parser_proc.c" /* glr.c:816 */
5321 #line 1140 "src/parser_proc_grammar.y" /* glr.c:816 */
5323 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5325 #line 5326 "src/parser_proc.c" /* glr.c:816 */
5329 #line 1146 "src/parser_proc_grammar.y" /* glr.c:816 */
5331 (*(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
)));
5333 #line 5334 "src/parser_proc.c" /* glr.c:816 */
5337 #line 1149 "src/parser_proc_grammar.y" /* glr.c:816 */
5339 (*(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
)));
5341 #line 5342 "src/parser_proc.c" /* glr.c:816 */
5345 #line 1155 "src/parser_proc_grammar.y" /* glr.c:816 */
5347 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5349 #line 5350 "src/parser_proc.c" /* glr.c:816 */
5353 #line 1158 "src/parser_proc_grammar.y" /* glr.c:816 */
5355 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5357 #line 5358 "src/parser_proc.c" /* glr.c:816 */
5361 #line 1161 "src/parser_proc_grammar.y" /* glr.c:816 */
5363 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5365 #line 5366 "src/parser_proc.c" /* glr.c:816 */
5369 #line 1164 "src/parser_proc_grammar.y" /* glr.c:816 */
5371 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5373 #line 5374 "src/parser_proc.c" /* glr.c:816 */
5377 #line 1185 "src/parser_proc_grammar.y" /* glr.c:816 */
5379 (*(struct psi_decl
**)(&(*yyvalp
))) = (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5380 (*(struct psi_decl
**)(&(*yyvalp
)))->abi
= psi_decl_abi_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
5382 #line 5383 "src/parser_proc.c" /* glr.c:816 */
5386 #line 1197 "src/parser_proc_grammar.y" /* glr.c:816 */
5388 (*(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
)));
5389 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5390 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5391 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5394 #line 5395 "src/parser_proc.c" /* glr.c:816 */
5398 #line 1204 "src/parser_proc_grammar.y" /* glr.c:816 */
5400 (*(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
)));
5401 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5402 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5403 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5404 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5407 #line 5408 "src/parser_proc.c" /* glr.c:816 */
5411 #line 1215 "src/parser_proc_grammar.y" /* glr.c:816 */
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:816 */
5423 #line 1222 "src/parser_proc_grammar.y" /* glr.c:816 */
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:816 */
5436 #line 1230 "src/parser_proc_grammar.y" /* glr.c:816 */
5438 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
));
5439 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5441 struct psi_token
*type_token
= psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
))), 1, "rval");
5442 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));
5443 struct psi_decl
*rval_decl
= psi_decl_init(rval_func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5445 rval_func
->var
->token
= psi_token_copy(type_token
);
5446 rval_func
->token
= psi_token_copy(type_token
);
5447 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5448 rval_func
->var
->pointer_level
+= 1;
5449 rval_func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5452 struct psi_decl_type
*type
= psi_decl_type_init(PSI_T_FUNCTION
, type_token
->text
);
5453 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));
5455 type
->real
.func
= rval_decl
;
5456 func
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)));
5457 func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-8)].yystate
.yysemantics
.yysval
)));
5459 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init(func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
5461 #line 5462 "src/parser_proc.c" /* glr.c:816 */
5465 #line 1254 "src/parser_proc_grammar.y" /* glr.c:816 */
5467 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-12)].yystate
.yysemantics
.yysval
));
5468 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
));
5469 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5471 struct psi_token
*type_token
= psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
))), 1, "rval");
5472 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));
5473 struct psi_decl
*rval_decl
= psi_decl_init(rval_func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5475 rval_func
->var
->token
= psi_token_copy(type_token
);
5476 rval_func
->token
= psi_token_copy(type_token
);
5477 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5478 rval_func
->var
->pointer_level
+= 1;
5479 rval_func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5482 struct psi_decl_type
*type
= psi_decl_type_init(PSI_T_FUNCTION
, type_token
->text
);
5483 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));
5485 type
->real
.func
= rval_decl
;
5486 func
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
5487 func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-9)].yystate
.yysemantics
.yysval
)));
5489 (*(struct psi_decl
**)(&(*yyvalp
))) = psi_decl_init(func
, (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
5491 #line 5492 "src/parser_proc.c" /* glr.c:816 */
5495 #line 1282 "src/parser_proc_grammar.y" /* glr.c:816 */
5497 (*(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
)));
5498 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5499 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5500 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5503 #line 5504 "src/parser_proc.c" /* glr.c:816 */
5507 #line 1289 "src/parser_proc_grammar.y" /* glr.c:816 */
5509 (*(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
)));
5510 (*(struct psi_decl
**)(&(*yyvalp
)))->varargs
= 1;
5511 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5512 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->pointer_level
+= 1;
5513 (*(struct psi_decl
**)(&(*yyvalp
)))->func
->var
->array_size
= (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5516 #line 5517 "src/parser_proc.c" /* glr.c:816 */
5520 #line 1300 "src/parser_proc_grammar.y" /* glr.c:816 */
5522 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5523 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5524 (*(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));
5525 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5526 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5528 #line 5529 "src/parser_proc.c" /* glr.c:816 */
5532 #line 1346 "src/parser_proc_grammar.y" /* glr.c:816 */
5534 (void) (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5535 (*(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));
5536 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5537 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5539 #line 5540 "src/parser_proc.c" /* glr.c:816 */
5543 #line 1402 "src/parser_proc_grammar.y" /* glr.c:816 */
5545 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5547 #line 5548 "src/parser_proc.c" /* glr.c:816 */
5551 #line 1405 "src/parser_proc_grammar.y" /* glr.c:816 */
5553 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5555 #line 5556 "src/parser_proc.c" /* glr.c:816 */
5559 #line 1408 "src/parser_proc_grammar.y" /* glr.c:816 */
5561 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5563 #line 5564 "src/parser_proc.c" /* glr.c:816 */
5567 #line 1414 "src/parser_proc_grammar.y" /* glr.c:816 */
5569 (*(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
)));
5571 #line 5572 "src/parser_proc.c" /* glr.c:816 */
5575 #line 1417 "src/parser_proc_grammar.y" /* glr.c:816 */
5577 (*(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
)));
5579 #line 5580 "src/parser_proc.c" /* glr.c:816 */
5583 #line 1423 "src/parser_proc_grammar.y" /* glr.c:816 */
5586 struct psi_token
*name
;
5588 psi_token_hash((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
, digest
);
5589 name
= psi_token_append("@", psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
), 2, "funct", digest
);
5591 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5592 psi_decl_type_init(PSI_T_FUNCTION
, name
->text
),
5593 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
5595 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->token
= name
;
5596 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
5597 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5599 #line 5600 "src/parser_proc.c" /* glr.c:816 */
5603 #line 1438 "src/parser_proc_grammar.y" /* glr.c:816 */
5605 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5607 #line 5608 "src/parser_proc.c" /* glr.c:816 */
5611 #line 1441 "src/parser_proc_grammar.y" /* glr.c:816 */
5613 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5614 (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)),
5615 psi_decl_var_init(NULL
, (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0)
5618 #line 5619 "src/parser_proc.c" /* glr.c:816 */
5622 #line 1470 "src/parser_proc_grammar.y" /* glr.c:816 */
5624 (*(struct psi_decl_arg
**)(&(*yyvalp
))) = psi_decl_arg_init(
5625 psi_decl_type_init(PSI_T_FUNCTION
, (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
->name
),
5626 psi_decl_var_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->var
)
5628 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->token
= psi_token_copy((*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->func
->token
);
5629 (*(struct psi_decl_arg
**)(&(*yyvalp
)))->type
->real
.func
= (*(struct psi_decl
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5631 #line 5632 "src/parser_proc.c" /* glr.c:816 */
5635 #line 1478 "src/parser_proc_grammar.y" /* glr.c:816 */
5637 (*(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
)));
5639 #line 5640 "src/parser_proc.c" /* glr.c:816 */
5643 #line 1506 "src/parser_proc_grammar.y" /* glr.c:816 */
5645 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5646 (*(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
)));
5647 (*(struct psi_decl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5649 #line 5650 "src/parser_proc.c" /* glr.c:816 */
5653 #line 1511 "src/parser_proc_grammar.y" /* glr.c:816 */
5655 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5656 (*(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
)));
5657 (*(struct psi_decl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5659 #line 5660 "src/parser_proc.c" /* glr.c:816 */
5663 #line 1519 "src/parser_proc_grammar.y" /* glr.c:816 */
5665 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5666 (*(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
)));
5667 (*(struct psi_decl_union
**)(&(*yyvalp
)))->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
5668 (*(struct psi_decl_union
**)(&(*yyvalp
)))->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
5669 (*(struct psi_decl_union
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5671 #line 5672 "src/parser_proc.c" /* glr.c:816 */
5675 #line 1529 "src/parser_proc_grammar.y" /* glr.c:816 */
5677 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5678 (*(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
)));
5679 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->align
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).pos
;
5680 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->size
= (*(struct psi_layout
*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)).len
;
5681 (*(struct psi_decl_struct
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5683 #line 5684 "src/parser_proc.c" /* glr.c:816 */
5687 #line 1539 "src/parser_proc_grammar.y" /* glr.c:816 */
5689 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5691 #line 5692 "src/parser_proc.c" /* glr.c:816 */
5695 #line 1546 "src/parser_proc_grammar.y" /* glr.c:816 */
5697 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5699 #line 5700 "src/parser_proc.c" /* glr.c:816 */
5703 #line 1552 "src/parser_proc_grammar.y" /* glr.c:816 */
5705 (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5706 (*(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
)));
5707 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5709 struct psi_decl_arg
*arg
;
5711 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &arg
)) {
5712 arg
->type
= psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
);
5713 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&(*yyvalp
))), &arg
);
5715 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5718 #line 5719 "src/parser_proc.c" /* glr.c:816 */
5722 #line 1566 "src/parser_proc_grammar.y" /* glr.c:816 */
5724 (*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
5725 (*(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
)));
5726 if ((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))) {
5728 struct psi_decl_arg
*arg
;
5730 while (psi_plist_get((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), i
++, &arg
)) {
5731 arg
->type
= psi_decl_type_copy((*(struct psi_decl_arg
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
);
5732 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&(*yyvalp
))), &arg
);
5734 free((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5737 #line 5738 "src/parser_proc.c" /* glr.c:816 */
5741 #line 1583 "src/parser_proc_grammar.y" /* glr.c:816 */
5743 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
5745 #line 5746 "src/parser_proc.c" /* glr.c:816 */
5749 #line 1586 "src/parser_proc_grammar.y" /* glr.c:816 */
5751 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5753 #line 5754 "src/parser_proc.c" /* glr.c:816 */
5757 #line 1592 "src/parser_proc_grammar.y" /* glr.c:816 */
5760 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5761 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5762 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add(psi_plist_init((psi_plist_dtor
) psi_decl_arg_free
), &arg
);
5765 #line 5766 "src/parser_proc.c" /* glr.c:816 */
5769 #line 1599 "src/parser_proc_grammar.y" /* glr.c:816 */
5772 struct psi_decl_arg
*arg
= psi_decl_arg_init(NULL
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5773 arg
->layout
= (*(struct psi_layout
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5774 (*(struct psi_plist
**)(&(*yyvalp
))) = psi_plist_add((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)), &arg
);
5777 #line 5778 "src/parser_proc.c" /* glr.c:816 */
5781 #line 1609 "src/parser_proc_grammar.y" /* glr.c:816 */
5783 (*(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
)));
5784 (*(struct psi_decl_enum
**)(&(*yyvalp
)))->token
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
));
5786 #line 5787 "src/parser_proc.c" /* glr.c:816 */
5790 #line 1616 "src/parser_proc_grammar.y" /* glr.c:816 */
5792 (*(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
)));
5794 #line 5795 "src/parser_proc.c" /* glr.c:816 */
5798 #line 1619 "src/parser_proc_grammar.y" /* glr.c:816 */
5800 (*(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
)));
5802 #line 5803 "src/parser_proc.c" /* glr.c:816 */
5806 #line 1625 "src/parser_proc_grammar.y" /* glr.c:816 */
5808 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5809 (*(struct psi_decl_enum_item
**)(&(*yyvalp
))) = psi_decl_enum_item_init((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
, NULL
);
5810 (*(struct psi_decl_enum_item
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5812 #line 5813 "src/parser_proc.c" /* glr.c:816 */
5816 #line 1630 "src/parser_proc_grammar.y" /* glr.c:816 */
5818 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
5819 (*(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
)));
5820 (*(struct psi_decl_enum_item
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5822 #line 5823 "src/parser_proc.c" /* glr.c:816 */
5826 #line 1638 "src/parser_proc_grammar.y" /* glr.c:816 */
5828 (*(struct psi_num_exp
**)(&(*yyvalp
))) = psi_num_exp_init_num((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5829 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
5831 #line 5832 "src/parser_proc.c" /* glr.c:816 */
5835 #line 1642 "src/parser_proc_grammar.y" /* glr.c:816 */
5837 (*(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
)));
5838 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
))->token
);
5840 #line 5841 "src/parser_proc.c" /* glr.c:816 */
5844 #line 1646 "src/parser_proc_grammar.y" /* glr.c:816 */
5846 (*(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
)));
5847 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
5849 #line 5850 "src/parser_proc.c" /* glr.c:816 */
5853 #line 1650 "src/parser_proc_grammar.y" /* glr.c:816 */
5855 (*(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
)));
5856 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5858 #line 5859 "src/parser_proc.c" /* glr.c:816 */
5862 #line 1654 "src/parser_proc_grammar.y" /* glr.c:816 */
5864 (*(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
)));
5865 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5867 #line 5868 "src/parser_proc.c" /* glr.c:816 */
5871 #line 1658 "src/parser_proc_grammar.y" /* glr.c:816 */
5873 (*(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
)));
5874 (*(struct psi_num_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5876 #line 5877 "src/parser_proc.c" /* glr.c:816 */
5880 #line 1665 "src/parser_proc_grammar.y" /* glr.c:816 */
5882 (*(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
);
5883 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5885 #line 5886 "src/parser_proc.c" /* glr.c:816 */
5889 #line 1669 "src/parser_proc_grammar.y" /* glr.c:816 */
5891 (*(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);
5892 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5894 #line 5895 "src/parser_proc.c" /* glr.c:816 */
5898 #line 1673 "src/parser_proc_grammar.y" /* glr.c:816 */
5900 (*(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);
5901 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5903 #line 5904 "src/parser_proc.c" /* glr.c:816 */
5907 #line 1677 "src/parser_proc_grammar.y" /* glr.c:816 */
5909 (*(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);
5910 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
5912 #line 5913 "src/parser_proc.c" /* glr.c:816 */
5916 #line 1681 "src/parser_proc_grammar.y" /* glr.c:816 */
5918 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_NAME
, (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)), 0);
5919 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
5921 #line 5922 "src/parser_proc.c" /* glr.c:816 */
5925 #line 1685 "src/parser_proc_grammar.y" /* glr.c:816 */
5927 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5929 #line 5930 "src/parser_proc.c" /* glr.c:816 */
5933 #line 1691 "src/parser_proc_grammar.y" /* glr.c:816 */
5935 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
5936 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
5938 #line 5939 "src/parser_proc.c" /* glr.c:816 */
5942 #line 1695 "src/parser_proc_grammar.y" /* glr.c:816 */
5944 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5945 (*(struct psi_number
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5947 #line 5948 "src/parser_proc.c" /* glr.c:816 */
5951 #line 1702 "src/parser_proc_grammar.y" /* glr.c:816 */
5953 (*(struct psi_number
**)(&(*yyvalp
))) = (*(struct psi_number
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
5955 #line 5956 "src/parser_proc.c" /* glr.c:816 */
5959 #line 1705 "src/parser_proc_grammar.y" /* glr.c:816 */
5961 if ((*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
5962 int8_t sizeof_void_p
= sizeof(void *);
5963 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_void_p
, 0);
5964 psi_decl_type_free(&(*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
5966 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_SIZEOF
, (*(struct psi_decl_type
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), 0);
5969 #line 5970 "src/parser_proc.c" /* glr.c:816 */
5973 #line 1717 "src/parser_proc_grammar.y" /* glr.c:816 */
5975 int8_t sizeof_void_p
= sizeof(void *);
5976 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_void_p
, 0);
5978 #line 5979 "src/parser_proc.c" /* glr.c:816 */
5982 #line 1721 "src/parser_proc_grammar.y" /* glr.c:816 */
5984 int8_t sizeof_a
= sizeof('a');
5985 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_INT8
, &sizeof_a
, 0);
5987 #line 5988 "src/parser_proc.c" /* glr.c:816 */
5991 #line 1725 "src/parser_proc_grammar.y" /* glr.c:816 */
5993 uint64_t len
= (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->size
+ 1;
5994 (*(struct psi_number
**)(&(*yyvalp
))) = psi_number_init(PSI_T_UINT64
, &len
, 0);
5996 #line 5997 "src/parser_proc.c" /* glr.c:816 */
6000 #line 1732 "src/parser_proc_grammar.y" /* glr.c:816 */
6002 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6003 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6007 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6008 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6011 #line 6012 "src/parser_proc.c" /* glr.c:816 */
6015 #line 1745 "src/parser_proc_grammar.y" /* glr.c:816 */
6017 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6018 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6022 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6023 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6026 #line 6027 "src/parser_proc.c" /* glr.c:816 */
6030 #line 1758 "src/parser_proc_grammar.y" /* glr.c:816 */
6032 if ((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))) {
6033 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6037 psi_token_hash((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), digest
);
6038 (*(struct psi_token
**)(&(*yyvalp
))) = psi_token_append("@", psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))), 1, digest
);
6041 #line 6042 "src/parser_proc.c" /* glr.c:816 */
6045 #line 1771 "src/parser_proc_grammar.y" /* glr.c:816 */
6047 (*(struct psi_token
**)(&(*yyvalp
))) = NULL
;
6049 #line 6050 "src/parser_proc.c" /* glr.c:816 */
6053 #line 1774 "src/parser_proc_grammar.y" /* glr.c:816 */
6055 (*(struct psi_token
**)(&(*yyvalp
))) = (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6056 (*(struct psi_token
**)(&(*yyvalp
)))->type
= PSI_T_NAME
;
6058 #line 6059 "src/parser_proc.c" /* glr.c:816 */
6062 #line 1786 "src/parser_proc_grammar.y" /* glr.c:816 */
6064 (*(struct psi_layout
**)(&(*yyvalp
))) = NULL
;
6066 #line 6067 "src/parser_proc.c" /* glr.c:816 */
6070 #line 1789 "src/parser_proc_grammar.y" /* glr.c:816 */
6072 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(0, 0, psi_layout_init(0, atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->text
), NULL
));
6074 #line 6075 "src/parser_proc.c" /* glr.c:816 */
6078 #line 1792 "src/parser_proc_grammar.y" /* glr.c:816 */
6080 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
), atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
), NULL
);
6082 #line 6083 "src/parser_proc.c" /* glr.c:816 */
6086 #line 1795 "src/parser_proc_grammar.y" /* glr.c:816 */
6088 (*(struct psi_layout
**)(&(*yyvalp
))) = psi_layout_init(atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
), atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
), psi_layout_init(0, atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-7)].yystate
.yysemantics
.yysval
))->text
), NULL
));
6090 #line 6091 "src/parser_proc.c" /* glr.c:816 */
6094 #line 1801 "src/parser_proc_grammar.y" /* glr.c:816 */
6096 (*(struct psi_layout
*)(&(*yyvalp
))).pos
= 0;
6097 (*(struct psi_layout
*)(&(*yyvalp
))).len
= 0;
6099 #line 6100 "src/parser_proc.c" /* glr.c:816 */
6103 #line 1805 "src/parser_proc_grammar.y" /* glr.c:816 */
6105 (*(struct psi_layout
*)(&(*yyvalp
))).pos
= atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->text
);
6106 (*(struct psi_layout
*)(&(*yyvalp
))).len
= atol((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
))->text
);
6108 #line 6109 "src/parser_proc.c" /* glr.c:816 */
6112 #line 1812 "src/parser_proc_grammar.y" /* glr.c:816 */
6114 (*(size_t*)(&(*yyvalp
))) = 0;
6116 #line 6117 "src/parser_proc.c" /* glr.c:816 */
6120 #line 1815 "src/parser_proc_grammar.y" /* glr.c:816 */
6122 (*(size_t*)(&(*yyvalp
))) = 0;
6124 #line 6125 "src/parser_proc.c" /* glr.c:816 */
6128 #line 1818 "src/parser_proc_grammar.y" /* glr.c:816 */
6130 struct psi_validate_scope scope
= {0};
6131 psi_validate_scope_ctor(&scope
);
6132 scope
.defs
= &P
->preproc
->defs
;
6133 if (psi_num_exp_validate(PSI_DATA(P
), (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), &scope
)) {
6134 (*(size_t*)(&(*yyvalp
))) = psi_num_exp_get_long((*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)), NULL
, &P
->preproc
->defs
);
6136 (*(size_t*)(&(*yyvalp
))) = 0;
6138 psi_num_exp_free(&(*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6139 psi_validate_scope_dtor(&scope
);
6141 #line 6142 "src/parser_proc.c" /* glr.c:816 */
6145 #line 1840 "src/parser_proc_grammar.y" /* glr.c:816 */
6147 (*(size_t*)(&(*yyvalp
))) = 0;
6149 #line 6150 "src/parser_proc.c" /* glr.c:816 */
6153 #line 1843 "src/parser_proc_grammar.y" /* glr.c:816 */
6155 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6157 #line 6158 "src/parser_proc.c" /* glr.c:816 */
6161 #line 1850 "src/parser_proc_grammar.y" /* glr.c:816 */
6163 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6165 #line 6166 "src/parser_proc.c" /* glr.c:816 */
6169 #line 1856 "src/parser_proc_grammar.y" /* glr.c:816 */
6171 (*(size_t*)(&(*yyvalp
))) = 1;
6173 #line 6174 "src/parser_proc.c" /* glr.c:816 */
6177 #line 1859 "src/parser_proc_grammar.y" /* glr.c:816 */
6179 (*(size_t*)(&(*yyvalp
))) = (*(size_t*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)) + 1;
6181 #line 6182 "src/parser_proc.c" /* glr.c:816 */
6185 #line 1881 "src/parser_proc_grammar.y" /* glr.c:816 */
6187 (*(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
)));
6189 #line 6190 "src/parser_proc.c" /* glr.c:816 */
6193 #line 1884 "src/parser_proc_grammar.y" /* glr.c:816 */
6195 (*(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
)));
6196 (*(struct psi_impl_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->static_memory
= 1;
6198 #line 6199 "src/parser_proc.c" /* glr.c:816 */
6202 #line 1891 "src/parser_proc_grammar.y" /* glr.c:816 */
6204 (*(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
)));
6205 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6206 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
));
6208 #line 6209 "src/parser_proc.c" /* glr.c:816 */
6212 #line 1896 "src/parser_proc_grammar.y" /* glr.c:816 */
6214 (*(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
)));
6215 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6216 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
));
6218 #line 6219 "src/parser_proc.c" /* glr.c:816 */
6222 #line 1901 "src/parser_proc_grammar.y" /* glr.c:816 */
6224 (*(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
)));
6225 (*(struct psi_impl_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-10)].yystate
.yysemantics
.yysval
)));
6226 (*(struct psi_impl_func
**)(&(*yyvalp
)))->return_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
));
6227 (*(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
);
6228 (*(struct psi_impl_func
**)(&(*yyvalp
)))->vararg
->var
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6230 #line 6231 "src/parser_proc.c" /* glr.c:816 */
6234 #line 1911 "src/parser_proc_grammar.y" /* glr.c:816 */
6236 (*(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
)));
6238 #line 6239 "src/parser_proc.c" /* glr.c:816 */
6242 #line 1914 "src/parser_proc_grammar.y" /* glr.c:816 */
6244 (*(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
)));
6246 #line 6247 "src/parser_proc.c" /* glr.c:816 */
6250 #line 1920 "src/parser_proc_grammar.y" /* glr.c:816 */
6252 (*(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
);
6254 #line 6255 "src/parser_proc.c" /* glr.c:816 */
6258 #line 1923 "src/parser_proc_grammar.y" /* glr.c:816 */
6260 (*(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
)));
6262 #line 6263 "src/parser_proc.c" /* glr.c:816 */
6266 #line 1929 "src/parser_proc_grammar.y" /* glr.c:816 */
6268 (*(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
)));
6269 (*(struct psi_impl_var
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6271 #line 6272 "src/parser_proc.c" /* glr.c:816 */
6275 #line 1936 "src/parser_proc_grammar.y" /* glr.c:816 */
6277 (*(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
);
6278 (*(struct psi_impl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6280 #line 6281 "src/parser_proc.c" /* glr.c:816 */
6284 #line 1943 "src/parser_proc_grammar.y" /* glr.c:816 */
6286 (*(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
);
6287 (*(struct psi_impl_type
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6289 #line 6290 "src/parser_proc.c" /* glr.c:816 */
6293 #line 1970 "src/parser_proc_grammar.y" /* glr.c:816 */
6295 (*(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
)));
6297 #line 6298 "src/parser_proc.c" /* glr.c:816 */
6301 #line 1973 "src/parser_proc_grammar.y" /* glr.c:816 */
6303 (*(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
)));
6305 #line 6306 "src/parser_proc.c" /* glr.c:816 */
6309 #line 1979 "src/parser_proc_grammar.y" /* glr.c:816 */
6311 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_return_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6313 #line 6314 "src/parser_proc.c" /* glr.c:816 */
6317 #line 1982 "src/parser_proc_grammar.y" /* glr.c:816 */
6319 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_let_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6321 #line 6322 "src/parser_proc.c" /* glr.c:816 */
6325 #line 1985 "src/parser_proc_grammar.y" /* glr.c:816 */
6327 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_set_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6329 #line 6330 "src/parser_proc.c" /* glr.c:816 */
6333 #line 1988 "src/parser_proc_grammar.y" /* glr.c:816 */
6335 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_assert_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6337 #line 6338 "src/parser_proc.c" /* glr.c:816 */
6341 #line 1991 "src/parser_proc_grammar.y" /* glr.c:816 */
6343 (*(struct psi_token
***)(&(*yyvalp
))) = (struct psi_token
**) (*(struct psi_free_stmt
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6345 #line 6346 "src/parser_proc.c" /* glr.c:816 */
6349 #line 1997 "src/parser_proc_grammar.y" /* glr.c:816 */
6351 (*(struct psi_let_stmt
**)(&(*yyvalp
))) = psi_let_stmt_init((*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6352 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6354 #line 6355 "src/parser_proc.c" /* glr.c:816 */
6358 #line 2001 "src/parser_proc_grammar.y" /* glr.c:816 */
6360 (*(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
))));
6361 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6362 (*(struct psi_let_stmt
**)(&(*yyvalp
)))->exp
->is_reference
= (*(bool*)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6364 #line 6365 "src/parser_proc.c" /* glr.c:816 */
6368 #line 2010 "src/parser_proc_grammar.y" /* glr.c:816 */
6370 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6371 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= true;
6373 #line 6374 "src/parser_proc.c" /* glr.c:816 */
6377 #line 2014 "src/parser_proc_grammar.y" /* glr.c:816 */
6379 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6380 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= false;
6382 #line 6383 "src/parser_proc.c" /* glr.c:816 */
6386 #line 2021 "src/parser_proc_grammar.y" /* glr.c:816 */
6388 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_NULL
, NULL
);
6390 #line 6391 "src/parser_proc.c" /* glr.c:816 */
6394 #line 2024 "src/parser_proc_grammar.y" /* glr.c:816 */
6396 (*(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
)));
6398 #line 6399 "src/parser_proc.c" /* glr.c:816 */
6402 #line 2027 "src/parser_proc_grammar.y" /* glr.c:816 */
6404 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLOC
, (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6406 #line 6407 "src/parser_proc.c" /* glr.c:816 */
6410 #line 2030 "src/parser_proc_grammar.y" /* glr.c:816 */
6412 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLOC
, (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6413 (*(struct psi_let_calloc
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->static_memory
= 1;
6415 #line 6416 "src/parser_proc.c" /* glr.c:816 */
6419 #line 2034 "src/parser_proc_grammar.y" /* glr.c:816 */
6421 (*(struct psi_let_exp
**)(&(*yyvalp
))) = psi_let_exp_init(PSI_LET_CALLBACK
, (*(struct psi_let_callback
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6423 #line 6424 "src/parser_proc.c" /* glr.c:816 */
6427 #line 2037 "src/parser_proc_grammar.y" /* glr.c:816 */
6429 (*(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
)));
6431 #line 6432 "src/parser_proc.c" /* glr.c:816 */
6435 #line 2043 "src/parser_proc_grammar.y" /* glr.c:816 */
6437 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6438 (*(struct psi_let_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6440 #line 6441 "src/parser_proc.c" /* glr.c:816 */
6444 #line 2047 "src/parser_proc_grammar.y" /* glr.c:816 */
6446 (*(struct psi_let_exp
**)(&(*yyvalp
))) = (*(struct psi_let_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6447 (*(struct psi_let_exp
**)(&(*yyvalp
)))->is_reference
= 1;
6448 (*(struct psi_let_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
));
6450 #line 6451 "src/parser_proc.c" /* glr.c:816 */
6454 #line 2055 "src/parser_proc_grammar.y" /* glr.c:816 */
6456 (*(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
)));
6457 (*(struct psi_let_calloc
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6459 #line 6460 "src/parser_proc.c" /* glr.c:816 */
6463 #line 2062 "src/parser_proc_grammar.y" /* glr.c:816 */
6465 (*(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
);
6466 (*(struct psi_let_callback
**)(&(*yyvalp
)))->func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
6467 (*(struct psi_let_callback
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-7)].yystate
.yysemantics
.yysval
)));
6469 #line 6470 "src/parser_proc.c" /* glr.c:816 */
6473 #line 2067 "src/parser_proc_grammar.y" /* glr.c:816 */
6475 (*(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
)));
6476 (*(struct psi_let_callback
**)(&(*yyvalp
)))->func
->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-6)].yystate
.yysemantics
.yysval
)));
6477 (*(struct psi_let_callback
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-11)].yystate
.yysemantics
.yysval
)));
6479 #line 6480 "src/parser_proc.c" /* glr.c:816 */
6483 #line 2075 "src/parser_proc_grammar.y" /* glr.c:816 */
6485 (*(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
)));
6486 (*(struct psi_let_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6487 (*(struct psi_let_func
**)(&(*yyvalp
)))->inner
= (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6489 #line 6490 "src/parser_proc.c" /* glr.c:816 */
6493 #line 2096 "src/parser_proc_grammar.y" /* glr.c:816 */
6495 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6497 #line 6498 "src/parser_proc.c" /* glr.c:816 */
6501 #line 2099 "src/parser_proc_grammar.y" /* glr.c:816 */
6503 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6505 #line 6506 "src/parser_proc.c" /* glr.c:816 */
6509 #line 2105 "src/parser_proc_grammar.y" /* glr.c:816 */
6511 (*(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
)));
6513 #line 6514 "src/parser_proc.c" /* glr.c:816 */
6517 #line 2108 "src/parser_proc_grammar.y" /* glr.c:816 */
6519 (*(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
)));
6521 #line 6522 "src/parser_proc.c" /* glr.c:816 */
6525 #line 2119 "src/parser_proc_grammar.y" /* glr.c:816 */
6527 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6529 #line 6530 "src/parser_proc.c" /* glr.c:816 */
6533 #line 2122 "src/parser_proc_grammar.y" /* glr.c:816 */
6535 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6537 #line 6538 "src/parser_proc.c" /* glr.c:816 */
6541 #line 2128 "src/parser_proc_grammar.y" /* glr.c:816 */
6543 (*(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
)));
6545 #line 6546 "src/parser_proc.c" /* glr.c:816 */
6549 #line 2131 "src/parser_proc_grammar.y" /* glr.c:816 */
6551 (*(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
)));
6553 #line 6554 "src/parser_proc.c" /* glr.c:816 */
6557 #line 2137 "src/parser_proc_grammar.y" /* glr.c:816 */
6559 (*(struct psi_return_stmt
**)(&(*yyvalp
))) = psi_return_stmt_init((*(struct psi_return_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6560 (*(struct psi_return_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6562 #line 6563 "src/parser_proc.c" /* glr.c:816 */
6566 #line 2144 "src/parser_proc_grammar.y" /* glr.c:816 */
6568 (*(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
))));
6569 (*(struct psi_return_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_decl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
))->token
);
6571 #line 6572 "src/parser_proc.c" /* glr.c:816 */
6575 #line 2148 "src/parser_proc_grammar.y" /* glr.c:816 */
6577 (*(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
))));
6578 (*(struct psi_return_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
))->token
);
6580 #line 6581 "src/parser_proc.c" /* glr.c:816 */
6584 #line 2155 "src/parser_proc_grammar.y" /* glr.c:816 */
6586 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6588 #line 6589 "src/parser_proc.c" /* glr.c:816 */
6592 #line 2158 "src/parser_proc_grammar.y" /* glr.c:816 */
6594 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6596 #line 6597 "src/parser_proc.c" /* glr.c:816 */
6600 #line 2161 "src/parser_proc_grammar.y" /* glr.c:816 */
6602 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6604 #line 6605 "src/parser_proc.c" /* glr.c:816 */
6608 #line 2167 "src/parser_proc_grammar.y" /* glr.c:816 */
6610 (*(struct psi_set_stmt
**)(&(*yyvalp
))) = psi_set_stmt_init((*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6611 (*(struct psi_set_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6613 #line 6614 "src/parser_proc.c" /* glr.c:816 */
6617 #line 2174 "src/parser_proc_grammar.y" /* glr.c:816 */
6619 (*(struct psi_set_exp
**)(&(*yyvalp
))) = psi_set_exp_init(PSI_SET_FUNC
, (*(struct psi_set_func
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6621 #line 6622 "src/parser_proc.c" /* glr.c:816 */
6625 #line 2177 "src/parser_proc_grammar.y" /* glr.c:816 */
6627 (*(struct psi_set_exp
**)(&(*yyvalp
))) = psi_set_exp_init(PSI_SET_NUMEXP
, (*(struct psi_num_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
)));
6629 #line 6630 "src/parser_proc.c" /* glr.c:816 */
6633 #line 2180 "src/parser_proc_grammar.y" /* glr.c:816 */
6635 (*(struct psi_set_exp
**)(&(*yyvalp
))) = (*(struct psi_set_exp
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6636 (*(struct psi_set_exp
**)(&(*yyvalp
)))->var
= (*(struct psi_impl_var
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
));
6638 #line 6639 "src/parser_proc.c" /* glr.c:816 */
6642 #line 2187 "src/parser_proc_grammar.y" /* glr.c:816 */
6644 (*(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
)));
6645 (*(struct psi_set_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-4)].yystate
.yysemantics
.yysval
)));
6646 (*(struct psi_set_func
**)(&(*yyvalp
)))->inner
= (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
));
6648 #line 6649 "src/parser_proc.c" /* glr.c:816 */
6652 #line 2192 "src/parser_proc_grammar.y" /* glr.c:816 */
6654 (*(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
)));
6655 (*(struct psi_set_func
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-5)].yystate
.yysemantics
.yysval
)));
6656 (*(struct psi_set_func
**)(&(*yyvalp
)))->recursive
= 1;
6658 #line 6659 "src/parser_proc.c" /* glr.c:816 */
6662 #line 2211 "src/parser_proc_grammar.y" /* glr.c:816 */
6664 (*(struct psi_plist
**)(&(*yyvalp
))) = NULL
;
6666 #line 6667 "src/parser_proc.c" /* glr.c:816 */
6670 #line 2214 "src/parser_proc_grammar.y" /* glr.c:816 */
6672 (*(struct psi_plist
**)(&(*yyvalp
))) = (*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (0)].yystate
.yysemantics
.yysval
));
6674 #line 6675 "src/parser_proc.c" /* glr.c:816 */
6678 #line 2220 "src/parser_proc_grammar.y" /* glr.c:816 */
6680 (*(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
)));
6682 #line 6683 "src/parser_proc.c" /* glr.c:816 */
6686 #line 2223 "src/parser_proc_grammar.y" /* glr.c:816 */
6688 (*(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
)));
6690 #line 6691 "src/parser_proc.c" /* glr.c:816 */
6694 #line 2229 "src/parser_proc_grammar.y" /* glr.c:816 */
6696 (*(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
)));
6697 (*(struct psi_assert_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6699 #line 6700 "src/parser_proc.c" /* glr.c:816 */
6703 #line 2241 "src/parser_proc_grammar.y" /* glr.c:816 */
6705 (*(struct psi_free_stmt
**)(&(*yyvalp
))) = psi_free_stmt_init((*(struct psi_plist
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-1)].yystate
.yysemantics
.yysval
)));
6706 (*(struct psi_free_stmt
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-2)].yystate
.yysemantics
.yysval
)));
6708 #line 6709 "src/parser_proc.c" /* glr.c:816 */
6712 #line 2248 "src/parser_proc_grammar.y" /* glr.c:816 */
6714 (*(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
)));
6716 #line 6717 "src/parser_proc.c" /* glr.c:816 */
6720 #line 2251 "src/parser_proc_grammar.y" /* glr.c:816 */
6722 (*(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
)));
6724 #line 6725 "src/parser_proc.c" /* glr.c:816 */
6728 #line 2257 "src/parser_proc_grammar.y" /* glr.c:816 */
6730 (*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
))->type
= PSI_T_NAME
;
6731 (*(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
)));
6732 (*(struct psi_free_exp
**)(&(*yyvalp
)))->token
= psi_token_copy((*(struct psi_token
**)(&((yyGLRStackItem
const *)yyvsp
)[YYFILL (-3)].yystate
.yysemantics
.yysval
)));
6734 #line 6735 "src/parser_proc.c" /* glr.c:816 */
6738 #line 2265 "src/parser_proc_grammar.y" /* glr.c:816 */
6740 (*(bool*)(&(*yyvalp
))) = false;
6742 #line 6743 "src/parser_proc.c" /* glr.c:816 */
6746 #line 2268 "src/parser_proc_grammar.y" /* glr.c:816 */
6748 (*(bool*)(&(*yyvalp
))) = true;
6750 #line 6751 "src/parser_proc.c" /* glr.c:816 */
6754 #line 6755 "src/parser_proc.c" /* glr.c:816 */
6765 # undef YYRECOVERING
6770 yyuserMerge (int yyn
, YYSTYPE
* yy0
, YYSTYPE
* yy1
)
6782 /* Bison grammar-table manipulation. */
6784 /*-----------------------------------------------.
6785 | Release the memory associated to this symbol. |
6786 `-----------------------------------------------*/
6789 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
6797 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
6799 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
6802 case 141: /* binary_op_token */
6803 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6805 #line 6806 "src/parser_proc.c" /* glr.c:846 */
6808 case 142: /* unary_op_token */
6809 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6811 #line 6812 "src/parser_proc.c" /* glr.c:846 */
6814 case 143: /* name_token */
6815 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6817 #line 6818 "src/parser_proc.c" /* glr.c:846 */
6820 case 144: /* any_noeol_token */
6821 #line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
6823 #line 6824 "src/parser_proc.c" /* glr.c:846 */
6827 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
6828 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
6829 #line 6830 "src/parser_proc.c" /* glr.c:846 */
6833 #line 324 "src/parser_proc_grammar.y" /* glr.c:846 */
6834 {psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&(*yyvaluep
))));}
6835 #line 6836 "src/parser_proc.c" /* glr.c:846 */
6838 case 151: /* cpp_exp */
6839 #line 324 "src/parser_proc_grammar.y" /* glr.c:846 */
6840 {psi_cpp_exp_free(&(*(struct psi_cpp_exp
**)(&(*yyvaluep
))));}
6841 #line 6842 "src/parser_proc.c" /* glr.c:846 */
6844 case 153: /* cpp_message_token */
6845 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6847 #line 6848 "src/parser_proc.c" /* glr.c:846 */
6850 case 154: /* cpp_include_token */
6851 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6853 #line 6854 "src/parser_proc.c" /* glr.c:846 */
6856 case 155: /* cpp_header_token */
6857 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6859 #line 6860 "src/parser_proc.c" /* glr.c:846 */
6862 case 156: /* cpp_no_arg_token */
6863 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6865 #line 6866 "src/parser_proc.c" /* glr.c:846 */
6868 case 157: /* cpp_name_arg_token */
6869 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6871 #line 6872 "src/parser_proc.c" /* glr.c:846 */
6874 case 158: /* cpp_exp_arg_token */
6875 #line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
6877 #line 6878 "src/parser_proc.c" /* glr.c:846 */
6880 case 159: /* cpp_macro_decl */
6881 #line 326 "src/parser_proc_grammar.y" /* glr.c:846 */
6882 {psi_cpp_macro_decl_free(&(*(struct psi_cpp_macro_decl
**)(&(*yyvaluep
))));}
6883 #line 6884 "src/parser_proc.c" /* glr.c:846 */
6886 case 160: /* cpp_macro_sig */
6887 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6888 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6889 #line 6890 "src/parser_proc.c" /* glr.c:846 */
6892 case 161: /* cpp_macro_sig_args */
6893 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6894 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6895 #line 6896 "src/parser_proc.c" /* glr.c:846 */
6898 case 162: /* cpp_macro_decl_tokens */
6899 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6900 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6901 #line 6902 "src/parser_proc.c" /* glr.c:846 */
6904 case 163: /* cpp_macro_decl_token_list */
6905 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6906 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6907 #line 6908 "src/parser_proc.c" /* glr.c:846 */
6910 case 164: /* cpp_macro_exp */
6911 #line 330 "src/parser_proc_grammar.y" /* glr.c:846 */
6912 {psi_num_exp_free(&(*(struct psi_num_exp
**)(&(*yyvaluep
))));}
6913 #line 6914 "src/parser_proc.c" /* glr.c:846 */
6916 case 165: /* cpp_macro_call_args */
6917 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6918 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6919 #line 6920 "src/parser_proc.c" /* glr.c:846 */
6922 case 166: /* cpp_macro_call_arg_list */
6923 #line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
6924 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
6925 #line 6926 "src/parser_proc.c" /* glr.c:846 */
6928 case 167: /* constant */
6929 #line 336 "src/parser_proc_grammar.y" /* glr.c:846 */
6930 {psi_const_free(&(*(struct psi_const
**)(&(*yyvaluep
))));}
6931 #line 6932 "src/parser_proc.c" /* glr.c:846 */
6934 case 168: /* impl_def_val */
6935 #line 338 "src/parser_proc_grammar.y" /* glr.c:846 */
6936 {psi_impl_def_val_free(&(*(struct psi_impl_def_val
**)(&(*yyvaluep
))));}
6937 #line 6938 "src/parser_proc.c" /* glr.c:846 */
6940 case 169: /* impl_def_val_token */
6941 #line 333 "src/parser_proc_grammar.y" /* glr.c:846 */
6943 #line 6944 "src/parser_proc.c" /* glr.c:846 */
6946 case 170: /* decl_typedef */
6947 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6948 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6949 #line 6950 "src/parser_proc.c" /* glr.c:846 */
6952 case 171: /* typedef */
6953 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6954 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6955 #line 6956 "src/parser_proc.c" /* glr.c:846 */
6958 case 172: /* typedef_anon */
6959 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6960 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6961 #line 6962 "src/parser_proc.c" /* glr.c:846 */
6964 case 173: /* typedef_decl */
6965 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6966 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6967 #line 6968 "src/parser_proc.c" /* glr.c:846 */
6970 case 174: /* typedef_anon_decl */
6971 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
6972 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
6973 #line 6974 "src/parser_proc.c" /* glr.c:846 */
6976 case 175: /* qualified_decl_type */
6977 #line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
6978 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
6979 #line 6980 "src/parser_proc.c" /* glr.c:846 */
6982 case 177: /* decl_type */
6983 #line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
6984 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
6985 #line 6986 "src/parser_proc.c" /* glr.c:846 */
6988 case 178: /* decl_type_complex */
6989 #line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
6990 {psi_decl_type_free(&(*(struct psi_decl_type
**)(&(*yyvaluep
))));}
6991 #line 6992 "src/parser_proc.c" /* glr.c:846 */
6994 case 179: /* decl_type_simple */
6995 #line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
6996 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
6997 #line 6998 "src/parser_proc.c" /* glr.c:846 */
7000 case 180: /* decl_real_type */
7001 #line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
7002 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7003 #line 7004 "src/parser_proc.c" /* glr.c:846 */
7006 case 181: /* int_signed */
7007 #line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
7009 #line 7010 "src/parser_proc.c" /* glr.c:846 */
7012 case 182: /* int_width */
7013 #line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
7014 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7015 #line 7016 "src/parser_proc.c" /* glr.c:846 */
7018 case 183: /* decl_int_type */
7019 #line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
7020 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7021 #line 7022 "src/parser_proc.c" /* glr.c:846 */
7024 case 184: /* int_signed_types */
7025 #line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
7026 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7027 #line 7028 "src/parser_proc.c" /* glr.c:846 */
7030 case 185: /* signed_short_types */
7031 #line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
7033 #line 7034 "src/parser_proc.c" /* glr.c:846 */
7036 case 186: /* signed_long_types */
7037 #line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
7039 #line 7040 "src/parser_proc.c" /* glr.c:846 */
7042 case 187: /* int_width_types */
7043 #line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
7044 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7045 #line 7046 "src/parser_proc.c" /* glr.c:846 */
7048 case 188: /* decl_stmt */
7049 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7050 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7051 #line 7052 "src/parser_proc.c" /* glr.c:846 */
7054 case 189: /* decl_asm */
7055 #line 344 "src/parser_proc_grammar.y" /* glr.c:846 */
7056 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7057 #line 7058 "src/parser_proc.c" /* glr.c:846 */
7060 case 190: /* quoted_strings */
7061 #line 344 "src/parser_proc_grammar.y" /* glr.c:846 */
7062 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7063 #line 7064 "src/parser_proc.c" /* glr.c:846 */
7066 case 191: /* decl_extvar_stmt */
7067 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7068 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7069 #line 7070 "src/parser_proc.c" /* glr.c:846 */
7072 case 192: /* decl_extvar_list */
7073 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7074 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7075 #line 7076 "src/parser_proc.c" /* glr.c:846 */
7078 case 193: /* decl_vars */
7079 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7080 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7081 #line 7082 "src/parser_proc.c" /* glr.c:846 */
7084 case 194: /* ignored_decl */
7085 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7086 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7087 #line 7088 "src/parser_proc.c" /* glr.c:846 */
7090 case 198: /* decl */
7091 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7092 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7093 #line 7094 "src/parser_proc.c" /* glr.c:846 */
7096 case 199: /* decl_body */
7097 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7098 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7099 #line 7100 "src/parser_proc.c" /* glr.c:846 */
7102 case 200: /* decl_func_body */
7103 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7104 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7105 #line 7106 "src/parser_proc.c" /* glr.c:846 */
7108 case 201: /* decl_functor_body */
7109 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7110 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7111 #line 7112 "src/parser_proc.c" /* glr.c:846 */
7114 case 202: /* decl_anon_functor_body */
7115 #line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
7116 {psi_decl_free(&(*(struct psi_decl
**)(&(*yyvaluep
))));}
7117 #line 7118 "src/parser_proc.c" /* glr.c:846 */
7120 case 203: /* decl_functor */
7121 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7122 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7123 #line 7124 "src/parser_proc.c" /* glr.c:846 */
7126 case 204: /* decl_anon_functor */
7127 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7128 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7129 #line 7130 "src/parser_proc.c" /* glr.c:846 */
7132 case 205: /* decl_func */
7133 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7134 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7135 #line 7136 "src/parser_proc.c" /* glr.c:846 */
7138 case 206: /* decl_args */
7139 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7140 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7141 #line 7142 "src/parser_proc.c" /* glr.c:846 */
7144 case 207: /* decl_arg_list */
7145 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7146 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7147 #line 7148 "src/parser_proc.c" /* glr.c:846 */
7150 case 208: /* decl_anon_arg */
7151 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7152 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7153 #line 7154 "src/parser_proc.c" /* glr.c:846 */
7156 case 209: /* decl_arg */
7157 #line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
7158 {psi_decl_arg_free(&(*(struct psi_decl_arg
**)(&(*yyvaluep
))));}
7159 #line 7160 "src/parser_proc.c" /* glr.c:846 */
7162 case 210: /* decl_var */
7163 #line 353 "src/parser_proc_grammar.y" /* glr.c:846 */
7164 {psi_decl_var_free(&(*(struct psi_decl_var
**)(&(*yyvaluep
))));}
7165 #line 7166 "src/parser_proc.c" /* glr.c:846 */
7168 case 211: /* decl_union */
7169 #line 357 "src/parser_proc_grammar.y" /* glr.c:846 */
7170 {psi_decl_union_free(&(*(struct psi_decl_union
**)(&(*yyvaluep
))));}
7171 #line 7172 "src/parser_proc.c" /* glr.c:846 */
7174 case 212: /* decl_struct */
7175 #line 355 "src/parser_proc_grammar.y" /* glr.c:846 */
7176 {psi_decl_struct_free(&(*(struct psi_decl_struct
**)(&(*yyvaluep
))));}
7177 #line 7178 "src/parser_proc.c" /* glr.c:846 */
7180 case 213: /* decl_struct_args */
7181 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7182 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7183 #line 7184 "src/parser_proc.c" /* glr.c:846 */
7186 case 214: /* struct_args_block */
7187 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7188 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7189 #line 7190 "src/parser_proc.c" /* glr.c:846 */
7192 case 215: /* struct_args */
7193 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7194 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7195 #line 7196 "src/parser_proc.c" /* glr.c:846 */
7198 case 216: /* struct_arg_var_list */
7199 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7200 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7201 #line 7202 "src/parser_proc.c" /* glr.c:846 */
7204 case 217: /* decl_vars_with_layout */
7205 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7206 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7207 #line 7208 "src/parser_proc.c" /* glr.c:846 */
7210 case 218: /* decl_enum */
7211 #line 359 "src/parser_proc_grammar.y" /* glr.c:846 */
7212 {psi_decl_enum_free(&(*(struct psi_decl_enum
**)(&(*yyvaluep
))));}
7213 #line 7214 "src/parser_proc.c" /* glr.c:846 */
7216 case 219: /* decl_enum_items */
7217 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7218 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7219 #line 7220 "src/parser_proc.c" /* glr.c:846 */
7222 case 220: /* decl_enum_item */
7223 #line 361 "src/parser_proc_grammar.y" /* glr.c:846 */
7224 {psi_decl_enum_item_free(&(*(struct psi_decl_enum_item
**)(&(*yyvaluep
))));}
7225 #line 7226 "src/parser_proc.c" /* glr.c:846 */
7228 case 221: /* num_exp */
7229 #line 419 "src/parser_proc_grammar.y" /* glr.c:846 */
7230 {psi_num_exp_free(&(*(struct psi_num_exp
**)(&(*yyvaluep
))));}
7231 #line 7232 "src/parser_proc.c" /* glr.c:846 */
7234 case 222: /* number */
7235 #line 421 "src/parser_proc_grammar.y" /* glr.c:846 */
7236 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7237 #line 7238 "src/parser_proc.c" /* glr.c:846 */
7240 case 223: /* sizeof */
7241 #line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
7242 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7243 #line 7244 "src/parser_proc.c" /* glr.c:846 */
7246 case 224: /* sizeof_body */
7247 #line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
7248 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7249 #line 7250 "src/parser_proc.c" /* glr.c:846 */
7252 case 225: /* sizeof_body_notypes */
7253 #line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
7254 {psi_number_free(&(*(struct psi_number
**)(&(*yyvaluep
))));}
7255 #line 7256 "src/parser_proc.c" /* glr.c:846 */
7258 case 226: /* enum_name */
7259 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7260 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7261 #line 7262 "src/parser_proc.c" /* glr.c:846 */
7264 case 227: /* union_name */
7265 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7266 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7267 #line 7268 "src/parser_proc.c" /* glr.c:846 */
7270 case 228: /* struct_name */
7271 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7272 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7273 #line 7274 "src/parser_proc.c" /* glr.c:846 */
7276 case 229: /* optional_name */
7277 #line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
7278 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7279 #line 7280 "src/parser_proc.c" /* glr.c:846 */
7282 case 231: /* decl_layout */
7283 #line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
7284 {psi_layout_free(&(*(struct psi_layout
**)(&(*yyvaluep
))));}
7285 #line 7286 "src/parser_proc.c" /* glr.c:846 */
7288 case 232: /* align_and_size */
7289 #line 366 "src/parser_proc_grammar.y" /* glr.c:846 */
7291 #line 7292 "src/parser_proc.c" /* glr.c:846 */
7294 case 233: /* array_size */
7295 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7297 #line 7298 "src/parser_proc.c" /* glr.c:846 */
7300 case 235: /* indirection */
7301 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7303 #line 7304 "src/parser_proc.c" /* glr.c:846 */
7306 case 236: /* pointers */
7307 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7309 #line 7310 "src/parser_proc.c" /* glr.c:846 */
7312 case 237: /* asterisks */
7313 #line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
7315 #line 7316 "src/parser_proc.c" /* glr.c:846 */
7318 case 240: /* impl */
7319 #line 374 "src/parser_proc_grammar.y" /* glr.c:846 */
7320 {psi_impl_free(&(*(struct psi_impl
**)(&(*yyvaluep
))));}
7321 #line 7322 "src/parser_proc.c" /* glr.c:846 */
7324 case 241: /* impl_func */
7325 #line 376 "src/parser_proc_grammar.y" /* glr.c:846 */
7326 {psi_impl_func_free(&(*(struct psi_impl_func
**)(&(*yyvaluep
))));}
7327 #line 7328 "src/parser_proc.c" /* glr.c:846 */
7330 case 242: /* impl_args */
7331 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7332 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7333 #line 7334 "src/parser_proc.c" /* glr.c:846 */
7336 case 243: /* impl_arg */
7337 #line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
7338 {psi_impl_arg_free(&(*(struct psi_impl_arg
**)(&(*yyvaluep
))));}
7339 #line 7340 "src/parser_proc.c" /* glr.c:846 */
7342 case 244: /* impl_var */
7343 #line 382 "src/parser_proc_grammar.y" /* glr.c:846 */
7344 {psi_impl_var_free(&(*(struct psi_impl_var
**)(&(*yyvaluep
))));}
7345 #line 7346 "src/parser_proc.c" /* glr.c:846 */
7348 case 245: /* impl_type */
7349 #line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
7350 {psi_impl_type_free(&(*(struct psi_impl_type
**)(&(*yyvaluep
))));}
7351 #line 7352 "src/parser_proc.c" /* glr.c:846 */
7354 case 246: /* impl_type_restricted */
7355 #line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
7356 {psi_impl_type_free(&(*(struct psi_impl_type
**)(&(*yyvaluep
))));}
7357 #line 7358 "src/parser_proc.c" /* glr.c:846 */
7360 case 247: /* impl_type_token */
7361 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7362 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7363 #line 7364 "src/parser_proc.c" /* glr.c:846 */
7366 case 248: /* impl_type_restricted_token */
7367 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7368 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7369 #line 7370 "src/parser_proc.c" /* glr.c:846 */
7372 case 249: /* impl_type_extended_token */
7373 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7374 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7375 #line 7376 "src/parser_proc.c" /* glr.c:846 */
7378 case 250: /* impl_stmts */
7379 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7380 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7381 #line 7382 "src/parser_proc.c" /* glr.c:846 */
7384 case 251: /* impl_stmt */
7385 #line 412 "src/parser_proc_grammar.y" /* glr.c:846 */
7386 {psi_impl_stmt_free(&(*(struct psi_token
***)(&(*yyvaluep
))));}
7387 #line 7388 "src/parser_proc.c" /* glr.c:846 */
7390 case 252: /* let_stmt */
7391 #line 385 "src/parser_proc_grammar.y" /* glr.c:846 */
7392 {psi_let_stmt_free(&(*(struct psi_let_stmt
**)(&(*yyvaluep
))));}
7393 #line 7394 "src/parser_proc.c" /* glr.c:846 */
7396 case 253: /* let_exp */
7397 #line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
7398 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7399 #line 7400 "src/parser_proc.c" /* glr.c:846 */
7402 case 254: /* let_exp_byref */
7403 #line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
7404 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7405 #line 7406 "src/parser_proc.c" /* glr.c:846 */
7408 case 255: /* let_exp_assign */
7409 #line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
7410 {psi_let_exp_free(&(*(struct psi_let_exp
**)(&(*yyvaluep
))));}
7411 #line 7412 "src/parser_proc.c" /* glr.c:846 */
7414 case 256: /* let_calloc */
7415 #line 389 "src/parser_proc_grammar.y" /* glr.c:846 */
7416 {psi_let_calloc_free(&(*(struct psi_let_calloc
**)(&(*yyvaluep
))));}
7417 #line 7418 "src/parser_proc.c" /* glr.c:846 */
7420 case 257: /* let_callback */
7421 #line 391 "src/parser_proc_grammar.y" /* glr.c:846 */
7422 {psi_let_callback_free(&(*(struct psi_let_callback
**)(&(*yyvaluep
))));}
7423 #line 7424 "src/parser_proc.c" /* glr.c:846 */
7426 case 258: /* let_func */
7427 #line 393 "src/parser_proc_grammar.y" /* glr.c:846 */
7428 {psi_let_func_free(&(*(struct psi_let_func
**)(&(*yyvaluep
))));}
7429 #line 7430 "src/parser_proc.c" /* glr.c:846 */
7432 case 259: /* let_func_token */
7433 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7434 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7435 #line 7436 "src/parser_proc.c" /* glr.c:846 */
7438 case 260: /* let_func_exps */
7439 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7440 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7441 #line 7442 "src/parser_proc.c" /* glr.c:846 */
7444 case 261: /* let_exps */
7445 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7446 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7447 #line 7448 "src/parser_proc.c" /* glr.c:846 */
7450 case 262: /* callback_rval */
7451 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7452 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7453 #line 7454 "src/parser_proc.c" /* glr.c:846 */
7456 case 263: /* callback_arg_list */
7457 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7458 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7459 #line 7460 "src/parser_proc.c" /* glr.c:846 */
7462 case 264: /* callback_args */
7463 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7464 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7465 #line 7466 "src/parser_proc.c" /* glr.c:846 */
7468 case 265: /* return_stmt */
7469 #line 403 "src/parser_proc_grammar.y" /* glr.c:846 */
7470 {psi_return_stmt_free(&(*(struct psi_return_stmt
**)(&(*yyvaluep
))));}
7471 #line 7472 "src/parser_proc.c" /* glr.c:846 */
7474 case 266: /* return_exp */
7475 #line 405 "src/parser_proc_grammar.y" /* glr.c:846 */
7476 {psi_return_exp_free(&(*(struct psi_return_exp
**)(&(*yyvaluep
))));}
7477 #line 7478 "src/parser_proc.c" /* glr.c:846 */
7480 case 267: /* call_decl_vars */
7481 #line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
7482 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7483 #line 7484 "src/parser_proc.c" /* glr.c:846 */
7486 case 268: /* set_stmt */
7487 #line 395 "src/parser_proc_grammar.y" /* glr.c:846 */
7488 {psi_set_stmt_free(&(*(struct psi_set_stmt
**)(&(*yyvaluep
))));}
7489 #line 7490 "src/parser_proc.c" /* glr.c:846 */
7492 case 269: /* set_exp */
7493 #line 397 "src/parser_proc_grammar.y" /* glr.c:846 */
7494 {psi_set_exp_free(&(*(struct psi_set_exp
**)(&(*yyvaluep
))));}
7495 #line 7496 "src/parser_proc.c" /* glr.c:846 */
7498 case 270: /* set_func */
7499 #line 399 "src/parser_proc_grammar.y" /* glr.c:846 */
7500 {psi_set_func_free(&(*(struct psi_set_func
**)(&(*yyvaluep
))));}
7501 #line 7502 "src/parser_proc.c" /* glr.c:846 */
7504 case 271: /* set_func_token */
7505 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7506 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7507 #line 7508 "src/parser_proc.c" /* glr.c:846 */
7510 case 272: /* set_func_exps */
7511 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7512 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7513 #line 7514 "src/parser_proc.c" /* glr.c:846 */
7516 case 273: /* set_exps */
7517 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7518 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7519 #line 7520 "src/parser_proc.c" /* glr.c:846 */
7522 case 274: /* assert_stmt */
7523 #line 401 "src/parser_proc_grammar.y" /* glr.c:846 */
7524 {psi_assert_stmt_free(&(*(struct psi_assert_stmt
**)(&(*yyvaluep
))));}
7525 #line 7526 "src/parser_proc.c" /* glr.c:846 */
7528 case 275: /* assert_stmt_token */
7529 #line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
7530 {psi_token_free(&(*(struct psi_token
**)(&(*yyvaluep
))));}
7531 #line 7532 "src/parser_proc.c" /* glr.c:846 */
7534 case 276: /* free_stmt */
7535 #line 407 "src/parser_proc_grammar.y" /* glr.c:846 */
7536 {psi_free_stmt_free(&(*(struct psi_free_stmt
**)(&(*yyvaluep
))));}
7537 #line 7538 "src/parser_proc.c" /* glr.c:846 */
7540 case 277: /* free_exps */
7541 #line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
7542 {psi_plist_free((*(struct psi_plist
**)(&(*yyvaluep
))));}
7543 #line 7544 "src/parser_proc.c" /* glr.c:846 */
7546 case 278: /* free_exp */
7547 #line 409 "src/parser_proc_grammar.y" /* glr.c:846 */
7548 {psi_free_exp_free(&(*(struct psi_free_exp
**)(&(*yyvaluep
))));}
7549 #line 7550 "src/parser_proc.c" /* glr.c:846 */
7552 case 279: /* reference */
7553 #line 426 "src/parser_proc_grammar.y" /* glr.c:846 */
7555 #line 7556 "src/parser_proc.c" /* glr.c:846 */
7562 YY_IGNORE_MAYBE_UNINITIALIZED_END
7565 /** Number of symbols composing the right hand side of rule #RULE. */
7567 yyrhsLength (yyRuleNum yyrule
)
7569 return yyr2
[yyrule
];
7573 yydestroyGLRState (char const *yymsg
, yyGLRState
*yys
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
7575 if (yys
->yyresolved
)
7576 yydestruct (yymsg
, yystos
[yys
->yylrState
],
7577 &yys
->yysemantics
.yysval
, P
, tokens
, index
);
7583 if (yys
->yysemantics
.yyfirstVal
)
7584 YYFPRINTF (stderr
, "%s unresolved", yymsg
);
7586 YYFPRINTF (stderr
, "%s incomplete", yymsg
);
7587 YY_SYMBOL_PRINT ("", yystos
[yys
->yylrState
], YY_NULLPTR
, &yys
->yyloc
);
7591 if (yys
->yysemantics
.yyfirstVal
)
7593 yySemanticOption
*yyoption
= yys
->yysemantics
.yyfirstVal
;
7596 for (yyrh
= yyoption
->yystate
, yyn
= yyrhsLength (yyoption
->yyrule
);
7598 yyrh
= yyrh
->yypred
, yyn
-= 1)
7599 yydestroyGLRState (yymsg
, yyrh
, P
, tokens
, index
);
7604 /** Left-hand-side symbol for rule #YYRULE. */
7605 static inline yySymbol
7606 yylhsNonterm (yyRuleNum yyrule
)
7608 return yyr1
[yyrule
];
7611 #define yypact_value_is_default(Yystate) \
7612 (!!((Yystate) == (-717)))
7614 /** True iff LR state YYSTATE has only a default reduction (regardless
7616 static inline yybool
7617 yyisDefaultedState (yyStateNum yystate
)
7619 return yypact_value_is_default (yypact
[yystate
]);
7622 /** The default reduction for YYSTATE, assuming it has one. */
7623 static inline yyRuleNum
7624 yydefaultAction (yyStateNum yystate
)
7626 return yydefact
[yystate
];
7629 #define yytable_value_is_error(Yytable_value) \
7632 /** Set *YYACTION to the action to take in YYSTATE on seeing YYTOKEN.
7634 * R < 0: Reduce on rule -R.
7636 * R > 0: Shift to state R.
7637 * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list
7638 * of conflicting reductions.
7641 yygetLRActions (yyStateNum yystate
, int yytoken
,
7642 int* yyaction
, const short int** yyconflicts
)
7644 int yyindex
= yypact
[yystate
] + yytoken
;
7645 if (yypact_value_is_default (yypact
[yystate
])
7646 || yyindex
< 0 || YYLAST
< yyindex
|| yycheck
[yyindex
] != yytoken
)
7648 *yyaction
= -yydefact
[yystate
];
7649 *yyconflicts
= yyconfl
;
7651 else if (! yytable_value_is_error (yytable
[yyindex
]))
7653 *yyaction
= yytable
[yyindex
];
7654 *yyconflicts
= yyconfl
+ yyconflp
[yyindex
];
7659 *yyconflicts
= yyconfl
+ yyconflp
[yyindex
];
7663 /** Compute post-reduction state.
7664 * \param yystate the current state
7665 * \param yysym the nonterminal to push on the stack
7667 static inline yyStateNum
7668 yyLRgotoState (yyStateNum yystate
, yySymbol yysym
)
7670 int yyr
= yypgoto
[yysym
- YYNTOKENS
] + yystate
;
7671 if (0 <= yyr
&& yyr
<= YYLAST
&& yycheck
[yyr
] == yystate
)
7672 return yytable
[yyr
];
7674 return yydefgoto
[yysym
- YYNTOKENS
];
7677 static inline yybool
7678 yyisShiftAction (int yyaction
)
7680 return 0 < yyaction
;
7683 static inline yybool
7684 yyisErrorAction (int yyaction
)
7686 return yyaction
== 0;
7691 /** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state
7692 * if YYISSTATE, and otherwise a semantic option. Callers should call
7693 * YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient
7696 static inline yyGLRStackItem
*
7697 yynewGLRStackItem (yyGLRStack
* yystackp
, yybool yyisState
)
7699 yyGLRStackItem
* yynewItem
= yystackp
->yynextFree
;
7700 yystackp
->yyspaceLeft
-= 1;
7701 yystackp
->yynextFree
+= 1;
7702 yynewItem
->yystate
.yyisState
= yyisState
;
7706 /** Add a new semantic action that will execute the action for rule
7707 * YYRULE on the semantic values in YYRHS to the list of
7708 * alternative actions for YYSTATE. Assumes that YYRHS comes from
7709 * stack #YYK of *YYSTACKP. */
7711 yyaddDeferredAction (yyGLRStack
* yystackp
, size_t yyk
, yyGLRState
* yystate
,
7712 yyGLRState
* yyrhs
, yyRuleNum yyrule
)
7714 yySemanticOption
* yynewOption
=
7715 &yynewGLRStackItem (yystackp
, yyfalse
)->yyoption
;
7716 YYASSERT (!yynewOption
->yyisState
);
7717 yynewOption
->yystate
= yyrhs
;
7718 yynewOption
->yyrule
= yyrule
;
7719 if (yystackp
->yytops
.yylookaheadNeeds
[yyk
])
7721 yynewOption
->yyrawchar
= yychar
;
7722 yynewOption
->yyval
= yylval
;
7725 yynewOption
->yyrawchar
= YYEMPTY
;
7726 yynewOption
->yynext
= yystate
->yysemantics
.yyfirstVal
;
7727 yystate
->yysemantics
.yyfirstVal
= yynewOption
;
7729 YY_RESERVE_GLRSTACK (yystackp
);
7734 /** Initialize YYSET to a singleton set containing an empty stack. */
7736 yyinitStateSet (yyGLRStateSet
* yyset
)
7739 yyset
->yycapacity
= 16;
7740 yyset
->yystates
= (yyGLRState
**) YYMALLOC (16 * sizeof yyset
->yystates
[0]);
7741 if (! yyset
->yystates
)
7743 yyset
->yystates
[0] = YY_NULLPTR
;
7744 yyset
->yylookaheadNeeds
=
7745 (yybool
*) YYMALLOC (16 * sizeof yyset
->yylookaheadNeeds
[0]);
7746 if (! yyset
->yylookaheadNeeds
)
7748 YYFREE (yyset
->yystates
);
7754 static void yyfreeStateSet (yyGLRStateSet
* yyset
)
7756 YYFREE (yyset
->yystates
);
7757 YYFREE (yyset
->yylookaheadNeeds
);
7760 /** Initialize *YYSTACKP to a single empty stack, with total maximum
7761 * capacity for all stacks of YYSIZE. */
7763 yyinitGLRStack (yyGLRStack
* yystackp
, size_t yysize
)
7765 yystackp
->yyerrState
= 0;
7767 yystackp
->yyspaceLeft
= yysize
;
7769 (yyGLRStackItem
*) YYMALLOC (yysize
* sizeof yystackp
->yynextFree
[0]);
7770 if (!yystackp
->yyitems
)
7772 yystackp
->yynextFree
= yystackp
->yyitems
;
7773 yystackp
->yysplitPoint
= YY_NULLPTR
;
7774 yystackp
->yylastDeleted
= YY_NULLPTR
;
7775 return yyinitStateSet (&yystackp
->yytops
);
7779 #if YYSTACKEXPANDABLE
7780 # define YYRELOC(YYFROMITEMS,YYTOITEMS,YYX,YYTYPE) \
7781 &((YYTOITEMS) - ((YYFROMITEMS) - (yyGLRStackItem*) (YYX)))->YYTYPE
7783 /** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the
7784 stack from outside should be considered invalid after this call.
7785 We always expand when there are 1 or fewer items left AFTER an
7786 allocation, so that we can avoid having external pointers exist
7787 across an allocation. */
7789 yyexpandGLRStack (yyGLRStack
* yystackp
)
7791 yyGLRStackItem
* yynewItems
;
7792 yyGLRStackItem
* yyp0
, *yyp1
;
7795 size_t yysize
= yystackp
->yynextFree
- yystackp
->yyitems
;
7796 if (YYMAXDEPTH
- YYHEADROOM
< yysize
)
7797 yyMemoryExhausted (yystackp
);
7798 yynewSize
= 2*yysize
;
7799 if (YYMAXDEPTH
< yynewSize
)
7800 yynewSize
= YYMAXDEPTH
;
7801 yynewItems
= (yyGLRStackItem
*) YYMALLOC (yynewSize
* sizeof yynewItems
[0]);
7803 yyMemoryExhausted (yystackp
);
7804 for (yyp0
= yystackp
->yyitems
, yyp1
= yynewItems
, yyn
= yysize
;
7806 yyn
-= 1, yyp0
+= 1, yyp1
+= 1)
7809 if (*(yybool
*) yyp0
)
7811 yyGLRState
* yys0
= &yyp0
->yystate
;
7812 yyGLRState
* yys1
= &yyp1
->yystate
;
7813 if (yys0
->yypred
!= YY_NULLPTR
)
7815 YYRELOC (yyp0
, yyp1
, yys0
->yypred
, yystate
);
7816 if (! yys0
->yyresolved
&& yys0
->yysemantics
.yyfirstVal
!= YY_NULLPTR
)
7817 yys1
->yysemantics
.yyfirstVal
=
7818 YYRELOC (yyp0
, yyp1
, yys0
->yysemantics
.yyfirstVal
, yyoption
);
7822 yySemanticOption
* yyv0
= &yyp0
->yyoption
;
7823 yySemanticOption
* yyv1
= &yyp1
->yyoption
;
7824 if (yyv0
->yystate
!= YY_NULLPTR
)
7825 yyv1
->yystate
= YYRELOC (yyp0
, yyp1
, yyv0
->yystate
, yystate
);
7826 if (yyv0
->yynext
!= YY_NULLPTR
)
7827 yyv1
->yynext
= YYRELOC (yyp0
, yyp1
, yyv0
->yynext
, yyoption
);
7830 if (yystackp
->yysplitPoint
!= YY_NULLPTR
)
7831 yystackp
->yysplitPoint
= YYRELOC (yystackp
->yyitems
, yynewItems
,
7832 yystackp
->yysplitPoint
, yystate
);
7834 for (yyn
= 0; yyn
< yystackp
->yytops
.yysize
; yyn
+= 1)
7835 if (yystackp
->yytops
.yystates
[yyn
] != YY_NULLPTR
)
7836 yystackp
->yytops
.yystates
[yyn
] =
7837 YYRELOC (yystackp
->yyitems
, yynewItems
,
7838 yystackp
->yytops
.yystates
[yyn
], yystate
);
7839 YYFREE (yystackp
->yyitems
);
7840 yystackp
->yyitems
= yynewItems
;
7841 yystackp
->yynextFree
= yynewItems
+ yysize
;
7842 yystackp
->yyspaceLeft
= yynewSize
- yysize
;
7847 yyfreeGLRStack (yyGLRStack
* yystackp
)
7849 YYFREE (yystackp
->yyitems
);
7850 yyfreeStateSet (&yystackp
->yytops
);
7853 /** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the
7854 * splitpoint of *YYSTACKP, if needed, so that it is at least as deep as
7857 yyupdateSplit (yyGLRStack
* yystackp
, yyGLRState
* yys
)
7859 if (yystackp
->yysplitPoint
!= YY_NULLPTR
&& yystackp
->yysplitPoint
> yys
)
7860 yystackp
->yysplitPoint
= yys
;
7863 /** Invalidate stack #YYK in *YYSTACKP. */
7865 yymarkStackDeleted (yyGLRStack
* yystackp
, size_t yyk
)
7867 if (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
7868 yystackp
->yylastDeleted
= yystackp
->yytops
.yystates
[yyk
];
7869 yystackp
->yytops
.yystates
[yyk
] = YY_NULLPTR
;
7872 /** Undelete the last stack in *YYSTACKP that was marked as deleted. Can
7873 only be done once after a deletion, and only when all other stacks have
7876 yyundeleteLastStack (yyGLRStack
* yystackp
)
7878 if (yystackp
->yylastDeleted
== YY_NULLPTR
|| yystackp
->yytops
.yysize
!= 0)
7880 yystackp
->yytops
.yystates
[0] = yystackp
->yylastDeleted
;
7881 yystackp
->yytops
.yysize
= 1;
7882 YYDPRINTF ((stderr
, "Restoring last deleted stack as stack #0.\n"));
7883 yystackp
->yylastDeleted
= YY_NULLPTR
;
7887 yyremoveDeletes (yyGLRStack
* yystackp
)
7891 while (yyj
< yystackp
->yytops
.yysize
)
7893 if (yystackp
->yytops
.yystates
[yyi
] == YY_NULLPTR
)
7897 YYDPRINTF ((stderr
, "Removing dead stacks.\n"));
7899 yystackp
->yytops
.yysize
-= 1;
7903 yystackp
->yytops
.yystates
[yyj
] = yystackp
->yytops
.yystates
[yyi
];
7904 /* In the current implementation, it's unnecessary to copy
7905 yystackp->yytops.yylookaheadNeeds[yyi] since, after
7906 yyremoveDeletes returns, the parser immediately either enters
7907 deterministic operation or shifts a token. However, it doesn't
7908 hurt, and the code might evolve to need it. */
7909 yystackp
->yytops
.yylookaheadNeeds
[yyj
] =
7910 yystackp
->yytops
.yylookaheadNeeds
[yyi
];
7913 YYDPRINTF ((stderr
, "Rename stack %lu -> %lu.\n",
7914 (unsigned long int) yyi
, (unsigned long int) yyj
));
7922 /** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR
7923 * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic
7924 * value *YYVALP and source location *YYLOCP. */
7926 yyglrShift (yyGLRStack
* yystackp
, size_t yyk
, yyStateNum yylrState
,
7930 yyGLRState
* yynewState
= &yynewGLRStackItem (yystackp
, yytrue
)->yystate
;
7932 yynewState
->yylrState
= yylrState
;
7933 yynewState
->yyposn
= yyposn
;
7934 yynewState
->yyresolved
= yytrue
;
7935 yynewState
->yypred
= yystackp
->yytops
.yystates
[yyk
];
7936 yynewState
->yysemantics
.yysval
= *yyvalp
;
7937 yystackp
->yytops
.yystates
[yyk
] = yynewState
;
7939 YY_RESERVE_GLRSTACK (yystackp
);
7942 /** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR
7943 * state YYLRSTATE, at input position YYPOSN, with the (unresolved)
7944 * semantic value of YYRHS under the action for YYRULE. */
7946 yyglrShiftDefer (yyGLRStack
* yystackp
, size_t yyk
, yyStateNum yylrState
,
7947 size_t yyposn
, yyGLRState
* yyrhs
, yyRuleNum yyrule
)
7949 yyGLRState
* yynewState
= &yynewGLRStackItem (yystackp
, yytrue
)->yystate
;
7950 YYASSERT (yynewState
->yyisState
);
7952 yynewState
->yylrState
= yylrState
;
7953 yynewState
->yyposn
= yyposn
;
7954 yynewState
->yyresolved
= yyfalse
;
7955 yynewState
->yypred
= yystackp
->yytops
.yystates
[yyk
];
7956 yynewState
->yysemantics
.yyfirstVal
= YY_NULLPTR
;
7957 yystackp
->yytops
.yystates
[yyk
] = yynewState
;
7959 /* Invokes YY_RESERVE_GLRSTACK. */
7960 yyaddDeferredAction (yystackp
, yyk
, yynewState
, yyrhs
, yyrule
);
7964 # define YY_REDUCE_PRINT(Args)
7966 # define YY_REDUCE_PRINT(Args) \
7969 yy_reduce_print Args; \
7972 /*----------------------------------------------------------------------.
7973 | Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. |
7974 `----------------------------------------------------------------------*/
7977 yy_reduce_print (int yynormal
, yyGLRStackItem
* yyvsp
, size_t yyk
,
7978 yyRuleNum yyrule
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
7980 int yynrhs
= yyrhsLength (yyrule
);
7982 YYFPRINTF (stderr
, "Reducing stack %lu by rule %d (line %lu):\n",
7983 (unsigned long int) yyk
, yyrule
- 1,
7984 (unsigned long int) yyrline
[yyrule
]);
7986 yyfillin (yyvsp
, 1, -yynrhs
);
7987 /* The symbols being reduced. */
7988 for (yyi
= 0; yyi
< yynrhs
; yyi
++)
7990 YYFPRINTF (stderr
, " $%d = ", yyi
+ 1);
7991 yy_symbol_print (stderr
,
7992 yystos
[yyvsp
[yyi
- yynrhs
+ 1].yystate
.yylrState
],
7993 &yyvsp
[yyi
- yynrhs
+ 1].yystate
.yysemantics
.yysval
7994 , P
, tokens
, index
);
7995 if (!yyvsp
[yyi
- yynrhs
+ 1].yystate
.yyresolved
)
7996 YYFPRINTF (stderr
, " (unresolved)");
7997 YYFPRINTF (stderr
, "\n");
8002 /** Pop the symbols consumed by reduction #YYRULE from the top of stack
8003 * #YYK of *YYSTACKP, and perform the appropriate semantic action on their
8004 * semantic values. Assumes that all ambiguities in semantic values
8005 * have been previously resolved. Set *YYVALP to the resulting value,
8006 * and *YYLOCP to the computed location (if any). Return value is as
8007 * for userAction. */
8008 static inline YYRESULTTAG
8009 yydoAction (yyGLRStack
* yystackp
, size_t yyk
, yyRuleNum yyrule
,
8010 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8012 int yynrhs
= yyrhsLength (yyrule
);
8014 if (yystackp
->yysplitPoint
== YY_NULLPTR
)
8016 /* Standard special case: single stack. */
8017 yyGLRStackItem
* yyrhs
= (yyGLRStackItem
*) yystackp
->yytops
.yystates
[yyk
];
8018 YYASSERT (yyk
== 0);
8019 yystackp
->yynextFree
-= yynrhs
;
8020 yystackp
->yyspaceLeft
+= yynrhs
;
8021 yystackp
->yytops
.yystates
[0] = & yystackp
->yynextFree
[-1].yystate
;
8022 YY_REDUCE_PRINT ((1, yyrhs
, yyk
, yyrule
, P
, tokens
, index
));
8023 return yyuserAction (yyrule
, yynrhs
, yyrhs
, yystackp
,
8024 yyvalp
, P
, tokens
, index
);
8030 yyGLRStackItem yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
+ 1];
8031 yys
= yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
].yystate
.yypred
8032 = yystackp
->yytops
.yystates
[yyk
];
8033 for (yyi
= 0; yyi
< yynrhs
; yyi
+= 1)
8038 yyupdateSplit (yystackp
, yys
);
8039 yystackp
->yytops
.yystates
[yyk
] = yys
;
8040 YY_REDUCE_PRINT ((0, yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1, yyk
, yyrule
, P
, tokens
, index
));
8041 return yyuserAction (yyrule
, yynrhs
, yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1,
8042 yystackp
, yyvalp
, P
, tokens
, index
);
8046 /** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE,
8047 * and push back on the resulting nonterminal symbol. Perform the
8048 * semantic action associated with YYRULE and store its value with the
8049 * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently
8050 * unambiguous. Otherwise, store the deferred semantic action with
8051 * the new state. If the new state would have an identical input
8052 * position, LR state, and predecessor to an existing state on the stack,
8053 * it is identified with that existing state, eliminating stack #YYK from
8054 * *YYSTACKP. In this case, the semantic value is
8055 * added to the options for the existing state's semantic value.
8057 static inline YYRESULTTAG
8058 yyglrReduce (yyGLRStack
* yystackp
, size_t yyk
, yyRuleNum yyrule
,
8059 yybool yyforceEval
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8061 size_t yyposn
= yystackp
->yytops
.yystates
[yyk
]->yyposn
;
8063 if (yyforceEval
|| yystackp
->yysplitPoint
== YY_NULLPTR
)
8067 YYRESULTTAG yyflag
= yydoAction (yystackp
, yyk
, yyrule
, &yysval
, P
, tokens
, index
);
8068 if (yyflag
== yyerr
&& yystackp
->yysplitPoint
!= YY_NULLPTR
)
8070 YYDPRINTF ((stderr
, "Parse on stack %lu rejected by rule #%d.\n",
8071 (unsigned long int) yyk
, yyrule
- 1));
8075 YY_SYMBOL_PRINT ("-> $$ =", yyr1
[yyrule
], &yysval
, &yyloc
);
8076 yyglrShift (yystackp
, yyk
,
8077 yyLRgotoState (yystackp
->yytops
.yystates
[yyk
]->yylrState
,
8078 yylhsNonterm (yyrule
)),
8085 yyGLRState
* yys
, *yys0
= yystackp
->yytops
.yystates
[yyk
];
8086 yyStateNum yynewLRState
;
8088 for (yys
= yystackp
->yytops
.yystates
[yyk
], yyn
= yyrhsLength (yyrule
);
8094 yyupdateSplit (yystackp
, yys
);
8095 yynewLRState
= yyLRgotoState (yys
->yylrState
, yylhsNonterm (yyrule
));
8097 "Reduced stack %lu by rule #%d; action deferred. "
8098 "Now in state %d.\n",
8099 (unsigned long int) yyk
, yyrule
- 1, yynewLRState
));
8100 for (yyi
= 0; yyi
< yystackp
->yytops
.yysize
; yyi
+= 1)
8101 if (yyi
!= yyk
&& yystackp
->yytops
.yystates
[yyi
] != YY_NULLPTR
)
8103 yyGLRState
*yysplit
= yystackp
->yysplitPoint
;
8104 yyGLRState
*yyp
= yystackp
->yytops
.yystates
[yyi
];
8105 while (yyp
!= yys
&& yyp
!= yysplit
&& yyp
->yyposn
>= yyposn
)
8107 if (yyp
->yylrState
== yynewLRState
&& yyp
->yypred
== yys
)
8109 yyaddDeferredAction (yystackp
, yyk
, yyp
, yys0
, yyrule
);
8110 yymarkStackDeleted (yystackp
, yyk
);
8111 YYDPRINTF ((stderr
, "Merging stack %lu into stack %lu.\n",
8112 (unsigned long int) yyk
,
8113 (unsigned long int) yyi
));
8119 yystackp
->yytops
.yystates
[yyk
] = yys
;
8120 yyglrShiftDefer (yystackp
, yyk
, yynewLRState
, yyposn
, yys0
, yyrule
);
8126 yysplitStack (yyGLRStack
* yystackp
, size_t yyk
)
8128 if (yystackp
->yysplitPoint
== YY_NULLPTR
)
8130 YYASSERT (yyk
== 0);
8131 yystackp
->yysplitPoint
= yystackp
->yytops
.yystates
[yyk
];
8133 if (yystackp
->yytops
.yysize
>= yystackp
->yytops
.yycapacity
)
8135 yyGLRState
** yynewStates
;
8136 yybool
* yynewLookaheadNeeds
;
8138 yynewStates
= YY_NULLPTR
;
8140 if (yystackp
->yytops
.yycapacity
8141 > (YYSIZEMAX
/ (2 * sizeof yynewStates
[0])))
8142 yyMemoryExhausted (yystackp
);
8143 yystackp
->yytops
.yycapacity
*= 2;
8146 (yyGLRState
**) YYREALLOC (yystackp
->yytops
.yystates
,
8147 (yystackp
->yytops
.yycapacity
8148 * sizeof yynewStates
[0]));
8149 if (yynewStates
== YY_NULLPTR
)
8150 yyMemoryExhausted (yystackp
);
8151 yystackp
->yytops
.yystates
= yynewStates
;
8153 yynewLookaheadNeeds
=
8154 (yybool
*) YYREALLOC (yystackp
->yytops
.yylookaheadNeeds
,
8155 (yystackp
->yytops
.yycapacity
8156 * sizeof yynewLookaheadNeeds
[0]));
8157 if (yynewLookaheadNeeds
== YY_NULLPTR
)
8158 yyMemoryExhausted (yystackp
);
8159 yystackp
->yytops
.yylookaheadNeeds
= yynewLookaheadNeeds
;
8161 yystackp
->yytops
.yystates
[yystackp
->yytops
.yysize
]
8162 = yystackp
->yytops
.yystates
[yyk
];
8163 yystackp
->yytops
.yylookaheadNeeds
[yystackp
->yytops
.yysize
]
8164 = yystackp
->yytops
.yylookaheadNeeds
[yyk
];
8165 yystackp
->yytops
.yysize
+= 1;
8166 return yystackp
->yytops
.yysize
-1;
8169 /** True iff YYY0 and YYY1 represent identical options at the top level.
8170 * That is, they represent the same rule applied to RHS symbols
8171 * that produce the same terminal symbols. */
8173 yyidenticalOptions (yySemanticOption
* yyy0
, yySemanticOption
* yyy1
)
8175 if (yyy0
->yyrule
== yyy1
->yyrule
)
8177 yyGLRState
*yys0
, *yys1
;
8179 for (yys0
= yyy0
->yystate
, yys1
= yyy1
->yystate
,
8180 yyn
= yyrhsLength (yyy0
->yyrule
);
8182 yys0
= yys0
->yypred
, yys1
= yys1
->yypred
, yyn
-= 1)
8183 if (yys0
->yyposn
!= yys1
->yyposn
)
8191 /** Assuming identicalOptions (YYY0,YYY1), destructively merge the
8192 * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */
8194 yymergeOptionSets (yySemanticOption
* yyy0
, yySemanticOption
* yyy1
)
8196 yyGLRState
*yys0
, *yys1
;
8198 for (yys0
= yyy0
->yystate
, yys1
= yyy1
->yystate
,
8199 yyn
= yyrhsLength (yyy0
->yyrule
);
8201 yys0
= yys0
->yypred
, yys1
= yys1
->yypred
, yyn
-= 1)
8205 else if (yys0
->yyresolved
)
8207 yys1
->yyresolved
= yytrue
;
8208 yys1
->yysemantics
.yysval
= yys0
->yysemantics
.yysval
;
8210 else if (yys1
->yyresolved
)
8212 yys0
->yyresolved
= yytrue
;
8213 yys0
->yysemantics
.yysval
= yys1
->yysemantics
.yysval
;
8217 yySemanticOption
** yyz0p
= &yys0
->yysemantics
.yyfirstVal
;
8218 yySemanticOption
* yyz1
= yys1
->yysemantics
.yyfirstVal
;
8221 if (yyz1
== *yyz0p
|| yyz1
== YY_NULLPTR
)
8223 else if (*yyz0p
== YY_NULLPTR
)
8228 else if (*yyz0p
< yyz1
)
8230 yySemanticOption
* yyz
= *yyz0p
;
8232 yyz1
= yyz1
->yynext
;
8233 (*yyz0p
)->yynext
= yyz
;
8235 yyz0p
= &(*yyz0p
)->yynext
;
8237 yys1
->yysemantics
.yyfirstVal
= yys0
->yysemantics
.yyfirstVal
;
8242 /** Y0 and Y1 represent two possible actions to take in a given
8243 * parsing state; return 0 if no combination is possible,
8244 * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */
8246 yypreference (yySemanticOption
* y0
, yySemanticOption
* y1
)
8248 yyRuleNum r0
= y0
->yyrule
, r1
= y1
->yyrule
;
8249 int p0
= yydprec
[r0
], p1
= yydprec
[r1
];
8253 if (yymerger
[r0
] == 0 || yymerger
[r0
] != yymerger
[r1
])
8258 if (p0
== 0 || p1
== 0)
8267 static YYRESULTTAG
yyresolveValue (yyGLRState
* yys
,
8268 yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
);
8271 /** Resolve the previous YYN states starting at and including state YYS
8272 * on *YYSTACKP. If result != yyok, some states may have been left
8273 * unresolved possibly with empty semantic option chains. Regardless
8274 * of whether result = yyok, each state has been left with consistent
8275 * data so that yydestroyGLRState can be invoked if necessary. */
8277 yyresolveStates (yyGLRState
* yys
, int yyn
,
8278 yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8282 YYASSERT (yys
->yypred
);
8283 YYCHK (yyresolveStates (yys
->yypred
, yyn
-1, yystackp
, P
, tokens
, index
));
8284 if (! yys
->yyresolved
)
8285 YYCHK (yyresolveValue (yys
, yystackp
, P
, tokens
, index
));
8290 /** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its
8291 * user action, and return the semantic value and location in *YYVALP
8292 * and *YYLOCP. Regardless of whether result = yyok, all RHS states
8293 * have been destroyed (assuming the user action destroys all RHS
8294 * semantic values if invoked). */
8296 yyresolveAction (yySemanticOption
* yyopt
, yyGLRStack
* yystackp
,
8297 YYSTYPE
* yyvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8299 yyGLRStackItem yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
+ 1];
8300 int yynrhs
= yyrhsLength (yyopt
->yyrule
);
8301 YYRESULTTAG yyflag
=
8302 yyresolveStates (yyopt
->yystate
, yynrhs
, yystackp
, P
, tokens
, index
);
8306 for (yys
= yyopt
->yystate
; yynrhs
> 0; yys
= yys
->yypred
, yynrhs
-= 1)
8307 yydestroyGLRState ("Cleanup: popping", yys
, P
, tokens
, index
);
8311 yyrhsVals
[YYMAXRHS
+ YYMAXLEFT
].yystate
.yypred
= yyopt
->yystate
;
8313 int yychar_current
= yychar
;
8314 YYSTYPE yylval_current
= yylval
;
8315 yychar
= yyopt
->yyrawchar
;
8316 yylval
= yyopt
->yyval
;
8317 yyflag
= yyuserAction (yyopt
->yyrule
, yynrhs
,
8318 yyrhsVals
+ YYMAXRHS
+ YYMAXLEFT
- 1,
8319 yystackp
, yyvalp
, P
, tokens
, index
);
8320 yychar
= yychar_current
;
8321 yylval
= yylval_current
;
8328 yyreportTree (yySemanticOption
* yyx
, int yyindent
)
8330 int yynrhs
= yyrhsLength (yyx
->yyrule
);
8333 yyGLRState
* yystates
[1 + YYMAXRHS
];
8334 yyGLRState yyleftmost_state
;
8336 for (yyi
= yynrhs
, yys
= yyx
->yystate
; 0 < yyi
; yyi
-= 1, yys
= yys
->yypred
)
8337 yystates
[yyi
] = yys
;
8338 if (yys
== YY_NULLPTR
)
8340 yyleftmost_state
.yyposn
= 0;
8341 yystates
[0] = &yyleftmost_state
;
8346 if (yyx
->yystate
->yyposn
< yys
->yyposn
+ 1)
8347 YYFPRINTF (stderr
, "%*s%s -> <Rule %d, empty>\n",
8348 yyindent
, "", yytokenName (yylhsNonterm (yyx
->yyrule
)),
8351 YYFPRINTF (stderr
, "%*s%s -> <Rule %d, tokens %lu .. %lu>\n",
8352 yyindent
, "", yytokenName (yylhsNonterm (yyx
->yyrule
)),
8353 yyx
->yyrule
- 1, (unsigned long int) (yys
->yyposn
+ 1),
8354 (unsigned long int) yyx
->yystate
->yyposn
);
8355 for (yyi
= 1; yyi
<= yynrhs
; yyi
+= 1)
8357 if (yystates
[yyi
]->yyresolved
)
8359 if (yystates
[yyi
-1]->yyposn
+1 > yystates
[yyi
]->yyposn
)
8360 YYFPRINTF (stderr
, "%*s%s <empty>\n", yyindent
+2, "",
8361 yytokenName (yystos
[yystates
[yyi
]->yylrState
]));
8363 YYFPRINTF (stderr
, "%*s%s <tokens %lu .. %lu>\n", yyindent
+2, "",
8364 yytokenName (yystos
[yystates
[yyi
]->yylrState
]),
8365 (unsigned long int) (yystates
[yyi
-1]->yyposn
+ 1),
8366 (unsigned long int) yystates
[yyi
]->yyposn
);
8369 yyreportTree (yystates
[yyi
]->yysemantics
.yyfirstVal
, yyindent
+2);
8375 yyreportAmbiguity (yySemanticOption
* yyx0
,
8376 yySemanticOption
* yyx1
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8382 YYFPRINTF (stderr
, "Ambiguity detected.\n");
8383 YYFPRINTF (stderr
, "Option 1,\n");
8384 yyreportTree (yyx0
, 2);
8385 YYFPRINTF (stderr
, "\nOption 2,\n");
8386 yyreportTree (yyx1
, 2);
8387 YYFPRINTF (stderr
, "\n");
8390 yyerror (P
, tokens
, index
, YY_("syntax is ambiguous"));
8394 /** Resolve the ambiguity represented in state YYS in *YYSTACKP,
8395 * perform the indicated actions, and set the semantic value of YYS.
8396 * If result != yyok, the chain of semantic options in YYS has been
8397 * cleared instead or it has been left unmodified except that
8398 * redundant options may have been removed. Regardless of whether
8399 * result = yyok, YYS has been left with consistent data so that
8400 * yydestroyGLRState can be invoked if necessary. */
8402 yyresolveValue (yyGLRState
* yys
, yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8404 yySemanticOption
* yyoptionList
= yys
->yysemantics
.yyfirstVal
;
8405 yySemanticOption
* yybest
= yyoptionList
;
8406 yySemanticOption
** yypp
;
8407 yybool yymerge
= yyfalse
;
8411 for (yypp
= &yyoptionList
->yynext
; *yypp
!= YY_NULLPTR
; )
8413 yySemanticOption
* yyp
= *yypp
;
8415 if (yyidenticalOptions (yybest
, yyp
))
8417 yymergeOptionSets (yybest
, yyp
);
8418 *yypp
= yyp
->yynext
;
8422 switch (yypreference (yybest
, yyp
))
8425 return yyreportAmbiguity (yybest
, yyp
, P
, tokens
, index
);
8437 /* This cannot happen so it is not worth a YYASSERT (yyfalse),
8438 but some compilers complain if the default case is
8442 yypp
= &yyp
->yynext
;
8448 yySemanticOption
* yyp
;
8449 int yyprec
= yydprec
[yybest
->yyrule
];
8450 yyflag
= yyresolveAction (yybest
, yystackp
, &yysval
, P
, tokens
, index
);
8452 for (yyp
= yybest
->yynext
; yyp
!= YY_NULLPTR
; yyp
= yyp
->yynext
)
8454 if (yyprec
== yydprec
[yyp
->yyrule
])
8456 YYSTYPE yysval_other
;
8457 yyflag
= yyresolveAction (yyp
, yystackp
, &yysval_other
, P
, tokens
, index
);
8460 yydestruct ("Cleanup: discarding incompletely merged value for",
8461 yystos
[yys
->yylrState
],
8462 &yysval
, P
, tokens
, index
);
8465 yyuserMerge (yymerger
[yyp
->yyrule
], &yysval
, &yysval_other
);
8470 yyflag
= yyresolveAction (yybest
, yystackp
, &yysval
, P
, tokens
, index
);
8474 yys
->yyresolved
= yytrue
;
8475 yys
->yysemantics
.yysval
= yysval
;
8478 yys
->yysemantics
.yyfirstVal
= YY_NULLPTR
;
8483 yyresolveStack (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8485 if (yystackp
->yysplitPoint
!= YY_NULLPTR
)
8490 for (yyn
= 0, yys
= yystackp
->yytops
.yystates
[0];
8491 yys
!= yystackp
->yysplitPoint
;
8492 yys
= yys
->yypred
, yyn
+= 1)
8494 YYCHK (yyresolveStates (yystackp
->yytops
.yystates
[0], yyn
, yystackp
8495 , P
, tokens
, index
));
8501 yycompressStack (yyGLRStack
* yystackp
)
8503 yyGLRState
* yyp
, *yyq
, *yyr
;
8505 if (yystackp
->yytops
.yysize
!= 1 || yystackp
->yysplitPoint
== YY_NULLPTR
)
8508 for (yyp
= yystackp
->yytops
.yystates
[0], yyq
= yyp
->yypred
, yyr
= YY_NULLPTR
;
8509 yyp
!= yystackp
->yysplitPoint
;
8510 yyr
= yyp
, yyp
= yyq
, yyq
= yyp
->yypred
)
8513 yystackp
->yyspaceLeft
+= yystackp
->yynextFree
- yystackp
->yyitems
;
8514 yystackp
->yynextFree
= ((yyGLRStackItem
*) yystackp
->yysplitPoint
) + 1;
8515 yystackp
->yyspaceLeft
-= yystackp
->yynextFree
- yystackp
->yyitems
;
8516 yystackp
->yysplitPoint
= YY_NULLPTR
;
8517 yystackp
->yylastDeleted
= YY_NULLPTR
;
8519 while (yyr
!= YY_NULLPTR
)
8521 yystackp
->yynextFree
->yystate
= *yyr
;
8523 yystackp
->yynextFree
->yystate
.yypred
= &yystackp
->yynextFree
[-1].yystate
;
8524 yystackp
->yytops
.yystates
[0] = &yystackp
->yynextFree
->yystate
;
8525 yystackp
->yynextFree
+= 1;
8526 yystackp
->yyspaceLeft
-= 1;
8531 yyprocessOneStack (yyGLRStack
* yystackp
, size_t yyk
,
8532 size_t yyposn
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8534 while (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
8536 yyStateNum yystate
= yystackp
->yytops
.yystates
[yyk
]->yylrState
;
8537 YYDPRINTF ((stderr
, "Stack %lu Entering state %d\n",
8538 (unsigned long int) yyk
, yystate
));
8540 YYASSERT (yystate
!= YYFINAL
);
8542 if (yyisDefaultedState (yystate
))
8545 yyRuleNum yyrule
= yydefaultAction (yystate
);
8548 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8549 (unsigned long int) yyk
));
8550 yymarkStackDeleted (yystackp
, yyk
);
8553 yyflag
= yyglrReduce (yystackp
, yyk
, yyrule
, yyimmediate
[yyrule
], P
, tokens
, index
);
8554 if (yyflag
== yyerr
)
8558 "(predicate failure or explicit user error).\n",
8559 (unsigned long int) yyk
));
8560 yymarkStackDeleted (yystackp
, yyk
);
8570 const short int* yyconflicts
;
8572 yystackp
->yytops
.yylookaheadNeeds
[yyk
] = yytrue
;
8573 if (yychar
== YYEMPTY
)
8575 YYDPRINTF ((stderr
, "Reading a token: "));
8576 yychar
= yylex (&yylval
, P
, tokens
, index
);
8579 if (yychar
<= YYEOF
)
8581 yychar
= yytoken
= YYEOF
;
8582 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8586 yytoken
= YYTRANSLATE (yychar
);
8587 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8590 yygetLRActions (yystate
, yytoken
, &yyaction
, &yyconflicts
);
8592 while (*yyconflicts
!= 0)
8595 size_t yynewStack
= yysplitStack (yystackp
, yyk
);
8596 YYDPRINTF ((stderr
, "Splitting off stack %lu from %lu.\n",
8597 (unsigned long int) yynewStack
,
8598 (unsigned long int) yyk
));
8599 yyflag
= yyglrReduce (yystackp
, yynewStack
,
8601 yyimmediate
[*yyconflicts
], P
, tokens
, index
);
8603 YYCHK (yyprocessOneStack (yystackp
, yynewStack
,
8604 yyposn
, P
, tokens
, index
));
8605 else if (yyflag
== yyerr
)
8607 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8608 (unsigned long int) yynewStack
));
8609 yymarkStackDeleted (yystackp
, yynewStack
);
8616 if (yyisShiftAction (yyaction
))
8618 else if (yyisErrorAction (yyaction
))
8620 YYDPRINTF ((stderr
, "Stack %lu dies.\n",
8621 (unsigned long int) yyk
));
8622 yymarkStackDeleted (yystackp
, yyk
);
8627 YYRESULTTAG yyflag
= yyglrReduce (yystackp
, yyk
, -yyaction
,
8628 yyimmediate
[-yyaction
], P
, tokens
, index
);
8629 if (yyflag
== yyerr
)
8633 "(predicate failure or explicit user error).\n",
8634 (unsigned long int) yyk
));
8635 yymarkStackDeleted (yystackp
, yyk
);
8638 else if (yyflag
!= yyok
)
8647 yyreportSyntaxError (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8649 if (yystackp
->yyerrState
!= 0)
8651 #if ! YYERROR_VERBOSE
8652 yyerror (P
, tokens
, index
, YY_("syntax error"));
8655 yySymbol yytoken
= yychar
== YYEMPTY
? YYEMPTY
: YYTRANSLATE (yychar
);
8656 size_t yysize0
= yytnamerr (YY_NULLPTR
, yytokenName (yytoken
));
8657 size_t yysize
= yysize0
;
8658 yybool yysize_overflow
= yyfalse
;
8659 char* yymsg
= YY_NULLPTR
;
8660 enum { YYERROR_VERBOSE_ARGS_MAXIMUM
= 5 };
8661 /* Internationalized format string. */
8662 const char *yyformat
= YY_NULLPTR
;
8663 /* Arguments of yyformat. */
8664 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
8665 /* Number of reported tokens (one for the "unexpected", one per
8669 /* There are many possibilities here to consider:
8670 - If this state is a consistent state with a default action, then
8671 the only way this function was invoked is if the default action
8672 is an error action. In that case, don't check for expected
8673 tokens because there are none.
8674 - The only way there can be no lookahead present (in yychar) is if
8675 this state is a consistent state with a default action. Thus,
8676 detecting the absence of a lookahead is sufficient to determine
8677 that there is no unexpected or expected token to report. In that
8678 case, just report a simple "syntax error".
8679 - Don't assume there isn't a lookahead just because this state is a
8680 consistent state with a default action. There might have been a
8681 previous inconsistent state, consistent state with a non-default
8682 action, or user semantic action that manipulated yychar.
8683 - Of course, the expected token list depends on states to have
8684 correct lookahead information, and it depends on the parser not
8685 to perform extra reductions after fetching a lookahead from the
8686 scanner and before detecting a syntax error. Thus, state merging
8687 (from LALR or IELR) and default reductions corrupt the expected
8688 token list. However, the list is correct for canonical LR with
8689 one exception: it will still contain any token that will not be
8690 accepted due to an error action in a later state.
8692 if (yytoken
!= YYEMPTY
)
8694 int yyn
= yypact
[yystackp
->yytops
.yystates
[0]->yylrState
];
8695 yyarg
[yycount
++] = yytokenName (yytoken
);
8696 if (!yypact_value_is_default (yyn
))
8698 /* Start YYX at -YYN if negative to avoid negative indexes in
8699 YYCHECK. In other words, skip the first -YYN actions for this
8700 state because they are default actions. */
8701 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
8702 /* Stay within bounds of both yycheck and yytname. */
8703 int yychecklim
= YYLAST
- yyn
+ 1;
8704 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
8706 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
8707 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
8708 && !yytable_value_is_error (yytable
[yyx
+ yyn
]))
8710 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
8716 yyarg
[yycount
++] = yytokenName (yyx
);
8718 size_t yysz
= yysize
+ yytnamerr (YY_NULLPTR
, yytokenName (yyx
));
8719 yysize_overflow
|= yysz
< yysize
;
8728 #define YYCASE_(N, S) \
8732 YYCASE_(0, YY_("syntax error"));
8733 YYCASE_(1, YY_("syntax error, unexpected %s"));
8734 YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
8735 YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
8736 YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
8737 YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
8742 size_t yysz
= yysize
+ strlen (yyformat
);
8743 yysize_overflow
|= yysz
< yysize
;
8747 if (!yysize_overflow
)
8748 yymsg
= (char *) YYMALLOC (yysize
);
8754 while ((*yyp
= *yyformat
))
8756 if (*yyp
== '%' && yyformat
[1] == 's' && yyi
< yycount
)
8758 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
8767 yyerror (P
, tokens
, index
, yymsg
);
8772 yyerror (P
, tokens
, index
, YY_("syntax error"));
8773 yyMemoryExhausted (yystackp
);
8776 #endif /* YYERROR_VERBOSE */
8780 /* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP,
8781 yylval, and yylloc are the syntactic category, semantic value, and location
8782 of the lookahead. */
8784 yyrecoverSyntaxError (yyGLRStack
* yystackp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8789 if (yystackp
->yyerrState
== 3)
8790 /* We just shifted the error token and (perhaps) took some
8791 reductions. Skip tokens until we can proceed. */
8795 if (yychar
== YYEOF
)
8796 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8797 if (yychar
!= YYEMPTY
)
8799 yytoken
= YYTRANSLATE (yychar
);
8800 yydestruct ("Error: discarding",
8801 yytoken
, &yylval
, P
, tokens
, index
);
8803 YYDPRINTF ((stderr
, "Reading a token: "));
8804 yychar
= yylex (&yylval
, P
, tokens
, index
);
8805 if (yychar
<= YYEOF
)
8807 yychar
= yytoken
= YYEOF
;
8808 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8812 yytoken
= YYTRANSLATE (yychar
);
8813 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8815 yyj
= yypact
[yystackp
->yytops
.yystates
[0]->yylrState
];
8816 if (yypact_value_is_default (yyj
))
8819 if (yyj
< 0 || YYLAST
< yyj
|| yycheck
[yyj
] != yytoken
)
8821 if (yydefact
[yystackp
->yytops
.yystates
[0]->yylrState
] != 0)
8824 else if (! yytable_value_is_error (yytable
[yyj
]))
8828 /* Reduce to one stack. */
8829 for (yyk
= 0; yyk
< yystackp
->yytops
.yysize
; yyk
+= 1)
8830 if (yystackp
->yytops
.yystates
[yyk
] != YY_NULLPTR
)
8832 if (yyk
>= yystackp
->yytops
.yysize
)
8833 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8834 for (yyk
+= 1; yyk
< yystackp
->yytops
.yysize
; yyk
+= 1)
8835 yymarkStackDeleted (yystackp
, yyk
);
8836 yyremoveDeletes (yystackp
);
8837 yycompressStack (yystackp
);
8839 /* Now pop stack until we find a state that shifts the error token. */
8840 yystackp
->yyerrState
= 3;
8841 while (yystackp
->yytops
.yystates
[0] != YY_NULLPTR
)
8843 yyGLRState
*yys
= yystackp
->yytops
.yystates
[0];
8844 yyj
= yypact
[yys
->yylrState
];
8845 if (! yypact_value_is_default (yyj
))
8848 if (0 <= yyj
&& yyj
<= YYLAST
&& yycheck
[yyj
] == YYTERROR
8849 && yyisShiftAction (yytable
[yyj
]))
8851 /* Shift the error token. */
8852 YY_SYMBOL_PRINT ("Shifting", yystos
[yytable
[yyj
]],
8853 &yylval
, &yyerrloc
);
8854 yyglrShift (yystackp
, 0, yytable
[yyj
],
8855 yys
->yyposn
, &yylval
);
8856 yys
= yystackp
->yytops
.yystates
[0];
8860 if (yys
->yypred
!= YY_NULLPTR
)
8861 yydestroyGLRState ("Error: popping", yys
, P
, tokens
, index
);
8862 yystackp
->yytops
.yystates
[0] = yys
->yypred
;
8863 yystackp
->yynextFree
-= 1;
8864 yystackp
->yyspaceLeft
+= 1;
8866 if (yystackp
->yytops
.yystates
[0] == YY_NULLPTR
)
8867 yyFail (yystackp
, P
, tokens
, index
, YY_NULLPTR
);
8870 #define YYCHK1(YYE) \
8880 goto yyuser_error; \
8891 yyparse (struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
8895 yyGLRStack
* const yystackp
= &yystack
;
8898 YYDPRINTF ((stderr
, "Starting parse\n"));
8901 yylval
= yyval_default
;
8903 /* User initialization code. */
8904 #line 144 "src/parser_proc_grammar.y" /* glr.c:2270 */
8908 #line 8909 "src/parser_proc.c" /* glr.c:2270 */
8910 if (! yyinitGLRStack (yystackp
, YYINITDEPTH
))
8911 goto yyexhaustedlab
;
8912 switch (YYSETJMP (yystack
.yyexception_buffer
))
8915 case 1: goto yyabortlab
;
8916 case 2: goto yyexhaustedlab
;
8917 default: goto yybuglab
;
8919 yyglrShift (&yystack
, 0, 0, 0, &yylval
);
8924 /* For efficiency, we have two loops, the first of which is
8925 specialized to deterministic operation (single stack, no
8926 potential ambiguity). */
8932 const short int* yyconflicts
;
8934 yyStateNum yystate
= yystack
.yytops
.yystates
[0]->yylrState
;
8935 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
8936 if (yystate
== YYFINAL
)
8938 if (yyisDefaultedState (yystate
))
8940 yyrule
= yydefaultAction (yystate
);
8944 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
8947 YYCHK1 (yyglrReduce (&yystack
, 0, yyrule
, yytrue
, P
, tokens
, index
));
8952 if (yychar
== YYEMPTY
)
8954 YYDPRINTF ((stderr
, "Reading a token: "));
8955 yychar
= yylex (&yylval
, P
, tokens
, index
);
8958 if (yychar
<= YYEOF
)
8960 yychar
= yytoken
= YYEOF
;
8961 YYDPRINTF ((stderr
, "Now at end of input.\n"));
8965 yytoken
= YYTRANSLATE (yychar
);
8966 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
8969 yygetLRActions (yystate
, yytoken
, &yyaction
, &yyconflicts
);
8970 if (*yyconflicts
!= 0)
8972 if (yyisShiftAction (yyaction
))
8974 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
8977 yyglrShift (&yystack
, 0, yyaction
, yyposn
, &yylval
);
8978 if (0 < yystack
.yyerrState
)
8979 yystack
.yyerrState
-= 1;
8981 else if (yyisErrorAction (yyaction
))
8984 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
8988 YYCHK1 (yyglrReduce (&yystack
, 0, -yyaction
, yytrue
, P
, tokens
, index
));
8994 yySymbol yytoken_to_shift
;
8997 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
8998 yystackp
->yytops
.yylookaheadNeeds
[yys
] = yychar
!= YYEMPTY
;
9000 /* yyprocessOneStack returns one of three things:
9002 - An error flag. If the caller is yyprocessOneStack, it
9003 immediately returns as well. When the caller is finally
9004 yyparse, it jumps to an error label via YYCHK1.
9006 - yyok, but yyprocessOneStack has invoked yymarkStackDeleted
9007 (&yystack, yys), which sets the top state of yys to NULL. Thus,
9008 yyparse's following invocation of yyremoveDeletes will remove
9011 - yyok, when ready to shift a token.
9013 Except in the first case, yyparse will invoke yyremoveDeletes and
9014 then shift the next token onto all remaining stacks. This
9015 synchronization of the shift (that is, after all preceding
9016 reductions on all stacks) helps prevent double destructor calls
9017 on yylval in the event of memory exhaustion. */
9019 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9020 YYCHK1 (yyprocessOneStack (&yystack
, yys
, yyposn
, P
, tokens
, index
));
9021 yyremoveDeletes (&yystack
);
9022 if (yystack
.yytops
.yysize
== 0)
9024 yyundeleteLastStack (&yystack
);
9025 if (yystack
.yytops
.yysize
== 0)
9026 yyFail (&yystack
, P
, tokens
, index
, YY_("syntax error"));
9027 YYCHK1 (yyresolveStack (&yystack
, P
, tokens
, index
));
9028 YYDPRINTF ((stderr
, "Returning to deterministic operation.\n"));
9030 yyreportSyntaxError (&yystack
, P
, tokens
, index
);
9034 /* If any yyglrShift call fails, it will fail after shifting. Thus,
9035 a copy of yylval will already be on stack 0 in the event of a
9036 failure in the following loop. Thus, yychar is set to YYEMPTY
9037 before the loop to make sure the user destructor for yylval isn't
9039 yytoken_to_shift
= YYTRANSLATE (yychar
);
9042 for (yys
= 0; yys
< yystack
.yytops
.yysize
; yys
+= 1)
9045 const short int* yyconflicts
;
9046 yyStateNum yystate
= yystack
.yytops
.yystates
[yys
]->yylrState
;
9047 yygetLRActions (yystate
, yytoken_to_shift
, &yyaction
,
9049 /* Note that yyconflicts were handled by yyprocessOneStack. */
9050 YYDPRINTF ((stderr
, "On stack %lu, ", (unsigned long int) yys
));
9051 YY_SYMBOL_PRINT ("shifting", yytoken_to_shift
, &yylval
, &yylloc
);
9052 yyglrShift (&yystack
, yys
, yyaction
, yyposn
,
9054 YYDPRINTF ((stderr
, "Stack %lu now in state #%d\n",
9055 (unsigned long int) yys
,
9056 yystack
.yytops
.yystates
[yys
]->yylrState
));
9059 if (yystack
.yytops
.yysize
== 1)
9061 YYCHK1 (yyresolveStack (&yystack
, P
, tokens
, index
));
9062 YYDPRINTF ((stderr
, "Returning to deterministic operation.\n"));
9063 yycompressStack (&yystack
);
9069 yyrecoverSyntaxError (&yystack
, P
, tokens
, index
);
9070 yyposn
= yystack
.yytops
.yystates
[0]->yyposn
;
9086 yyerror (P
, tokens
, index
, YY_("memory exhausted"));
9091 if (yychar
!= YYEMPTY
)
9092 yydestruct ("Cleanup: discarding lookahead",
9093 YYTRANSLATE (yychar
), &yylval
, P
, tokens
, index
);
9095 /* If the stack is well-formed, pop the stack until it is empty,
9096 destroying its entries as we go. But free the stack regardless
9097 of whether it is well-formed. */
9098 if (yystack
.yyitems
)
9100 yyGLRState
** yystates
= yystack
.yytops
.yystates
;
9103 size_t yysize
= yystack
.yytops
.yysize
;
9105 for (yyk
= 0; yyk
< yysize
; yyk
+= 1)
9108 while (yystates
[yyk
])
9110 yyGLRState
*yys
= yystates
[yyk
];
9111 if (yys
->yypred
!= YY_NULLPTR
)
9112 yydestroyGLRState ("Cleanup: popping", yys
, P
, tokens
, index
);
9113 yystates
[yyk
] = yys
->yypred
;
9114 yystack
.yynextFree
-= 1;
9115 yystack
.yyspaceLeft
+= 1;
9120 yyfreeGLRStack (&yystack
);
9126 /* DEBUGGING ONLY */
9129 yy_yypstack (yyGLRState
* yys
)
9133 yy_yypstack (yys
->yypred
);
9134 YYFPRINTF (stderr
, " -> ");
9136 YYFPRINTF (stderr
, "%d@%lu", yys
->yylrState
,
9137 (unsigned long int) yys
->yyposn
);
9141 yypstates (yyGLRState
* yyst
)
9143 if (yyst
== YY_NULLPTR
)
9144 YYFPRINTF (stderr
, "<null>");
9147 YYFPRINTF (stderr
, "\n");
9151 yypstack (yyGLRStack
* yystackp
, size_t yyk
)
9153 yypstates (yystackp
->yytops
.yystates
[yyk
]);
9156 #define YYINDEX(YYX) \
9157 ((YYX) == YY_NULLPTR ? -1 : (yyGLRStackItem*) (YYX) - yystackp->yyitems)
9161 yypdumpstack (yyGLRStack
* yystackp
)
9163 yyGLRStackItem
* yyp
;
9165 for (yyp
= yystackp
->yyitems
; yyp
< yystackp
->yynextFree
; yyp
+= 1)
9167 YYFPRINTF (stderr
, "%3lu. ",
9168 (unsigned long int) (yyp
- yystackp
->yyitems
));
9169 if (*(yybool
*) yyp
)
9171 YYASSERT (yyp
->yystate
.yyisState
);
9172 YYASSERT (yyp
->yyoption
.yyisState
);
9173 YYFPRINTF (stderr
, "Res: %d, LR State: %d, posn: %lu, pred: %ld",
9174 yyp
->yystate
.yyresolved
, yyp
->yystate
.yylrState
,
9175 (unsigned long int) yyp
->yystate
.yyposn
,
9176 (long int) YYINDEX (yyp
->yystate
.yypred
));
9177 if (! yyp
->yystate
.yyresolved
)
9178 YYFPRINTF (stderr
, ", firstVal: %ld",
9179 (long int) YYINDEX (yyp
->yystate
9180 .yysemantics
.yyfirstVal
));
9184 YYASSERT (!yyp
->yystate
.yyisState
);
9185 YYASSERT (!yyp
->yyoption
.yyisState
);
9186 YYFPRINTF (stderr
, "Option. rule: %d, state: %ld, next: %ld",
9187 yyp
->yyoption
.yyrule
- 1,
9188 (long int) YYINDEX (yyp
->yyoption
.yystate
),
9189 (long int) YYINDEX (yyp
->yyoption
.yynext
));
9191 YYFPRINTF (stderr
, "\n");
9193 YYFPRINTF (stderr
, "Tops:");
9194 for (yyi
= 0; yyi
< yystackp
->yytops
.yysize
; yyi
+= 1)
9195 YYFPRINTF (stderr
, "%lu: %ld; ", (unsigned long int) yyi
,
9196 (long int) YYINDEX (yystackp
->yytops
.yystates
[yyi
]));
9197 YYFPRINTF (stderr
, "\n");
9205 /* Substitute the variable and function names. */
9206 #define yyparse psi_parser_proc_parse
9207 #define yylex psi_parser_proc_lex
9208 #define yyerror psi_parser_proc_error
9209 #define yylval psi_parser_proc_lval
9210 #define yychar psi_parser_proc_char
9211 #define yydebug psi_parser_proc_debug
9212 #define yynerrs psi_parser_proc_nerrs
9214 #line 2277 "src/parser_proc_grammar.y" /* glr.c:2584 */
9219 static int psi_parser_proc_lex(YYSTYPE
*lvalp
, struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
)
9221 struct psi_token
*token
;
9223 if (psi_plist_get(tokens
, (*index
)++, &token
)) {
9224 if (P
->flags
& PSI_DEBUG
) {
9225 psi_token_dump(2, token
);
9228 *((struct psi_token
**)lvalp
) = token
;
9232 PSI_DEBUG_PRINT(P
, "EOF(%d)\n", PSI_T_EOF
);
9238 static void psi_parser_proc_error(struct psi_parser
*P
, struct psi_plist
*tokens
, size_t *index
, const char *msg
)
9240 struct psi_token
*T
= NULL
;
9249 psi_plist_get(tokens
, last
, &T
);
9251 P
->error(PSI_DATA(P
), T
, PSI_WARNING
, "PSI %s at col %u", msg
, T
->col
);
9253 P
->error(PSI_DATA(P
), NULL
, PSI_WARNING
, "PSI %s", msg
);