#include "plist.h"
#include "parser.h"
+
#define YYDEBUG 1
+#define PSI_PARSER_PROC_DEBUG 1
static int psi_parser_proc_lex(YYSTYPE *u, struct psi_parser *P, struct psi_plist *tokens, size_t *index);
static void psi_parser_proc_error(struct psi_parser *P, struct psi_plist *tokens, size_t *index, const char *msg);
}
P->enums = psi_plist_add(P->enums, &e);
}
-static inline void psi_parser_proc_add_from_typedef(struct psi_parser *P, struct psi_decl_arg *def)
+static inline void psi_parser_proc_deanon_typedef(struct psi_decl_arg *def)
{
- if (def->type->real.def) {
- switch (def->type->type) {
- case PSI_T_STRUCT:
- psi_parser_proc_add_struct(P, def->type->real.strct);
- break;
- case PSI_T_UNION:
- psi_parser_proc_add_union(P, def->type->real.unn);
- break;
- case PSI_T_ENUM:
- psi_parser_proc_add_enum(P, def->type->real.enm);
- break;
- default:
- break;
+ switch (def->type->type) {
+ case PSI_T_STRUCT:
+ if (!psi_decl_type_is_anon(def->type->name, "struct")) {
+ return;
+ }
+ break;
+ case PSI_T_UNION:
+ if (!psi_decl_type_is_anon(def->type->name, "union")) {
+ return;
}
+ break;
+ case PSI_T_ENUM:
+ if (!psi_decl_type_is_anon(def->type->name, "enum")) {
+ return;
+ }
+ break;
+ default:
+ return;
}
+ free(def->type->name);
+ def->type->name = strdup(def->var->name);
}
static inline void psi_parser_proc_add_typedef(struct psi_parser *P, struct psi_decl_arg *def)
{
if (!P->types) {
P->types = psi_plist_init((psi_plist_dtor) psi_decl_arg_free);
}
+ //psi_parser_proc_deanon_typedef(def);
P->types = psi_plist_add(P->types, &def);
- psi_parser_proc_add_from_typedef(P, def);
}
static inline void psi_parser_proc_add_const(struct psi_parser *P, struct psi_const *cnst) {
assert(cnst);
}
static inline void psi_parser_proc_add_decl(struct psi_parser *P, struct psi_decl *decl) {
assert(decl);
+
+ if (psi_decl_is_blacklisted(decl->func->var->name)) {
+ psi_decl_free(&decl);
+ return;
+ }
+
if (!P->decls) {
P->decls = psi_plist_init((psi_plist_dtor) psi_decl_free);
}
P->decls = psi_plist_add(P->decls, &decl);
}
+static inline void psi_parser_proc_add_decl_extvars(struct psi_parser *P, struct psi_plist *list) {
+ assert(list);
+ if (!P->vars) {
+ P->vars = psi_plist_init((psi_plist_dtor) psi_decl_extvar_free);
+ }
+ P->vars = psi_plist_add_r(P->vars, psi_plist_count(list), psi_plist_eles(list));
+ free(list);
+}
static inline void psi_parser_proc_add_impl(struct psi_parser *P, struct psi_impl *impl) {
assert(impl);
if (!P->impls) {
/* end code */
-#line 184 "src/parser_proc.c" /* glr.c:264 */
+#line 206 "src/parser_proc.c" /* glr.c:264 */
#include <stdio.h>
#include <stdlib.h>
#endif
/* YYFINAL -- State number of the termination state. */
-#define YYFINAL 133
+#define YYFINAL 160
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 2352
+#define YYLAST 7725
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 127
+#define YYNTOKENS 140
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 110
+#define YYNNTS 141
/* YYNRULES -- Number of rules. */
-#define YYNRULES 437
+#define YYNRULES 627
/* YYNRULES -- Number of states. */
-#define YYNSTATES 645
+#define YYNSTATES 937
/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
-#define YYMAXRHS 13
+#define YYMAXRHS 16
/* YYMAXLEFT -- Maximum number of symbols to the left of a handle
accessed by $0, $-1, etc., in any rule. */
#define YYMAXLEFT 0
/* YYTRANSLATE(X) -- Bison symbol number corresponding to X. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 381
+#define YYMAXUTOK 394
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
- 125, 126
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 138, 139
};
#if YYDEBUG
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned short int yyrline[] =
{
- 0, 389, 389, 389, 389, 389, 389, 389, 389, 389,
- 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
- 390, 390, 390, 390, 391, 391, 391, 391, 391, 391,
- 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 396, 397, 400, 401, 404,
- 405, 406, 407, 413, 421, 424, 427, 430, 433, 436,
- 439, 445, 451, 457, 480, 484, 488, 493, 498, 502,
- 506, 510, 517, 518, 522, 523, 524, 528, 529, 533,
- 534, 538, 539, 540, 544, 545, 549, 554, 559, 567,
- 570, 574, 579, 587, 590, 594, 598, 605, 609, 613,
- 617, 622, 632, 642, 647, 652, 658, 667, 670, 674,
- 678, 684, 691, 697, 698, 699, 700, 704, 707, 714,
- 715, 716, 717, 718, 722, 728, 729, 737, 747, 755,
- 763, 771, 774, 778, 782, 786, 791, 796, 804, 805,
- 806, 809, 815, 818, 821, 827, 828, 829, 830, 831,
- 832, 833, 834, 838, 839, 843, 846, 849, 855, 858,
- 861, 869, 881, 884, 887, 894, 897, 907, 910, 913,
- 916, 917, 921, 924, 927, 938, 944, 951, 959, 966,
- 977, 978, 982, 988, 998, 1008, 1021, 1022, 1034, 1037,
- 1040, 1043, 1049, 1052, 1062, 1075, 1080, 1088, 1098, 1108,
- 1111, 1115, 1121, 1124, 1130, 1138, 1145, 1148, 1154, 1159,
- 1167, 1171, 1175, 1179, 1183, 1187, 1194, 1198, 1202, 1206,
- 1213, 1226, 1239, 1252, 1255, 1262, 1265, 1271, 1275, 1282,
- 1285, 1291, 1294, 1300, 1303, 1315, 1318, 1325, 1330, 1335,
- 1345, 1348, 1354, 1357, 1363, 1370, 1377, 1378, 1379, 1380,
- 1381, 1382, 1383, 1384, 1385, 1389, 1392, 1398, 1401, 1404,
- 1407, 1410, 1416, 1420, 1428, 1429, 1433, 1440, 1443, 1446,
- 1449, 1452, 1458, 1462, 1470, 1477, 1485, 1493, 1494, 1495,
- 1496, 1497, 1498, 1499, 1500, 1501, 1502, 1506, 1509, 1515,
- 1518, 1524, 1525, 1529, 1532, 1538, 1541, 1547, 1554, 1561,
- 1564, 1567, 1574, 1579, 1587, 1588, 1589, 1590, 1591, 1592,
- 1593, 1594, 1598, 1601, 1607, 1610, 1616, 1623, 1624, 1628,
- 1635, 1638, 1644, 1652, 1655, 1661, 1664, 1670
+ 0, 433, 433, 433, 433, 433, 433, 433, 433, 433,
+ 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
+ 434, 434, 434, 434, 435, 435, 435, 435, 435, 435,
+ 435, 435, 435, 435, 435, 435, 435, 435, 435, 435,
+ 435, 435, 435, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
+ 436, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 437, 437, 437,
+ 437, 437, 437, 437, 437, 437, 437, 441, 442, 445,
+ 446, 449, 450, 451, 452, 458, 462, 465, 468, 471,
+ 477, 480, 483, 486, 489, 495, 501, 504, 510, 533,
+ 537, 541, 546, 550, 554, 558, 565, 566, 570, 571,
+ 575, 576, 577, 581, 582, 586, 587, 591, 592, 593,
+ 597, 598, 602, 607, 612, 617, 626, 629, 632, 633,
+ 639, 644, 652, 655, 659, 663, 670, 674, 678, 682,
+ 687, 698, 709, 714, 719, 723, 729, 739, 742, 746,
+ 750, 756, 763, 767, 771, 778, 779, 780, 784, 798,
+ 804, 807, 813, 816, 822, 823, 831, 842, 851, 863,
+ 864, 868, 878, 887, 899, 900, 903, 909, 910, 914,
+ 918, 922, 927, 932, 940, 941, 942, 945, 951, 954,
+ 957, 963, 964, 968, 971, 974, 980, 983, 986, 994,
+ 1006, 1009, 1012, 1015, 1022, 1025, 1035, 1038, 1041, 1044,
+ 1045, 1046, 1050, 1053, 1056, 1067, 1074, 1084, 1087, 1093,
+ 1096, 1103, 1134, 1137, 1143, 1146, 1152, 1155, 1158, 1161,
+ 1167, 1171, 1172, 1176, 1177, 1181, 1182, 1189, 1190, 1194,
+ 1201, 1212, 1219, 1227, 1251, 1279, 1286, 1297, 1343, 1384,
+ 1399, 1402, 1405, 1411, 1414, 1420, 1435, 1438, 1467, 1475,
+ 1503, 1508, 1516, 1526, 1536, 1539, 1543, 1549, 1563, 1580,
+ 1583, 1589, 1596, 1606, 1613, 1616, 1622, 1627, 1635, 1639,
+ 1643, 1647, 1651, 1655, 1662, 1666, 1670, 1674, 1678, 1682,
+ 1688, 1692, 1699, 1702, 1714, 1718, 1722, 1729, 1742, 1755,
+ 1768, 1771, 1778, 1779, 1783, 1786, 1789, 1792, 1798, 1802,
+ 1809, 1812, 1815, 1830, 1831, 1832, 1833, 1837, 1840, 1846,
+ 1847, 1853, 1856, 1862, 1863, 1867, 1868, 1878, 1881, 1888,
+ 1893, 1898, 1908, 1911, 1917, 1920, 1926, 1933, 1940, 1947,
+ 1948, 1952, 1953, 1954, 1955, 1959, 1960, 1961, 1962, 1963,
+ 1967, 1970, 1976, 1979, 1982, 1985, 1988, 1994, 1998, 2006,
+ 2007, 2011, 2018, 2021, 2024, 2027, 2031, 2034, 2040, 2044,
+ 2052, 2059, 2064, 2072, 2080, 2081, 2082, 2083, 2084, 2085,
+ 2086, 2087, 2088, 2089, 2093, 2096, 2102, 2105, 2111, 2112,
+ 2116, 2119, 2125, 2128, 2134, 2141, 2145, 2152, 2155, 2158,
+ 2164, 2171, 2174, 2177, 2184, 2189, 2197, 2198, 2199, 2200,
+ 2201, 2202, 2203, 2204, 2208, 2211, 2217, 2220, 2226, 2233,
+ 2234, 2238, 2245, 2248, 2254, 2262, 2265, 2271
};
#endif
{
"\"end of file\"", "error", "$undefined", "BOOL", "CHAR", "SHORT",
"INT", "SIGNED", "UNSIGNED", "LONG", "FLOAT", "DOUBLE", "STRING",
- "MIXED", "ARRAY", "OBJECT", "CALLABLE", "VOID", "ZVAL", "INT8", "UINT8",
- "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "NULL", "TRUE",
+ "MIXED", "ARRAY", "OBJECT", "CALLABLE", "VOID", "ZVAL", "NULL", "TRUE",
"FALSE", "NAME", "NSNAME", "DOLLAR_NAME", "NUMBER", "QUOTED_STRING",
- "QUOTED_CHAR", "\"end of line\"", "\";\"", "\"(\"", "\")\"", "\",\"",
- "\":\"", "\"{\"", "\"}\"", "\"[\"", "\"]\"", "\"=\"", "\"#\"", "\"|\"",
- "\"^\"", "\"&\"", "\"<<\"", "\">>\"", "\"+\"", "\"-\"", "\"*\"", "\"/\"",
- "\"%\"", "\"<\"", "\">\"", "\">=\"", "\"<=\"", "\"||\"", "\"&&\"",
- "\"==\"", "\"!=\"", "\"~\"", "\"!\"", "\".\"", "\"\\\\\"", "\"...\"",
- "\"?\"", "PRAGMA", "ONCE", "ERROR", "WARNING", "IF", "IFDEF", "IFNDEF",
- "ELSE", "ELIF", "ENDIF", "DEFINE", "DEFINED", "UNDEF", "IMPORT",
- "INCLUDE", "INCLUDE_NEXT", "TYPEDEF", "STRUCT", "UNION", "ENUM", "CONST",
- "LIB", "STATIC", "CALLBACK", "FUNCTION", "LET", "SET", "TEMP", "FREE",
- "RETURN", "PRE_ASSERT", "POST_ASSERT", "BOOLVAL", "INTVAL", "STRVAL",
- "PATHVAL", "STRLEN", "FLOATVAL", "ARRVAL", "OBJVAL", "COUNT", "CALLOC",
- "TO_BOOL", "TO_INT", "TO_STRING", "TO_FLOAT", "TO_ARRAY", "TO_OBJECT",
- "COMMENT", "WHITESPACE", "NO_WHITESPACE", "CPP_HEADER", "CPP_ATTRIBUTE",
- "BINARY", "UNARY", "$accept", "binary_op_token", "unary_op_token",
- "name_token", "any_noeol_token", "file", "blocks", "block", "lib", "cpp",
- "cpp_exp", "cpp_message_token", "cpp_include_token", "cpp_header_token",
- "cpp_no_arg_token", "cpp_name_arg_token", "cpp_exp_arg_token",
- "cpp_macro_decl", "cpp_macro_sig", "cpp_macro_sig_args",
- "cpp_macro_decl_tokens", "cpp_macro_decl_token_list", "cpp_macro_exp",
- "cpp_macro_call_args", "cpp_macro_call_arg_list", "constant",
- "constant_type", "constant_type_token", "impl_def_val",
- "impl_def_val_token", "decl_typedef", "typedef", "const_decl_type",
- "decl_type", "decl_type_complex", "decl_type_simple", "decl_real_type",
- "decl_stdint_type", "int_signed", "int_width", "decl_int_type",
- "int_signed_types", "signed_short_types", "signed_long_types",
- "int_width_types", "decl_stmt", "decl", "decl_fn", "decl_functor",
- "decl_func", "decl_args", "decl_arg", "decl_var", "decl_union",
- "decl_struct", "decl_struct_args", "struct_args_block", "struct_args",
- "struct_arg", "decl_enum", "decl_enum_items", "decl_enum_item",
- "num_exp", "number", "enum_name", "union_name", "struct_name",
- "optional_name", "decl_layout", "align_and_size", "array_size",
- "indirection", "pointers", "impl", "impl_func", "impl_args", "impl_arg",
- "impl_var", "impl_type", "impl_type_token", "impl_stmts", "impl_stmt",
- "let_stmt", "let_exp", "let_exp_byref", "let_exp_assign", "let_calloc",
+ "QUOTED_CHAR", "SIZEOF", "VOLATILE", "\"end of line\"", "\";\"", "\"(\"",
+ "\")\"", "\",\"", "\":\"", "\"{\"", "\"}\"", "\"[\"", "\"]\"", "\"=\"",
+ "\"#\"", "\"|\"", "\"^\"", "\"&\"", "\"<<\"", "\">>\"", "\"+\"", "\"-\"",
+ "\"*\"", "\"/\"", "\"%\"", "\"<\"", "\">\"", "\">=\"", "\"<=\"",
+ "\"||\"", "\"&&\"", "\"==\"", "\"!=\"", "\"~\"", "\"!\"", "\".\"",
+ "\"\\\\\"", "\"...\"", "\"?\"", "PRAGMA", "PRAGMA_ONCE", "LINE", "ERROR",
+ "WARNING", "IF", "IFDEF", "IFNDEF", "ELSE", "ELIF", "ENDIF", "DEFINE",
+ "DEFINED", "UNDEF", "IMPORT", "INCLUDE", "INCLUDE_NEXT", "TYPEDEF",
+ "STRUCT", "UNION", "ENUM", "CONST", "LIB", "STATIC", "CALLBACK",
+ "FUNCTION", "LET", "SET", "TEMP", "FREE", "RETURN", "AS", "PRE_ASSERT",
+ "POST_ASSERT", "BOOLVAL", "INTVAL", "STRVAL", "PATHVAL", "STRLEN",
+ "FLOATVAL", "ARRVAL", "OBJVAL", "COUNT", "CALLOC", "TO_BOOL", "TO_INT",
+ "TO_STRING", "TO_FLOAT", "TO_ARRAY", "TO_OBJECT", "COMMENT",
+ "WHITESPACE", "NO_WHITESPACE", "CPP_HEADER", "CPP_ATTRIBUTE",
+ "CPP_EXTENSION", "CPP_PASTE", "CPP_INLINE", "CPP_RESTRICT", "CPP_ASM",
+ "BSLASH", "LONG_DOUBLE", "INT8", "UINT8", "INT16", "UINT16", "INT32",
+ "UINT32", "INT64", "UINT64", "INT128", "UINT128", "BINARY", "UNARY",
+ "$accept", "binary_op_token", "unary_op_token", "name_token",
+ "any_noeol_token", "any_nobrace_token", "file", "blocks", "block", "lib",
+ "cpp", "cpp_exp", "cpp_ignored_token", "cpp_message_token",
+ "cpp_include_token", "cpp_header_token", "cpp_no_arg_token",
+ "cpp_name_arg_token", "cpp_exp_arg_token", "cpp_macro_decl",
+ "cpp_macro_sig", "cpp_macro_sig_args", "cpp_macro_decl_tokens",
+ "cpp_macro_decl_token_list", "cpp_macro_exp", "cpp_macro_call_args",
+ "cpp_macro_call_arg_list", "constant", "impl_def_val",
+ "impl_def_val_token", "decl_typedef", "typedef", "typedef_anon",
+ "typedef_decl", "typedef_anon_decl", "qualified_decl_type",
+ "decl_type_qualifier_token", "decl_type", "decl_type_complex",
+ "decl_type_simple", "decl_real_type", "int_signed", "int_width",
+ "decl_int_type", "int_signed_types", "signed_short_types",
+ "signed_long_types", "int_width_types", "decl_stmt", "decl_asm",
+ "quoted_strings", "decl_extvar_stmt", "decl_extvar_list", "decl_vars",
+ "ignored_decl", "ignored_decl_body", "ignored_decl_body_stmts",
+ "ignored_decl_body_stmt", "decl", "decl_body", "decl_func_body",
+ "decl_functor_body", "decl_anon_functor_body", "decl_functor",
+ "decl_anon_functor", "decl_func", "decl_args", "decl_arg_list",
+ "decl_anon_arg", "decl_arg", "decl_var", "decl_union", "decl_struct",
+ "decl_struct_args", "struct_args_block", "struct_args",
+ "struct_arg_var_list", "decl_vars_with_layout", "decl_enum",
+ "decl_enum_items", "decl_enum_item", "num_exp", "number", "sizeof",
+ "sizeof_body", "sizeof_body_notypes", "enum_name", "union_name",
+ "struct_name", "optional_name", "optional_comma", "decl_layout",
+ "align_and_size", "array_size", "array_qualifier_token", "indirection",
+ "pointers", "asterisks", "asterisk", "pointer_qualifier_token", "impl",
+ "impl_func", "impl_args", "impl_arg", "impl_var", "impl_type",
+ "impl_type_restricted", "impl_type_token", "impl_type_restricted_token",
+ "impl_type_extended_token", "impl_stmts", "impl_stmt", "let_stmt",
+ "let_exp", "let_exp_byref", "let_exp_assign", "let_calloc",
"let_callback", "let_func", "let_func_token", "let_func_exps",
"let_exps", "callback_rval", "callback_arg_list", "callback_args",
- "return_stmt", "set_stmt", "set_exp", "set_func", "set_func_token",
- "set_func_exps", "set_exps", "assert_stmt", "assert_stmt_token",
- "free_stmt", "free_exps", "free_exp", "decl_vars", "reference", "byref", YY_NULLPTR
+ "return_stmt", "return_exp", "call_decl_vars", "set_stmt", "set_exp",
+ "set_func", "set_func_token", "set_func_exps", "set_exps", "assert_stmt",
+ "assert_stmt_token", "free_stmt", "free_exps", "free_exp", "reference",
+ "byref", YY_NULLPTR
};
#endif
-#define YYPACT_NINF -505
-#define YYTABLE_NINF -436
+#define YYPACT_NINF -717
+#define YYTABLE_NINF -626
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
static const short int yypact[] =
{
- 1189, -505, -505, -505, -505, -505, 21, -505, -505, 115,
- -505, -505, -505, -505, -505, -505, -505, -505, 1880, -505,
- -505, 506, 1908, 1680, 1680, 1680, 1353, 23, -41, 11,
- -505, 81, 1189, -505, -505, -505, -505, -505, 1558, -505,
- -505, -505, -505, -505, 45, 101, -505, -505, 49, 27,
- -505, -505, -505, -505, -505, -505, 71, -505, 73, -505,
- -505, -505, -505, -505, -505, 62, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- 1482, -505, 1680, 1680, 1680, 1984, 88, 595, -505, -505,
- -505, -505, -505, -505, -505, -505, 428, -505, -505, -505,
- -505, 92, 837, -11, -505, 1587, 1451, 1680, 1680, 93,
- 464, -505, 97, 1680, 100, 100, 41, 41, 104, -505,
- -505, 108, 118, -505, 62, 121, -505, -505, 117, 119,
- -505, 126, -505, -505, -505, 120, -505, 131, 1622, -505,
- 168, -505, 50, -505, -505, 45, -505, -505, 1935, 1680,
- 122, 1680, 123, 62, -505, -505, -505, -505, -505, 1935,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, 837, 837,
- 716, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, 1451, -505, -505, -505, -505, 1651, 1451, 138, 2209,
- -6, -505, -6, -505, -505, -505, -505, 136, 137, 137,
- 42, 42, 1529, 140, -505, 122, 145, 151, -505, 62,
- 120, -505, -505, -505, -505, -505, -505, 62, 2011, 1558,
- 54, -505, 146, 52, -505, 1558, 1073, 1558, 1680, 86,
- -505, -505, 132, -505, -505, -505, -505, -505, 1398, -505,
- 152, 1680, 57, -505, -505, 147, -505, 2055, 1680, -505,
- -505, 1451, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- 1451, 1451, 156, 1908, 1558, 1558, -505, -505, -505, -505,
- 62, -505, 19, 139, 28, 150, 1680, -505, 1622, 62,
- 1622, 120, 1777, 1398, 1680, -505, 160, 159, -505, 169,
- -505, -505, -505, 1238, -505, -505, -505, -505, -505, -505,
- 1398, -505, 2233, -505, 163, 161, -505, 173, 165, 180,
- 205, 48, -505, -505, 207, -505, -505, 2028, -505, 209,
- 120, 1804, 1680, -505, 211, 2209, 222, 224, 2160, -505,
- 229, 225, 1832, -505, -505, -505, 1680, -505, -505, -505,
- -505, -505, 228, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, 226, 85, -505, 11, -505, -505,
- 230, 1622, -505, 62, 231, -505, 2233, -505, 303, -505,
- 232, 2038, 233, 2082, -505, 1398, 1398, 1073, -505, 1558,
- -505, 11, 1558, -505, 1680, -505, -505, -505, -505, 234,
- -505, 237, 238, -505, -505, 1451, 1451, 241, 236, 248,
- -505, -505, 247, -505, 349, 246, 349, 242, -505, 120,
- 254, -505, 148, -505, -505, -505, -505, -505, -505, -505,
- -505, 256, 257, 2233, -505, -505, -505, -505, 258, 1314,
- 1398, -505, 2185, -505, -505, 260, 1558, -505, 98, -505,
- 120, 837, 1680, 2209, 2257, 265, 263, -505, -505, -505,
- 349, -505, 11, 19, -505, -505, -505, -505, -505, 266,
- 1398, 11, -505, -505, 1398, 955, 264, 271, -505, 1558,
- -505, -505, -505, 270, 277, -505, -8, -505, 11, 2135,
- 272, 2281, 274, -505, 276, -505, -505, -505, -505, 278,
- 279, 281, 1398, 303, 284, -505, 1073, 287, 285, 965,
- 2109, 160, -505, -505, -505, 286, 1314, -505, -505, 288,
- 291, 289, 295, -505, -505, 303, -505, -505, 349, 290,
- 1073, -505, -505, -505, -505
+ 713, -717, -717, -717, -717, -717, 54, -717, -717, -717,
+ 501, -717, -717, -717, 741, 1409, 7459, 7459, 7459, 120,
+ 26, 236, 23, -717, 5541, 1667, 71, 713, -717, -717,
+ -717, -717, -717, 6717, 597, -717, -717, -717, -717, 174,
+ 162, -717, -717, -717, -717, -40, -717, -717, 84, 64,
+ 87, -717, -717, -717, -717, 91, -717, 97, -717, -717,
+ -717, 7459, 7459, 7459, -717, 1667, -717, 79, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ 884, -717, -717, -717, -717, 123, 1010, 1010, 25, -717,
+ 1010, 6491, 7459, 7459, 1780, 125, -717, -717, -717, 129,
+ 7459, 141, 141, -717, -717, -717, 5474, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, 131, -717, -717,
+ 131, 128, -717, -717, -717, -717, -717, 158, -717, 155,
+ 1667, 152, 161, -717, 171, -717, 1893, 1409, -40, 152,
+ -717, -717, 27, 164, -717, -717, 168, 7459, 4, -717,
+ -717, -717, 222, -717, 73, -717, -717, -717, 199, -717,
+ 198, 207, 2006, 2006, 7459, 217, -717, -717, -717, 152,
+ 6943, 232, -717, 1519, -717, -717, -717, -717, -717, -717,
+ -717, -717, 1632, -717, -717, -717, -717, 1745, 1858, -717,
+ -717, -717, 1971, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, 2084, 2197, 2310, 2423, 2536,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, 2649, -717, 2762, 2875, 2988,
+ 3101, 3214, 3327, -717, 3440, -717, -717, 3553, 3666, 3779,
+ 3892, 4005, 4118, 4231, 4344, 4457, 4570, 4683, 4796, 4909,
+ 5022, 5135, 5248, -717, -717, -717, -717, -717, -717, -717,
+ 5361, 1010, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ 1010, -717, -717, -717, -717, -717, -717, -717, 80, 6491,
+ -717, -717, -717, -717, 7056, 6491, 201, 7588, -717, 139,
+ -717, 177, -717, -717, -717, -717, 241, 243, 243, 52,
+ 52, 245, -717, 152, 1262, -717, 217, 251, 264, 283,
+ -717, -717, -717, -717, 1376, -717, 253, 164, -717, -717,
+ -717, -717, -717, 311, -717, -717, 292, -717, 202, 6717,
+ -717, 287, 216, 290, -717, -717, 218, 285, 294, -717,
+ 6943, 6152, 6943, 7459, 6943, -717, -717, 43, -717, -717,
+ -717, -717, -717, 6378, -717, -717, 296, -717, 7459, -717,
+ -717, 299, 7588, 300, -717, -717, -717, -717, 567, 312,
+ -717, 6822, 7459, -717, -717, 6491, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, 6491, 6491, 314, 1497, 6943, 6943,
+ -717, -717, -717, -717, 5700, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -717, -717, 1136, -717, 56, 258, -717, -717,
+ -717, -717, -717, -717, -717, 5587, -717, -717, 6378, -717,
+ 7564, -717, -717, 309, 7169, -717, -717, -717, 68, 317,
+ 2006, 164, 291, 1667, 164, 297, 6378, 7459, 319, 318,
+ 320, 7612, 324, 323, -717, 328, 341, 326, 335, 112,
+ -717, 338, 340, -717, -717, -717, 6705, 6943, 7228, -717,
+ 253, 339, -717, -717, -717, 342, 7588, 345, 346, 7322,
+ -717, 348, 1780, 344, -717, -717, 6604, 408, 7459, 141,
+ 141, -717, -717, 176, -717, -717, 350, -717, 300, 7612,
+ -717, -717, -717, -717, -717, -717, -717, -717, 349, 233,
+ -717, 23, -717, -717, -717, 44, 70, 76, 6924, -717,
+ -717, 6378, 6378, -717, 253, 249, -717, 253, 255, -717,
+ 352, -717, -717, 353, 7612, -717, -717, 5813, -717, 6152,
+ -717, 6943, -717, 23, 6943, -717, 7459, 7341, -717, -717,
+ -717, -717, -717, 356, 357, -717, -717, -717, -717, 6491,
+ 6491, 363, -717, 51, 365, -717, 344, 243, 243, -717,
+ 284, 367, 284, 343, 6378, -717, 7540, -717, 7459, 2006,
+ -717, 6830, 164, 347, 164, 164, 192, 295, 237, 371,
+ 7612, -717, -717, -717, -717, 374, 6265, -717, 375, 6943,
+ 271, -717, 377, 296, 387, 1010, 7400, 7588, 7636, 397,
+ 388, 392, 6943, 395, 365, 6943, 6943, -717, 284, -717,
+ 23, 5700, -717, 6378, 396, 399, -717, -717, 400, -717,
+ -717, 371, -717, -717, -717, 7341, -717, 406, 6378, 23,
+ -717, 5926, 407, 411, -717, 331, -717, -717, -717, 410,
+ 404, 419, 344, 414, -717, 418, -717, 40, -717, 7660,
+ 425, 427, 164, 428, 23, 7160, 424, 435, -717, 436,
+ -717, -717, 104, -717, 439, 440, -717, 6943, -717, 451,
+ 2006, 449, -717, 385, 453, 6378, 5813, 454, -717, 6152,
+ -717, -717, 456, 461, 464, 344, 458, 463, 2006, 459,
+ 6039, 7047, 318, -717, -717, -717, 465, 6265, -717, -717,
+ 466, 468, -717, 462, 469, 471, 481, 482, 480, -717,
+ -717, 5813, -717, 494, -717, 284, 489, 164, 23, 492,
+ 6152, -717, 493, -717, 2006, -717, 490, -717, -717, -717,
+ 495, 6039, 164, 499, -717, 500, -717
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
means the default is an error. */
static const unsigned short int yydefact[] =
{
- 155, 268, 265, 269, 263, 264, 266, 252, 253, 0,
- 255, 256, 257, 258, 259, 260, 261, 262, 251, 160,
- 159, 0, 0, 0, 0, 333, 0, 0, 0, 435,
- 161, 0, 156, 157, 163, 162, 164, 166, 341, 242,
- 244, 243, 249, 250, 272, 282, 248, 165, 0, 0,
- 291, 290, 296, 168, 167, 169, 0, 170, 0, 267,
- 254, 39, 33, 31, 24, 341, 343, 38, 37, 35,
- 36, 32, 30, 28, 27, 25, 26, 34, 29, 297,
- 0, 251, 0, 0, 0, 0, 0, 203, 182, 183,
- 194, 191, 192, 189, 195, 190, 0, 193, 184, 185,
- 186, 0, 203, 0, 175, 0, 0, 333, 333, 0,
- 341, 236, 235, 0, 337, 337, 245, 246, 247, 330,
- 223, 269, 252, 226, 0, 0, 222, 241, 0, 0,
- 437, 0, 436, 1, 158, 339, 302, 0, 342, 273,
- 277, 275, 279, 270, 283, 272, 271, 285, 298, 0,
- 0, 0, 342, 341, 344, 304, 245, 246, 247, 298,
- 73, 40, 41, 42, 43, 44, 45, 46, 47, 48,
- 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
- 69, 70, 71, 72, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
- 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
- 100, 101, 102, 103, 104, 105, 106, 107, 110, 180,
- 108, 109, 111, 112, 113, 114, 115, 116, 117, 118,
+ 277, 396, 393, 397, 391, 392, 394, 388, 389, 387,
+ 386, 378, 282, 281, 0, 0, 0, 0, 500, 377,
+ 0, 0, 625, 283, 0, 0, 0, 278, 279, 285,
+ 284, 286, 290, 517, 0, 374, 380, 379, 385, 400,
+ 412, 384, 287, 288, 289, 417, 435, 437, 438, 0,
+ 0, 449, 292, 291, 293, 0, 294, 0, 395, 390,
+ 386, 0, 0, 0, 377, 0, 436, 422, 296, 307,
+ 304, 306, 308, 309, 320, 317, 318, 315, 321, 316,
+ 0, 319, 310, 311, 312, 0, 332, 332, 0, 300,
+ 0, 0, 500, 500, 0, 0, 360, 365, 458, 364,
+ 0, 508, 508, 33, 34, 613, 574, 24, 39, 38,
+ 37, 35, 36, 32, 31, 25, 29, 28, 26, 27,
+ 40, 582, 581, 579, 577, 578, 580, 576, 575, 583,
+ 30, 611, 609, 608, 610, 607, 606, 381, 41, 42,
+ 382, 383, 497, 541, 542, 543, 544, 0, 538, 0,
+ 0, 0, 0, 627, 0, 626, 386, 0, 417, 0,
+ 1, 280, 523, 510, 376, 459, 0, 518, 519, 521,
+ 375, 402, 406, 404, 408, 401, 398, 413, 400, 399,
+ 0, 0, 450, 450, 0, 0, 381, 382, 383, 0,
+ 0, 0, 68, 43, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 158, 159,
+ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
+ 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
+ 99, 100, 101, 102, 108, 106, 107, 105, 103, 104,
+ 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
- 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
- 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
- 149, 150, 151, 152, 153, 154, 205, 181, 204, 203,
- 203, 178, 172, 173, 187, 188, 174, 177, 176, 213,
- 214, 0, 22, 23, 20, 21, 0, 0, 215, 179,
- 245, 332, 246, 331, 234, 240, 237, 0, 0, 0,
- 0, 0, 0, 0, 171, 0, 0, 0, 306, 341,
- 339, 278, 274, 280, 281, 276, 284, 299, 0, 0,
- 0, 300, 318, 0, 316, 0, 435, 0, 0, 0,
- 427, 428, 0, 365, 368, 367, 369, 370, 0, 371,
- 0, 0, 0, 206, 198, 0, 197, 0, 0, 211,
- 208, 217, 2, 3, 4, 5, 6, 7, 8, 9,
- 10, 11, 13, 12, 14, 15, 16, 17, 18, 19,
- 0, 0, 0, 0, 0, 0, 309, 308, 310, 307,
- 341, 303, 227, 0, 0, 0, 0, 305, 0, 0,
- 0, 339, 0, 0, 0, 315, 0, 0, 421, 31,
- 327, 326, 328, 0, 419, 417, 416, 418, 415, 414,
- 0, 329, 410, 320, 0, 0, 409, 0, 0, 0,
- 0, 0, 430, 420, 0, 345, 366, 0, 295, 0,
- 339, 0, 199, 207, 0, 219, 0, 218, 0, 209,
- 0, 335, 0, 312, 239, 238, 0, 229, 231, 232,
- 230, 233, 0, 228, 346, 358, 359, 360, 361, 357,
- 362, 363, 364, 356, 0, 0, 350, 435, 355, 340,
- 0, 0, 286, 0, 0, 301, 319, 317, 0, 372,
- 24, 0, 0, 0, 324, 0, 0, 435, 408, 0,
- 354, 435, 0, 429, 0, 407, 426, 294, 288, 0,
- 201, 0, 200, 212, 216, 0, 0, 0, 0, 0,
- 311, 313, 0, 221, 0, 0, 0, 352, 292, 339,
- 31, 377, 30, 395, 394, 392, 390, 391, 393, 389,
- 388, 34, 29, 381, 382, 378, 379, 380, 0, 0,
- 0, 322, 0, 323, 411, 422, 0, 433, 0, 431,
- 339, 203, 0, 220, 210, 0, 0, 314, 293, 347,
- 0, 351, 435, 227, 287, 401, 387, 396, 402, 0,
- 0, 435, 383, 321, 0, 435, 0, 0, 432, 0,
- 289, 196, 202, 0, 0, 348, 0, 353, 435, 0,
- 397, 325, 0, 424, 423, 412, 373, 434, 338, 0,
- 0, 0, 0, 0, 0, 413, 435, 0, 0, 403,
- 0, 329, 399, 376, 374, 398, 0, 386, 425, 0,
- 0, 0, 404, 405, 384, 0, 375, 336, 0, 0,
- 435, 400, 349, 385, 406
+ 129, 130, 131, 132, 160, 133, 134, 135, 136, 137,
+ 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
+ 148, 149, 150, 151, 152, 156, 153, 154, 155, 157,
+ 0, 332, 302, 297, 43, 52, 57, 58, 62, 106,
+ 107, 105, 103, 104, 124, 126, 127, 128, 129, 130,
+ 131, 160, 135, 136, 137, 138, 139, 140, 141, 142,
+ 143, 144, 145, 146, 147, 148, 149, 150, 334, 305,
+ 333, 298, 313, 314, 299, 301, 342, 343, 0, 0,
+ 22, 23, 20, 21, 0, 0, 345, 303, 344, 381,
+ 499, 382, 498, 361, 358, 366, 0, 0, 0, 0,
+ 0, 0, 295, 0, 0, 426, 0, 0, 0, 0,
+ 428, 526, 525, 524, 513, 461, 517, 510, 520, 522,
+ 407, 403, 409, 410, 405, 414, 0, 415, 387, 517,
+ 455, 0, 0, 452, 453, 456, 0, 476, 502, 474,
+ 0, 625, 0, 0, 0, 619, 620, 0, 550, 553,
+ 552, 554, 555, 0, 556, 429, 423, 424, 0, 421,
+ 419, 0, 324, 325, 322, 335, 496, 495, 0, 0,
+ 491, 0, 0, 340, 337, 347, 2, 3, 4, 5,
+ 6, 7, 8, 9, 10, 11, 13, 12, 14, 15,
+ 16, 17, 18, 19, 0, 0, 0, 0, 0, 0,
+ 464, 463, 465, 462, 0, 427, 186, 161, 162, 163,
+ 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
+ 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
+ 184, 185, 274, 275, 187, 188, 189, 190, 191, 192,
+ 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 216, 217, 218, 224, 222, 223, 221,
+ 219, 220, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 247, 248, 276, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 272, 269, 270,
+ 271, 273, 433, 434, 0, 431, 0, 0, 359, 416,
+ 487, 485, 484, 486, 515, 0, 516, 514, 0, 488,
+ 0, 478, 489, 0, 0, 518, 460, 411, 0, 457,
+ 450, 510, 0, 0, 510, 0, 0, 503, 0, 0,
+ 0, 602, 0, 0, 601, 42, 0, 0, 0, 0,
+ 622, 0, 0, 596, 527, 551, 0, 0, 326, 420,
+ 517, 0, 492, 494, 336, 0, 349, 0, 348, 0,
+ 338, 0, 0, 504, 369, 362, 370, 0, 371, 508,
+ 508, 368, 367, 487, 356, 357, 0, 352, 354, 353,
+ 430, 432, 528, 546, 547, 548, 549, 545, 0, 0,
+ 532, 625, 537, 539, 540, 613, 24, 0, 0, 482,
+ 512, 0, 0, 511, 517, 0, 418, 517, 0, 441,
+ 0, 454, 439, 0, 477, 475, 473, 0, 557, 625,
+ 600, 0, 536, 625, 0, 621, 0, 597, 594, 618,
+ 425, 327, 330, 0, 328, 493, 490, 341, 346, 0,
+ 0, 0, 363, 0, 469, 466, 504, 0, 0, 351,
+ 0, 0, 0, 534, 0, 480, 0, 481, 0, 450,
+ 447, 0, 510, 0, 510, 510, 487, 0, 31, 30,
+ 563, 568, 564, 566, 567, 41, 0, 603, 614, 0,
+ 0, 623, 613, 599, 0, 332, 0, 350, 339, 0,
+ 505, 0, 0, 0, 469, 373, 372, 529, 0, 533,
+ 625, 0, 479, 0, 0, 0, 448, 445, 0, 442,
+ 440, 0, 565, 588, 574, 597, 589, 0, 0, 625,
+ 569, 625, 0, 0, 624, 0, 323, 329, 331, 0,
+ 0, 0, 504, 470, 467, 0, 530, 0, 535, 483,
+ 0, 0, 510, 0, 625, 0, 584, 0, 616, 615,
+ 604, 558, 0, 509, 0, 0, 471, 0, 468, 0,
+ 450, 0, 446, 0, 0, 0, 0, 0, 605, 625,
+ 612, 595, 0, 0, 0, 504, 0, 0, 450, 0,
+ 590, 0, 488, 586, 561, 559, 585, 0, 573, 617,
+ 0, 0, 472, 0, 0, 0, 0, 0, 591, 592,
+ 570, 0, 560, 0, 506, 0, 0, 510, 625, 0,
+ 625, 587, 0, 531, 450, 443, 0, 571, 593, 507,
+ 0, 590, 510, 0, 444, 0, 572
};
/* YYPGOTO[NTERM-NUM]. */
static const short int yypgoto[] =
{
- -505, -289, -98, -7, 39, -505, -505, 293, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -99, -505, -270, -505, -505, -505, -505, -505, -236, -505,
- -505, 318, 7, -21, -505, -505, -505, 235, 297, -505,
- -505, 198, -505, -505, -505, -505, 26, 330, -505, -505,
- 190, -16, -38, -505, -505, 60, -141, -505, -102, 37,
- -505, -44, -333, -505, -505, -505, -505, 65, -505, 5,
- -311, -51, -5, -505, 340, -505, -154, -458, -504, -505,
- 64, -330, -505, -255, -475, 46, -505, -505, -505, -150,
- -505, -505, -505, -505, -505, -505, -505, -469, 44, -505,
- -505, -505, -505, -505, -505, -505, -120, -505, -28, -477
+ -717, -334, -81, -2, -58, -717, -717, -717, 507, -717,
+ -717, -717, -717, -717, -717, -717, -717, -717, -717, -717,
+ -717, -717, -84, -717, -284, -717, -717, -717, -276, -717,
+ -717, 370, -141, 35, -135, -174, -22, -14, -717, -717,
+ -717, 502, -717, -717, 361, -717, -717, -717, -717, 382,
+ -261, -717, -717, -177, -717, -121, -717, -63, 520, 37,
+ 3, 45, -717, -717, -717, -717, -179, -717, -88, -10,
+ -32, -717, -717, 166, -350, -717, -257, -717, 7, -717,
+ -89, -359, -717, -79, -717, 101, -717, -440, -438, 214,
+ -717, -708, -83, -374, -717, -367, -27, -717, 383, -717,
+ -717, 529, -717, -209, -670, -716, -717, -717, 535, -717,
+ 169, -384, -717, -355, -686, 148, -208, -717, -717, -691,
+ -717, -717, -319, -352, -717, -717, -717, -245, -717, -396,
+ -407, -400, -717, -717, -717, -717, -717, -717, -155, -20,
+ -687
};
/* YYDEFGOTO[NTERM-NUM]. */
static const short int yydefgoto[] =
{
- -1, 496, 420, 135, 276, 31, 32, 33, 34, 35,
- 101, 102, 103, 286, 104, 105, 106, 281, 511, 512,
- 277, 278, 299, 446, 447, 36, 125, 126, 462, 463,
- 37, 451, 329, 39, 40, 41, 42, 43, 44, 45,
- 46, 143, 322, 325, 146, 47, 111, 49, 50, 51,
- 330, 52, 421, 53, 54, 387, 388, 452, 453, 113,
- 333, 334, 422, 423, 56, 114, 115, 119, 519, 308,
- 318, 137, 400, 57, 58, 475, 476, 424, 477, 478,
- 342, 343, 344, 622, 623, 624, 545, 546, 547, 548,
- 614, 625, 579, 631, 632, 345, 346, 425, 426, 427,
- 586, 604, 347, 348, 349, 431, 432, 558, 428, 132
+ -1, 712, 618, 163, 348, 602, 26, 27, 28, 29,
+ 30, 85, 86, 87, 88, 354, 89, 90, 91, 312,
+ 743, 744, 349, 350, 367, 667, 668, 31, 686, 687,
+ 32, 95, 673, 674, 675, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, 176, 401, 404, 179, 42, 181,
+ 688, 43, 191, 793, 44, 603, 604, 605, 45, 46,
+ 47, 98, 410, 49, 411, 50, 412, 413, 414, 51,
+ 619, 52, 53, 481, 482, 677, 803, 843, 100, 418,
+ 419, 641, 621, 622, 661, 450, 55, 101, 102, 142,
+ 638, 754, 377, 395, 623, 166, 438, 168, 169, 393,
+ 56, 57, 699, 700, 642, 701, 147, 702, 703, 704,
+ 427, 428, 429, 893, 894, 895, 782, 783, 784, 138,
+ 877, 896, 827, 907, 908, 430, 652, 794, 431, 909,
+ 644, 139, 832, 859, 432, 433, 434, 649, 650, 646,
+ 155
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
number is the opposite. If YYTABLE_NINF, syntax error. */
static const short int yytable[] =
{
- 136, 131, 79, 283, 80, 127, 112, 38, 297, 397,
- 381, 549, 436, 544, 151, 437, 116, 117, 118, 527,
- 569, 357, 572, 284, 500, 38, 48, 360, 554, 110,
- 59, 465, 60, 138, 466, -334, -334, 55, 467, 38,
- 468, 469, 470, 471, 472, 473, 457, 458, 459, 139,
- 140, 141, 460, 461, 142, 29, 323, 128, 48, 324,
- 152, 130, 610, 436, 127, 148, 595, 474, 381, 55,
- 486, 381, 136, 155, 582, 156, 157, 158, -337, 386,
- 493, 133, 307, -337, 383, 503, 147, 494, 504, 280,
- 482, 445, 404, 401, 402, 405, 440, 441, 288, 298,
- 300, 302, 351, 408, 433, 138, 306, 144, 4, 5,
- 448, 449, 285, 149, 527, 150, 603, 66, 61, 312,
- 309, 310, 311, 600, 525, 526, 159, 62, 282, 508,
- 304, 320, 331, 63, 642, -296, 626, 588, 589, -224,
- 611, 307, 332, 331, 350, 64, -334, 628, 152, -225,
- 633, 636, 313, 65, 314, 543, 381, 316, 626, 381,
- 381, 315, 552, 553, 317, 575, 576, 384, 385, 319,
- 66, 644, 301, 303, 321, 435, 361, 382, 154, 383,
- 354, 356, 464, 394, 395, 442, 392, 67, 68, 69,
- 70, 438, 403, 297, 450, 479, 489, 500, 498, 297,
- 414, 415, 416, 417, 418, 419, 488, -420, 71, 497,
- 72, 499, 73, 74, 75, 76, 543, 583, 574, 335,
- 336, 337, 338, 339, 340, 341, 501, 77, 78, 335,
- 336, 337, 338, 339, 340, 341, 335, 336, 337, 338,
- 339, 340, 341, 502, 505, 563, 564, 599, 507, 590,
- 513, 601, 533, 534, 535, 536, 537, 538, 539, 540,
- 577, 514, 517, 297, 515, 523, 518, 524, 396, 528,
- 529, -24, 550, 560, 381, 381, 561, 566, 562, 620,
- 543, 565, 297, 297, 298, 567, 568, 570, 573, 359,
- 298, 136, -387, 543, -396, 580, 581, 406, 593, 429,
- 585, 594, 543, 605, 598, 391, 61, 127, 606, 608,
- 609, 618, 613, 615, 152, 62, 616, 353, 617, 619,
- 629, 530, 398, 627, 630, 134, 635, 637, 639, 643,
- 531, 430, 638, 64, 410, 640, 411, 597, 412, 456,
- 109, 413, 145, 326, 439, 305, 454, 455, 86, 352,
- 521, 444, 465, 130, 298, 466, 292, 293, 66, 467,
- 487, 468, 469, 470, 471, 472, 473, 112, 129, 294,
- 295, 389, 571, 298, 298, 67, 68, 69, 70, 393,
- 641, 407, 578, 434, 559, 152, 485, 0, 0, 480,
- 110, 155, 0, 320, 481, 0, 71, 332, 532, 0,
- 73, 74, 75, 76, 0, 0, 0, 533, 534, 535,
- 536, 537, 538, 539, 540, 541, 542, 297, 297, 0,
- 492, 0, 0, 0, 0, 485, 0, 0, 0, 0,
- 0, 61, 0, 0, 0, 510, 112, 0, 0, 0,
- 62, 0, 0, 0, 0, 0, 63, 0, 0, 522,
- 0, 0, 0, 0, 0, 279, 0, 0, 64, 110,
- 0, 555, 591, 0, 557, 0, 0, 61, 0, 0,
- 127, 0, 0, 556, 391, 0, 62, 0, 398, 0,
- 0, 0, 63, 10, 11, 12, 13, 14, 15, 16,
- 17, 0, 0, 0, 64, 0, 0, 430, 0, 0,
- 67, 68, 69, 70, 0, 0, 0, 0, 298, 298,
- 0, 0, 0, 0, 0, 0, 0, 0, 587, 66,
- 0, 71, 0, 72, 0, 73, 74, 75, 76, 0,
- 0, 0, 0, 0, 0, 0, 67, 68, 69, 70,
- 77, 78, 0, 0, 596, 0, 0, 0, 0, 0,
- 0, 607, 0, 0, 0, 592, 0, 71, 0, 72,
- 0, 73, 74, 75, 76, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 621, 77, 78, 87, 0,
- 88, 89, 90, 91, 92, 93, 94, 95, 96, 0,
- 97, 98, 99, 100, 0, 160, 0, 621, 161, 162,
- 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
- 173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
- 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
- 193, 0, 194, 195, 196, 197, 198, 199, 200, 201,
- 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
- 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
- 222, 223, 224, 225, 226, 227, 228, 0, 229, 230,
- 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
- 0, 241, 0, 242, 243, 244, 245, 246, 247, 248,
- 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
- 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
- 269, 270, 271, 272, 273, 274, 160, 0, 275, 161,
- 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
- 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
- 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
- 192, 193, 0, 194, 195, 196, 197, 198, 199, 200,
- 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
- 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
- 221, 222, 223, 224, 225, 226, 227, 228, 0, 0,
- 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
- 240, 0, 241, 0, 242, 243, 244, 245, 246, 247,
- 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
- 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
- 268, 269, 270, 271, 272, 273, 274, 160, 355, 275,
- 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
- 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
- 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
- 191, 192, 193, 0, 194, 195, 196, 197, 198, 199,
- 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
- 210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
- 220, 221, 222, 223, 224, 225, 226, 227, 228, 0,
- 0, 230, 231, 232, 233, 234, 235, 236, 237, 238,
- 239, 240, 0, 241, 0, 242, 243, 244, 245, 246,
- 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
- 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
- 267, 268, 269, 270, 271, 272, 273, 274, 61, 0,
- 275, 0, 0, 0, 0, 0, 0, 62, 61, 0,
- 0, 0, 408, 409, 0, 0, 0, 62, 0, 0,
- 0, 0, 408, 409, 0, 64, 410, 0, 411, 0,
- 412, 0, 0, 413, 0, 64, 410, -435, 411, 0,
- 412, 0, 0, 413, 0, 130, 0, 0, 292, 293,
- 66, 0, 0, 0, 0, 130, 0, 0, 292, 293,
- 66, 294, 295, 0, 0, 602, 0, 67, 68, 69,
- 70, 294, 295, 0, 0, 0, 0, 67, 68, 69,
- 70, 0, 0, 0, 0, 0, 0, 0, 71, 0,
- 72, 0, 73, 74, 75, 76, 0, 0, 71, 0,
- 72, 0, 73, 74, 75, 76, 0, 77, 78, 414,
- 415, 416, 417, 418, 419, 0, 61, 77, 78, 414,
- 415, 416, 417, 418, 419, 62, 0, 0, 0, 0,
- 408, 409, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 64, 410, 0, 411, 0, 412, 0,
- 0, 413, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 130, 0, 0, 292, 293, 66, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 294,
- 295, 0, 0, 0, 0, 67, 68, 69, 70, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 71, 0, 72, 0,
- 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 77, 78, 414, 415, 416,
- 417, 418, 419, 1, 2, 3, 4, 5, 6, 7,
- 8, 0, 0, 0, 0, 0, 9, 0, 10, 11,
- 12, 13, 14, 15, 16, 17, 0, 0, 0, 18,
- 0, 0, 0, 0, 0, 19, 20, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 21, 0, 0, 0,
- 0, 61, 1, 2, 3, 4, 5, 6, 7, 8,
- 62, 0, 0, 0, 0, 0, 63, 10, 11, 12,
- 13, 14, 15, 16, 17, 0, 0, 0, 490, 410,
- 0, 411, 0, 412, 0, 0, 413, 22, 23, 24,
- 25, 26, 27, 28, 0, 29, 0, 0, 0, 0,
- 0, 292, 293, 66, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 294, 295, 0, 0, 0, 30,
- 67, 68, 69, 70, 0, 0, 0, 61, 0, 0,
- 0, 0, 0, 0, 0, 0, 62, 82, 83, 84,
- 491, 71, 530, 72, 0, 73, 74, 75, 76, 0,
- 0, 531, 0, 0, 64, 410, 0, 411, 0, 412,
- 77, 78, 413, 0, 0, 0, 120, 1, 2, 121,
- 4, 5, 6, 122, 8, 123, 0, 292, 293, 66,
- 124, 0, 10, 11, 12, 13, 14, 15, 16, 17,
- 294, 295, 0, 81, 0, 0, 67, 68, 69, 70,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 61, 0, 0, 0, 0, 0, 71, 0, 532,
- 62, 73, 74, 75, 76, 0, 63, 0, 533, 534,
- 535, 536, 537, 538, 539, 540, 541, 542, 64, 410,
- 0, 411, 0, 412, 0, 0, 413, 0, 0, 0,
- 0, 0, 82, 83, 84, 0, 0, 0, 0, 0,
- 0, 292, 293, 66, 61, 0, 0, 0, 0, 0,
- 0, 0, 0, 62, 294, 295, 0, 0, 0, 63,
- 67, 68, 69, 70, 0, 0, 0, 0, 0, 0,
- 0, 64, 0, 0, 289, 61, 290, 0, 0, 291,
- 0, 71, 0, 72, 62, 73, 74, 75, 76, 0,
- 63, 0, 0, 0, 292, 293, 0, 0, 0, 0,
- 77, 78, 64, 0, 0, 0, 0, 294, 295, 0,
- 153, 0, 0, 67, 68, 69, 70, 0, 0, 0,
- 0, 0, 61, 0, 296, 0, 0, 154, 0, 0,
- 0, 62, 0, 0, 71, 0, 72, 63, 73, 74,
- 75, 76, 0, 0, 67, 68, 69, 70, 0, 64,
- 0, 61, 0, 77, 78, 0, 0, 390, 0, 0,
- 62, 0, 0, 0, 0, 71, 63, 72, 0, 73,
- 74, 75, 76, 0, 154, 0, 0, 0, 64, 0,
- 61, 0, 0, 0, 77, 78, 0, 0, 0, 62,
- 0, 67, 68, 69, 70, 63, 0, 0, 0, 0,
- 0, 0, 0, 66, 287, 0, 0, 64, 0, 0,
- 0, 0, 71, 0, 72, 61, 73, 74, 75, 76,
- 67, 68, 69, 70, 62, 0, 0, 0, 0, 0,
- 63, 77, 78, 0, 0, 0, 0, 0, 0, 0,
- 0, 71, 64, 72, 61, 73, 74, 75, 76, 67,
- 68, 69, 70, 62, 0, 0, 0, 0, 0, 63,
- 77, 78, 0, 0, 0, 0, 0, 154, 0, 0,
- 71, 64, 72, 61, 73, 74, 75, 76, 0, 358,
- 0, 0, 62, 0, 67, 68, 69, 70, 63, 77,
- 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 64, 0, 0, 0, 0, 71, 0, 72, 0, 73,
- 74, 75, 76, 67, 68, 69, 70, 0, 0, 0,
- 0, 0, 0, 0, 77, 78, 0, 0, 0, 0,
- 0, 0, 0, 0, 71, 0, 72, 0, 73, 74,
- 75, 76, 67, 68, 69, 70, 0, 0, 0, 0,
- 0, 0, 0, 77, 78, 0, 0, 0, 0, 0,
- 0, 0, 0, 71, 0, 72, 0, 73, 74, 75,
- 76, 1, 2, 3, 4, 5, 6, 7, 8, 0,
- 0, 0, 77, 78, 483, 0, 10, 11, 12, 13,
- 14, 15, 16, 17, 0, 0, 0, 81, 1, 2,
- 3, 4, 5, 6, 7, 8, 0, 0, 0, 0,
- 0, 483, 0, 10, 11, 12, 13, 14, 15, 16,
- 17, 0, 0, 0, 81, 0, 1, 2, 3, 4,
- 5, 6, 7, 8, 0, 0, 0, 484, 0, 9,
- 0, 10, 11, 12, 13, 14, 15, 16, 17, 0,
- 0, 0, 18, 0, 0, 0, 82, 83, 84, 328,
- 0, 0, 0, 0, 509, 520, 0, 0, 0, 0,
+ 67, 165, 154, 351, 416, 99, 167, 54, 409, 409,
+ 365, 164, 368, 436, 137, 140, 141, 653, 97, 378,
+ 170, 645, 311, 626, 645, 643, 442, 478, 479, 624,
+ 385, 763, 355, 475, 54, 620, 785, 679, 390, 680,
+ 786, 781, 629, 655, 807, 48, 810, 66, 804, 443,
+ 96, 352, 149, 162, 379, 48, 391, 380, 151, 186,
+ 187, 188, 159, 58, 732, 59, 48, 153, 435, 48,
+ 48, 160, 48, -387, 656, 451, 800, -387, 310, 402,
+ 654, 454, 403, 480, 99, 180, 801, 826, 477, 366,
+ 369, 371, 846, 692, 659, 785, 182, 97, 375, -386,
+ 830, 716, 189, -24, 869, 11, 446, 447, 475, 764,
+ 48, -449, 448, 190, 392, -438, -458, 475, -458, 183,
+ 475, 105, 880, 143, 449, 689, 144, 184, 398, 373,
+ 145, -387, 146, 185, 866, 420, 421, 422, 423, 424,
+ 763, 425, 426, 735, 353, 628, 736, 99, 420, 421,
+ 422, 423, 424, 313, 425, 426, 374, -386, 437, 856,
+ 97, -449, -508, 64, -501, 397, 376, -508, 177, 4,
+ 5, 666, 415, 415, -381, -501, 376, 902, 171, 172,
+ 173, 381, 417, 174, 874, 785, 382, 383, 384, 897,
+ 669, 670, 96, 66, 387, 48, 175, 386, 826, 923,
+ 396, 48, 394, 171, 172, 173, 785, -355, 174, -355,
+ -355, 912, -382, -501, 131, 132, 133, 134, 135, 136,
+ 785, 175, 655, -487, 897, -487, -487, 444, 400, 365,
+ 406, 368, 679, 455, 680, -387, -387, 679, 407, 680,
+ 1, 2, 3, 4, 5, 6, 7, 8, 926, 631,
+ 632, 634, 635, 9, 823, 824, 708, 719, 60, 709,
+ 722, 143, 485, 439, 144, 11, 761, 762, 145, 825,
+ 146, 693, 694, 695, 696, 697, 476, 724, 365, 477,
+ 368, 769, 770, 607, 365, 484, 368, 143, 772, 773,
+ 144, 698, 445, 745, 145, 608, 146, 693, 694, 695,
+ 696, 697, 162, 676, 834, 657, 370, 372, 366, 420,
+ 421, 422, 423, 424, 609, 425, 426, 627, 440, 630,
+ 61, 62, 63, 64, 633, 636, 659, 22, 637, 645,
+ 657, 658, 475, 787, 663, 475, 475, 121, 122, 123,
+ 124, 125, 126, 127, 128, 129, 671, 768, 713, 717,
+ 771, 728, 766, 767, 730, 720, 726, 366, 727, 150,
+ 731, 723, 453, 366, 729, 732, 733, 734, 780, 625,
+ 737, 738, 746, 751, 365, 747, 368, 165, 748, 753,
+ 749, 759, 167, 811, 760, 774, 775, 164, 639, 795,
+ 647, 796, 651, 365, 365, 368, 368, 799, 817, 802,
+ 819, 820, 808, 828, 821, 812, 829, 805, 806, 831,
+ -598, 818, 1, 2, 3, 4, 5, 6, 7, 8,
+ 835, 648, 839, 840, 841, 9, 844, 780, 862, 850,
+ 60, 645, 851, 852, 660, 858, 397, 11, 854, 864,
+ 860, 707, 861, 863, 865, 755, 681, 682, 867, 868,
+ 665, 718, 689, 366, 849, 881, 409, 870, 876, 409,
+ 871, 873, 882, 475, 475, 797, 798, 99, 878, 855,
+ 879, 883, 366, 366, 884, 886, 823, 824, 872, 645,
+ 97, 888, 889, 899, 678, 890, 900, 898, 731, 901,
+ 645, 903, 92, 93, 18, 64, 904, 915, 676, 911,
+ 913, 914, 916, 676, 917, 1, 2, 3, 4, 5,
+ 6, 7, 8, 918, 920, 919, 891, 780, 9, 922,
+ 645, 924, 931, 60, 928, 927, 929, 388, 932, 672,
+ 11, 645, 935, 936, 161, 848, 756, 752, 780, 405,
+ 389, 691, 178, 925, 158, 721, 483, 845, 725, 662,
+ 152, 399, 780, 809, 148, 606, 921, 790, 934, 121,
+ 122, 123, 124, 125, 126, 127, 128, 129, 640, 822,
+ 906, 1, 2, 3, 4, 5, 6, 7, 8, 933,
+ 853, 791, 0, 0, 9, 61, 62, 63, 64, 60,
+ 815, 0, 0, 446, 447, 409, 757, 758, 0, 0,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 0,
+ 0, 449, 0, 0, 9, 0, 0, 0, 0, 60,
+ 415, 0, 715, 415, 65, 740, 0, 0, 0, 0,
+ 0, 0, 0, 625, 0, 417, 0, 0, 0, 0,
+ 0, 0, 0, 0, 165, 0, 0, 0, 0, 167,
+ 0, 61, 62, 63, 164, 0, 742, 0, 0, 0,
+ 0, 0, 99, 0, 0, 0, 0, 99, 365, 365,
+ 368, 368, 0, 0, 0, 97, 375, 0, 0, 678,
+ 97, 61, 62, 63, 678, 164, 0, 625, 0, 0,
+ 625, 887, 0, 0, 0, 0, 409, 0, 0, 788,
+ 0, 0, 437, 0, 0, 437, 0, 0, 0, 905,
+ 0, 836, 0, 789, 409, 0, 0, 1, 2, 3,
+ 4, 5, 6, 7, 8, 0, 0, 0, 0, 0,
+ 9, 0, 0, 0, 648, 10, 0, 0, 0, 0,
+ 0, 0, 11, 12, 13, 930, 0, 366, 366, 0,
+ 409, 0, 0, 0, 14, 0, 0, 833, 0, 415,
+ 0, 0, 0, 0, 0, 0, 814, 0, 0, 715,
+ 842, 68, 0, 681, 682, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 847, 0, 0, 437, 838, 0, 15, 16, 17, 18,
+ 19, 20, 21, 0, 22, 0, 0, 69, 70, 71,
+ 72, 73, 74, 75, 76, 77, 78, 79, 80, 0,
+ 81, 82, 83, 84, 0, 0, 0, 0, 0, 23,
+ 0, 0, 0, 0, 24, 885, 25, 0, 0, 0,
+ 0, 0, 0, 0, 892, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 415, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 415, 892,
+ 0, 0, 0, 0, 192, 0, 0, 193, 194, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 216, 217, 218, 219, 415, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 0, 269, 0, 270, 271, 272,
+ 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 0, 305, 306, 307, 308, 309,
+ 192, 0, 0, 314, 194, 195, 196, 197, 198, 199,
+ 200, 201, 315, 203, 204, 205, 206, 316, 317, 209,
+ 210, 211, 318, 213, 214, 215, 216, 217, 218, 219,
+ 0, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
+ 249, 250, 251, 252, 253, 254, 319, 320, 321, 322,
+ 323, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 0, 269, 0, 270, 271, 272, 273, 274, 324, 276,
+ 325, 326, 327, 328, 329, 330, 283, 331, 285, 286,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 303, 0, 0, 304,
+ 0, 305, 306, 307, 308, 309, 486, 0, 0, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 0, 514, 515, 516,
+ 517, 518, 384, 690, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 0, 561, 0, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 0, 0, 596, 0, 597, 598, 599,
+ 600, 601, 486, 0, 0, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 0, 514, 515, 516, 517, 518, 384, 0,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 0, 561, 0, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 103,
+ 0, 596, 0, 597, 598, 599, 600, 601, 104, 0,
+ 0, 0, 0, 105, 106, 610, 0, 0, 107, 611,
+ 0, 612, 0, 613, 358, 614, 0, 0, 615, 0,
+ 0, 0, 0, 1, 2, 3, 4, 5, 6, 7,
+ 8, 0, 0, 360, 361, 162, 9, 0, 0, 0,
+ 0, 60, 0, 0, 0, 0, 362, 363, 11, 0,
+ 0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 616, 113, 0, 114, 115, 116, 117,
+ 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 0, 92, 93, 18, 64, 0, 0, 0,
+ 617, 1, 2, 3, 4, 5, 6, 7, 8, 0,
+ 0, 0, 0, 0, 9, 0, 0, 0, 0, 60,
+ 0, 0, -33, 0, 0, 0, 11, 0, 0, 0,
+ 94, -33, 0, 0, 0, 0, -33, -33, 0, 0,
+ 0, -33, 0, 0, -33, -33, -33, -33, 0, 0,
+ 0, -33, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -33, -33, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -33,
+ -33, 92, 93, 18, 64, -33, -33, -33, -33, -33,
+ 0, 0, 0, 0, 0, 0, 0, -33, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -33, 0, -33,
+ -33, -33, -33, -33, -33, 0, -33, 0, 672, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -34, 0, -33, 0, 0,
+ 0, 0, 0, 0, -34, 0, 0, 0, 0, -34,
+ -34, 0, 0, 0, -34, 0, 0, -34, -34, -34,
+ -34, 0, 0, 0, -34, 0, 0, 0, 0, 0,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, -34,
+ -34, 0, 0, 0, 9, 0, 0, 0, 0, 60,
+ 0, 0, -34, -34, 0, 0, 11, 0, -34, -34,
+ -34, -34, -34, 0, 0, 0, 0, 0, 0, 0,
+ -34, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -34, 0, -34, -34, -34, -34, -34, -34, 0, -34,
+ 0, 0, -34, -34, -34, -34, -34, -34, -34, -34,
+ -34, -34, -34, -34, -34, -34, -34, -34, -57, 0,
+ -34, 61, 62, 63, 64, 0, 0, -57, 0, 0,
+ 0, 0, -57, -57, 0, 0, 0, -57, 0, 0,
+ -57, -57, -57, -57, 0, 0, 0, -57, 0, 0,
0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
- 7, 8, 0, 82, 83, 84, 328, 9, 0, 10,
- 11, 12, 13, 14, 15, 16, 17, 0, 0, 0,
- 81, 0, 1, 2, 3, 4, 5, 6, 7, 8,
- 0, 107, 108, 25, 85, 9, 0, 10, 11, 12,
- 13, 14, 15, 16, 17, 0, 0, 0, 18, 1,
- 2, 3, 4, 5, 6, 7, 8, 0, 0, 0,
- 0, 0, 327, 0, 10, 11, 12, 13, 14, 15,
- 16, 17, 0, 0, 0, 81, 0, 0, 0, 82,
- 83, 84, 85, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 2,
- 3, 4, 5, 6, 7, 8, 0, 107, 108, 25,
- 85, 124, 0, 10, 11, 12, 13, 14, 15, 16,
- 17, 0, 0, 0, 81, 1, 2, 3, 4, 5,
- 6, 7, 8, 0, 82, 83, 84, 328, 399, 0,
- 10, 11, 12, 13, 14, 15, 16, 17, 0, 0,
- 0, 81, 1, 2, 3, 4, 5, 6, 7, 8,
- 0, 0, 0, 0, 0, 0, 0, 10, 11, 12,
- 13, 14, 15, 16, 17, 506, 0, 0, 81, 0,
- 0, 0, 0, 82, 83, 84, 362, 363, 364, 365,
- 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
- 376, 377, 378, 379, 443, 0, 0, 0, 0, 495,
- 82, 83, 84, 362, 363, 364, 365, 366, 367, 368,
- 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
- 379, 551, 0, 0, 0, 0, 380, 82, 83, 84,
- 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
- 372, 373, 374, 375, 376, 377, 378, 379, 634, 0,
- 0, 0, 0, 495, 0, 0, 0, 362, 363, 364,
- 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
- 375, 376, 377, 378, 379, 612, 0, 0, 0, 0,
- 495, 0, 0, 362, 363, 364, 365, 366, 367, 368,
- 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
- 379, 516, 0, 0, 0, 0, 495, 0, 362, 363,
- 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
- 374, 375, 376, 377, 378, 379, 584, 0, 0, 0,
- 0, 380, 0, 362, 363, 364, 365, 366, 367, 368,
- 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
- 379, 0, 0, 0, 0, 0, 495, 362, 363, 364,
- 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
- 375, 376, 377, 378, 379, 0, 0, 0, 0, 0,
- 380, 362, 363, 364, 365, 366, 367, 368, 369, 370,
- 371, 372, 373, 374, 375, 376, 377, 378, 379, 0,
- 0, 0, 0, 0, 495, 362, 363, 364, 365, 366,
- 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
- 377, 378, 379, 0, 0, 0, 0, 0, 380, 362,
- 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
- 373, 374, 375, 376, 377, 378, 379, 0, 0, 0,
- 0, 0, 495
+ 7, 8, -57, -57, 0, 0, 0, 9, 0, 0,
+ 0, 0, 60, 0, 0, -57, -57, 0, 0, 11,
+ 0, -57, -57, -57, -57, -57, 0, 0, 0, 0,
+ 0, 0, 0, -57, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -57, 0, -57, -57, -57, -57, -57,
+ -57, 0, -57, 0, 0, -57, -57, -57, -57, -57,
+ -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
+ -57, -58, 0, -613, 92, 93, 18, 64, 0, 0,
+ -58, 0, 0, 0, 0, -58, -58, 0, 0, 0,
+ -58, 0, 0, -58, -58, -58, -58, 0, 0, 0,
+ -58, 0, 0, 0, 0, 0, 0, 1, 2, 3,
+ 4, 5, 6, 7, 8, -58, -58, 0, 0, 0,
+ 9, 0, 0, 0, 0, 60, 0, 0, -58, -58,
+ 0, 0, 11, 0, -58, -58, -58, -58, -58, 0,
+ 0, 0, 0, 0, 0, 0, -58, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -58, 0, -58, -58,
+ -58, -58, -58, -58, 0, -58, 0, 0, -58, -58,
+ -58, -58, -58, -58, -58, -58, -58, -58, -58, -58,
+ -58, -58, -58, -58, -24, 0, -574, 61, 62, 63,
+ 64, 0, 0, -24, 0, 0, 0, 0, -24, -24,
+ 0, 0, 0, -24, 0, 0, -24, -24, -24, -24,
+ 0, 0, 0, -24, 0, 0, 0, 0, 0, 0,
+ 1, 2, 3, 4, 5, 6, 7, 8, -24, -24,
+ 0, 0, 0, 408, 0, 0, 0, 0, 60, 0,
+ 0, -24, -24, 0, 0, 11, 0, -24, -24, -24,
+ -24, -24, 0, 0, 0, 0, 0, 0, 0, -24,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -24,
+ 0, -24, -24, -24, -24, -24, -24, 0, -24, 0,
+ 0, -24, -24, -24, -24, -24, -24, -24, -24, -24,
+ -24, -24, -24, -24, -24, -24, -24, -39, 0, -24,
+ 61, 62, 63, 64, 0, 0, -39, 0, 0, 0,
+ 0, -39, -39, 0, 0, 0, -39, 0, 0, -39,
+ -39, -39, -39, 0, 0, 0, -39, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -39, -39, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -39, -39, 0, 0, 0, 0,
+ -39, -39, -39, -39, -39, 0, 0, 0, 0, 0,
+ 0, 0, -39, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -39, 0, -39, -39, -39, -39, -39, -39,
+ 0, -39, 0, 0, -39, -39, -39, -39, -39, -39,
+ -39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
+ -38, 0, -39, 0, 0, 0, 0, 0, 0, -38,
+ 0, 0, 0, 0, -38, -38, 0, 0, 0, -38,
+ 0, 0, -38, -38, -38, -38, 0, 0, 0, -38,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -38, -38, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -38, -38, 0,
+ 0, 0, 0, -38, -38, -38, -38, -38, 0, 0,
+ 0, 0, 0, 0, 0, -38, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -38, 0, -38, -38, -38,
+ -38, -38, -38, 0, -38, 0, 0, -38, -38, -38,
+ -38, -38, -38, -38, -38, -38, -38, -38, -38, -38,
+ -38, -38, -38, -37, 0, -38, 0, 0, 0, 0,
+ 0, 0, -37, 0, 0, 0, 0, -37, -37, 0,
+ 0, 0, -37, 0, 0, -37, -37, -37, -37, 0,
+ 0, 0, -37, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -37, -37, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -37, -37, 0, 0, 0, 0, -37, -37, -37, -37,
+ -37, 0, 0, 0, 0, 0, 0, 0, -37, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -37, 0,
+ -37, -37, -37, -37, -37, -37, 0, -37, 0, 0,
+ -37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
+ -37, -37, -37, -37, -37, -37, -35, 0, -37, 0,
+ 0, 0, 0, 0, 0, -35, 0, 0, 0, 0,
+ -35, -35, 0, 0, 0, -35, 0, 0, -35, -35,
+ -35, -35, 0, 0, 0, -35, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -35, -35, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -35, -35, 0, 0, 0, 0, -35,
+ -35, -35, -35, -35, 0, 0, 0, 0, 0, 0,
+ 0, -35, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -35, 0, -35, -35, -35, -35, -35, -35, 0,
+ -35, 0, 0, -35, -35, -35, -35, -35, -35, -35,
+ -35, -35, -35, -35, -35, -35, -35, -35, -35, -36,
+ 0, -35, 0, 0, 0, 0, 0, 0, -36, 0,
+ 0, 0, 0, -36, -36, 0, 0, 0, -36, 0,
+ 0, -36, -36, -36, -36, 0, 0, 0, -36, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -36, -36, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -36, -36, 0, 0,
+ 0, 0, -36, -36, -36, -36, -36, 0, 0, 0,
+ 0, 0, 0, 0, -36, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -36, 0, -36, -36, -36, -36,
+ -36, -36, 0, -36, 0, 0, -36, -36, -36, -36,
+ -36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
+ -36, -36, -32, 0, -36, 0, 0, 0, 0, 0,
+ 0, -32, 0, 0, 0, 0, -32, -32, 0, 0,
+ 0, -32, 0, 0, -32, -32, -32, -32, 0, 0,
+ 0, -32, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -32, -32, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -32,
+ -32, 0, 0, 0, 0, -32, -32, -32, -32, -32,
+ 0, 0, 0, 0, 0, 0, 0, -32, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -32, 0, -32,
+ -32, -32, -32, -32, -32, 0, -32, 0, 0, -32,
+ -32, -32, -32, -32, -32, -32, -32, -32, -32, -32,
+ -32, -32, -32, -32, -32, -31, 0, -32, 0, 0,
+ 0, 0, 0, 0, -31, 0, 0, 0, 0, -31,
+ -31, 0, 0, 0, -31, 0, 0, -31, -31, -31,
+ -31, 0, 0, 0, -31, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -31,
+ -31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -31, -31, 0, 0, 0, 0, -31, -31,
+ -31, -31, -31, 0, 0, 0, 0, 0, 0, 0,
+ -31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -31, 0, -31, -31, -31, -31, -31, -31, 0, -31,
+ 0, 0, -31, -31, -31, -31, -31, -31, -31, -31,
+ -31, -31, -31, -31, -31, -31, -31, -31, -25, 0,
+ -31, 0, 0, 0, 0, 0, 0, -25, 0, 0,
+ 0, 0, -25, -25, 0, 0, 0, -25, 0, 0,
+ -25, -25, -25, -25, 0, 0, 0, -25, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -25, -25, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -25, -25, 0, 0, 0,
+ 0, -25, -25, -25, -25, -25, 0, 0, 0, 0,
+ 0, 0, 0, -25, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -25, 0, -25, -25, -25, -25, -25,
+ -25, 0, -25, 0, 0, -25, -25, -25, -25, -25,
+ -25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
+ -25, -29, 0, -25, 0, 0, 0, 0, 0, 0,
+ -29, 0, 0, 0, 0, -29, -29, 0, 0, 0,
+ -29, 0, 0, -29, -29, -29, -29, 0, 0, 0,
+ -29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -29, -29, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -29, -29,
+ 0, 0, 0, 0, -29, -29, -29, -29, -29, 0,
+ 0, 0, 0, 0, 0, 0, -29, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -29, 0, -29, -29,
+ -29, -29, -29, -29, 0, -29, 0, 0, -29, -29,
+ -29, -29, -29, -29, -29, -29, -29, -29, -29, -29,
+ -29, -29, -29, -29, -28, 0, -29, 0, 0, 0,
+ 0, 0, 0, -28, 0, 0, 0, 0, -28, -28,
+ 0, 0, 0, -28, 0, 0, -28, -28, -28, -28,
+ 0, 0, 0, -28, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -28, -28,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -28, -28, 0, 0, 0, 0, -28, -28, -28,
+ -28, -28, 0, 0, 0, 0, 0, 0, 0, -28,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -28,
+ 0, -28, -28, -28, -28, -28, -28, 0, -28, 0,
+ 0, -28, -28, -28, -28, -28, -28, -28, -28, -28,
+ -28, -28, -28, -28, -28, -28, -28, -26, 0, -28,
+ 0, 0, 0, 0, 0, 0, -26, 0, 0, 0,
+ 0, -26, -26, 0, 0, 0, -26, 0, 0, -26,
+ -26, -26, -26, 0, 0, 0, -26, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -26, -26, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -26, -26, 0, 0, 0, 0,
+ -26, -26, -26, -26, -26, 0, 0, 0, 0, 0,
+ 0, 0, -26, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -26, 0, -26, -26, -26, -26, -26, -26,
+ 0, -26, 0, 0, -26, -26, -26, -26, -26, -26,
+ -26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
+ -27, 0, -26, 0, 0, 0, 0, 0, 0, -27,
+ 0, 0, 0, 0, -27, -27, 0, 0, 0, -27,
+ 0, 0, -27, -27, -27, -27, 0, 0, 0, -27,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -27, -27, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -27, -27, 0,
+ 0, 0, 0, -27, -27, -27, -27, -27, 0, 0,
+ 0, 0, 0, 0, 0, -27, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -27, 0, -27, -27, -27,
+ -27, -27, -27, 0, -27, 0, 0, -27, -27, -27,
+ -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
+ -27, -27, -27, -40, 0, -27, 0, 0, 0, 0,
+ 0, 0, -40, 0, 0, 0, 0, -40, -40, 0,
+ 0, 0, -40, 0, 0, -40, -40, -40, -40, 0,
+ 0, 0, -40, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -40, -40, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -40, -40, 0, 0, 0, 0, -40, -40, -40, -40,
+ -40, 0, 0, 0, 0, 0, 0, 0, -40, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -40, 0,
+ -40, -40, -40, -40, -40, -40, 0, -40, 0, 0,
+ -40, -40, -40, -40, -40, -40, -40, -40, -40, -40,
+ -40, -40, -40, -40, -40, -40, -135, 0, -40, 0,
+ 0, 0, 0, 0, 0, -135, 0, 0, 0, 0,
+ -135, -135, 0, 0, 0, -135, 0, 0, -135, -135,
+ -135, -135, 0, 0, 0, -135, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -135, -135, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -135, -135, 0, 0, 0, 0, -135,
+ -135, -135, -135, -135, 0, 0, 0, 0, 0, 0,
+ 0, -135, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -135, 0, -135, -135, -135, -135, -135, -135, 0,
+ -135, 0, 0, -135, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -135, -136,
+ 0, -582, 0, 0, 0, 0, 0, 0, -136, 0,
+ 0, 0, 0, -136, -136, 0, 0, 0, -136, 0,
+ 0, -136, -136, -136, -136, 0, 0, 0, -136, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -136, -136, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -136, -136, 0, 0,
+ 0, 0, -136, -136, -136, -136, -136, 0, 0, 0,
+ 0, 0, 0, 0, -136, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -136, 0, -136, -136, -136, -136,
+ -136, -136, 0, -136, 0, 0, -136, -136, -136, -136,
+ -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
+ -136, -136, -137, 0, -581, 0, 0, 0, 0, 0,
+ 0, -137, 0, 0, 0, 0, -137, -137, 0, 0,
+ 0, -137, 0, 0, -137, -137, -137, -137, 0, 0,
+ 0, -137, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -137, -137, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -137,
+ -137, 0, 0, 0, 0, -137, -137, -137, -137, -137,
+ 0, 0, 0, 0, 0, 0, 0, -137, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -137, 0, -137,
+ -137, -137, -137, -137, -137, 0, -137, 0, 0, -137,
+ -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
+ -137, -137, -137, -137, -137, -138, 0, -579, 0, 0,
+ 0, 0, 0, 0, -138, 0, 0, 0, 0, -138,
+ -138, 0, 0, 0, -138, 0, 0, -138, -138, -138,
+ -138, 0, 0, 0, -138, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -138,
+ -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -138, -138, 0, 0, 0, 0, -138, -138,
+ -138, -138, -138, 0, 0, 0, 0, 0, 0, 0,
+ -138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -138, 0, -138, -138, -138, -138, -138, -138, 0, -138,
+ 0, 0, -138, -138, -138, -138, -138, -138, -138, -138,
+ -138, -138, -138, -138, -138, -138, -138, -138, -139, 0,
+ -577, 0, 0, 0, 0, 0, 0, -139, 0, 0,
+ 0, 0, -139, -139, 0, 0, 0, -139, 0, 0,
+ -139, -139, -139, -139, 0, 0, 0, -139, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -139, -139, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -139, -139, 0, 0, 0,
+ 0, -139, -139, -139, -139, -139, 0, 0, 0, 0,
+ 0, 0, 0, -139, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -139, 0, -139, -139, -139, -139, -139,
+ -139, 0, -139, 0, 0, -139, -139, -139, -139, -139,
+ -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
+ -139, -140, 0, -578, 0, 0, 0, 0, 0, 0,
+ -140, 0, 0, 0, 0, -140, -140, 0, 0, 0,
+ -140, 0, 0, -140, -140, -140, -140, 0, 0, 0,
+ -140, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -140, -140, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -140, -140,
+ 0, 0, 0, 0, -140, -140, -140, -140, -140, 0,
+ 0, 0, 0, 0, 0, 0, -140, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -140, 0, -140, -140,
+ -140, -140, -140, -140, 0, -140, 0, 0, -140, -140,
+ -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
+ -140, -140, -140, -140, -141, 0, -580, 0, 0, 0,
+ 0, 0, 0, -141, 0, 0, 0, 0, -141, -141,
+ 0, 0, 0, -141, 0, 0, -141, -141, -141, -141,
+ 0, 0, 0, -141, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -141, -141,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -141, -141, 0, 0, 0, 0, -141, -141, -141,
+ -141, -141, 0, 0, 0, 0, 0, 0, 0, -141,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -141,
+ 0, -141, -141, -141, -141, -141, -141, 0, -141, 0,
+ 0, -141, -141, -141, -141, -141, -141, -141, -141, -141,
+ -141, -141, -141, -141, -141, -141, -141, -142, 0, -576,
+ 0, 0, 0, 0, 0, 0, -142, 0, 0, 0,
+ 0, -142, -142, 0, 0, 0, -142, 0, 0, -142,
+ -142, -142, -142, 0, 0, 0, -142, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -142, -142, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -142, -142, 0, 0, 0, 0,
+ -142, -142, -142, -142, -142, 0, 0, 0, 0, 0,
+ 0, 0, -142, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -142, 0, -142, -142, -142, -142, -142, -142,
+ 0, -142, 0, 0, -142, -142, -142, -142, -142, -142,
+ -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
+ -143, 0, -575, 0, 0, 0, 0, 0, 0, -143,
+ 0, 0, 0, 0, -143, -143, 0, 0, 0, -143,
+ 0, 0, -143, -143, -143, -143, 0, 0, 0, -143,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -143, -143, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -143, -143, 0,
+ 0, 0, 0, -143, -143, -143, -143, -143, 0, 0,
+ 0, 0, 0, 0, 0, -143, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -143, 0, -143, -143, -143,
+ -143, -143, -143, 0, -143, 0, 0, -143, -143, -143,
+ -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
+ -143, -143, -143, -30, 0, -583, 0, 0, 0, 0,
+ 0, 0, -30, 0, 0, 0, 0, -30, -30, 0,
+ 0, 0, -30, 0, 0, -30, -30, -30, -30, 0,
+ 0, 0, -30, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -30, -30, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -30, -30, 0, 0, 0, 0, -30, -30, -30, -30,
+ -30, 0, 0, 0, 0, 0, 0, 0, -30, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -30, 0,
+ -30, -30, -30, -30, -30, -30, 0, -30, 0, 0,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -145, 0, -30, 0,
+ 0, 0, 0, 0, 0, -145, 0, 0, 0, 0,
+ -145, -145, 0, 0, 0, -145, 0, 0, -145, -145,
+ -145, -145, 0, 0, 0, -145, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -145, -145, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -145, -145, 0, 0, 0, 0, -145,
+ -145, -145, -145, -145, 0, 0, 0, 0, 0, 0,
+ 0, -145, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -145, 0, -145, -145, -145, -145, -145, -145, 0,
+ -145, 0, 0, -145, -145, -145, -145, -145, -145, -145,
+ -145, -145, -145, -145, -145, -145, -145, -145, -145, -146,
+ 0, -611, 0, 0, 0, 0, 0, 0, -146, 0,
+ 0, 0, 0, -146, -146, 0, 0, 0, -146, 0,
+ 0, -146, -146, -146, -146, 0, 0, 0, -146, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -146, -146, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -146, -146, 0, 0,
+ 0, 0, -146, -146, -146, -146, -146, 0, 0, 0,
+ 0, 0, 0, 0, -146, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -146, 0, -146, -146, -146, -146,
+ -146, -146, 0, -146, 0, 0, -146, -146, -146, -146,
+ -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
+ -146, -146, -147, 0, -609, 0, 0, 0, 0, 0,
+ 0, -147, 0, 0, 0, 0, -147, -147, 0, 0,
+ 0, -147, 0, 0, -147, -147, -147, -147, 0, 0,
+ 0, -147, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -147, -147, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -147,
+ -147, 0, 0, 0, 0, -147, -147, -147, -147, -147,
+ 0, 0, 0, 0, 0, 0, 0, -147, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -147, 0, -147,
+ -147, -147, -147, -147, -147, 0, -147, 0, 0, -147,
+ -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
+ -147, -147, -147, -147, -147, -148, 0, -608, 0, 0,
+ 0, 0, 0, 0, -148, 0, 0, 0, 0, -148,
+ -148, 0, 0, 0, -148, 0, 0, -148, -148, -148,
+ -148, 0, 0, 0, -148, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -148,
+ -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -148, -148, 0, 0, 0, 0, -148, -148,
+ -148, -148, -148, 0, 0, 0, 0, 0, 0, 0,
+ -148, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -148, 0, -148, -148, -148, -148, -148, -148, 0, -148,
+ 0, 0, -148, -148, -148, -148, -148, -148, -148, -148,
+ -148, -148, -148, -148, -148, -148, -148, -148, -149, 0,
+ -610, 0, 0, 0, 0, 0, 0, -149, 0, 0,
+ 0, 0, -149, -149, 0, 0, 0, -149, 0, 0,
+ -149, -149, -149, -149, 0, 0, 0, -149, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -149, -149, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -149, -149, 0, 0, 0,
+ 0, -149, -149, -149, -149, -149, 0, 0, 0, 0,
+ 0, 0, 0, -149, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -149, 0, -149, -149, -149, -149, -149,
+ -149, 0, -149, 0, 0, -149, -149, -149, -149, -149,
+ -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
+ -149, -150, 0, -607, 0, 0, 0, 0, 0, 0,
+ -150, 0, 0, 0, 0, -150, -150, 0, 0, 0,
+ -150, 0, 0, -150, -150, -150, -150, 0, 0, 0,
+ -150, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -150, -150, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -150, -150,
+ 0, 0, 0, 0, -150, -150, -150, -150, -150, 0,
+ 0, 0, 0, 0, 0, 0, -150, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -150, 0, -150, -150,
+ -150, -150, -150, -150, 0, -150, 0, 0, -150, -150,
+ -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
+ -150, -150, -150, -150, 103, 0, -606, 0, 0, 0,
+ 0, 0, 0, 104, 0, 0, 0, 0, 105, 106,
+ 0, 0, 0, 107, 0, 0, 356, 440, 357, 358,
+ 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 360, 361,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 362, 363, 0, 0, 0, 0, 108, 109, 110,
+ 111, 112, 0, 0, 0, 0, 0, 0, 0, 364,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
+ 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
+ 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
+ 130, 131, 132, 133, 134, 135, 136, -574, 0, 441,
+ 0, 0, 0, 0, 0, 0, -574, 0, 0, 0,
+ 0, -574, -574, 0, 0, 0, -574, 0, 0, 0,
+ 0, 0, 0, -574, -574, -574, -574, -574, -574, -574,
+ -574, -574, -574, -574, -574, 0, -574, -574, -574, -574,
+ -574, -574, -574, -574, -574, -574, -574, -574, -574, -574,
+ -574, -574, -574, -574, 0, 0, 0, 0, 0, -574,
+ -574, -574, -574, -574, -574, 1, 2, 3, 4, 5,
+ 6, 7, 8, 0, 0, 0, 0, 0, 9, 0,
+ 0, -574, -574, 156, -574, -574, -574, -574, -574, -574,
+ 11, -574, 0, 0, -574, -574, -574, -574, -574, -574,
+ -574, -574, -574, -574, -574, -574, -574, -574, -574, -574,
+ 103, 1, 2, 3, 4, 5, 6, 7, 8, 104,
+ 0, 0, 0, 0, 705, 106, 610, 0, 0, 706,
+ 611, 0, 612, 0, 613, 358, 11, 0, 0, 615,
+ 0, 0, 0, 0, 157, 61, 62, 63, 64, 0,
+ 0, 0, 0, 0, 360, 361, 162, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 362, 363, 0,
+ 0, 0, 0, 108, 109, 110, 111, 112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 61, 62, 63, 64, 113, 0, 114, 115, 116,
+ 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
+ 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
+ 134, 135, 136, 103, 0, 0, 0, 0, 0, 0,
+ 0, 0, 104, 0, 0, 0, 0, 105, 106, 683,
+ 684, 685, 107, 611, 0, 612, 440, 613, 358, 0,
+ 0, 0, 615, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 360, 361, 162,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 362, 363, 0, 0, 0, 0, 108, 109, 110, 111,
+ 112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
+ 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
+ 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
+ 131, 132, 133, 134, 135, 136, 103, 0, 0, 0,
+ 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
+ 105, 106, 776, 0, 0, 107, 611, 0, 612, 0,
+ 613, 358, 0, 0, 0, 615, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 153, 0, 0,
+ 360, 361, 162, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 362, 363, 0, 0, 0, 0, 108,
+ 109, 110, 111, 112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 113, 777, 778, 115, 116, 117, 118, 119, 0,
+ 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
+ 128, 129, 779, 131, 132, 133, 134, 135, 136, 103,
+ 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
+ 0, 0, 0, 105, 106, 610, 0, 0, 107, 611,
+ 0, 612, 0, 613, 358, 0, 0, 0, 615, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 153, 0, 0, 360, 361, 162, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 362, 363, 0, 0,
+ 857, 0, 108, 109, 110, 111, 112, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 113, 0, 114, 115, 116, 117,
+ 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 103, 0, 0, 0, 0, 0, 0, 0,
+ 0, 104, 0, 0, 0, 0, 105, 106, 610, 0,
+ 0, 107, 611, -625, 612, 0, 613, 358, 0, 0,
+ 0, 615, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 153, 0, 0, 360, 361, 162, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 362,
+ 363, 0, 0, 0, 0, 108, 109, 110, 111, 112,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 113, 0, 114,
+ 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
+ 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 103, 0, 0, 0, 0,
+ 0, 0, 0, 0, 104, 0, 0, 0, 0, 105,
+ 106, 610, 0, 0, 107, 611, 0, 612, 0, 613,
+ 358, 0, 0, 0, 615, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 153, 0, 0, 360,
+ 361, 162, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 362, 363, 0, 0, 0, 0, 108, 109,
+ 110, 111, 112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 113, 0, 114, 115, 116, 117, 118, 119, 0, 120,
+ 0, 0, 121, 122, 123, 124, 125, 126, 127, 128,
+ 129, 130, 131, 132, 133, 134, 135, 136, 103, 0,
+ 0, 0, 0, 0, 0, 0, 0, 104, 0, 0,
+ 0, 0, 105, 106, 776, 0, 0, 107, 611, 0,
+ 612, 0, 613, 358, 0, 0, 0, 615, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 360, 361, 162, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 362, 363, 0, 0, 0,
+ 0, 108, 109, 110, 111, 112, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 113, 777, 778, 115, 116, 117, 118,
+ 119, 0, 120, 0, 0, 121, 122, 123, 124, 125,
+ 126, 127, 128, 129, 779, 131, 132, 133, 134, 135,
+ 136, 103, 0, 0, 0, 0, 0, 0, 0, 0,
+ 104, 0, 0, 0, 0, 105, 106, 610, 0, 0,
+ 107, 611, 0, 612, 0, 613, 358, 0, 0, 0,
+ 615, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 360, 361, 162, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 362, 363,
+ 0, 0, 0, 0, 108, 109, 110, 111, 112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 113, 0, 114, 115,
+ 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
+ 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
+ 133, 134, 135, 136, 103, 0, 0, 0, 0, 0,
+ 0, 0, 0, 104, 0, 0, 0, 0, 105, 106,
+ 0, 0, 0, 107, 0, 0, 356, 0, 357, 358,
+ 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 360, 361,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 362, 363, 0, 0, 0, 0, 108, 109, 110,
+ 111, 112, 0, 0, 0, 0, 0, 0, 0, 364,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
+ 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
+ 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
+ 130, 131, 132, 133, 134, 135, 136, 103, 0, 0,
+ 0, 0, 0, 0, 0, 0, 104, 0, 0, 0,
+ 0, 105, 106, 0, 0, 0, 107, 0, 0, 0,
+ 0, 0, 0, 11, 0, 0, -517, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 162, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 108, 109, 110, 111, 112, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 64, 113, 0, 114, 115, 116, 117, 118, 119,
+ 0, 120, 0, 0, 121, 122, 123, 124, 125, 126,
+ 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
+ 103, 0, 0, 0, 0, 0, 0, 0, 0, 104,
+ 0, 0, 0, 0, 105, 106, 739, 0, 0, 107,
+ 0, 0, 0, 0, 0, 0, 11, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 0, 162, 0, 0, 0,
+ 711, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 108, 109, 110, 111, 112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 64, 113, 0, 114, 115, 116,
+ 117, 118, 119, 0, 120, 0, 0, 121, 122, 123,
+ 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
+ 134, 135, 136, 103, 0, 0, 0, 0, 0, 0,
+ 0, 0, 104, 0, 0, 0, 0, 105, 106, 0,
+ 0, 0, 107, 0, 0, 664, 0, 0, 0, 0,
+ 0, 0, 714, 816, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 0, 0, 0, 0, 0, 474, 0, 0,
+ 0, 0, 0, 0, 0, 0, 108, 109, 110, 111,
+ 112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
+ 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
+ 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
+ 131, 132, 133, 134, 135, 136, 103, 0, 0, 0,
+ 0, 0, 0, 0, 0, 104, 0, 765, 0, 0,
+ 105, 106, 0, 0, 0, 107, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 0, 0, 0, 0, 0, 711,
+ 0, 0, 162, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
+ 109, 110, 111, 112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 113, 0, 114, 115, 116, 117, 118, 119, 0,
+ 120, 0, 0, 121, 122, 123, 124, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 134, 135, 136, 103,
+ 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
+ 0, 0, 0, 105, 106, 0, 0, 0, 107, 0,
+ 910, 0, 0, 0, 0, 0, 0, 0, 452, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 0, 0, 0,
+ 0, 0, 711, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 113, 0, 114, 115, 116, 117,
+ 118, 119, 0, 120, 0, 0, 121, 122, 123, 124,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 103, 0, 0, 0, 0, 0, 0, 0,
+ 0, 104, 0, 0, 0, 0, 105, 106, 0, 0,
+ 0, 107, 0, 0, 875, 0, 0, 0, 0, 0,
+ 0, 714, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 0, 0, 0, 0, 0, 711, 0, 0, 0, 0,
+ 0, 103, 0, 0, 0, 108, 109, 110, 111, 112,
+ 104, 0, 0, 0, 0, 105, 106, 0, 0, 0,
+ 107, 0, 0, 0, 0, 0, 0, 113, 0, 114,
+ 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
+ 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 0, 0, 0, 0, 0,
+ 0, 0, 741, 0, 108, 109, 110, 111, 112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 113, 0, 114, 115,
+ 116, 117, 118, 119, 0, 120, 0, 0, 121, 122,
+ 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
+ 133, 134, 135, 136, 103, 0, 0, 0, 0, 0,
+ 0, 0, 0, 104, 0, 0, 0, 750, 792, 106,
+ 0, 0, 0, 107, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 0, 0, 0, 0, 0, 474, 0, 0,
+ 162, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 103, 0, 0, 0, 108, 109, 110,
+ 111, 112, 104, 0, 0, 0, 0, 105, 106, 0,
+ 0, 0, 107, 0, 0, 0, 0, 0, 0, 113,
+ 0, 114, 115, 116, 117, 118, 119, 0, 120, 0,
+ 0, 121, 122, 123, 124, 125, 126, 127, 128, 129,
+ 130, 131, 132, 133, 134, 135, 136, 0, 0, 0,
+ 0, 0, 103, 0, 837, 0, 108, 109, 110, 111,
+ 112, 104, 0, 0, 0, 0, 105, 106, 0, 0,
+ 0, 107, 0, 0, 0, 0, 0, 0, 113, 0,
+ 114, 115, 116, 117, 118, 119, 0, 120, 0, 0,
+ 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
+ 131, 132, 133, 134, 135, 136, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 108, 109, 110, 111, 112,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 113, 0, 114,
+ 115, 116, 117, 118, 119, 0, 120, 0, 0, 121,
+ 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 813, 0, 0, 0, 0,
+ 0, 0, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 0, 0, 0, 710, 0, 711, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 0, 0, 0, 0, 0, 711,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 0, 0,
+ 0, 0, 0, 474, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 0, 0, 0, 0, 0, 711, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 0, 0, 0, 0,
+ 0, 474, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 0, 0, 0, 0, 0, 711
};
static const short int yycheck[] =
{
- 38, 29, 9, 102, 9, 26, 22, 0, 106, 320,
- 299, 488, 342, 488, 65, 348, 23, 24, 25, 477,
- 524, 291, 526, 34, 32, 18, 0, 297, 497, 22,
- 9, 3, 11, 38, 6, 41, 42, 0, 10, 32,
- 12, 13, 14, 15, 16, 17, 27, 28, 29, 4,
- 5, 6, 33, 34, 9, 96, 6, 34, 32, 9,
- 65, 50, 70, 393, 85, 38, 570, 39, 357, 32,
- 403, 360, 110, 80, 549, 82, 83, 84, 37, 37,
- 413, 0, 41, 42, 42, 37, 37, 420, 40, 96,
- 401, 361, 40, 39, 40, 43, 39, 40, 105, 106,
- 107, 108, 153, 17, 18, 110, 113, 6, 7, 8,
- 380, 381, 123, 42, 572, 42, 585, 55, 3, 124,
- 115, 116, 117, 581, 39, 40, 38, 12, 36, 440,
- 37, 138, 148, 18, 638, 38, 613, 39, 40, 31,
- 598, 41, 149, 159, 151, 30, 42, 616, 153, 31,
- 619, 626, 31, 38, 37, 488, 445, 31, 635, 448,
- 449, 42, 495, 496, 44, 17, 18, 308, 309, 38,
- 55, 640, 107, 108, 6, 43, 38, 41, 55, 42,
- 279, 280, 43, 38, 33, 38, 46, 72, 73, 74,
- 75, 39, 46, 291, 38, 45, 37, 32, 37, 297,
- 114, 115, 116, 117, 118, 119, 46, 38, 93, 46,
- 95, 38, 97, 98, 99, 100, 549, 550, 529, 97,
- 98, 99, 100, 101, 102, 103, 46, 112, 113, 97,
- 98, 99, 100, 101, 102, 103, 97, 98, 99, 100,
- 101, 102, 103, 38, 37, 515, 516, 580, 39, 560,
- 39, 584, 104, 105, 106, 107, 108, 109, 110, 111,
- 112, 39, 33, 361, 40, 37, 41, 41, 319, 39,
- 39, 39, 39, 39, 563, 564, 39, 41, 40, 612,
- 613, 40, 380, 381, 291, 37, 39, 41, 46, 296,
- 297, 329, 38, 626, 38, 38, 38, 335, 33, 337,
- 40, 38, 635, 39, 38, 312, 3, 328, 37, 39,
- 33, 32, 40, 39, 319, 12, 40, 278, 40, 38,
- 33, 18, 327, 39, 39, 32, 40, 39, 39, 39,
- 27, 338, 41, 30, 31, 40, 33, 573, 35, 390,
- 22, 38, 45, 145, 351, 110, 384, 385, 18, 159,
- 452, 358, 3, 50, 361, 6, 53, 54, 55, 10,
- 404, 12, 13, 14, 15, 16, 17, 383, 28, 66,
- 67, 311, 526, 380, 381, 72, 73, 74, 75, 315,
- 635, 335, 532, 339, 504, 390, 402, -1, -1, 396,
- 383, 398, -1, 400, 399, -1, 93, 404, 95, -1,
- 97, 98, 99, 100, -1, -1, -1, 104, 105, 106,
- 107, 108, 109, 110, 111, 112, 113, 515, 516, -1,
- 413, -1, -1, -1, -1, 441, -1, -1, -1, -1,
- -1, 3, -1, -1, -1, 442, 452, -1, -1, -1,
- 12, -1, -1, -1, -1, -1, 18, -1, -1, 456,
- -1, -1, -1, -1, -1, 27, -1, -1, 30, 452,
- -1, 499, 561, -1, 502, -1, -1, 3, -1, -1,
- 491, -1, -1, 501, 481, -1, 12, -1, 483, -1,
- -1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, -1, -1, -1, 30, -1, -1, 504, -1, -1,
- 72, 73, 74, 75, -1, -1, -1, -1, 515, 516,
- -1, -1, -1, -1, -1, -1, -1, -1, 556, 55,
- -1, 93, -1, 95, -1, 97, 98, 99, 100, -1,
- -1, -1, -1, -1, -1, -1, 72, 73, 74, 75,
- 112, 113, -1, -1, 572, -1, -1, -1, -1, -1,
- -1, 589, -1, -1, -1, 562, -1, 93, -1, 95,
- -1, 97, 98, 99, 100, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 613, 112, 113, 72, -1,
- 74, 75, 76, 77, 78, 79, 80, 81, 82, -1,
- 84, 85, 86, 87, -1, 0, -1, 635, 3, 4,
- 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
- 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
- 35, -1, 37, 38, 39, 40, 41, 42, 43, 44,
- 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 66, 67, 68, 69, 70, 71, -1, 73, 74,
- 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
- -1, 86, -1, 88, 89, 90, 91, 92, 93, 94,
- 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
- 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
- 115, 116, 117, 118, 119, 120, 0, -1, 123, 3,
+ 10, 33, 22, 87, 183, 15, 33, 0, 182, 183,
+ 91, 33, 91, 190, 16, 17, 18, 424, 15, 102,
+ 34, 421, 80, 397, 424, 421, 310, 377, 378, 396,
+ 151, 701, 90, 367, 27, 394, 727, 477, 159, 477,
+ 727, 727, 409, 427, 760, 0, 762, 10, 756, 310,
+ 15, 26, 26, 49, 137, 10, 29, 140, 21, 61,
+ 62, 63, 25, 9, 24, 11, 21, 44, 189, 24,
+ 25, 0, 27, 29, 433, 359, 25, 33, 80, 6,
+ 37, 365, 9, 31, 94, 125, 35, 778, 36, 91,
+ 92, 93, 808, 37, 26, 786, 32, 94, 100, 29,
+ 786, 33, 65, 33, 64, 29, 26, 27, 442, 33,
+ 65, 32, 32, 34, 87, 31, 32, 451, 34, 32,
+ 454, 17, 18, 3, 44, 484, 6, 36, 124, 94,
+ 10, 87, 12, 36, 842, 92, 93, 94, 95, 96,
+ 810, 98, 99, 31, 119, 406, 34, 157, 92, 93,
+ 94, 95, 96, 30, 98, 99, 31, 87, 190, 829,
+ 157, 32, 31, 87, 36, 167, 35, 36, 6, 7,
+ 8, 455, 182, 183, 35, 36, 35, 885, 4, 5,
+ 6, 23, 184, 9, 854, 876, 31, 150, 36, 876,
+ 474, 475, 157, 156, 23, 150, 22, 36, 889, 915,
+ 32, 156, 38, 4, 5, 6, 897, 31, 9, 33,
+ 34, 897, 35, 36, 110, 111, 112, 113, 114, 115,
+ 911, 22, 606, 31, 911, 33, 34, 311, 6, 310,
+ 32, 310, 672, 32, 672, 33, 34, 677, 31, 677,
+ 4, 5, 6, 7, 8, 9, 10, 11, 918, 33,
+ 34, 33, 34, 17, 17, 18, 615, 631, 22, 618,
+ 634, 3, 383, 31, 6, 29, 33, 34, 10, 32,
+ 12, 13, 14, 15, 16, 17, 35, 636, 359, 36,
+ 359, 32, 33, 32, 365, 40, 365, 3, 33, 34,
+ 6, 33, 350, 660, 10, 31, 12, 13, 14, 15,
+ 16, 17, 49, 477, 33, 34, 92, 93, 310, 92,
+ 93, 94, 95, 96, 31, 98, 99, 6, 26, 32,
+ 84, 85, 86, 87, 34, 40, 26, 91, 34, 729,
+ 34, 32, 666, 729, 22, 669, 670, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, 32, 714, 39, 32,
+ 717, 31, 711, 712, 31, 64, 37, 359, 40, 123,
+ 32, 64, 364, 365, 40, 24, 40, 32, 727, 396,
+ 32, 31, 33, 25, 455, 33, 455, 409, 33, 35,
+ 34, 31, 409, 40, 35, 33, 33, 409, 420, 33,
+ 422, 34, 424, 474, 475, 474, 475, 34, 772, 34,
+ 774, 775, 35, 32, 109, 764, 32, 757, 758, 34,
+ 33, 64, 4, 5, 6, 7, 8, 9, 10, 11,
+ 33, 423, 25, 35, 32, 17, 31, 786, 97, 33,
+ 22, 831, 33, 33, 448, 831, 438, 29, 32, 35,
+ 33, 615, 31, 33, 25, 37, 478, 479, 34, 31,
+ 452, 630, 811, 455, 813, 862, 630, 32, 34, 633,
+ 33, 33, 862, 797, 798, 749, 750, 477, 33, 828,
+ 34, 32, 474, 475, 34, 24, 17, 18, 852, 879,
+ 477, 32, 97, 879, 477, 32, 25, 33, 32, 25,
+ 890, 33, 84, 85, 86, 87, 33, 35, 672, 34,
+ 34, 33, 33, 677, 33, 4, 5, 6, 7, 8,
+ 9, 10, 11, 32, 34, 33, 875, 876, 17, 25,
+ 920, 32, 32, 22, 920, 33, 33, 157, 33, 121,
+ 29, 931, 33, 33, 27, 811, 677, 672, 897, 178,
+ 158, 604, 40, 917, 24, 633, 380, 804, 637, 448,
+ 21, 168, 911, 762, 19, 386, 911, 734, 932, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 420, 777,
+ 889, 4, 5, 6, 7, 8, 9, 10, 11, 931,
+ 825, 736, -1, -1, 17, 84, 85, 86, 87, 22,
+ 769, -1, -1, 26, 27, 769, 679, 680, -1, -1,
+ -1, 4, 5, 6, 7, 8, 9, 10, 11, -1,
+ -1, 44, -1, -1, 17, -1, -1, -1, -1, 22,
+ 630, -1, 624, 633, 123, 657, -1, -1, -1, -1,
+ -1, -1, -1, 660, -1, 637, -1, -1, -1, -1,
+ -1, -1, -1, -1, 676, -1, -1, -1, -1, 676,
+ -1, 84, 85, 86, 676, -1, 658, -1, -1, -1,
+ -1, -1, 672, -1, -1, -1, -1, 677, 749, 750,
+ 749, 750, -1, -1, -1, 672, 678, -1, -1, 672,
+ 677, 84, 85, 86, 677, 707, -1, 714, -1, -1,
+ 717, 870, -1, -1, -1, -1, 870, -1, -1, 731,
+ -1, -1, 734, -1, -1, 737, -1, -1, -1, 888,
+ -1, 795, -1, 733, 888, -1, -1, 4, 5, 6,
+ 7, 8, 9, 10, 11, -1, -1, -1, -1, -1,
+ 17, -1, -1, -1, 736, 22, -1, -1, -1, -1,
+ -1, -1, 29, 30, 31, 924, -1, 749, 750, -1,
+ 924, -1, -1, -1, 41, -1, -1, 789, -1, 769,
+ -1, -1, -1, -1, -1, -1, 768, -1, -1, 771,
+ 802, 30, -1, 805, 806, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 810, -1, -1, 825, 796, -1, 83, 84, 85, 86,
+ 87, 88, 89, -1, 91, -1, -1, 66, 67, 68,
+ 69, 70, 71, 72, 73, 74, 75, 76, 77, -1,
+ 79, 80, 81, 82, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, 121, 867, 123, -1, -1, -1,
+ -1, -1, -1, -1, 876, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 870, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 888, 911,
+ -1, -1, -1, -1, 0, -1, -1, 3, 4, 5,
+ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
+ 26, 27, 28, 29, 924, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
+ 76, 77, 78, 79, -1, 81, -1, 83, 84, 85,
+ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
+ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 116, -1, -1, 119, -1, 121, 122, 123, 124, 125,
+ 0, -1, -1, 3, 4, 5, 6, 7, 8, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ -1, 31, 32, 33, 34, 35, 36, 37, 38, 39,
+ 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ -1, 81, -1, 83, 84, 85, 86, 87, 88, 89,
+ 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 116, -1, -1, 119,
+ -1, 121, 122, 123, 124, 125, 0, -1, -1, 3,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
- 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
- 34, 35, -1, 37, 38, 39, 40, 41, 42, 43,
+ 24, 25, 26, 27, 28, 29, -1, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 66, 67, 68, 69, 70, 71, -1, -1,
- 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
- 84, -1, 86, -1, 88, 89, 90, 91, 92, 93,
+ 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
+ 74, 75, 76, 77, 78, 79, -1, 81, -1, 83,
+ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
- 114, 115, 116, 117, 118, 119, 120, 0, 122, 123,
+ 114, 115, 116, -1, -1, 119, -1, 121, 122, 123,
+ 124, 125, 0, -1, -1, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
+ 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
+ 28, 29, -1, 31, 32, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
+ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
+ 78, 79, -1, 81, -1, 83, 84, 85, 86, 87,
+ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
+ 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 116, 3,
+ -1, 119, -1, 121, 122, 123, 124, 125, 12, -1,
+ -1, -1, -1, 17, 18, 19, -1, -1, 22, 23,
+ -1, 25, -1, 27, 28, 29, -1, -1, 32, -1,
+ -1, -1, -1, 4, 5, 6, 7, 8, 9, 10,
+ 11, -1, -1, 47, 48, 49, 17, -1, -1, -1,
+ -1, 22, -1, -1, -1, -1, 60, 61, 29, -1,
+ -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 87, 88, -1, 90, 91, 92, 93,
+ 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, -1, 84, 85, 86, 87, -1, -1, -1,
+ 124, 4, 5, 6, 7, 8, 9, 10, 11, -1,
+ -1, -1, -1, -1, 17, -1, -1, -1, -1, 22,
+ -1, -1, 3, -1, -1, -1, 29, -1, -1, -1,
+ 121, 12, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
+ -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
+ 61, 84, 85, 86, 87, 66, 67, 68, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, 121, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
+ -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
+ 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
+ 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
+ -1, 4, 5, 6, 7, 8, 9, 10, 11, 47,
+ 48, -1, -1, -1, 17, -1, -1, -1, -1, 22,
+ -1, -1, 60, 61, -1, -1, 29, -1, 66, 67,
+ 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
+ 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
+ -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
+ 118, 84, 85, 86, 87, -1, -1, 12, -1, -1,
+ -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
+ 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
+ -1, -1, -1, -1, 4, 5, 6, 7, 8, 9,
+ 10, 11, 47, 48, -1, -1, -1, 17, -1, -1,
+ -1, -1, 22, -1, -1, 60, 61, -1, -1, 29,
+ -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
+ -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
+ 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 3, -1, 118, 84, 85, 86, 87, -1, -1,
+ 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
+ 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
+ 32, -1, -1, -1, -1, -1, -1, 4, 5, 6,
+ 7, 8, 9, 10, 11, 47, 48, -1, -1, -1,
+ 17, -1, -1, -1, -1, 22, -1, -1, 60, 61,
+ -1, -1, 29, -1, 66, 67, 68, 69, 70, -1,
+ -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
+ 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 3, -1, 118, 84, 85, 86,
+ 87, -1, -1, 12, -1, -1, -1, -1, 17, 18,
+ -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
+ -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
+ 4, 5, 6, 7, 8, 9, 10, 11, 47, 48,
+ -1, -1, -1, 17, -1, -1, -1, -1, 22, -1,
+ -1, 60, 61, -1, -1, 29, -1, 66, 67, 68,
+ 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
+ -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
+ 84, 85, 86, 87, -1, -1, 12, -1, -1, -1,
+ -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
+ 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
+ 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
+ -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
+ -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
+ -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
+ -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
+ -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
+ -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
+ 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
+ -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
+ -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
+ -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
+ 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
+ -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
+ 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
+ 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
+ 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
+ -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
+ 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
+ -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
+ -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
+ -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
+ -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
+ -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
+ 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
+ -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
+ -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
+ 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
+ -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
+ 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
+ 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
+ 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
+ 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
+ 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
+ -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
+ 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
+ -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
+ 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
+ -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
+ -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
+ 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
+ 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
+ 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
+ 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
+ -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
+ -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
+ 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
+ -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
+ -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
+ -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
+ 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
+ -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
+ -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
+ -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
+ 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
+ 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
+ -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
+ -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
+ -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
+ -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
+ -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
+ -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
+ 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
+ -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
+ -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
+ -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
+ 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
+ -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
+ 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
+ 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
+ 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
+ -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
+ 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
+ -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
+ -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
+ -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
+ -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
+ -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
+ 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
+ -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
+ -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
+ 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
+ -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
+ 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
+ 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
+ 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
+ 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
+ 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
+ -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
+ 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
+ -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
+ 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
+ -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
+ -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
+ 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
+ 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
+ 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
+ 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
+ -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
+ -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
+ 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
+ -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
+ -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
+ -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
+ 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
+ -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
+ -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
+ -1, 17, 18, -1, -1, -1, 22, -1, -1, 25,
+ 26, 27, 28, -1, -1, -1, 32, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 47, 48, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 60, 61, -1, -1, -1, -1,
+ 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
+ -1, -1, 78, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, 90, 91, 92, 93, 94, 95,
+ -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
+ -1, -1, -1, -1, 17, 18, -1, -1, -1, 22,
+ -1, -1, 25, 26, 27, 28, -1, -1, -1, 32,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
+ -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
+ -1, -1, -1, -1, -1, 78, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, 90, 91, 92,
+ 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 3, -1, 118, -1, -1, -1, -1,
+ -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
+ -1, -1, 22, -1, -1, 25, 26, 27, 28, -1,
+ -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
+ 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 3, -1, 118, -1,
+ -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
+ 17, 18, -1, -1, -1, 22, -1, -1, 25, 26,
+ 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 47, 48, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
+ 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
+ -1, 78, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
+ 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
+ -1, 118, -1, -1, -1, -1, -1, -1, 12, -1,
+ -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
+ -1, 25, 26, 27, 28, -1, -1, -1, 32, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 47, 48, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
+ -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
+ -1, -1, -1, -1, 78, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
+ 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, 3, -1, 118, -1, -1, -1, -1, -1,
+ -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, 25, 26, 27, 28, -1, -1,
+ -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 47, 48, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
+ 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, 78, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 3, -1, 118, -1, -1,
+ -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
+ 18, -1, -1, -1, 22, -1, -1, 25, 26, 27,
+ 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
+ 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
+ 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
+ 78, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
+ -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
+ 118, -1, -1, -1, -1, -1, -1, 12, -1, -1,
+ -1, -1, 17, 18, -1, -1, -1, 22, -1, -1,
+ 25, 26, 27, 28, -1, -1, -1, 32, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 47, 48, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
+ -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
+ -1, -1, -1, 78, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, 90, 91, 92, 93, 94,
+ 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 3, -1, 118, -1, -1, -1, -1, -1, -1,
+ 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
+ 22, -1, -1, 25, 26, 27, 28, -1, -1, -1,
+ 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
+ -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
+ -1, -1, -1, -1, -1, -1, 78, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
+ 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 3, -1, 118, -1, -1, -1,
+ -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
+ -1, -1, -1, 22, -1, -1, 25, 26, 27, 28,
+ -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
+ 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
+ -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, 3, -1, 118,
+ -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
+ -1, 17, 18, -1, -1, -1, 22, -1, -1, -1,
+ -1, -1, -1, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, -1, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
+ 66, 67, 68, 69, 70, 4, 5, 6, 7, 8,
+ 9, 10, 11, -1, -1, -1, -1, -1, 17, -1,
+ -1, 87, 88, 22, 90, 91, 92, 93, 94, 95,
+ 29, 97, -1, -1, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
- 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
- 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
- 33, 34, 35, -1, 37, 38, 39, 40, 41, 42,
- 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, 66, 67, 68, 69, 70, 71, -1,
- -1, 74, 75, 76, 77, 78, 79, 80, 81, 82,
- 83, 84, -1, 86, -1, 88, 89, 90, 91, 92,
- 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
+ -1, -1, -1, -1, 17, 18, 19, -1, -1, 22,
+ 23, -1, 25, -1, 27, 28, 29, -1, -1, 32,
+ -1, -1, -1, -1, 83, 84, 85, 86, 87, -1,
+ -1, -1, -1, -1, 47, 48, 49, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 60, 61, -1,
+ -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 84, 85, 86, 87, 88, -1, 90, 91, 92,
+ 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 3, -1, -1, -1, -1, -1, -1,
+ -1, -1, 12, -1, -1, -1, -1, 17, 18, 19,
+ 20, 21, 22, 23, -1, 25, 26, 27, 28, -1,
+ -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 47, 48, 49,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 60, 61, -1, -1, -1, -1, 66, 67, 68, 69,
+ 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 3, -1, -1, -1,
+ -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
+ 17, 18, 19, -1, -1, 22, 23, -1, 25, -1,
+ 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 44, -1, -1,
+ 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 60, 61, -1, -1, -1, -1, 66,
+ 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, 89, 90, 91, 92, 93, 94, 95, -1,
+ 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
+ -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
+ -1, -1, -1, 17, 18, 19, -1, -1, 22, 23,
+ -1, 25, -1, 27, 28, -1, -1, -1, 32, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 44, -1, -1, 47, 48, 49, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 60, 61, -1, -1,
+ 64, -1, 66, 67, 68, 69, 70, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
+ 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, 3, -1, -1, -1, -1, -1, -1, -1,
+ -1, 12, -1, -1, -1, -1, 17, 18, 19, -1,
+ -1, 22, 23, 24, 25, -1, 27, 28, -1, -1,
+ -1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 44, -1, -1, 47, 48, 49, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
+ 61, -1, -1, -1, -1, 66, 67, 68, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 3, -1, -1, -1, -1,
+ -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
+ 18, 19, -1, -1, 22, 23, -1, 25, -1, 27,
+ 28, -1, -1, -1, 32, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 44, -1, -1, 47,
+ 48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 60, 61, -1, -1, -1, -1, 66, 67,
+ 68, 69, 70, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, 90, 91, 92, 93, 94, 95, -1, 97,
+ -1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 3, -1,
+ -1, -1, -1, -1, -1, -1, -1, 12, -1, -1,
+ -1, -1, 17, 18, 19, -1, -1, 22, 23, -1,
+ 25, -1, 27, 28, -1, -1, -1, 32, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 60, 61, -1, -1, -1,
+ -1, 66, 67, 68, 69, 70, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, 89, 90, 91, 92, 93, 94,
+ 95, -1, 97, -1, -1, 100, 101, 102, 103, 104,
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 3, -1, -1, -1, -1, -1, -1, -1, -1,
+ 12, -1, -1, -1, -1, 17, 18, 19, -1, -1,
+ 22, 23, -1, 25, -1, 27, 28, -1, -1, -1,
+ 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, 48, 49, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 60, 61,
+ -1, -1, -1, -1, 66, 67, 68, 69, 70, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
+ 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 3, -1, -1, -1, -1, -1,
+ -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
+ -1, -1, -1, 22, -1, -1, 25, -1, 27, 28,
+ -1, -1, -1, 32, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 47, 48,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 60, 61, -1, -1, -1, -1, 66, 67, 68,
+ 69, 70, -1, -1, -1, -1, -1, -1, -1, 78,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
+ -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, 3, -1, -1,
+ -1, -1, -1, -1, -1, -1, 12, -1, -1, -1,
+ -1, 17, 18, -1, -1, -1, 22, -1, -1, -1,
+ -1, -1, -1, 29, -1, -1, 32, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 49, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 66, 67, 68, 69, 70, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 87, 88, -1, 90, 91, 92, 93, 94, 95,
+ -1, 97, -1, -1, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 3, -1, -1, -1, -1, -1, -1, -1, -1, 12,
+ -1, -1, -1, -1, 17, 18, 31, -1, -1, 22,
+ -1, -1, -1, -1, -1, -1, 29, 42, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
+ 55, 56, 57, 58, 59, -1, 49, -1, -1, -1,
+ 65, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 66, 67, 68, 69, 70, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 87, 88, -1, 90, 91, 92,
+ 93, 94, 95, -1, 97, -1, -1, 100, 101, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
- 113, 114, 115, 116, 117, 118, 119, 120, 3, -1,
- 123, -1, -1, -1, -1, -1, -1, 12, 3, -1,
- -1, -1, 17, 18, -1, -1, -1, 12, -1, -1,
- -1, -1, 17, 18, -1, 30, 31, -1, 33, -1,
- 35, -1, -1, 38, -1, 30, 31, 32, 33, -1,
- 35, -1, -1, 38, -1, 50, -1, -1, 53, 54,
- 55, -1, -1, -1, -1, 50, -1, -1, 53, 54,
- 55, 66, 67, -1, -1, 70, -1, 72, 73, 74,
- 75, 66, 67, -1, -1, -1, -1, 72, 73, 74,
- 75, -1, -1, -1, -1, -1, -1, -1, 93, -1,
- 95, -1, 97, 98, 99, 100, -1, -1, 93, -1,
- 95, -1, 97, 98, 99, 100, -1, 112, 113, 114,
- 115, 116, 117, 118, 119, -1, 3, 112, 113, 114,
- 115, 116, 117, 118, 119, 12, -1, -1, -1, -1,
- 17, 18, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 30, 31, -1, 33, -1, 35, -1,
- -1, 38, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 50, -1, -1, 53, 54, 55, -1,
+ 113, 114, 115, 3, -1, -1, -1, -1, -1, -1,
+ -1, -1, 12, -1, -1, -1, -1, 17, 18, -1,
+ -1, -1, 22, -1, -1, 33, -1, -1, -1, -1,
+ -1, -1, 32, 33, 42, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
+ 58, 59, -1, -1, -1, -1, -1, 65, -1, -1,
+ -1, -1, -1, -1, -1, -1, 66, 67, 68, 69,
+ 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 3, -1, -1, -1,
+ -1, -1, -1, -1, -1, 12, -1, 33, -1, -1,
+ 17, 18, -1, -1, -1, 22, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
+ -1, -1, 49, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
- 67, -1, -1, -1, -1, 72, 73, 74, 75, -1,
+ 67, 68, 69, 70, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 93, -1, 95, -1,
- 97, 98, 99, 100, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 112, 113, 114, 115, 116,
- 117, 118, 119, 4, 5, 6, 7, 8, 9, 10,
- 11, -1, -1, -1, -1, -1, 17, -1, 19, 20,
- 21, 22, 23, 24, 25, 26, -1, -1, -1, 30,
- -1, -1, -1, -1, -1, 36, 37, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 47, -1, -1, -1,
- -1, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, -1, -1, -1, -1, -1, 18, 19, 20, 21,
- 22, 23, 24, 25, 26, -1, -1, -1, 30, 31,
- -1, 33, -1, 35, -1, -1, 38, 88, 89, 90,
- 91, 92, 93, 94, -1, 96, -1, -1, -1, -1,
- -1, 53, 54, 55, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 66, 67, -1, -1, -1, 120,
- 72, 73, 74, 75, -1, -1, -1, 3, -1, -1,
- -1, -1, -1, -1, -1, -1, 12, 89, 90, 91,
- 92, 93, 18, 95, -1, 97, 98, 99, 100, -1,
- -1, 27, -1, -1, 30, 31, -1, 33, -1, 35,
- 112, 113, 38, -1, -1, -1, 3, 4, 5, 6,
- 7, 8, 9, 10, 11, 12, -1, 53, 54, 55,
- 17, -1, 19, 20, 21, 22, 23, 24, 25, 26,
- 66, 67, -1, 30, -1, -1, 72, 73, 74, 75,
+ -1, 88, -1, 90, 91, 92, 93, 94, 95, -1,
+ 97, -1, -1, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 3,
+ -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
+ -1, -1, -1, 17, 18, -1, -1, -1, 22, -1,
+ 33, -1, -1, -1, -1, -1, -1, -1, 32, 42,
+ 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
+ 53, 54, 55, 56, 57, 58, 59, -1, -1, -1,
+ -1, -1, 65, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 66, 67, 68, 69, 70, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 3, -1, -1, -1, -1, -1, 93, -1, 95,
- 12, 97, 98, 99, 100, -1, 18, -1, 104, 105,
- 106, 107, 108, 109, 110, 111, 112, 113, 30, 31,
- -1, 33, -1, 35, -1, -1, 38, -1, -1, -1,
- -1, -1, 89, 90, 91, -1, -1, -1, -1, -1,
- -1, 53, 54, 55, 3, -1, -1, -1, -1, -1,
- -1, -1, -1, 12, 66, 67, -1, -1, -1, 18,
- 72, 73, 74, 75, -1, -1, -1, -1, -1, -1,
- -1, 30, -1, -1, 33, 3, 35, -1, -1, 38,
- -1, 93, -1, 95, 12, 97, 98, 99, 100, -1,
- 18, -1, -1, -1, 53, 54, -1, -1, -1, -1,
- 112, 113, 30, -1, -1, -1, -1, 66, 67, -1,
- 38, -1, -1, 72, 73, 74, 75, -1, -1, -1,
- -1, -1, 3, -1, 83, -1, -1, 55, -1, -1,
- -1, 12, -1, -1, 93, -1, 95, 18, 97, 98,
- 99, 100, -1, -1, 72, 73, 74, 75, -1, 30,
- -1, 3, -1, 112, 113, -1, -1, 38, -1, -1,
- 12, -1, -1, -1, -1, 93, 18, 95, -1, 97,
- 98, 99, 100, -1, 55, -1, -1, -1, 30, -1,
- 3, -1, -1, -1, 112, 113, -1, -1, -1, 12,
- -1, 72, 73, 74, 75, 18, -1, -1, -1, -1,
- -1, -1, -1, 55, 27, -1, -1, 30, -1, -1,
- -1, -1, 93, -1, 95, 3, 97, 98, 99, 100,
- 72, 73, 74, 75, 12, -1, -1, -1, -1, -1,
- 18, 112, 113, -1, -1, -1, -1, -1, -1, -1,
- -1, 93, 30, 95, 3, 97, 98, 99, 100, 72,
- 73, 74, 75, 12, -1, -1, -1, -1, -1, 18,
- 112, 113, -1, -1, -1, -1, -1, 55, -1, -1,
- 93, 30, 95, 3, 97, 98, 99, 100, -1, 38,
- -1, -1, 12, -1, 72, 73, 74, 75, 18, 112,
- 113, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 30, -1, -1, -1, -1, 93, -1, 95, -1, 97,
- 98, 99, 100, 72, 73, 74, 75, -1, -1, -1,
- -1, -1, -1, -1, 112, 113, -1, -1, -1, -1,
- -1, -1, -1, -1, 93, -1, 95, -1, 97, 98,
- 99, 100, 72, 73, 74, 75, -1, -1, -1, -1,
- -1, -1, -1, 112, 113, -1, -1, -1, -1, -1,
- -1, -1, -1, 93, -1, 95, -1, 97, 98, 99,
- 100, 4, 5, 6, 7, 8, 9, 10, 11, -1,
- -1, -1, 112, 113, 17, -1, 19, 20, 21, 22,
- 23, 24, 25, 26, -1, -1, -1, 30, 4, 5,
- 6, 7, 8, 9, 10, 11, -1, -1, -1, -1,
- -1, 17, -1, 19, 20, 21, 22, 23, 24, 25,
- 26, -1, -1, -1, 30, -1, 4, 5, 6, 7,
- 8, 9, 10, 11, -1, -1, -1, 70, -1, 17,
- -1, 19, 20, 21, 22, 23, 24, 25, 26, -1,
- -1, -1, 30, -1, -1, -1, 89, 90, 91, 92,
- -1, -1, -1, -1, 70, 43, -1, -1, -1, -1,
- -1, -1, -1, -1, 4, 5, 6, 7, 8, 9,
- 10, 11, -1, 89, 90, 91, 92, 17, -1, 19,
- 20, 21, 22, 23, 24, 25, 26, -1, -1, -1,
- 30, -1, 4, 5, 6, 7, 8, 9, 10, 11,
- -1, 89, 90, 91, 92, 17, -1, 19, 20, 21,
- 22, 23, 24, 25, 26, -1, -1, -1, 30, 4,
- 5, 6, 7, 8, 9, 10, 11, -1, -1, -1,
- -1, -1, 17, -1, 19, 20, 21, 22, 23, 24,
- 25, 26, -1, -1, -1, 30, -1, -1, -1, 89,
- 90, 91, 92, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 4, 5,
- 6, 7, 8, 9, 10, 11, -1, 89, 90, 91,
- 92, 17, -1, 19, 20, 21, 22, 23, 24, 25,
- 26, -1, -1, -1, 30, 4, 5, 6, 7, 8,
- 9, 10, 11, -1, 89, 90, 91, 92, 17, -1,
- 19, 20, 21, 22, 23, 24, 25, 26, -1, -1,
- -1, 30, 4, 5, 6, 7, 8, 9, 10, 11,
- -1, -1, -1, -1, -1, -1, -1, 19, 20, 21,
- 22, 23, 24, 25, 26, 37, -1, -1, 30, -1,
- -1, -1, -1, 89, 90, 91, 48, 49, 50, 51,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, 39, -1, -1, -1, -1, 71,
- 89, 90, 91, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 39, -1, -1, -1, -1, 71, 89, 90, 91,
+ -1, -1, -1, -1, 88, -1, 90, 91, 92, 93,
+ 94, 95, -1, 97, -1, -1, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, 3, -1, -1, -1, -1, -1, -1, -1,
+ -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, 34, -1, -1, -1, -1, -1,
+ -1, 32, 42, 43, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
+ -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
+ -1, 3, -1, -1, -1, 66, 67, 68, 69, 70,
+ 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
+ 22, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, -1, -1, -1, -1, -1,
+ -1, -1, 64, -1, 66, 67, 68, 69, 70, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, 90, 91,
+ 92, 93, 94, 95, -1, 97, -1, -1, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 3, -1, -1, -1, -1, -1,
+ -1, -1, -1, 12, -1, -1, -1, 35, 17, 18,
+ -1, -1, -1, 22, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 39, -1,
- -1, -1, -1, 71, -1, -1, -1, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
- 61, 62, 63, 64, 65, 40, -1, -1, -1, -1,
- 71, -1, -1, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 41, -1, -1, -1, -1, 71, -1, 48, 49,
+ 58, 59, -1, -1, -1, -1, -1, 65, -1, -1,
+ 49, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 3, -1, -1, -1, 66, 67, 68,
+ 69, 70, 12, -1, -1, -1, -1, 17, 18, -1,
+ -1, -1, 22, -1, -1, -1, -1, -1, -1, 88,
+ -1, 90, 91, 92, 93, 94, 95, -1, 97, -1,
+ -1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, -1, -1, -1,
+ -1, -1, 3, -1, 64, -1, 66, 67, 68, 69,
+ 70, 12, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, -1, -1, -1, -1, 88, -1,
+ 90, 91, 92, 93, 94, 95, -1, 97, -1, -1,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 66, 67, 68, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, 90,
+ 91, 92, 93, 94, 95, -1, 97, -1, -1, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 35, -1, -1, -1, -1,
+ -1, -1, 42, 43, 44, 45, 46, 47, 48, 49,
50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
- 60, 61, 62, 63, 64, 65, 41, -1, -1, -1,
- -1, 71, -1, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, -1, -1, -1, -1, -1, 71, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
- 61, 62, 63, 64, 65, -1, -1, -1, -1, -1,
- 71, 48, 49, 50, 51, 52, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, -1,
- -1, -1, -1, -1, 71, 48, 49, 50, 51, 52,
- 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, -1, -1, -1, -1, -1, 71, 48,
- 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, -1, -1, -1,
- -1, -1, 71
+ -1, -1, -1, 39, -1, 65, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, -1, -1, -1, -1, -1, 65,
+ 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
+ 52, 53, 54, 55, 56, 57, 58, 59, -1, -1,
+ -1, -1, -1, 65, 42, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
+ 58, 59, -1, -1, -1, -1, -1, 65, 42, 43,
+ 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
+ 54, 55, 56, 57, 58, 59, -1, -1, -1, -1,
+ -1, 65, 42, 43, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
+ -1, -1, -1, -1, -1, 65
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
-static const unsigned char yystos[] =
+static const unsigned short int yystos[] =
{
0, 4, 5, 6, 7, 8, 9, 10, 11, 17,
- 19, 20, 21, 22, 23, 24, 25, 26, 30, 36,
- 37, 47, 88, 89, 90, 91, 92, 93, 94, 96,
- 120, 132, 133, 134, 135, 136, 152, 157, 159, 160,
- 161, 162, 163, 164, 165, 166, 167, 172, 173, 174,
- 175, 176, 178, 180, 181, 186, 191, 200, 201, 9,
- 11, 3, 12, 18, 30, 38, 55, 72, 73, 74,
- 75, 93, 95, 97, 98, 99, 100, 112, 113, 130,
- 199, 30, 89, 90, 91, 92, 174, 72, 74, 75,
- 76, 77, 78, 79, 80, 81, 82, 84, 85, 86,
- 87, 137, 138, 139, 141, 142, 143, 89, 90, 158,
- 159, 173, 178, 186, 192, 193, 130, 130, 130, 194,
- 3, 6, 10, 12, 17, 153, 154, 160, 34, 201,
- 50, 235, 236, 0, 134, 130, 179, 198, 199, 4,
- 5, 6, 9, 168, 6, 165, 171, 37, 38, 42,
- 42, 198, 199, 38, 55, 130, 130, 130, 130, 38,
- 0, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
- 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
- 32, 33, 34, 35, 37, 38, 39, 40, 41, 42,
- 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, 66, 67, 68, 69, 70, 71, 73,
- 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
- 84, 86, 88, 89, 90, 91, 92, 93, 94, 95,
- 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
- 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
- 116, 117, 118, 119, 120, 123, 131, 147, 148, 27,
- 130, 144, 36, 147, 34, 123, 140, 27, 130, 33,
- 35, 38, 53, 54, 66, 67, 83, 129, 130, 149,
- 130, 194, 130, 194, 37, 164, 130, 41, 196, 196,
- 196, 196, 199, 31, 37, 42, 31, 44, 197, 38,
- 130, 6, 169, 6, 9, 170, 168, 17, 92, 159,
- 177, 178, 130, 187, 188, 97, 98, 99, 100, 101,
- 102, 103, 207, 208, 209, 222, 223, 229, 230, 231,
- 130, 198, 177, 131, 147, 122, 147, 149, 38, 130,
- 149, 38, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 71, 128, 41, 42, 183, 183, 37, 182, 183, 182,
- 38, 130, 46, 207, 38, 33, 198, 197, 199, 17,
- 199, 39, 40, 46, 40, 43, 179, 212, 17, 18,
- 31, 33, 35, 38, 114, 115, 116, 117, 118, 119,
- 129, 179, 189, 190, 204, 224, 225, 226, 235, 179,
- 130, 232, 233, 18, 225, 43, 208, 189, 39, 130,
- 39, 40, 38, 39, 130, 149, 150, 151, 149, 149,
- 38, 158, 184, 185, 179, 179, 198, 27, 28, 29,
- 33, 34, 155, 156, 43, 3, 6, 10, 12, 13,
- 14, 15, 16, 17, 39, 202, 203, 205, 206, 45,
- 130, 199, 197, 17, 70, 178, 189, 188, 46, 37,
- 30, 92, 159, 189, 189, 71, 128, 46, 37, 38,
- 32, 46, 38, 37, 40, 37, 37, 39, 197, 70,
- 130, 145, 146, 39, 39, 40, 41, 33, 41, 195,
- 43, 185, 130, 37, 41, 39, 40, 204, 39, 39,
- 18, 27, 95, 104, 105, 106, 107, 108, 109, 110,
- 111, 112, 113, 189, 211, 213, 214, 215, 216, 236,
- 39, 39, 189, 189, 224, 179, 235, 179, 234, 233,
- 39, 39, 40, 149, 149, 40, 41, 37, 39, 205,
- 41, 203, 205, 46, 197, 17, 18, 112, 216, 219,
- 38, 38, 211, 189, 41, 40, 227, 179, 39, 40,
- 197, 147, 130, 33, 38, 205, 235, 155, 38, 189,
- 204, 189, 70, 224, 228, 39, 37, 179, 39, 33,
- 70, 204, 40, 40, 217, 39, 40, 40, 32, 38,
- 189, 179, 210, 211, 212, 218, 236, 39, 224, 33,
- 39, 220, 221, 224, 39, 40, 211, 39, 41, 39,
- 40, 210, 205, 39, 224
+ 22, 29, 30, 31, 41, 83, 84, 85, 86, 87,
+ 88, 89, 91, 116, 121, 123, 146, 147, 148, 149,
+ 150, 167, 170, 175, 176, 177, 178, 179, 180, 181,
+ 182, 183, 188, 191, 194, 198, 199, 200, 201, 203,
+ 205, 209, 211, 212, 218, 226, 240, 241, 9, 11,
+ 22, 84, 85, 86, 87, 123, 199, 209, 30, 66,
+ 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
+ 77, 79, 80, 81, 82, 151, 152, 153, 154, 156,
+ 157, 158, 84, 85, 121, 171, 173, 200, 201, 209,
+ 218, 227, 228, 3, 12, 17, 18, 22, 66, 67,
+ 68, 69, 70, 88, 90, 91, 92, 93, 94, 95,
+ 97, 100, 101, 102, 103, 104, 105, 106, 107, 108,
+ 109, 110, 111, 112, 113, 114, 115, 143, 259, 271,
+ 143, 143, 229, 3, 6, 10, 12, 246, 248, 26,
+ 123, 199, 241, 44, 279, 280, 22, 83, 198, 199,
+ 0, 148, 49, 143, 176, 210, 235, 236, 237, 238,
+ 177, 4, 5, 6, 9, 22, 184, 6, 181, 187,
+ 125, 189, 32, 32, 36, 36, 143, 143, 143, 199,
+ 34, 192, 0, 3, 4, 5, 6, 7, 8, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+ 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
+ 71, 72, 73, 74, 75, 76, 77, 78, 79, 81,
+ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
+ 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 116, 119, 121, 122, 123, 124, 125,
+ 143, 144, 159, 30, 3, 12, 17, 18, 22, 66,
+ 67, 68, 69, 70, 88, 90, 91, 92, 93, 94,
+ 95, 97, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, 112, 113, 114, 115, 144, 162,
+ 163, 162, 26, 119, 155, 144, 25, 27, 28, 32,
+ 47, 48, 60, 61, 78, 142, 143, 164, 223, 143,
+ 229, 143, 229, 173, 31, 143, 35, 232, 232, 232,
+ 232, 23, 31, 199, 36, 195, 36, 23, 171, 189,
+ 195, 29, 87, 239, 38, 233, 32, 143, 124, 238,
+ 6, 185, 6, 9, 186, 184, 32, 31, 17, 175,
+ 202, 204, 206, 207, 208, 209, 206, 143, 219, 220,
+ 92, 93, 94, 95, 96, 98, 99, 250, 251, 252,
+ 265, 268, 274, 275, 276, 195, 193, 210, 236, 31,
+ 26, 118, 164, 190, 162, 144, 26, 27, 32, 44,
+ 225, 164, 32, 143, 164, 32, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 65, 141, 35, 36, 214, 214,
+ 31, 213, 214, 213, 40, 195, 0, 3, 4, 5,
+ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
+ 26, 27, 28, 29, 31, 32, 33, 34, 35, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 81, 83, 84, 85, 86, 87, 88, 89, 90,
+ 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 116, 119, 121, 122, 123,
+ 124, 125, 145, 195, 196, 197, 250, 32, 31, 31,
+ 19, 23, 25, 27, 29, 32, 87, 124, 142, 210,
+ 221, 222, 223, 234, 235, 236, 233, 6, 190, 235,
+ 32, 33, 34, 34, 33, 34, 40, 34, 230, 210,
+ 255, 221, 244, 269, 270, 271, 279, 210, 143, 277,
+ 278, 210, 266, 270, 37, 251, 221, 34, 32, 26,
+ 177, 224, 225, 22, 33, 143, 164, 165, 166, 164,
+ 164, 32, 121, 172, 173, 174, 175, 215, 218, 227,
+ 228, 210, 210, 19, 20, 21, 168, 169, 190, 221,
+ 37, 197, 37, 13, 14, 15, 16, 17, 33, 242,
+ 243, 245, 247, 248, 249, 17, 22, 175, 221, 221,
+ 39, 65, 141, 39, 32, 143, 33, 32, 206, 233,
+ 64, 208, 233, 64, 221, 220, 37, 40, 31, 40,
+ 31, 32, 24, 40, 32, 31, 34, 32, 31, 31,
+ 210, 64, 143, 160, 161, 235, 33, 33, 33, 34,
+ 35, 25, 174, 35, 231, 37, 172, 232, 232, 31,
+ 35, 33, 34, 244, 33, 33, 221, 221, 235, 32,
+ 33, 235, 33, 34, 33, 33, 19, 89, 90, 109,
+ 221, 254, 256, 257, 258, 259, 280, 269, 210, 279,
+ 193, 278, 17, 193, 267, 33, 34, 164, 164, 34,
+ 25, 35, 34, 216, 231, 214, 214, 245, 35, 243,
+ 245, 40, 221, 35, 143, 206, 33, 233, 64, 233,
+ 233, 109, 256, 17, 18, 32, 259, 262, 32, 32,
+ 254, 34, 272, 210, 33, 33, 162, 64, 143, 25,
+ 35, 32, 210, 217, 31, 216, 245, 279, 168, 221,
+ 33, 33, 33, 267, 32, 221, 244, 64, 269, 273,
+ 33, 31, 97, 33, 35, 25, 231, 34, 31, 64,
+ 32, 33, 233, 33, 244, 34, 34, 260, 33, 34,
+ 18, 270, 271, 32, 34, 210, 24, 206, 32, 97,
+ 32, 221, 210, 253, 254, 255, 261, 280, 33, 269,
+ 25, 25, 231, 33, 33, 206, 262, 263, 264, 269,
+ 33, 34, 254, 34, 33, 35, 33, 33, 32, 33,
+ 34, 253, 25, 245, 32, 233, 244, 33, 269, 33,
+ 206, 32, 33, 263, 233, 33, 33
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-static const unsigned char yyr1[] =
+static const unsigned short int yyr1[] =
{
- 0, 127, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 129, 129, 129, 129, 130, 130, 130, 130, 130, 130,
- 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
- 131, 131, 131, 131, 131, 132, 132, 133, 133, 134,
- 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
- 134, 135, 136, 137, 137, 137, 137, 137, 137, 137,
- 137, 137, 138, 138, 139, 139, 139, 140, 140, 141,
- 141, 142, 142, 142, 143, 143, 144, 144, 144, 145,
- 145, 146, 146, 147, 147, 148, 148, 149, 149, 149,
- 149, 149, 149, 149, 149, 149, 149, 150, 150, 151,
- 151, 152, 153, 154, 154, 154, 154, 155, 155, 156,
- 156, 156, 156, 156, 157, 158, 158, 158, 158, 158,
- 158, 159, 159, 160, 160, 161, 161, 161, 162, 162,
- 162, 162, 163, 163, 163, 164, 164, 164, 164, 164,
- 164, 164, 164, 165, 165, 166, 166, 166, 167, 167,
- 167, 167, 168, 168, 168, 168, 168, 169, 169, 170,
- 170, 170, 171, 171, 171, 172, 173, 173, 173, 173,
- 174, 174, 175, 175, 175, 175, 176, 176, 177, 177,
- 177, 177, 178, 178, 178, 179, 179, 180, 181, 182,
- 182, 183, 184, 184, 185, 186, 187, 187, 188, 188,
- 189, 189, 189, 189, 189, 189, 190, 190, 190, 190,
- 191, 192, 193, 194, 194, 195, 195, 196, 196, 197,
- 197, 198, 198, 199, 199, 200, 200, 201, 201, 201,
- 202, 202, 203, 203, 204, 205, 206, 206, 206, 206,
- 206, 206, 206, 206, 206, 207, 207, 208, 208, 208,
- 208, 208, 209, 209, 210, 210, 210, 211, 211, 211,
- 211, 211, 212, 212, 213, 214, 215, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 217, 217, 218,
- 218, 219, 219, 220, 220, 221, 221, 222, 223, 224,
- 224, 224, 225, 225, 226, 226, 226, 226, 226, 226,
- 226, 226, 227, 227, 228, 228, 229, 230, 230, 231,
- 232, 232, 233, 234, 234, 235, 235, 236
+ 0, 140, 141, 141, 141, 141, 141, 141, 141, 141,
+ 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
+ 142, 142, 142, 142, 143, 143, 143, 143, 143, 143,
+ 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+ 143, 143, 143, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+ 145, 145, 145, 145, 145, 145, 145, 146, 146, 147,
+ 147, 148, 148, 148, 148, 148, 148, 148, 148, 148,
+ 148, 148, 148, 148, 148, 149, 150, 150, 151, 151,
+ 151, 151, 151, 151, 151, 151, 152, 152, 153, 153,
+ 154, 154, 154, 155, 155, 156, 156, 157, 157, 157,
+ 158, 158, 159, 159, 159, 159, 160, 160, 160, 160,
+ 161, 161, 162, 162, 163, 163, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 165, 165, 166,
+ 166, 167, 168, 168, 168, 169, 169, 169, 170, 170,
+ 171, 171, 172, 172, 173, 173, 173, 173, 173, 174,
+ 174, 174, 174, 174, 175, 175, 175, 176, 176, 177,
+ 177, 178, 178, 178, 179, 179, 179, 179, 180, 180,
+ 180, 181, 181, 182, 182, 182, 183, 183, 183, 183,
+ 184, 184, 184, 184, 184, 184, 185, 185, 186, 186,
+ 186, 186, 187, 187, 187, 188, 188, 189, 189, 190,
+ 190, 191, 192, 192, 193, 193, 194, 194, 194, 194,
+ 195, 196, 196, 197, 197, 198, 198, 199, 199, 200,
+ 200, 201, 201, 201, 201, 202, 202, 203, 204, 205,
+ 206, 206, 206, 207, 207, 208, 208, 208, 209, 209,
+ 210, 210, 211, 212, 213, 213, 214, 215, 215, 216,
+ 216, 217, 217, 218, 219, 219, 220, 220, 221, 221,
+ 221, 221, 221, 221, 222, 222, 222, 222, 222, 222,
+ 223, 223, 224, 224, 225, 225, 225, 226, 227, 228,
+ 229, 229, 230, 230, 231, 231, 231, 231, 232, 232,
+ 233, 233, 233, 234, 234, 234, 234, 235, 235, 236,
+ 236, 237, 237, 238, 238, 239, 239, 240, 240, 241,
+ 241, 241, 242, 242, 243, 243, 244, 245, 246, 247,
+ 247, 248, 248, 248, 248, 249, 249, 249, 249, 249,
+ 250, 250, 251, 251, 251, 251, 251, 252, 252, 253,
+ 253, 253, 254, 254, 254, 254, 254, 254, 255, 255,
+ 256, 257, 257, 258, 259, 259, 259, 259, 259, 259,
+ 259, 259, 259, 259, 260, 260, 261, 261, 262, 262,
+ 263, 263, 264, 264, 265, 266, 266, 267, 267, 267,
+ 268, 269, 269, 269, 270, 270, 271, 271, 271, 271,
+ 271, 271, 271, 271, 272, 272, 273, 273, 274, 275,
+ 275, 276, 277, 277, 278, 279, 279, 280
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 0, 1, 1, 2, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 3, 3, 2, 2, 1, 2, 2, 2, 2,
- 2, 2, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 6, 2, 2, 0,
- 1, 1, 3, 0, 1, 1, 2, 3, 2, 3,
- 5, 2, 4, 1, 1, 1, 4, 0, 1, 1,
- 3, 6, 1, 1, 1, 1, 1, 0, 1, 1,
- 1, 1, 1, 1, 3, 1, 1, 2, 4, 4,
- 2, 2, 1, 1, 1, 2, 2, 2, 1, 1,
- 1, 1, 1, 1, 2, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 2, 1, 1,
- 2, 2, 0, 1, 2, 1, 2, 0, 1, 0,
- 1, 1, 0, 1, 2, 2, 5, 7, 6, 8,
- 1, 1, 6, 7, 6, 5, 1, 2, 0, 1,
- 1, 3, 2, 4, 3, 3, 2, 4, 4, 1,
- 1, 3, 1, 2, 3, 4, 1, 3, 1, 3,
- 1, 4, 3, 3, 2, 5, 1, 1, 1, 1,
- 2, 2, 2, 0, 1, 0, 7, 0, 7, 0,
- 3, 0, 1, 1, 2, 4, 5, 7, 8, 13,
- 1, 3, 2, 4, 2, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
- 1, 1, 3, 6, 1, 2, 1, 1, 1, 1,
- 1, 1, 3, 4, 6, 8, 5, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 0, 2, 1,
- 3, 1, 1, 0, 1, 1, 3, 3, 3, 1,
- 1, 3, 5, 6, 1, 1, 1, 1, 1, 1,
- 1, 1, 0, 2, 1, 3, 3, 1, 1, 3,
- 1, 3, 4, 1, 3, 0, 1, 1
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 0, 1, 1,
+ 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 3, 2, 3, 2, 2,
+ 1, 2, 2, 2, 1, 2, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 2, 6, 2, 2, 0, 1, 1, 3,
+ 1, 3, 0, 1, 1, 2, 3, 2, 3, 5,
+ 2, 4, 1, 1, 1, 1, 4, 0, 1, 1,
+ 3, 6, 1, 1, 1, 1, 1, 1, 3, 4,
+ 1, 2, 1, 2, 1, 1, 2, 4, 4, 1,
+ 1, 1, 3, 3, 1, 2, 2, 1, 1, 1,
+ 1, 2, 2, 2, 1, 1, 1, 1, 1, 1,
+ 2, 1, 1, 1, 1, 2, 1, 1, 2, 2,
+ 0, 1, 1, 2, 1, 2, 0, 1, 0, 1,
+ 1, 2, 0, 1, 2, 3, 4, 0, 4, 1,
+ 2, 4, 0, 2, 1, 3, 3, 4, 3, 4,
+ 3, 1, 2, 1, 1, 1, 2, 1, 1, 5,
+ 7, 5, 7, 13, 16, 5, 7, 6, 5, 1,
+ 0, 1, 1, 1, 3, 1, 1, 2, 1, 2,
+ 3, 2, 4, 4, 1, 1, 3, 4, 5, 0,
+ 2, 2, 4, 5, 1, 3, 1, 3, 1, 4,
+ 3, 3, 2, 5, 1, 1, 1, 1, 1, 1,
+ 4, 2, 1, 2, 2, 1, 1, 2, 2, 2,
+ 0, 1, 0, 1, 0, 2, 7, 9, 0, 7,
+ 0, 3, 3, 0, 1, 1, 1, 0, 1, 1,
+ 2, 1, 2, 1, 2, 1, 1, 4, 5, 7,
+ 8, 13, 1, 3, 2, 4, 2, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 2, 1, 1, 1, 1, 1, 3, 6, 1,
+ 2, 1, 1, 1, 1, 2, 1, 1, 3, 4,
+ 6, 8, 12, 5, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 0, 2, 1, 3, 1, 1,
+ 0, 1, 1, 3, 3, 6, 1, 0, 1, 1,
+ 3, 1, 1, 3, 5, 6, 1, 1, 1, 1,
+ 1, 1, 1, 1, 0, 2, 1, 3, 3, 1,
+ 1, 3, 1, 3, 4, 0, 1, 1
};
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1, 2, 2, 2, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2, 1, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
+ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2, 1, 0, 0, 0, 2, 1, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2, 1, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0
};
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0
};
list of conflicting reductions corresponding to action entry for
state STATE-NUM in yytable. 0 means no conflicts. The list in
yyconfl is terminated by a rule number of 0. */
-static const unsigned char yyconflp[] =
+static const unsigned short int yyconflp[] =
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3215, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3217, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 15, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,
+ 11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3197, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 13, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3209, 0, 3211,
+ 3213, 0, 3199, 0, 0, 0, 0, 0, 0, 0,
+ 0, 157, 0, 3219, 0, 3221, 3223, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3201, 3203, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3205, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3207, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 19, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3225, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
+ 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,
+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 159, 0, 0, 0, 0, 0, 0, 0,
+ 0, 161, 0, 0, 0, 0, 163, 165, 0, 0,
+ 0, 167, 0, 0, 169, 171, 173, 175, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 185, 0, 0, 0, 0, 187, 189, 191, 193, 195,
+ 0, 0, 0, 0, 0, 0, 0, 197, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 199, 0, 201,
+ 203, 205, 207, 209, 211, 0, 213, 0, 0, 215,
+ 217, 219, 221, 223, 225, 227, 229, 231, 233, 235,
+ 237, 239, 241, 243, 245, 247, 0, 0, 0, 0,
+ 0, 0, 0, 0, 249, 0, 0, 0, 0, 251,
+ 253, 0, 0, 0, 255, 0, 0, 257, 259, 261,
+ 263, 0, 0, 0, 265, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 267,
+ 269, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 271, 273, 0, 0, 0, 0, 275, 277,
+ 279, 281, 283, 0, 0, 0, 0, 0, 0, 0,
+ 285, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 287, 0, 289, 291, 293, 295, 297, 299, 0, 301,
+ 0, 0, 303, 305, 307, 309, 311, 313, 315, 317,
+ 319, 321, 323, 325, 327, 329, 331, 333, 335, 0,
+ 0, 0, 0, 0, 0, 0, 0, 337, 0, 0,
+ 0, 0, 339, 341, 0, 0, 0, 343, 0, 0,
+ 345, 347, 349, 351, 0, 0, 0, 353, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 355, 357, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 359, 361, 0, 0, 0,
+ 0, 363, 365, 367, 369, 371, 0, 0, 0, 0,
+ 0, 0, 0, 373, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 375, 0, 377, 379, 381, 383, 385,
+ 387, 0, 389, 0, 0, 391, 393, 395, 397, 399,
+ 401, 403, 405, 407, 409, 411, 413, 415, 417, 419,
+ 421, 423, 0, 0, 0, 0, 0, 0, 0, 0,
+ 426, 0, 0, 0, 0, 429, 432, 0, 0, 0,
+ 435, 0, 0, 438, 441, 444, 447, 0, 0, 0,
+ 450, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 453, 456, 0, 0, 0,
+ 149, 0, 0, 0, 0, 151, 0, 0, 459, 462,
+ 0, 0, 153, 0, 465, 468, 471, 474, 477, 0,
+ 0, 0, 0, 0, 0, 0, 480, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 483, 0, 486, 489,
+ 492, 495, 498, 501, 0, 504, 0, 0, 507, 510,
+ 513, 516, 519, 522, 525, 528, 531, 534, 537, 540,
+ 543, 546, 549, 552, 557, 0, 555, 0, 0, 0,
+ 155, 0, 0, 559, 0, 0, 0, 0, 561, 563,
+ 0, 0, 0, 565, 0, 0, 567, 569, 571, 573,
+ 0, 0, 0, 575, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 577, 579,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 581, 583, 0, 0, 0, 0, 585, 587, 589,
+ 591, 593, 0, 0, 0, 0, 0, 0, 0, 595,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 597,
+ 0, 599, 601, 603, 605, 607, 609, 0, 611, 0,
+ 0, 613, 615, 617, 619, 621, 623, 625, 627, 629,
+ 631, 633, 635, 637, 639, 641, 643, 645, 0, 0,
+ 0, 0, 0, 0, 0, 0, 647, 0, 0, 0,
+ 0, 649, 651, 0, 0, 0, 653, 0, 0, 655,
+ 657, 659, 661, 0, 0, 0, 663, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 665, 667, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 669, 671, 0, 0, 0, 0,
+ 673, 675, 677, 679, 681, 0, 0, 0, 0, 0,
+ 0, 0, 683, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 685, 0, 687, 689, 691, 693, 695, 697,
+ 0, 699, 0, 0, 701, 703, 705, 707, 709, 711,
+ 713, 715, 717, 719, 721, 723, 725, 727, 729, 731,
+ 733, 0, 0, 0, 0, 0, 0, 0, 0, 735,
+ 0, 0, 0, 0, 737, 739, 0, 0, 0, 741,
+ 0, 0, 743, 745, 747, 749, 0, 0, 0, 751,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 753, 755, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 757, 759, 0,
+ 0, 0, 0, 761, 763, 765, 767, 769, 0, 0,
+ 0, 0, 0, 0, 0, 771, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 773, 0, 775, 777, 779,
+ 781, 783, 785, 0, 787, 0, 0, 789, 791, 793,
+ 795, 797, 799, 801, 803, 805, 807, 809, 811, 813,
+ 815, 817, 819, 821, 0, 0, 0, 0, 0, 0,
+ 0, 0, 823, 0, 0, 0, 0, 825, 827, 0,
+ 0, 0, 829, 0, 0, 831, 833, 835, 837, 0,
+ 0, 0, 839, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 841, 843, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 845, 847, 0, 0, 0, 0, 849, 851, 853, 855,
+ 857, 0, 0, 0, 0, 0, 0, 0, 859, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 861, 0,
+ 863, 865, 867, 869, 871, 873, 0, 875, 0, 0,
+ 877, 879, 881, 883, 885, 887, 889, 891, 893, 895,
+ 897, 899, 901, 903, 905, 907, 909, 0, 0, 0,
+ 0, 0, 0, 0, 0, 911, 0, 0, 0, 0,
+ 913, 915, 0, 0, 0, 917, 0, 0, 919, 921,
+ 923, 925, 0, 0, 0, 927, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 929, 931, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 933, 935, 0, 0, 0, 0, 937,
+ 939, 941, 943, 945, 0, 0, 0, 0, 0, 0,
+ 0, 947, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 949, 0, 951, 953, 955, 957, 959, 961, 0,
+ 963, 0, 0, 965, 967, 969, 971, 973, 975, 977,
+ 979, 981, 983, 985, 987, 989, 991, 993, 995, 997,
+ 0, 0, 0, 0, 0, 0, 0, 0, 999, 0,
+ 0, 0, 0, 1001, 1003, 0, 0, 0, 1005, 0,
+ 0, 1007, 1009, 1011, 1013, 0, 0, 0, 1015, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1017, 1019, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1021, 1023, 0, 0,
+ 0, 0, 1025, 1027, 1029, 1031, 1033, 0, 0, 0,
+ 0, 0, 0, 0, 1035, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1037, 0, 1039, 1041, 1043, 1045,
+ 1047, 1049, 0, 1051, 0, 0, 1053, 1055, 1057, 1059,
+ 1061, 1063, 1065, 1067, 1069, 1071, 1073, 1075, 1077, 1079,
+ 1081, 1083, 1085, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1087, 0, 0, 0, 0, 1089, 1091, 0, 0,
+ 0, 1093, 0, 0, 1095, 1097, 1099, 1101, 0, 0,
+ 0, 1103, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1105, 1107, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1109,
+ 1111, 0, 0, 0, 0, 1113, 1115, 1117, 1119, 1121,
+ 0, 0, 0, 0, 0, 0, 0, 1123, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1125, 0, 1127,
+ 1129, 1131, 1133, 1135, 1137, 0, 1139, 0, 0, 1141,
+ 1143, 1145, 1147, 1149, 1151, 1153, 1155, 1157, 1159, 1161,
+ 1163, 1165, 1167, 1169, 1171, 1173, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1175, 0, 0, 0, 0, 1177,
+ 1179, 0, 0, 0, 1181, 0, 0, 1183, 1185, 1187,
+ 1189, 0, 0, 0, 1191, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1193,
+ 1195, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1197, 1199, 0, 0, 0, 0, 1201, 1203,
+ 1205, 1207, 1209, 0, 0, 0, 0, 0, 0, 0,
+ 1211, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1213, 0, 1215, 1217, 1219, 1221, 1223, 1225, 0, 1227,
+ 0, 0, 1229, 1231, 1233, 1235, 1237, 1239, 1241, 1243,
+ 1245, 1247, 1249, 1251, 1253, 1255, 1257, 1259, 1261, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1263, 0, 0,
+ 0, 0, 1265, 1267, 0, 0, 0, 1269, 0, 0,
+ 1271, 1273, 1275, 1277, 0, 0, 0, 1279, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1281, 1283, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1285, 1287, 0, 0, 0,
+ 0, 1289, 1291, 1293, 1295, 1297, 0, 0, 0, 0,
+ 0, 0, 0, 1299, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1301, 0, 1303, 1305, 1307, 1309, 1311,
+ 1313, 0, 1315, 0, 0, 1317, 1319, 1321, 1323, 1325,
+ 1327, 1329, 1331, 1333, 1335, 1337, 1339, 1341, 1343, 1345,
+ 1347, 1349, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1351, 0, 0, 0, 0, 1353, 1355, 0, 0, 0,
+ 1357, 0, 0, 1359, 1361, 1363, 1365, 0, 0, 0,
+ 1367, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1369, 1371, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1373, 1375,
+ 0, 0, 0, 0, 1377, 1379, 1381, 1383, 1385, 0,
+ 0, 0, 0, 0, 0, 0, 1387, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1389, 0, 1391, 1393,
+ 1395, 1397, 1399, 1401, 0, 1403, 0, 0, 1405, 1407,
+ 1409, 1411, 1413, 1415, 1417, 1419, 1421, 1423, 1425, 1427,
+ 1429, 1431, 1433, 1435, 1437, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1439, 0, 0, 0, 0, 1441, 1443,
+ 0, 0, 0, 1445, 0, 0, 1447, 1449, 1451, 1453,
+ 0, 0, 0, 1455, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1457, 1459,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1461, 1463, 0, 0, 0, 0, 1465, 1467, 1469,
+ 1471, 1473, 0, 0, 0, 0, 0, 0, 0, 1475,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1477,
+ 0, 1479, 1481, 1483, 1485, 1487, 1489, 0, 1491, 0,
+ 0, 1493, 1495, 1497, 1499, 1501, 1503, 1505, 1507, 1509,
+ 1511, 1513, 1515, 1517, 1519, 1521, 1523, 1525, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1527, 0, 0, 0,
+ 0, 1529, 1531, 0, 0, 0, 1533, 0, 0, 1535,
+ 1537, 1539, 1541, 0, 0, 0, 1543, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1545, 1547, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1549, 1551, 0, 0, 0, 0,
+ 1553, 1555, 1557, 1559, 1561, 0, 0, 0, 0, 0,
+ 0, 0, 1563, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1565, 0, 1567, 1569, 1571, 1573, 1575, 1577,
+ 0, 1579, 0, 0, 1581, 1583, 1585, 1587, 1589, 1591,
+ 1593, 1595, 1597, 1599, 1601, 1603, 1605, 1607, 1609, 1611,
+ 1613, 0, 0, 0, 0, 0, 0, 0, 0, 1615,
+ 0, 0, 0, 0, 1617, 1619, 0, 0, 0, 1621,
+ 0, 0, 1623, 1625, 1627, 1629, 0, 0, 0, 1631,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1633, 1635, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1637, 1639, 0,
+ 0, 0, 0, 1641, 1643, 1645, 1647, 1649, 0, 0,
+ 0, 0, 0, 0, 0, 1651, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1653, 0, 1655, 1657, 1659,
+ 1661, 1663, 1665, 0, 1667, 0, 0, 1669, 1671, 1673,
+ 1675, 1677, 1679, 1681, 1683, 1685, 1687, 1689, 1691, 1693,
+ 1695, 1697, 1699, 1701, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1703, 0, 0, 0, 0, 1705, 1707, 0,
+ 0, 0, 1709, 0, 0, 1711, 1713, 1715, 1717, 0,
+ 0, 0, 1719, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1721, 1723, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1725, 1727, 0, 0, 0, 0, 1729, 1731, 1733, 1735,
+ 1737, 0, 0, 0, 0, 0, 0, 0, 1739, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1741, 0,
+ 1743, 1745, 1747, 1749, 1751, 1753, 0, 1755, 0, 0,
+ 1757, 1759, 1761, 1763, 1765, 1767, 1769, 1771, 1773, 1775,
+ 1777, 1779, 1781, 1783, 1785, 1787, 1789, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1791, 0, 0, 0, 0,
+ 1793, 1795, 0, 0, 0, 1797, 0, 0, 1799, 1801,
+ 1803, 1805, 0, 0, 0, 1807, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1809, 1811, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1813, 1815, 0, 0, 0, 0, 1817,
+ 1819, 1821, 1823, 1825, 0, 0, 0, 0, 0, 0,
+ 0, 1827, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1829, 0, 1831, 1833, 1835, 1837, 1839, 1841, 0,
+ 1843, 0, 0, 1845, 1847, 1849, 1851, 1853, 1855, 1857,
+ 1859, 1861, 1863, 1865, 1867, 1869, 1871, 1873, 1875, 1877,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1879, 0,
+ 0, 0, 0, 1881, 1883, 0, 0, 0, 1885, 0,
+ 0, 1887, 1889, 1891, 1893, 0, 0, 0, 1895, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1897, 1899, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1901, 1903, 0, 0,
+ 0, 0, 1905, 1907, 1909, 1911, 1913, 0, 0, 0,
+ 0, 0, 0, 0, 1915, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1917, 0, 1919, 1921, 1923, 1925,
+ 1927, 1929, 0, 1931, 0, 0, 1933, 1935, 1937, 1939,
+ 1941, 1943, 1945, 1947, 1949, 1951, 1953, 1955, 1957, 1959,
+ 1961, 1963, 1965, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1967, 0, 0, 0, 0, 1969, 1971, 0, 0,
+ 0, 1973, 0, 0, 1975, 1977, 1979, 1981, 0, 0,
+ 0, 1983, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1985, 1987, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1989,
+ 1991, 0, 0, 0, 0, 1993, 1995, 1997, 1999, 2001,
+ 0, 0, 0, 0, 0, 0, 0, 2003, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2005, 0, 2007,
+ 2009, 2011, 2013, 2015, 2017, 0, 2019, 0, 0, 2021,
+ 2023, 2025, 2027, 2029, 2031, 2033, 2035, 2037, 2039, 2041,
+ 2043, 2045, 2047, 2049, 2051, 2053, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2055, 0, 0, 0, 0, 2057,
+ 2059, 0, 0, 0, 2061, 0, 0, 2063, 2065, 2067,
+ 2069, 0, 0, 0, 2071, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2073,
+ 2075, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2077, 2079, 0, 0, 0, 0, 2081, 2083,
+ 2085, 2087, 2089, 0, 0, 0, 0, 0, 0, 0,
+ 2091, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2093, 0, 2095, 2097, 2099, 2101, 2103, 2105, 0, 2107,
+ 0, 0, 2109, 2111, 2113, 2115, 2117, 2119, 2121, 2123,
+ 2125, 2127, 2129, 2131, 2133, 2135, 2137, 2139, 2141, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2143, 0, 0,
+ 0, 0, 2145, 2147, 0, 0, 0, 2149, 0, 0,
+ 2151, 2153, 2155, 2157, 0, 0, 0, 2159, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2161, 2163, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2165, 2167, 0, 0, 0,
+ 0, 2169, 2171, 2173, 2175, 2177, 0, 0, 0, 0,
+ 0, 0, 0, 2179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2181, 0, 2183, 2185, 2187, 2189, 2191,
+ 2193, 0, 2195, 0, 0, 2197, 2199, 2201, 2203, 2205,
+ 2207, 2209, 2211, 2213, 2215, 2217, 2219, 2221, 2223, 2225,
+ 2227, 2229, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2231, 0, 0, 0, 0, 2233, 2235, 0, 0, 0,
+ 2237, 0, 0, 2239, 2241, 2243, 2245, 0, 0, 0,
+ 2247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2249, 2251, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2253, 2255,
+ 0, 0, 0, 0, 2257, 2259, 2261, 2263, 2265, 0,
+ 0, 0, 0, 0, 0, 0, 2267, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2269, 0, 2271, 2273,
+ 2275, 2277, 2279, 2281, 0, 2283, 0, 0, 2285, 2287,
+ 2289, 2291, 2293, 2295, 2297, 2299, 2301, 2303, 2305, 2307,
+ 2309, 2311, 2313, 2315, 2317, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2319, 0, 0, 0, 0, 2321, 2323,
+ 0, 0, 0, 2325, 0, 0, 2327, 2329, 2331, 2333,
+ 0, 0, 0, 2335, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2337, 2339,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2341, 2343, 0, 0, 0, 0, 2345, 2347, 2349,
+ 2351, 2353, 0, 0, 0, 0, 0, 0, 0, 2355,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2357,
+ 0, 2359, 2361, 2363, 2365, 2367, 2369, 0, 2371, 0,
+ 0, 2373, 2375, 2377, 2379, 2381, 2383, 2385, 2387, 2389,
+ 2391, 2393, 2395, 2397, 2399, 2401, 2403, 2405, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2407, 0, 0, 0,
+ 0, 2409, 2411, 0, 0, 0, 2413, 0, 0, 2415,
+ 2417, 2419, 2421, 0, 0, 0, 2423, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2425, 2427, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2429, 2431, 0, 0, 0, 0,
+ 2433, 2435, 2437, 2439, 2441, 0, 0, 0, 0, 0,
+ 0, 0, 2443, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2445, 0, 2447, 2449, 2451, 2453, 2455, 2457,
+ 0, 2459, 0, 0, 2461, 2463, 2465, 2467, 2469, 2471,
+ 2473, 2475, 2477, 2479, 2481, 2483, 2485, 2487, 2489, 2491,
+ 2493, 0, 0, 0, 0, 0, 0, 0, 0, 2495,
+ 0, 0, 0, 0, 2497, 2499, 0, 0, 0, 2501,
+ 0, 0, 2503, 2505, 2507, 2509, 0, 0, 0, 2511,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2513, 2515, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2517, 2519, 0,
+ 0, 0, 0, 2521, 2523, 2525, 2527, 2529, 0, 0,
+ 0, 0, 0, 0, 0, 2531, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2533, 0, 2535, 2537, 2539,
+ 2541, 2543, 2545, 0, 2547, 0, 0, 2549, 2551, 2553,
+ 2555, 2557, 2559, 2561, 2563, 2565, 2567, 2569, 2571, 2573,
+ 2575, 2577, 2579, 2581, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2583, 0, 0, 0, 0, 2585, 2587, 0,
+ 0, 0, 2589, 0, 0, 2591, 2593, 2595, 2597, 0,
+ 0, 0, 2599, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2601, 2603, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2605, 2607, 0, 0, 0, 0, 2609, 2611, 2613, 2615,
+ 2617, 0, 0, 0, 0, 0, 0, 0, 2619, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2621, 0,
+ 2623, 2625, 2627, 2629, 2631, 2633, 0, 2635, 0, 0,
+ 2637, 2639, 2641, 2643, 2645, 2647, 2649, 2651, 2653, 2655,
+ 2657, 2659, 2661, 2663, 2665, 2667, 2669, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2671, 0, 0, 0, 0,
+ 2673, 2675, 0, 0, 0, 2677, 0, 0, 2679, 2681,
+ 2683, 2685, 0, 0, 0, 2687, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2689, 2691, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2693, 2695, 0, 0, 0, 0, 2697,
+ 2699, 2701, 2703, 2705, 0, 0, 0, 0, 0, 0,
+ 0, 2707, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2709, 0, 2711, 2713, 2715, 2717, 2719, 2721, 0,
+ 2723, 0, 0, 2725, 2727, 2729, 2731, 2733, 2735, 2737,
+ 2739, 2741, 2743, 2745, 2747, 2749, 2751, 2753, 2755, 2757,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2759, 0,
+ 0, 0, 0, 2761, 2763, 0, 0, 0, 2765, 0,
+ 0, 2767, 2769, 2771, 2773, 0, 0, 0, 2775, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2777, 2779, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2781, 2783, 0, 0,
+ 0, 0, 2785, 2787, 2789, 2791, 2793, 0, 0, 0,
+ 0, 0, 0, 0, 2795, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2797, 0, 2799, 2801, 2803, 2805,
+ 2807, 2809, 0, 2811, 0, 0, 2813, 2815, 2817, 2819,
+ 2821, 2823, 2825, 2827, 2829, 2831, 2833, 2835, 2837, 2839,
+ 2841, 2843, 2845, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2847, 0, 0, 0, 0, 2849, 2851, 0, 0,
+ 0, 2853, 0, 0, 2855, 2857, 2859, 2861, 0, 0,
+ 0, 2863, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2865, 2867, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2869,
+ 2871, 0, 0, 0, 0, 2873, 2875, 2877, 2879, 2881,
+ 0, 0, 0, 0, 0, 0, 0, 2883, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2885, 0, 2887,
+ 2889, 2891, 2893, 2895, 2897, 0, 2899, 0, 0, 2901,
+ 2903, 2905, 2907, 2909, 2911, 2913, 2915, 2917, 2919, 2921,
+ 2923, 2925, 2927, 2929, 2931, 2933, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2935, 0, 0, 0, 0, 2937,
+ 2939, 0, 0, 0, 2941, 0, 0, 2943, 2945, 2947,
+ 2949, 0, 0, 0, 2951, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2953,
+ 2955, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2957, 2959, 0, 0, 0, 0, 2961, 2963,
+ 2965, 2967, 2969, 0, 0, 0, 0, 0, 0, 0,
+ 2971, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2973, 0, 2975, 2977, 2979, 2981, 2983, 2985, 0, 2987,
+ 0, 0, 2989, 2991, 2993, 2995, 2997, 2999, 3001, 3003,
+ 3005, 3007, 3009, 3011, 3013, 3015, 3017, 3019, 3021, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3023, 0, 0,
+ 0, 0, 3025, 3027, 0, 0, 0, 3029, 0, 0,
+ 3031, 3033, 3035, 3037, 0, 0, 0, 3039, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3041, 3043, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3045, 3047, 0, 0, 0,
+ 0, 3049, 3051, 3053, 3055, 3057, 0, 0, 0, 0,
+ 0, 0, 0, 3059, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3061, 0, 3063, 3065, 3067, 3069, 3071,
+ 3073, 0, 3075, 0, 0, 3077, 3079, 3081, 3083, 3085,
+ 3087, 3089, 3091, 3093, 3095, 3097, 3099, 3101, 3103, 3105,
+ 3107, 3109, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3111, 0, 0, 0, 0, 3113, 3115, 0, 0, 0,
+ 3117, 0, 0, 3119, 3121, 3123, 3125, 0, 0, 0,
+ 3127, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3129, 3131, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3133, 3135,
+ 0, 0, 0, 0, 3137, 3139, 3141, 3143, 3145, 0,
+ 0, 0, 0, 0, 0, 0, 3147, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3149, 0, 3151, 3153,
+ 3155, 3157, 3159, 3161, 0, 3163, 0, 0, 3165, 3167,
+ 3169, 3171, 3173, 3175, 3177, 3179, 3181, 3183, 3185, 3187,
+ 3189, 3191, 3193, 3195, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,
+ 0, 0, 0, 0, 0, 0, 19, 0, 0, 0,
+ 0, 21, 23, 0, 0, 0, 25, 0, 0, 0,
+ 0, 0, 0, 27, 29, 31, 33, 35, 37, 39,
+ 41, 43, 45, 47, 49, 0, 51, 53, 55, 57,
+ 59, 61, 63, 65, 67, 69, 71, 73, 75, 77,
+ 79, 81, 83, 85, 0, 0, 0, 0, 0, 87,
+ 89, 91, 93, 95, 97, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 99, 101, 0, 103, 105, 107, 109, 111, 113,
+ 0, 115, 0, 0, 117, 119, 121, 123, 125, 127,
+ 129, 131, 133, 135, 137, 139, 141, 143, 145, 147,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
- 3, 5, 7, 9, 11, 13, 15, 0, 0, 0,
- 17, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 21, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 23
-};
-
-/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
- 0, pointed into by YYCONFLP. */
-static const short int yyconfl[] =
-{
- 0, 251, 0, 251, 0, 251, 0, 251, 0, 251,
- 0, 251, 0, 251, 0, 251, 0, 251, 0, 251,
- 0, 210, 0, 325, 0
-};
-
-/* Error token number */
-#define YYTERROR 1
-
-
-
-
-#undef yynerrs
-#define yynerrs (yystackp->yyerrcnt)
-#undef yychar
-#define yychar (yystackp->yyrawchar)
-#undef yylval
-#define yylval (yystackp->yyval)
-#undef yylloc
-#define yylloc (yystackp->yyloc)
-#define psi_parser_proc_nerrs yynerrs
-#define psi_parser_proc_char yychar
-#define psi_parser_proc_lval yylval
-#define psi_parser_proc_lloc yylloc
-
-static const int YYEOF = 0;
-static const int YYEMPTY = -2;
-
-typedef enum { yyok, yyaccept, yyabort, yyerr } YYRESULTTAG;
-
-#define YYCHK(YYE) \
- do { \
- YYRESULTTAG yychk_flag = YYE; \
- if (yychk_flag != yyok) \
- return yychk_flag; \
- } while (0)
-
-#if YYDEBUG
-
-# ifndef YYFPRINTF
-# define YYFPRINTF fprintf
-# endif
-
-/* This macro is provided for backward compatibility. */
-#ifndef YY_LOCATION_PRINT
-# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
-#endif
-
-
-# define YYDPRINTF(Args) \
- do { \
- if (yydebug) \
- YYFPRINTF Args; \
- } while (0)
-
-
-/*----------------------------------------.
-| Print this symbol's value on YYOUTPUT. |
-`----------------------------------------*/
-
-static void
-yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
-{
- FILE *yyo = yyoutput;
- YYUSE (yyo);
- YYUSE (P);
- YYUSE (tokens);
- YYUSE (index);
- if (!yyvaluep)
- return;
- YYUSE (yytype);
-}
-
-
-/*--------------------------------.
-| Print this symbol on YYOUTPUT. |
-`--------------------------------*/
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3227, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3229
+};
+
+/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
+ 0, pointed into by YYCONFLP. */
+static const short int yyconfl[] =
+{
+ 0, 386, 0, 386, 0, 386, 0, 386, 0, 377,
+ 0, 377, 0, 400, 0, 458, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 612,
+ 0, 612, 0, 612, 0, 612, 0, 612, 0, 386,
+ 0, 386, 0, 386, 0, 386, 0, 400, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 43, 0, 43,
+ 0, 43, 0, 43, 0, 43, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 52, 0, 52, 0, 52,
+ 0, 52, 0, 52, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 613, 0, 613, 0, 613, 0, 613,
+ 0, 613, 0, 574, 612, 0, 574, 612, 0, 574,
+ 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
+ 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
+ 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
+ 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
+ 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
+ 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
+ 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
+ 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
+ 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
+ 612, 0, 574, 612, 0, 574, 612, 0, 574, 612,
+ 0, 574, 612, 0, 574, 612, 0, 574, 612, 0,
+ 574, 612, 0, 574, 612, 0, 574, 612, 0, 574,
+ 612, 0, 574, 612, 0, 612, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 62, 0, 62, 0, 62,
+ 0, 62, 0, 62, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 106, 0, 106, 0, 106, 0, 106,
+ 0, 106, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 107, 0, 107, 0, 107, 0, 107, 0, 107,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 105,
+ 0, 105, 0, 105, 0, 105, 0, 105, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 103, 0, 103,
+ 0, 103, 0, 103, 0, 103, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 104, 0, 104, 0, 104,
+ 0, 104, 0, 104, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 124, 0, 124, 0, 124, 0, 124,
+ 0, 124, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 126, 0, 126, 0, 126, 0, 126, 0, 126,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 127,
+ 0, 127, 0, 127, 0, 127, 0, 127, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 128, 0, 128,
+ 0, 128, 0, 128, 0, 128, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 129, 0, 129, 0, 129,
+ 0, 129, 0, 129, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 130, 0, 130, 0, 130, 0, 130,
+ 0, 130, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 131, 0, 131, 0, 131, 0, 131, 0, 131,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 160,
+ 0, 160, 0, 160, 0, 160, 0, 160, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 582, 0, 582,
+ 0, 582, 0, 582, 0, 582, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 581, 0, 581, 0, 581,
+ 0, 581, 0, 581, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 579, 0, 579, 0, 579, 0, 579,
+ 0, 579, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 577, 0, 577, 0, 577, 0, 577, 0, 577,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 578,
+ 0, 578, 0, 578, 0, 578, 0, 578, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 580, 0, 580,
+ 0, 580, 0, 580, 0, 580, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 576, 0, 576, 0, 576,
+ 0, 576, 0, 576, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 575, 0, 575, 0, 575, 0, 575,
+ 0, 575, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 583, 0, 583, 0, 583, 0, 583, 0, 583,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 144,
+ 0, 144, 0, 144, 0, 144, 0, 144, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 611, 0, 611,
+ 0, 611, 0, 611, 0, 611, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 609, 0, 609, 0, 609,
+ 0, 609, 0, 609, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 608, 0, 608, 0, 608, 0, 608,
+ 0, 608, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 610, 0, 610, 0, 610, 0, 610, 0, 610,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 607,
+ 0, 607, 0, 607, 0, 607, 0, 607, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 606, 0, 606,
+ 0, 606, 0, 606, 0, 606, 0, 501, 0, 501,
+ 0, 451, 0, 451, 0, 452, 0, 42, 0, 487,
+ 0, 487, 0, 487, 0, 613, 0, 386, 0, 562,
+ 0, 562, 0, 562, 0, 613, 0, 339, 0, 483,
+ 0
+};
+
+/* Error token number */
+#define YYTERROR 1
+
+
+
+
+#undef yynerrs
+#define yynerrs (yystackp->yyerrcnt)
+#undef yychar
+#define yychar (yystackp->yyrawchar)
+#undef yylval
+#define yylval (yystackp->yyval)
+#undef yylloc
+#define yylloc (yystackp->yyloc)
+#define psi_parser_proc_nerrs yynerrs
+#define psi_parser_proc_char yychar
+#define psi_parser_proc_lval yylval
+#define psi_parser_proc_lloc yylloc
+
+static const int YYEOF = 0;
+static const int YYEMPTY = -2;
+
+typedef enum { yyok, yyaccept, yyabort, yyerr } YYRESULTTAG;
+
+#define YYCHK(YYE) \
+ do { \
+ YYRESULTTAG yychk_flag = YYE; \
+ if (yychk_flag != yyok) \
+ return yychk_flag; \
+ } while (0)
+
+#if YYDEBUG
+
+# ifndef YYFPRINTF
+# define YYFPRINTF fprintf
+# endif
+
+/* This macro is provided for backward compatibility. */
+#ifndef YY_LOCATION_PRINT
+# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
+#endif
+
+
+# define YYDPRINTF(Args) \
+ do { \
+ if (yydebug) \
+ YYFPRINTF Args; \
+ } while (0)
+
+
+/*----------------------------------------.
+| Print this symbol's value on YYOUTPUT. |
+`----------------------------------------*/
+
+static void
+yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
+{
+ FILE *yyo = yyoutput;
+ YYUSE (yyo);
+ YYUSE (P);
+ YYUSE (tokens);
+ YYUSE (index);
+ if (!yyvaluep)
+ return;
+ YYUSE (yytype);
+}
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
static void
yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
*yyvalp = yyvsp[YYFILL (1-yyrhslen)].yystate.yysemantics.yysval;
switch (yyn)
{
- case 162:
-#line 407 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 284:
+#line 452 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
psi_cpp_exp_exec((*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), P->preproc, PSI_DATA(P));
psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
}
-#line 2127 "src/parser_proc.c" /* glr.c:816 */
+#line 4305 "src/parser_proc.c" /* glr.c:816 */
break;
- case 163:
-#line 413 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 285:
+#line 458 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- if (P->file.ln) {
- P->error(PSI_DATA(P), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), PSI_WARNING,
- "Extra 'lib %s' statement has no effect", (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
- } else {
- P->file.ln = strndup((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text + 1, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->size - 2);
- }
+ char *libname = strdup((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
+ P->file.libnames = psi_plist_add(P->file.libnames, &libname);
}
-#line 2140 "src/parser_proc.c" /* glr.c:816 */
+#line 4314 "src/parser_proc.c" /* glr.c:816 */
break;
- case 164:
-#line 421 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 286:
+#line 462 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_const(P, (*(struct psi_const **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2148 "src/parser_proc.c" /* glr.c:816 */
+#line 4322 "src/parser_proc.c" /* glr.c:816 */
break;
- case 165:
-#line 424 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 287:
+#line 465 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_decl(P, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2156 "src/parser_proc.c" /* glr.c:816 */
+#line 4330 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 288:
+#line 468 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ psi_parser_proc_add_decl_extvars(P, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 4338 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 289:
+#line 471 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ if (P->flags & PSI_DEBUG) {
+ 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);
+ }
+ psi_decl_free(&(*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 4349 "src/parser_proc.c" /* glr.c:816 */
break;
- case 166:
-#line 427 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 290:
+#line 477 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_typedef(P, (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2164 "src/parser_proc.c" /* glr.c:816 */
+#line 4357 "src/parser_proc.c" /* glr.c:816 */
break;
- case 167:
-#line 430 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 291:
+#line 480 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_struct(P, (*(struct psi_decl_struct **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2172 "src/parser_proc.c" /* glr.c:816 */
+#line 4365 "src/parser_proc.c" /* glr.c:816 */
break;
- case 168:
-#line 433 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 292:
+#line 483 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_union(P, (*(struct psi_decl_union **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2180 "src/parser_proc.c" /* glr.c:816 */
+#line 4373 "src/parser_proc.c" /* glr.c:816 */
break;
- case 169:
-#line 436 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 293:
+#line 486 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2188 "src/parser_proc.c" /* glr.c:816 */
+#line 4381 "src/parser_proc.c" /* glr.c:816 */
break;
- case 170:
-#line 439 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 294:
+#line 489 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_parser_proc_add_impl(P, (*(struct psi_impl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2196 "src/parser_proc.c" /* glr.c:816 */
+#line 4389 "src/parser_proc.c" /* glr.c:816 */
break;
- case 171:
-#line 445 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 295:
+#line 495 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2204 "src/parser_proc.c" /* glr.c:816 */
+#line 4397 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 296:
+#line 501 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_cpp_exp **)(&(*yyvalp))) = NULL;
+}
+#line 4405 "src/parser_proc.c" /* glr.c:816 */
break;
- case 172:
-#line 451 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 297:
+#line 504 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = (*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2212 "src/parser_proc.c" /* glr.c:816 */
+#line 4413 "src/parser_proc.c" /* glr.c:816 */
break;
- case 173:
-#line 457 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 298:
+#line 510 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
struct psi_token *msg = NULL;
}
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2240 "src/parser_proc.c" /* glr.c:816 */
+#line 4441 "src/parser_proc.c" /* glr.c:816 */
break;
- case 174:
-#line 480 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 299:
+#line 533 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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))));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2249 "src/parser_proc.c" /* glr.c:816 */
+#line 4450 "src/parser_proc.c" /* glr.c:816 */
break;
- case 175:
-#line 484 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 300:
+#line 537 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, NULL);
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2258 "src/parser_proc.c" /* glr.c:816 */
- break;
-
- case 176:
-#line 488 "src/parser_proc_grammar.y" /* glr.c:816 */
- {
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(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))));
- (*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
-}
-#line 2268 "src/parser_proc.c" /* glr.c:816 */
+#line 4459 "src/parser_proc.c" /* glr.c:816 */
break;
- case 177:
-#line 493 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 301:
+#line 541 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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))));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2278 "src/parser_proc.c" /* glr.c:816 */
+#line 4469 "src/parser_proc.c" /* glr.c:816 */
break;
- case 178:
-#line 498 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 302:
+#line 546 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2287 "src/parser_proc.c" /* glr.c:816 */
+#line 4478 "src/parser_proc.c" /* glr.c:816 */
break;
- case 179:
-#line 502 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 303:
+#line 550 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2296 "src/parser_proc.c" /* glr.c:816 */
+#line 4487 "src/parser_proc.c" /* glr.c:816 */
break;
- case 180:
-#line 506 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 304:
+#line 554 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, NULL);
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2305 "src/parser_proc.c" /* glr.c:816 */
+#line 4496 "src/parser_proc.c" /* glr.c:816 */
break;
- case 181:
-#line 510 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 305:
+#line 558 "src/parser_proc_grammar.y" /* glr.c:816 */
{
psi_plist_free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_cpp_exp **)(&(*yyvalp))) = NULL;
}
-#line 2314 "src/parser_proc.c" /* glr.c:816 */
+#line 4505 "src/parser_proc.c" /* glr.c:816 */
break;
- case 196:
-#line 549 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 322:
+#line 602 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
+ (*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init(NULL, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL);
+ (*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+}
+#line 4515 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 323:
+#line 607 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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);
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
}
-#line 2324 "src/parser_proc.c" /* glr.c:816 */
+#line 4525 "src/parser_proc.c" /* glr.c:816 */
break;
- case 197:
-#line 554 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 324:
+#line 612 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init(NULL, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL);
+ (*(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)));
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2334 "src/parser_proc.c" /* glr.c:816 */
+#line 4535 "src/parser_proc.c" /* glr.c:816 */
break;
- case 198:
-#line 559 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 325:
+#line 617 "src/parser_proc_grammar.y" /* glr.c:816 */
{
+ struct psi_plist *list = psi_plist_init((psi_plist_dtor) psi_token_free);
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init(NULL, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL);
+ (*(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);
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2344 "src/parser_proc.c" /* glr.c:816 */
+#line 4546 "src/parser_proc.c" /* glr.c:816 */
break;
- case 199:
-#line 567 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 326:
+#line 626 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_init(NULL);
}
-#line 2352 "src/parser_proc.c" /* glr.c:816 */
+#line 4554 "src/parser_proc.c" /* glr.c:816 */
break;
- case 201:
-#line 574 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 327:
+#line 629 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_init(NULL); /* FIXME */
+}
+#line 4562 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 329:
+#line 633 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+}
+#line 4570 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 330:
+#line 639 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
}
-#line 2362 "src/parser_proc.c" /* glr.c:816 */
+#line 4580 "src/parser_proc.c" /* glr.c:816 */
break;
- case 202:
-#line 579 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 331:
+#line 644 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
}
-#line 2372 "src/parser_proc.c" /* glr.c:816 */
+#line 4590 "src/parser_proc.c" /* glr.c:816 */
break;
- case 203:
-#line 587 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 332:
+#line 652 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 2380 "src/parser_proc.c" /* glr.c:816 */
+#line 4598 "src/parser_proc.c" /* glr.c:816 */
break;
- case 205:
-#line 594 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 334:
+#line 659 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(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)));
}
-#line 2389 "src/parser_proc.c" /* glr.c:816 */
+#line 4607 "src/parser_proc.c" /* glr.c:816 */
break;
- case 206:
-#line 598 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 335:
+#line 663 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(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)));
}
-#line 2398 "src/parser_proc.c" /* glr.c:816 */
+#line 4616 "src/parser_proc.c" /* glr.c:816 */
break;
- case 207:
-#line 605 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 336:
+#line 670 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 2407 "src/parser_proc.c" /* glr.c:816 */
+#line 4625 "src/parser_proc.c" /* glr.c:816 */
break;
- case 208:
-#line 609 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 337:
+#line 674 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2416 "src/parser_proc.c" /* glr.c:816 */
+#line 4634 "src/parser_proc.c" /* glr.c:816 */
break;
- case 209:
-#line 613 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 338:
+#line 678 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2425 "src/parser_proc.c" /* glr.c:816 */
+#line 4643 "src/parser_proc.c" /* glr.c:816 */
break;
- case 210:
-#line 617 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 339:
+#line 682 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 2434 "src/parser_proc.c" /* glr.c:816 */
+#line 4652 "src/parser_proc.c" /* glr.c:816 */
break;
- case 211:
-#line 622 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 340:
+#line 687 "src/parser_proc_grammar.y" /* glr.c:816 */
{
{
uint8_t exists;
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
exists = psi_cpp_defined(P->preproc, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8, &exists, 0));
- (*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
}
-#line 2449 "src/parser_proc.c" /* glr.c:816 */
+#line 4668 "src/parser_proc.c" /* glr.c:816 */
break;
- case 212:
-#line 632 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 341:
+#line 698 "src/parser_proc_grammar.y" /* glr.c:816 */
{
{
uint8_t exists;
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
exists = psi_cpp_defined(P->preproc, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8, &exists, 0));
- (*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 2464 "src/parser_proc.c" /* glr.c:816 */
+#line 4684 "src/parser_proc.c" /* glr.c:816 */
break;
- case 213:
-#line 642 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 342:
+#line 709 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2474 "src/parser_proc.c" /* glr.c:816 */
+#line 4694 "src/parser_proc.c" /* glr.c:816 */
break;
- case 214:
-#line 647 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 343:
+#line 714 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2484 "src/parser_proc.c" /* glr.c:816 */
+#line 4704 "src/parser_proc.c" /* glr.c:816 */
break;
- case 215:
-#line 652 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 344:
+#line 719 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
+}
+#line 4713 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 345:
+#line 723 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2495 "src/parser_proc.c" /* glr.c:816 */
+#line 4724 "src/parser_proc.c" /* glr.c:816 */
break;
- case 216:
-#line 658 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 346:
+#line 729 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init(PSI_T_FUNCTION,
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));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 2506 "src/parser_proc.c" /* glr.c:816 */
+#line 4736 "src/parser_proc.c" /* glr.c:816 */
break;
- case 217:
-#line 667 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 347:
+#line 739 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 2514 "src/parser_proc.c" /* glr.c:816 */
+#line 4744 "src/parser_proc.c" /* glr.c:816 */
break;
- case 219:
-#line 674 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 349:
+#line 746 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((void (*)(void *)) psi_num_exp_free),
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_num_exp_free),
&(*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2523 "src/parser_proc.c" /* glr.c:816 */
+#line 4753 "src/parser_proc.c" /* glr.c:816 */
break;
- case 220:
-#line 678 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 350:
+#line 750 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 2531 "src/parser_proc.c" /* glr.c:816 */
+#line 4761 "src/parser_proc.c" /* glr.c:816 */
break;
- case 221:
-#line 684 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 351:
+#line 756 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_const **)(&(*yyvalp))) = psi_const_init((*(struct psi_const_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)));
+ (*(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)));
(*(struct psi_const **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 2540 "src/parser_proc.c" /* glr.c:816 */
+#line 4770 "src/parser_proc.c" /* glr.c:816 */
break;
- case 222:
-#line 691 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 352:
+#line 763 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_const_type **)(&(*yyvalp))) = psi_const_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);
+ (*(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);
+ (*(struct psi_impl_def_val **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2548 "src/parser_proc.c" /* glr.c:816 */
+#line 4779 "src/parser_proc.c" /* glr.c:816 */
break;
- case 227:
-#line 704 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 353:
+#line 767 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_impl_def_val **)(&(*yyvalp))) = NULL;
+ (*(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)));
+ (*(struct psi_impl_def_val **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 2556 "src/parser_proc.c" /* glr.c:816 */
+#line 4788 "src/parser_proc.c" /* glr.c:816 */
break;
- case 228:
-#line 707 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 354:
+#line 771 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
(*(struct psi_impl_def_val **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2565 "src/parser_proc.c" /* glr.c:816 */
+#line 4797 "src/parser_proc.c" /* glr.c:816 */
break;
- case 234:
-#line 722 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 358:
+#line 784 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2573 "src/parser_proc.c" /* glr.c:816 */
+#line 4805 "src/parser_proc.c" /* glr.c:816 */
break;
- case 236:
-#line 729 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 359:
+#line 798 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 4813 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 360:
+#line 804 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 4821 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 361:
+#line 807 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 4829 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 362:
+#line 813 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 4837 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 363:
+#line 816 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 4845 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 365:
+#line 823 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
psi_decl_type_init(PSI_T_FUNCTION, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var->name),
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token);
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.func = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 2586 "src/parser_proc.c" /* glr.c:816 */
+#line 4858 "src/parser_proc.c" /* glr.c:816 */
break;
- case 237:
-#line 737 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 366:
+#line 831 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
(*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->token);
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.enm = (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+ psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2601 "src/parser_proc.c" /* glr.c:816 */
+#line 4874 "src/parser_proc.c" /* glr.c:816 */
break;
- case 238:
-#line 747 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 367:
+#line 842 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->align = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)).pos;
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)).len;
+ psi_parser_proc_add_struct(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct);
}
-#line 2614 "src/parser_proc.c" /* glr.c:816 */
+#line 4888 "src/parser_proc.c" /* glr.c:816 */
break;
- case 239:
-#line 755 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 368:
+#line 851 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->align = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)).pos;
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)).len;
+ psi_parser_proc_add_union(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn);
}
-#line 2627 "src/parser_proc.c" /* glr.c:816 */
+#line 4902 "src/parser_proc.c" /* glr.c:816 */
break;
- case 240:
-#line 763 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 370:
+#line 864 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0, 0));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(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));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 2637 "src/parser_proc.c" /* glr.c:816 */
+#line 4911 "src/parser_proc.c" /* glr.c:816 */
break;
- case 241:
-#line 771 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 371:
+#line 868 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
+ psi_decl_type_init(PSI_T_ENUM, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->name),
+ psi_decl_var_init(NULL, 0, 0)
+ );
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.enm = (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 4926 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 372:
+#line 878 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+ (*(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)));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->align = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).pos;
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
+ psi_parser_proc_add_struct(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct);
+}
+#line 4940 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 373:
+#line 887 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+ (*(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)));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->align = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).pos;
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
+ psi_parser_proc_add_union(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn);
+}
+#line 4954 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 375:
+#line 900 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_decl_type **)(&(*yyvalp))) = (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 2645 "src/parser_proc.c" /* glr.c:816 */
+#line 4962 "src/parser_proc.c" /* glr.c:816 */
break;
- case 243:
-#line 778 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 376:
+#line 903 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_type **)(&(*yyvalp))) = (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 4970 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 379:
+#line 914 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 2654 "src/parser_proc.c" /* glr.c:816 */
+#line 4979 "src/parser_proc.c" /* glr.c:816 */
break;
- case 245:
-#line 786 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 381:
+#line 922 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2664 "src/parser_proc.c" /* glr.c:816 */
+#line 4989 "src/parser_proc.c" /* glr.c:816 */
break;
- case 246:
-#line 791 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 382:
+#line 927 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2674 "src/parser_proc.c" /* glr.c:816 */
+#line 4999 "src/parser_proc.c" /* glr.c:816 */
break;
- case 247:
-#line 796 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 383:
+#line 932 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2684 "src/parser_proc.c" /* glr.c:816 */
+#line 5009 "src/parser_proc.c" /* glr.c:816 */
break;
- case 250:
-#line 806 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 386:
+#line 942 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2692 "src/parser_proc.c" /* glr.c:816 */
+#line 5017 "src/parser_proc.c" /* glr.c:816 */
break;
- case 251:
-#line 809 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 387:
+#line 945 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2700 "src/parser_proc.c" /* glr.c:816 */
+#line 5025 "src/parser_proc.c" /* glr.c:816 */
break;
- case 252:
-#line 815 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 388:
+#line 951 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2708 "src/parser_proc.c" /* glr.c:816 */
+#line 5033 "src/parser_proc.c" /* glr.c:816 */
break;
- case 253:
-#line 818 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 389:
+#line 954 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2716 "src/parser_proc.c" /* glr.c:816 */
+#line 5041 "src/parser_proc.c" /* glr.c:816 */
break;
- case 254:
-#line 821 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 390:
+#line 957 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 2724 "src/parser_proc.c" /* glr.c:816 */
+#line 5049 "src/parser_proc.c" /* glr.c:816 */
break;
- case 265:
-#line 843 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 393:
+#line 968 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2732 "src/parser_proc.c" /* glr.c:816 */
+#line 5057 "src/parser_proc.c" /* glr.c:816 */
break;
- case 266:
-#line 846 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 394:
+#line 971 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2740 "src/parser_proc.c" /* glr.c:816 */
+#line 5065 "src/parser_proc.c" /* glr.c:816 */
break;
- case 267:
-#line 849 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 395:
+#line 974 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 2748 "src/parser_proc.c" /* glr.c:816 */
+#line 5073 "src/parser_proc.c" /* glr.c:816 */
break;
- case 268:
-#line 855 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 396:
+#line 980 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2756 "src/parser_proc.c" /* glr.c:816 */
+#line 5081 "src/parser_proc.c" /* glr.c:816 */
break;
- case 269:
-#line 858 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 397:
+#line 983 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2764 "src/parser_proc.c" /* glr.c:816 */
+#line 5089 "src/parser_proc.c" /* glr.c:816 */
break;
- case 270:
-#line 861 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 398:
+#line 986 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(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)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 2777 "src/parser_proc.c" /* glr.c:816 */
+#line 5102 "src/parser_proc.c" /* glr.c:816 */
break;
- case 271:
-#line 869 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 399:
+#line 994 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(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)));
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
}
-#line 2791 "src/parser_proc.c" /* glr.c:816 */
+#line 5116 "src/parser_proc.c" /* glr.c:816 */
break;
- case 272:
-#line 881 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 400:
+#line 1006 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 2799 "src/parser_proc.c" /* glr.c:816 */
+#line 5124 "src/parser_proc.c" /* glr.c:816 */
break;
- case 273:
-#line 884 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 401:
+#line 1009 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2807 "src/parser_proc.c" /* glr.c:816 */
+#line 5132 "src/parser_proc.c" /* glr.c:816 */
break;
- case 274:
-#line 887 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 402:
+#line 1012 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 5140 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 403:
+#line 1015 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(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)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 2819 "src/parser_proc.c" /* glr.c:816 */
+#line 5152 "src/parser_proc.c" /* glr.c:816 */
break;
- case 275:
-#line 894 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 404:
+#line 1022 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2827 "src/parser_proc.c" /* glr.c:816 */
+#line 5160 "src/parser_proc.c" /* glr.c:816 */
break;
- case 276:
-#line 897 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 405:
+#line 1025 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(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)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 2839 "src/parser_proc.c" /* glr.c:816 */
+#line 5172 "src/parser_proc.c" /* glr.c:816 */
break;
- case 277:
-#line 907 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 406:
+#line 1035 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 2847 "src/parser_proc.c" /* glr.c:816 */
+#line 5180 "src/parser_proc.c" /* glr.c:816 */
break;
- case 279:
-#line 913 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 408:
+#line 1041 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 2855 "src/parser_proc.c" /* glr.c:816 */
+#line 5188 "src/parser_proc.c" /* glr.c:816 */
break;
- case 282:
-#line 921 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 412:
+#line 1050 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 2863 "src/parser_proc.c" /* glr.c:816 */
+#line 5196 "src/parser_proc.c" /* glr.c:816 */
break;
- case 283:
-#line 924 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 413:
+#line 1053 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2871 "src/parser_proc.c" /* glr.c:816 */
+#line 5204 "src/parser_proc.c" /* glr.c:816 */
break;
- case 284:
-#line 927 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 414:
+#line 1056 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(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)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 2884 "src/parser_proc.c" /* glr.c:816 */
+#line 5217 "src/parser_proc.c" /* glr.c:816 */
break;
- case 285:
-#line 938 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 415:
+#line 1067 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+ if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
+ (*(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);
+ free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
+}
+#line 5229 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 416:
+#line 1074 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+ if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
+ (*(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);
+ free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
+}
+#line 5241 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 417:
+#line 1084 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = NULL;
+}
+#line 5249 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 418:
+#line 1087 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5257 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 419:
+#line 1093 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 5265 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 420:
+#line 1096 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+ free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+}
+#line 5274 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 421:
+#line 1103 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ struct psi_plist *list = psi_plist_init((psi_plist_dtor) psi_decl_extvar_free);
+
+ if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
+ size_t i = 0;
+ struct psi_decl_var *var;
+
+ while (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), i++, &var)) {
+ if (psi_decl_extvar_is_blacklisted(var->name)) {
+ psi_decl_var_free(&var);
+ } else {
+ struct psi_decl_extvar *evar = psi_decl_extvar_init(
+ psi_decl_arg_init(psi_decl_type_copy((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type), var));
+ list = psi_plist_add(list, &evar);
+ }
+ }
+ free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
+
+ if (psi_decl_extvar_is_blacklisted((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->var->name)) {
+ psi_decl_arg_free(&(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ } else {
+ struct psi_decl_extvar *evar = psi_decl_extvar_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ list = psi_plist_add(list, &evar);
+ }
+
+ (*(struct psi_plist **)(&(*yyvalp))) = list;
+}
+#line 5307 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 422:
+#line 1134 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
+}
+#line 5315 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 423:
+#line 1137 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5323 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 424:
+#line 1143 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+}
+#line 5331 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 425:
+#line 1146 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+}
+#line 5339 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 426:
+#line 1152 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2892 "src/parser_proc.c" /* glr.c:816 */
+#line 5347 "src/parser_proc.c" /* glr.c:816 */
break;
- case 286:
-#line 944 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 427:
+#line 1155 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5355 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 428:
+#line 1158 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5363 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 429:
+#line 1161 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(psi_decl_abi_init("default"), (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5371 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 436:
+#line 1182 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ (*(struct psi_decl **)(&(*yyvalp)))->abi = psi_decl_abi_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
+}
+#line 5380 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 439:
+#line 1194 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->pointer_level += 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 2904 "src/parser_proc.c" /* glr.c:816 */
+#line 5392 "src/parser_proc.c" /* glr.c:816 */
break;
- case 287:
-#line 951 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 440:
+#line 1201 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(psi_decl_abi_init("default"), (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
+ (*(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)));
(*(struct psi_decl **)(&(*yyvalp)))->varargs = 1;
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->pointer_level += 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 2917 "src/parser_proc.c" /* glr.c:816 */
+#line 5405 "src/parser_proc.c" /* glr.c:816 */
break;
- case 288:
-#line 959 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 441:
+#line 1212 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(psi_decl_abi_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->text), (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ (*(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)));
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->pointer_level += 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 2929 "src/parser_proc.c" /* glr.c:816 */
+#line 5417 "src/parser_proc.c" /* glr.c:816 */
break;
- case 289:
-#line 966 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 442:
+#line 1219 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(psi_decl_abi_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval))->text), (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
+ (*(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)));
(*(struct psi_decl **)(&(*yyvalp)))->varargs = 1;
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->pointer_level += 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 2942 "src/parser_proc.c" /* glr.c:816 */
+#line 5430 "src/parser_proc.c" /* glr.c:816 */
break;
- case 292:
-#line 982 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 443:
+#line 1227 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(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));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ (void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval));
+ (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-8)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
+
+ struct psi_token *type_token = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-8)].yystate.yysemantics.yysval))), 1, "rval");
+ 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));
+ struct psi_decl *rval_decl = psi_decl_init(rval_func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+
+ rval_func->var->token = psi_token_copy(type_token);
+ rval_func->token = psi_token_copy(type_token);
+ if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
+ rval_func->var->pointer_level += 1;
+ rval_func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ }
+
+ struct psi_decl_type *type = psi_decl_type_init(PSI_T_FUNCTION, type_token->text);
+ 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));
+
+ type->real.func = rval_decl;
+ func->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-8)].yystate.yysemantics.yysval)));
+ func->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-8)].yystate.yysemantics.yysval)));
+
+ (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
}
-#line 2953 "src/parser_proc.c" /* glr.c:816 */
+#line 5459 "src/parser_proc.c" /* glr.c:816 */
break;
- case 293:
-#line 988 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 444:
+#line 1251 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
- psi_decl_type_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),
- 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)
- );
- (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ (void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-12)].yystate.yysemantics.yysval));
+ (void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-10)].yystate.yysemantics.yysval));
+ (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
+
+ struct psi_token *type_token = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval))), 1, "rval");
+ 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));
+ struct psi_decl *rval_decl = psi_decl_init(rval_func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+
+ rval_func->var->token = psi_token_copy(type_token);
+ rval_func->token = psi_token_copy(type_token);
+ if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
+ rval_func->var->pointer_level += 1;
+ rval_func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ }
+
+ struct psi_decl_type *type = psi_decl_type_init(PSI_T_FUNCTION, type_token->text);
+ 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));
+
+ type->real.func = rval_decl;
+ func->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval)));
+ func->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval)));
+
+ (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
}
-#line 2968 "src/parser_proc.c" /* glr.c:816 */
+#line 5489 "src/parser_proc.c" /* glr.c:816 */
break;
- case 294:
-#line 998 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 445:
+#line 1279 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
- psi_decl_type_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),
- 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)
- );
- (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ (*(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)));
+ if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
+ (*(struct psi_decl **)(&(*yyvalp)))->func->var->pointer_level += 1;
+ (*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ }
}
-#line 2983 "src/parser_proc.c" /* glr.c:816 */
+#line 5501 "src/parser_proc.c" /* glr.c:816 */
break;
- case 295:
-#line 1008 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 446:
+#line 1286 "src/parser_proc_grammar.y" /* glr.c:816 */
{
+ (*(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)));
+ (*(struct psi_decl **)(&(*yyvalp)))->varargs = 1;
+ if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
+ (*(struct psi_decl **)(&(*yyvalp)))->func->var->pointer_level += 1;
+ (*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ }
+}
+#line 5514 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 447:
+#line 1297 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
- (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
- psi_decl_type_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),
- psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text, 0, 0)
- );
- (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
+ (*(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));
(*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2998 "src/parser_proc.c" /* glr.c:816 */
+#line 5526 "src/parser_proc.c" /* glr.c:816 */
break;
- case 297:
-#line 1022 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 448:
+#line 1343 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
- psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text),
- psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0, 0)
- );
- (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+ (*(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));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3012 "src/parser_proc.c" /* glr.c:816 */
+#line 5537 "src/parser_proc.c" /* glr.c:816 */
break;
- case 298:
-#line 1034 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 450:
+#line 1399 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3020 "src/parser_proc.c" /* glr.c:816 */
+#line 5545 "src/parser_proc.c" /* glr.c:816 */
break;
- case 299:
-#line 1037 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 451:
+#line 1402 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3028 "src/parser_proc.c" /* glr.c:816 */
+#line 5553 "src/parser_proc.c" /* glr.c:816 */
break;
- case 300:
-#line 1040 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 452:
+#line 1405 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5561 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 453:
+#line 1411 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3036 "src/parser_proc.c" /* glr.c:816 */
+#line 5569 "src/parser_proc.c" /* glr.c:816 */
break;
- case 301:
-#line 1043 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 454:
+#line 1414 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3044 "src/parser_proc.c" /* glr.c:816 */
+#line 5577 "src/parser_proc.c" /* glr.c:816 */
break;
- case 302:
-#line 1049 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 455:
+#line 1420 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(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)));
+ char digest[17];
+ struct psi_token *name;
+
+ psi_token_hash((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func ->token, digest);
+ name = psi_token_append("@", psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token), 2, "funct", digest);
+
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
+ psi_decl_type_init(PSI_T_FUNCTION, name->text),
+ psi_decl_var_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var)
+ );
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->token = name;
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token);
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.func = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3052 "src/parser_proc.c" /* glr.c:816 */
+#line 5597 "src/parser_proc.c" /* glr.c:816 */
break;
- case 303:
-#line 1052 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 456:
+#line 1435 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5605 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 457:
+#line 1438 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
- psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text),
- psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), 0)
+ (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)),
+ psi_decl_var_init(NULL, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), 0)
);
- (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3067 "src/parser_proc.c" /* glr.c:816 */
+#line 5616 "src/parser_proc.c" /* glr.c:816 */
break;
- case 304:
-#line 1062 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 458:
+#line 1467 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
- psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text),
- psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), 0)
+ psi_decl_type_init(PSI_T_FUNCTION, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var->name),
+ psi_decl_var_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var)
);
- (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token);
+ (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.func = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3082 "src/parser_proc.c" /* glr.c:816 */
+#line 5629 "src/parser_proc.c" /* glr.c:816 */
break;
- case 305:
-#line 1075 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 459:
+#line 1475 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+}
+#line 5637 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 460:
+#line 1503 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
(*(struct psi_decl_var **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 3092 "src/parser_proc.c" /* glr.c:816 */
+#line 5647 "src/parser_proc.c" /* glr.c:816 */
break;
- case 306:
-#line 1080 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 461:
+#line 1508 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
(*(struct psi_decl_var **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 3102 "src/parser_proc.c" /* glr.c:816 */
+#line 5657 "src/parser_proc.c" /* glr.c:816 */
break;
- case 307:
-#line 1088 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 462:
+#line 1516 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
(*(struct psi_decl_union **)(&(*yyvalp)))->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
(*(struct psi_decl_union **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3114 "src/parser_proc.c" /* glr.c:816 */
+#line 5669 "src/parser_proc.c" /* glr.c:816 */
break;
- case 308:
-#line 1098 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 463:
+#line 1526 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
(*(struct psi_decl_struct **)(&(*yyvalp)))->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
(*(struct psi_decl_struct **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3126 "src/parser_proc.c" /* glr.c:816 */
+#line 5681 "src/parser_proc.c" /* glr.c:816 */
break;
- case 309:
-#line 1108 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 464:
+#line 1536 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3134 "src/parser_proc.c" /* glr.c:816 */
+#line 5689 "src/parser_proc.c" /* glr.c:816 */
break;
- case 311:
-#line 1115 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 466:
+#line 1543 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 3142 "src/parser_proc.c" /* glr.c:816 */
+#line 5697 "src/parser_proc.c" /* glr.c:816 */
break;
- case 312:
-#line 1121 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 467:
+#line 1549 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(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)));
+ (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+ (*(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)));
+ if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
+ size_t i = 0;
+ struct psi_decl_arg *arg;
+
+ while (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), i++, &arg)) {
+ arg->type = psi_decl_type_copy((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type);
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&(*yyvalp))), &arg);
+ }
+ free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
}
-#line 3150 "src/parser_proc.c" /* glr.c:816 */
+#line 5716 "src/parser_proc.c" /* glr.c:816 */
break;
- case 313:
-#line 1124 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 468:
+#line 1563 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), &(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+ (*(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)));
+ if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
+ size_t i = 0;
+ struct psi_decl_arg *arg;
+
+ while (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), i++, &arg)) {
+ arg->type = psi_decl_type_copy((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type);
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&(*yyvalp))), &arg);
+ }
+ free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
}
-#line 3158 "src/parser_proc.c" /* glr.c:816 */
+#line 5735 "src/parser_proc.c" /* glr.c:816 */
break;
- case 314:
-#line 1130 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 469:
+#line 1580 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
- (*(struct psi_decl_arg **)(&(*yyvalp)))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
- psi_parser_proc_add_from_typedef(P, (*(struct psi_decl_arg **)(&(*yyvalp))));
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3168 "src/parser_proc.c" /* glr.c:816 */
+#line 5743 "src/parser_proc.c" /* glr.c:816 */
break;
- case 315:
-#line 1138 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 470:
+#line 1583 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_decl_enum **)(&(*yyvalp))) = psi_decl_enum_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
- (*(struct psi_decl_enum **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3177 "src/parser_proc.c" /* glr.c:816 */
+#line 5751 "src/parser_proc.c" /* glr.c:816 */
break;
- case 316:
-#line 1145 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 471:
+#line 1589 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ {
+ struct psi_decl_arg *arg = psi_decl_arg_init(NULL, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ arg->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_arg_free), &arg);
+ }
+}
+#line 5763 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 472:
+#line 1596 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ {
+ struct psi_decl_arg *arg = psi_decl_arg_init(NULL, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ arg->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), &arg);
+ }
+}
+#line 5775 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 473:
+#line 1606 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+ (*(struct psi_decl_enum **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval));
+}
+#line 5784 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 474:
+#line 1613 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3185 "src/parser_proc.c" /* glr.c:816 */
+#line 5792 "src/parser_proc.c" /* glr.c:816 */
break;
- case 317:
-#line 1148 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 475:
+#line 1616 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3193 "src/parser_proc.c" /* glr.c:816 */
+#line 5800 "src/parser_proc.c" /* glr.c:816 */
break;
- case 318:
-#line 1154 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 476:
+#line 1622 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_enum_item **)(&(*yyvalp))) = psi_decl_enum_item_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, NULL);
(*(struct psi_decl_enum_item **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3203 "src/parser_proc.c" /* glr.c:816 */
+#line 5810 "src/parser_proc.c" /* glr.c:816 */
break;
- case 319:
-#line 1159 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 477:
+#line 1627 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
(*(struct psi_decl_enum_item **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3213 "src/parser_proc.c" /* glr.c:816 */
+#line 5820 "src/parser_proc.c" /* glr.c:816 */
break;
- case 320:
-#line 1167 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 478:
+#line 1635 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 3222 "src/parser_proc.c" /* glr.c:816 */
+#line 5829 "src/parser_proc.c" /* glr.c:816 */
break;
- case 321:
-#line 1171 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 479:
+#line 1639 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->token);
}
-#line 3231 "src/parser_proc.c" /* glr.c:816 */
+#line 5838 "src/parser_proc.c" /* glr.c:816 */
break;
- case 322:
-#line 1175 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 480:
+#line 1643 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3240 "src/parser_proc.c" /* glr.c:816 */
+#line 5847 "src/parser_proc.c" /* glr.c:816 */
break;
- case 323:
-#line 1179 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 481:
+#line 1647 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 3249 "src/parser_proc.c" /* glr.c:816 */
+#line 5856 "src/parser_proc.c" /* glr.c:816 */
break;
- case 324:
-#line 1183 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 482:
+#line 1651 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 3258 "src/parser_proc.c" /* glr.c:816 */
+#line 5865 "src/parser_proc.c" /* glr.c:816 */
break;
- case 325:
-#line 1187 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 483:
+#line 1655 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 3267 "src/parser_proc.c" /* glr.c:816 */
+#line 5874 "src/parser_proc.c" /* glr.c:816 */
break;
- case 326:
-#line 1194 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 484:
+#line 1662 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3276 "src/parser_proc.c" /* glr.c:816 */
+#line 5883 "src/parser_proc.c" /* glr.c:816 */
break;
- case 327:
-#line 1198 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 485:
+#line 1666 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3285 "src/parser_proc.c" /* glr.c:816 */
+#line 5892 "src/parser_proc.c" /* glr.c:816 */
break;
- case 328:
-#line 1202 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 486:
+#line 1670 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3294 "src/parser_proc.c" /* glr.c:816 */
+#line 5901 "src/parser_proc.c" /* glr.c:816 */
break;
- case 329:
-#line 1206 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 487:
+#line 1674 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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);
+ (*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 5910 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 488:
+#line 1678 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_NAME, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), 0);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 3303 "src/parser_proc.c" /* glr.c:816 */
+#line 5919 "src/parser_proc.c" /* glr.c:816 */
break;
- case 330:
-#line 1213 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 489:
+#line 1682 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5927 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 490:
+#line 1688 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+ (*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
+}
+#line 5936 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 491:
+#line 1692 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+ (*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+}
+#line 5945 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 492:
+#line 1699 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5953 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 493:
+#line 1702 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
+ int8_t sizeof_void_p = sizeof(void *);
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_void_p, 0);
+ psi_decl_type_free(&(*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ } else {
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_SIZEOF, (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), 0);
+ }
+}
+#line 5967 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 494:
+#line 1714 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ int8_t sizeof_void_p = sizeof(void *);
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_void_p, 0);
+}
+#line 5976 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 495:
+#line 1718 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ int8_t sizeof_a = sizeof('a');
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_a, 0);
+}
+#line 5985 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 496:
+#line 1722 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ uint64_t len = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->size + 1;
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_UINT64, &len, 0);
+}
+#line 5994 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 497:
+#line 1729 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))), 1, digest);
}
}
-#line 3318 "src/parser_proc.c" /* glr.c:816 */
+#line 6009 "src/parser_proc.c" /* glr.c:816 */
break;
- case 331:
-#line 1226 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 498:
+#line 1742 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))), 1, digest);
}
}
-#line 3333 "src/parser_proc.c" /* glr.c:816 */
+#line 6024 "src/parser_proc.c" /* glr.c:816 */
break;
- case 332:
-#line 1239 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 499:
+#line 1755 "src/parser_proc_grammar.y" /* glr.c:816 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))), 1, digest);
}
}
-#line 3348 "src/parser_proc.c" /* glr.c:816 */
+#line 6039 "src/parser_proc.c" /* glr.c:816 */
break;
- case 333:
-#line 1252 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 500:
+#line 1768 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3356 "src/parser_proc.c" /* glr.c:816 */
+#line 6047 "src/parser_proc.c" /* glr.c:816 */
break;
- case 334:
-#line 1255 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 501:
+#line 1771 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_token **)(&(*yyvalp)))->type = PSI_T_NAME;
}
-#line 3365 "src/parser_proc.c" /* glr.c:816 */
+#line 6056 "src/parser_proc.c" /* glr.c:816 */
break;
- case 335:
-#line 1262 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 504:
+#line 1783 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_layout **)(&(*yyvalp))) = NULL;
}
-#line 3373 "src/parser_proc.c" /* glr.c:816 */
+#line 6064 "src/parser_proc.c" /* glr.c:816 */
break;
- case 336:
-#line 1265 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 505:
+#line 1786 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(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));
+ (*(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));
}
-#line 3381 "src/parser_proc.c" /* glr.c:816 */
+#line 6072 "src/parser_proc.c" /* glr.c:816 */
break;
- case 337:
-#line 1271 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 506:
+#line 1789 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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);
+}
+#line 6080 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 507:
+#line 1792 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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));
+}
+#line 6088 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 508:
+#line 1798 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_layout*)(&(*yyvalp))).pos = 0;
(*(struct psi_layout*)(&(*yyvalp))).len = 0;
}
-#line 3390 "src/parser_proc.c" /* glr.c:816 */
+#line 6097 "src/parser_proc.c" /* glr.c:816 */
break;
- case 338:
-#line 1275 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 509:
+#line 1802 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_layout*)(&(*yyvalp))).pos = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text);
(*(struct psi_layout*)(&(*yyvalp))).len = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
}
-#line 3399 "src/parser_proc.c" /* glr.c:816 */
+#line 6106 "src/parser_proc.c" /* glr.c:816 */
break;
- case 339:
-#line 1282 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 510:
+#line 1809 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 3407 "src/parser_proc.c" /* glr.c:816 */
+#line 6114 "src/parser_proc.c" /* glr.c:816 */
break;
- case 340:
-#line 1285 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 511:
+#line 1812 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(size_t*)(&(*yyvalp))) = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
+ (*(size_t*)(&(*yyvalp))) = 0;
}
-#line 3415 "src/parser_proc.c" /* glr.c:816 */
+#line 6122 "src/parser_proc.c" /* glr.c:816 */
break;
- case 341:
-#line 1291 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 512:
+#line 1815 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ struct psi_validate_scope scope = {0};
+ psi_validate_scope_ctor(&scope);
+ scope.defs = &P->preproc->defs;
+ if (psi_num_exp_validate(PSI_DATA(P), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), &scope)) {
+ (*(size_t*)(&(*yyvalp))) = psi_num_exp_get_long((*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), NULL, &P->preproc->defs);
+ } else {
+ (*(size_t*)(&(*yyvalp))) = 0;
+ }
+ psi_num_exp_free(&(*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ psi_validate_scope_dtor(&scope);
+}
+#line 6139 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 517:
+#line 1837 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 3423 "src/parser_proc.c" /* glr.c:816 */
+#line 6147 "src/parser_proc.c" /* glr.c:816 */
break;
- case 342:
-#line 1294 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 518:
+#line 1840 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3431 "src/parser_proc.c" /* glr.c:816 */
+#line 6155 "src/parser_proc.c" /* glr.c:816 */
break;
- case 343:
-#line 1300 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 520:
+#line 1847 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 6163 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 521:
+#line 1853 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(size_t*)(&(*yyvalp))) = 1;
}
-#line 3439 "src/parser_proc.c" /* glr.c:816 */
+#line 6171 "src/parser_proc.c" /* glr.c:816 */
break;
- case 344:
-#line 1303 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 522:
+#line 1856 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)) + 1;
}
-#line 3447 "src/parser_proc.c" /* glr.c:816 */
+#line 6179 "src/parser_proc.c" /* glr.c:816 */
break;
- case 345:
-#line 1315 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 527:
+#line 1878 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3455 "src/parser_proc.c" /* glr.c:816 */
+#line 6187 "src/parser_proc.c" /* glr.c:816 */
break;
- case 346:
-#line 1318 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 528:
+#line 1881 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_impl_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->static_memory = 1;
}
-#line 3464 "src/parser_proc.c" /* glr.c:816 */
+#line 6196 "src/parser_proc.c" /* glr.c:816 */
break;
- case 347:
-#line 1325 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 529:
+#line 1888 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_impl_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->return_reference = (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval));
}
-#line 3474 "src/parser_proc.c" /* glr.c:816 */
+#line 6206 "src/parser_proc.c" /* glr.c:816 */
break;
- case 348:
-#line 1330 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 530:
+#line 1893 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_impl_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->return_reference = (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval));
}
-#line 3484 "src/parser_proc.c" /* glr.c:816 */
+#line 6216 "src/parser_proc.c" /* glr.c:816 */
break;
- case 349:
-#line 1335 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 531:
+#line 1898 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_impl_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-10)].yystate.yysemantics.yysval)));
(*(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);
(*(struct psi_impl_func **)(&(*yyvalp)))->vararg->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 3496 "src/parser_proc.c" /* glr.c:816 */
+#line 6228 "src/parser_proc.c" /* glr.c:816 */
break;
- case 350:
-#line 1345 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 532:
+#line 1908 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3504 "src/parser_proc.c" /* glr.c:816 */
+#line 6236 "src/parser_proc.c" /* glr.c:816 */
break;
- case 351:
-#line 1348 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 533:
+#line 1911 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3512 "src/parser_proc.c" /* glr.c:816 */
+#line 6244 "src/parser_proc.c" /* glr.c:816 */
break;
- case 352:
-#line 1354 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 534:
+#line 1917 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
}
-#line 3520 "src/parser_proc.c" /* glr.c:816 */
+#line 6252 "src/parser_proc.c" /* glr.c:816 */
break;
- case 353:
-#line 1357 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 535:
+#line 1920 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3528 "src/parser_proc.c" /* glr.c:816 */
+#line 6260 "src/parser_proc.c" /* glr.c:816 */
break;
- case 354:
-#line 1363 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 536:
+#line 1926 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_impl_var **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3537 "src/parser_proc.c" /* glr.c:816 */
+#line 6269 "src/parser_proc.c" /* glr.c:816 */
break;
- case 355:
-#line 1370 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 537:
+#line 1933 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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);
(*(struct psi_impl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3546 "src/parser_proc.c" /* glr.c:816 */
+#line 6278 "src/parser_proc.c" /* glr.c:816 */
break;
- case 365:
-#line 1389 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 538:
+#line 1940 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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);
+ (*(struct psi_impl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 6287 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 550:
+#line 1967 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3554 "src/parser_proc.c" /* glr.c:816 */
+#line 6295 "src/parser_proc.c" /* glr.c:816 */
break;
- case 366:
-#line 1392 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 551:
+#line 1970 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3562 "src/parser_proc.c" /* glr.c:816 */
+#line 6303 "src/parser_proc.c" /* glr.c:816 */
break;
- case 367:
-#line 1398 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 552:
+#line 1976 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_return_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3570 "src/parser_proc.c" /* glr.c:816 */
+#line 6311 "src/parser_proc.c" /* glr.c:816 */
break;
- case 368:
-#line 1401 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 553:
+#line 1979 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_let_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3578 "src/parser_proc.c" /* glr.c:816 */
+#line 6319 "src/parser_proc.c" /* glr.c:816 */
break;
- case 369:
-#line 1404 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 554:
+#line 1982 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_set_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3586 "src/parser_proc.c" /* glr.c:816 */
+#line 6327 "src/parser_proc.c" /* glr.c:816 */
break;
- case 370:
-#line 1407 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 555:
+#line 1985 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_assert_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3594 "src/parser_proc.c" /* glr.c:816 */
+#line 6335 "src/parser_proc.c" /* glr.c:816 */
break;
- case 371:
-#line 1410 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 556:
+#line 1988 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_free_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3602 "src/parser_proc.c" /* glr.c:816 */
+#line 6343 "src/parser_proc.c" /* glr.c:816 */
break;
- case 372:
-#line 1416 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 557:
+#line 1994 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_stmt **)(&(*yyvalp))) = psi_let_stmt_init((*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_let_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3611 "src/parser_proc.c" /* glr.c:816 */
+#line 6352 "src/parser_proc.c" /* glr.c:816 */
break;
- case 373:
-#line 1420 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 558:
+#line 1998 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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))));
(*(struct psi_let_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
(*(struct psi_let_stmt **)(&(*yyvalp)))->exp->is_reference = (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 3621 "src/parser_proc.c" /* glr.c:816 */
+#line 6362 "src/parser_proc.c" /* glr.c:816 */
break;
- case 375:
-#line 1429 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 560:
+#line 2007 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->is_reference = true;
}
-#line 3630 "src/parser_proc.c" /* glr.c:816 */
+#line 6371 "src/parser_proc.c" /* glr.c:816 */
break;
- case 376:
-#line 1433 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 561:
+#line 2011 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->is_reference = false;
}
-#line 3639 "src/parser_proc.c" /* glr.c:816 */
+#line 6380 "src/parser_proc.c" /* glr.c:816 */
break;
- case 377:
-#line 1440 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 562:
+#line 2018 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_NULL, NULL);
}
-#line 3647 "src/parser_proc.c" /* glr.c:816 */
+#line 6388 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 563:
+#line 2021 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+}
+#line 6396 "src/parser_proc.c" /* glr.c:816 */
break;
- case 378:
-#line 1443 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 564:
+#line 2024 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLOC, (*(struct psi_let_calloc **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3655 "src/parser_proc.c" /* glr.c:816 */
+#line 6404 "src/parser_proc.c" /* glr.c:816 */
break;
- case 379:
-#line 1446 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 565:
+#line 2027 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLBACK, (*(struct psi_let_callback **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLOC, (*(struct psi_let_calloc **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_let_calloc **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->static_memory = 1;
}
-#line 3663 "src/parser_proc.c" /* glr.c:816 */
+#line 6413 "src/parser_proc.c" /* glr.c:816 */
break;
- case 380:
-#line 1449 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 566:
+#line 2031 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(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)));
+ (*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLBACK, (*(struct psi_let_callback **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3671 "src/parser_proc.c" /* glr.c:816 */
+#line 6421 "src/parser_proc.c" /* glr.c:816 */
break;
- case 381:
-#line 1452 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 567:
+#line 2034 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(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)));
+ (*(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)));
}
-#line 3679 "src/parser_proc.c" /* glr.c:816 */
+#line 6429 "src/parser_proc.c" /* glr.c:816 */
break;
- case 382:
-#line 1458 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 568:
+#line 2040 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->var = (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 3688 "src/parser_proc.c" /* glr.c:816 */
+#line 6438 "src/parser_proc.c" /* glr.c:816 */
break;
- case 383:
-#line 1462 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 569:
+#line 2044 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->is_reference = 1;
(*(struct psi_let_exp **)(&(*yyvalp)))->var = (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
}
-#line 3698 "src/parser_proc.c" /* glr.c:816 */
+#line 6448 "src/parser_proc.c" /* glr.c:816 */
break;
- case 384:
-#line 1470 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 570:
+#line 2052 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_let_calloc **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
}
-#line 3707 "src/parser_proc.c" /* glr.c:816 */
+#line 6457 "src/parser_proc.c" /* glr.c:816 */
break;
- case 385:
-#line 1477 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 571:
+#line 2059 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(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_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);
(*(struct psi_let_callback **)(&(*yyvalp)))->func->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
(*(struct psi_let_callback **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval)));
}
-#line 3717 "src/parser_proc.c" /* glr.c:816 */
+#line 6467 "src/parser_proc.c" /* glr.c:816 */
break;
- case 386:
-#line 1485 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 572:
+#line 2064 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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)));
+ (*(struct psi_let_callback **)(&(*yyvalp)))->func->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
+ (*(struct psi_let_callback **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-11)].yystate.yysemantics.yysval)));
+}
+#line 6477 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 573:
+#line 2072 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_let_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_let_func **)(&(*yyvalp)))->inner = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 3727 "src/parser_proc.c" /* glr.c:816 */
+#line 6487 "src/parser_proc.c" /* glr.c:816 */
break;
- case 397:
-#line 1506 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 584:
+#line 2093 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3735 "src/parser_proc.c" /* glr.c:816 */
+#line 6495 "src/parser_proc.c" /* glr.c:816 */
break;
- case 398:
-#line 1509 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 585:
+#line 2096 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3743 "src/parser_proc.c" /* glr.c:816 */
+#line 6503 "src/parser_proc.c" /* glr.c:816 */
break;
- case 399:
-#line 1515 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 586:
+#line 2102 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3751 "src/parser_proc.c" /* glr.c:816 */
+#line 6511 "src/parser_proc.c" /* glr.c:816 */
break;
- case 400:
-#line 1518 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 587:
+#line 2105 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3759 "src/parser_proc.c" /* glr.c:816 */
+#line 6519 "src/parser_proc.c" /* glr.c:816 */
break;
- case 403:
-#line 1529 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 590:
+#line 2116 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3767 "src/parser_proc.c" /* glr.c:816 */
+#line 6527 "src/parser_proc.c" /* glr.c:816 */
break;
- case 404:
-#line 1532 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 591:
+#line 2119 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3775 "src/parser_proc.c" /* glr.c:816 */
+#line 6535 "src/parser_proc.c" /* glr.c:816 */
break;
- case 405:
-#line 1538 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 592:
+#line 2125 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3783 "src/parser_proc.c" /* glr.c:816 */
+#line 6543 "src/parser_proc.c" /* glr.c:816 */
break;
- case 406:
-#line 1541 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 593:
+#line 2128 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3791 "src/parser_proc.c" /* glr.c:816 */
+#line 6551 "src/parser_proc.c" /* glr.c:816 */
break;
- case 407:
-#line 1547 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 594:
+#line 2134 "src/parser_proc_grammar.y" /* glr.c:816 */
{
- (*(struct psi_return_stmt **)(&(*yyvalp))) = psi_return_stmt_init(psi_set_exp_init(PSI_SET_FUNC, (*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))));
+ (*(struct psi_return_stmt **)(&(*yyvalp))) = psi_return_stmt_init((*(struct psi_return_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_return_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3800 "src/parser_proc.c" /* glr.c:816 */
+#line 6560 "src/parser_proc.c" /* glr.c:816 */
break;
- case 408:
-#line 1554 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 595:
+#line 2141 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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))));
+ (*(struct psi_return_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->token);
+}
+#line 6569 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 596:
+#line 2145 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(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))));
+ (*(struct psi_return_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
+}
+#line 6578 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 597:
+#line 2152 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
+}
+#line 6586 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 598:
+#line 2155 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
+}
+#line 6594 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 599:
+#line 2158 "src/parser_proc_grammar.y" /* glr.c:816 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 6602 "src/parser_proc.c" /* glr.c:816 */
+ break;
+
+ case 600:
+#line 2164 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_set_stmt **)(&(*yyvalp))) = psi_set_stmt_init((*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_set_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3809 "src/parser_proc.c" /* glr.c:816 */
+#line 6611 "src/parser_proc.c" /* glr.c:816 */
break;
- case 409:
-#line 1561 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 601:
+#line 2171 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_set_exp **)(&(*yyvalp))) = psi_set_exp_init(PSI_SET_FUNC, (*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3817 "src/parser_proc.c" /* glr.c:816 */
+#line 6619 "src/parser_proc.c" /* glr.c:816 */
break;
- case 410:
-#line 1564 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 602:
+#line 2174 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_set_exp **)(&(*yyvalp))) = psi_set_exp_init(PSI_SET_NUMEXP, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3825 "src/parser_proc.c" /* glr.c:816 */
+#line 6627 "src/parser_proc.c" /* glr.c:816 */
break;
- case 411:
-#line 1567 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 603:
+#line 2177 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_set_exp **)(&(*yyvalp))) = (*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_set_exp **)(&(*yyvalp)))->var = (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 3834 "src/parser_proc.c" /* glr.c:816 */
+#line 6636 "src/parser_proc.c" /* glr.c:816 */
break;
- case 412:
-#line 1574 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 604:
+#line 2184 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_set_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_set_func **)(&(*yyvalp)))->inner = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 3844 "src/parser_proc.c" /* glr.c:816 */
+#line 6646 "src/parser_proc.c" /* glr.c:816 */
break;
- case 413:
-#line 1579 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 605:
+#line 2189 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_set_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
(*(struct psi_set_func **)(&(*yyvalp)))->recursive = 1;
}
-#line 3854 "src/parser_proc.c" /* glr.c:816 */
+#line 6656 "src/parser_proc.c" /* glr.c:816 */
break;
- case 422:
-#line 1598 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 614:
+#line 2208 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3862 "src/parser_proc.c" /* glr.c:816 */
+#line 6664 "src/parser_proc.c" /* glr.c:816 */
break;
- case 423:
-#line 1601 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 615:
+#line 2211 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3870 "src/parser_proc.c" /* glr.c:816 */
+#line 6672 "src/parser_proc.c" /* glr.c:816 */
break;
- case 424:
-#line 1607 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 616:
+#line 2217 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3878 "src/parser_proc.c" /* glr.c:816 */
+#line 6680 "src/parser_proc.c" /* glr.c:816 */
break;
- case 425:
-#line 1610 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 617:
+#line 2220 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3886 "src/parser_proc.c" /* glr.c:816 */
+#line 6688 "src/parser_proc.c" /* glr.c:816 */
break;
- case 426:
-#line 1616 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 618:
+#line 2226 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
(*(struct psi_assert_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3895 "src/parser_proc.c" /* glr.c:816 */
+#line 6697 "src/parser_proc.c" /* glr.c:816 */
break;
- case 429:
-#line 1628 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 621:
+#line 2238 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_free_stmt **)(&(*yyvalp))) = psi_free_stmt_init((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_free_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 3904 "src/parser_proc.c" /* glr.c:816 */
+#line 6706 "src/parser_proc.c" /* glr.c:816 */
break;
- case 430:
-#line 1635 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 622:
+#line 2245 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3912 "src/parser_proc.c" /* glr.c:816 */
+#line 6714 "src/parser_proc.c" /* glr.c:816 */
break;
- case 431:
-#line 1638 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 623:
+#line 2248 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(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)));
}
-#line 3920 "src/parser_proc.c" /* glr.c:816 */
+#line 6722 "src/parser_proc.c" /* glr.c:816 */
break;
- case 432:
-#line 1644 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 624:
+#line 2254 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(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)));
(*(struct psi_free_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 3930 "src/parser_proc.c" /* glr.c:816 */
- break;
-
- case 433:
-#line 1652 "src/parser_proc_grammar.y" /* glr.c:816 */
- {
- (*(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)));
-}
-#line 3938 "src/parser_proc.c" /* glr.c:816 */
- break;
-
- case 434:
-#line 1655 "src/parser_proc_grammar.y" /* glr.c:816 */
- {
- (*(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)));
-}
-#line 3946 "src/parser_proc.c" /* glr.c:816 */
+#line 6732 "src/parser_proc.c" /* glr.c:816 */
break;
- case 435:
-#line 1661 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 625:
+#line 2262 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(bool*)(&(*yyvalp))) = false;
}
-#line 3954 "src/parser_proc.c" /* glr.c:816 */
+#line 6740 "src/parser_proc.c" /* glr.c:816 */
break;
- case 436:
-#line 1664 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 626:
+#line 2265 "src/parser_proc_grammar.y" /* glr.c:816 */
{
(*(bool*)(&(*yyvalp))) = true;
}
-#line 3962 "src/parser_proc.c" /* glr.c:816 */
+#line 6748 "src/parser_proc.c" /* glr.c:816 */
break;
-#line 3966 "src/parser_proc.c" /* glr.c:816 */
+#line 6752 "src/parser_proc.c" /* glr.c:816 */
default: break;
}
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
switch (yytype)
{
- case 128: /* binary_op_token */
-#line 272 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 141: /* binary_op_token */
+#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4017 "src/parser_proc.c" /* glr.c:846 */
+#line 6803 "src/parser_proc.c" /* glr.c:846 */
break;
- case 129: /* unary_op_token */
-#line 272 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 142: /* unary_op_token */
+#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4023 "src/parser_proc.c" /* glr.c:846 */
+#line 6809 "src/parser_proc.c" /* glr.c:846 */
break;
- case 130: /* name_token */
-#line 272 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 143: /* name_token */
+#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4029 "src/parser_proc.c" /* glr.c:846 */
+#line 6815 "src/parser_proc.c" /* glr.c:846 */
break;
- case 131: /* any_noeol_token */
-#line 272 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 144: /* any_noeol_token */
+#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4035 "src/parser_proc.c" /* glr.c:846 */
+#line 6821 "src/parser_proc.c" /* glr.c:846 */
break;
- case 135: /* lib */
-#line 266 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 149: /* lib */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4041 "src/parser_proc.c" /* glr.c:846 */
+#line 6827 "src/parser_proc.c" /* glr.c:846 */
break;
- case 136: /* cpp */
-#line 281 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 150: /* cpp */
+#line 324 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&(*yyvaluep))));}
-#line 4047 "src/parser_proc.c" /* glr.c:846 */
+#line 6833 "src/parser_proc.c" /* glr.c:846 */
break;
- case 137: /* cpp_exp */
-#line 281 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 151: /* cpp_exp */
+#line 324 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&(*yyvaluep))));}
-#line 4053 "src/parser_proc.c" /* glr.c:846 */
+#line 6839 "src/parser_proc.c" /* glr.c:846 */
break;
- case 138: /* cpp_message_token */
-#line 269 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 153: /* cpp_message_token */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4059 "src/parser_proc.c" /* glr.c:846 */
+#line 6845 "src/parser_proc.c" /* glr.c:846 */
break;
- case 139: /* cpp_include_token */
-#line 269 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 154: /* cpp_include_token */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4065 "src/parser_proc.c" /* glr.c:846 */
+#line 6851 "src/parser_proc.c" /* glr.c:846 */
break;
- case 140: /* cpp_header_token */
-#line 269 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 155: /* cpp_header_token */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4071 "src/parser_proc.c" /* glr.c:846 */
+#line 6857 "src/parser_proc.c" /* glr.c:846 */
break;
- case 141: /* cpp_no_arg_token */
-#line 269 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 156: /* cpp_no_arg_token */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4077 "src/parser_proc.c" /* glr.c:846 */
+#line 6863 "src/parser_proc.c" /* glr.c:846 */
break;
- case 142: /* cpp_name_arg_token */
-#line 269 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 157: /* cpp_name_arg_token */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4083 "src/parser_proc.c" /* glr.c:846 */
+#line 6869 "src/parser_proc.c" /* glr.c:846 */
break;
- case 143: /* cpp_exp_arg_token */
-#line 269 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 158: /* cpp_exp_arg_token */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4089 "src/parser_proc.c" /* glr.c:846 */
+#line 6875 "src/parser_proc.c" /* glr.c:846 */
break;
- case 144: /* cpp_macro_decl */
-#line 283 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 159: /* cpp_macro_decl */
+#line 326 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_cpp_macro_decl_free(&(*(struct psi_cpp_macro_decl **)(&(*yyvaluep))));}
-#line 4095 "src/parser_proc.c" /* glr.c:846 */
+#line 6881 "src/parser_proc.c" /* glr.c:846 */
break;
- case 145: /* cpp_macro_sig */
-#line 285 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 160: /* cpp_macro_sig */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4101 "src/parser_proc.c" /* glr.c:846 */
+#line 6887 "src/parser_proc.c" /* glr.c:846 */
break;
- case 146: /* cpp_macro_sig_args */
-#line 285 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 161: /* cpp_macro_sig_args */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4107 "src/parser_proc.c" /* glr.c:846 */
+#line 6893 "src/parser_proc.c" /* glr.c:846 */
break;
- case 147: /* cpp_macro_decl_tokens */
-#line 285 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 162: /* cpp_macro_decl_tokens */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4113 "src/parser_proc.c" /* glr.c:846 */
+#line 6899 "src/parser_proc.c" /* glr.c:846 */
break;
- case 148: /* cpp_macro_decl_token_list */
-#line 285 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 163: /* cpp_macro_decl_token_list */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4119 "src/parser_proc.c" /* glr.c:846 */
+#line 6905 "src/parser_proc.c" /* glr.c:846 */
break;
- case 149: /* cpp_macro_exp */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 164: /* cpp_macro_exp */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_num_exp_free(&(*(struct psi_num_exp **)(&(*yyvaluep))));}
-#line 4125 "src/parser_proc.c" /* glr.c:846 */
+#line 6911 "src/parser_proc.c" /* glr.c:846 */
break;
- case 150: /* cpp_macro_call_args */
-#line 285 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 165: /* cpp_macro_call_args */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4131 "src/parser_proc.c" /* glr.c:846 */
+#line 6917 "src/parser_proc.c" /* glr.c:846 */
break;
- case 151: /* cpp_macro_call_arg_list */
-#line 285 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 166: /* cpp_macro_call_arg_list */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4137 "src/parser_proc.c" /* glr.c:846 */
+#line 6923 "src/parser_proc.c" /* glr.c:846 */
break;
- case 152: /* constant */
-#line 293 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 167: /* constant */
+#line 336 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_const_free(&(*(struct psi_const **)(&(*yyvaluep))));}
-#line 4143 "src/parser_proc.c" /* glr.c:846 */
+#line 6929 "src/parser_proc.c" /* glr.c:846 */
break;
- case 153: /* constant_type */
-#line 295 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_const_type_free(&(*(struct psi_const_type **)(&(*yyvaluep))));}
-#line 4149 "src/parser_proc.c" /* glr.c:846 */
+ case 168: /* impl_def_val */
+#line 338 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_impl_def_val_free(&(*(struct psi_impl_def_val **)(&(*yyvaluep))));}
+#line 6935 "src/parser_proc.c" /* glr.c:846 */
break;
- case 154: /* constant_type_token */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 169: /* impl_def_val_token */
+#line 333 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4155 "src/parser_proc.c" /* glr.c:846 */
+#line 6941 "src/parser_proc.c" /* glr.c:846 */
break;
- case 155: /* impl_def_val */
-#line 297 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_impl_def_val_free(&(*(struct psi_impl_def_val **)(&(*yyvaluep))));}
-#line 4161 "src/parser_proc.c" /* glr.c:846 */
+ case 170: /* decl_typedef */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 6947 "src/parser_proc.c" /* glr.c:846 */
break;
- case 156: /* impl_def_val_token */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
- {}
-#line 4167 "src/parser_proc.c" /* glr.c:846 */
+ case 171: /* typedef */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 6953 "src/parser_proc.c" /* glr.c:846 */
break;
- case 157: /* decl_typedef */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 172: /* typedef_anon */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4173 "src/parser_proc.c" /* glr.c:846 */
+#line 6959 "src/parser_proc.c" /* glr.c:846 */
break;
- case 158: /* typedef */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 173: /* typedef_decl */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4179 "src/parser_proc.c" /* glr.c:846 */
+#line 6965 "src/parser_proc.c" /* glr.c:846 */
break;
- case 159: /* const_decl_type */
-#line 306 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 4185 "src/parser_proc.c" /* glr.c:846 */
+ case 174: /* typedef_anon_decl */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 6971 "src/parser_proc.c" /* glr.c:846 */
break;
- case 160: /* decl_type */
-#line 306 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 175: /* qualified_decl_type */
+#line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 4191 "src/parser_proc.c" /* glr.c:846 */
+#line 6977 "src/parser_proc.c" /* glr.c:846 */
break;
- case 161: /* decl_type_complex */
-#line 306 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 177: /* decl_type */
+#line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 4197 "src/parser_proc.c" /* glr.c:846 */
+#line 6983 "src/parser_proc.c" /* glr.c:846 */
break;
- case 162: /* decl_type_simple */
-#line 300 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4203 "src/parser_proc.c" /* glr.c:846 */
+ case 178: /* decl_type_complex */
+#line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
+#line 6989 "src/parser_proc.c" /* glr.c:846 */
break;
- case 163: /* decl_real_type */
-#line 300 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 179: /* decl_type_simple */
+#line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4209 "src/parser_proc.c" /* glr.c:846 */
+#line 6995 "src/parser_proc.c" /* glr.c:846 */
break;
- case 164: /* decl_stdint_type */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:846 */
- {}
-#line 4215 "src/parser_proc.c" /* glr.c:846 */
+ case 180: /* decl_real_type */
+#line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7001 "src/parser_proc.c" /* glr.c:846 */
break;
- case 165: /* int_signed */
-#line 278 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 181: /* int_signed */
+#line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4221 "src/parser_proc.c" /* glr.c:846 */
+#line 7007 "src/parser_proc.c" /* glr.c:846 */
break;
- case 166: /* int_width */
-#line 275 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 182: /* int_width */
+#line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4227 "src/parser_proc.c" /* glr.c:846 */
+#line 7013 "src/parser_proc.c" /* glr.c:846 */
break;
- case 167: /* decl_int_type */
-#line 300 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 183: /* decl_int_type */
+#line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4233 "src/parser_proc.c" /* glr.c:846 */
+#line 7019 "src/parser_proc.c" /* glr.c:846 */
break;
- case 168: /* int_signed_types */
-#line 275 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 184: /* int_signed_types */
+#line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4239 "src/parser_proc.c" /* glr.c:846 */
+#line 7025 "src/parser_proc.c" /* glr.c:846 */
break;
- case 169: /* signed_short_types */
-#line 278 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 185: /* signed_short_types */
+#line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4245 "src/parser_proc.c" /* glr.c:846 */
+#line 7031 "src/parser_proc.c" /* glr.c:846 */
break;
- case 170: /* signed_long_types */
-#line 278 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 186: /* signed_long_types */
+#line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4251 "src/parser_proc.c" /* glr.c:846 */
+#line 7037 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 187: /* int_width_types */
+#line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7043 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 188: /* decl_stmt */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7049 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 189: /* decl_asm */
+#line 344 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7055 "src/parser_proc.c" /* glr.c:846 */
break;
- case 171: /* int_width_types */
-#line 275 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 190: /* quoted_strings */
+#line 344 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4257 "src/parser_proc.c" /* glr.c:846 */
+#line 7061 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 191: /* decl_extvar_stmt */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7067 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 192: /* decl_extvar_list */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7073 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 193: /* decl_vars */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7079 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 194: /* ignored_decl */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7085 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 198: /* decl */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7091 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 199: /* decl_body */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7097 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 200: /* decl_func_body */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7103 "src/parser_proc.c" /* glr.c:846 */
break;
- case 172: /* decl_stmt */
-#line 308 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 201: /* decl_functor_body */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4263 "src/parser_proc.c" /* glr.c:846 */
+#line 7109 "src/parser_proc.c" /* glr.c:846 */
break;
- case 173: /* decl */
-#line 308 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 202: /* decl_anon_functor_body */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4269 "src/parser_proc.c" /* glr.c:846 */
+#line 7115 "src/parser_proc.c" /* glr.c:846 */
break;
- case 174: /* decl_fn */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 203: /* decl_functor */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4275 "src/parser_proc.c" /* glr.c:846 */
+#line 7121 "src/parser_proc.c" /* glr.c:846 */
break;
- case 175: /* decl_functor */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 204: /* decl_anon_functor */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4281 "src/parser_proc.c" /* glr.c:846 */
+#line 7127 "src/parser_proc.c" /* glr.c:846 */
break;
- case 176: /* decl_func */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 205: /* decl_func */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4287 "src/parser_proc.c" /* glr.c:846 */
+#line 7133 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 206: /* decl_args */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7139 "src/parser_proc.c" /* glr.c:846 */
break;
- case 177: /* decl_args */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 207: /* decl_arg_list */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4293 "src/parser_proc.c" /* glr.c:846 */
+#line 7145 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 208: /* decl_anon_arg */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 7151 "src/parser_proc.c" /* glr.c:846 */
break;
- case 178: /* decl_arg */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 209: /* decl_arg */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4299 "src/parser_proc.c" /* glr.c:846 */
+#line 7157 "src/parser_proc.c" /* glr.c:846 */
break;
- case 179: /* decl_var */
-#line 312 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 210: /* decl_var */
+#line 353 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_var_free(&(*(struct psi_decl_var **)(&(*yyvaluep))));}
-#line 4305 "src/parser_proc.c" /* glr.c:846 */
+#line 7163 "src/parser_proc.c" /* glr.c:846 */
break;
- case 180: /* decl_union */
-#line 316 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 211: /* decl_union */
+#line 357 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_union_free(&(*(struct psi_decl_union **)(&(*yyvaluep))));}
-#line 4311 "src/parser_proc.c" /* glr.c:846 */
+#line 7169 "src/parser_proc.c" /* glr.c:846 */
break;
- case 181: /* decl_struct */
-#line 314 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 212: /* decl_struct */
+#line 355 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_struct_free(&(*(struct psi_decl_struct **)(&(*yyvaluep))));}
-#line 4317 "src/parser_proc.c" /* glr.c:846 */
+#line 7175 "src/parser_proc.c" /* glr.c:846 */
break;
- case 182: /* decl_struct_args */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 213: /* decl_struct_args */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4323 "src/parser_proc.c" /* glr.c:846 */
+#line 7181 "src/parser_proc.c" /* glr.c:846 */
break;
- case 183: /* struct_args_block */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 214: /* struct_args_block */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4329 "src/parser_proc.c" /* glr.c:846 */
+#line 7187 "src/parser_proc.c" /* glr.c:846 */
break;
- case 184: /* struct_args */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 215: /* struct_args */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4335 "src/parser_proc.c" /* glr.c:846 */
+#line 7193 "src/parser_proc.c" /* glr.c:846 */
break;
- case 185: /* struct_arg */
-#line 310 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4341 "src/parser_proc.c" /* glr.c:846 */
+ case 216: /* struct_arg_var_list */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7199 "src/parser_proc.c" /* glr.c:846 */
break;
- case 186: /* decl_enum */
-#line 318 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 217: /* decl_vars_with_layout */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7205 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 218: /* decl_enum */
+#line 359 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_enum_free(&(*(struct psi_decl_enum **)(&(*yyvaluep))));}
-#line 4347 "src/parser_proc.c" /* glr.c:846 */
+#line 7211 "src/parser_proc.c" /* glr.c:846 */
break;
- case 187: /* decl_enum_items */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 219: /* decl_enum_items */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4353 "src/parser_proc.c" /* glr.c:846 */
+#line 7217 "src/parser_proc.c" /* glr.c:846 */
break;
- case 188: /* decl_enum_item */
-#line 320 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 220: /* decl_enum_item */
+#line 361 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_decl_enum_item_free(&(*(struct psi_decl_enum_item **)(&(*yyvaluep))));}
-#line 4359 "src/parser_proc.c" /* glr.c:846 */
+#line 7223 "src/parser_proc.c" /* glr.c:846 */
break;
- case 189: /* num_exp */
-#line 373 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 221: /* num_exp */
+#line 419 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_num_exp_free(&(*(struct psi_num_exp **)(&(*yyvaluep))));}
-#line 4365 "src/parser_proc.c" /* glr.c:846 */
+#line 7229 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 222: /* number */
+#line 421 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
+#line 7235 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 223: /* sizeof */
+#line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
+#line 7241 "src/parser_proc.c" /* glr.c:846 */
break;
- case 190: /* number */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 224: /* sizeof_body */
+#line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
-#line 4371 "src/parser_proc.c" /* glr.c:846 */
+#line 7247 "src/parser_proc.c" /* glr.c:846 */
break;
- case 191: /* enum_name */
-#line 266 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 225: /* sizeof_body_notypes */
+#line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
+#line 7253 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 226: /* enum_name */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4377 "src/parser_proc.c" /* glr.c:846 */
+#line 7259 "src/parser_proc.c" /* glr.c:846 */
break;
- case 192: /* union_name */
-#line 266 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 227: /* union_name */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4383 "src/parser_proc.c" /* glr.c:846 */
+#line 7265 "src/parser_proc.c" /* glr.c:846 */
break;
- case 193: /* struct_name */
-#line 266 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 228: /* struct_name */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4389 "src/parser_proc.c" /* glr.c:846 */
+#line 7271 "src/parser_proc.c" /* glr.c:846 */
break;
- case 194: /* optional_name */
-#line 266 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 229: /* optional_name */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4395 "src/parser_proc.c" /* glr.c:846 */
+#line 7277 "src/parser_proc.c" /* glr.c:846 */
break;
- case 195: /* decl_layout */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 231: /* decl_layout */
+#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_layout_free(&(*(struct psi_layout **)(&(*yyvaluep))));}
-#line 4401 "src/parser_proc.c" /* glr.c:846 */
+#line 7283 "src/parser_proc.c" /* glr.c:846 */
break;
- case 196: /* align_and_size */
-#line 325 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 232: /* align_and_size */
+#line 366 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4407 "src/parser_proc.c" /* glr.c:846 */
+#line 7289 "src/parser_proc.c" /* glr.c:846 */
break;
- case 197: /* array_size */
-#line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 233: /* array_size */
+#line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4413 "src/parser_proc.c" /* glr.c:846 */
+#line 7295 "src/parser_proc.c" /* glr.c:846 */
break;
- case 198: /* indirection */
-#line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 235: /* indirection */
+#line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4419 "src/parser_proc.c" /* glr.c:846 */
+#line 7301 "src/parser_proc.c" /* glr.c:846 */
break;
- case 199: /* pointers */
-#line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 236: /* pointers */
+#line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4425 "src/parser_proc.c" /* glr.c:846 */
+#line 7307 "src/parser_proc.c" /* glr.c:846 */
break;
- case 200: /* impl */
-#line 330 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 237: /* asterisks */
+#line 424 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {}
+#line 7313 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 240: /* impl */
+#line 374 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_impl_free(&(*(struct psi_impl **)(&(*yyvaluep))));}
-#line 4431 "src/parser_proc.c" /* glr.c:846 */
+#line 7319 "src/parser_proc.c" /* glr.c:846 */
break;
- case 201: /* impl_func */
-#line 332 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 241: /* impl_func */
+#line 376 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_impl_func_free(&(*(struct psi_impl_func **)(&(*yyvaluep))));}
-#line 4437 "src/parser_proc.c" /* glr.c:846 */
+#line 7325 "src/parser_proc.c" /* glr.c:846 */
break;
- case 202: /* impl_args */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 242: /* impl_args */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4443 "src/parser_proc.c" /* glr.c:846 */
+#line 7331 "src/parser_proc.c" /* glr.c:846 */
break;
- case 203: /* impl_arg */
-#line 334 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 243: /* impl_arg */
+#line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_impl_arg_free(&(*(struct psi_impl_arg **)(&(*yyvaluep))));}
-#line 4449 "src/parser_proc.c" /* glr.c:846 */
+#line 7337 "src/parser_proc.c" /* glr.c:846 */
break;
- case 204: /* impl_var */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 244: /* impl_var */
+#line 382 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_impl_var_free(&(*(struct psi_impl_var **)(&(*yyvaluep))));}
-#line 4455 "src/parser_proc.c" /* glr.c:846 */
+#line 7343 "src/parser_proc.c" /* glr.c:846 */
break;
- case 205: /* impl_type */
-#line 336 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 245: /* impl_type */
+#line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_impl_type_free(&(*(struct psi_impl_type **)(&(*yyvaluep))));}
-#line 4461 "src/parser_proc.c" /* glr.c:846 */
+#line 7349 "src/parser_proc.c" /* glr.c:846 */
break;
- case 206: /* impl_type_token */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 246: /* impl_type_restricted */
+#line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_impl_type_free(&(*(struct psi_impl_type **)(&(*yyvaluep))));}
+#line 7355 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 247: /* impl_type_token */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7361 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 248: /* impl_type_restricted_token */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4467 "src/parser_proc.c" /* glr.c:846 */
+#line 7367 "src/parser_proc.c" /* glr.c:846 */
break;
- case 207: /* impl_stmts */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 249: /* impl_type_extended_token */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7373 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 250: /* impl_stmts */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4473 "src/parser_proc.c" /* glr.c:846 */
+#line 7379 "src/parser_proc.c" /* glr.c:846 */
break;
- case 208: /* impl_stmt */
-#line 366 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 251: /* impl_stmt */
+#line 412 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_impl_stmt_free(&(*(struct psi_token ***)(&(*yyvaluep))));}
-#line 4479 "src/parser_proc.c" /* glr.c:846 */
+#line 7385 "src/parser_proc.c" /* glr.c:846 */
break;
- case 209: /* let_stmt */
-#line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 252: /* let_stmt */
+#line 385 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_stmt_free(&(*(struct psi_let_stmt **)(&(*yyvaluep))));}
-#line 4485 "src/parser_proc.c" /* glr.c:846 */
+#line 7391 "src/parser_proc.c" /* glr.c:846 */
break;
- case 210: /* let_exp */
-#line 343 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 253: /* let_exp */
+#line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 4491 "src/parser_proc.c" /* glr.c:846 */
+#line 7397 "src/parser_proc.c" /* glr.c:846 */
break;
- case 211: /* let_exp_byref */
-#line 343 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 254: /* let_exp_byref */
+#line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 4497 "src/parser_proc.c" /* glr.c:846 */
+#line 7403 "src/parser_proc.c" /* glr.c:846 */
break;
- case 212: /* let_exp_assign */
-#line 343 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 255: /* let_exp_assign */
+#line 387 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 4503 "src/parser_proc.c" /* glr.c:846 */
+#line 7409 "src/parser_proc.c" /* glr.c:846 */
break;
- case 213: /* let_calloc */
-#line 345 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 256: /* let_calloc */
+#line 389 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_calloc_free(&(*(struct psi_let_calloc **)(&(*yyvaluep))));}
-#line 4509 "src/parser_proc.c" /* glr.c:846 */
+#line 7415 "src/parser_proc.c" /* glr.c:846 */
break;
- case 214: /* let_callback */
-#line 347 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 257: /* let_callback */
+#line 391 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_callback_free(&(*(struct psi_let_callback **)(&(*yyvaluep))));}
-#line 4515 "src/parser_proc.c" /* glr.c:846 */
+#line 7421 "src/parser_proc.c" /* glr.c:846 */
break;
- case 215: /* let_func */
-#line 349 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 258: /* let_func */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_let_func_free(&(*(struct psi_let_func **)(&(*yyvaluep))));}
-#line 4521 "src/parser_proc.c" /* glr.c:846 */
+#line 7427 "src/parser_proc.c" /* glr.c:846 */
break;
- case 216: /* let_func_token */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 259: /* let_func_token */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4527 "src/parser_proc.c" /* glr.c:846 */
+#line 7433 "src/parser_proc.c" /* glr.c:846 */
break;
- case 217: /* let_func_exps */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 260: /* let_func_exps */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4533 "src/parser_proc.c" /* glr.c:846 */
+#line 7439 "src/parser_proc.c" /* glr.c:846 */
break;
- case 218: /* let_exps */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 261: /* let_exps */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4539 "src/parser_proc.c" /* glr.c:846 */
+#line 7445 "src/parser_proc.c" /* glr.c:846 */
break;
- case 219: /* callback_rval */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 262: /* callback_rval */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4545 "src/parser_proc.c" /* glr.c:846 */
+#line 7451 "src/parser_proc.c" /* glr.c:846 */
break;
- case 220: /* callback_arg_list */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 263: /* callback_arg_list */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4551 "src/parser_proc.c" /* glr.c:846 */
+#line 7457 "src/parser_proc.c" /* glr.c:846 */
break;
- case 221: /* callback_args */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 264: /* callback_args */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4557 "src/parser_proc.c" /* glr.c:846 */
+#line 7463 "src/parser_proc.c" /* glr.c:846 */
break;
- case 222: /* return_stmt */
-#line 359 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 265: /* return_stmt */
+#line 403 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_return_stmt_free(&(*(struct psi_return_stmt **)(&(*yyvaluep))));}
-#line 4563 "src/parser_proc.c" /* glr.c:846 */
+#line 7469 "src/parser_proc.c" /* glr.c:846 */
break;
- case 223: /* set_stmt */
-#line 351 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 266: /* return_exp */
+#line 405 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_return_exp_free(&(*(struct psi_return_exp **)(&(*yyvaluep))));}
+#line 7475 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 267: /* call_decl_vars */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7481 "src/parser_proc.c" /* glr.c:846 */
+ break;
+
+ case 268: /* set_stmt */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_set_stmt_free(&(*(struct psi_set_stmt **)(&(*yyvaluep))));}
-#line 4569 "src/parser_proc.c" /* glr.c:846 */
+#line 7487 "src/parser_proc.c" /* glr.c:846 */
break;
- case 224: /* set_exp */
-#line 353 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 269: /* set_exp */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_set_exp_free(&(*(struct psi_set_exp **)(&(*yyvaluep))));}
-#line 4575 "src/parser_proc.c" /* glr.c:846 */
+#line 7493 "src/parser_proc.c" /* glr.c:846 */
break;
- case 225: /* set_func */
-#line 355 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 270: /* set_func */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_set_func_free(&(*(struct psi_set_func **)(&(*yyvaluep))));}
-#line 4581 "src/parser_proc.c" /* glr.c:846 */
+#line 7499 "src/parser_proc.c" /* glr.c:846 */
break;
- case 226: /* set_func_token */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 271: /* set_func_token */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4587 "src/parser_proc.c" /* glr.c:846 */
+#line 7505 "src/parser_proc.c" /* glr.c:846 */
break;
- case 227: /* set_func_exps */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 272: /* set_func_exps */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4593 "src/parser_proc.c" /* glr.c:846 */
+#line 7511 "src/parser_proc.c" /* glr.c:846 */
break;
- case 228: /* set_exps */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 273: /* set_exps */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4599 "src/parser_proc.c" /* glr.c:846 */
+#line 7517 "src/parser_proc.c" /* glr.c:846 */
break;
- case 229: /* assert_stmt */
-#line 357 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 274: /* assert_stmt */
+#line 401 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_assert_stmt_free(&(*(struct psi_assert_stmt **)(&(*yyvaluep))));}
-#line 4605 "src/parser_proc.c" /* glr.c:846 */
+#line 7523 "src/parser_proc.c" /* glr.c:846 */
break;
- case 230: /* assert_stmt_token */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 275: /* assert_stmt_token */
+#line 414 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4611 "src/parser_proc.c" /* glr.c:846 */
+#line 7529 "src/parser_proc.c" /* glr.c:846 */
break;
- case 231: /* free_stmt */
-#line 361 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 276: /* free_stmt */
+#line 407 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_free_stmt_free(&(*(struct psi_free_stmt **)(&(*yyvaluep))));}
-#line 4617 "src/parser_proc.c" /* glr.c:846 */
+#line 7535 "src/parser_proc.c" /* glr.c:846 */
break;
- case 232: /* free_exps */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 277: /* free_exps */
+#line 416 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4623 "src/parser_proc.c" /* glr.c:846 */
+#line 7541 "src/parser_proc.c" /* glr.c:846 */
break;
- case 233: /* free_exp */
-#line 363 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 278: /* free_exp */
+#line 409 "src/parser_proc_grammar.y" /* glr.c:846 */
{psi_free_exp_free(&(*(struct psi_free_exp **)(&(*yyvaluep))));}
-#line 4629 "src/parser_proc.c" /* glr.c:846 */
+#line 7547 "src/parser_proc.c" /* glr.c:846 */
break;
- case 234: /* decl_vars */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4635 "src/parser_proc.c" /* glr.c:846 */
- break;
-
- case 235: /* reference */
-#line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 279: /* reference */
+#line 426 "src/parser_proc_grammar.y" /* glr.c:846 */
{}
-#line 4641 "src/parser_proc.c" /* glr.c:846 */
+#line 7553 "src/parser_proc.c" /* glr.c:846 */
break;
}
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-505)))
+ (!!((Yystate) == (-717)))
/** True iff LR state YYSTATE has only a default reduction (regardless
* of token). */
yylval = yyval_default;
/* User initialization code. */
- #line 117 "src/parser_proc_grammar.y" /* glr.c:2270 */
+ #line 144 "src/parser_proc_grammar.y" /* glr.c:2270 */
{
}
-#line 5994 "src/parser_proc.c" /* glr.c:2270 */
+#line 8906 "src/parser_proc.c" /* glr.c:2270 */
if (! yyinitGLRStack (yystackp, YYINITDEPTH))
goto yyexhaustedlab;
#define yydebug psi_parser_proc_debug
#define yynerrs psi_parser_proc_nerrs
-#line 1673 "src/parser_proc_grammar.y" /* glr.c:2584 */
+#line 2274 "src/parser_proc_grammar.y" /* glr.c:2584 */
/* epilogue */