-/* A Bison parser, made by GNU Bison 3.0.4. */
+/* A Bison parser, made by GNU Bison 3.2. */
/* Skeleton implementation for Bison GLR parsers in C
- Copyright (C) 2002-2015 Free Software Foundation, Inc.
+ Copyright (C) 2002-2015, 2018 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* C GLR parser skeleton written by Paul Hilfinger. */
+/* Undocumented macros, especially those whose name start with YY_,
+ are private implementation details. Do not rely on them. */
+
/* Identify Bison output. */
#define YYBISON 1
/* Bison version. */
-#define YYBISON_VERSION "3.0.4"
+#define YYBISON_VERSION "3.2"
/* Skeleton name. */
#define YYSKELETON_NAME "glr.c"
/* "%code top" blocks. */
-#line 1 "src/parser_proc_grammar.y" /* glr.c:222 */
+#line 1 "src/parser_proc_grammar.y" /* glr.c:221 */
-#include "php_psi_stdinc.h"
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#else
+# include "php_config.h"
+#endif
-#line 54 "src/parser_proc.c" /* glr.c:222 */
+#line 61 "src/parser_proc.c" /* glr.c:221 */
/* Substitute the variable and function names. */
#define yydebug psi_parser_proc_debug
-/* First part of user declarations. */
-#line 66 "src/parser_proc.c" /* glr.c:240 */
# ifndef YY_NULLPTR
-# if defined __cplusplus && 201103L <= __cplusplus
-# define YY_NULLPTR nullptr
+# if defined __cplusplus
+# if 201103L <= __cplusplus
+# define YY_NULLPTR nullptr
+# else
+# define YY_NULLPTR 0
+# endif
# else
-# define YY_NULLPTR 0
+# define YY_NULLPTR ((void*)0)
# endif
# endif
value is undefined, this behavior is technically correct. */
static YYSTYPE yyval_default;
-/* Copy the second part of user declarations. */
-#line 94 "src/parser_proc.c" /* glr.c:263 */
/* Unqualified %code blocks. */
-#line 5 "src/parser_proc_grammar.y" /* glr.c:264 */
+#line 9 "src/parser_proc_grammar.y" /* glr.c:261 */
#include <assert.h>
#include <stdarg.h>
#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)
-{
- 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;
- }
- }
-}
static inline void psi_parser_proc_add_typedef(struct psi_parser *P, struct psi_decl_arg *def)
{
assert(def);
P->types = psi_plist_init((psi_plist_dtor) psi_decl_arg_free);
}
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->val)) {
+ 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) {
}
P->impls = psi_plist_add(P->impls, &impl);
}
+static inline void psi_parser_proc_add_lib(struct psi_parser *P, zend_string *lib) {
+ char *libname = strdup(lib->val);
+ P->file.libnames = psi_plist_add(P->file.libnames, &libname);
+}
/* end code */
-#line 184 "src/parser_proc.c" /* glr.c:264 */
+#line 192 "src/parser_proc.c" /* glr.c:261 */
#include <stdio.h>
#include <stdlib.h>
#define YYSIZEMAX ((size_t) -1)
#ifdef __cplusplus
- typedef bool yybool;
+ typedef bool yybool;
+# define yytrue true
+# define yyfalse false
#else
- typedef unsigned char yybool;
+ /* When we move to stdbool, get rid of the various casts to yybool. */
+ typedef unsigned char yybool;
+# define yytrue 1
+# define yyfalse 0
#endif
-#define yytrue 1
-#define yyfalse 0
#ifndef YYSETJMP
# include <setjmp.h>
# define YYJMP_BUF jmp_buf
# define YYSETJMP(Env) setjmp (Env)
-/* Pacify clang. */
-# define YYLONGJMP(Env, Val) (longjmp (Env, Val), YYASSERT (0))
+/* Pacify Clang and ICC. */
+# define YYLONGJMP(Env, Val) \
+ do { \
+ longjmp (Env, Val); \
+ YYASSERT (0); \
+ } while (yyfalse)
#endif
#ifndef YY_ATTRIBUTE
# define YYUSE(E) /* empty */
#endif
-#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
+#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
/* Suppress an incorrect diagnostic about yylval being uninitialized. */
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
_Pragma ("GCC diagnostic push") \
#endif
/* YYFINAL -- State number of the termination state. */
-#define YYFINAL 165
+#define YYFINAL 166
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 3031
+#define YYLAST 8244
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 132
+#define YYNTOKENS 140
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 119
+#define YYNNTS 142
/* YYNRULES -- Number of rules. */
-#define YYNRULES 468
+#define YYNRULES 638
/* YYNRULES -- Number of states. */
-#define YYNSTATES 685
+#define YYNSTATES 953
/* 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 386
+#define YYMAXUTOK 394
#define YYTRANSLATE(YYX) \
- ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
+ ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
static const unsigned char yytranslate[] =
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, 127, 128, 129, 130, 131
+ 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[] =
+static const unsigned short yyrline[] =
{
- 0, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
- 393, 393, 393, 393, 394, 394, 394, 394, 394, 394,
- 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
- 394, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 399, 400, 403, 404, 407, 408, 409,
- 410, 416, 424, 427, 430, 431, 434, 437, 440, 443,
- 449, 455, 458, 464, 487, 491, 495, 500, 504, 508,
- 512, 519, 520, 524, 525, 529, 530, 531, 535, 536,
- 540, 541, 545, 546, 547, 551, 552, 556, 557, 558,
- 559, 560, 561, 565, 570, 578, 581, 585, 590, 598,
- 601, 605, 609, 616, 620, 624, 628, 633, 643, 653,
- 658, 663, 669, 678, 681, 685, 689, 695, 702, 708,
- 709, 710, 711, 715, 718, 725, 726, 727, 728, 729,
- 733, 739, 740, 748, 758, 766, 774, 782, 785, 789,
- 793, 797, 802, 807, 815, 816, 817, 820, 826, 829,
- 832, 838, 839, 840, 841, 842, 843, 844, 845, 849,
- 850, 854, 857, 860, 866, 869, 872, 880, 892, 895,
- 898, 905, 908, 918, 921, 924, 927, 928, 932, 935,
- 938, 949, 952, 958, 959, 963, 964, 968, 972, 978,
- 979, 985, 988, 994, 995, 1002, 1003, 1007, 1014, 1025,
- 1032, 1043, 1050, 1061, 1072, 1086, 1087, 1099, 1102, 1105,
- 1108, 1114, 1122, 1125, 1135, 1148, 1153, 1161, 1171, 1181,
- 1184, 1188, 1194, 1198, 1212, 1216, 1233, 1240, 1243, 1249,
- 1254, 1262, 1266, 1270, 1274, 1278, 1282, 1289, 1293, 1297,
- 1301, 1308, 1321, 1334, 1347, 1350, 1357, 1360, 1366, 1370,
- 1377, 1380, 1386, 1389, 1395, 1396, 1402, 1405, 1417, 1420,
- 1427, 1432, 1437, 1447, 1450, 1456, 1459, 1465, 1472, 1479,
- 1480, 1481, 1482, 1483, 1484, 1485, 1486, 1487, 1491, 1494,
- 1500, 1503, 1506, 1509, 1512, 1518, 1522, 1530, 1531, 1535,
- 1542, 1545, 1548, 1551, 1554, 1560, 1564, 1572, 1579, 1587,
- 1595, 1596, 1597, 1598, 1599, 1600, 1601, 1602, 1603, 1604,
- 1608, 1611, 1617, 1620, 1626, 1627, 1631, 1634, 1640, 1643,
- 1649, 1656, 1663, 1666, 1669, 1676, 1681, 1689, 1690, 1691,
- 1692, 1693, 1694, 1695, 1696, 1700, 1703, 1709, 1712, 1718,
- 1725, 1726, 1730, 1737, 1740, 1746, 1754, 1757, 1763
+ 0, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 417, 417, 417, 417, 418, 418, 418, 418, 418, 418,
+ 418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
+ 418, 418, 418, 418, 418, 418, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
+ 424, 425, 428, 429, 432, 433, 434, 435, 441, 444,
+ 447, 450, 453, 459, 462, 465, 468, 471, 477, 480,
+ 486, 489, 495, 518, 522, 526, 531, 535, 539, 543,
+ 550, 551, 555, 556, 560, 561, 562, 566, 567, 571,
+ 572, 576, 577, 578, 582, 583, 587, 592, 597, 602,
+ 611, 614, 617, 618, 624, 629, 637, 640, 644, 648,
+ 655, 659, 663, 667, 672, 683, 694, 699, 704, 708,
+ 714, 725, 728, 732, 740, 744, 750, 754, 761, 765,
+ 769, 776, 777, 778, 782, 796, 802, 805, 811, 814,
+ 820, 821, 829, 840, 849, 861, 862, 866, 876, 885,
+ 897, 898, 901, 907, 908, 912, 916, 920, 925, 930,
+ 938, 939, 940, 943, 949, 952, 955, 961, 962, 966,
+ 969, 972, 978, 981, 984, 992, 1004, 1007, 1010, 1013,
+ 1020, 1023, 1033, 1036, 1039, 1042, 1043, 1044, 1048, 1051,
+ 1054, 1065, 1072, 1082, 1085, 1091, 1094, 1101, 1137, 1140,
+ 1146, 1149, 1155, 1161, 1162, 1163, 1164, 1165, 1166, 1170,
+ 1174, 1175, 1179, 1180, 1184, 1185, 1192, 1193, 1197, 1204,
+ 1215, 1222, 1230, 1254, 1283, 1290, 1301, 1347, 1388, 1403,
+ 1406, 1409, 1415, 1418, 1424, 1439, 1442, 1471, 1479, 1507,
+ 1512, 1520, 1530, 1540, 1543, 1547, 1553, 1567, 1584, 1587,
+ 1593, 1600, 1607, 1615, 1626, 1633, 1636, 1642, 1647, 1655,
+ 1659, 1663, 1667, 1671, 1675, 1682, 1686, 1690, 1694, 1698,
+ 1702, 1708, 1712, 1719, 1722, 1734, 1738, 1742, 1749, 1762,
+ 1775, 1788, 1791, 1798, 1799, 1803, 1806, 1809, 1812, 1818,
+ 1822, 1829, 1832, 1835, 1850, 1851, 1852, 1853, 1857, 1860,
+ 1866, 1867, 1873, 1876, 1882, 1883, 1887, 1888, 1898, 1901,
+ 1908, 1913, 1918, 1928, 1931, 1937, 1940, 1946, 1953, 1960,
+ 1967, 1968, 1972, 1973, 1974, 1975, 1976, 1980, 1981, 1982,
+ 1983, 1987, 1990, 1996, 1999, 2002, 2005, 2008, 2014, 2018,
+ 2026, 2027, 2031, 2038, 2041, 2044, 2047, 2051, 2054, 2060,
+ 2064, 2072, 2079, 2084, 2092, 2100, 2101, 2102, 2103, 2104,
+ 2105, 2106, 2107, 2108, 2109, 2113, 2116, 2122, 2125, 2131,
+ 2132, 2136, 2139, 2145, 2148, 2154, 2161, 2165, 2172, 2175,
+ 2178, 2184, 2191, 2194, 2197, 2204, 2209, 2217, 2218, 2219,
+ 2220, 2221, 2222, 2223, 2224, 2228, 2231, 2237, 2240, 2246,
+ 2253, 2254, 2258, 2265, 2268, 2274, 2282, 2285, 2291
};
#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", "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", "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_RESTRICT", "CPP_ASM", "BINARY", "UNARY", "$accept",
- "binary_op_token", "unary_op_token", "name_token", "any_noeol_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_special_name_token", "cpp_macro_decl", "cpp_macro_sig",
- "cpp_macro_sig_args", "cpp_macro_decl_tokens",
+ "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", "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_asm", "ignored_quoted_strings",
- "decl_ext_var_stmt", "decl_ext_var", "decl_ext_var_list", "decl_vars",
- "decl", "decl_body", "decl_func_body", "decl_functor_body",
- "decl_functor", "decl_func", "decl_args", "decl_arg", "decl_var",
- "decl_union", "decl_struct", "decl_struct_args", "struct_args_block",
- "struct_args", "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", "asterisks", "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", "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",
+ "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_qualifiers", "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", "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 -540
-#define YYTABLE_NINF -467
+#define YYPACT_NINF -719
+#define YYTABLE_NINF -637
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-static const short int yypact[] =
+static const short yypact[] =
{
- 924, -540, -540, -540, -540, -540, 31, -540, -540, 2059,
- -540, -540, -540, -540, -540, -540, -540, -540, 2586, -540,
- -540, 247, 2613, 2442, 2442, 2442, 248, 46, 19, 86,
- -540, 2663, 124, 924, -540, -540, -540, -540, -540, 2108,
- -540, -540, -540, -540, -540, 73, 56, -540, -540, -540,
- 110, 24, -540, -540, 15, 137, 150, -540, -540, -540,
- -540, 135, -540, 140, -540, -540, -540, -540, -540, 634,
- -540, 146, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, 2226, -16, -540, -540, -540, 2442, 2442, 2442, 2767,
- -540, 11, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, 883, -540, -540, -540, -540, 182,
- 764, 764, -5, -540, 883, 1941, 2442, 2442, 184, 1705,
- -540, -540, 181, 2442, 183, 183, 81, 81, 180, -540,
- -540, 192, 194, -540, 146, 196, -540, -540, 191, 187,
- -540, 201, -540, 2690, 24, -540, -540, 189, -540, 199,
- 2442, -540, 228, -540, 78, -540, -540, 73, -540, -540,
- 200, 204, 2717, 2717, 2442, 113, 2442, -540, 146, -540,
- -540, -540, -540, -540, -540, 2108, -540, -540, -540, -540,
- -540, -540, 126, 764, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- 764, -540, -540, -540, -540, -540, -540, -540, -540, 1941,
- -540, -540, -540, -540, 2275, 1941, 223, 2888, 32, -540,
- 32, -540, -540, -540, -540, 234, 237, 237, 83, 83,
- 2393, 230, -540, 113, 243, 255, 264, -540, 146, 189,
- -540, -540, -540, -540, -540, -540, 265, -540, 10, 54,
- -540, 121, 252, 103, -540, 2108, 1520, 2108, 2442, 74,
- -540, -540, 144, -540, -540, -540, -540, -540, 1823, -540,
- 261, 2442, 262, -540, 2442, 263, -540, -540, 478, 2442,
- -540, -540, 1941, -540, -540, -540, -540, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, -540, -540,
- -540, 1941, 1941, 266, 2613, 2108, 2108, -540, -540, -540,
- -540, 146, -540, 68, 251, 44, -540, 258, 2442, -540,
- -540, 4, 189, 1018, 189, 2559, 1823, 2442, -540, 259,
- 271, -540, -540, -540, 1048, 1823, -540, 2912, -540, 268,
- 273, -540, 277, 279, 270, 293, 111, -540, -540, 280,
- 277, -540, -540, 409, -540, 298, 2108, 2442, -540, 304,
- 2888, 305, 307, 2839, -540, 312, 125, 1677, -540, -540,
- 2442, -540, -540, -540, -540, -540, 319, -540, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, 317, 133,
- -540, 86, -540, -540, 320, -540, -540, -540, 10, 321,
- -540, -540, 322, 2912, -540, 1166, -540, 323, 2794, 324,
- 548, -540, 1823, 1823, 1520, -540, 2108, -540, 86, 2108,
- -540, 2442, -540, -540, -540, -540, -540, 326, 327, -540,
- -540, 1941, 1941, 328, 2108, 325, 332, -540, 139, 331,
- -540, 274, 330, 274, 329, -540, 189, 189, -540, 97,
- 334, 2912, -540, -540, -540, -540, 335, 1638, 1823, -540,
- 2864, -540, -540, 336, 2108, 156, -540, 764, 2442, 2888,
- 2936, 344, 112, 340, -540, 2108, 342, -540, -540, 274,
- -540, 86, 68, -540, -540, -540, -540, -540, 343, 1823,
- 86, -540, -540, 1823, 1284, 345, 346, -540, -540, -540,
- 347, -540, 349, 134, -540, -540, 1, -540, 86, 2812,
- 348, 2960, 350, -540, 351, -540, -540, -540, 352, -540,
- 355, 356, 1823, 1166, 354, -540, 1520, 357, 360, 1402,
- 2782, 259, -540, -540, -540, 362, 1638, -540, -540, 361,
- 363, 364, 365, -540, -540, 1166, -540, -540, 274, 368,
- 1520, -540, -540, -540, -540
+ 497, -719, -719, -719, -719, -719, 99, -719, -719, -719,
+ 248, -719, -719, -719, 742, 275, 7978, 7978, 7978, 225,
+ 59, -20, 31, -719, 107, -719, 97, 497, -719, -719,
+ -719, -719, -719, 7123, 1957, -719, -719, -719, -719, 144,
+ 198, -719, -719, -719, -719, 1423, 5, -719, -719, 32,
+ 108, 115, -719, -719, -719, -719, 140, -719, 148, -719,
+ -719, -719, 7978, 7978, 7978, -719, -719, -719, 88, -719,
+ 98, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, 864, -719, -719, -719, -719, 168, 990, 990, 20,
+ -719, 990, 6897, 7978, 7978, 1537, 177, -719, -719, -719,
+ 179, 7978, 194, 194, -719, -719, -719, -719, -719, -719,
+ 1356, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, 125, -719, -719, 125, 211, -719, -719, -719, -719,
+ -719, -719, 220, 239, -719, 233, -719, 242, -719, 282,
+ -719, 1731, 275, 187, -719, 5, -719, -719, 50, 273,
+ -719, -719, 281, 7978, 1, -719, -719, -719, 308, -719,
+ 96, -719, -719, -719, 173, -719, 279, 285, 287, 1844,
+ 1844, 7978, 195, -719, -719, -719, 7462, 5, 290, -719,
+ 1696, -719, -719, -719, -719, -719, -719, -719, -719, 1809,
+ 1922, 2035, 2148, -719, 2261, 2374, -719, -719, -719, 2487,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, 2600, 2713, 2826, 2939, 3052, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, 3165, -719, 3278, 3391, 3504, 3617, 3730, 3843,
+ -719, 3956, -719, -719, 4069, 4182, 4295, 4408, 4521, 4634,
+ 4747, 4860, 4973, 5086, 5199, 5312, 5425, 5538, 5651, 5764,
+ -719, -719, -719, -719, -719, -719, -719, 5877, 990, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ 990, -719, -719, -719, -719, -719, -719, -719, 207, 6897,
+ -719, -719, -719, -719, 7575, 6897, 291, 8107, -719, 133,
+ -719, 214, -719, -719, -719, -719, 289, 286, 286, 53,
+ 53, 6106, 288, -719, 195, 294, 296, -719, 299, -719,
+ -719, -719, 1470, -719, 292, 273, -719, -719, -719, -719,
+ -719, 325, -719, -719, 1242, -719, 310, -719, 209, 7123,
+ -719, 306, 235, 305, -719, -719, 238, 300, 309, -719,
+ 7462, 6558, 7462, 7978, 7462, -719, -719, 284, -719, -719,
+ -719, -719, -719, 6784, -719, 311, -719, 7978, 315, 316,
+ -719, 317, 8107, 322, -719, -719, -719, -719, 758, 320,
+ -719, 7228, 7978, -719, -719, 1583, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, 6897, 6897, 321, 624, 7462, 7462,
+ -719, -719, -719, -719, 166, -719, -719, -719, -719, -719,
+ 5993, 6784, 323, -719, 322, -719, 8131, -719, -719, 6106,
+ 331, 545, -719, -719, -719, -719, -719, -719, 8083, 318,
+ 7688, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, 1116, -719, 102, 42, 1844, 273, 301, 1423,
+ 273, 303, 6784, 7978, 319, 332, 342, 8131, 334, 350,
+ -719, 353, 363, 348, 357, 120, -719, 359, 362, -719,
+ -719, -719, 7111, 7462, -719, -719, 7747, -719, 292, 361,
+ -719, -719, -719, 365, -719, 8107, 370, 374, 7841, -719,
+ 384, 1537, 360, -719, -719, 7010, 585, 7978, 194, 194,
+ -719, -719, 36, 39, 71, 7445, -719, -719, 6784, 6784,
+ 379, -719, -719, -719, -719, -719, 378, 240, -719, 31,
+ -719, -719, -719, -719, -719, 292, 243, -719, -719, -719,
+ 292, -719, 265, -719, 381, -719, -719, 385, 8131, -719,
+ -719, 6219, -719, 6558, -719, 7462, -719, 31, 7462, -719,
+ 7978, 7860, -719, -719, -719, -719, -719, 386, 383, -719,
+ -719, -719, -719, 6897, 6897, 387, -719, 84, 394, -719,
+ 360, 286, 286, 6784, -719, 8059, -719, -719, 734, 397,
+ 734, 380, 7978, 1844, -719, 7236, 273, 369, 273, 273,
+ 193, 328, 627, 406, 8131, -719, -719, -719, -719, 408,
+ 6671, -719, 407, 7462, 267, -719, 409, 311, 412, 990,
+ 7919, 8107, 8155, 421, 413, 415, 7349, 418, 394, 7462,
+ 7462, -719, 6784, -719, 734, -719, 31, 6106, 417, 419,
+ -719, -719, 420, -719, -719, 406, -719, -719, -719, 7860,
+ -719, 425, 6784, 31, -719, 6332, 426, 427, -719, 364,
+ -719, -719, -719, 429, 428, 435, 360, 434, -719, -719,
+ 441, 8179, -719, 43, -719, 443, 444, 273, 445, 31,
+ 7679, 442, 446, -719, 452, -719, -719, 60, -719, 455,
+ 457, -719, 7349, -719, 465, 1844, 462, -719, 398, 464,
+ 6784, 6219, 466, -719, 6558, -719, -719, 478, 472, 487,
+ 360, -719, 480, 482, 1844, 114, 6445, 7566, 332, -719,
+ -719, -719, 483, 6671, -719, -719, 484, 488, -719, 485,
+ 490, 491, 493, 496, 498, -719, -719, 6219, -719, 506,
+ -719, 734, 503, 273, 31, 504, 6558, -719, 507, -719,
+ 1844, -719, 510, -719, -719, -719, 511, 6445, 273, 512,
+ -719, 513, -719
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
Performed when YYTABLE does not specify something else to do. Zero
means the default is an error. */
-static const unsigned short int yydefact[] =
+static const unsigned short yydefact[] =
{
- 163, 284, 281, 285, 279, 280, 282, 268, 269, 0,
- 271, 272, 273, 274, 275, 276, 277, 278, 267, 168,
- 167, 0, 0, 0, 0, 364, 0, 0, 0, 466,
- 169, 0, 0, 164, 165, 171, 170, 172, 175, 372,
- 258, 260, 259, 265, 266, 288, 298, 264, 173, 174,
- 0, 303, 313, 315, 316, 0, 0, 325, 177, 176,
- 178, 0, 179, 0, 283, 270, 32, 33, 454, 420,
- 24, 372, 376, 38, 37, 36, 34, 35, 31, 30,
- 28, 27, 25, 26, 428, 427, 425, 423, 424, 426,
- 422, 421, 429, 29, 452, 450, 449, 451, 448, 447,
- 326, 0, 374, 39, 40, 267, 0, 0, 0, 0,
- 314, 309, 181, 192, 189, 191, 193, 194, 205, 202,
- 203, 200, 206, 201, 0, 204, 195, 196, 197, 0,
- 219, 219, 0, 185, 0, 0, 364, 364, 0, 372,
- 252, 331, 251, 0, 368, 368, 261, 262, 263, 361,
- 239, 285, 268, 242, 0, 0, 238, 257, 0, 0,
- 468, 0, 467, 267, 303, 1, 166, 370, 332, 0,
- 373, 289, 293, 291, 295, 286, 299, 288, 287, 307,
- 0, 0, 327, 327, 0, 0, 0, 373, 372, 334,
- 377, 375, 261, 262, 263, 0, 308, 208, 209, 210,
- 212, 211, 207, 219, 187, 182, 74, 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,
+ 280, 402, 399, 403, 397, 398, 400, 394, 395, 393,
+ 392, 384, 285, 284, 0, 0, 0, 0, 511, 383,
+ 0, 433, 636, 286, 0, 437, 0, 281, 282, 288,
+ 287, 289, 293, 528, 0, 380, 386, 385, 391, 406,
+ 418, 390, 290, 291, 292, 0, 423, 444, 446, 447,
+ 0, 0, 458, 295, 294, 296, 0, 297, 0, 401,
+ 396, 392, 0, 0, 0, 383, 438, 445, 428, 300,
+ 311, 308, 310, 312, 313, 324, 321, 322, 319, 325,
+ 320, 0, 323, 314, 315, 316, 0, 336, 336, 0,
+ 304, 0, 0, 511, 511, 0, 0, 366, 371, 467,
+ 370, 0, 519, 519, 33, 34, 35, 36, 37, 624,
+ 585, 24, 42, 41, 40, 38, 39, 32, 31, 25,
+ 29, 28, 26, 27, 43, 593, 592, 590, 588, 589,
+ 591, 587, 586, 594, 30, 622, 620, 619, 621, 618,
+ 617, 387, 44, 45, 388, 389, 508, 552, 553, 554,
+ 555, 556, 0, 0, 549, 0, 434, 0, 638, 0,
+ 637, 392, 0, 0, 435, 423, 1, 283, 534, 521,
+ 382, 468, 0, 529, 530, 532, 381, 408, 412, 410,
+ 414, 407, 404, 419, 406, 405, 0, 0, 0, 459,
+ 459, 0, 0, 387, 388, 389, 0, 423, 0, 71,
+ 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, 161, 162, 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, 103, 104,
- 105, 106, 107, 108, 114, 112, 113, 111, 109, 110,
+ 105, 111, 109, 110, 108, 106, 107, 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,
- 155, 156, 157, 158, 161, 159, 160, 162, 221, 190,
- 220, 183, 198, 199, 184, 207, 186, 229, 230, 0,
- 22, 23, 20, 21, 0, 0, 231, 188, 261, 363,
- 262, 362, 250, 256, 253, 0, 0, 0, 0, 0,
- 0, 0, 180, 0, 0, 0, 0, 336, 372, 370,
- 294, 290, 296, 297, 292, 300, 0, 301, 328, 0,
- 329, 0, 349, 0, 347, 0, 466, 0, 0, 0,
- 460, 461, 0, 398, 401, 400, 402, 403, 0, 404,
- 0, 0, 310, 311, 0, 0, 214, 222, 0, 0,
- 227, 224, 233, 2, 3, 4, 5, 6, 7, 8,
- 9, 10, 11, 13, 12, 14, 15, 16, 17, 18,
- 19, 0, 0, 0, 0, 0, 0, 339, 338, 340,
- 337, 372, 333, 243, 0, 0, 302, 0, 0, 335,
- 305, 0, 370, 0, 370, 0, 0, 0, 346, 0,
- 0, 358, 357, 359, 0, 0, 360, 443, 351, 0,
- 0, 442, 40, 0, 0, 0, 0, 463, 453, 0,
- 0, 378, 399, 0, 324, 0, 0, 215, 223, 0,
- 235, 0, 234, 0, 225, 0, 366, 0, 255, 254,
- 0, 245, 247, 248, 246, 249, 0, 244, 379, 391,
- 392, 393, 394, 390, 395, 396, 397, 389, 0, 0,
- 383, 466, 388, 371, 0, 306, 304, 319, 0, 0,
- 330, 317, 0, 350, 348, 0, 405, 24, 0, 0,
- 0, 355, 0, 0, 466, 441, 0, 387, 466, 0,
- 462, 0, 440, 459, 323, 312, 217, 0, 216, 228,
- 232, 0, 0, 0, 0, 0, 0, 341, 366, 0,
- 237, 0, 0, 0, 385, 321, 370, 370, 410, 30,
- 29, 414, 415, 411, 412, 413, 39, 0, 0, 353,
- 0, 354, 444, 455, 0, 0, 464, 219, 0, 236,
- 226, 0, 0, 0, 342, 0, 0, 322, 380, 0,
- 384, 466, 243, 320, 318, 434, 420, 435, 0, 0,
- 466, 416, 352, 0, 466, 0, 0, 465, 213, 218,
- 0, 343, 0, 0, 344, 381, 0, 386, 466, 0,
- 430, 356, 0, 457, 456, 445, 406, 369, 0, 345,
- 0, 0, 0, 0, 0, 446, 466, 0, 0, 436,
- 0, 360, 432, 409, 407, 431, 0, 419, 458, 0,
- 0, 0, 437, 438, 417, 0, 408, 367, 0, 0,
- 466, 433, 382, 418, 439
+ 135, 163, 136, 137, 138, 139, 140, 141, 142, 143,
+ 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
+ 154, 155, 159, 156, 157, 158, 160, 0, 336, 306,
+ 301, 46, 55, 56, 57, 58, 60, 61, 65, 109,
+ 110, 108, 106, 107, 127, 129, 130, 131, 132, 133,
+ 134, 163, 138, 139, 140, 141, 142, 143, 144, 145,
+ 146, 147, 148, 149, 150, 151, 152, 153, 338, 309,
+ 337, 302, 317, 318, 303, 305, 346, 347, 0, 0,
+ 22, 23, 20, 21, 0, 0, 349, 307, 348, 387,
+ 510, 388, 509, 367, 364, 372, 0, 0, 0, 0,
+ 0, 0, 0, 298, 0, 0, 0, 436, 0, 537,
+ 536, 535, 524, 470, 528, 521, 531, 533, 413, 409,
+ 415, 416, 411, 420, 0, 432, 0, 421, 393, 528,
+ 464, 0, 0, 461, 462, 465, 0, 487, 513, 485,
+ 0, 636, 0, 0, 0, 630, 631, 0, 561, 564,
+ 563, 565, 566, 0, 567, 429, 430, 0, 0, 0,
+ 425, 0, 328, 329, 326, 339, 507, 506, 0, 0,
+ 502, 0, 0, 344, 341, 351, 2, 3, 4, 5,
+ 6, 7, 8, 9, 10, 11, 13, 12, 14, 15,
+ 16, 17, 18, 19, 0, 0, 0, 0, 0, 0,
+ 473, 472, 474, 471, 498, 362, 363, 496, 495, 497,
+ 0, 0, 0, 358, 360, 499, 359, 489, 500, 0,
+ 0, 0, 365, 422, 498, 526, 527, 525, 0, 0,
+ 0, 529, 469, 417, 189, 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,
+ 277, 278, 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, 219, 220, 221, 227, 225, 226, 224, 222, 223,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 247,
+ 248, 249, 250, 251, 279, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 275, 272, 273, 274, 276,
+ 442, 443, 0, 440, 0, 521, 459, 521, 0, 0,
+ 521, 0, 0, 514, 0, 0, 0, 613, 0, 0,
+ 612, 45, 0, 0, 0, 0, 633, 0, 0, 607,
+ 538, 562, 0, 0, 427, 299, 330, 426, 528, 0,
+ 503, 505, 340, 0, 353, 354, 0, 352, 0, 342,
+ 0, 0, 515, 375, 368, 376, 0, 377, 519, 519,
+ 374, 373, 624, 24, 0, 0, 493, 357, 0, 0,
+ 0, 539, 558, 559, 560, 557, 0, 0, 543, 636,
+ 548, 550, 551, 523, 522, 528, 0, 439, 441, 424,
+ 528, 466, 0, 450, 0, 463, 448, 0, 488, 486,
+ 484, 0, 568, 636, 611, 0, 547, 636, 0, 632,
+ 0, 608, 605, 629, 431, 331, 334, 0, 332, 504,
+ 501, 345, 350, 0, 0, 0, 369, 0, 478, 475,
+ 515, 0, 0, 0, 491, 0, 492, 356, 0, 0,
+ 0, 545, 0, 459, 456, 0, 521, 0, 521, 521,
+ 498, 0, 31, 30, 574, 579, 575, 577, 578, 44,
+ 0, 614, 625, 0, 0, 634, 624, 610, 0, 336,
+ 0, 355, 343, 0, 516, 0, 515, 0, 478, 379,
+ 378, 490, 0, 540, 0, 544, 636, 0, 0, 0,
+ 457, 454, 0, 451, 449, 0, 576, 599, 585, 608,
+ 600, 0, 0, 636, 580, 636, 0, 0, 635, 0,
+ 327, 333, 335, 0, 0, 0, 515, 479, 482, 476,
+ 0, 494, 541, 0, 546, 0, 0, 521, 0, 636,
+ 0, 595, 0, 627, 626, 615, 569, 0, 520, 0,
+ 0, 480, 515, 477, 0, 459, 0, 455, 0, 0,
+ 0, 0, 0, 616, 636, 623, 606, 0, 0, 0,
+ 515, 483, 0, 0, 459, 0, 601, 0, 499, 597,
+ 572, 570, 596, 0, 584, 628, 0, 0, 481, 0,
+ 0, 0, 0, 0, 602, 603, 581, 0, 571, 0,
+ 517, 0, 0, 521, 636, 0, 636, 598, 0, 542,
+ 459, 452, 0, 582, 604, 518, 0, 601, 521, 0,
+ 453, 0, 583
};
/* YYPGOTO[NTERM-NUM]. */
-static const short int yypgoto[] =
+static const short yypgoto[] =
{
- -540, -336, -119, -3, 65, -540, -540, 375, -540, -540,
- -540, -540, -540, -540, -540, -540, -540, -540, 276, -540,
- -540, -540, -122, -540, -322, -540, -540, -540, -540, -540,
- -201, -540, -540, -409, -15, -24, -540, -540, -540, 275,
- 366, -540, -540, 236, -540, -540, -540, -540, 253, -540,
- -540, -540, -540, -519, 385, 0, -19, 13, -540, -540,
- 235, -14, -39, -540, -540, 62, -159, -540, 36, -540,
- -35, -357, -540, -540, -540, -540, 63, -145, -17, -341,
- -61, -4, -540, -540, 396, -540, -148, -494, -539, -540,
- 64, -355, -540, -249, -521, 45, -540, -540, -540, -511,
- -540, -540, -540, -540, -540, -540, -540, -518, 42, -374,
- -540, -540, -540, -540, -540, -540, -118, -28, -516
+ -719, -319, -73, -11, -48, -719, -719, -719, 509, -719,
+ -719, -719, -719, -719, -719, -719, -719, -719, -719, -719,
+ -719, -719, -86, -719, -282, -719, -719, -719, -483, -719,
+ -719, 377, -153, 26, -144, -180, -19, -14, -719, -719,
+ -719, 514, -719, -719, 366, -719, -719, -719, -719, -70,
+ -270, -719, -719, -181, -719, -719, 367, -719, -90, 539,
+ 46, -3, 49, -719, -719, -719, -719, -182, -719, -84,
+ 3, -33, -719, -719, 176, -365, -719, -250, -719, 11,
+ -719, -82, -357, -719, -50, -719, 111, -719, -455, -451,
+ 215, -719, -715, -87, -384, -719, -375, -29, -719, 399,
+ -719, -719, 551, -719, -206, -688, -718, -719, -719, 556,
+ -719, 182, -376, -719, -350, -701, 149, -204, -719, -719,
+ -704, -719, -719, -308, -349, -719, -719, -719, -240, -719,
+ -414, -410, -406, -719, -719, -719, -719, -719, -719, -150,
+ -21, -702
};
/* YYDEFGOTO[NTERM-NUM]. */
-static const short int yydefgoto[] =
+static const short yydefgoto[] =
{
- -1, 543, 465, 167, 328, 32, 33, 34, 35, 36,
- 129, 130, 131, 132, 334, 133, 134, 135, 203, 204,
- 557, 558, 329, 330, 347, 491, 492, 37, 155, 156,
- 506, 507, 38, 138, 39, 40, 41, 42, 43, 44,
- 45, 46, 47, 175, 371, 374, 178, 48, 181, 451,
- 49, 50, 196, 402, 51, 52, 53, 141, 55, 56,
- 379, 57, 466, 58, 59, 438, 439, 497, 143, 383,
- 384, 467, 468, 61, 144, 145, 149, 566, 356, 367,
- 169, 404, 102, 62, 63, 519, 520, 469, 521, 522,
- 392, 393, 394, 662, 663, 664, 583, 584, 585, 103,
- 654, 665, 618, 671, 672, 395, 396, 470, 471, 104,
- 625, 644, 397, 398, 399, 476, 477, 473, 162
+ -1, 709, 501, 169, 358, 640, 26, 27, 28, 29,
+ 30, 86, 87, 88, 89, 364, 90, 91, 92, 319,
+ 757, 758, 359, 360, 377, 686, 687, 31, 502, 503,
+ 32, 96, 692, 693, 694, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, 182, 409, 412, 185, 42, 188,
+ 504, 43, 197, 807, 44, 45, 641, 642, 643, 46,
+ 47, 48, 99, 420, 50, 421, 51, 422, 423, 424,
+ 425, 505, 53, 54, 491, 492, 696, 817, 857, 101,
+ 428, 429, 657, 507, 508, 679, 460, 56, 102, 103,
+ 146, 654, 768, 387, 403, 519, 172, 447, 174, 175,
+ 401, 57, 58, 717, 718, 658, 719, 153, 720, 721,
+ 722, 437, 438, 439, 909, 910, 911, 796, 797, 798,
+ 142, 892, 912, 841, 923, 924, 440, 668, 808, 441,
+ 925, 660, 143, 846, 874, 442, 443, 444, 665, 666,
+ 662, 160
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule whose
number is the opposite. If YYTABLE_NINF, syntax error. */
-static const short int yytable[] =
+static const short yytable[] =
{
- 168, 161, 157, 140, 111, 101, 100, 139, 142, 331,
- 186, 432, 472, 54, 582, 480, 345, 408, 110, 587,
- 146, 147, 148, 411, 586, 496, 592, 574, 449, 332,
- 595, 54, 608, 547, 611, 170, 60, 482, 525, 190,
- 64, 483, 65, 526, 54, 602, 54, 509, 71, -325,
- 510, 195, -316, -331, 511, -331, 512, 513, 514, 515,
- 516, 517, 176, 4, 5, 72, 621, 187, 617, 60,
- 635, 650, 432, -365, -365, 432, 586, 171, 172, 173,
- 158, 406, 174, 518, 372, 157, 633, 373, 568, 482,
- 490, 68, 478, 452, 453, 501, 502, 503, 189, 533,
- 168, 504, 505, 192, 193, 194, 643, 540, 541, 493,
- 494, 527, 191, 531, 615, 616, 29, 574, -368, 333,
- 437, 202, 355, -368, 165, 434, 640, 401, 357, 358,
- 359, 335, 346, 348, 350, 170, 160, 666, 668, 682,
- 354, 673, 586, 457, 651, 676, 458, 179, 550, 631,
- 360, 551, 486, 180, 432, 586, 403, 432, 432, 666,
- 454, 455, 684, 110, 586, 564, 565, 369, 380, 380,
- 472, 649, 572, 573, 486, 182, 54, 184, 581, 605,
- 565, 382, 185, 400, 187, 590, 591, 481, 183, 94,
- 95, 96, 97, 98, 99, 627, 486, 435, 436, 349,
- 351, 72, 84, 85, 86, 87, 88, 89, 90, 91,
- 92, 385, 386, 387, 388, 389, 390, 391, 205, -325,
- 345, 352, -365, -240, 355, -241, 345, 361, 362, 363,
- 581, 622, 364, 366, 370, 613, 614, 368, 376, 599,
- 600, 377, 385, 386, 387, 388, 389, 390, 391, 405,
- 472, 150, 1, 2, 151, 4, 5, 6, 152, 8,
- 153, 412, 639, 432, 432, 154, 641, 10, 11, 12,
- 13, 14, 15, 16, 17, 433, 443, 509, 105, 434,
- 510, 445, 472, 112, 511, 472, 512, 513, 514, 515,
- 516, 517, 446, 345, 508, 660, 581, 447, 456, 450,
- 484, 487, 486, 523, 495, 535, 472, 448, 536, 581,
- 545, 547, 345, 345, 544, 546, 548, 552, 581, 113,
- 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
- 124, 549, 125, 126, 127, 128, 346, 554, 106, 107,
- 108, 410, 346, 559, 560, 563, 459, 561, 474, 385,
- 386, 387, 388, 389, 390, 391, 570, 442, 571, 575,
- 576, 577, -24, 588, 187, 597, 603, 598, 601, 604,
- 607, 609, 619, 620, 101, 612, 624, 630, 632, 634,
- 500, 638, 648, 646, 645, 475, 647, 658, 653, 655,
- 669, 656, 657, 667, 659, 407, 498, 499, 485, 670,
- 677, 369, 675, 679, 678, 680, 489, 683, 166, 346,
- 336, 637, 177, 375, 353, 140, 164, 365, 381, 139,
- 142, 440, 534, 606, 159, 610, 681, 444, 346, 346,
- 460, 479, 0, 596, 0, 0, 0, 187, 0, 530,
- 0, 530, 345, 345, 0, 524, 553, 555, 0, 539,
- 0, 0, 0, 0, 382, 0, 0, 413, 414, 415,
- 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
- 426, 427, 428, 429, 430, 628, 0, 0, 140, 0,
- 542, 0, 139, 142, 556, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 569, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 593, 0, 0,
- 403, 0, 0, 0, 157, 0, 0, 488, 0, 0,
- 594, 0, 0, 0, 101, 403, 413, 414, 415, 416,
- 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
- 427, 428, 429, 430, 0, 0, 0, 0, 475, 431,
- 0, 0, 0, 0, 0, 626, 0, 0, 346, 346,
- 0, 0, 0, 0, 0, 0, 403, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 636, 0, 0, 0, 589, 0, 0,
- 0, 0, 0, 0, 0, 629, 413, 414, 415, 416,
- 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
- 427, 428, 429, 430, 661, 0, 0, 0, 0, 542,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, -420, 0, 661, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- 0, -420, 0, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, -420, -420, -420, -420,
- -420, -420, -420, -420, -420, -420, 0, -420, -420, 0,
- -420, -420, -420, -420, 206, 0, 0, 207, 208, 209,
- 210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
- 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
- 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
- 0, 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,
- 269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
- 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
- 0, 289, 0, 290, 291, 292, 293, 294, 295, 296,
- 297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 317, 318, 319, 320, 321, 322, 66, 0, 323, 0,
- 324, 325, 326, 327, 0, 67, 0, 0, 0, 0,
- 68, 69, 0, 0, 0, 0, 0, 0, 0, 0,
- 197, 198, 199, 70, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 2,
+ 171, 159, 361, 52, 173, 141, 144, 145, 426, 419,
+ 419, 55, 98, 68, 170, 445, 388, 659, 100, 375,
+ 176, 522, 488, 489, 669, 661, 710, 52, 661, 520,
+ 52, 781, 698, 318, 506, 452, 699, 799, 55, 800,
+ 795, 97, 378, 365, 645, 518, 362, 453, 52, 49,
+ 168, 193, 194, 195, 389, 818, 67, 390, 485, 49,
+ 823, 671, 826, -447, -467, -393, -467, 746, -392, -393,
+ 317, 22, -24, 49, 730, 158, 49, 109, 895, 399,
+ 402, 376, 379, 381, 490, 155, 672, 461, 840, 487,
+ 385, 186, 98, 464, 49, 398, 799, 166, 100, 844,
+ 11, 858, 410, 156, 773, 411, 862, 884, 59, 814,
+ 60, 1, 2, 3, 4, 5, 6, 7, 8, 815,
+ -458, 383, 196, -393, 9, 406, -392, 448, 677, 161,
+ 187, 837, 838, 485, 671, 729, 11, 400, 781, 363,
+ 189, 881, 485, 705, 706, 485, 644, 190, 177, 178,
+ 179, 749, 506, 180, 750, 871, -519, -447, 65, 98,
+ 386, -519, 405, 446, 52, 100, 181, 901, -387, -512,
+ 135, 136, 137, 138, 139, 140, 191, 177, 178, 179,
+ 427, 889, 180, 685, 192, 918, 198, 799, 97, 913,
+ 162, 62, 63, 64, 65, 181, 163, -361, 320, -361,
+ -361, 840, 688, 689, 183, 4, 5, 67, 384, 799,
+ 49, -458, 928, 939, 125, 126, 127, 128, 129, 130,
+ 131, 132, 133, 799, -498, 913, -498, -498, 147, 386,
+ 164, 148, 454, 456, 457, 149, 698, 150, 151, 458,
+ 699, 698, -393, -393, 375, 699, 942, -512, 152, -388,
+ -512, 459, 1, 2, 3, 4, 5, 6, 7, 8,
+ 391, 731, 392, 733, 393, 9, 736, 378, 647, 648,
+ 61, 650, 651, 779, 780, 783, 784, 11, 394, 1,
+ 2, 3, 4, 5, 6, 7, 8, 430, 431, 432,
+ 433, 434, 9, 435, 436, 738, 375, 61, 786, 787,
+ 848, 673, 375, 759, 11, 395, 376, 695, 380, 382,
+ 397, 402, 455, 404, 408, 414, 449, 416, 417, 378,
+ 704, 670, 487, 465, 486, 378, 511, 512, 509, 801,
+ 513, 523, 62, 63, 64, 65, 450, 661, 646, 649,
+ 652, 168, 681, 653, 864, 673, 674, 675, 677, 676,
+ 782, 775, 776, 690, 707, 785, 740, 724, 376, 93,
+ 94, 18, 65, 463, 376, 734, 485, 737, 711, 485,
+ 485, 66, 741, 742, 743, 521, 430, 431, 432, 433,
+ 434, 744, 435, 436, 794, 745, 171, 746, 747, 748,
+ 173, 751, 375, 752, 760, 767, 95, 655, 761, 663,
+ 170, 667, 831, 762, 833, 834, 819, 820, 763, 765,
+ 777, 375, 375, 778, 788, 378, 821, 810, 789, 809,
+ 827, 813, 664, 430, 431, 432, 433, 434, 816, 435,
+ 436, 873, 824, 832, 378, 378, 405, 835, 842, 661,
+ 843, 845, -609, 794, 678, 849, 853, 855, 854, 859,
+ 865, 683, 866, 867, 376, 700, 701, 869, 876, 875,
+ 880, 877, 878, 879, 732, 861, 419, 896, 882, 419,
+ 506, 897, 883, 376, 376, 885, 891, 886, 888, 893,
+ 915, 811, 812, 887, 98, 870, 894, 898, 661, 902,
+ 100, 899, 485, 485, 904, 905, 906, 916, 697, 914,
+ 661, 1, 2, 3, 4, 5, 6, 7, 8, 726,
+ 745, 695, 917, 919, 9, 920, 695, 927, 929, 10,
+ 931, 930, 944, 932, 933, 934, 11, 12, 13, 935,
+ 661, 938, 936, 907, 794, 940, 167, 943, 14, 396,
+ 945, 661, 947, 770, 948, 951, 952, 766, 147, 941,
+ 413, 148, 728, 415, 184, 149, 794, 150, 151, 712,
+ 713, 714, 715, 165, 950, 735, 493, 804, 860, 680,
+ 794, 739, 157, 407, 825, 154, 510, 937, 716, 656,
+ 15, 16, 17, 18, 19, 20, 21, 836, 22, 1,
+ 2, 3, 4, 5, 6, 7, 8, 922, 949, 868,
+ 805, 829, 9, 419, 0, 0, 0, 61, 0, 0,
+ 0, 771, 772, 23, 11, 0, 0, 0, 24, 0,
+ 25, 0, 769, 0, 0, 0, 0, 0, 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, 73, 74, 75, 76, 77,
- 19, 20, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 21, 0, 0, 0, 0, 0, 78, 0, 79,
- 0, 80, 81, 82, 83, 0, 0, 0, 84, 85,
- 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
- 96, 97, 98, 99, 0, 0, 0, 0, 0, 200,
- 0, 201, 0, 22, 23, 24, 25, 26, 27, 28,
- 0, 29, 1, 2, 3, 4, 5, 6, 7, 8,
- 0, 0, 0, 0, 0, 528, 0, 10, 11, 12,
- 13, 14, 15, 16, 17, 30, 0, 0, 105, 0,
- 31, 66, 1, 2, 3, 4, 5, 6, 7, 8,
- 67, 0, 0, 0, 0, 68, 69, 10, 11, 12,
- 13, 14, 15, 16, 17, 0, 0, 0, 537, 461,
- 0, 462, 0, 463, 0, 0, 464, 0, 529, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 340, 341, 72, 0, 0, 0, 0, 106, 107,
- 108, 109, 0, 0, 342, 343, 0, 0, 0, 0,
- 73, 74, 75, 76, 77, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 106, 107,
- 108, 538, 78, 0, 79, 0, 80, 81, 82, 83,
- 0, 0, 0, 84, 85, 86, 87, 88, 89, 90,
- 91, 92, 93, 94, 95, 96, 97, 98, 99, 66,
- 0, 0, 0, 0, 0, 0, 0, 0, 67, 0,
- 0, 0, 0, 68, 69, 0, 0, 0, 0, 0,
- 0, 0, 0, 578, 0, 0, 70, 461, 0, 462,
- 0, 463, 0, 0, 464, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 160, 0, 0, 340,
- 341, 72, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 342, 343, 0, 0, 0, 0, 73, 74,
- 75, 76, 77, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 78, 0, 579, 0, 80, 81, 82, 83, 0, 0,
- 0, 84, 85, 86, 87, 88, 89, 90, 91, 92,
- 580, 94, 95, 96, 97, 98, 99, 66, 0, 0,
- 0, 0, 0, 0, 0, 0, 67, 0, 0, 0,
- 0, 68, 69, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 70, 461, 0, 462, 0, 463,
- 0, 0, 464, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 160, 0, 0, 340, 341, 72,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 342, 343, 0, 0, 642, 0, 73, 74, 75, 76,
- 77, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 78, 0,
- 79, 0, 80, 81, 82, 83, 0, 0, 0, 84,
- 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
- 95, 96, 97, 98, 99, 66, 0, 0, 0, 0,
- 0, 0, 0, 0, 67, 0, 0, 0, 0, 68,
- 69, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 70, 461, -466, 462, 0, 463, 0, 0,
- 464, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 160, 0, 0, 340, 341, 72, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 342, 343,
- 0, 0, 0, 0, 73, 74, 75, 76, 77, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 78, 0, 79, 0,
- 80, 81, 82, 83, 0, 0, 0, 84, 85, 86,
- 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
- 97, 98, 99, 66, 0, 0, 0, 0, 0, 0,
- 0, 0, 67, 0, 0, 0, 0, 68, 69, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 70, 461, 0, 462, 0, 463, 0, 0, 464, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 160, 0, 0, 340, 341, 72, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 342, 343, 0, 0,
- 0, 0, 73, 74, 75, 76, 77, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 78, 0, 79, 0, 80, 81,
- 82, 83, 0, 0, 0, 84, 85, 86, 87, 88,
- 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
- 99, 66, 0, 0, 0, 0, 0, 0, 0, 0,
- 67, 0, 0, 0, 0, 68, 69, 0, 0, 0,
- 0, 0, 0, 0, 0, 578, 0, 0, 70, 461,
- 0, 462, 0, 463, 0, 0, 464, 0, 0, 0,
- 0, 1, 2, 3, 4, 5, 6, 7, 8, 0,
- 0, 340, 341, 72, 9, 0, 10, 11, 12, 13,
- 14, 15, 16, 17, 342, 343, 0, 105, 66, 0,
- 73, 74, 75, 76, 77, 0, 0, 67, 0, 0,
- 567, 0, 68, 69, 10, 11, 12, 13, 14, 15,
- 16, 17, 78, 0, 579, 70, 80, 81, 82, 83,
- 0, 0, 0, 84, 85, 86, 87, 88, 89, 90,
- 91, 92, 580, 94, 95, 96, 97, 98, 99, 0,
- 72, 0, 0, 0, 0, 0, 0, 136, 137, 25,
- 109, 0, 0, 0, 0, 0, 0, 73, 74, 75,
- 76, 77, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
- 0, 79, 0, 80, 81, 82, 83, 0, 0, 0,
- 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
- 94, 95, 96, 97, 98, 99, 66, 0, 0, 0,
- 0, 0, 0, 0, 0, 67, 0, 0, 0, 0,
- 68, 69, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 70, 461, 0, 462, 0, 463, 0,
- 0, 464, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 340, 341, 72, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 342,
- 343, 0, 0, 0, 0, 73, 74, 75, 76, 77,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 78, 0, 79,
- 0, 80, 81, 82, 83, 0, 0, 0, 84, 85,
- 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
- 96, 97, 98, 99, 66, 0, 0, 0, 0, 0,
- 0, 0, 0, 67, 0, 0, 0, 0, 68, 69,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 70, 0, 0, 337, 0, 338, 0, 0, 339,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 340, 341, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 342, 343, 0,
- 0, 0, 0, 73, 74, 75, 76, 77, 0, 0,
- 0, 0, 0, 0, 0, 344, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 78, 0, 79, 0, 80,
- 81, 82, 83, 0, 0, 0, 84, 85, 86, 87,
- 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
- 98, 99, 66, 0, 0, 0, 0, 0, 0, 0,
- 0, 67, 0, 0, 0, 0, 68, 69, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 70,
- 0, 0, 0, 0, 0, 0, 0, 71, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 66, 0, 0, 72, 0, 0, 0, 0, 0,
- 67, 0, 0, 0, 0, 68, 69, 0, 0, 0,
- 0, 73, 74, 75, 76, 77, 0, 0, 70, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 78, 0, 79, 0, 80, 81, 82,
- 83, 0, 0, 72, 84, 85, 86, 87, 88, 89,
- 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
- 73, 74, 75, 76, 77, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 78, 0, 79, 0, 80, 81, 82, 83,
- 0, 0, 0, 84, 85, 86, 87, 88, 89, 90,
- 91, 92, 93, 94, 95, 96, 97, 98, 99, 66,
- 0, 0, 0, 0, 0, 0, 0, 0, 67, 0,
- 0, 0, 0, 68, 69, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 70, 0, 0, 0,
- 0, 0, 0, 0, 188, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 66, 0,
- 0, 0, 0, 0, 0, 0, 0, 67, 0, 0,
- 0, 0, 68, 69, 0, 0, 0, 0, 73, 74,
- 75, 76, 77, 0, 0, 70, 0, 0, 0, 0,
- 0, 0, 0, 409, 0, 0, 0, 0, 0, 0,
- 78, 0, 79, 0, 80, 81, 82, 83, 0, 0,
- 0, 84, 85, 86, 87, 88, 89, 90, 91, 92,
- 93, 94, 95, 96, 97, 98, 99, 73, 74, 75,
- 76, 77, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
- 0, 79, 0, 80, 81, 82, 83, 0, 0, 0,
- 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
- 94, 95, 96, 97, 98, 99, 66, 0, 0, 0,
- 0, 0, 0, 0, 0, 67, 0, 0, 0, 0,
- 68, 69, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 70, 0, 0, 0, 0, 0, 0,
- 0, 441, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 66, 0, 0, 0, 0,
- 0, 0, 0, 0, 67, 0, 0, 0, 0, 68,
- 69, 0, 0, 0, 0, 73, 74, 75, 76, 77,
- 0, 0, 70, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 78, 0, 79,
- 0, 80, 81, 82, 83, 0, 0, 0, 84, 85,
- 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
- 96, 97, 98, 99, 73, 74, 75, 76, 77, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 78, 0, 79, 0,
- 80, 81, 82, 83, 0, 0, 0, 84, 85, 86,
- 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
- 97, 98, 99, 1, 2, 3, 4, 5, 6, 7,
- 8, 0, 0, 0, 0, 0, 528, 0, 10, 11,
- 12, 13, 14, 15, 16, 17, 0, 0, 0, 105,
- 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, 105, 1, 2, 3,
- 4, 5, 6, 7, 8, 0, 0, 0, 0, 532,
- 9, 0, 10, 11, 12, 13, 14, 15, 16, 17,
- 0, 0, 0, 105, 0, 0, 0, 0, 0, 106,
- 107, 108, 109, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 1, 2, 3,
- 4, 5, 6, 7, 8, 0, 106, 107, 108, 109,
- 9, 0, 10, 11, 12, 13, 14, 15, 16, 17,
- 0, 0, 0, 163, 1, 2, 3, 4, 5, 6,
- 7, 8, 0, 136, 137, 25, 109, 9, 0, 10,
- 11, 12, 13, 14, 15, 16, 17, 0, 0, 0,
- 105, 1, 2, 3, 4, 5, 6, 7, 8, 0,
- 0, 0, 0, 0, 378, 0, 10, 11, 12, 13,
- 14, 15, 16, 17, 0, 0, 0, 105, 0, 0,
- 0, 0, 0, 106, 107, 108, 109, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 1, 2, 3, 4, 5, 6, 7, 8, 0,
- 106, 107, 108, 109, 154, 0, 10, 11, 12, 13,
- 14, 15, 16, 17, 0, 0, 0, 105, 1, 2,
- 3, 4, 5, 6, 7, 8, 0, 106, 107, 108,
- 109, 0, 0, 10, 11, 12, 13, 14, 15, 16,
- 17, 674, 0, 0, 105, 0, 0, 0, 0, 0,
- 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
- 423, 424, 425, 426, 427, 428, 429, 430, 0, 0,
- 0, 0, 652, 542, 0, 0, 0, 106, 107, 108,
- 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
- 423, 424, 425, 426, 427, 428, 429, 430, 0, 0,
- 562, 0, 0, 542, 106, 107, 108, 413, 414, 415,
- 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
- 426, 427, 428, 429, 430, 623, 0, 0, 0, 0,
- 431, 0, 413, 414, 415, 416, 417, 418, 419, 420,
- 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
- 0, 0, 0, 0, 0, 542, 413, 414, 415, 416,
- 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
- 427, 428, 429, 430, 0, 0, 0, 0, 0, 431,
- 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
- 423, 424, 425, 426, 427, 428, 429, 430, 0, 0,
- 0, 0, 0, 542, 413, 414, 415, 416, 417, 418,
- 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
- 429, 430, 0, 0, 0, 0, 0, 431, 413, 414,
- 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
- 425, 426, 427, 428, 429, 430, 0, 0, 0, 0,
- 0, 542
+ 754, 9, 427, 0, 837, 838, 61, 0, 0, 521,
+ 0, 0, 0, 11, 0, 0, 0, 0, 0, 839,
+ 0, 0, 171, 0, 0, 756, 173, 0, 0, 93,
+ 94, 18, 65, 0, 0, 0, 170, 0, 0, 0,
+ 0, 0, 0, 0, 0, 170, 385, 0, 98, 0,
+ 375, 375, 0, 98, 100, 0, 521, 0, 0, 100,
+ 0, 521, 697, 903, 0, 419, 691, 697, 93, 94,
+ 18, 65, 802, 378, 378, 446, 0, 0, 446, 0,
+ 0, 0, 921, 850, 419, 0, 803, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 0, 147, 0, 664,
+ 148, 0, 0, 0, 149, 691, 150, 151, 712, 713,
+ 714, 715, 376, 376, 0, 0, 0, 0, 946, 0,
+ 419, 0, 1, 2, 3, 4, 5, 6, 7, 8,
+ 847, 828, 69, 0, 726, 9, 0, 0, 0, 0,
+ 61, 0, 0, 856, 456, 457, 700, 701, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 852,
+ 0, 0, 459, 0, 0, 863, 446, 0, 70, 71,
+ 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
+ 0, 82, 83, 84, 85, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 62, 63, 64, 0, 0, 0, 0, 900,
+ 0, 0, 0, 0, 0, 0, 0, 0, 908, 0,
+ 0, 0, 0, 0, 199, 0, 0, 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, 908, 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, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 0, 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, 304, 305, 306, 307, 308, 309,
+ 310, 0, 0, 311, 0, 312, 313, 314, 315, 316,
+ 199, 0, 0, 321, 201, 202, 203, 204, 205, 206,
+ 207, 208, 322, 323, 324, 325, 213, 326, 327, 216,
+ 217, 218, 328, 220, 221, 222, 223, 224, 225, 226,
+ 0, 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, 329, 330, 331, 332,
+ 333, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 0, 277, 278, 279, 280, 281, 334, 283,
+ 335, 336, 337, 338, 339, 340, 290, 341, 292, 293,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 310, 0, 0, 311,
+ 0, 312, 313, 314, 315, 316, 524, 0, 0, 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, 0, 552, 553, 554,
+ 555, 556, 414, 727, 557, 558, 559, 560, 561, 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, 596, 597, 598, 0, 599, 0, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 0, 0, 634, 0, 635, 636, 637,
+ 638, 639, 524, 0, 0, 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, 0, 552, 553, 554, 555, 556, 414, 0,
+ 557, 558, 559, 560, 561, 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, 596,
+ 597, 598, 0, 599, 0, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, -585,
+ 0, 634, 0, 635, 636, 637, 638, 639, -585, -585,
+ -585, -585, 0, -585, -585, 0, 0, 0, -585, 0,
+ 0, 0, 0, 0, 0, -585, -585, -585, -585, -585,
+ -585, -585, -585, -585, -585, -585, -585, 0, -585, -585,
+ -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
+ -585, -585, -585, -585, -585, -585, 0, 0, 0, 0,
+ 0, -585, -585, -585, -585, -585, -585, 1, 2, 3,
+ 4, 5, 6, 7, 8, 0, 0, 0, 0, 0,
+ 9, 0, 0, -585, -585, 61, -585, -585, -585, -585,
+ -585, -585, 11, -585, 0, 0, -585, -585, -585, -585,
+ -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
+ -585, -585, 0, 104, 0, 0, 0, 0, 0, 0,
+ 0, -585, 105, 106, 107, 108, 0, 109, 110, 514,
+ 0, 0, 111, 497, 0, 498, 0, 499, 368, 515,
+ 0, 0, 500, 0, 0, 0, 0, 62, 63, 64,
+ 65, 0, 0, 0, 0, 0, 0, 370, 371, 168,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 372, 373, 0, 0, 0, 0, 112, 113, 114, 115,
+ 116, 1, 2, 3, 4, 5, 6, 7, 8, 0,
+ 0, 0, 0, 0, 9, 0, 0, 516, 117, 61,
+ 118, 119, 120, 121, 122, 123, 11, 124, 0, 0,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 138, 139, 140, 104, 0, 0, 0,
+ 0, 0, 0, 0, 517, 105, 106, 107, 108, 0,
+ 109, 110, 0, 0, 0, 111, 0, 0, 366, 0,
+ 367, 368, 0, 0, 0, 369, 0, 0, 0, 0,
+ 0, 93, 94, 18, 65, 0, 0, 0, 0, 0,
+ 370, 371, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 372, 373, 0, 0, 0, 0, 112,
+ 113, 114, 115, 116, 0, 0, 0, 0, 0, 0,
+ 0, 374, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 117, 0, 118, 119, 120, 121, 122, 123, 0,
+ 124, 0, 0, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 138, 139, 140, -33,
+ 0, 0, 684, 0, 0, 0, 0, 0, -33, -33,
+ -33, -33, 0, -33, -33, 0, 0, 0, -33, 0,
+ 0, -33, -33, -33, -33, 0, 0, 0, -33, 0,
+ 0, 0, 0, 0, 0, 1, 2, 3, 4, 5,
+ 6, 7, 8, -33, -33, 0, 0, 0, 9, 0,
+ 0, 0, 0, 61, 0, 0, -33, -33, 0, 0,
+ 11, 0, -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, 0, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -34, 0, -33, 62, 63, 64, 65, 0,
+ 0, -34, -34, -34, -34, 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, 418, 0, 0, 0, 0, 61, 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, -35, 0, -34, 62, 63,
+ 64, 65, 0, 0, -35, -35, -35, -35, 0, -35,
+ -35, 0, 0, 0, -35, 0, 0, -35, -35, -35,
+ -35, 0, 0, 0, -35, 0, 0, 0, 0, 0,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, -35,
+ -35, 0, 0, 0, 9, 0, 0, 0, 0, 61,
+ 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, 62, 63, 64, 0, 0, 0, -36, -36, -36,
+ -36, 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, -37, 0, -36, 0, 0, 0, 0, 0, 0,
+ -37, -37, -37, -37, 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, -60, 0, -37, 0, 0, 0,
+ 0, 0, 0, -60, -60, -60, -60, 0, -60, -60,
+ 0, 0, 0, -60, 0, 0, -60, -60, -60, -60,
+ 0, 0, 0, -60, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -60, -60,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -60, -60, 0, 0, 0, 0, -60, -60, -60,
+ -60, -60, 0, 0, 0, 0, 0, 0, 0, -60,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -60,
+ 0, -60, -60, -60, -60, -60, -60, 0, -60, 0,
+ 0, -60, -60, -60, -60, -60, -60, -60, -60, -60,
+ -60, -60, -60, -60, -60, -60, -60, -61, 0, -624,
+ 0, 0, 0, 0, 0, 0, -61, -61, -61, -61,
+ 0, -61, -61, 0, 0, 0, -61, 0, 0, -61,
+ -61, -61, -61, 0, 0, 0, -61, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -61, -61, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -61, -61, 0, 0, 0, 0,
+ -61, -61, -61, -61, -61, 0, 0, 0, 0, 0,
+ 0, 0, -61, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -61, 0, -61, -61, -61, -61, -61, -61,
+ 0, -61, 0, 0, -61, -61, -61, -61, -61, -61,
+ -61, -61, -61, -61, -61, -61, -61, -61, -61, -61,
+ -24, 0, -585, 0, 0, 0, 0, 0, 0, -24,
+ -24, -24, -24, 0, -24, -24, 0, 0, 0, -24,
+ 0, 0, -24, -24, -24, -24, 0, 0, 0, -24,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -24, -24, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -24, -24, 0,
+ 0, 0, 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, -42, 0, -24, 0, 0, 0, 0,
+ 0, 0, -42, -42, -42, -42, 0, -42, -42, 0,
+ 0, 0, -42, 0, 0, -42, -42, -42, -42, 0,
+ 0, 0, -42, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -42, -42, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -42, -42, 0, 0, 0, 0, -42, -42, -42, -42,
+ -42, 0, 0, 0, 0, 0, 0, 0, -42, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -42, 0,
+ -42, -42, -42, -42, -42, -42, 0, -42, 0, 0,
+ -42, -42, -42, -42, -42, -42, -42, -42, -42, -42,
+ -42, -42, -42, -42, -42, -42, -41, 0, -42, 0,
+ 0, 0, 0, 0, 0, -41, -41, -41, -41, 0,
+ -41, -41, 0, 0, 0, -41, 0, 0, -41, -41,
+ -41, -41, 0, 0, 0, -41, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ -41, -41, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -41, -41, 0, 0, 0, 0, -41,
+ -41, -41, -41, -41, 0, 0, 0, 0, 0, 0,
+ 0, -41, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -41, 0, -41, -41, -41, -41, -41, -41, 0,
+ -41, 0, 0, -41, -41, -41, -41, -41, -41, -41,
+ -41, -41, -41, -41, -41, -41, -41, -41, -41, -40,
+ 0, -41, 0, 0, 0, 0, 0, 0, -40, -40,
+ -40, -40, 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, -38, 0, -40, 0, 0, 0, 0, 0,
+ 0, -38, -38, -38, -38, 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, -39, 0, -38, 0, 0,
+ 0, 0, 0, 0, -39, -39, -39, -39, 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, -32, 0,
+ -39, 0, 0, 0, 0, 0, 0, -32, -32, -32,
+ -32, 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, -31, -31, -31, 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, -25, -25, -25, 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, -29, -29, -29,
+ 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,
+ -28, -28, -28, 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, -26, -26, -26, 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, -27, -27, -27, 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, -43,
+ 0, -27, 0, 0, 0, 0, 0, 0, -43, -43,
+ -43, -43, 0, -43, -43, 0, 0, 0, -43, 0,
+ 0, -43, -43, -43, -43, 0, 0, 0, -43, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -43, -43, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -43, -43, 0, 0,
+ 0, 0, -43, -43, -43, -43, -43, 0, 0, 0,
+ 0, 0, 0, 0, -43, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -43, 0, -43, -43, -43, -43,
+ -43, -43, 0, -43, 0, 0, -43, -43, -43, -43,
+ -43, -43, -43, -43, -43, -43, -43, -43, -43, -43,
+ -43, -43, -138, 0, -43, 0, 0, 0, 0, 0,
+ 0, -138, -138, -138, -138, 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, -593, 0, 0,
+ 0, 0, 0, 0, -139, -139, -139, -139, 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,
+ -592, 0, 0, 0, 0, 0, 0, -140, -140, -140,
+ -140, 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, -590, 0, 0, 0, 0, 0, 0,
+ -141, -141, -141, -141, 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, -588, 0, 0, 0,
+ 0, 0, 0, -142, -142, -142, -142, 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, -589,
+ 0, 0, 0, 0, 0, 0, -143, -143, -143, -143,
+ 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,
+ -144, 0, -591, 0, 0, 0, 0, 0, 0, -144,
+ -144, -144, -144, 0, -144, -144, 0, 0, 0, -144,
+ 0, 0, -144, -144, -144, -144, 0, 0, 0, -144,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -144, -144, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -144, -144, 0,
+ 0, 0, 0, -144, -144, -144, -144, -144, 0, 0,
+ 0, 0, 0, 0, 0, -144, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -144, 0, -144, -144, -144,
+ -144, -144, -144, 0, -144, 0, 0, -144, -144, -144,
+ -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
+ -144, -144, -144, -145, 0, -587, 0, 0, 0, 0,
+ 0, 0, -145, -145, -145, -145, 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, -586, 0,
+ 0, 0, 0, 0, 0, -146, -146, -146, -146, 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, -30,
+ 0, -594, 0, 0, 0, 0, 0, 0, -30, -30,
+ -30, -30, 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, -148, 0, -30, 0, 0, 0, 0, 0,
+ 0, -148, -148, -148, -148, 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, -622, 0, 0,
+ 0, 0, 0, 0, -149, -149, -149, -149, 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,
+ -620, 0, 0, 0, 0, 0, 0, -150, -150, -150,
+ -150, 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, -151, 0, -619, 0, 0, 0, 0, 0, 0,
+ -151, -151, -151, -151, 0, -151, -151, 0, 0, 0,
+ -151, 0, 0, -151, -151, -151, -151, 0, 0, 0,
+ -151, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -151, -151, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -151, -151,
+ 0, 0, 0, 0, -151, -151, -151, -151, -151, 0,
+ 0, 0, 0, 0, 0, 0, -151, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -151, 0, -151, -151,
+ -151, -151, -151, -151, 0, -151, 0, 0, -151, -151,
+ -151, -151, -151, -151, -151, -151, -151, -151, -151, -151,
+ -151, -151, -151, -151, -152, 0, -621, 0, 0, 0,
+ 0, 0, 0, -152, -152, -152, -152, 0, -152, -152,
+ 0, 0, 0, -152, 0, 0, -152, -152, -152, -152,
+ 0, 0, 0, -152, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -152, -152,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -152, -152, 0, 0, 0, 0, -152, -152, -152,
+ -152, -152, 0, 0, 0, 0, 0, 0, 0, -152,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -152,
+ 0, -152, -152, -152, -152, -152, -152, 0, -152, 0,
+ 0, -152, -152, -152, -152, -152, -152, -152, -152, -152,
+ -152, -152, -152, -152, -152, -152, -152, -153, 0, -618,
+ 0, 0, 0, 0, 0, 0, -153, -153, -153, -153,
+ 0, -153, -153, 0, 0, 0, -153, 0, 0, -153,
+ -153, -153, -153, 0, 0, 0, -153, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -153, -153, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -153, -153, 0, 0, 0, 0,
+ -153, -153, -153, -153, -153, 0, 0, 0, 0, 0,
+ 0, 0, -153, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -153, 0, -153, -153, -153, -153, -153, -153,
+ 0, -153, 0, 0, -153, -153, -153, -153, -153, -153,
+ -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
+ 104, 0, -617, 0, 0, 0, 0, 0, 0, 105,
+ 106, 107, 108, 0, 109, 110, 0, 0, 0, 111,
+ 0, 0, 366, 450, 367, 368, 0, 0, 0, 369,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 370, 371, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 372, 373, 0,
+ 0, 0, 0, 112, 113, 114, 115, 116, 0, 0,
+ 0, 0, 0, 0, 0, 374, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 117, 0, 118, 119, 120,
+ 121, 122, 123, 0, 124, 0, 0, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
+ 138, 139, 140, 0, 0, 451, 104, 1, 2, 3,
+ 4, 5, 6, 7, 8, 105, 106, 107, 108, 0,
+ 702, 110, 514, 0, 0, 703, 497, 0, 498, 0,
+ 499, 368, 11, 0, 0, 500, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 370, 371, 168, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 372, 373, 0, 0, 0, 0, 112,
+ 113, 114, 115, 116, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 62, 63, 64,
+ 65, 117, 0, 118, 119, 120, 121, 122, 123, 0,
+ 124, 0, 0, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 138, 139, 140, 104,
+ 0, 0, 0, 0, 0, 0, 0, 0, 105, 106,
+ 107, 108, 0, 109, 110, 494, 495, 496, 111, 497,
+ 0, 498, 450, 499, 368, 0, 0, 0, 500, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 370, 371, 168, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 372, 373, 0, 0,
+ 0, 0, 112, 113, 114, 115, 116, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 117, 0, 118, 119, 120, 121,
+ 122, 123, 0, 124, 0, 0, 125, 126, 127, 128,
+ 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
+ 139, 140, 104, 0, 0, 0, 0, 0, 0, 0,
+ 0, 105, 106, 107, 108, 0, 109, 110, 790, 0,
+ 0, 111, 497, 0, 498, 0, 499, 368, 0, 0,
+ 0, 500, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 158, 0, 0, 370, 371, 168, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 372,
+ 373, 0, 0, 0, 0, 112, 113, 114, 115, 116,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 117, 791, 792,
+ 119, 120, 121, 122, 123, 0, 124, 0, 0, 125,
+ 126, 127, 128, 129, 130, 131, 132, 133, 793, 135,
+ 136, 137, 138, 139, 140, 104, 0, 0, 0, 0,
+ 0, 0, 0, 0, 105, 106, 107, 108, 0, 109,
+ 110, 514, 0, 0, 111, 497, 0, 498, 0, 499,
+ 368, 0, 0, 0, 500, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 158, 0, 0, 370,
+ 371, 168, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 372, 373, 0, 0, 872, 0, 112, 113,
+ 114, 115, 116, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 117, 0, 118, 119, 120, 121, 122, 123, 0, 124,
+ 0, 0, 125, 126, 127, 128, 129, 130, 131, 132,
+ 133, 134, 135, 136, 137, 138, 139, 140, 104, 0,
+ 0, 0, 0, 0, 0, 0, 0, 105, 106, 107,
+ 108, 0, 109, 110, 514, 0, 0, 111, 497, -636,
+ 498, 0, 499, 368, 0, 0, 0, 500, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 158,
+ 0, 0, 370, 371, 168, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 372, 373, 0, 0, 0,
+ 0, 112, 113, 114, 115, 116, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 117, 0, 118, 119, 120, 121, 122,
+ 123, 0, 124, 0, 0, 125, 126, 127, 128, 129,
+ 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
+ 140, 104, 0, 0, 0, 0, 0, 0, 0, 0,
+ 105, 106, 107, 108, 0, 109, 110, 514, 0, 0,
+ 111, 497, 0, 498, 0, 499, 368, 0, 0, 0,
+ 500, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 158, 0, 0, 370, 371, 168, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 372, 373,
+ 0, 0, 0, 0, 112, 113, 114, 115, 116, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 117, 0, 118, 119,
+ 120, 121, 122, 123, 0, 124, 0, 0, 125, 126,
+ 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
+ 137, 138, 139, 140, 104, 0, 0, 0, 0, 0,
+ 0, 0, 0, 105, 106, 107, 108, 0, 109, 110,
+ 790, 0, 0, 111, 497, 0, 498, 0, 499, 368,
+ 0, 0, 0, 500, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 370, 371,
+ 168, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 372, 373, 0, 0, 0, 0, 112, 113, 114,
+ 115, 116, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 117,
+ 791, 792, 119, 120, 121, 122, 123, 0, 124, 0,
+ 0, 125, 126, 127, 128, 129, 130, 131, 132, 133,
+ 793, 135, 136, 137, 138, 139, 140, 104, 0, 0,
+ 0, 0, 0, 0, 0, 0, 105, 106, 107, 108,
+ 0, 109, 110, 514, 0, 0, 111, 497, 0, 498,
+ 0, 499, 368, 0, 0, 0, 500, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 370, 371, 168, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 372, 373, 0, 0, 0, 0,
+ 112, 113, 114, 115, 116, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 117, 0, 118, 119, 120, 121, 122, 123,
+ 0, 124, 0, 0, 125, 126, 127, 128, 129, 130,
+ 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
+ 104, 0, 0, 0, 0, 0, 0, 0, 0, 105,
+ 106, 107, 108, 0, 109, 110, 0, 0, 0, 111,
+ 0, 0, 366, 0, 367, 368, 0, 0, 0, 369,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 370, 371, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 372, 373, 0,
+ 0, 0, 0, 112, 113, 114, 115, 116, 0, 0,
+ 0, 0, 0, 0, 0, 374, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 117, 0, 118, 119, 120,
+ 121, 122, 123, 0, 124, 0, 0, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
+ 138, 139, 140, 104, 0, 0, 0, 0, 0, 0,
+ 0, 0, 105, 106, 107, 108, 0, 109, 110, 0,
+ 0, 0, 111, 0, 0, 0, 0, 0, 0, 11,
+ 0, 0, -528, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 168,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 112, 113, 114, 115,
+ 116, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 65, 117, 0,
+ 118, 119, 120, 121, 122, 123, 0, 124, 0, 0,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 138, 139, 140, 104, 0, 0, 0,
+ 0, 0, 0, 0, 0, 105, 106, 107, 108, 0,
+ 109, 110, 753, 0, 0, 111, 0, 0, 0, 0,
+ 0, 0, 11, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 0, 168, 0, 0, 0, 708, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 112,
+ 113, 114, 115, 116, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 65, 117, 0, 118, 119, 120, 121, 122, 123, 0,
+ 124, 0, 0, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 138, 139, 140, 104,
+ 0, 0, 0, 0, 0, 0, 0, 0, 105, 106,
+ 107, 108, 0, 109, 110, 0, 0, 0, 111, 0,
+ 0, 682, 0, 0, 0, 0, 0, 0, 725, 830,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 0, 0,
+ 0, 0, 0, 484, 0, 0, 0, 0, 0, 0,
+ 0, 0, 112, 113, 114, 115, 116, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 117, 0, 118, 119, 120, 121,
+ 122, 123, 0, 124, 0, 0, 125, 126, 127, 128,
+ 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
+ 139, 140, 104, 0, 0, 0, 0, 0, 0, 0,
+ 0, 105, 106, 107, 108, 0, 109, 110, 0, 0,
+ 0, 111, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 767, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 168, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 112, 113, 114, 115, 116,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 117, 0, 118,
+ 119, 120, 121, 122, 123, 0, 124, 0, 0, 125,
+ 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
+ 136, 137, 138, 139, 140, 104, 0, 0, 0, 0,
+ 0, 0, 0, 0, 105, 106, 107, 108, 774, 109,
+ 110, 0, 0, 0, 111, 0, 0, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 0, 0, 0, 0, 0,
+ 708, 168, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 112, 113,
+ 114, 115, 116, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 117, 0, 118, 119, 120, 121, 122, 123, 0, 124,
+ 0, 0, 125, 126, 127, 128, 129, 130, 131, 132,
+ 133, 134, 135, 136, 137, 138, 139, 140, 104, 0,
+ 0, 0, 0, 0, 0, 0, 0, 105, 106, 107,
+ 108, 0, 109, 110, 0, 0, 0, 111, 0, 926,
+ 0, 0, 0, 0, 0, 0, 0, 462, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 0, 0, 0, 0,
+ 0, 708, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 112, 113, 114, 115, 116, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 117, 0, 118, 119, 120, 121, 122,
+ 123, 0, 124, 0, 0, 125, 126, 127, 128, 129,
+ 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
+ 140, 104, 0, 0, 0, 0, 0, 0, 0, 0,
+ 105, 106, 107, 108, 0, 109, 110, 0, 0, 0,
+ 111, 0, 0, 890, 0, 0, 0, 0, 0, 0,
+ 725, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 0,
+ 0, 0, 0, 0, 708, 0, 0, 0, 0, 0,
+ 104, 0, 0, 0, 112, 113, 114, 115, 116, 105,
+ 106, 107, 108, 0, 109, 110, 0, 0, 0, 111,
+ 0, 0, 0, 0, 0, 0, 117, 0, 118, 119,
+ 120, 121, 122, 123, 0, 124, 0, 0, 125, 126,
+ 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
+ 137, 138, 139, 140, 0, 0, 0, 0, 0, 0,
+ 0, 755, 0, 112, 113, 114, 115, 116, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 117, 0, 118, 119, 120,
+ 121, 122, 123, 0, 124, 0, 0, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
+ 138, 139, 140, 104, 0, 0, 0, 0, 0, 0,
+ 0, 0, 105, 106, 107, 108, 764, 806, 110, 0,
+ 0, 0, 111, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 0, 0, 0, 0, 0, 484, 0, 0, 168,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 104, 0, 0, 0, 112, 113, 114, 115,
+ 116, 105, 106, 107, 108, 0, 109, 110, 0, 0,
+ 0, 111, 0, 0, 0, 0, 0, 0, 117, 0,
+ 118, 119, 120, 121, 122, 123, 0, 124, 0, 0,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 138, 139, 140, 0, 0, 0, 0,
+ 0, 104, 0, 851, 0, 112, 113, 114, 115, 116,
+ 105, 106, 107, 108, 0, 109, 110, 0, 0, 0,
+ 111, 0, 0, 0, 0, 0, 0, 117, 0, 118,
+ 119, 120, 121, 122, 123, 0, 124, 0, 0, 125,
+ 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
+ 136, 137, 138, 139, 140, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 112, 113, 114, 115, 116, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 117, 0, 118, 119,
+ 120, 121, 122, 123, 0, 124, 0, 0, 125, 126,
+ 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
+ 137, 138, 139, 140, 822, 0, 0, 0, 0, 0,
+ 0, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 0,
+ 0, 0, 723, 0, 708, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 0, 0, 0, 0, 0, 708, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 0, 0, 0,
+ 0, 0, 484, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 0, 0, 0, 0, 0, 708, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 0, 0, 0, 0, 0,
+ 484, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 0,
+ 0, 0, 0, 0, 708
};
-static const short int yycheck[] =
+static const short yycheck[] =
{
- 39, 29, 26, 22, 18, 9, 9, 22, 22, 131,
- 71, 347, 386, 0, 535, 389, 135, 339, 18, 535,
- 23, 24, 25, 345, 535, 434, 544, 521, 369, 34,
- 549, 18, 571, 32, 573, 39, 0, 392, 34, 55,
- 9, 398, 11, 39, 31, 564, 33, 3, 38, 38,
- 6, 40, 37, 38, 10, 40, 12, 13, 14, 15,
- 16, 17, 6, 7, 8, 55, 587, 71, 579, 33,
- 609, 70, 408, 41, 42, 411, 587, 4, 5, 6,
- 34, 203, 9, 39, 6, 109, 605, 9, 497, 444,
- 412, 17, 18, 39, 40, 27, 28, 29, 101, 456,
- 139, 33, 34, 106, 107, 108, 624, 464, 465, 431,
- 432, 452, 128, 454, 17, 18, 97, 611, 37, 124,
- 37, 124, 41, 42, 0, 42, 620, 188, 145, 146,
- 147, 134, 135, 136, 137, 139, 50, 653, 656, 678,
- 143, 659, 653, 40, 638, 666, 43, 37, 37, 37,
- 154, 40, 40, 129, 490, 666, 195, 493, 494, 675,
- 39, 40, 680, 163, 675, 40, 41, 170, 182, 183,
- 544, 37, 39, 40, 40, 38, 163, 42, 535, 40,
- 41, 184, 42, 186, 188, 542, 543, 43, 38, 115,
- 116, 117, 118, 119, 120, 39, 40, 356, 357, 136,
- 137, 55, 105, 106, 107, 108, 109, 110, 111, 112,
- 113, 98, 99, 100, 101, 102, 103, 104, 36, 38,
- 339, 37, 42, 31, 41, 31, 345, 31, 37, 42,
- 587, 588, 31, 44, 6, 576, 577, 38, 38, 561,
- 562, 37, 98, 99, 100, 101, 102, 103, 104, 123,
- 624, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, 38, 619, 599, 600, 17, 623, 19, 20, 21,
- 22, 23, 24, 25, 26, 41, 46, 3, 30, 42,
- 6, 38, 656, 36, 10, 659, 12, 13, 14, 15,
- 16, 17, 37, 412, 43, 652, 653, 33, 46, 34,
- 39, 38, 40, 45, 38, 46, 680, 368, 37, 666,
- 37, 32, 431, 432, 46, 38, 46, 37, 675, 72,
- 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
- 83, 38, 85, 86, 87, 88, 339, 39, 90, 91,
- 92, 344, 345, 39, 39, 33, 385, 40, 387, 98,
- 99, 100, 101, 102, 103, 104, 37, 360, 41, 39,
- 39, 39, 39, 39, 368, 39, 41, 40, 40, 37,
- 39, 41, 38, 38, 378, 46, 40, 33, 38, 37,
- 441, 38, 33, 37, 39, 388, 39, 32, 40, 39,
- 33, 40, 40, 39, 38, 330, 435, 436, 401, 39,
- 39, 404, 40, 39, 41, 40, 409, 39, 33, 412,
- 134, 612, 46, 177, 139, 434, 31, 164, 183, 434,
- 434, 359, 457, 568, 28, 573, 675, 363, 431, 432,
- 385, 389, -1, 551, -1, -1, -1, 441, -1, 453,
- -1, 455, 561, 562, -1, 448, 37, 486, -1, 464,
- -1, -1, -1, -1, 457, -1, -1, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
- 61, 62, 63, 64, 65, 597, -1, -1, 497, -1,
- 71, -1, 497, 497, 487, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 500, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 546, -1, -1,
- 549, -1, -1, -1, 538, -1, -1, 39, -1, -1,
- 548, -1, -1, -1, 528, 564, 48, 49, 50, 51,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, -1, -1, -1, -1, 551, 71,
- -1, -1, -1, -1, -1, 594, -1, -1, 561, 562,
- -1, -1, -1, -1, -1, -1, 605, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 611, -1, -1, -1, 39, -1, -1,
- -1, -1, -1, -1, -1, 598, 48, 49, 50, 51,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, 653, -1, -1, -1, -1, 71,
+ 33, 22, 88, 0, 33, 16, 17, 18, 190, 189,
+ 190, 0, 15, 10, 33, 196, 103, 431, 15, 92,
+ 34, 405, 387, 388, 434, 431, 509, 24, 434, 404,
+ 27, 719, 487, 81, 391, 317, 487, 741, 27, 741,
+ 741, 15, 92, 91, 419, 402, 26, 317, 45, 0,
+ 49, 62, 63, 64, 141, 770, 10, 144, 377, 10,
+ 778, 437, 780, 31, 32, 29, 34, 24, 29, 33,
+ 81, 91, 33, 24, 32, 44, 27, 17, 18, 29,
+ 38, 92, 93, 94, 31, 26, 443, 369, 792, 36,
+ 101, 45, 95, 375, 45, 165, 800, 0, 95, 800,
+ 29, 816, 6, 123, 33, 9, 824, 64, 9, 25,
+ 11, 4, 5, 6, 7, 8, 9, 10, 11, 35,
+ 32, 95, 34, 87, 17, 124, 87, 197, 26, 22,
+ 125, 17, 18, 452, 510, 33, 29, 87, 826, 119,
+ 32, 856, 461, 500, 501, 464, 416, 32, 4, 5,
+ 6, 31, 509, 9, 34, 843, 31, 125, 87, 162,
+ 35, 36, 173, 196, 161, 162, 22, 882, 35, 36,
+ 110, 111, 112, 113, 114, 115, 36, 4, 5, 6,
+ 191, 869, 9, 465, 36, 900, 88, 891, 162, 891,
+ 83, 84, 85, 86, 87, 22, 89, 31, 30, 33,
+ 34, 905, 484, 485, 6, 7, 8, 161, 31, 913,
+ 161, 32, 913, 931, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 927, 31, 927, 33, 34, 3, 35,
+ 123, 6, 318, 26, 27, 10, 691, 12, 13, 32,
+ 691, 696, 33, 34, 317, 696, 934, 36, 23, 35,
+ 36, 44, 4, 5, 6, 7, 8, 9, 10, 11,
+ 40, 645, 23, 647, 31, 17, 650, 317, 33, 34,
+ 22, 33, 34, 33, 34, 32, 33, 29, 36, 4,
+ 5, 6, 7, 8, 9, 10, 11, 92, 93, 94,
+ 95, 96, 17, 98, 99, 652, 369, 22, 33, 34,
+ 33, 34, 375, 678, 29, 23, 317, 487, 93, 94,
+ 123, 38, 360, 32, 6, 36, 26, 32, 31, 369,
+ 500, 37, 36, 32, 35, 375, 32, 31, 40, 743,
+ 31, 6, 84, 85, 86, 87, 26, 743, 32, 34,
+ 40, 49, 22, 34, 827, 34, 31, 31, 26, 32,
+ 725, 708, 709, 32, 31, 730, 37, 39, 369, 84,
+ 85, 86, 87, 374, 375, 64, 685, 64, 37, 688,
+ 689, 123, 40, 31, 40, 404, 92, 93, 94, 95,
+ 96, 31, 98, 99, 741, 32, 419, 24, 40, 32,
+ 419, 32, 465, 31, 33, 35, 121, 430, 33, 432,
+ 419, 434, 786, 33, 788, 789, 771, 772, 34, 25,
+ 31, 484, 485, 35, 33, 465, 773, 34, 33, 33,
+ 40, 34, 433, 92, 93, 94, 95, 96, 34, 98,
+ 99, 845, 35, 64, 484, 485, 447, 109, 32, 845,
+ 32, 34, 33, 800, 458, 33, 25, 32, 35, 31,
+ 33, 462, 33, 33, 465, 488, 489, 32, 31, 33,
+ 25, 97, 33, 35, 646, 822, 646, 877, 34, 649,
+ 827, 877, 31, 484, 485, 32, 34, 33, 33, 33,
+ 894, 763, 764, 867, 487, 842, 34, 32, 894, 24,
+ 487, 34, 811, 812, 32, 97, 32, 25, 487, 33,
+ 906, 4, 5, 6, 7, 8, 9, 10, 11, 520,
+ 32, 691, 25, 33, 17, 33, 696, 34, 34, 22,
+ 35, 33, 936, 33, 33, 32, 29, 30, 31, 33,
+ 936, 25, 34, 890, 891, 32, 27, 33, 41, 162,
+ 33, 947, 32, 696, 33, 33, 33, 691, 3, 933,
+ 184, 6, 642, 186, 40, 10, 913, 12, 13, 14,
+ 15, 16, 17, 24, 948, 649, 390, 748, 818, 458,
+ 927, 653, 21, 174, 780, 19, 394, 927, 33, 430,
+ 83, 84, 85, 86, 87, 88, 89, 791, 91, 4,
+ 5, 6, 7, 8, 9, 10, 11, 905, 947, 839,
+ 750, 783, 17, 783, -1, -1, -1, 22, -1, -1,
+ -1, 698, 699, 116, 29, -1, -1, -1, 121, -1,
+ 123, -1, 37, -1, -1, -1, -1, -1, 4, 5,
+ 6, 7, 8, 9, 10, 11, -1, -1, -1, -1,
+ 673, 17, 653, -1, 17, 18, 22, -1, -1, 678,
+ -1, -1, -1, 29, -1, -1, -1, -1, -1, 32,
+ -1, -1, 695, -1, -1, 676, 695, -1, -1, 84,
+ 85, 86, 87, -1, -1, -1, 695, -1, -1, -1,
+ -1, -1, -1, -1, -1, 704, 697, -1, 691, -1,
+ 763, 764, -1, 696, 691, -1, 725, -1, -1, 696,
+ -1, 730, 691, 885, -1, 885, 121, 696, 84, 85,
+ 86, 87, 745, 763, 764, 748, -1, -1, 751, -1,
+ -1, -1, 904, 809, 904, -1, 747, 100, 101, 102,
+ 103, 104, 105, 106, 107, 108, -1, 3, -1, 750,
+ 6, -1, -1, -1, 10, 121, 12, 13, 14, 15,
+ 16, 17, 763, 764, -1, -1, -1, -1, 940, -1,
+ 940, -1, 4, 5, 6, 7, 8, 9, 10, 11,
+ 803, 782, 30, -1, 785, 17, -1, -1, -1, -1,
+ 22, -1, -1, 816, 26, 27, 819, 820, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 810,
+ -1, -1, 44, -1, -1, 826, 839, -1, 66, 67,
+ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
+ -1, 79, 80, 81, 82, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 0, -1, 675, 3, 4, 5,
+ -1, -1, 84, 85, 86, -1, -1, -1, -1, 882,
+ -1, -1, -1, -1, -1, -1, -1, -1, 891, -1,
+ -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, 30, 31, 32, 33, 34, 35,
+ 26, 27, 28, 29, 927, 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, 80, 81, 82, 83, 84, 85,
- -1, 87, -1, 89, 90, 91, 92, 93, 94, 95,
+ 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, 121, -1, 123, 124, -1,
- 126, 127, 128, 129, 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, 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, 80, 81, 82, 83, 84, 85,
- -1, 87, -1, 89, 90, 91, 92, 93, 94, 95,
- 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
+ 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, -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, -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, 13,
+ 14, 15, -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, -1, 3, -1, -1, -1, -1, -1, -1,
+ -1, 125, 12, 13, 14, 15, -1, 17, 18, 19,
+ -1, -1, 22, 23, -1, 25, -1, 27, 28, 29,
+ -1, -1, 32, -1, -1, -1, -1, 84, 85, 86,
+ 87, -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, 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, -1, -1, -1,
+ -1, -1, -1, -1, 124, 12, 13, 14, 15, -1,
+ 17, 18, -1, -1, -1, 22, -1, -1, 25, -1,
+ 27, 28, -1, -1, -1, 32, -1, -1, -1, -1,
+ -1, 84, 85, 86, 87, -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, 119, -1, -1, -1, -1, -1, 12, 13,
+ 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, -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, 84, 85, 86, -1, -1, -1, 12, 13, 14,
+ 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15,
+ -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,
- 116, 117, 118, 119, 120, 121, 3, -1, 124, -1,
- 126, 127, 128, 129, -1, 12, -1, -1, -1, -1,
- 17, 18, -1, -1, -1, -1, -1, -1, -1, -1,
- 27, 28, 29, 30, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 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, 72, 73, 74, 75, 76,
- 36, 37, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 47, -1, -1, -1, -1, -1, 94, -1, 96,
- -1, 98, 99, 100, 101, -1, -1, -1, 105, 106,
- 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
- 117, 118, 119, 120, -1, -1, -1, -1, -1, 126,
- -1, 128, -1, 89, 90, 91, 92, 93, 94, 95,
- -1, 97, 4, 5, 6, 7, 8, 9, 10, 11,
- -1, -1, -1, -1, -1, 17, -1, 19, 20, 21,
- 22, 23, 24, 25, 26, 121, -1, -1, 30, -1,
- 126, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, -1, -1, -1, -1, 17, 18, 19, 20, 21,
- 22, 23, 24, 25, 26, -1, -1, -1, 30, 31,
- -1, 33, -1, 35, -1, -1, 38, -1, 70, -1,
+ 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
+ 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13,
+ 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14,
+ 15, -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, 53, 54, 55, -1, -1, -1, -1, 90, 91,
- 92, 93, -1, -1, 66, 67, -1, -1, -1, -1,
- 72, 73, 74, 75, 76, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
- 92, 93, 94, -1, 96, -1, 98, 99, 100, 101,
- -1, -1, -1, 105, 106, 107, 108, 109, 110, 111,
- 112, 113, 114, 115, 116, 117, 118, 119, 120, 3,
- -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
- -1, -1, -1, 17, 18, -1, -1, -1, -1, -1,
- -1, -1, -1, 27, -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, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 66, 67, -1, -1, -1, -1, 72, 73,
- 74, 75, 76, -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, 13, 14, 15, -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, 13, 14, 15, -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,
- 94, -1, 96, -1, 98, 99, 100, 101, -1, -1,
- -1, 105, 106, 107, 108, 109, 110, 111, 112, 113,
- 114, 115, 116, 117, 118, 119, 120, 3, -1, -1,
- -1, -1, -1, -1, -1, -1, 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, 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, 13, 14, 15,
+ -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,
- 66, 67, -1, -1, 70, -1, 72, 73, 74, 75,
- 76, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
- 96, -1, 98, 99, 100, 101, -1, -1, -1, 105,
+ -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,
- 116, 117, 118, 119, 120, 3, -1, -1, -1, -1,
- -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
- 18, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 30, 31, 32, 33, -1, 35, -1, -1,
- 38, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 50, -1, -1, 53, 54, 55, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 66, 67,
- -1, -1, -1, -1, 72, 73, 74, 75, 76, -1,
+ 3, -1, 118, -1, -1, -1, -1, -1, -1, 12,
+ 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13,
+ 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14,
+ 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15,
+ -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,
+ 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13,
+ 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14,
+ 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15,
+ -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,
+ 13, 14, 15, -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, -1, -1, 94, -1, 96, -1,
- 98, 99, 100, 101, -1, -1, -1, 105, 106, 107,
- 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
- 118, 119, 120, 3, -1, -1, -1, -1, -1, -1,
- -1, -1, 12, -1, -1, -1, -1, 17, 18, -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, -1, -1, 118, 3, 4, 5, 6,
+ 7, 8, 9, 10, 11, 12, 13, 14, 15, -1,
+ 17, 18, 19, -1, -1, 22, 23, -1, 25, -1,
+ 27, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 30, 31, -1, 33, -1, 35, -1, -1, 38, -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, 13,
+ 14, 15, -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,
- 50, -1, -1, 53, 54, 55, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 66, 67, -1, -1,
- -1, -1, 72, 73, 74, 75, 76, -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, 94, -1, 96, -1, 98, 99,
- 100, 101, -1, -1, -1, 105, 106, 107, 108, 109,
- 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
- 120, 3, -1, -1, -1, -1, -1, -1, -1, -1,
- 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
- -1, -1, -1, -1, -1, 27, -1, -1, 30, 31,
- -1, 33, -1, 35, -1, -1, 38, -1, -1, -1,
- -1, 4, 5, 6, 7, 8, 9, 10, 11, -1,
- -1, 53, 54, 55, 17, -1, 19, 20, 21, 22,
- 23, 24, 25, 26, 66, 67, -1, 30, 3, -1,
- 72, 73, 74, 75, 76, -1, -1, 12, -1, -1,
- 43, -1, 17, 18, 19, 20, 21, 22, 23, 24,
- 25, 26, 94, -1, 96, 30, 98, 99, 100, 101,
- -1, -1, -1, 105, 106, 107, 108, 109, 110, 111,
- 112, 113, 114, 115, 116, 117, 118, 119, 120, -1,
- 55, -1, -1, -1, -1, -1, -1, 90, 91, 92,
- 93, -1, -1, -1, -1, -1, -1, 72, 73, 74,
- 75, 76, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
- -1, 96, -1, 98, 99, 100, 101, -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, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14,
+ 15, -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, 116, 117, 118, 119, 120, 3, -1, -1, -1,
- -1, -1, -1, -1, -1, 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, -1, -1, -1, 53, 54, 55, -1,
+ 115, 3, -1, -1, -1, -1, -1, -1, -1, -1,
+ 12, 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15,
+ -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,
+ 13, 14, 15, -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, 13, 14, 15, -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, 13, 14, 15, -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, -1, -1, -1, -1, 72, 73, 74, 75, 76,
+ 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, -1, 94, -1, 96,
- -1, 98, 99, 100, 101, -1, -1, -1, 105, 106,
- 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
- 117, 118, 119, 120, 3, -1, -1, -1, -1, -1,
- -1, -1, -1, 12, -1, -1, -1, -1, 17, 18,
+ 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, 13,
+ 14, 15, -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, 30, -1, -1, 33, -1, 35, -1, -1, 38,
+ -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, 13, 14, 15, -1, 17, 18, -1, -1,
+ -1, 22, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 35, -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, 53, 54, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 66, 67, -1,
- -1, -1, -1, 72, 73, 74, 75, 76, -1, -1,
- -1, -1, -1, -1, -1, 84, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 94, -1, 96, -1, 98,
- 99, 100, 101, -1, -1, -1, 105, 106, 107, 108,
- 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
- 119, 120, 3, -1, -1, -1, -1, -1, -1, -1,
- -1, 12, -1, -1, -1, -1, 17, 18, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 30,
- -1, -1, -1, -1, -1, -1, -1, 38, -1, -1,
+ -1, -1, -1, -1, -1, 66, 67, 68, 69, 70,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 3, -1, -1, 55, -1, -1, -1, -1, -1,
- 12, -1, -1, -1, -1, 17, 18, -1, -1, -1,
- -1, 72, 73, 74, 75, 76, -1, -1, 30, -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, 13, 14, 15, 33, 17,
+ 18, -1, -1, -1, 22, -1, -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, 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, -1,
- -1, -1, -1, 94, -1, 96, -1, 98, 99, 100,
- 101, -1, -1, 55, 105, 106, 107, 108, 109, 110,
- 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
- 72, 73, 74, 75, 76, -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, 13, 14,
+ 15, -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,
- -1, -1, 94, -1, 96, -1, 98, 99, 100, 101,
- -1, -1, -1, 105, 106, 107, 108, 109, 110, 111,
- 112, 113, 114, 115, 116, 117, 118, 119, 120, 3,
- -1, -1, -1, -1, -1, -1, -1, -1, 12, -1,
- -1, -1, -1, 17, 18, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 30, -1, -1, -1,
- -1, -1, -1, -1, 38, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 3, -1,
- -1, -1, -1, -1, -1, -1, -1, 12, -1, -1,
- -1, -1, 17, 18, -1, -1, -1, -1, 72, 73,
- 74, 75, 76, -1, -1, 30, -1, -1, -1, -1,
- -1, -1, -1, 38, -1, -1, -1, -1, -1, -1,
- 94, -1, 96, -1, 98, 99, 100, 101, -1, -1,
- -1, 105, 106, 107, 108, 109, 110, 111, 112, 113,
- 114, 115, 116, 117, 118, 119, 120, 72, 73, 74,
- 75, 76, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
- -1, 96, -1, 98, 99, 100, 101, -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, 116, 117, 118, 119, 120, 3, -1, -1, -1,
- -1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
- 17, 18, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 30, -1, -1, -1, -1, -1, -1,
- -1, 38, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 3, -1, -1, -1, -1,
- -1, -1, -1, -1, 12, -1, -1, -1, -1, 17,
- 18, -1, -1, -1, -1, 72, 73, 74, 75, 76,
- -1, -1, 30, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 94, -1, 96,
- -1, 98, 99, 100, 101, -1, -1, -1, 105, 106,
- 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
- 117, 118, 119, 120, 72, 73, 74, 75, 76, -1,
+ 115, 3, -1, -1, -1, -1, -1, -1, -1, -1,
+ 12, 13, 14, 15, -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,
+ 13, 14, 15, -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, -1, 94, -1, 96, -1,
- 98, 99, 100, 101, -1, -1, -1, 105, 106, 107,
- 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
- 118, 119, 120, 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,
- 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, 4, 5, 6,
- 7, 8, 9, 10, 11, -1, -1, -1, -1, 70,
- 17, -1, 19, 20, 21, 22, 23, 24, 25, 26,
- -1, -1, -1, 30, -1, -1, -1, -1, -1, 90,
- 91, 92, 93, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 4, 5, 6,
- 7, 8, 9, 10, 11, -1, 90, 91, 92, 93,
- 17, -1, 19, 20, 21, 22, 23, 24, 25, 26,
- -1, -1, -1, 30, 4, 5, 6, 7, 8, 9,
- 10, 11, -1, 90, 91, 92, 93, 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, -1, -1, 90, 91, 92, 93, -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, 13, 14, 15, 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, -1, -1, -1, -1, -1, 65, -1, -1, 49,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 4, 5, 6, 7, 8, 9, 10, 11, -1,
- 90, 91, 92, 93, 17, -1, 19, 20, 21, 22,
- 23, 24, 25, 26, -1, -1, -1, 30, 4, 5,
- 6, 7, 8, 9, 10, 11, -1, 90, 91, 92,
- 93, -1, -1, 19, 20, 21, 22, 23, 24, 25,
- 26, 39, -1, -1, 30, -1, -1, -1, -1, -1,
- 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, -1, -1,
- -1, -1, 40, 71, -1, -1, -1, 90, 91, 92,
- 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, -1, -1,
- 41, -1, -1, 71, 90, 91, 92, 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, 3, -1, -1, -1, 66, 67, 68, 69,
+ 70, 12, 13, 14, 15, -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, 13, 14, 15, -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, -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 yystos[] =
{
0, 4, 5, 6, 7, 8, 9, 10, 11, 17,
- 19, 20, 21, 22, 23, 24, 25, 26, 30, 36,
- 37, 47, 89, 90, 91, 92, 93, 94, 95, 97,
- 121, 126, 137, 138, 139, 140, 141, 159, 164, 166,
- 167, 168, 169, 170, 171, 172, 173, 174, 179, 182,
- 183, 186, 187, 188, 189, 190, 191, 193, 195, 196,
- 200, 205, 215, 216, 9, 11, 3, 12, 17, 18,
- 30, 38, 55, 72, 73, 74, 75, 76, 94, 96,
- 98, 99, 100, 101, 105, 106, 107, 108, 109, 110,
- 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
- 135, 213, 214, 231, 241, 30, 90, 91, 92, 93,
- 187, 193, 36, 72, 73, 74, 75, 76, 77, 78,
- 79, 80, 81, 82, 83, 85, 86, 87, 88, 142,
- 143, 144, 145, 147, 148, 149, 90, 91, 165, 166,
- 188, 189, 193, 200, 206, 207, 135, 135, 135, 208,
- 3, 6, 10, 12, 17, 160, 161, 167, 34, 216,
- 50, 249, 250, 30, 186, 0, 139, 135, 194, 212,
- 213, 4, 5, 6, 9, 175, 6, 172, 178, 37,
- 129, 180, 38, 38, 42, 42, 212, 213, 38, 135,
- 55, 128, 135, 135, 135, 40, 184, 27, 28, 29,
- 126, 128, 135, 150, 151, 36, 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, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, 83, 84, 85, 87,
- 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, 121, 124, 126, 127, 128, 129, 136, 154,
- 155, 154, 34, 124, 146, 135, 150, 33, 35, 38,
- 53, 54, 66, 67, 84, 134, 135, 156, 135, 208,
- 135, 208, 37, 171, 135, 41, 210, 210, 210, 210,
- 213, 31, 37, 42, 31, 180, 44, 211, 38, 135,
- 6, 176, 6, 9, 177, 175, 38, 37, 17, 192,
- 193, 192, 135, 201, 202, 98, 99, 100, 101, 102,
- 103, 104, 222, 223, 224, 237, 238, 244, 245, 246,
- 135, 212, 185, 194, 213, 123, 154, 136, 156, 38,
- 135, 156, 38, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 71, 133, 41, 42, 198, 198, 37, 197, 198,
- 197, 38, 135, 46, 222, 38, 37, 33, 212, 211,
- 34, 181, 39, 40, 39, 40, 46, 40, 43, 194,
- 227, 31, 33, 35, 38, 134, 194, 203, 204, 219,
- 239, 240, 241, 249, 194, 135, 247, 248, 18, 240,
- 241, 43, 223, 203, 39, 135, 40, 38, 39, 135,
- 156, 157, 158, 156, 156, 38, 165, 199, 194, 194,
- 212, 27, 28, 29, 33, 34, 162, 163, 43, 3,
- 6, 10, 12, 13, 14, 15, 16, 17, 39, 217,
- 218, 220, 221, 45, 135, 34, 39, 211, 17, 70,
- 193, 211, 70, 203, 202, 46, 37, 30, 93, 166,
- 203, 203, 71, 133, 46, 37, 38, 32, 46, 38,
- 37, 40, 37, 37, 39, 194, 135, 152, 153, 39,
- 39, 40, 41, 33, 40, 41, 209, 43, 165, 135,
- 37, 41, 39, 40, 219, 39, 39, 39, 27, 96,
- 114, 203, 226, 228, 229, 230, 231, 250, 39, 39,
- 203, 203, 239, 194, 249, 185, 248, 39, 40, 156,
- 156, 40, 185, 41, 37, 40, 209, 39, 220, 41,
- 218, 220, 46, 211, 211, 17, 18, 231, 234, 38,
- 38, 226, 203, 41, 40, 242, 194, 39, 154, 135,
- 33, 37, 38, 185, 37, 220, 249, 162, 38, 203,
- 219, 203, 70, 239, 243, 39, 37, 39, 33, 37,
- 70, 219, 40, 40, 232, 39, 40, 40, 32, 38,
- 203, 194, 225, 226, 227, 233, 250, 39, 239, 33,
- 39, 235, 236, 239, 39, 40, 226, 39, 41, 39,
- 40, 225, 220, 39, 239
+ 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, 195, 199, 200, 201, 202,
+ 204, 206, 210, 212, 213, 219, 227, 241, 242, 9,
+ 11, 22, 84, 85, 86, 87, 123, 200, 210, 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, 201, 202,
+ 210, 219, 228, 229, 3, 12, 13, 14, 15, 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, 260, 272, 143, 143, 230, 3, 6, 10,
+ 12, 13, 23, 247, 249, 26, 123, 242, 44, 280,
+ 281, 22, 83, 89, 123, 199, 0, 148, 49, 143,
+ 176, 211, 236, 237, 238, 239, 177, 4, 5, 6,
+ 9, 22, 184, 6, 181, 187, 200, 125, 189, 32,
+ 32, 36, 36, 143, 143, 143, 34, 192, 88, 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, 13, 14, 15, 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, 224, 143,
+ 230, 143, 230, 173, 31, 143, 35, 233, 233, 233,
+ 233, 40, 23, 31, 36, 23, 171, 123, 189, 29,
+ 87, 240, 38, 234, 32, 143, 124, 239, 6, 185,
+ 6, 9, 186, 184, 36, 196, 32, 31, 17, 175,
+ 203, 205, 207, 208, 209, 210, 207, 143, 220, 221,
+ 92, 93, 94, 95, 96, 98, 99, 251, 252, 253,
+ 266, 269, 275, 276, 277, 193, 211, 237, 189, 26,
+ 26, 118, 164, 190, 162, 144, 26, 27, 32, 44,
+ 226, 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, 215, 215,
+ 31, 214, 215, 214, 19, 20, 21, 23, 25, 27,
+ 32, 142, 168, 169, 190, 211, 222, 223, 224, 40,
+ 251, 32, 31, 31, 19, 29, 87, 124, 222, 235,
+ 236, 237, 234, 6, 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, 196, 197, 198, 190, 236, 32, 33, 34, 34,
+ 33, 34, 40, 34, 231, 211, 256, 222, 245, 270,
+ 271, 272, 280, 211, 143, 278, 279, 211, 267, 271,
+ 37, 252, 222, 34, 31, 31, 32, 26, 177, 225,
+ 226, 22, 33, 143, 119, 164, 165, 166, 164, 164,
+ 32, 121, 172, 173, 174, 175, 216, 219, 228, 229,
+ 211, 211, 17, 22, 175, 222, 222, 31, 65, 141,
+ 168, 37, 14, 15, 16, 17, 33, 243, 244, 246,
+ 248, 249, 250, 39, 39, 32, 143, 37, 198, 33,
+ 32, 234, 207, 234, 64, 209, 234, 64, 222, 221,
+ 37, 40, 31, 40, 31, 32, 24, 40, 32, 31,
+ 34, 32, 31, 31, 211, 64, 143, 160, 161, 236,
+ 33, 33, 33, 34, 35, 25, 174, 35, 232, 37,
+ 172, 233, 233, 33, 33, 222, 222, 31, 35, 33,
+ 34, 245, 236, 32, 33, 236, 33, 34, 33, 33,
+ 19, 89, 90, 109, 222, 255, 257, 258, 259, 260,
+ 281, 270, 211, 280, 193, 279, 17, 193, 268, 33,
+ 34, 164, 164, 34, 25, 35, 34, 217, 232, 215,
+ 215, 222, 35, 246, 35, 244, 246, 40, 143, 207,
+ 33, 234, 64, 234, 234, 109, 257, 17, 18, 32,
+ 260, 263, 32, 32, 255, 34, 273, 211, 33, 33,
+ 162, 64, 143, 25, 35, 32, 211, 218, 232, 31,
+ 217, 222, 246, 280, 168, 33, 33, 33, 268, 32,
+ 222, 245, 64, 270, 274, 33, 31, 97, 33, 35,
+ 25, 232, 34, 31, 64, 32, 33, 234, 33, 245,
+ 34, 34, 261, 33, 34, 18, 271, 272, 32, 34,
+ 211, 232, 24, 207, 32, 97, 32, 222, 211, 254,
+ 255, 256, 262, 281, 33, 270, 25, 25, 232, 33,
+ 33, 207, 263, 264, 265, 270, 33, 34, 255, 34,
+ 33, 35, 33, 33, 32, 33, 34, 254, 25, 246,
+ 32, 234, 245, 33, 270, 33, 207, 32, 33, 264,
+ 234, 33, 33
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-static const unsigned char yyr1[] =
+static const unsigned short yyr1[] =
{
- 0, 132, 133, 133, 133, 133, 133, 133, 133, 133,
- 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
- 134, 134, 134, 134, 135, 135, 135, 135, 135, 135,
- 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
- 135, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 136, 137, 137, 138, 138, 139, 139, 139,
- 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
- 140, 141, 141, 142, 142, 142, 142, 142, 142, 142,
- 142, 143, 143, 144, 144, 145, 145, 145, 146, 146,
- 147, 147, 148, 148, 148, 149, 149, 150, 150, 150,
- 150, 150, 150, 151, 151, 152, 152, 153, 153, 154,
- 154, 155, 155, 156, 156, 156, 156, 156, 156, 156,
- 156, 156, 156, 157, 157, 158, 158, 159, 160, 161,
- 161, 161, 161, 162, 162, 163, 163, 163, 163, 163,
- 164, 165, 165, 165, 165, 165, 165, 166, 166, 167,
- 167, 168, 168, 168, 169, 169, 169, 169, 170, 170,
- 170, 171, 171, 171, 171, 171, 171, 171, 171, 172,
- 172, 173, 173, 173, 174, 174, 174, 174, 175, 175,
- 175, 175, 175, 176, 176, 177, 177, 177, 178, 178,
- 178, 179, 179, 180, 180, 181, 181, 182, 183, 184,
- 184, 185, 185, 186, 186, 187, 187, 188, 188, 189,
- 189, 190, 190, 190, 190, 191, 191, 192, 192, 192,
- 192, 193, 193, 193, 193, 194, 194, 195, 196, 197,
- 197, 198, 199, 199, 199, 199, 200, 201, 201, 202,
- 202, 203, 203, 203, 203, 203, 203, 204, 204, 204,
- 204, 205, 206, 207, 208, 208, 209, 209, 210, 210,
- 211, 211, 212, 212, 213, 213, 214, 214, 215, 215,
- 216, 216, 216, 217, 217, 218, 218, 219, 220, 221,
- 221, 221, 221, 221, 221, 221, 221, 221, 222, 222,
- 223, 223, 223, 223, 223, 224, 224, 225, 225, 225,
- 226, 226, 226, 226, 226, 227, 227, 228, 229, 230,
- 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
- 232, 232, 233, 233, 234, 234, 235, 235, 236, 236,
- 237, 238, 239, 239, 239, 240, 240, 241, 241, 241,
- 241, 241, 241, 241, 241, 242, 242, 243, 243, 244,
- 245, 245, 246, 247, 247, 248, 249, 249, 250
+ 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, 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, 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, 166, 167, 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, 195, 195, 195, 195, 195, 195, 196,
+ 197, 197, 198, 198, 199, 199, 200, 200, 201, 201,
+ 202, 202, 202, 202, 203, 203, 204, 205, 206, 207,
+ 207, 207, 208, 208, 209, 209, 209, 210, 210, 211,
+ 211, 212, 213, 214, 214, 215, 216, 216, 217, 217,
+ 218, 218, 218, 218, 219, 220, 220, 221, 221, 222,
+ 222, 222, 222, 222, 222, 223, 223, 223, 223, 223,
+ 223, 224, 224, 225, 225, 226, 226, 226, 227, 228,
+ 229, 230, 230, 231, 231, 232, 232, 232, 232, 233,
+ 233, 234, 234, 234, 235, 235, 235, 235, 236, 236,
+ 237, 237, 238, 238, 239, 239, 240, 240, 241, 241,
+ 242, 242, 242, 243, 243, 244, 244, 245, 246, 247,
+ 248, 248, 249, 249, 249, 249, 249, 250, 250, 250,
+ 250, 251, 251, 252, 252, 252, 252, 252, 253, 253,
+ 254, 254, 254, 255, 255, 255, 255, 255, 255, 256,
+ 256, 257, 258, 258, 259, 260, 260, 260, 260, 260,
+ 260, 260, 260, 260, 260, 261, 261, 262, 262, 263,
+ 263, 264, 264, 265, 265, 266, 267, 267, 268, 268,
+ 268, 269, 270, 270, 270, 271, 271, 272, 272, 272,
+ 272, 272, 272, 272, 272, 273, 273, 274, 274, 275,
+ 276, 276, 277, 278, 278, 279, 280, 280, 281
};
/* 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, 0, 1, 1, 2, 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, 1, 1, 1,
- 1, 1, 1, 6, 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, 3, 4, 0, 4, 1, 2, 2, 3, 0,
- 2, 1, 3, 1, 2, 1, 1, 5, 7, 5,
- 7, 6, 7, 6, 5, 1, 2, 0, 1, 1,
- 3, 1, 2, 4, 3, 3, 2, 4, 4, 1,
- 1, 3, 3, 4, 4, 5, 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, 1, 2, 4, 5,
+ 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, 5,
+ 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, 1, 3, 6, 5, 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, 5, 0, 2,
+ 1, 3, 3, 1, 2, 2, 3, 1, 2, 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, 3, 1, 2, 3,
+ 2, 4, 4, 1, 1, 3, 4, 5, 0, 2,
+ 2, 4, 1, 3, 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, 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, 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, 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, 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, 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, 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
};
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 short int yyconflp[] =
+static const unsigned short 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, 5, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 15, 0, 0, 0, 0, 0, 3716,
+ 0, 0, 3718, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 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, 13, 0, 3698, 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, 169, 0, 3708, 0, 3710,
+ 3712, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3720, 0, 3722, 3724, 0, 0,
+ 0, 9, 0, 0, 0, 11, 0, 0, 0, 0,
+ 0, 0, 3702, 3704, 0, 0, 0, 0, 0, 3700,
+ 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, 3706,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3714, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3726, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 259, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
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, 9, 11, 13,
- 15, 17, 19, 21, 23, 25, 27, 29, 31, 33,
- 35, 37, 39, 41, 43, 45, 47, 49, 51, 53,
- 55, 57, 59, 61, 63, 65, 67, 69, 71, 73,
- 75, 77, 79, 81, 83, 85, 87, 89, 91, 93,
- 95, 97, 99, 101, 103, 105, 107, 109, 111, 113,
- 115, 117, 119, 121, 123, 125, 127, 129, 131, 133,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 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, 23, 25,
+ 27, 29, 0, 31, 33, 0, 0, 0, 35, 0,
+ 0, 0, 0, 0, 0, 37, 39, 41, 43, 45,
+ 47, 49, 51, 53, 55, 57, 59, 0, 61, 63,
+ 65, 67, 69, 71, 73, 75, 77, 79, 81, 83,
+ 85, 87, 89, 91, 93, 95, 0, 0, 0, 0,
+ 0, 97, 99, 101, 103, 105, 107, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 109, 111, 0, 113, 115, 117, 119,
+ 121, 123, 0, 125, 0, 0, 127, 129, 131, 133,
135, 137, 139, 141, 143, 145, 147, 149, 151, 153,
- 155, 157, 159, 161, 163, 165, 167, 169, 171, 173,
- 0, 175, 0, 177, 179, 181, 183, 185, 187, 189,
- 191, 193, 195, 197, 199, 201, 203, 205, 207, 209,
- 211, 213, 215, 217, 219, 221, 223, 225, 227, 229,
- 231, 233, 235, 237, 239, 241, 0, 243, 245, 0,
- 247, 249, 251, 253, 0, 0, 0, 0, 0, 0,
+ 155, 157, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 159, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 171,
+ 0, 0, 0, 0, 0, 0, 0, 0, 173, 175,
+ 177, 179, 0, 181, 183, 0, 0, 0, 185, 0,
+ 0, 187, 189, 191, 193, 0, 0, 0, 195, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 197, 199, 0, 0, 0, 161, 0,
+ 0, 0, 0, 163, 0, 0, 201, 203, 0, 0,
+ 165, 0, 205, 207, 209, 211, 213, 0, 0, 0,
+ 0, 0, 0, 0, 215, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 217, 0, 219, 221, 223, 225,
+ 227, 229, 0, 231, 0, 0, 233, 235, 237, 239,
+ 241, 243, 245, 247, 249, 251, 253, 255, 257, 259,
+ 261, 263, 265, 0, 0, 0, 0, 0, 167, 0,
+ 0, 267, 269, 271, 273, 0, 275, 277, 0, 0,
+ 0, 279, 0, 0, 281, 283, 285, 287, 0, 0,
+ 0, 289, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 291, 293, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 295,
+ 297, 0, 0, 0, 0, 299, 301, 303, 305, 307,
+ 0, 0, 0, 0, 0, 0, 0, 309, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 311, 0, 313,
+ 315, 317, 319, 321, 323, 0, 325, 0, 0, 327,
+ 329, 331, 333, 335, 337, 339, 341, 343, 345, 347,
+ 349, 351, 353, 355, 357, 359, 0, 0, 0, 0,
+ 0, 0, 0, 0, 361, 363, 365, 367, 0, 369,
+ 371, 0, 0, 0, 373, 0, 0, 375, 377, 379,
+ 381, 0, 0, 0, 383, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 385,
+ 387, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 389, 391, 0, 0, 0, 0, 393, 395,
+ 397, 399, 401, 0, 0, 0, 0, 0, 0, 0,
+ 403, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 405, 0, 407, 409, 411, 413, 415, 417, 0, 419,
+ 0, 0, 421, 423, 425, 427, 429, 431, 433, 435,
+ 437, 439, 441, 443, 445, 447, 449, 451, 453, 0,
+ 0, 0, 0, 0, 0, 0, 0, 455, 457, 459,
+ 461, 0, 463, 465, 0, 0, 0, 467, 0, 0,
+ 469, 471, 473, 475, 0, 0, 0, 477, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 479, 481, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 483, 485, 0, 0, 0,
+ 0, 487, 489, 491, 493, 495, 0, 0, 0, 0,
+ 0, 0, 0, 497, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 499, 0, 501, 503, 505, 507, 509,
+ 511, 0, 513, 0, 0, 515, 517, 519, 521, 523,
+ 525, 527, 529, 531, 533, 535, 537, 539, 541, 543,
+ 545, 547, 0, 0, 0, 0, 0, 0, 0, 0,
+ 549, 551, 553, 555, 0, 557, 559, 0, 0, 0,
+ 561, 0, 0, 563, 565, 567, 569, 0, 0, 0,
+ 571, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 573, 575, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 577, 579,
+ 0, 0, 0, 0, 581, 583, 585, 587, 589, 0,
+ 0, 0, 0, 0, 0, 0, 591, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 593, 0, 595, 597,
+ 599, 601, 603, 605, 0, 607, 0, 0, 609, 611,
+ 613, 615, 617, 619, 621, 623, 625, 627, 629, 631,
+ 633, 635, 637, 639, 641, 0, 0, 0, 0, 0,
+ 0, 0, 0, 643, 645, 647, 649, 0, 651, 653,
+ 0, 0, 0, 655, 0, 0, 657, 659, 661, 663,
+ 0, 0, 0, 665, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 667, 669,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 671, 673, 0, 0, 0, 0, 675, 677, 679,
+ 681, 683, 0, 0, 0, 0, 0, 0, 0, 685,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 687,
+ 0, 689, 691, 693, 695, 697, 699, 0, 701, 0,
+ 0, 703, 705, 707, 709, 711, 713, 715, 717, 719,
+ 721, 723, 725, 727, 729, 731, 733, 735, 0, 0,
+ 0, 0, 0, 0, 0, 0, 738, 741, 744, 747,
+ 0, 750, 753, 0, 0, 0, 756, 0, 0, 759,
+ 762, 765, 768, 0, 0, 0, 771, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 774, 777, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 780, 783, 0, 0, 0, 0,
+ 786, 789, 792, 795, 798, 0, 0, 0, 0, 0,
+ 0, 0, 801, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 804, 0, 807, 810, 813, 816, 819, 822,
+ 0, 825, 0, 0, 828, 831, 834, 837, 840, 843,
+ 846, 849, 852, 855, 858, 861, 864, 867, 870, 873,
+ 878, 0, 876, 0, 0, 0, 0, 0, 0, 880,
+ 882, 884, 886, 0, 888, 890, 0, 0, 0, 892,
+ 0, 0, 894, 896, 898, 900, 0, 0, 0, 902,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 904, 906, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 908, 910, 0,
+ 0, 0, 0, 912, 914, 916, 918, 920, 0, 0,
+ 0, 0, 0, 0, 0, 922, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 924, 0, 926, 928, 930,
+ 932, 934, 936, 0, 938, 0, 0, 940, 942, 944,
+ 946, 948, 950, 952, 954, 956, 958, 960, 962, 964,
+ 966, 968, 970, 972, 0, 0, 0, 0, 0, 0,
+ 0, 0, 974, 976, 978, 980, 0, 982, 984, 0,
+ 0, 0, 986, 0, 0, 988, 990, 992, 994, 0,
+ 0, 0, 996, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 998, 1000, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1002, 1004, 0, 0, 0, 0, 1006, 1008, 1010, 1012,
+ 1014, 0, 0, 0, 0, 0, 0, 0, 1016, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1018, 0,
+ 1020, 1022, 1024, 1026, 1028, 1030, 0, 1032, 0, 0,
+ 1034, 1036, 1038, 1040, 1042, 1044, 1046, 1048, 1050, 1052,
+ 1054, 1056, 1058, 1060, 1062, 1064, 1066, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1068, 1070, 1072, 1074, 0,
+ 1076, 1078, 0, 0, 0, 1080, 0, 0, 1082, 1084,
+ 1086, 1088, 0, 0, 0, 1090, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1092, 1094, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1096, 1098, 0, 0, 0, 0, 1100,
+ 1102, 1104, 1106, 1108, 0, 0, 0, 0, 0, 0,
+ 0, 1110, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 1114, 1116, 1118, 1120, 1122, 1124, 0,
+ 1126, 0, 0, 1128, 1130, 1132, 1134, 1136, 1138, 1140,
+ 1142, 1144, 1146, 1148, 1150, 1152, 1154, 1156, 1158, 1160,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1162, 1164,
+ 1166, 1168, 0, 1170, 1172, 0, 0, 0, 1174, 0,
+ 0, 1176, 1178, 1180, 1182, 0, 0, 0, 1184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1186, 1188, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1190, 1192, 0, 0,
+ 0, 0, 1194, 1196, 1198, 1200, 1202, 0, 0, 0,
+ 0, 0, 0, 0, 1204, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1206, 0, 1208, 1210, 1212, 1214,
+ 1216, 1218, 0, 1220, 0, 0, 1222, 1224, 1226, 1228,
+ 1230, 1232, 1234, 1236, 1238, 1240, 1242, 1244, 1246, 1248,
+ 1250, 1252, 1254, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1256, 1258, 1260, 1262, 0, 1264, 1266, 0, 0,
+ 0, 1268, 0, 0, 1270, 1272, 1274, 1276, 0, 0,
+ 0, 1278, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1280, 1282, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1284,
+ 1286, 0, 0, 0, 0, 1288, 1290, 1292, 1294, 1296,
+ 0, 0, 0, 0, 0, 0, 0, 1298, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1300, 0, 1302,
+ 1304, 1306, 1308, 1310, 1312, 0, 1314, 0, 0, 1316,
+ 1318, 1320, 1322, 1324, 1326, 1328, 1330, 1332, 1334, 1336,
+ 1338, 1340, 1342, 1344, 1346, 1348, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1350, 1352, 1354, 1356, 0, 1358,
+ 1360, 0, 0, 0, 1362, 0, 0, 1364, 1366, 1368,
+ 1370, 0, 0, 0, 1372, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1374,
+ 1376, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1378, 1380, 0, 0, 0, 0, 1382, 1384,
+ 1386, 1388, 1390, 0, 0, 0, 0, 0, 0, 0,
+ 1392, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1394, 0, 1396, 1398, 1400, 1402, 1404, 1406, 0, 1408,
+ 0, 0, 1410, 1412, 1414, 1416, 1418, 1420, 1422, 1424,
+ 1426, 1428, 1430, 1432, 1434, 1436, 1438, 1440, 1442, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1444, 1446, 1448,
+ 1450, 0, 1452, 1454, 0, 0, 0, 1456, 0, 0,
+ 1458, 1460, 1462, 1464, 0, 0, 0, 1466, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1468, 1470, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1472, 1474, 0, 0, 0,
+ 0, 1476, 1478, 1480, 1482, 1484, 0, 0, 0, 0,
+ 0, 0, 0, 1486, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1488, 0, 1490, 1492, 1494, 1496, 1498,
+ 1500, 0, 1502, 0, 0, 1504, 1506, 1508, 1510, 1512,
+ 1514, 1516, 1518, 1520, 1522, 1524, 1526, 1528, 1530, 1532,
+ 1534, 1536, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1538, 1540, 1542, 1544, 0, 1546, 1548, 0, 0, 0,
+ 1550, 0, 0, 1552, 1554, 1556, 1558, 0, 0, 0,
+ 1560, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1562, 1564, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1566, 1568,
+ 0, 0, 0, 0, 1570, 1572, 1574, 1576, 1578, 0,
+ 0, 0, 0, 0, 0, 0, 1580, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1582, 0, 1584, 1586,
+ 1588, 1590, 1592, 1594, 0, 1596, 0, 0, 1598, 1600,
+ 1602, 1604, 1606, 1608, 1610, 1612, 1614, 1616, 1618, 1620,
+ 1622, 1624, 1626, 1628, 1630, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1632, 1634, 1636, 1638, 0, 1640, 1642,
+ 0, 0, 0, 1644, 0, 0, 1646, 1648, 1650, 1652,
+ 0, 0, 0, 1654, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1656, 1658,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1660, 1662, 0, 0, 0, 0, 1664, 1666, 1668,
+ 1670, 1672, 0, 0, 0, 0, 0, 0, 0, 1674,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1676,
+ 0, 1678, 1680, 1682, 1684, 1686, 1688, 0, 1690, 0,
+ 0, 1692, 1694, 1696, 1698, 1700, 1702, 1704, 1706, 1708,
+ 1710, 1712, 1714, 1716, 1718, 1720, 1722, 1724, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1726, 1728, 1730, 1732,
+ 0, 1734, 1736, 0, 0, 0, 1738, 0, 0, 1740,
+ 1742, 1744, 1746, 0, 0, 0, 1748, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1750, 1752, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1754, 1756, 0, 0, 0, 0,
+ 1758, 1760, 1762, 1764, 1766, 0, 0, 0, 0, 0,
+ 0, 0, 1768, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1770, 0, 1772, 1774, 1776, 1778, 1780, 1782,
+ 0, 1784, 0, 0, 1786, 1788, 1790, 1792, 1794, 1796,
+ 1798, 1800, 1802, 1804, 1806, 1808, 1810, 1812, 1814, 1816,
+ 1818, 0, 0, 0, 0, 0, 0, 0, 0, 1820,
+ 1822, 1824, 1826, 0, 1828, 1830, 0, 0, 0, 1832,
+ 0, 0, 1834, 1836, 1838, 1840, 0, 0, 0, 1842,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1844, 1846, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1848, 1850, 0,
+ 0, 0, 0, 1852, 1854, 1856, 1858, 1860, 0, 0,
+ 0, 0, 0, 0, 0, 1862, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1864, 0, 1866, 1868, 1870,
+ 1872, 1874, 1876, 0, 1878, 0, 0, 1880, 1882, 1884,
+ 1886, 1888, 1890, 1892, 1894, 1896, 1898, 1900, 1902, 1904,
+ 1906, 1908, 1910, 1912, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1914, 1916, 1918, 1920, 0, 1922, 1924, 0,
+ 0, 0, 1926, 0, 0, 1928, 1930, 1932, 1934, 0,
+ 0, 0, 1936, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1938, 1940, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1942, 1944, 0, 0, 0, 0, 1946, 1948, 1950, 1952,
+ 1954, 0, 0, 0, 0, 0, 0, 0, 1956, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1958, 0,
+ 1960, 1962, 1964, 1966, 1968, 1970, 0, 1972, 0, 0,
+ 1974, 1976, 1978, 1980, 1982, 1984, 1986, 1988, 1990, 1992,
+ 1994, 1996, 1998, 2000, 2002, 2004, 2006, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2008, 2010, 2012, 2014, 0,
+ 2016, 2018, 0, 0, 0, 2020, 0, 0, 2022, 2024,
+ 2026, 2028, 0, 0, 0, 2030, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2032, 2034, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2036, 2038, 0, 0, 0, 0, 2040,
+ 2042, 2044, 2046, 2048, 0, 0, 0, 0, 0, 0,
+ 0, 2050, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2052, 0, 2054, 2056, 2058, 2060, 2062, 2064, 0,
+ 2066, 0, 0, 2068, 2070, 2072, 2074, 2076, 2078, 2080,
+ 2082, 2084, 2086, 2088, 2090, 2092, 2094, 2096, 2098, 2100,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2102, 2104,
+ 2106, 2108, 0, 2110, 2112, 0, 0, 0, 2114, 0,
+ 0, 2116, 2118, 2120, 2122, 0, 0, 0, 2124, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2126, 2128, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2130, 2132, 0, 0,
+ 0, 0, 2134, 2136, 2138, 2140, 2142, 0, 0, 0,
+ 0, 0, 0, 0, 2144, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2146, 0, 2148, 2150, 2152, 2154,
+ 2156, 2158, 0, 2160, 0, 0, 2162, 2164, 2166, 2168,
+ 2170, 2172, 2174, 2176, 2178, 2180, 2182, 2184, 2186, 2188,
+ 2190, 2192, 2194, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2196, 2198, 2200, 2202, 0, 2204, 2206, 0, 0,
+ 0, 2208, 0, 0, 2210, 2212, 2214, 2216, 0, 0,
+ 0, 2218, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2220, 2222, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2224,
+ 2226, 0, 0, 0, 0, 2228, 2230, 2232, 2234, 2236,
+ 0, 0, 0, 0, 0, 0, 0, 2238, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2240, 0, 2242,
+ 2244, 2246, 2248, 2250, 2252, 0, 2254, 0, 0, 2256,
+ 2258, 2260, 2262, 2264, 2266, 2268, 2270, 2272, 2274, 2276,
+ 2278, 2280, 2282, 2284, 2286, 2288, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2290, 2292, 2294, 2296, 0, 2298,
+ 2300, 0, 0, 0, 2302, 0, 0, 2304, 2306, 2308,
+ 2310, 0, 0, 0, 2312, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2314,
+ 2316, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2318, 2320, 0, 0, 0, 0, 2322, 2324,
+ 2326, 2328, 2330, 0, 0, 0, 0, 0, 0, 0,
+ 2332, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2334, 0, 2336, 2338, 2340, 2342, 2344, 2346, 0, 2348,
+ 0, 0, 2350, 2352, 2354, 2356, 2358, 2360, 2362, 2364,
+ 2366, 2368, 2370, 2372, 2374, 2376, 2378, 2380, 2382, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2384, 2386, 2388,
+ 2390, 0, 2392, 2394, 0, 0, 0, 2396, 0, 0,
+ 2398, 2400, 2402, 2404, 0, 0, 0, 2406, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2408, 2410, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2412, 2414, 0, 0, 0,
+ 0, 2416, 2418, 2420, 2422, 2424, 0, 0, 0, 0,
+ 0, 0, 0, 2426, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2428, 0, 2430, 2432, 2434, 2436, 2438,
+ 2440, 0, 2442, 0, 0, 2444, 2446, 2448, 2450, 2452,
+ 2454, 2456, 2458, 2460, 2462, 2464, 2466, 2468, 2470, 2472,
+ 2474, 2476, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2478, 2480, 2482, 2484, 0, 2486, 2488, 0, 0, 0,
+ 2490, 0, 0, 2492, 2494, 2496, 2498, 0, 0, 0,
+ 2500, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2502, 2504, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2506, 2508,
+ 0, 0, 0, 0, 2510, 2512, 2514, 2516, 2518, 0,
+ 0, 0, 0, 0, 0, 0, 2520, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2522, 0, 2524, 2526,
+ 2528, 2530, 2532, 2534, 0, 2536, 0, 0, 2538, 2540,
+ 2542, 2544, 2546, 2548, 2550, 2552, 2554, 2556, 2558, 2560,
+ 2562, 2564, 2566, 2568, 2570, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2572, 2574, 2576, 2578, 0, 2580, 2582,
+ 0, 0, 0, 2584, 0, 0, 2586, 2588, 2590, 2592,
+ 0, 0, 0, 2594, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2596, 2598,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2600, 2602, 0, 0, 0, 0, 2604, 2606, 2608,
+ 2610, 2612, 0, 0, 0, 0, 0, 0, 0, 2614,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2616,
+ 0, 2618, 2620, 2622, 2624, 2626, 2628, 0, 2630, 0,
+ 0, 2632, 2634, 2636, 2638, 2640, 2642, 2644, 2646, 2648,
+ 2650, 2652, 2654, 2656, 2658, 2660, 2662, 2664, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2666, 2668, 2670, 2672,
+ 0, 2674, 2676, 0, 0, 0, 2678, 0, 0, 2680,
+ 2682, 2684, 2686, 0, 0, 0, 2688, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2690, 2692, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2694, 2696, 0, 0, 0, 0,
+ 2698, 2700, 2702, 2704, 2706, 0, 0, 0, 0, 0,
+ 0, 0, 2708, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2710, 0, 2712, 2714, 2716, 2718, 2720, 2722,
+ 0, 2724, 0, 0, 2726, 2728, 2730, 2732, 2734, 2736,
+ 2738, 2740, 2742, 2744, 2746, 2748, 2750, 2752, 2754, 2756,
+ 2758, 0, 0, 0, 0, 0, 0, 0, 0, 2760,
+ 2762, 2764, 2766, 0, 2768, 2770, 0, 0, 0, 2772,
+ 0, 0, 2774, 2776, 2778, 2780, 0, 0, 0, 2782,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2784, 2786, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2788, 2790, 0,
+ 0, 0, 0, 2792, 2794, 2796, 2798, 2800, 0, 0,
+ 0, 0, 0, 0, 0, 2802, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2804, 0, 2806, 2808, 2810,
+ 2812, 2814, 2816, 0, 2818, 0, 0, 2820, 2822, 2824,
+ 2826, 2828, 2830, 2832, 2834, 2836, 2838, 2840, 2842, 2844,
+ 2846, 2848, 2850, 2852, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2854, 2856, 2858, 2860, 0, 2862, 2864, 0,
+ 0, 0, 2866, 0, 0, 2868, 2870, 2872, 2874, 0,
+ 0, 0, 2876, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2878, 2880, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2882, 2884, 0, 0, 0, 0, 2886, 2888, 2890, 2892,
+ 2894, 0, 0, 0, 0, 0, 0, 0, 2896, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2898, 0,
+ 2900, 2902, 2904, 2906, 2908, 2910, 0, 2912, 0, 0,
+ 2914, 2916, 2918, 2920, 2922, 2924, 2926, 2928, 2930, 2932,
+ 2934, 2936, 2938, 2940, 2942, 2944, 2946, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2948, 2950, 2952, 2954, 0,
+ 2956, 2958, 0, 0, 0, 2960, 0, 0, 2962, 2964,
+ 2966, 2968, 0, 0, 0, 2970, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2972, 2974, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2976, 2978, 0, 0, 0, 0, 2980,
+ 2982, 2984, 2986, 2988, 0, 0, 0, 0, 0, 0,
+ 0, 2990, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2992, 0, 2994, 2996, 2998, 3000, 3002, 3004, 0,
+ 3006, 0, 0, 3008, 3010, 3012, 3014, 3016, 3018, 3020,
+ 3022, 3024, 3026, 3028, 3030, 3032, 3034, 3036, 3038, 3040,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3042, 3044,
+ 3046, 3048, 0, 3050, 3052, 0, 0, 0, 3054, 0,
+ 0, 3056, 3058, 3060, 3062, 0, 0, 0, 3064, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3066, 3068, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3070, 3072, 0, 0,
+ 0, 0, 3074, 3076, 3078, 3080, 3082, 0, 0, 0,
+ 0, 0, 0, 0, 3084, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3086, 0, 3088, 3090, 3092, 3094,
+ 3096, 3098, 0, 3100, 0, 0, 3102, 3104, 3106, 3108,
+ 3110, 3112, 3114, 3116, 3118, 3120, 3122, 3124, 3126, 3128,
+ 3130, 3132, 3134, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3136, 3138, 3140, 3142, 0, 3144, 3146, 0, 0,
+ 0, 3148, 0, 0, 3150, 3152, 3154, 3156, 0, 0,
+ 0, 3158, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3160, 3162, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3164,
+ 3166, 0, 0, 0, 0, 3168, 3170, 3172, 3174, 3176,
+ 0, 0, 0, 0, 0, 0, 0, 3178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3180, 0, 3182,
+ 3184, 3186, 3188, 3190, 3192, 0, 3194, 0, 0, 3196,
+ 3198, 3200, 3202, 3204, 3206, 3208, 3210, 3212, 3214, 3216,
+ 3218, 3220, 3222, 3224, 3226, 3228, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3230, 3232, 3234, 3236, 0, 3238,
+ 3240, 0, 0, 0, 3242, 0, 0, 3244, 3246, 3248,
+ 3250, 0, 0, 0, 3252, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3254,
+ 3256, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3258, 3260, 0, 0, 0, 0, 3262, 3264,
+ 3266, 3268, 3270, 0, 0, 0, 0, 0, 0, 0,
+ 3272, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3274, 0, 3276, 3278, 3280, 3282, 3284, 3286, 0, 3288,
+ 0, 0, 3290, 3292, 3294, 3296, 3298, 3300, 3302, 3304,
+ 3306, 3308, 3310, 3312, 3314, 3316, 3318, 3320, 3322, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3324, 3326, 3328,
+ 3330, 0, 3332, 3334, 0, 0, 0, 3336, 0, 0,
+ 3338, 3340, 3342, 3344, 0, 0, 0, 3346, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3348, 3350, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3352, 3354, 0, 0, 0,
+ 0, 3356, 3358, 3360, 3362, 3364, 0, 0, 0, 0,
+ 0, 0, 0, 3366, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3368, 0, 3370, 3372, 3374, 3376, 3378,
+ 3380, 0, 3382, 0, 0, 3384, 3386, 3388, 3390, 3392,
+ 3394, 3396, 3398, 3400, 3402, 3404, 3406, 3408, 3410, 3412,
+ 3414, 3416, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3418, 3420, 3422, 3424, 0, 3426, 3428, 0, 0, 0,
+ 3430, 0, 0, 3432, 3434, 3436, 3438, 0, 0, 0,
+ 3440, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3442, 3444, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3446, 3448,
+ 0, 0, 0, 0, 3450, 3452, 3454, 3456, 3458, 0,
+ 0, 0, 0, 0, 0, 0, 3460, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3462, 0, 3464, 3466,
+ 3468, 3470, 3472, 3474, 0, 3476, 0, 0, 3478, 3480,
+ 3482, 3484, 3486, 3488, 3490, 3492, 3494, 3496, 3498, 3500,
+ 3502, 3504, 3506, 3508, 3510, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3512, 3514, 3516, 3518, 0, 3520, 3522,
+ 0, 0, 0, 3524, 0, 0, 3526, 3528, 3530, 3532,
+ 0, 0, 0, 3534, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3536, 3538,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3540, 3542, 0, 0, 0, 0, 3544, 3546, 3548,
+ 3550, 3552, 0, 0, 0, 0, 0, 0, 0, 3554,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3556,
+ 0, 3558, 3560, 3562, 3564, 3566, 3568, 0, 3570, 0,
+ 0, 3572, 3574, 3576, 3578, 3580, 3582, 3584, 3586, 3588,
+ 3590, 3592, 3594, 3596, 3598, 3600, 3602, 3604, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3606, 3608, 3610, 3612,
+ 0, 3614, 3616, 0, 0, 0, 3618, 0, 0, 3620,
+ 3622, 3624, 3626, 0, 0, 0, 3628, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3630, 3632, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3634, 3636, 0, 0, 0, 0,
+ 3638, 3640, 3642, 3644, 3646, 0, 0, 0, 0, 0,
+ 0, 0, 3648, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3650, 0, 3652, 3654, 3656, 3658, 3660, 3662,
+ 0, 3664, 0, 0, 3666, 3668, 3670, 3672, 3674, 3676,
+ 3678, 3680, 3682, 3684, 3686, 3688, 3690, 3692, 3694, 3696,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0,
- 0, 0, 0, 0, 0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 255, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 257, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 261, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 263
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3728, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3730
};
/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
0, pointed into by YYCONFLP. */
-static const short int yyconfl[] =
+static const short yyconfl[] =
{
- 0, 267, 0, 267, 0, 331, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 453, 0, 453, 0, 453,
- 0, 453, 0, 453, 0, 267, 0, 267, 0, 267,
- 0, 226, 0, 356, 0
+ 0, 392, 0, 392, 0, 392, 0, 392, 0, 383,
+ 0, 383, 0, 406, 0, 467, 0, 467, 0, 311,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 623, 0, 623, 0, 623, 0, 623, 0, 623,
+ 0, 392, 0, 392, 0, 392, 0, 392, 0, 406,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 46, 0, 46, 0, 46,
+ 0, 46, 0, 46, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 55,
+ 0, 55, 0, 55, 0, 55, 0, 55, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 56, 0, 56, 0, 56, 0, 56,
+ 0, 56, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 57, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 58, 0, 58, 0, 58,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 624, 0, 624, 0, 624,
+ 0, 624, 0, 624, 0, 585, 623, 0, 585, 623,
+ 0, 585, 623, 0, 585, 623, 0, 585, 623, 0,
+ 585, 623, 0, 585, 623, 0, 585, 623, 0, 585,
+ 623, 0, 585, 623, 0, 585, 623, 0, 585, 623,
+ 0, 585, 623, 0, 585, 623, 0, 585, 623, 0,
+ 585, 623, 0, 585, 623, 0, 585, 623, 0, 585,
+ 623, 0, 585, 623, 0, 585, 623, 0, 585, 623,
+ 0, 585, 623, 0, 585, 623, 0, 585, 623, 0,
+ 585, 623, 0, 585, 623, 0, 585, 623, 0, 585,
+ 623, 0, 585, 623, 0, 585, 623, 0, 585, 623,
+ 0, 585, 623, 0, 585, 623, 0, 585, 623, 0,
+ 585, 623, 0, 585, 623, 0, 585, 623, 0, 585,
+ 623, 0, 585, 623, 0, 585, 623, 0, 585, 623,
+ 0, 585, 623, 0, 585, 623, 0, 585, 623, 0,
+ 585, 623, 0, 585, 623, 0, 623, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,
+ 65, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 109, 0, 109, 0,
+ 109, 0, 109, 0, 109, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 110, 0, 110, 0, 110, 0, 110, 0, 110, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 0, 108, 0, 108, 0, 108, 0,
+ 108, 0, 108, 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, 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, 107, 0, 107, 0,
+ 107, 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,
+ 127, 0, 127, 0, 127, 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, 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, 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, 131, 0, 131, 0, 131, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 132, 0, 132, 0, 132, 0, 132, 0,
+ 132, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 133, 0, 133, 0,
+ 133, 0, 133, 0, 133, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 134, 0, 134, 0, 134, 0, 134, 0, 134, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 163, 0, 163, 0, 163, 0,
+ 163, 0, 163, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 593, 0,
+ 593, 0, 593, 0, 593, 0, 593, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 592, 0, 592, 0, 592, 0, 592, 0,
+ 592, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 590, 0, 590, 0,
+ 590, 0, 590, 0, 590, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 588, 0, 588, 0, 588, 0, 588, 0, 588, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 589, 0, 589, 0, 589, 0,
+ 589, 0, 589, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 591, 0,
+ 591, 0, 591, 0, 591, 0, 591, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 587, 0, 587, 0, 587, 0, 587, 0,
+ 587, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 586, 0, 586, 0,
+ 586, 0, 586, 0, 586, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 594, 0, 594, 0, 594, 0, 594, 0, 594, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 147, 0, 147, 0, 147, 0,
+ 147, 0, 147, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 622, 0,
+ 622, 0, 622, 0, 622, 0, 622, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 620, 0, 620, 0, 620, 0, 620, 0,
+ 620, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 619, 0, 619, 0,
+ 619, 0, 619, 0, 619, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 621, 0, 621, 0, 621, 0, 621, 0, 621, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 618, 0, 618, 0, 618, 0,
+ 618, 0, 618, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 617, 0,
+ 617, 0, 617, 0, 617, 0, 617, 0, 512, 0,
+ 512, 0, 460, 0, 460, 0, 461, 0, 498, 0,
+ 498, 0, 498, 0, 45, 0, 624, 0, 392, 0,
+ 573, 0, 573, 0, 573, 0, 624, 0, 343, 0,
+ 494, 0
};
/* Error token number */
} while (0)
-/*----------------------------------------.
-| Print this symbol's value on YYOUTPUT. |
-`----------------------------------------*/
+/*-----------------------------------.
+| Print this symbol's value on YYO. |
+`-----------------------------------*/
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)
+yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
{
- FILE *yyo = yyoutput;
- YYUSE (yyo);
+ FILE *yyoutput = yyo;
+ YYUSE (yyoutput);
YYUSE (P);
YYUSE (tokens);
YYUSE (index);
}
-/*--------------------------------.
-| Print this symbol on YYOUTPUT. |
-`--------------------------------*/
+/*---------------------------.
+| Print this symbol on YYO. |
+`---------------------------*/
static void
-yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
+yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
{
- YYFPRINTF (yyoutput, "%s %s (",
+ YYFPRINTF (yyo, "%s %s (",
yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
- yy_symbol_value_print (yyoutput, yytype, yyvaluep, P, tokens, index);
- YYFPRINTF (yyoutput, ")");
+ yy_symbol_value_print (yyo, yytype, yyvaluep, P, tokens, index);
+ YYFPRINTF (yyo, ")");
}
# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
if (! yyres)
return strlen (yystr);
- return yystpcpy (yyres, yystr) - yyres;
+ return (size_t) (yystpcpy (yyres, yystr) - yyres);
}
# endif
typedef int yySymbol;
/** Item references, as in LALR(1) machine */
-typedef short int yyItemNum;
+typedef short yyItemNum;
typedef struct yyGLRState yyGLRState;
typedef struct yyGLRStateSet yyGLRStateSet;
* (@$). Returns yyok for normal return, yyaccept for YYACCEPT,
* yyerr for YYERROR, yyabort for YYABORT. */
static YYRESULTTAG
-yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
+yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp,
yyGLRStack* yystackp,
YYSTYPE* yyvalp, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
{
- yybool yynormal YY_ATTRIBUTE_UNUSED = (yystackp->yysplitPoint == YY_NULLPTR);
+ yybool yynormal YY_ATTRIBUTE_UNUSED = (yybool) (yystackp->yysplitPoint == YY_NULLPTR);
int yylow;
YYUSE (yyvalp);
YYUSE (P);
# undef yyclearin
# define yyclearin (yychar = YYEMPTY)
# undef YYFILL
-# define YYFILL(N) yyfill (yyvsp, &yylow, N, yynormal)
+# define YYFILL(N) yyfill (yyvsp, &yylow, (N), yynormal)
# undef YYBACKUP
# define YYBACKUP(Token, Value) \
return yyerror (P, tokens, index, YY_("syntax error: cannot back up")), \
*yyvalp = yyvsp[YYFILL (1-yyrhslen)].yystate.yysemantics.yysval;
switch (yyn)
{
- case 170:
-#line 410 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 287:
+#line 435 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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 2393 "src/parser_proc.c" /* glr.c:816 */
+#line 4516 "src/parser_proc.c" /* glr.c:821 */
break;
- case 171:
-#line 416 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 288:
+#line 441 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- 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, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->size);
- }
+ psi_parser_proc_add_lib(P, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
}
-#line 2406 "src/parser_proc.c" /* glr.c:816 */
+#line 4524 "src/parser_proc.c" /* glr.c:821 */
break;
- case 172:
-#line 424 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 289:
+#line 444 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_const(P, (*(struct psi_const **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2414 "src/parser_proc.c" /* glr.c:816 */
+#line 4532 "src/parser_proc.c" /* glr.c:821 */
break;
- case 173:
-#line 427 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 290:
+#line 447 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_decl(P, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2422 "src/parser_proc.c" /* glr.c:816 */
+#line 4540 "src/parser_proc.c" /* glr.c:821 */
break;
- case 175:
-#line 431 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 291:
+#line 450 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ psi_parser_proc_add_decl_extvars(P, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 4548 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 292:
+#line 453 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ 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->val);
+ }
+ psi_decl_free(&(*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 4559 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 293:
+#line 459 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_typedef(P, (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2430 "src/parser_proc.c" /* glr.c:816 */
+#line 4567 "src/parser_proc.c" /* glr.c:821 */
break;
- case 176:
-#line 434 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 294:
+#line 462 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_struct(P, (*(struct psi_decl_struct **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2438 "src/parser_proc.c" /* glr.c:816 */
+#line 4575 "src/parser_proc.c" /* glr.c:821 */
break;
- case 177:
-#line 437 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 295:
+#line 465 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_union(P, (*(struct psi_decl_union **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2446 "src/parser_proc.c" /* glr.c:816 */
+#line 4583 "src/parser_proc.c" /* glr.c:821 */
break;
- case 178:
-#line 440 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 296:
+#line 468 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2454 "src/parser_proc.c" /* glr.c:816 */
+#line 4591 "src/parser_proc.c" /* glr.c:821 */
break;
- case 179:
-#line 443 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 297:
+#line 471 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_impl(P, (*(struct psi_impl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2462 "src/parser_proc.c" /* glr.c:816 */
+#line 4599 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 298:
+#line 477 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 4607 "src/parser_proc.c" /* glr.c:821 */
break;
- case 180:
-#line 449 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 299:
+#line 480 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2470 "src/parser_proc.c" /* glr.c:816 */
+#line 4615 "src/parser_proc.c" /* glr.c:821 */
break;
- case 181:
-#line 455 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 300:
+#line 486 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = NULL;
}
-#line 2478 "src/parser_proc.c" /* glr.c:816 */
+#line 4623 "src/parser_proc.c" /* glr.c:821 */
break;
- case 182:
-#line 458 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 301:
+#line 489 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = (*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2486 "src/parser_proc.c" /* glr.c:816 */
+#line 4631 "src/parser_proc.c" /* glr.c:821 */
break;
- case 183:
-#line 464 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 302:
+#line 495 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
struct psi_token *msg = NULL;
-
+
if (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), 0, &msg)) {
size_t index = 1;
struct psi_token *next;
- msg = psi_token_copy(msg);
+ msg = psi_token_copy(msg);
while (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), index++, &next)) {
struct psi_token *old = msg;
msg = psi_token_cat(" ", 2, msg, next);
- free(old);
+ psi_token_free(&old);
}
}
psi_plist_free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
-
+
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, msg);
} else {
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, NULL);
}
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 2514 "src/parser_proc.c" /* glr.c:816 */
+#line 4659 "src/parser_proc.c" /* glr.c:821 */
break;
- case 184:
-#line 487 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 303:
+#line 518 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2523 "src/parser_proc.c" /* glr.c:816 */
+#line 4668 "src/parser_proc.c" /* glr.c:821 */
break;
- case 185:
-#line 491 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 304:
+#line 522 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2532 "src/parser_proc.c" /* glr.c:816 */
+#line 4677 "src/parser_proc.c" /* glr.c:821 */
break;
- case 186:
-#line 495 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 305:
+#line 526 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2542 "src/parser_proc.c" /* glr.c:816 */
+#line 4687 "src/parser_proc.c" /* glr.c:821 */
break;
- case 187:
-#line 500 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 306:
+#line 531 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2551 "src/parser_proc.c" /* glr.c:816 */
+#line 4696 "src/parser_proc.c" /* glr.c:821 */
break;
- case 188:
-#line 504 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 307:
+#line 535 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2560 "src/parser_proc.c" /* glr.c:816 */
+#line 4705 "src/parser_proc.c" /* glr.c:821 */
break;
- case 189:
-#line 508 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 308:
+#line 539 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2569 "src/parser_proc.c" /* glr.c:816 */
+#line 4714 "src/parser_proc.c" /* glr.c:821 */
break;
- case 190:
-#line 512 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 309:
+#line 543 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_plist_free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_cpp_exp **)(&(*yyvalp))) = NULL;
}
-#line 2578 "src/parser_proc.c" /* glr.c:816 */
+#line 4723 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 326:
+#line 587 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 4733 "src/parser_proc.c" /* glr.c:821 */
break;
- case 213:
-#line 565 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 327:
+#line 592 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2588 "src/parser_proc.c" /* glr.c:816 */
+#line 4743 "src/parser_proc.c" /* glr.c:821 */
break;
- case 214:
-#line 570 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 328:
+#line 597 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2598 "src/parser_proc.c" /* glr.c:816 */
+#line 4753 "src/parser_proc.c" /* glr.c:821 */
break;
- case 215:
-#line 578 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 329:
+#line 602 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ 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, 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 4764 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 330:
+#line 611 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_init(NULL);
}
-#line 2606 "src/parser_proc.c" /* glr.c:816 */
+#line 4772 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 331:
+#line 614 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_init(NULL); /* FIXME */
+}
+#line 4780 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 333:
+#line 618 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
+}
+#line 4788 "src/parser_proc.c" /* glr.c:821 */
break;
- case 217:
-#line 585 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 334:
+#line 624 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2616 "src/parser_proc.c" /* glr.c:816 */
+#line 4798 "src/parser_proc.c" /* glr.c:821 */
break;
- case 218:
-#line 590 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 335:
+#line 629 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2626 "src/parser_proc.c" /* glr.c:816 */
+#line 4808 "src/parser_proc.c" /* glr.c:821 */
break;
- case 219:
-#line 598 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 336:
+#line 637 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 2634 "src/parser_proc.c" /* glr.c:816 */
+#line 4816 "src/parser_proc.c" /* glr.c:821 */
break;
- case 221:
-#line 605 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 338:
+#line 644 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2643 "src/parser_proc.c" /* glr.c:816 */
+#line 4825 "src/parser_proc.c" /* glr.c:821 */
break;
- case 222:
-#line 609 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 339:
+#line 648 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2652 "src/parser_proc.c" /* glr.c:816 */
+#line 4834 "src/parser_proc.c" /* glr.c:821 */
break;
- case 223:
-#line 616 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 340:
+#line 655 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2661 "src/parser_proc.c" /* glr.c:816 */
+#line 4843 "src/parser_proc.c" /* glr.c:821 */
break;
- case 224:
-#line 620 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 341:
+#line 659 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2670 "src/parser_proc.c" /* glr.c:816 */
+#line 4852 "src/parser_proc.c" /* glr.c:821 */
break;
- case 225:
-#line 624 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 342:
+#line 663 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2679 "src/parser_proc.c" /* glr.c:816 */
+#line 4861 "src/parser_proc.c" /* glr.c:821 */
break;
- case 226:
-#line 628 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 343:
+#line 667 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2688 "src/parser_proc.c" /* glr.c:816 */
+#line 4870 "src/parser_proc.c" /* glr.c:821 */
break;
- case 227:
-#line 633 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 344:
+#line 672 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
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))) = psi_num_exp_init_num(psi_number_init(PSI_T_DEFINED, &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)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
}
-#line 2703 "src/parser_proc.c" /* glr.c:816 */
+#line 4886 "src/parser_proc.c" /* glr.c:821 */
break;
- case 228:
-#line 643 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 345:
+#line 683 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
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))) = psi_num_exp_init_num(psi_number_init(PSI_T_DEFINED, &exists, 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 (-1)].yystate.yysemantics.yysval)));
}
}
-#line 2718 "src/parser_proc.c" /* glr.c:816 */
+#line 4902 "src/parser_proc.c" /* glr.c:821 */
break;
- case 229:
-#line 653 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 346:
+#line 694 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2728 "src/parser_proc.c" /* glr.c:816 */
+#line 4912 "src/parser_proc.c" /* glr.c:821 */
break;
- case 230:
-#line 658 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 347:
+#line 699 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2738 "src/parser_proc.c" /* glr.c:816 */
+#line 4922 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 348:
+#line 704 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 4931 "src/parser_proc.c" /* glr.c:821 */
break;
- case 231:
-#line 663 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 349:
+#line 708 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2749 "src/parser_proc.c" /* glr.c:816 */
+#line 4942 "src/parser_proc.c" /* glr.c:821 */
break;
- case 232:
-#line 669 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 350:
+#line 714 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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)));
+ (*(struct psi_num_exp **)(&(*yyvalp)))->data.n->data.call->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 2760 "src/parser_proc.c" /* glr.c:816 */
+#line 4955 "src/parser_proc.c" /* glr.c:821 */
break;
- case 233:
-#line 678 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 351:
+#line 725 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 2768 "src/parser_proc.c" /* glr.c:816 */
+#line 4963 "src/parser_proc.c" /* glr.c:821 */
break;
- case 235:
-#line 685 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 353:
+#line 732 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_num_exp_free),
+ /* TODO: clang include test macros */
+ uint8_t no = 1;
+ struct psi_num_exp *exp = psi_num_exp_init_num(psi_number_init(PSI_T_UINT8, &no, 0));
+ exp->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ exp->data.n->token = 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_num_exp_free), &exp);
+}
+#line 4976 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 354:
+#line 740 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 2777 "src/parser_proc.c" /* glr.c:816 */
+#line 4985 "src/parser_proc.c" /* glr.c:821 */
break;
- case 236:
-#line 689 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 355:
+#line 744 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2785 "src/parser_proc.c" /* glr.c:816 */
+#line 4993 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 356:
+#line 750 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 5002 "src/parser_proc.c" /* glr.c:821 */
break;
- case 237:
-#line 695 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 357:
+#line 754 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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(NULL, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text, (*(struct psi_impl_def_val **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_const **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 2794 "src/parser_proc.c" /* glr.c:816 */
+#line 5011 "src/parser_proc.c" /* glr.c:821 */
break;
- case 238:
-#line 702 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 358:
+#line 761 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 2802 "src/parser_proc.c" /* glr.c:816 */
+#line 5020 "src/parser_proc.c" /* glr.c:821 */
break;
- case 243:
-#line 715 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 359:
+#line 765 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 2810 "src/parser_proc.c" /* glr.c:816 */
+#line 5029 "src/parser_proc.c" /* glr.c:821 */
break;
- case 244:
-#line 718 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 360:
+#line 769 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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)));
+ (*(struct psi_impl_def_val **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5038 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 364:
+#line 782 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2819 "src/parser_proc.c" /* glr.c:816 */
+#line 5046 "src/parser_proc.c" /* glr.c:821 */
break;
- case 250:
-#line 733 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 365:
+#line 796 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 2827 "src/parser_proc.c" /* glr.c:816 */
+#line 5054 "src/parser_proc.c" /* glr.c:821 */
break;
- case 252:
-#line 740 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 366:
+#line 802 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5062 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 367:
+#line 805 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5070 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 368:
+#line 811 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5078 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 369:
+#line 814 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5086 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 371:
+#line 821 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2840 "src/parser_proc.c" /* glr.c:816 */
+#line 5099 "src/parser_proc.c" /* glr.c:821 */
break;
- case 253:
-#line 748 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 372:
+#line 829 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2855 "src/parser_proc.c" /* glr.c:816 */
+#line 5115 "src/parser_proc.c" /* glr.c:821 */
break;
- case 254:
-#line 758 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 373:
+#line 840 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2868 "src/parser_proc.c" /* glr.c:816 */
+#line 5129 "src/parser_proc.c" /* glr.c:821 */
break;
- case 255:
-#line 766 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 374:
+#line 849 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2881 "src/parser_proc.c" /* glr.c:816 */
+#line 5143 "src/parser_proc.c" /* glr.c:821 */
break;
- case 256:
-#line 774 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 376:
+#line 862 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 2891 "src/parser_proc.c" /* glr.c:816 */
+#line 5152 "src/parser_proc.c" /* glr.c:821 */
break;
- case 257:
-#line 782 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 377:
+#line 866 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 5167 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 378:
+#line 876 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 5181 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 379:
+#line 885 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 5195 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 381:
+#line 898 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_type **)(&(*yyvalp))) = (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 2899 "src/parser_proc.c" /* glr.c:816 */
+#line 5203 "src/parser_proc.c" /* glr.c:821 */
break;
- case 259:
-#line 789 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 382:
+#line 901 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl_type **)(&(*yyvalp))) = (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5211 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 385:
+#line 912 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2908 "src/parser_proc.c" /* glr.c:816 */
+#line 5220 "src/parser_proc.c" /* glr.c:821 */
break;
- case 261:
-#line 797 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 387:
+#line 920 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2918 "src/parser_proc.c" /* glr.c:816 */
+#line 5230 "src/parser_proc.c" /* glr.c:821 */
break;
- case 262:
-#line 802 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 388:
+#line 925 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2928 "src/parser_proc.c" /* glr.c:816 */
+#line 5240 "src/parser_proc.c" /* glr.c:821 */
break;
- case 263:
-#line 807 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 389:
+#line 930 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2938 "src/parser_proc.c" /* glr.c:816 */
+#line 5250 "src/parser_proc.c" /* glr.c:821 */
break;
- case 266:
-#line 817 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 392:
+#line 940 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2946 "src/parser_proc.c" /* glr.c:816 */
+#line 5258 "src/parser_proc.c" /* glr.c:821 */
break;
- case 267:
-#line 820 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 393:
+#line 943 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2954 "src/parser_proc.c" /* glr.c:816 */
+#line 5266 "src/parser_proc.c" /* glr.c:821 */
break;
- case 268:
-#line 826 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 394:
+#line 949 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2962 "src/parser_proc.c" /* glr.c:816 */
+#line 5274 "src/parser_proc.c" /* glr.c:821 */
break;
- case 269:
-#line 829 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 395:
+#line 952 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2970 "src/parser_proc.c" /* glr.c:816 */
+#line 5282 "src/parser_proc.c" /* glr.c:821 */
break;
- case 270:
-#line 832 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 396:
+#line 955 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 2978 "src/parser_proc.c" /* glr.c:816 */
+#line 5290 "src/parser_proc.c" /* glr.c:821 */
break;
- case 281:
-#line 854 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 399:
+#line 966 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2986 "src/parser_proc.c" /* glr.c:816 */
+#line 5298 "src/parser_proc.c" /* glr.c:821 */
break;
- case 282:
-#line 857 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 400:
+#line 969 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 2994 "src/parser_proc.c" /* glr.c:816 */
+#line 5306 "src/parser_proc.c" /* glr.c:821 */
break;
- case 283:
-#line 860 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 401:
+#line 972 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3002 "src/parser_proc.c" /* glr.c:816 */
+#line 5314 "src/parser_proc.c" /* glr.c:821 */
break;
- case 284:
-#line 866 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 402:
+#line 978 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3010 "src/parser_proc.c" /* glr.c:816 */
+#line 5322 "src/parser_proc.c" /* glr.c:821 */
break;
- case 285:
-#line 869 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 403:
+#line 981 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3018 "src/parser_proc.c" /* glr.c:816 */
+#line 5330 "src/parser_proc.c" /* glr.c:821 */
break;
- case 286:
-#line 872 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 404:
+#line 984 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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)));
- free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
} else {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 3031 "src/parser_proc.c" /* glr.c:816 */
+#line 5343 "src/parser_proc.c" /* glr.c:821 */
break;
- case 287:
-#line 880 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 405:
+#line 992 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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)));
- free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
- free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
} else {
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
}
-#line 3045 "src/parser_proc.c" /* glr.c:816 */
+#line 5357 "src/parser_proc.c" /* glr.c:821 */
break;
- case 288:
-#line 892 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 406:
+#line 1004 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3053 "src/parser_proc.c" /* glr.c:816 */
+#line 5365 "src/parser_proc.c" /* glr.c:821 */
break;
- case 289:
-#line 895 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 407:
+#line 1007 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3061 "src/parser_proc.c" /* glr.c:816 */
+#line 5373 "src/parser_proc.c" /* glr.c:821 */
break;
- case 290:
-#line 898 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 408:
+#line 1010 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 5381 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 409:
+#line 1013 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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 3073 "src/parser_proc.c" /* glr.c:816 */
+#line 5393 "src/parser_proc.c" /* glr.c:821 */
break;
- case 291:
-#line 905 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 410:
+#line 1020 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3081 "src/parser_proc.c" /* glr.c:816 */
+#line 5401 "src/parser_proc.c" /* glr.c:821 */
break;
- case 292:
-#line 908 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 411:
+#line 1023 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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 3093 "src/parser_proc.c" /* glr.c:816 */
+#line 5413 "src/parser_proc.c" /* glr.c:821 */
break;
- case 293:
-#line 918 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 412:
+#line 1033 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3101 "src/parser_proc.c" /* glr.c:816 */
+#line 5421 "src/parser_proc.c" /* glr.c:821 */
break;
- case 295:
-#line 924 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 414:
+#line 1039 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3109 "src/parser_proc.c" /* glr.c:816 */
+#line 5429 "src/parser_proc.c" /* glr.c:821 */
break;
- case 298:
-#line 932 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 418:
+#line 1048 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3117 "src/parser_proc.c" /* glr.c:816 */
+#line 5437 "src/parser_proc.c" /* glr.c:821 */
break;
- case 299:
-#line 935 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 419:
+#line 1051 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 3125 "src/parser_proc.c" /* glr.c:816 */
+#line 5445 "src/parser_proc.c" /* glr.c:821 */
break;
- case 300:
-#line 938 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 420:
+#line 1054 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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)));
- free((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
} else {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 3138 "src/parser_proc.c" /* glr.c:816 */
+#line 5458 "src/parser_proc.c" /* glr.c:821 */
break;
- case 301:
-#line 949 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 421:
+#line 1065 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 = zend_string_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
}
-#line 3146 "src/parser_proc.c" /* glr.c:816 */
+#line 5470 "src/parser_proc.c" /* glr.c:821 */
break;
- case 302:
-#line 952 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 422:
+#line 1072 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 = zend_string_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
}
-#line 3154 "src/parser_proc.c" /* glr.c:816 */
+#line 5482 "src/parser_proc.c" /* glr.c:821 */
break;
- case 308:
-#line 972 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 423:
+#line 1082 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- psi_decl_arg_free(&(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ (*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3162 "src/parser_proc.c" /* glr.c:816 */
+#line 5490 "src/parser_proc.c" /* glr.c:821 */
break;
- case 310:
-#line 979 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 424:
+#line 1085 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- psi_plist_free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+ (*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5498 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 425:
+#line 1091 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
+}
+#line 5506 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 426:
+#line 1094 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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)));
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+}
+#line 5515 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 427:
+#line 1101 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ struct psi_plist *list = psi_plist_init((psi_plist_dtor) psi_decl_extvar_free);
+
+ if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))) {
+ size_t i = 0;
+ struct psi_decl_var *var;
+
+ while (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), i++, &var)) {
+ if (psi_decl_extvar_is_blacklisted(var->name->val)) {
+ 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 (-3)].yystate.yysemantics.yysval))->type), var));
+ list = psi_plist_add(list, &evar);
+ }
+ }
+ free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ }
+
+ if (psi_decl_extvar_is_blacklisted((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->var->name->val)) {
+ psi_decl_arg_free(&(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
+ } else {
+ struct psi_decl_extvar *evar = psi_decl_extvar_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
+
+ if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
+ evar->redir = zend_string_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
+ psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
+ }
+ list = psi_plist_add(list, &evar);
+ }
+
+ (*(struct psi_plist **)(&(*yyvalp))) = list;
}
-#line 3170 "src/parser_proc.c" /* glr.c:816 */
+#line 5553 "src/parser_proc.c" /* glr.c:821 */
break;
- case 311:
-#line 985 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 428:
+#line 1137 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
+}
+#line 5561 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 429:
+#line 1140 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5569 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 430:
+#line 1146 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3178 "src/parser_proc.c" /* glr.c:816 */
+#line 5577 "src/parser_proc.c" /* glr.c:821 */
break;
- case 312:
-#line 988 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 431:
+#line 1149 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3186 "src/parser_proc.c" /* glr.c:816 */
+#line 5585 "src/parser_proc.c" /* glr.c:821 */
break;
- case 314:
-#line 995 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 432:
+#line 1155 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
+}
+#line 5593 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 445:
+#line 1185 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3195 "src/parser_proc.c" /* glr.c:816 */
+#line 5602 "src/parser_proc.c" /* glr.c:821 */
break;
- case 317:
-#line 1007 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 448:
+#line 1197 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 3207 "src/parser_proc.c" /* glr.c:816 */
+#line 5614 "src/parser_proc.c" /* glr.c:821 */
break;
- case 318:
-#line 1014 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 449:
+#line 1204 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 3220 "src/parser_proc.c" /* glr.c:816 */
+#line 5627 "src/parser_proc.c" /* glr.c:821 */
break;
- case 319:
-#line 1025 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 450:
+#line 1215 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 3232 "src/parser_proc.c" /* glr.c:816 */
+#line 5639 "src/parser_proc.c" /* glr.c:821 */
break;
- case 320:
-#line 1032 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 451:
+#line 1222 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 3245 "src/parser_proc.c" /* glr.c:816 */
+#line 5652 "src/parser_proc.c" /* glr.c:821 */
break;
- case 321:
-#line 1043 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 452:
+#line 1230 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (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((*(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 3257 "src/parser_proc.c" /* glr.c:816 */
+#line 5681 "src/parser_proc.c" /* glr.c:821 */
break;
- case 322:
-#line 1050 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 453:
+#line 1254 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (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 (-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)));
+ type->token = type_token;
+
+ (*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
}
-#line 3273 "src/parser_proc.c" /* glr.c:816 */
+#line 5712 "src/parser_proc.c" /* glr.c:821 */
break;
- case 323:
-#line 1061 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 454:
+#line 1283 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (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 (-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 3289 "src/parser_proc.c" /* glr.c:816 */
+#line 5724 "src/parser_proc.c" /* glr.c:821 */
break;
- case 324:
-#line 1072 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 455:
+#line 1290 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 5737 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 456:
+#line 1301 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(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 3305 "src/parser_proc.c" /* glr.c:816 */
+#line 5749 "src/parser_proc.c" /* glr.c:821 */
break;
- case 326:
-#line 1087 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 457:
+#line 1347 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 3319 "src/parser_proc.c" /* glr.c:816 */
+#line 5760 "src/parser_proc.c" /* glr.c:821 */
break;
- case 327:
-#line 1099 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 459:
+#line 1403 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3327 "src/parser_proc.c" /* glr.c:816 */
+#line 5768 "src/parser_proc.c" /* glr.c:821 */
break;
- case 328:
-#line 1102 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 460:
+#line 1406 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3335 "src/parser_proc.c" /* glr.c:816 */
+#line 5776 "src/parser_proc.c" /* glr.c:821 */
break;
- case 329:
-#line 1105 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 461:
+#line 1409 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5784 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 462:
+#line 1415 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3343 "src/parser_proc.c" /* glr.c:816 */
+#line 5792 "src/parser_proc.c" /* glr.c:821 */
break;
- case 330:
-#line 1108 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 463:
+#line 1418 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3351 "src/parser_proc.c" /* glr.c:816 */
+#line 5800 "src/parser_proc.c" /* glr.c:821 */
break;
- case 331:
-#line 1114 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 464:
+#line 1424 "src/parser_proc_grammar.y" /* glr.c:821 */
{
+ 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, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var->name),
+ 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 3364 "src/parser_proc.c" /* glr.c:816 */
+#line 5820 "src/parser_proc.c" /* glr.c:821 */
break;
- case 332:
-#line 1122 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 465:
+#line 1439 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3372 "src/parser_proc.c" /* glr.c:816 */
+#line 5828 "src/parser_proc.c" /* glr.c:821 */
break;
- case 333:
-#line 1125 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 466:
+#line 1442 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 (-2)].yystate.yysemantics.yysval)),
+ psi_decl_var_init(NULL, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)))
);
- (*(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 3387 "src/parser_proc.c" /* glr.c:816 */
+#line 5839 "src/parser_proc.c" /* glr.c:821 */
break;
- case 334:
-#line 1135 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 467:
+#line 1471 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 3402 "src/parser_proc.c" /* glr.c:816 */
+#line 5852 "src/parser_proc.c" /* glr.c:821 */
break;
- case 335:
-#line 1148 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 468:
+#line 1479 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 5860 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 469:
+#line 1507 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3412 "src/parser_proc.c" /* glr.c:816 */
+#line 5870 "src/parser_proc.c" /* glr.c:821 */
break;
- case 336:
-#line 1153 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 470:
+#line 1512 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3422 "src/parser_proc.c" /* glr.c:816 */
+#line 5880 "src/parser_proc.c" /* glr.c:821 */
break;
- case 337:
-#line 1161 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 471:
+#line 1520 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3434 "src/parser_proc.c" /* glr.c:816 */
+#line 5892 "src/parser_proc.c" /* glr.c:821 */
break;
- case 338:
-#line 1171 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 472:
+#line 1530 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3446 "src/parser_proc.c" /* glr.c:816 */
+#line 5904 "src/parser_proc.c" /* glr.c:821 */
break;
- case 339:
-#line 1181 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 473:
+#line 1540 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3454 "src/parser_proc.c" /* glr.c:816 */
+#line 5912 "src/parser_proc.c" /* glr.c:821 */
break;
- case 341:
-#line 1188 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 475:
+#line 1547 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 3462 "src/parser_proc.c" /* glr.c:816 */
+#line 5920 "src/parser_proc.c" /* glr.c:821 */
break;
- case 342:
-#line 1194 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 476:
+#line 1553 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].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 (-2)].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 3471 "src/parser_proc.c" /* glr.c:816 */
+#line 5939 "src/parser_proc.c" /* glr.c:821 */
break;
- case 343:
-#line 1198 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 477:
+#line 1567 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
- {
+ (*(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_var *var;
-
- while (psi_plist_get((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), i++, &var)) {
- struct psi_decl_arg *arg = psi_decl_arg_init(psi_decl_type_copy((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type), var);
-
+ 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)));
}
- free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 3490 "src/parser_proc.c" /* glr.c:816 */
+#line 5958 "src/parser_proc.c" /* glr.c:821 */
break;
- case 344:
-#line 1212 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 478:
+#line 1584 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
- (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), &(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 3499 "src/parser_proc.c" /* glr.c:816 */
+#line 5966 "src/parser_proc.c" /* glr.c:821 */
break;
- case 345:
-#line 1216 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 479:
+#line 1587 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 5974 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 480:
+#line 1593 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
{
- 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)) {
- struct psi_decl_arg *arg = psi_decl_arg_init(psi_decl_type_copy((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type), var);
-
- (*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&(*yyvalp))), &arg);
- }
+ 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);
}
- free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 3518 "src/parser_proc.c" /* glr.c:816 */
+#line 5986 "src/parser_proc.c" /* glr.c:821 */
break;
- case 346:
-#line 1233 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 481:
+#line 1600 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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_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 3527 "src/parser_proc.c" /* glr.c:816 */
+#line 5998 "src/parser_proc.c" /* glr.c:821 */
break;
- case 347:
-#line 1240 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 482:
+#line 1607 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ {
+ struct psi_decl_var *var = psi_decl_var_init(NULL, 0, 0);
+ struct psi_decl_arg *arg = psi_decl_arg_init(NULL, var);
+ 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 6011 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 483:
+#line 1615 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ {
+ struct psi_decl_var *var = psi_decl_var_init(NULL, 0, 0);
+ struct psi_decl_arg *arg = psi_decl_arg_init(NULL, var);
+ 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 (-2)].yystate.yysemantics.yysval)), &arg);
+ }
+}
+#line 6024 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 484:
+#line 1626 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6033 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 485:
+#line 1633 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3535 "src/parser_proc.c" /* glr.c:816 */
+#line 6041 "src/parser_proc.c" /* glr.c:821 */
break;
- case 348:
-#line 1243 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 486:
+#line 1636 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3543 "src/parser_proc.c" /* glr.c:816 */
+#line 6049 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 487:
+#line 1642 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6059 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 488:
+#line 1647 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6069 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 489:
+#line 1655 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6078 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 490:
+#line 1659 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6087 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 491:
+#line 1663 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6096 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 492:
+#line 1667 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6105 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 493:
+#line 1671 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6114 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 494:
+#line 1675 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6123 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 495:
+#line 1682 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6132 "src/parser_proc.c" /* glr.c:821 */
break;
- case 349:
-#line 1249 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 496:
+#line 1686 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(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 3553 "src/parser_proc.c" /* glr.c:816 */
+#line 6141 "src/parser_proc.c" /* glr.c:821 */
break;
- case 350:
-#line 1254 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 497:
+#line 1690 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(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 3563 "src/parser_proc.c" /* glr.c:816 */
+#line 6150 "src/parser_proc.c" /* glr.c:821 */
break;
- case 351:
-#line 1262 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 498:
+#line 1694 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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);
+ (*(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 3572 "src/parser_proc.c" /* glr.c:816 */
+#line 6159 "src/parser_proc.c" /* glr.c:821 */
break;
- case 352:
-#line 1266 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 499:
+#line 1698 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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);
+ (*(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 3581 "src/parser_proc.c" /* glr.c:816 */
+#line 6168 "src/parser_proc.c" /* glr.c:821 */
break;
- case 353:
-#line 1270 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 500:
+#line 1702 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3590 "src/parser_proc.c" /* glr.c:816 */
+#line 6176 "src/parser_proc.c" /* glr.c:821 */
break;
- case 354:
-#line 1274 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 501:
+#line 1708 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(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 3599 "src/parser_proc.c" /* glr.c:816 */
+#line 6185 "src/parser_proc.c" /* glr.c:821 */
break;
- case 355:
-#line 1278 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 502:
+#line 1712 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(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 3608 "src/parser_proc.c" /* glr.c:816 */
+#line 6194 "src/parser_proc.c" /* glr.c:821 */
break;
- case 356:
-#line 1282 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 503:
+#line 1719 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ (*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3617 "src/parser_proc.c" /* glr.c:816 */
+#line 6202 "src/parser_proc.c" /* glr.c:821 */
break;
- case 357:
-#line 1289 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 504:
+#line 1722 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ 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 3626 "src/parser_proc.c" /* glr.c:816 */
+#line 6216 "src/parser_proc.c" /* glr.c:821 */
break;
- case 358:
-#line 1293 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 505:
+#line 1734 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ int8_t sizeof_void_p = sizeof(void *);
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_void_p, 0);
}
-#line 3635 "src/parser_proc.c" /* glr.c:816 */
+#line 6225 "src/parser_proc.c" /* glr.c:821 */
break;
- case 359:
-#line 1297 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 506:
+#line 1738 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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)));
+ int8_t sizeof_a = sizeof('a');
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_a, 0);
}
-#line 3644 "src/parser_proc.c" /* glr.c:816 */
+#line 6234 "src/parser_proc.c" /* glr.c:821 */
break;
- case 360:
-#line 1301 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 507:
+#line 1742 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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);
+ uint64_t len = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text->len + 1;
+ (*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_UINT64, &len, 0);
}
-#line 3653 "src/parser_proc.c" /* glr.c:816 */
+#line 6243 "src/parser_proc.c" /* glr.c:821 */
break;
- case 361:
-#line 1308 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 508:
+#line 1749 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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 3668 "src/parser_proc.c" /* glr.c:816 */
+#line 6258 "src/parser_proc.c" /* glr.c:821 */
break;
- case 362:
-#line 1321 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 509:
+#line 1762 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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 3683 "src/parser_proc.c" /* glr.c:816 */
+#line 6273 "src/parser_proc.c" /* glr.c:821 */
break;
- case 363:
-#line 1334 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 510:
+#line 1775 "src/parser_proc_grammar.y" /* glr.c:821 */
{
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 3698 "src/parser_proc.c" /* glr.c:816 */
+#line 6288 "src/parser_proc.c" /* glr.c:821 */
break;
- case 364:
-#line 1347 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 511:
+#line 1788 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 3706 "src/parser_proc.c" /* glr.c:816 */
+#line 6296 "src/parser_proc.c" /* glr.c:821 */
break;
- case 365:
-#line 1350 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 512:
+#line 1791 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_token **)(&(*yyvalp)))->type = PSI_T_NAME;
}
-#line 3715 "src/parser_proc.c" /* glr.c:816 */
+#line 6305 "src/parser_proc.c" /* glr.c:821 */
break;
- case 366:
-#line 1357 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 515:
+#line 1803 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout **)(&(*yyvalp))) = NULL;
}
-#line 3723 "src/parser_proc.c" /* glr.c:816 */
+#line 6313 "src/parser_proc.c" /* glr.c:821 */
break;
- case 367:
-#line 1360 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 516:
+#line 1806 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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->val), NULL));
}
-#line 3731 "src/parser_proc.c" /* glr.c:816 */
+#line 6321 "src/parser_proc.c" /* glr.c:821 */
break;
- case 368:
-#line 1366 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 517:
+#line 1809 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_layout **)(&(*yyvalp))) = psi_layout_init(atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text->val), atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text->val), NULL);
+}
+#line 6329 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 518:
+#line 1812 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_layout **)(&(*yyvalp))) = psi_layout_init(atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text->val), atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text->val), psi_layout_init(0, atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval))->text->val), NULL));
+}
+#line 6337 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 519:
+#line 1818 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout*)(&(*yyvalp))).pos = 0;
(*(struct psi_layout*)(&(*yyvalp))).len = 0;
}
-#line 3740 "src/parser_proc.c" /* glr.c:816 */
+#line 6346 "src/parser_proc.c" /* glr.c:821 */
break;
- case 369:
-#line 1370 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 520:
+#line 1822 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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);
+ (*(struct psi_layout*)(&(*yyvalp))).pos = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text->val);
+ (*(struct psi_layout*)(&(*yyvalp))).len = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text->val);
}
-#line 3749 "src/parser_proc.c" /* glr.c:816 */
+#line 6355 "src/parser_proc.c" /* glr.c:821 */
break;
- case 370:
-#line 1377 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 521:
+#line 1829 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 3757 "src/parser_proc.c" /* glr.c:816 */
+#line 6363 "src/parser_proc.c" /* glr.c:821 */
break;
- case 371:
-#line 1380 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 522:
+#line 1832 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(size_t*)(&(*yyvalp))) = 0;
+}
+#line 6371 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 523:
+#line 1835 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(size_t*)(&(*yyvalp))) = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
+ struct psi_validate_scope scope = {0};
+ psi_validate_scope_ctor(&scope);
+ scope.cpp = P->preproc;
+ 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);
+ } 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 3765 "src/parser_proc.c" /* glr.c:816 */
+#line 6388 "src/parser_proc.c" /* glr.c:821 */
break;
- case 372:
-#line 1386 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 528:
+#line 1857 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 3773 "src/parser_proc.c" /* glr.c:816 */
+#line 6396 "src/parser_proc.c" /* glr.c:821 */
break;
- case 373:
-#line 1389 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 529:
+#line 1860 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3781 "src/parser_proc.c" /* glr.c:816 */
+#line 6404 "src/parser_proc.c" /* glr.c:821 */
break;
- case 375:
-#line 1396 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 531:
+#line 1867 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 3789 "src/parser_proc.c" /* glr.c:816 */
+#line 6412 "src/parser_proc.c" /* glr.c:821 */
break;
- case 376:
-#line 1402 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 532:
+#line 1873 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 1;
}
-#line 3797 "src/parser_proc.c" /* glr.c:816 */
+#line 6420 "src/parser_proc.c" /* glr.c:821 */
break;
- case 377:
-#line 1405 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 533:
+#line 1876 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)) + 1;
}
-#line 3805 "src/parser_proc.c" /* glr.c:816 */
+#line 6428 "src/parser_proc.c" /* glr.c:821 */
break;
- case 378:
-#line 1417 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 538:
+#line 1898 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3813 "src/parser_proc.c" /* glr.c:816 */
+#line 6436 "src/parser_proc.c" /* glr.c:821 */
break;
- case 379:
-#line 1420 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 539:
+#line 1901 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3822 "src/parser_proc.c" /* glr.c:816 */
+#line 6445 "src/parser_proc.c" /* glr.c:821 */
break;
- case 380:
-#line 1427 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 540:
+#line 1908 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3832 "src/parser_proc.c" /* glr.c:816 */
+#line 6455 "src/parser_proc.c" /* glr.c:821 */
break;
- case 381:
-#line 1432 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 541:
+#line 1913 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3842 "src/parser_proc.c" /* glr.c:816 */
+#line 6465 "src/parser_proc.c" /* glr.c:821 */
break;
- case 382:
-#line 1437 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 542:
+#line 1918 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3854 "src/parser_proc.c" /* glr.c:816 */
+#line 6477 "src/parser_proc.c" /* glr.c:821 */
break;
- case 383:
-#line 1447 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 543:
+#line 1928 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3862 "src/parser_proc.c" /* glr.c:816 */
+#line 6485 "src/parser_proc.c" /* glr.c:821 */
break;
- case 384:
-#line 1450 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 544:
+#line 1931 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3870 "src/parser_proc.c" /* glr.c:816 */
+#line 6493 "src/parser_proc.c" /* glr.c:821 */
break;
- case 385:
-#line 1456 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 545:
+#line 1937 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3878 "src/parser_proc.c" /* glr.c:816 */
+#line 6501 "src/parser_proc.c" /* glr.c:821 */
break;
- case 386:
-#line 1459 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 546:
+#line 1940 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3886 "src/parser_proc.c" /* glr.c:816 */
+#line 6509 "src/parser_proc.c" /* glr.c:821 */
break;
- case 387:
-#line 1465 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 547:
+#line 1946 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3895 "src/parser_proc.c" /* glr.c:816 */
+#line 6518 "src/parser_proc.c" /* glr.c:821 */
break;
- case 388:
-#line 1472 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 548:
+#line 1953 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6527 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 549:
+#line 1960 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3904 "src/parser_proc.c" /* glr.c:816 */
+#line 6536 "src/parser_proc.c" /* glr.c:821 */
break;
- case 398:
-#line 1491 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 561:
+#line 1987 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3912 "src/parser_proc.c" /* glr.c:816 */
+#line 6544 "src/parser_proc.c" /* glr.c:821 */
break;
- case 399:
-#line 1494 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 562:
+#line 1990 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3920 "src/parser_proc.c" /* glr.c:816 */
+#line 6552 "src/parser_proc.c" /* glr.c:821 */
break;
- case 400:
-#line 1500 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 563:
+#line 1996 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_return_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3928 "src/parser_proc.c" /* glr.c:816 */
+#line 6560 "src/parser_proc.c" /* glr.c:821 */
break;
- case 401:
-#line 1503 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 564:
+#line 1999 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_let_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3936 "src/parser_proc.c" /* glr.c:816 */
+#line 6568 "src/parser_proc.c" /* glr.c:821 */
break;
- case 402:
-#line 1506 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 565:
+#line 2002 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_set_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3944 "src/parser_proc.c" /* glr.c:816 */
+#line 6576 "src/parser_proc.c" /* glr.c:821 */
break;
- case 403:
-#line 1509 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 566:
+#line 2005 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_assert_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3952 "src/parser_proc.c" /* glr.c:816 */
+#line 6584 "src/parser_proc.c" /* glr.c:821 */
break;
- case 404:
-#line 1512 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 567:
+#line 2008 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_free_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 3960 "src/parser_proc.c" /* glr.c:816 */
+#line 6592 "src/parser_proc.c" /* glr.c:821 */
break;
- case 405:
-#line 1518 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 568:
+#line 2014 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3969 "src/parser_proc.c" /* glr.c:816 */
+#line 6601 "src/parser_proc.c" /* glr.c:821 */
break;
- case 406:
-#line 1522 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 569:
+#line 2018 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3979 "src/parser_proc.c" /* glr.c:816 */
+#line 6611 "src/parser_proc.c" /* glr.c:821 */
break;
- case 408:
-#line 1531 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 571:
+#line 2027 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3988 "src/parser_proc.c" /* glr.c:816 */
+#line 6620 "src/parser_proc.c" /* glr.c:821 */
break;
- case 409:
-#line 1535 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 572:
+#line 2031 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 3997 "src/parser_proc.c" /* glr.c:816 */
+#line 6629 "src/parser_proc.c" /* glr.c:821 */
break;
- case 410:
-#line 1542 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 573:
+#line 2038 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_NULL, NULL);
}
-#line 4005 "src/parser_proc.c" /* glr.c:816 */
+#line 6637 "src/parser_proc.c" /* glr.c:821 */
break;
- case 411:
-#line 1545 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 574:
+#line 2041 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6645 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 575:
+#line 2044 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4013 "src/parser_proc.c" /* glr.c:816 */
+#line 6653 "src/parser_proc.c" /* glr.c:821 */
break;
- case 412:
-#line 1548 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 576:
+#line 2047 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 4021 "src/parser_proc.c" /* glr.c:816 */
+#line 6662 "src/parser_proc.c" /* glr.c:821 */
break;
- case 413:
-#line 1551 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 577:
+#line 2051 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 4029 "src/parser_proc.c" /* glr.c:816 */
+#line 6670 "src/parser_proc.c" /* glr.c:821 */
break;
- case 414:
-#line 1554 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 578:
+#line 2054 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 4037 "src/parser_proc.c" /* glr.c:816 */
+#line 6678 "src/parser_proc.c" /* glr.c:821 */
break;
- case 415:
-#line 1560 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 579:
+#line 2060 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4046 "src/parser_proc.c" /* glr.c:816 */
+#line 6687 "src/parser_proc.c" /* glr.c:821 */
break;
- case 416:
-#line 1564 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 580:
+#line 2064 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4056 "src/parser_proc.c" /* glr.c:816 */
+#line 6697 "src/parser_proc.c" /* glr.c:821 */
break;
- case 417:
-#line 1572 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 581:
+#line 2072 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4065 "src/parser_proc.c" /* glr.c:816 */
+#line 6706 "src/parser_proc.c" /* glr.c:821 */
break;
- case 418:
-#line 1579 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 582:
+#line 2079 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 4075 "src/parser_proc.c" /* glr.c:816 */
+#line 6716 "src/parser_proc.c" /* glr.c:821 */
break;
- case 419:
-#line 1587 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 583:
+#line 2084 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6726 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 584:
+#line 2092 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4085 "src/parser_proc.c" /* glr.c:816 */
+#line 6736 "src/parser_proc.c" /* glr.c:821 */
break;
- case 430:
-#line 1608 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 595:
+#line 2113 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 4093 "src/parser_proc.c" /* glr.c:816 */
+#line 6744 "src/parser_proc.c" /* glr.c:821 */
break;
- case 431:
-#line 1611 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 596:
+#line 2116 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 4101 "src/parser_proc.c" /* glr.c:816 */
+#line 6752 "src/parser_proc.c" /* glr.c:821 */
break;
- case 432:
-#line 1617 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 597:
+#line 2122 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4109 "src/parser_proc.c" /* glr.c:816 */
+#line 6760 "src/parser_proc.c" /* glr.c:821 */
break;
- case 433:
-#line 1620 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 598:
+#line 2125 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4117 "src/parser_proc.c" /* glr.c:816 */
+#line 6768 "src/parser_proc.c" /* glr.c:821 */
break;
- case 436:
-#line 1631 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 601:
+#line 2136 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 4125 "src/parser_proc.c" /* glr.c:816 */
+#line 6776 "src/parser_proc.c" /* glr.c:821 */
break;
- case 437:
-#line 1634 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 602:
+#line 2139 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 4133 "src/parser_proc.c" /* glr.c:816 */
+#line 6784 "src/parser_proc.c" /* glr.c:821 */
break;
- case 438:
-#line 1640 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 603:
+#line 2145 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4141 "src/parser_proc.c" /* glr.c:816 */
+#line 6792 "src/parser_proc.c" /* glr.c:821 */
break;
- case 439:
-#line 1643 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 604:
+#line 2148 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4149 "src/parser_proc.c" /* glr.c:816 */
+#line 6800 "src/parser_proc.c" /* glr.c:821 */
break;
- case 440:
-#line 1649 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 605:
+#line 2154 "src/parser_proc_grammar.y" /* glr.c:821 */
{
- (*(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 4158 "src/parser_proc.c" /* glr.c:816 */
+#line 6809 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 606:
+#line 2161 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6818 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 607:
+#line 2165 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(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 6827 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 608:
+#line 2172 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
+}
+#line 6835 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 609:
+#line 2175 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = NULL;
+}
+#line 6843 "src/parser_proc.c" /* glr.c:821 */
+ break;
+
+ case 610:
+#line 2178 "src/parser_proc_grammar.y" /* glr.c:821 */
+ {
+ (*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
+}
+#line 6851 "src/parser_proc.c" /* glr.c:821 */
break;
- case 441:
-#line 1656 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 611:
+#line 2184 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4167 "src/parser_proc.c" /* glr.c:816 */
+#line 6860 "src/parser_proc.c" /* glr.c:821 */
break;
- case 442:
-#line 1663 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 612:
+#line 2191 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4175 "src/parser_proc.c" /* glr.c:816 */
+#line 6868 "src/parser_proc.c" /* glr.c:821 */
break;
- case 443:
-#line 1666 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 613:
+#line 2194 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4183 "src/parser_proc.c" /* glr.c:816 */
+#line 6876 "src/parser_proc.c" /* glr.c:821 */
break;
- case 444:
-#line 1669 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 614:
+#line 2197 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4192 "src/parser_proc.c" /* glr.c:816 */
+#line 6885 "src/parser_proc.c" /* glr.c:821 */
break;
- case 445:
-#line 1676 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 615:
+#line 2204 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4202 "src/parser_proc.c" /* glr.c:816 */
+#line 6895 "src/parser_proc.c" /* glr.c:821 */
break;
- case 446:
-#line 1681 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 616:
+#line 2209 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4212 "src/parser_proc.c" /* glr.c:816 */
+#line 6905 "src/parser_proc.c" /* glr.c:821 */
break;
- case 455:
-#line 1700 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 625:
+#line 2228 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 4220 "src/parser_proc.c" /* glr.c:816 */
+#line 6913 "src/parser_proc.c" /* glr.c:821 */
break;
- case 456:
-#line 1703 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 626:
+#line 2231 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 4228 "src/parser_proc.c" /* glr.c:816 */
+#line 6921 "src/parser_proc.c" /* glr.c:821 */
break;
- case 457:
-#line 1709 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 627:
+#line 2237 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4236 "src/parser_proc.c" /* glr.c:816 */
+#line 6929 "src/parser_proc.c" /* glr.c:821 */
break;
- case 458:
-#line 1712 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 628:
+#line 2240 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4244 "src/parser_proc.c" /* glr.c:816 */
+#line 6937 "src/parser_proc.c" /* glr.c:821 */
break;
- case 459:
-#line 1718 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 629:
+#line 2246 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4253 "src/parser_proc.c" /* glr.c:816 */
+#line 6946 "src/parser_proc.c" /* glr.c:821 */
break;
- case 462:
-#line 1730 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 632:
+#line 2258 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4262 "src/parser_proc.c" /* glr.c:816 */
+#line 6955 "src/parser_proc.c" /* glr.c:821 */
break;
- case 463:
-#line 1737 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 633:
+#line 2265 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4270 "src/parser_proc.c" /* glr.c:816 */
+#line 6963 "src/parser_proc.c" /* glr.c:821 */
break;
- case 464:
-#line 1740 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 634:
+#line 2268 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4278 "src/parser_proc.c" /* glr.c:816 */
+#line 6971 "src/parser_proc.c" /* glr.c:821 */
break;
- case 465:
-#line 1746 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 635:
+#line 2274 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(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 4288 "src/parser_proc.c" /* glr.c:816 */
+#line 6981 "src/parser_proc.c" /* glr.c:821 */
break;
- case 466:
-#line 1754 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 636:
+#line 2282 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(bool*)(&(*yyvalp))) = false;
}
-#line 4296 "src/parser_proc.c" /* glr.c:816 */
+#line 6989 "src/parser_proc.c" /* glr.c:821 */
break;
- case 467:
-#line 1757 "src/parser_proc_grammar.y" /* glr.c:816 */
+ case 637:
+#line 2285 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(bool*)(&(*yyvalp))) = true;
}
-#line 4304 "src/parser_proc.c" /* glr.c:816 */
+#line 6997 "src/parser_proc.c" /* glr.c:821 */
break;
-#line 4308 "src/parser_proc.c" /* glr.c:816 */
+#line 7001 "src/parser_proc.c" /* glr.c:821 */
default: break;
}
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
switch (yytype)
{
- case 133: /* binary_op_token */
-#line 277 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 141: /* binary_op_token */
+#line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4359 "src/parser_proc.c" /* glr.c:846 */
+#line 7052 "src/parser_proc.c" /* glr.c:851 */
break;
- case 134: /* unary_op_token */
-#line 277 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 142: /* unary_op_token */
+#line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4365 "src/parser_proc.c" /* glr.c:846 */
+#line 7058 "src/parser_proc.c" /* glr.c:851 */
break;
- case 135: /* name_token */
-#line 277 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 143: /* name_token */
+#line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4371 "src/parser_proc.c" /* glr.c:846 */
+#line 7064 "src/parser_proc.c" /* glr.c:851 */
break;
- case 136: /* any_noeol_token */
-#line 277 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 144: /* any_noeol_token */
+#line 298 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4377 "src/parser_proc.c" /* glr.c:846 */
+#line 7070 "src/parser_proc.c" /* glr.c:851 */
break;
- case 140: /* lib */
-#line 271 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 149: /* lib */
+#line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4383 "src/parser_proc.c" /* glr.c:846 */
+#line 7076 "src/parser_proc.c" /* glr.c:851 */
break;
- case 141: /* cpp */
-#line 286 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 150: /* cpp */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&(*yyvaluep))));}
-#line 4389 "src/parser_proc.c" /* glr.c:846 */
+#line 7082 "src/parser_proc.c" /* glr.c:851 */
break;
- case 142: /* cpp_exp */
-#line 286 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 151: /* cpp_exp */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&(*yyvaluep))));}
-#line 4395 "src/parser_proc.c" /* glr.c:846 */
+#line 7088 "src/parser_proc.c" /* glr.c:851 */
break;
- case 144: /* cpp_message_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 153: /* cpp_message_token */
+#line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4401 "src/parser_proc.c" /* glr.c:846 */
+#line 7094 "src/parser_proc.c" /* glr.c:851 */
break;
- case 145: /* cpp_include_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 154: /* cpp_include_token */
+#line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4407 "src/parser_proc.c" /* glr.c:846 */
+#line 7100 "src/parser_proc.c" /* glr.c:851 */
break;
- case 146: /* cpp_header_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 155: /* cpp_header_token */
+#line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4413 "src/parser_proc.c" /* glr.c:846 */
+#line 7106 "src/parser_proc.c" /* glr.c:851 */
break;
- case 147: /* cpp_no_arg_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 156: /* cpp_no_arg_token */
+#line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4419 "src/parser_proc.c" /* glr.c:846 */
+#line 7112 "src/parser_proc.c" /* glr.c:851 */
break;
- case 148: /* cpp_name_arg_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 157: /* cpp_name_arg_token */
+#line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4425 "src/parser_proc.c" /* glr.c:846 */
+#line 7118 "src/parser_proc.c" /* glr.c:851 */
break;
- case 149: /* cpp_exp_arg_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 158: /* cpp_exp_arg_token */
+#line 295 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4431 "src/parser_proc.c" /* glr.c:846 */
+#line 7124 "src/parser_proc.c" /* glr.c:851 */
break;
- case 150: /* cpp_special_name_token */
-#line 274 "src/parser_proc_grammar.y" /* glr.c:846 */
- {}
-#line 4437 "src/parser_proc.c" /* glr.c:846 */
- break;
-
- case 151: /* cpp_macro_decl */
-#line 288 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 159: /* cpp_macro_decl */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_cpp_macro_decl_free(&(*(struct psi_cpp_macro_decl **)(&(*yyvaluep))));}
-#line 4443 "src/parser_proc.c" /* glr.c:846 */
+#line 7130 "src/parser_proc.c" /* glr.c:851 */
break;
- case 152: /* cpp_macro_sig */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 160: /* cpp_macro_sig */
+#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4449 "src/parser_proc.c" /* glr.c:846 */
+#line 7136 "src/parser_proc.c" /* glr.c:851 */
break;
- case 153: /* cpp_macro_sig_args */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 161: /* cpp_macro_sig_args */
+#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4455 "src/parser_proc.c" /* glr.c:846 */
+#line 7142 "src/parser_proc.c" /* glr.c:851 */
break;
- case 154: /* cpp_macro_decl_tokens */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 162: /* cpp_macro_decl_tokens */
+#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4461 "src/parser_proc.c" /* glr.c:846 */
+#line 7148 "src/parser_proc.c" /* glr.c:851 */
break;
- case 155: /* cpp_macro_decl_token_list */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 163: /* cpp_macro_decl_token_list */
+#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4467 "src/parser_proc.c" /* glr.c:846 */
+#line 7154 "src/parser_proc.c" /* glr.c:851 */
break;
- case 156: /* cpp_macro_exp */
-#line 292 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 164: /* cpp_macro_exp */
+#line 313 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_num_exp_free(&(*(struct psi_num_exp **)(&(*yyvaluep))));}
-#line 4473 "src/parser_proc.c" /* glr.c:846 */
+#line 7160 "src/parser_proc.c" /* glr.c:851 */
break;
- case 157: /* cpp_macro_call_args */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 165: /* cpp_macro_call_args */
+#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4479 "src/parser_proc.c" /* glr.c:846 */
+#line 7166 "src/parser_proc.c" /* glr.c:851 */
break;
- case 158: /* cpp_macro_call_arg_list */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 166: /* cpp_macro_call_arg_list */
+#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4485 "src/parser_proc.c" /* glr.c:846 */
+#line 7172 "src/parser_proc.c" /* glr.c:851 */
break;
- case 159: /* constant */
-#line 298 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 167: /* constant */
+#line 319 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_const_free(&(*(struct psi_const **)(&(*yyvaluep))));}
-#line 4491 "src/parser_proc.c" /* glr.c:846 */
+#line 7178 "src/parser_proc.c" /* glr.c:851 */
break;
- case 160: /* constant_type */
-#line 300 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_const_type_free(&(*(struct psi_const_type **)(&(*yyvaluep))));}
-#line 4497 "src/parser_proc.c" /* glr.c:846 */
+ case 168: /* impl_def_val */
+#line 321 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_impl_def_val_free(&(*(struct psi_impl_def_val **)(&(*yyvaluep))));}
+#line 7184 "src/parser_proc.c" /* glr.c:851 */
break;
- case 161: /* constant_type_token */
-#line 295 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 169: /* impl_def_val_token */
+#line 316 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4503 "src/parser_proc.c" /* glr.c:846 */
+#line 7190 "src/parser_proc.c" /* glr.c:851 */
break;
- case 162: /* impl_def_val */
-#line 302 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_impl_def_val_free(&(*(struct psi_impl_def_val **)(&(*yyvaluep))));}
-#line 4509 "src/parser_proc.c" /* glr.c:846 */
+ case 170: /* decl_typedef */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 7196 "src/parser_proc.c" /* glr.c:851 */
break;
- case 163: /* impl_def_val_token */
-#line 295 "src/parser_proc_grammar.y" /* glr.c:846 */
- {}
-#line 4515 "src/parser_proc.c" /* glr.c:846 */
+ case 171: /* typedef */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 7202 "src/parser_proc.c" /* glr.c:851 */
break;
- case 164: /* decl_typedef */
-#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 172: /* typedef_anon */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4521 "src/parser_proc.c" /* glr.c:846 */
+#line 7208 "src/parser_proc.c" /* glr.c:851 */
break;
- case 165: /* typedef */
-#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 173: /* typedef_decl */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4527 "src/parser_proc.c" /* glr.c:846 */
+#line 7214 "src/parser_proc.c" /* glr.c:851 */
break;
- case 166: /* const_decl_type */
-#line 311 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 4533 "src/parser_proc.c" /* glr.c:846 */
+ case 174: /* typedef_anon_decl */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 7220 "src/parser_proc.c" /* glr.c:851 */
break;
- case 167: /* decl_type */
-#line 311 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 175: /* qualified_decl_type */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 4539 "src/parser_proc.c" /* glr.c:846 */
+#line 7226 "src/parser_proc.c" /* glr.c:851 */
break;
- case 168: /* decl_type_complex */
-#line 311 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 177: /* decl_type */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 4545 "src/parser_proc.c" /* glr.c:846 */
+#line 7232 "src/parser_proc.c" /* glr.c:851 */
break;
- case 169: /* decl_type_simple */
-#line 305 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4551 "src/parser_proc.c" /* glr.c:846 */
+ case 178: /* decl_type_complex */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
+#line 7238 "src/parser_proc.c" /* glr.c:851 */
break;
- case 170: /* decl_real_type */
-#line 305 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 179: /* decl_type_simple */
+#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4557 "src/parser_proc.c" /* glr.c:846 */
+#line 7244 "src/parser_proc.c" /* glr.c:851 */
break;
- case 171: /* decl_stdint_type */
-#line 308 "src/parser_proc_grammar.y" /* glr.c:846 */
- {}
-#line 4563 "src/parser_proc.c" /* glr.c:846 */
+ case 180: /* decl_real_type */
+#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7250 "src/parser_proc.c" /* glr.c:851 */
break;
- case 172: /* int_signed */
-#line 283 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 181: /* int_signed */
+#line 304 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4569 "src/parser_proc.c" /* glr.c:846 */
+#line 7256 "src/parser_proc.c" /* glr.c:851 */
break;
- case 173: /* int_width */
-#line 280 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 182: /* int_width */
+#line 301 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4575 "src/parser_proc.c" /* glr.c:846 */
+#line 7262 "src/parser_proc.c" /* glr.c:851 */
break;
- case 174: /* decl_int_type */
-#line 305 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 183: /* decl_int_type */
+#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4581 "src/parser_proc.c" /* glr.c:846 */
+#line 7268 "src/parser_proc.c" /* glr.c:851 */
break;
- case 175: /* int_signed_types */
-#line 280 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 184: /* int_signed_types */
+#line 301 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4587 "src/parser_proc.c" /* glr.c:846 */
+#line 7274 "src/parser_proc.c" /* glr.c:851 */
break;
- case 176: /* signed_short_types */
-#line 283 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 185: /* signed_short_types */
+#line 304 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4593 "src/parser_proc.c" /* glr.c:846 */
+#line 7280 "src/parser_proc.c" /* glr.c:851 */
break;
- case 177: /* signed_long_types */
-#line 283 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 186: /* signed_long_types */
+#line 304 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4599 "src/parser_proc.c" /* glr.c:846 */
+#line 7286 "src/parser_proc.c" /* glr.c:851 */
break;
- case 178: /* int_width_types */
-#line 280 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 187: /* int_width_types */
+#line 301 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4605 "src/parser_proc.c" /* glr.c:846 */
+#line 7292 "src/parser_proc.c" /* glr.c:851 */
break;
- case 179: /* decl_stmt */
-#line 313 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 188: /* decl_stmt */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4611 "src/parser_proc.c" /* glr.c:846 */
+#line 7298 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 189: /* decl_asm */
+#line 327 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7304 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 190: /* quoted_strings */
+#line 327 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
+#line 7310 "src/parser_proc.c" /* glr.c:851 */
break;
- case 185: /* decl_vars */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 191: /* decl_extvar_stmt */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4617 "src/parser_proc.c" /* glr.c:846 */
+#line 7316 "src/parser_proc.c" /* glr.c:851 */
break;
- case 186: /* decl */
-#line 313 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 192: /* decl_extvar_list */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7322 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 193: /* decl_vars */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7328 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 194: /* ignored_decl */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7334 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 199: /* decl */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
+#line 7340 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 200: /* decl_body */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4623 "src/parser_proc.c" /* glr.c:846 */
+#line 7346 "src/parser_proc.c" /* glr.c:851 */
break;
- case 187: /* decl_body */
-#line 313 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 201: /* decl_func_body */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4629 "src/parser_proc.c" /* glr.c:846 */
+#line 7352 "src/parser_proc.c" /* glr.c:851 */
break;
- case 188: /* decl_func_body */
-#line 313 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 202: /* decl_functor_body */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4635 "src/parser_proc.c" /* glr.c:846 */
+#line 7358 "src/parser_proc.c" /* glr.c:851 */
break;
- case 189: /* decl_functor_body */
-#line 313 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 203: /* decl_anon_functor_body */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 4641 "src/parser_proc.c" /* glr.c:846 */
+#line 7364 "src/parser_proc.c" /* glr.c:851 */
break;
- case 190: /* decl_functor */
-#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 204: /* decl_functor */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4647 "src/parser_proc.c" /* glr.c:846 */
+#line 7370 "src/parser_proc.c" /* glr.c:851 */
break;
- case 191: /* decl_func */
-#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 205: /* decl_anon_functor */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4653 "src/parser_proc.c" /* glr.c:846 */
+#line 7376 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 206: /* decl_func */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 7382 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 207: /* decl_args */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7388 "src/parser_proc.c" /* glr.c:851 */
break;
- case 192: /* decl_args */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 208: /* decl_arg_list */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4659 "src/parser_proc.c" /* glr.c:846 */
+#line 7394 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 209: /* decl_anon_arg */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
+#line 7400 "src/parser_proc.c" /* glr.c:851 */
break;
- case 193: /* decl_arg */
-#line 315 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 210: /* decl_arg */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 4665 "src/parser_proc.c" /* glr.c:846 */
+#line 7406 "src/parser_proc.c" /* glr.c:851 */
break;
- case 194: /* decl_var */
-#line 317 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 211: /* decl_var */
+#line 336 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_var_free(&(*(struct psi_decl_var **)(&(*yyvaluep))));}
-#line 4671 "src/parser_proc.c" /* glr.c:846 */
+#line 7412 "src/parser_proc.c" /* glr.c:851 */
break;
- case 195: /* decl_union */
-#line 321 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 212: /* decl_union */
+#line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_union_free(&(*(struct psi_decl_union **)(&(*yyvaluep))));}
-#line 4677 "src/parser_proc.c" /* glr.c:846 */
+#line 7418 "src/parser_proc.c" /* glr.c:851 */
break;
- case 196: /* decl_struct */
-#line 319 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 213: /* decl_struct */
+#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_struct_free(&(*(struct psi_decl_struct **)(&(*yyvaluep))));}
-#line 4683 "src/parser_proc.c" /* glr.c:846 */
+#line 7424 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 214: /* decl_struct_args */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7430 "src/parser_proc.c" /* glr.c:851 */
break;
- case 197: /* decl_struct_args */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 215: /* struct_args_block */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4689 "src/parser_proc.c" /* glr.c:846 */
+#line 7436 "src/parser_proc.c" /* glr.c:851 */
break;
- case 198: /* struct_args_block */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 216: /* struct_args */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4695 "src/parser_proc.c" /* glr.c:846 */
+#line 7442 "src/parser_proc.c" /* glr.c:851 */
break;
- case 199: /* struct_args */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 217: /* struct_arg_var_list */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4701 "src/parser_proc.c" /* glr.c:846 */
+#line 7448 "src/parser_proc.c" /* glr.c:851 */
break;
- case 200: /* decl_enum */
-#line 323 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 218: /* decl_vars_with_layout */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7454 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 219: /* decl_enum */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_enum_free(&(*(struct psi_decl_enum **)(&(*yyvaluep))));}
-#line 4707 "src/parser_proc.c" /* glr.c:846 */
+#line 7460 "src/parser_proc.c" /* glr.c:851 */
break;
- case 201: /* decl_enum_items */
-#line 327 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 220: /* decl_enum_items */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4713 "src/parser_proc.c" /* glr.c:846 */
+#line 7466 "src/parser_proc.c" /* glr.c:851 */
break;
- case 202: /* decl_enum_item */
-#line 325 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 221: /* decl_enum_item */
+#line 344 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_enum_item_free(&(*(struct psi_decl_enum_item **)(&(*yyvaluep))));}
-#line 4719 "src/parser_proc.c" /* glr.c:846 */
+#line 7472 "src/parser_proc.c" /* glr.c:851 */
break;
- case 203: /* num_exp */
-#line 378 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 222: /* num_exp */
+#line 402 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_num_exp_free(&(*(struct psi_num_exp **)(&(*yyvaluep))));}
-#line 4725 "src/parser_proc.c" /* glr.c:846 */
+#line 7478 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 223: /* number */
+#line 404 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
+#line 7484 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 224: /* sizeof */
+#line 354 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
+#line 7490 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 225: /* sizeof_body */
+#line 354 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
+#line 7496 "src/parser_proc.c" /* glr.c:851 */
break;
- case 204: /* number */
-#line 380 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 226: /* sizeof_body_notypes */
+#line 354 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
-#line 4731 "src/parser_proc.c" /* glr.c:846 */
+#line 7502 "src/parser_proc.c" /* glr.c:851 */
break;
- case 205: /* enum_name */
-#line 271 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 227: /* enum_name */
+#line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4737 "src/parser_proc.c" /* glr.c:846 */
+#line 7508 "src/parser_proc.c" /* glr.c:851 */
break;
- case 206: /* union_name */
-#line 271 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 228: /* union_name */
+#line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4743 "src/parser_proc.c" /* glr.c:846 */
+#line 7514 "src/parser_proc.c" /* glr.c:851 */
break;
- case 207: /* struct_name */
-#line 271 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 229: /* struct_name */
+#line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4749 "src/parser_proc.c" /* glr.c:846 */
+#line 7520 "src/parser_proc.c" /* glr.c:851 */
break;
- case 208: /* optional_name */
-#line 271 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 230: /* optional_name */
+#line 292 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4755 "src/parser_proc.c" /* glr.c:846 */
+#line 7526 "src/parser_proc.c" /* glr.c:851 */
break;
- case 209: /* decl_layout */
-#line 332 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 232: /* decl_layout */
+#line 351 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_layout_free(&(*(struct psi_layout **)(&(*yyvaluep))));}
-#line 4761 "src/parser_proc.c" /* glr.c:846 */
+#line 7532 "src/parser_proc.c" /* glr.c:851 */
break;
- case 210: /* align_and_size */
-#line 330 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 233: /* align_and_size */
+#line 349 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4767 "src/parser_proc.c" /* glr.c:846 */
+#line 7538 "src/parser_proc.c" /* glr.c:851 */
break;
- case 211: /* array_size */
-#line 383 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 234: /* array_size */
+#line 407 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4773 "src/parser_proc.c" /* glr.c:846 */
+#line 7544 "src/parser_proc.c" /* glr.c:851 */
break;
- case 212: /* indirection */
-#line 383 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 236: /* indirection */
+#line 407 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4779 "src/parser_proc.c" /* glr.c:846 */
+#line 7550 "src/parser_proc.c" /* glr.c:851 */
break;
- case 213: /* pointers */
-#line 383 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 237: /* pointers */
+#line 407 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4785 "src/parser_proc.c" /* glr.c:846 */
+#line 7556 "src/parser_proc.c" /* glr.c:851 */
break;
- case 214: /* asterisks */
-#line 383 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 238: /* asterisks */
+#line 407 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 4791 "src/parser_proc.c" /* glr.c:846 */
+#line 7562 "src/parser_proc.c" /* glr.c:851 */
break;
- case 215: /* impl */
-#line 335 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 241: /* impl */
+#line 357 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_free(&(*(struct psi_impl **)(&(*yyvaluep))));}
-#line 4797 "src/parser_proc.c" /* glr.c:846 */
+#line 7568 "src/parser_proc.c" /* glr.c:851 */
break;
- case 216: /* impl_func */
-#line 337 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 242: /* impl_func */
+#line 359 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_func_free(&(*(struct psi_impl_func **)(&(*yyvaluep))));}
-#line 4803 "src/parser_proc.c" /* glr.c:846 */
+#line 7574 "src/parser_proc.c" /* glr.c:851 */
break;
- case 217: /* impl_args */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 243: /* impl_args */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4809 "src/parser_proc.c" /* glr.c:846 */
+#line 7580 "src/parser_proc.c" /* glr.c:851 */
break;
- case 218: /* impl_arg */
-#line 339 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 244: /* impl_arg */
+#line 361 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_arg_free(&(*(struct psi_impl_arg **)(&(*yyvaluep))));}
-#line 4815 "src/parser_proc.c" /* glr.c:846 */
+#line 7586 "src/parser_proc.c" /* glr.c:851 */
break;
- case 219: /* impl_var */
-#line 343 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 245: /* impl_var */
+#line 365 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_var_free(&(*(struct psi_impl_var **)(&(*yyvaluep))));}
-#line 4821 "src/parser_proc.c" /* glr.c:846 */
+#line 7592 "src/parser_proc.c" /* glr.c:851 */
break;
- case 220: /* impl_type */
-#line 341 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 246: /* impl_type */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_type_free(&(*(struct psi_impl_type **)(&(*yyvaluep))));}
-#line 4827 "src/parser_proc.c" /* glr.c:846 */
+#line 7598 "src/parser_proc.c" /* glr.c:851 */
break;
- case 221: /* impl_type_token */
-#line 373 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4833 "src/parser_proc.c" /* glr.c:846 */
+ case 247: /* impl_type_restricted */
+#line 363 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_impl_type_free(&(*(struct psi_impl_type **)(&(*yyvaluep))));}
+#line 7604 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 248: /* impl_type_token */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7610 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 249: /* impl_type_restricted_token */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7616 "src/parser_proc.c" /* glr.c:851 */
break;
- case 222: /* impl_stmts */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 250: /* impl_type_extended_token */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7622 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 251: /* impl_stmts */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4839 "src/parser_proc.c" /* glr.c:846 */
+#line 7628 "src/parser_proc.c" /* glr.c:851 */
break;
- case 223: /* impl_stmt */
-#line 371 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 252: /* impl_stmt */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_stmt_free(&(*(struct psi_token ***)(&(*yyvaluep))));}
-#line 4845 "src/parser_proc.c" /* glr.c:846 */
+#line 7634 "src/parser_proc.c" /* glr.c:851 */
break;
- case 224: /* let_stmt */
-#line 346 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 253: /* let_stmt */
+#line 368 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_stmt_free(&(*(struct psi_let_stmt **)(&(*yyvaluep))));}
-#line 4851 "src/parser_proc.c" /* glr.c:846 */
+#line 7640 "src/parser_proc.c" /* glr.c:851 */
break;
- case 225: /* let_exp */
-#line 348 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 254: /* let_exp */
+#line 370 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 4857 "src/parser_proc.c" /* glr.c:846 */
+#line 7646 "src/parser_proc.c" /* glr.c:851 */
break;
- case 226: /* let_exp_byref */
-#line 348 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 255: /* let_exp_byref */
+#line 370 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 4863 "src/parser_proc.c" /* glr.c:846 */
+#line 7652 "src/parser_proc.c" /* glr.c:851 */
break;
- case 227: /* let_exp_assign */
-#line 348 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 256: /* let_exp_assign */
+#line 370 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 4869 "src/parser_proc.c" /* glr.c:846 */
+#line 7658 "src/parser_proc.c" /* glr.c:851 */
break;
- case 228: /* let_calloc */
-#line 350 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 257: /* let_calloc */
+#line 372 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_calloc_free(&(*(struct psi_let_calloc **)(&(*yyvaluep))));}
-#line 4875 "src/parser_proc.c" /* glr.c:846 */
+#line 7664 "src/parser_proc.c" /* glr.c:851 */
break;
- case 229: /* let_callback */
-#line 352 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 258: /* let_callback */
+#line 374 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_callback_free(&(*(struct psi_let_callback **)(&(*yyvaluep))));}
-#line 4881 "src/parser_proc.c" /* glr.c:846 */
+#line 7670 "src/parser_proc.c" /* glr.c:851 */
break;
- case 230: /* let_func */
-#line 354 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 259: /* let_func */
+#line 376 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_func_free(&(*(struct psi_let_func **)(&(*yyvaluep))));}
-#line 4887 "src/parser_proc.c" /* glr.c:846 */
+#line 7676 "src/parser_proc.c" /* glr.c:851 */
break;
- case 231: /* let_func_token */
-#line 373 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4893 "src/parser_proc.c" /* glr.c:846 */
+ case 260: /* let_func_token */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7682 "src/parser_proc.c" /* glr.c:851 */
break;
- case 232: /* let_func_exps */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 261: /* let_func_exps */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4899 "src/parser_proc.c" /* glr.c:846 */
+#line 7688 "src/parser_proc.c" /* glr.c:851 */
break;
- case 233: /* let_exps */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 262: /* let_exps */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4905 "src/parser_proc.c" /* glr.c:846 */
+#line 7694 "src/parser_proc.c" /* glr.c:851 */
break;
- case 234: /* callback_rval */
-#line 373 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4911 "src/parser_proc.c" /* glr.c:846 */
+ case 263: /* callback_rval */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7700 "src/parser_proc.c" /* glr.c:851 */
break;
- case 235: /* callback_arg_list */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 264: /* callback_arg_list */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4917 "src/parser_proc.c" /* glr.c:846 */
+#line 7706 "src/parser_proc.c" /* glr.c:851 */
break;
- case 236: /* callback_args */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 265: /* callback_args */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4923 "src/parser_proc.c" /* glr.c:846 */
+#line 7712 "src/parser_proc.c" /* glr.c:851 */
break;
- case 237: /* return_stmt */
-#line 364 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 266: /* return_stmt */
+#line 386 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_return_stmt_free(&(*(struct psi_return_stmt **)(&(*yyvaluep))));}
-#line 4929 "src/parser_proc.c" /* glr.c:846 */
+#line 7718 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 267: /* return_exp */
+#line 388 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_return_exp_free(&(*(struct psi_return_exp **)(&(*yyvaluep))));}
+#line 7724 "src/parser_proc.c" /* glr.c:851 */
+ break;
+
+ case 268: /* call_decl_vars */
+#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
+#line 7730 "src/parser_proc.c" /* glr.c:851 */
break;
- case 238: /* set_stmt */
-#line 356 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 269: /* set_stmt */
+#line 378 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_set_stmt_free(&(*(struct psi_set_stmt **)(&(*yyvaluep))));}
-#line 4935 "src/parser_proc.c" /* glr.c:846 */
+#line 7736 "src/parser_proc.c" /* glr.c:851 */
break;
- case 239: /* set_exp */
-#line 358 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 270: /* set_exp */
+#line 380 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_set_exp_free(&(*(struct psi_set_exp **)(&(*yyvaluep))));}
-#line 4941 "src/parser_proc.c" /* glr.c:846 */
+#line 7742 "src/parser_proc.c" /* glr.c:851 */
break;
- case 240: /* set_func */
-#line 360 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 271: /* set_func */
+#line 382 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_set_func_free(&(*(struct psi_set_func **)(&(*yyvaluep))));}
-#line 4947 "src/parser_proc.c" /* glr.c:846 */
+#line 7748 "src/parser_proc.c" /* glr.c:851 */
break;
- case 241: /* set_func_token */
-#line 373 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4953 "src/parser_proc.c" /* glr.c:846 */
+ case 272: /* set_func_token */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7754 "src/parser_proc.c" /* glr.c:851 */
break;
- case 242: /* set_func_exps */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 273: /* set_func_exps */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4959 "src/parser_proc.c" /* glr.c:846 */
+#line 7760 "src/parser_proc.c" /* glr.c:851 */
break;
- case 243: /* set_exps */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 274: /* set_exps */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4965 "src/parser_proc.c" /* glr.c:846 */
+#line 7766 "src/parser_proc.c" /* glr.c:851 */
break;
- case 244: /* assert_stmt */
-#line 362 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 275: /* assert_stmt */
+#line 384 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_assert_stmt_free(&(*(struct psi_assert_stmt **)(&(*yyvaluep))));}
-#line 4971 "src/parser_proc.c" /* glr.c:846 */
+#line 7772 "src/parser_proc.c" /* glr.c:851 */
break;
- case 245: /* assert_stmt_token */
-#line 373 "src/parser_proc_grammar.y" /* glr.c:846 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 4977 "src/parser_proc.c" /* glr.c:846 */
+ case 276: /* assert_stmt_token */
+#line 397 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7778 "src/parser_proc.c" /* glr.c:851 */
break;
- case 246: /* free_stmt */
-#line 366 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 277: /* free_stmt */
+#line 390 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_free_stmt_free(&(*(struct psi_free_stmt **)(&(*yyvaluep))));}
-#line 4983 "src/parser_proc.c" /* glr.c:846 */
+#line 7784 "src/parser_proc.c" /* glr.c:851 */
break;
- case 247: /* free_exps */
-#line 375 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 278: /* free_exps */
+#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 4989 "src/parser_proc.c" /* glr.c:846 */
+#line 7790 "src/parser_proc.c" /* glr.c:851 */
break;
- case 248: /* free_exp */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 279: /* free_exp */
+#line 392 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_free_exp_free(&(*(struct psi_free_exp **)(&(*yyvaluep))));}
-#line 4995 "src/parser_proc.c" /* glr.c:846 */
+#line 7796 "src/parser_proc.c" /* glr.c:851 */
break;
- case 249: /* reference */
-#line 385 "src/parser_proc_grammar.y" /* glr.c:846 */
+ case 280: /* reference */
+#line 409 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 5001 "src/parser_proc.c" /* glr.c:846 */
+#line 7802 "src/parser_proc.c" /* glr.c:851 */
break;
}
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-540)))
+ (!!((Yystate) == (-719)))
/** True iff LR state YYSTATE has only a default reduction (regardless
* of token). */
static inline yybool
yyisDefaultedState (yyStateNum yystate)
{
- return yypact_value_is_default (yypact[yystate]);
+ return (yybool) yypact_value_is_default (yypact[yystate]);
}
/** The default reduction for YYSTATE, assuming it has one. */
*/
static inline void
yygetLRActions (yyStateNum yystate, int yytoken,
- int* yyaction, const short int** yyconflicts)
+ int* yyaction, const short** yyconflicts)
{
int yyindex = yypact[yystate] + yytoken;
- if (yypact_value_is_default (yypact[yystate])
+ if (yyisDefaultedState (yystate)
|| yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken)
{
*yyaction = -yydefact[yystate];
static inline yybool
yyisShiftAction (int yyaction)
{
- return 0 < yyaction;
+ return (yybool) (0 < yyaction);
}
static inline yybool
yyisErrorAction (int yyaction)
{
- return yyaction == 0;
+ return (yybool) (yyaction == 0);
}
/* GLRStates */
yyGLRStackItem* yyp0, *yyp1;
size_t yynewSize;
size_t yyn;
- size_t yysize = yystackp->yynextFree - yystackp->yyitems;
+ size_t yysize = (size_t) (yystackp->yynextFree - yystackp->yyitems);
if (YYMAXDEPTH - YYHEADROOM < yysize)
yyMemoryExhausted (yystackp);
yynewSize = 2*yysize;
if (yyj != yyi)
{
YYDPRINTF ((stderr, "Rename stack %lu -> %lu.\n",
- (unsigned long int) yyi, (unsigned long int) yyj));
+ (unsigned long) yyi, (unsigned long) yyj));
}
yyj += 1;
}
`----------------------------------------------------------------------*/
static inline void
-yy_reduce_print (int yynormal, yyGLRStackItem* yyvsp, size_t yyk,
+yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, size_t yyk,
yyRuleNum yyrule, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
{
int yynrhs = yyrhsLength (yyrule);
int yyi;
YYFPRINTF (stderr, "Reducing stack %lu by rule %d (line %lu):\n",
- (unsigned long int) yyk, yyrule - 1,
- (unsigned long int) yyrline[yyrule]);
+ (unsigned long) yyk, yyrule - 1,
+ (unsigned long) yyrline[yyrule]);
if (! yynormal)
yyfillin (yyvsp, 1, -yynrhs);
/* The symbols being reduced. */
YYFPRINTF (stderr, " $%d = ", yyi + 1);
yy_symbol_print (stderr,
yystos[yyvsp[yyi - yynrhs + 1].yystate.yylrState],
- &yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yysval
- , P, tokens, index);
+ &yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yysval , P, tokens, index);
if (!yyvsp[yyi - yynrhs + 1].yystate.yyresolved)
YYFPRINTF (stderr, " (unresolved)");
YYFPRINTF (stderr, "\n");
yyGLRStackItem* yyrhs = (yyGLRStackItem*) yystackp->yytops.yystates[yyk];
YYASSERT (yyk == 0);
yystackp->yynextFree -= yynrhs;
- yystackp->yyspaceLeft += yynrhs;
+ yystackp->yyspaceLeft += (size_t) yynrhs;
yystackp->yytops.yystates[0] = & yystackp->yynextFree[-1].yystate;
- YY_REDUCE_PRINT ((1, yyrhs, yyk, yyrule, P, tokens, index));
+ YY_REDUCE_PRINT ((yytrue, yyrhs, yyk, yyrule, P, tokens, index));
return yyuserAction (yyrule, yynrhs, yyrhs, yystackp,
yyvalp, P, tokens, index);
}
}
yyupdateSplit (yystackp, yys);
yystackp->yytops.yystates[yyk] = yys;
- YY_REDUCE_PRINT ((0, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, yyk, yyrule, P, tokens, index));
+ YY_REDUCE_PRINT ((yyfalse, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, yyk, yyrule, P, tokens, index));
return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1,
yystackp, yyvalp, P, tokens, index);
}
if (yyflag == yyerr && yystackp->yysplitPoint != YY_NULLPTR)
{
YYDPRINTF ((stderr, "Parse on stack %lu rejected by rule #%d.\n",
- (unsigned long int) yyk, yyrule - 1));
+ (unsigned long) yyk, yyrule - 1));
}
if (yyflag != yyok)
return yyflag;
YYDPRINTF ((stderr,
"Reduced stack %lu by rule #%d; action deferred. "
"Now in state %d.\n",
- (unsigned long int) yyk, yyrule - 1, yynewLRState));
+ (unsigned long) yyk, yyrule - 1, yynewLRState));
for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1)
if (yyi != yyk && yystackp->yytops.yystates[yyi] != YY_NULLPTR)
{
yyaddDeferredAction (yystackp, yyk, yyp, yys0, yyrule);
yymarkStackDeleted (yystackp, yyk);
YYDPRINTF ((stderr, "Merging stack %lu into stack %lu.\n",
- (unsigned long int) yyk,
- (unsigned long int) yyi));
+ (unsigned long) yyk,
+ (unsigned long) yyi));
return yyok;
}
yyp = yyp->yypred;
}
if (yystackp->yytops.yysize >= yystackp->yytops.yycapacity)
{
- yyGLRState** yynewStates;
+ yyGLRState** yynewStates = YY_NULLPTR;
yybool* yynewLookaheadNeeds;
- yynewStates = YY_NULLPTR;
-
if (yystackp->yytops.yycapacity
> (YYSIZEMAX / (2 * sizeof yynewStates[0])))
yyMemoryExhausted (yystackp);
else
YYFPRINTF (stderr, "%*s%s -> <Rule %d, tokens %lu .. %lu>\n",
yyindent, "", yytokenName (yylhsNonterm (yyx->yyrule)),
- yyx->yyrule - 1, (unsigned long int) (yys->yyposn + 1),
- (unsigned long int) yyx->yystate->yyposn);
+ yyx->yyrule - 1, (unsigned long) (yys->yyposn + 1),
+ (unsigned long) yyx->yystate->yyposn);
for (yyi = 1; yyi <= yynrhs; yyi += 1)
{
if (yystates[yyi]->yyresolved)
else
YYFPRINTF (stderr, "%*s%s <tokens %lu .. %lu>\n", yyindent+2, "",
yytokenName (yystos[yystates[yyi]->yylrState]),
- (unsigned long int) (yystates[yyi-1]->yyposn + 1),
- (unsigned long int) yystates[yyi]->yyposn);
+ (unsigned long) (yystates[yyi-1]->yyposn + 1),
+ (unsigned long) yystates[yyi]->yyposn);
}
else
yyreportTree (yystates[yyi]->yysemantics.yyfirstVal, yyindent+2);
yyr = yyp, yyp = yyq, yyq = yyp->yypred)
yyp->yypred = yyr;
- yystackp->yyspaceLeft += yystackp->yynextFree - yystackp->yyitems;
+ yystackp->yyspaceLeft += (size_t) (yystackp->yynextFree - yystackp->yyitems);
yystackp->yynextFree = ((yyGLRStackItem*) yystackp->yysplitPoint) + 1;
- yystackp->yyspaceLeft -= yystackp->yynextFree - yystackp->yyitems;
+ yystackp->yyspaceLeft -= (size_t) (yystackp->yynextFree - yystackp->yyitems);
yystackp->yysplitPoint = YY_NULLPTR;
yystackp->yylastDeleted = YY_NULLPTR;
{
yyStateNum yystate = yystackp->yytops.yystates[yyk]->yylrState;
YYDPRINTF ((stderr, "Stack %lu Entering state %d\n",
- (unsigned long int) yyk, yystate));
+ (unsigned long) yyk, yystate));
YYASSERT (yystate != YYFINAL);
if (yyrule == 0)
{
YYDPRINTF ((stderr, "Stack %lu dies.\n",
- (unsigned long int) yyk));
+ (unsigned long) yyk));
yymarkStackDeleted (yystackp, yyk);
return yyok;
}
YYDPRINTF ((stderr,
"Stack %lu dies "
"(predicate failure or explicit user error).\n",
- (unsigned long int) yyk));
+ (unsigned long) yyk));
yymarkStackDeleted (yystackp, yyk);
return yyok;
}
{
yySymbol yytoken;
int yyaction;
- const short int* yyconflicts;
+ const short* yyconflicts;
yystackp->yytops.yylookaheadNeeds[yyk] = yytrue;
if (yychar == YYEMPTY)
YYRESULTTAG yyflag;
size_t yynewStack = yysplitStack (yystackp, yyk);
YYDPRINTF ((stderr, "Splitting off stack %lu from %lu.\n",
- (unsigned long int) yynewStack,
- (unsigned long int) yyk));
+ (unsigned long) yynewStack,
+ (unsigned long) yyk));
yyflag = yyglrReduce (yystackp, yynewStack,
*yyconflicts,
yyimmediate[*yyconflicts], P, tokens, index);
else if (yyflag == yyerr)
{
YYDPRINTF ((stderr, "Stack %lu dies.\n",
- (unsigned long int) yynewStack));
+ (unsigned long) yynewStack));
yymarkStackDeleted (yystackp, yynewStack);
}
else
else if (yyisErrorAction (yyaction))
{
YYDPRINTF ((stderr, "Stack %lu dies.\n",
- (unsigned long int) yyk));
+ (unsigned long) yyk));
yymarkStackDeleted (yystackp, yyk);
break;
}
YYDPRINTF ((stderr,
"Stack %lu dies "
"(predicate failure or explicit user error).\n",
- (unsigned long int) yyk));
+ (unsigned long) yyk));
yymarkStackDeleted (yystackp, yyk);
break;
}
yyarg[yycount++] = yytokenName (yyx);
{
size_t yysz = yysize + yytnamerr (YY_NULLPTR, yytokenName (yyx));
- yysize_overflow |= yysz < yysize;
+ if (yysz < yysize)
+ yysize_overflow = yytrue;
yysize = yysz;
}
}
case N: \
yyformat = S; \
break
+ default: /* Avoid compiler warnings. */
YYCASE_(0, YY_("syntax error"));
YYCASE_(1, YY_("syntax error, unexpected %s"));
YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
{
size_t yysz = yysize + strlen (yyformat);
- yysize_overflow |= yysz < yysize;
+ if (yysz < yysize)
+ yysize_overflow = yytrue;
yysize = yysz;
}
yylval = yyval_default;
/* User initialization code. */
- #line 117 "src/parser_proc_grammar.y" /* glr.c:2270 */
+#line 127 "src/parser_proc_grammar.y" /* glr.c:2265 */
{
}
-#line 6354 "src/parser_proc.c" /* glr.c:2270 */
+#line 9155 "src/parser_proc.c" /* glr.c:2265 */
if (! yyinitGLRStack (yystackp, YYINITDEPTH))
goto yyexhaustedlab;
{
yyRuleNum yyrule;
int yyaction;
- const short int* yyconflicts;
+ const short* yyconflicts;
yyStateNum yystate = yystack.yytops.yystates[0]->yylrState;
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
yyrule = yydefaultAction (yystate);
if (yyrule == 0)
{
-
yyreportSyntaxError (&yystack, P, tokens, index);
goto yyuser_error;
}
}
else if (yyisErrorAction (yyaction))
{
-
yyreportSyntaxError (&yystack, P, tokens, index);
goto yyuser_error;
}
size_t yys;
for (yys = 0; yys < yystack.yytops.yysize; yys += 1)
- yystackp->yytops.yylookaheadNeeds[yys] = yychar != YYEMPTY;
+ yystackp->yytops.yylookaheadNeeds[yys] = (yybool) (yychar != YYEMPTY);
/* yyprocessOneStack returns one of three things:
yyFail (&yystack, P, tokens, index, YY_("syntax error"));
YYCHK1 (yyresolveStack (&yystack, P, tokens, index));
YYDPRINTF ((stderr, "Returning to deterministic operation.\n"));
-
yyreportSyntaxError (&yystack, P, tokens, index);
goto yyuser_error;
}
for (yys = 0; yys < yystack.yytops.yysize; yys += 1)
{
int yyaction;
- const short int* yyconflicts;
+ const short* yyconflicts;
yyStateNum yystate = yystack.yytops.yystates[yys]->yylrState;
yygetLRActions (yystate, yytoken_to_shift, &yyaction,
&yyconflicts);
/* Note that yyconflicts were handled by yyprocessOneStack. */
- YYDPRINTF ((stderr, "On stack %lu, ", (unsigned long int) yys));
+ YYDPRINTF ((stderr, "On stack %lu, ", (unsigned long) yys));
YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, &yylval, &yylloc);
yyglrShift (&yystack, yys, yyaction, yyposn,
&yylval);
YYDPRINTF ((stderr, "Stack %lu now in state #%d\n",
- (unsigned long int) yys,
+ (unsigned long) yys,
yystack.yytops.yystates[yys]->yylrState));
}
while (yystates[yyk])
{
yyGLRState *yys = yystates[yyk];
- if (yys->yypred != YY_NULLPTR)
+ if (yys->yypred != YY_NULLPTR)
yydestroyGLRState ("Cleanup: popping", yys, P, tokens, index);
yystates[yyk] = yys->yypred;
yystack.yynextFree -= 1;
YYFPRINTF (stderr, " -> ");
}
YYFPRINTF (stderr, "%d@%lu", yys->yylrState,
- (unsigned long int) yys->yyposn);
+ (unsigned long) yys->yyposn);
}
static void
for (yyp = yystackp->yyitems; yyp < yystackp->yynextFree; yyp += 1)
{
YYFPRINTF (stderr, "%3lu. ",
- (unsigned long int) (yyp - yystackp->yyitems));
+ (unsigned long) (yyp - yystackp->yyitems));
if (*(yybool *) yyp)
{
YYASSERT (yyp->yystate.yyisState);
YYASSERT (yyp->yyoption.yyisState);
YYFPRINTF (stderr, "Res: %d, LR State: %d, posn: %lu, pred: %ld",
yyp->yystate.yyresolved, yyp->yystate.yylrState,
- (unsigned long int) yyp->yystate.yyposn,
- (long int) YYINDEX (yyp->yystate.yypred));
+ (unsigned long) yyp->yystate.yyposn,
+ (long) YYINDEX (yyp->yystate.yypred));
if (! yyp->yystate.yyresolved)
YYFPRINTF (stderr, ", firstVal: %ld",
- (long int) YYINDEX (yyp->yystate
+ (long) YYINDEX (yyp->yystate
.yysemantics.yyfirstVal));
}
else
YYASSERT (!yyp->yyoption.yyisState);
YYFPRINTF (stderr, "Option. rule: %d, state: %ld, next: %ld",
yyp->yyoption.yyrule - 1,
- (long int) YYINDEX (yyp->yyoption.yystate),
- (long int) YYINDEX (yyp->yyoption.yynext));
+ (long) YYINDEX (yyp->yyoption.yystate),
+ (long) YYINDEX (yyp->yyoption.yynext));
}
YYFPRINTF (stderr, "\n");
}
YYFPRINTF (stderr, "Tops:");
for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1)
- YYFPRINTF (stderr, "%lu: %ld; ", (unsigned long int) yyi,
- (long int) YYINDEX (yystackp->yytops.yystates[yyi]));
+ YYFPRINTF (stderr, "%lu: %ld; ", (unsigned long) yyi,
+ (long) YYINDEX (yystackp->yytops.yystates[yyi]));
YYFPRINTF (stderr, "\n");
}
#endif
#define yydebug psi_parser_proc_debug
#define yynerrs psi_parser_proc_nerrs
-#line 1766 "src/parser_proc_grammar.y" /* glr.c:2584 */
+#line 2294 "src/parser_proc_grammar.y" /* glr.c:2578 */
/* epilogue */
+#define PSI_DEBUG_LEX 0
static int psi_parser_proc_lex(YYSTYPE *lvalp, struct psi_parser *P, struct psi_plist *tokens, size_t *index)
{
struct psi_token *token;
-
- if (psi_plist_get(tokens, (*index)++, &token)) {
- if (P->flags & PSI_DEBUG) {
- psi_token_dump(2, token);
- }
-
+#if PSI_DEBUG_LEX
+ PSI_DEBUG_PRINT(P, "PSI: LEX index %4zu ", *index);
+#endif
+ if (psi_plist_get(tokens, (*index)++, &token) && token) {
+#if PSI_DEBUG_LEX
+ PSI_DEBUG_DUMP(P, psi_token_dump, token);
+#endif
*((struct psi_token **)lvalp) = token;
return token->type;
} else {
+#if PSI_DEBUG_LEX
+ PSI_DEBUG_PRINT(P, "EOF\n");
+#endif
(*index)--;
- PSI_DEBUG_PRINT(P, "EOF(%d)\n", PSI_T_EOF);
}
return PSI_T_EOF;
{
struct psi_token *T = NULL;
size_t last;
-
+
if (*index == 0) {
last = 0;
- } else {
+ } else {
last = --(*index);
}
-
+
psi_plist_get(tokens, last, &T);
if (T) {
+ size_t i = (last >= 5) ? last - 5 : 0;
+
P->error(PSI_DATA(P), T, PSI_WARNING, "PSI %s at col %u", msg, T->col);
+ while (i <= last || T->type != PSI_T_EOS) {
+ const char *pos;
+
+ if (!psi_plist_get(tokens, i++, &T)) {
+ break;
+ }
+
+ if (i < last + 1) {
+ pos = "preceding";
+ } else if (i > last + 1) {
+ pos = "following";
+ } else {
+ pos = "offending";
+ }
+
+ P->error(PSI_DATA(P), T, PSI_WARNING, "PSI %s token '%s' at col %u",
+ pos, T ? T->text->val : "<deleted>", T ? T->col : 0);
+ }
} else {
P->error(PSI_DATA(P), NULL, PSI_WARNING, "PSI %s", msg);
}