#define YYBISON 1
#define YYBISON_VERSION "3.0.4"
#define YYSKELETON_NAME "yacc.c"
#define YYPURE 1
#define YYPUSH 0
#define YYPULL 1
#define yyparse SPVM_yyparse
#define yylex SPVM_yylex
#define yyerror SPVM_yyerror
#define yydebug SPVM_yydebug
#define yynerrs SPVM_yynerrs
#line 8 "yacc/spvm_yacc.y" /* yacc.c:339 */
#include <stdio.h>
#include "spvm_compiler.h"
#include "spvm_yacc_util.h"
#include "spvm_toke.h"
#include "spvm_op.h"
#include "spvm_dumper.h"
#include "spvm_constant.h"
#include "spvm_type.h"
#include "spvm_block.h"
#include "spvm_list.h"
#include "spvm_attribute.h"
#include "spvm_string.h"
#line 88 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
# define YY_NULLPTR nullptr
# else
# define YY_NULLPTR 0
# endif
# endif
#ifdef YYERROR_VERBOSE
# undef YYERROR_VERBOSE
# define YYERROR_VERBOSE 1
#else
# define YYERROR_VERBOSE 0
#endif
#ifndef YY_SPVM_YY_LIB_SPVM_BUILDER_INCLUDE_SPVM_YACC_H_INCLUDED
# define YY_SPVM_YY_LIB_SPVM_BUILDER_INCLUDE_SPVM_YACC_H_INCLUDED
#ifndef YYDEBUG
# define YYDEBUG 1
#endif
#if YYDEBUG
extern
int
SPVM_yydebug;
#endif
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
enum
yytokentype
{
CLASS = 258,
HAS = 259,
METHOD = 260,
OUR = 261,
ENUM = 262,
MY = 263,
USE = 264,
AS = 265,
REQUIRE = 266,
ALIAS = 267,
ALLOW = 268,
OUTMOST_CLASS = 269,
MUTABLE = 270,
ATTRIBUTE = 271,
MAKE_READ_ONLY = 272,
INTERFACE = 273,
EVAL_ERROR_ID = 274,
ARGS_WIDTH = 275,
VERSION_DECL = 276,
VERSION_FROM = 277,
IF = 278,
UNLESS = 279,
ELSIF = 280,
ELSE = 281,
FOR = 282,
WHILE = 283,
LAST = 284,
NEXT = 285,
SWITCH = 286,
CASE = 287,
DEFAULT = 288,
BREAK = 289,
EVAL = 290,
SYMBOL_NAME = 291,
VAR_NAME = 292,
CONSTANT = 293,
EXCEPTION_VAR = 294,
UNDEF = 295,
VOID
= 296,
BYTE
= 297,
SHORT
= 298,
INT
= 299,
LONG
= 300,
FLOAT
= 301,
DOUBLE = 302,
STRING = 303,
OBJECT = 304,
TRUE = 305,
FALSE = 306,
END_OF_FILE = 307,
FATCAMMA = 308,
RW = 309,
RO = 310,
WO = 311,
INIT = 312,
NEW = 313,
OF = 314,
BASIC_TYPE_ID = 315,
EXTENDS = 316,
SUPER = 317,
RETURN = 318,
WEAKEN = 319,
DIE = 320,
WARN = 321,
PRINT = 322,
SAY = 323,
OUTMOST_CLASS_NAME = 324,
UNWEAKEN = 325,
ASSIGN = 326,
SPECIAL_ASSIGN = 327,
LOGICAL_OR = 328,
DEFINED_OR = 329,
LOGICAL_AND = 330,
BIT_OR = 331,
BIT_XOR = 332,
BIT_AND = 333,
NUMEQ = 334,
NUMNE = 335,
STREQ = 336,
STRNE = 337,
NUMGT = 338,
NUMGE = 339,
NUMLT = 340,
NUMLE = 341,
STRGT = 342,
STRGE = 343,
STRLT = 344,
STRLE = 345,
ISA = 346,
ISA_ERROR = 347,
IS_TYPE = 348,
IS_ERROR = 349,
IS_COMPILE_TYPE = 350,
NUMERIC_CMP = 351,
STRING_CMP = 352,
CAN = 353,
SHIFT = 354,
DIVIDE = 355,
DIVIDE_UNSIGNED_INT = 356,
DIVIDE_UNSIGNED_LONG = 357,
MODULO = 358,
MODULO_UNSIGNED_INT = 359,
MODULO_UNSIGNED_LONG = 360,
LOGICAL_NOT = 361,
BIT_NOT = 362,
REFERENCE = 363,
DEREFERENCE = 364,
PLUS = 365,
MINUS = 366,
CONVERT = 367,
SCALAR = 368,
STRING_LENGTH = 369,
ISWEAK = 370,
TYPE_NAME = 371,
COMPILE_TYPE_NAME = 372,
DUMP = 373,
NEW_STRING_LEN = 374,
IS_READ_ONLY = 375,
COPY = 376,
INC = 377,
DEC = 378,
ARROW = 379
};
#endif
int
SPVM_yyparse (SPVM_COMPILER* compiler);
#endif /* !YY_SPVM_YY_LIB_SPVM_BUILDER_INCLUDE_SPVM_YACC_H_INCLUDED */
#line 258 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:358 */
#ifdef short
# undef short
#endif
#ifdef YYTYPE_UINT8
typedef
YYTYPE_UINT8 yytype_uint8;
#else
typedef
unsigned
char
yytype_uint8;
#endif
#ifdef YYTYPE_INT8
typedef
YYTYPE_INT8 yytype_int8;
#else
typedef
signed
char
yytype_int8;
#endif
#ifdef YYTYPE_UINT16
typedef
YYTYPE_UINT16 yytype_uint16;
#else
typedef
unsigned
short
int
yytype_uint16;
#endif
#ifdef YYTYPE_INT16
typedef
YYTYPE_INT16 yytype_int16;
#else
typedef
short
int
yytype_int16;
#endif
#ifndef YYSIZE_T
# ifdef __SIZE_TYPE__
# define YYSIZE_T __SIZE_TYPE__
# elif defined size_t
# define YYSIZE_T size_t
# elif ! defined YYSIZE_T
# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
# define YYSIZE_T size_t
# else
# define YYSIZE_T unsigned int
# endif
#endif
#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
#ifndef YY_
# if defined YYENABLE_NLS && YYENABLE_NLS
# if ENABLE_NLS
# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
# define YY_(Msgid) dgettext ("bison-runtime", Msgid)
# endif
# endif
# ifndef YY_
# define YY_(Msgid) Msgid
# endif
#endif
#ifndef YY_ATTRIBUTE
# if (defined __GNUC__ \
&& (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
|| defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
# define YY_ATTRIBUTE(Spec) __attribute__(Spec)
# else
# define YY_ATTRIBUTE(Spec) /* empty */
# endif
#endif
#ifndef YY_ATTRIBUTE_PURE
# define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
#endif
#ifndef YY_ATTRIBUTE_UNUSED
# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
#endif
#if !defined _Noreturn \
&& (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
# if defined _MSC_VER && 1200 <= _MSC_VER
# define _Noreturn __declspec (noreturn)
# else
# define _Noreturn YY_ATTRIBUTE ((__noreturn__))
# endif
#endif
#if ! defined lint || defined __GNUC__
# define YYUSE(E) ((void) (E))
#else
# define YYUSE(E) /* empty */
#endif
#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
_Pragma (
"GCC diagnostic push"
) \
_Pragma (
"GCC diagnostic ignored \"-Wuninitialized\""
)\
_Pragma (
"GCC diagnostic ignored \"-Wmaybe-uninitialized\""
)
# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
_Pragma (
"GCC diagnostic pop"
)
#else
# define YY_INITIAL_VALUE(Value) Value
#endif
#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
# define YY_IGNORE_MAYBE_UNINITIALIZED_END
#endif
#ifndef YY_INITIAL_VALUE
# define YY_INITIAL_VALUE(Value) /* Nothing. */
#endif
#if ! defined yyoverflow || YYERROR_VERBOSE
# ifdef YYSTACK_USE_ALLOCA
# if YYSTACK_USE_ALLOCA
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
# elif defined __BUILTIN_VA_ARG_INCR
# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
# elif defined _AIX
# define YYSTACK_ALLOC __alloca
# elif defined _MSC_VER
# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
# define alloca _alloca
# else
# define YYSTACK_ALLOC alloca
# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
# ifndef EXIT_SUCCESS
# define EXIT_SUCCESS 0
# endif
# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
# ifndef YYSTACK_ALLOC_MAXIMUM
# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
# endif
# else
# define YYSTACK_ALLOC YYMALLOC
# define YYSTACK_FREE YYFREE
# ifndef YYSTACK_ALLOC_MAXIMUM
# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
# endif
# if (defined __cplusplus && ! defined EXIT_SUCCESS \
&& ! ((defined YYMALLOC || defined
malloc
) \
&& (defined YYFREE || defined
free
)))
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
# ifndef EXIT_SUCCESS
# define EXIT_SUCCESS 0
# endif
# endif
# ifndef YYMALLOC
# define YYMALLOC malloc
# if ! defined malloc && ! defined EXIT_SUCCESS
void
*
malloc
(YYSIZE_T);
# endif
# endif
# ifndef YYFREE
# define YYFREE free
# if ! defined free && ! defined EXIT_SUCCESS
void
free
(
void
*);
# endif
# endif
# endif
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
#if (! defined yyoverflow \
&& (! defined __cplusplus \
|| (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
union
yyalloc
{
yytype_int16 yyss_alloc;
YYSTYPE yyvs_alloc;
};
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
# define YYSTACK_BYTES(N) \
((N) * (
sizeof
(yytype_int16) +
sizeof
(YYSTYPE)) \
+ YYSTACK_GAP_MAXIMUM)
# define YYCOPY_NEEDED 1
# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
do
\
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize *
sizeof
(*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes /
sizeof
(*yyptr); \
} \
while
(0)
#endif
#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
# ifndef YYCOPY
# if defined __GNUC__ && 1 < __GNUC__
# define YYCOPY(Dst, Src, Count) \
__builtin_memcpy (Dst, Src, (Count) *
sizeof
(*(Src)))
# else
# define YYCOPY(Dst, Src, Count) \
do
\
{ \
YYSIZE_T yyi; \
for
(yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while
(0)
# endif
# endif
#endif /* !YYCOPY_NEEDED */
#define YYFINAL 17
#define YYLAST 5270
#define YYNTOKENS 140
#define YYNNTS 99
#define YYNRULES 295
#define YYNSTATES 577
#define YYUNDEFTOK 2
#define YYMAXUTOK 379
#define YYTRANSLATE(YYX) \
((unsigned
int
) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
static
const
yytype_uint8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
73, 138, 106, 103, 137, 104, 105, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 134, 135,
2, 2, 2, 139, 115, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 71, 2, 133, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 72, 2, 136, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 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, 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, 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, 107, 108, 109, 110, 111,
112, 113, 114, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132
};
#if YYDEBUG
static
const
yytype_uint16 yyrline[] =
{
0, 77, 77, 80, 83, 86, 89, 90, 95, 96,
97, 100, 104, 110, 116, 122, 128, 134, 140, 145,
153, 159, 163, 169, 173, 179, 180, 187, 190, 193,
199, 213, 220, 223, 236, 250, 253, 257, 261, 265,
272, 275, 279, 282, 288, 297, 300, 312, 326, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
342, 348, 354, 360, 366, 373, 381, 388, 394, 400,
406, 415, 418, 431, 445, 446, 449, 453, 459, 465,
471, 475, 479, 483, 489, 493, 511, 514, 527, 541,
542, 545, 549, 555, 569, 570, 573, 577, 581, 587,
596, 599, 612, 626, 630, 633, 646, 660, 663, 664,
665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
675, 676, 680, 684, 688, 689, 693, 696, 700, 704,
708, 712, 718, 719, 723, 727, 728, 729, 735, 739,
745, 751, 755, 761, 767, 773, 779, 788, 791, 804,
818, 824, 828, 834, 838, 844, 850, 857, 868, 882,
885, 889, 895, 903, 909, 913, 919, 926, 929, 943,
946, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 962, 966, 967, 968, 969, 970, 971, 972, 973,
974, 978, 979, 980, 981, 982, 983, 984, 987, 1003,
1016, 1030, 1034, 1040, 1045, 1050, 1054, 1058, 1062, 1066,
1070, 1074, 1078, 1082, 1086, 1090, 1093, 1098, 1103, 1108,
1115, 1120, 1127, 1132, 1139, 1140, 1141, 1142, 1143, 1144,
1147, 1152, 1157, 1162, 1166, 1170, 1174, 1178, 1182, 1188,
1195, 1199, 1203, 1207, 1213, 1217, 1221, 1225, 1229, 1233,
1237, 1241, 1245, 1249, 1253, 1257, 1261, 1265, 1271, 1277,
1281, 1285, 1291, 1297, 1301, 1305, 1309, 1313, 1319, 1324,
1331, 1335, 1341, 1345, 1351, 1355, 1361, 1367, 1373, 1379,
1388, 1393, 1399, 1404, 1410, 1415, 1421, 1429, 1434, 1439,
1446, 1451, 1456, 1464, 1472, 1480
};
#endif
#if YYDEBUG || YYERROR_VERBOSE || 0
static
const
char
*
const
yytname[] =
{
"$end"
,
"error"
,
"$undefined"
,
"CLASS"
,
"HAS"
,
"METHOD"
,
"OUR"
,
"ENUM"
,
"MY"
,
"USE"
,
"AS"
,
"REQUIRE"
,
"ALIAS"
,
"ALLOW"
,
"OUTMOST_CLASS"
,
"MUTABLE"
,
"ATTRIBUTE"
,
"MAKE_READ_ONLY"
,
"INTERFACE"
,
"EVAL_ERROR_ID"
,
"ARGS_WIDTH"
,
"VERSION_DECL"
,
"VERSION_FROM"
,
"IF"
,
"UNLESS"
,
"ELSIF"
,
"ELSE"
,
"FOR"
,
"WHILE"
,
"LAST"
,
"NEXT"
,
"SWITCH"
,
"CASE"
,
"DEFAULT"
,
"BREAK"
,
"EVAL"
,
"SYMBOL_NAME"
,
"VAR_NAME"
,
"CONSTANT"
,
"EXCEPTION_VAR"
,
"UNDEF"
,
"VOID"
,
"BYTE"
,
"SHORT"
,
"INT"
,
"LONG"
,
"FLOAT"
,
"DOUBLE"
,
"STRING"
,
"OBJECT"
,
"TRUE"
,
"FALSE"
,
"END_OF_FILE"
,
"FATCAMMA"
,
"RW"
,
"RO"
,
"WO"
,
"INIT"
,
"NEW"
,
"OF"
,
"BASIC_TYPE_ID"
,
"EXTENDS"
,
"SUPER"
,
"RETURN"
,
"WEAKEN"
,
"DIE"
,
"WARN"
,
"PRINT"
,
"SAY"
,
"OUTMOST_CLASS_NAME"
,
"UNWEAKEN"
,
"'['"
,
"'{'"
,
"'('"
,
"ASSIGN"
,
"SPECIAL_ASSIGN"
,
"LOGICAL_OR"
,
"DEFINED_OR"
,
"LOGICAL_AND"
,
"BIT_OR"
,
"BIT_XOR"
,
"BIT_AND"
,
"NUMEQ"
,
"NUMNE"
,
"STREQ"
,
"STRNE"
,
"NUMGT"
,
"NUMGE"
,
"NUMLT"
,
"NUMLE"
,
"STRGT"
,
"STRGE"
,
"STRLT"
,
"STRLE"
,
"ISA"
,
"ISA_ERROR"
,
"IS_TYPE"
,
"IS_ERROR"
,
"IS_COMPILE_TYPE"
,
"NUMERIC_CMP"
,
"STRING_CMP"
,
"CAN"
,
"SHIFT"
,
"'+'"
,
"'-'"
,
"'.'"
,
"'*'"
,
"DIVIDE"
,
"DIVIDE_UNSIGNED_INT"
,
"DIVIDE_UNSIGNED_LONG"
,
"MODULO"
,
"MODULO_UNSIGNED_INT"
,
"MODULO_UNSIGNED_LONG"
,
"LOGICAL_NOT"
,
"BIT_NOT"
,
"'@'"
,
"REFERENCE"
,
"DEREFERENCE"
,
"PLUS"
,
"MINUS"
,
"CONVERT"
,
"SCALAR"
,
"STRING_LENGTH"
,
"ISWEAK"
,
"TYPE_NAME"
,
"COMPILE_TYPE_NAME"
,
"DUMP"
,
"NEW_STRING_LEN"
,
"IS_READ_ONLY"
,
"COPY"
,
"INC"
,
"DEC"
,
"ARROW"
,
"']'"
,
"':'"
,
"';'"
,
"'}'"
,
"','"
,
"')'"
,
"'?'"
,
"$accept"
,
"grammar"
,
"field_name"
,
"method_name"
,
"class_name"
,
"qualified_type"
,
"type"
,
"basic_type"
,
"ref_type"
,
"array_type"
,
"array_type_with_length"
,
"return_type"
,
"opt_type_comment"
,
"type_comment"
,
"union_type"
,
"opt_classes"
,
"classes"
,
"class"
,
"opt_basic_type"
,
"opt_extends"
,
"class_block"
,
"opt_definitions"
,
"definitions"
,
"definition"
,
"init_statement"
,
"version_decl"
,
"version_from"
,
"use"
,
"require"
,
"class_alias"
,
"allow"
,
"interface"
,
"enumeration"
,
"enumeration_block"
,
"opt_enumeration_items"
,
"enumeration_items"
,
"enumeration_item"
,
"our"
,
"has"
,
"method"
,
"anon_method"
,
"opt_args"
,
"args"
,
"arg"
,
"anon_method_fields"
,
"anon_method_field"
,
"opt_attributes"
,
"attributes"
,
"opt_statements"
,
"statements"
,
"statement"
,
"die"
,
"void_return_operator"
,
"warn"
,
"for_statement"
,
"foreach_statement"
,
"while_statement"
,
"switch_statement"
,
"switch_block"
,
"opt_case_statements"
,
"case_statements"
,
"case_statement"
,
"default_statement"
,
"if_require_statement"
,
"if_statement"
,
"else_statement"
,
"block"
,
"eval_block"
,
"var_decl"
,
"var"
,
"opt_operators"
,
"opt_operator"
,
"operator"
,
"sequential"
,
"operators"
,
"unary_operator"
,
"array_length"
,
"inc"
,
"dec"
,
"binary_operator"
,
"arithmetic_operator"
,
"ternary_operator"
,
"bit_operator"
,
"comparison_operator"
,
"string_concatenation"
,
"logical_operator"
,
"defined_or"
,
"type_check"
,
"type_cast"
,
"can"
,
"assign"
,
"new"
,
"array_init"
,
"call_method"
,
"array_access"
,
"field_access"
,
"weaken_field"
,
"unweaken_field"
,
"isweak_field"
, YY_NULLPTR
};
#endif
# ifdef YYPRINT
static
const
yytype_uint16 yytoknum[] =
{
0, 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, 289, 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, 323, 324,
325, 91, 123, 40, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
352, 353, 354, 43, 45, 46, 42, 355, 356, 357,
358, 359, 360, 361, 362, 64, 363, 364, 365, 366,
367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
377, 378, 379, 93, 58, 59, 125, 44, 41, 63
};
# endif
#define YYPACT_NINF -467
#define yypact_value_is_default(Yystate) \
(!!((Yystate) == (-467)))
#define YYTABLE_NINF -170
#define yytable_value_is_error(Yytable_value) \
(!!((Yytable_value) == (-170)))
static
const
yytype_int16 yypact[] =
{
23, 316, 45, -467, 23, -467, -467, -467, -467, -467,
-467, -467, -467, -467, -467, -467, -13, -467, -467, 316,
-45, -467, 31, 38, 13, 17, 42, 62, 316, 316,
316, -467, 316, 66, 316, 46, -22, 107, -467, -467,
-467, -467, -467, -467, -467, -467, -467, -467, -25, -467,
57, 110, -49, -467, -467, -467, -7, -4, 6, 124,
2, 3, 4, 7, 1154, -467, -467, -467, -467, -26,
63, -467, 93, 94, 38, 38, 111, -467, 111, -467,
-467, -467, -467, 123, 112, 3021, -467, -467, 88, 89,
12, 90, 30, 33, 96, 3021, 32, 35, 46, -467,
-467, -467, -467, -467, -467, 316, 316, 1650, 123, 1774,
1898, 3021, 3021, -467, 123, 1030, 1278, 2773, 3021, 3021,
3021, 3021, 3145, 3021, 123, 56, 3021, 123, 3021, 3021,
3021, 3021, 3021, 3021, 3021, 3021, -467, 40, -467, 168,
39, 1402, -467, 48, 52, -467, -467, -467, -467, -467,
-467, -467, -467, -467, -467, -467, -467, -467, 3451, -467,
-467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
-467, -467, -467, -467, -467, -467, -467, -467, -467, 20,
26, -467, -467, -467, -467, 161, 54, 144, -467, -467,
-467, 269, 269, -467, 55, 64, 78, 108, 1526, 4837,
2897, 3021, 2022, 125, 3021, -467, -467, 3021, 3517, 46,
-467, -467, 129, 142, -467, -467, -46, -467, 143, -467,
3583, 84, 2146, -32, 3649, 4837, 4837, 4837, 85, 42,
-91, -467, 86, 92, 4837, 82, -467, 3451, -53, 316,
83, -467, -16, -60, -60, -60, -60, 1526, -60, -60,
-467, 3269, -60, 91, -60, -60, -60, -60, -60, -60,
1, 1, 144, 95, -467, -467, -467, -467, 3021, 3021,
3021, 3021, 3021, 3021, 3021, 3021, 3021, 3021, 3021, 3021,
3021, 3021, 3021, 3021, 3021, 3021, 3021, 3021, 316, 316,
316, 316, 269, 3021, 3021, 37, 3021, 3021, 3021, 3021,
3021, 3021, 3021, 3021, 3021, 3021, 3021, -467, -467, -14,
-467, 3021, 3021, 42, 3021, 42, -467, 167, 155, 161,
156, 97, 98, -467, 167, 167, -467, -467, 269, 777,
316, 99, 3715, 3781, 103, 4837, 116, 3847, 3913, 46,
-467, 2525, 2649, 109, -467, 113, -467, 160, 4837, 3021,
169, 106, 38, 29, 38, -467, 2401, -467, -467, 3021,
2274, -467, 3979, 1526, -60, 172, 174, 161, 4837, 4837,
4899, 4899, 4960, 5019, 5019, 171, 5077, 5077, 5077, 5077,
5131, 5131, 5131, 5131, 5131, 5131, 5131, 5131, -467, -467,
-467, -467, -467, 5131, 5131, -467, -467, 47, 239, 239,
239, -60, -60, -60, -60, -60, -60, -60, 3021, 42,
645, 176, 4045, 4111, 114, 4177, 115, 316, -467, -467,
123, 212, 207, -467, 144, -467, 151, 167, 149, -467,
46, 46, 46, 3021, 3393, 46, 221, -467, -467, 4243,
-467, 4309, 42, 4837, 42, 38, 289, -467, 86, 269,
4837, -60, 222, 159, -467, 4375, 42, 777, 224, 4441,
162, 170, 182, 777, 3021, -467, -467, -467, -467, -467,
220, 183, 186, -467, 173, 123, -467, -467, -467, -467,
-467, 283, 77, 77, 4507, 1526, 4573, -467, 292, -467,
-467, -467, 189, 190, 269, 193, 167, 3021, 3021, -467,
195, 191, 123, -467, -467, -467, -467, 194, 4837, 316,
-41, 123, 269, 196, 46, 263, 46, -467, -467, 902,
4639, 46, -12, 292, -467, -467, -467, 167, 161, 264,
4705, -467, -467, 199, -467, -467, -467, -467, -467, 167,
-34, -467, 3021, -467, 202, 203, -467, -467, 206, -467,
270, 280, 3021, -467, 46, 281, -467, -467, 4771, 46,
46, -467, 3021, 123, 4837, -467, 3021, 46, -467, -467,
4837, 205, 4837, 77, 46, -467, -467
};
static
const
yytype_uint16 yydefact[] =
{
32, 40, 0, 2, 33, 35, 11, 12, 13, 14,
15, 16, 17, 19, 18, 41, 42, 1, 34, 0,
0, 43, 100, 100, 0, 0, 0, 0, 0, 0,
0, 103, 0, 0, 0, 0, 0, 100, 48, 55,
49, 50, 51, 52, 53, 54, 56, 57, 0, 59,
0, 101, 0, 38, 36, 3, 0, 0, 0, 0,
0, 0, 0, 0, 100, 60, 44, 47, 58, 0,
0, 102, 0, 0, 100, 100, 0, 63, 0, 67,
68, 61, 62, 0, 0, 100, 178, 179, 0, 0,
0, 0, 0, 0, 0, 100, 0, 0, 0, 166,
173, 172, 174, 180, 181, 0, 0, 100, 0, 100,
100, 100, 100, 182, 0, 100, 100, 100, 100, 100,
100, 100, 100, 100, 0, 0, 100, 0, 100, 100,
100, 100, 100, 100, 100, 100, 125, 0, 276, 0,
0, 100, 107, 0, 0, 132, 109, 110, 111, 113,
114, 115, 117, 108, 112, 116, 177, 171, 0, 197,
183, 215, 187, 188, 184, 224, 185, 225, 226, 227,
228, 229, 189, 175, 191, 186, 176, 192, 196, 193,
194, 135, 136, 195, 4, 0, 0, 71, 69, 39,
37, 0, 0, 5, 0, 0, 165, 281, 100, 137,
100, 100, 100, 0, 100, 118, 119, 100, 0, 154,
120, 163, 274, 0, 275, 190, 8, 10, 9, 121,
0, 0, 100, 8, 127, 138, 133, 134, 0, 0,
0, 95, 171, 0, 202, 168, 279, 202, 0, 0,
0, 6, 0, 203, 204, 261, 205, 100, 216, 211,
210, 100, 208, 0, 206, 207, 209, 212, 214, 213,
220, 222, 0, 0, 162, 106, 126, 124, 100, 100,
100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
100, 100, 100, 100, 100, 100, 100, 100, 0, 0,
0, 0, 0, 100, 100, 0, 100, 100, 100, 100,
100, 100, 100, 100, 100, 100, 100, 221, 223, 0,
123, 100, 100, 0, 100, 0, 26, 27, 0, 0,
76, 0, 72, 75, 27, 27, 64, 66, 0, 100,
0, 0, 0, 0, 0, 170, 0, 0, 0, 152,
153, 100, 100, 0, 20, 0, 122, 0, 129, 100,
0, 0, 100, 94, 100, 277, 201, 278, 7, 100,
201, 198, 202, 100, 218, 0, 283, 0, 272, 273,
259, 262, 260, 242, 240, 241, 244, 245, 251, 252,
246, 247, 248, 249, 253, 254, 255, 256, 263, 264,
265, 266, 267, 250, 257, 271, 270, 243, 230, 231,
258, 232, 233, 234, 235, 236, 237, 238, 100, 0,
100, 285, 0, 0, 0, 0, 0, 0, 25, 28,
86, 0, 0, 70, 74, 79, 0, 27, 0, 65,
0, 0, 0, 100, 100, 0, 0, 151, 21, 0,
22, 0, 0, 131, 0, 100, 0, 93, 0, 0,
200, 268, 0, 0, 217, 202, 0, 100, 0, 0,
0, 0, 0, 100, 100, 288, 292, 289, 291, 31,
29, 0, 87, 90, 0, 86, 77, 73, 78, 164,
280, 155, 159, 159, 0, 100, 0, 143, 147, 144,
23, 24, 0, 0, 0, 0, 27, 100, 100, 219,
0, 0, 86, 287, 290, 269, 286, 0, 239, 0,
0, 89, 0, 0, 0, 0, 0, 157, 158, 100,
202, 0, 0, 148, 150, 293, 294, 27, 0, 98,
0, 295, 282, 0, 284, 30, 83, 82, 88, 27,
0, 156, 100, 160, 0, 0, 141, 145, 0, 149,
96, 0, 100, 199, 0, 91, 81, 80, 0, 0,
0, 146, 100, 86, 99, 84, 100, 0, 140, 142,
97, 0, 92, 159, 0, 161, 85
};
static
const
yytype_int16 yypgoto[] =
{
-467, -467, -220, -61, 276, -110, -95, 0, -467, 251,
-467, -317, -312, -467, -467, -467, -467, 353, -467, -467,
314, -467, -467, 331, -467, -467, -467, -467, -467, -467,
-467, -467, -467, -467, -467, -467, -52, -467, -467, -467,
-467, -451, -467, -136, -467, 27, -19, -467, -467, -467,
235, -467, -467, -467, -467, -467, -467, -467, -467, -467,
-467, -447, -143, -467, 21, -466, -35, -467, 293, -47,
-314, -137, 313, -467, -111, -467, -467, -467, -467, -467,
-467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
-467, -467, -467, -467, -467, -467, -467, -467, -467
};
static
const
yytype_int16 yydefgoto[] =
{
-1, 2, 56, 320, 194, 317, 241, 137, 217, 218,
214, 318, 418, 419, 470, 3, 4, 5, 16, 20,
25, 36, 37, 38, 39, 40, 41, 42, 331, 43,
44, 45, 46, 188, 321, 322, 323, 47, 48, 49,
138, 471, 472, 473, 230, 231, 139, 51, 140, 141,
142, 143, 144, 145, 146, 147, 148, 149, 489, 522,
523, 150, 151, 152, 153, 517, 154, 155, 156, 157,
233, 334, 234, 159, 235, 160, 161, 162, 163, 164,
165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
175, 176, 177, 178, 179, 180, 181, 182, 183
};
static
const
yytype_int16 yytable[] =
{
65, 15, 421, 50, 52, 238, 242, 240, 186, 351,
184, 215, 425, 426, 222, 428, 76, 518, 50, 21,
83, 96, 184, 22, 513, 343, 1, 22, 58, 59,
60, 64, 61, 229, 63, 26, 196, 27, 64, 343,
28, 524, 352, 29, 30, 17, 353, 31, 19, 32,
458, 533, 33, 34, 31, 191, 192, 408, 409, 410,
344, 221, 69, 211, 70, 53, 99, 228, 232, 54,
307, 308, 309, 184, 344, 395, 549, 250, 55, 311,
253, 324, 325, 357, 356, 202, 72, 238, 35, 23,
24, 312, 313, 414, 536, 416, 462, 314, 315, 57,
262, 556, 515, 516, 62, 212, 216, 575, 185, 223,
68, 26, 571, 27, 66, 479, 28, 223, 64, 29,
30, 360, 361, 31, 547, 32, 71, 74, 33, 34,
75, -170, -170, 309, 78, 187, 238, 79, 80, 81,
311, 77, 82, 501, 358, 189, 190, 193, 197, 507,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
99, 200, 201, 204, 35, 205, 209, -45, 206, 207,
210, 251, 262, 263, 340, 264, 239, 307, 308, 309,
184, 329, 392, 266, 529, 216, 311, 267, 319, 460,
326, 216, 216, 388, 389, 390, 391, 6, 336, 327,
341, 366, 316, 7, 8, 9, 10, 11, 12, 13,
14, 551, 328, 342, 345, 550, 347, 350, 427, 356,
354, 359, 492, 365, 493, 355, 417, 555, 420, 367,
422, 434, 442, 423, 396, 424, 500, 430, 433, 216,
445, 444, 438, -46, 456, 476, 440, 457, 411, 463,
466, 468, 238, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 239, 475, 478, 480, 216, 216,
216, 216, 216, 488, 495, 497, 498, 502, 504, 509,
461, 307, 308, 309, 437, 6, 448, 512, 505, 514,
311, 7, 8, 9, 10, 11, 12, 13, 14, 216,
506, 510, 469, 511, 95, 525, 526, 528, 216, 532,
429, 531, 534, 446, 540, 449, 542, 554, 552, 496,
559, 560, 561, 574, 562, 300, 301, 302, 303, 304,
305, 306, 6, 563, 195, 566, 213, 18, 7, 8,
9, 10, 11, 12, 13, 14, 73, 216, 67, 307,
308, 309, 477, 474, 238, 538, 265, 158, 311, 548,
447, 453, 544, 203, 527, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 481, 482, 483, 199, 0,
487, 0, 539, 0, 0, 0, 0, 0, 208, 0,
223, 0, 0, 0, 535, 0, 0, 216, 0, 0,
220, 0, 224, 225, 226, 227, 494, 0, 474, 237,
0, 243, 244, 245, 246, 248, 249, 0, 0, 252,
0, 254, 255, 256, 257, 258, 259, 260, 261, 216,
0, 0, 0, 0, 158, 474, 0, 0, 0, 0,
0, 0, 0, 0, 474, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 537, 0, 0, 0, 541,
0, 543, 0, 0, 0, 0, 546, 0, 0, 0,
0, 0, 0, 0, 216, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 557, 0, 0, 0, 216,
0, 0, 216, 332, 333, 335, 474, 337, 0, 565,
338, 0, 0, 0, 568, 569, 0, 0, 216, 0,
0, 0, 573, 0, 0, 348, 0, 0, 0, 576,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
362, 0, 0, 0, 364, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 368, 369, 370, 371, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 0, 0, 0, 0, 0, 393, 394, 0, 397,
398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
0, 0, 0, 0, 412, 413, 0, 415, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 83, 439, 441, 0, 0, 0, 84,
239, 31, 443, 0, 86, 87, 0, 0, 0, 450,
0, 0, 451, 450, 0, 0, 455, 0, 0, 0,
0, 6, 99, 100, 101, 102, 0, 7, 8, 9,
10, 11, 12, 13, 14, 103, 104, 0, 0, 0,
0, 0, 0, 105, 0, 106, 0, 0, 0, 0,
0, 0, 0, 0, 113, 0, 115, 198, 117, 0,
0, 459, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 484, 486, 118, 119,
0, 0, 0, 0, 0, 0, 0, 0, 120, 121,
122, 123, 124, 0, 0, 0, 125, 126, 127, 128,
129, 130, 131, 132, 133, 134, 135, 508, 0, 0,
0, 0, 0, -167, 0, 83, 0, 0, 0, 0,
0, 84, 0, 31, 0, 0, 86, 87, 520, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
332, 530, 0, 6, 99, 100, 101, 102, 0, 7,
8, 9, 10, 11, 12, 13, 14, 103, 104, 0,
0, 0, 335, 0, 0, 105, 0, 106, 0, 0,
0, 0, 0, 0, 0, 0, 113, 0, 115, 198,
117, 0, 0, 0, 0, 558, 0, 0, 0, 0,
0, 0, 0, 0, 0, 564, 0, 0, 0, 0,
0, 0, 0, 0, 0, 570, 0, 0, 0, 572,
118, 119, 0, 0, 0, 0, 0, 0, 0, 0,
120, 121, 122, 123, 124, 0, 0, 0, 125, 126,
127, 128, 129, 130, 131, 132, 133, 134, 135, 0,
83, 0, 0, 0, 0, -167, 84, 0, 31, 0,
0, 86, 87, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 6, 99,
100, 101, 102, 0, 7, 8, 9, 10, 11, 12,
13, 14, 103, 104, 0, 0, 0, 0, 0, 0,
105, 0, 106, 0, 0, 0, 0, 0, 0, 0,
0, 113, 0, 115, 198, 117, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 118, 119, 0, 0, 0,
0, 0, 0, 0, 0, 120, 121, 122, 123, 124,
0, 0, 0, 125, 126, 127, 128, 129, 130, 131,
132, 133, 134, 135, 229, 0, 0, 0, 83, 0,
-169, 0, 0, 0, 84, 0, 31, 0, 0, 86,
87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 6, 99, 100, 101,
102, 0, 7, 8, 9, 10, 11, 12, 13, 14,
103, 104, 0, 0, 0, 0, 0, 0, 105, 0,
106, 0, 0, 0, 0, 0, 0, 0, 0, 113,
0, 115, 198, 117, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 118, 119, 0, 0, 0, 0, 0,
0, 0, 0, 120, 121, 122, 123, 124, 0, 0,
0, 125, 126, 127, 128, 129, 130, 131, 132, 133,
134, 135, 83, -167, 0, 0, 0, 0, 84, 0,
31, 85, 0, 86, 87, 0, 0, 88, 89, 0,
0, 90, 91, 92, 93, 94, 95, 96, 97, 98,
6, 99, 100, 101, 102, 0, 7, 8, 9, 10,
11, 12, 13, 14, 103, 104, 0, 0, 0, 0,
0, 0, 105, 0, 106, 0, 0, 107, 108, 109,
110, 111, 112, 113, 114, 115, 116, 117, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 118, 119, 0,
0, 0, 0, 0, 0, 0, 0, 120, 121, 122,
123, 124, 0, 0, 0, 125, 126, 127, 128, 129,
130, 131, 132, 133, 134, 135, 83, 0, 0, 136,
-104, 0, 84, 0, 31, 85, 0, 86, 87, 0,
0, 88, 89, 0, 0, 90, 91, 92, 93, 94,
95, 96, 97, 98, 6, 99, 100, 101, 102, 0,
7, 8, 9, 10, 11, 12, 13, 14, 103, 104,
0, 0, 0, 0, 0, 0, 105, 0, 106, 0,
0, 107, 108, 109, 110, 111, 112, 113, 114, 115,
116, 117, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 118, 119, 0, 0, 0, 0, 0, 0, 0,
0, 120, 121, 122, 123, 124, 0, 0, 0, 125,
126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
83, 0, 0, 136, 236, 0, 84, 0, 31, 85,
0, 86, 87, 0, 0, 88, 89, 0, 0, 90,
91, 92, 93, 94, 95, 96, 97, 98, 6, 99,
100, 101, 102, 0, 7, 8, 9, 10, 11, 12,
13, 14, 103, 104, 0, 0, 0, 0, 0, 0,
105, 0, 106, 0, 0, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 118, 119, 0, 0, 0,
0, 0, 0, 0, 0, 120, 121, 122, 123, 124,
0, 0, 0, 125, 126, 127, 128, 129, 130, 131,
132, 133, 134, 135, 83, 0, 0, 136, -105, 0,
84, 0, 31, 0, 0, 86, 87, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6, 99, 100, 101, 102, 0, 7, 8,
9, 10, 11, 12, 13, 14, 103, 104, 0, 0,
0, 0, 0, 0, 105, 0, 106, 0, 0, 0,
0, 0, 0, 0, 0, 113, 0, 115, 198, 117,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 118,
119, 0, 0, 0, 0, 0, 0, 0, 0, 120,
121, 122, 123, 124, 0, 0, 0, 125, 126, 127,
128, 129, 130, 131, 132, 133, 134, 135, 83, 0,
0, 0, 236, 0, 84, 0, 31, 0, 0, 86,
87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 6, 99, 100, 101,
102, 0, 7, 8, 9, 10, 11, 12, 13, 14,
103, 104, 0, 0, 0, 0, 0, 0, 105, 0,
106, 0, 0, 0, 0, 0, 0, 0, 0, 113,
0, 115, 198, 117, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 118, 119, 0, 0, 0, 0, 0,
0, 0, 0, 120, 121, 122, 123, 124, 0, 0,
0, 125, 126, 127, 128, 129, 130, 131, 132, 133,
134, 135, 83, 0, 0, 219, 0, 0, 84, 0,
31, 0, 0, 86, 87, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6, 99, 100, 101, 102, 0, 7, 8, 9, 10,
11, 12, 13, 14, 103, 104, 0, 0, 0, 0,
0, 0, 105, 0, 106, 0, 0, 0, 0, 0,
0, 0, 0, 113, 0, 115, 198, 117, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 118, 119, 0,
0, 0, 0, 0, 0, 0, 0, 120, 121, 122,
123, 124, 0, 0, 0, 125, 126, 127, 128, 129,
130, 131, 132, 133, 134, 135, 83, 0, 0, -128,
0, 0, 84, 0, 31, 0, 0, 86, 87, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 6, 99, 100, 101, 102, 0,
7, 8, 9, 10, 11, 12, 13, 14, 103, 104,
0, 0, 0, 0, 0, 0, 105, 0, 106, 0,
0, 0, 0, 0, 0, 0, 0, 113, 0, 115,
198, 117, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 118, 119, 0, 0, 0, 0, 0, 0, 0,
0, 120, 121, 122, 123, 124, 0, 0, 0, 125,
126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
83, 0, 0, -139, 0, 0, 84, 0, 31, 0,
0, 86, 87, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 6, 99,
100, 101, 102, 0, 7, 8, 9, 10, 11, 12,
13, 14, 103, 104, 0, 0, 0, 0, 0, 0,
105, 0, 106, 0, 0, 0, 0, 0, 0, 0,
0, 113, 0, 115, 198, 117, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 118, 119, 0, 0, 0,
0, 0, 0, 0, 0, 120, 121, 122, 123, 124,
0, 0, 0, 125, 126, 127, 128, 129, 130, 131,
132, 133, 134, 135, 83, 0, 0, -169, 0, 0,
84, 0, 31, 0, 0, 86, 87, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6, 99, 100, 101, 102, 0, 7, 8,
9, 10, 11, 12, 13, 14, 103, 104, 0, 0,
0, 0, 0, 0, 105, 0, 106, 0, 0, 0,
0, 0, 0, 0, 0, 113, 0, 115, 198, 117,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 118,
119, 0, 0, 0, 0, 0, 0, 0, 0, 120,
121, 122, 123, 124, 0, 0, 0, 125, 126, 127,
128, 129, 130, 131, 132, 133, 134, 135, 0, -100,
0, -130, 83, 0, 0, 0, 0, 0, 84, 0,
31, 0, 0, 86, 87, 0, 0, 452, 89, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6, 99, 100, 101, 102, 0, 7, 8, 9, 10,
11, 12, 13, 14, 103, 104, 0, 0, 0, 0,
0, 0, 105, 0, 106, 0, 0, 0, 0, 0,
0, 0, 0, 113, 0, 115, 198, 117, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 118, 119, 0,
0, 0, 0, 0, 0, 0, 0, 120, 121, 122,
123, 124, 0, 0, 0, 125, 126, 127, 128, 129,
130, 131, 132, 133, 134, 135, -100, 0, 0, 83,
0, 0, 0, 0, 0, 84, 0, 31, 0, 0,
86, 87, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 6, 99, 100,
101, 102, 0, 7, 8, 9, 10, 11, 12, 13,
14, 103, 104, 0, 0, 0, 0, 0, 0, 105,
0, 106, 0, 0, 0, 0, 0, 0, 0, 0,
113, 0, 115, 198, 117, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 118, 119, 0, 0, 0, 0,
0, 0, 0, 0, 120, 121, 122, 123, 124, 0,
0, 0, 125, 126, 127, 128, 129, 130, 131, 132,
133, 134, 135, 83, 0, 0, 0, 0, 0, 84,
0, 31, 0, 0, 86, 87, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 6, 99, 100, 101, 102, 0, 7, 8, 9,
10, 11, 12, 13, 14, 103, 104, 0, 0, 0,
0, 0, 0, 105, 0, 106, 0, 0, 0, 0,
0, 0, 0, 0, 113, 0, 115, 198, 117, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 118, 119,
0, 0, 0, 0, 0, 0, 0, 0, 120, 121,
122, 123, 124, 0, 0, 0, 125, 126, 127, 128,
129, 130, 131, 132, 133, 134, 135, 83, 438, 0,
0, 0, 0, 84, 0, 31, 0, 0, 86, 87,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 6, 99, 100, 101, 102,
0, 7, 8, 9, 10, 11, 12, 13, 14, 103,
104, 0, 0, 0, 0, 0, 0, 105, 0, 106,
0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
115, 198, 117, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 118, 119, 0, 0, 0, 0, 0, 0,
0, 0, 120, 121, 122, 123, 124, 0, 0, 0,
125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
135, 83, 440, 0, 0, 0, 0, 84, 239, 31,
0, 0, 86, 87, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
99, 100, 101, 102, 0, 7, 8, 9, 10, 11,
12, 13, 14, 103, 104, 0, 0, 0, 0, 0,
0, 105, 0, 106, 0, 0, 0, 0, 0, 0,
0, 0, 113, 0, 115, 198, 117, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 118, 119, 0, 0,
0, 0, 0, 0, 0, 0, 120, 121, 122, 123,
124, 0, 0, 0, 125, 126, 127, 128, 129, 130,
131, 132, 133, 134, 135, 83, 0, 0, 330, 0,
0, 84, 0, 31, 0, 0, 86, 87, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 6, 99, 100, 101, 102, 0, 7,
8, 9, 10, 11, 12, 13, 14, 103, 104, 0,
0, 0, 0, 0, 0, 105, 0, 106, 0, 0,
0, 0, 0, 0, 0, 0, 113, 0, 115, 198,
117, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
118, 119, 0, 0, 0, 0, 0, 0, 0, 0,
120, 121, 122, 123, 124, 0, 0, 0, 125, 126,
127, 128, 129, 130, 131, 132, 133, 134, 135, 83,
0, 0, 0, 0, 0, 84, 0, 31, 0, 0,
86, 87, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 6, 99, 100,
101, 102, 0, 7, 8, 9, 10, 11, 12, 13,
14, 103, 104, 0, 0, 0, 0, 0, 0, 105,
0, 106, 0, 0, 0, 0, 0, 0, 0, 0,
113, 0, 115, 198, 117, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 118, 119, 0, 0, 0, 0,
0, 0, 0, 0, 120, 121, 122, 123, 124, 0,
0, 0, 125, 126, 127, 128, 129, 130, 131, 132,
133, 134, 135, 83, 0, 0, 0, 0, 0, 84,
0, 31, 0, 0, 86, 87, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 6, 99, 100, 101, 102, 0, 7, 8, 9,
10, 11, 12, 13, 14, 103, 104, 0, 0, 0,
0, 0, 0, 105, 0, 106, 0, 0, 0, 0,
0, 0, 0, 0, 113, 0, 115, 247, 117, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 118, 119,
0, 0, 0, 0, 0, 0, 0, 0, 120, 121,
122, 123, 124, 0, 0, 0, 125, 126, 127, 128,
129, 130, 131, 132, 133, 134, 135, 83, 0, 0,
0, 0, 0, 84, 0, 31, 0, 0, 86, 87,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 6, 99, 100, 101, 102,
0, 7, 8, 9, 10, 11, 12, 13, 14, 103,
104, 0, 0, 0, 0, 0, 0, 105, 0, 106,
0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
115, 363, 117, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 118, 119, 0, 0, 0, 0, 0, 0,
0, 0, 120, 121, 122, 123, 124, 0, 0, 0,
125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
135, 83, 0, 0, 0, 0, 0, 84, 0, 31,
0, 0, 86, 87, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
99, 100, 101, 102, 0, 7, 8, 9, 10, 11,
12, 13, 14, 103, 104, 0, 0, 0, 0, 0,
0, 105, 0, 106, 0, 0, 0, 0, 0, 0,
0, 0, 113, 0, 115, 485, 117, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 118, 119, 0, 0,
0, 0, 0, 0, 0, 0, 120, 121, 122, 123,
124, 0, 0, 0, 125, 126, 127, 128, 129, 130,
131, 132, 133, 134, 135, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 307, 308, 309, 0, 0, 310, 0, 0, 0,
311, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 308, 309,
0, 339, 0, 0, 0, 0, 311, 268, 269, 270,
271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, 306, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 307, 308, 309, 0, 0, 346, 0,
0, 0, 311, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
308, 309, 0, 0, 0, 0, 349, 0, 311, 268,
269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, 306, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 307, 308, 309, 0, 0,
0, 0, 0, 431, 311, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 307, 308, 309, 0, 0, 0, 0, 0, 432,
311, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 308, 309,
0, 0, 0, 0, 0, 435, 311, 268, 269, 270,
271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, 306, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 307, 308, 309, 0, 0, 0, 0,
0, 436, 311, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
308, 309, 0, 0, 0, 454, 0, 0, 311, 268,
269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, 306, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 307, 308, 309, 0, 464,
0, 0, 0, 0, 311, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 307, 308, 309, 465, 0, 0, 0, 0, 0,
311, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 308, 309,
467, 0, 0, 0, 0, 0, 311, 268, 269, 270,
271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, 306, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 307, 308, 309, 490, 0, 0, 0,
0, 0, 311, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
308, 309, 491, 0, 0, 0, 0, 0, 311, 268,
269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, 306, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 307, 308, 309, 0, 0,
0, 499, 0, 0, 311, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 307, 308, 309, 503, 0, 0, 0, 0, 0,
311, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 308, 309,
0, 0, 519, 0, 0, 0, 311, 268, 269, 270,
271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, 306, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 307, 308, 309, 0, 0, 0, 0,
0, 521, 311, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
308, 309, 0, 0, 0, 545, 0, 0, 311, 268,
269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, 306, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 307, 308, 309, 0, 0,
0, 0, 0, 553, 311, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 307, 308, 309, 0, 0, 0, 0, 0, 567,
311, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 308, 309,
0, 0, 0, 0, 0, 0, 311, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
308, 309, 0, 0, 0, 0, 0, 0, 311, 273,
274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, 306, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307, 308, 309, 0, 0, 0, 0, 0, 0, 311,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
308, 309, 0, 0, 0, 0, 0, 0, 311, -170,
-170, -170, -170, 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,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 308, 309,
0, 0, 0, 0, 0, 0, 311, -170, -170, -170,
-170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
-170, -170, -170, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 307, 308, 309, 0, 0, 0, 0, 0, 0,
311
};
static
const
yytype_int16 yycheck[] =
{
35, 1, 319, 22, 23, 116, 117, 117, 69, 229,
36, 106, 324, 325, 109, 329, 10, 483, 37, 19,
8, 33, 36, 72, 475, 71, 3, 72, 28, 29,
30, 72, 32, 4, 34, 4, 83, 6, 72, 71,
9, 488, 133, 12, 13, 0, 137, 16, 61, 18,
367, 502, 21, 22, 16, 74, 75, 71, 72, 73,
106, 108, 5, 98, 7, 52, 37, 114, 115, 52,
130, 131, 132, 36, 106, 38, 523, 124, 36, 139,
127, 191, 192, 136, 137, 73, 135, 198, 57, 134,
135, 71, 72, 313, 135, 315, 410, 71, 72, 37,
132, 135, 25, 26, 38, 105, 106, 573, 134, 109,
135, 4, 563, 6, 136, 427, 9, 117, 72, 12,
13, 137, 138, 16, 136, 18, 16, 134, 21, 22,
134, 130, 131, 132, 10, 72, 247, 135, 135, 135,
139, 135, 135, 457, 239, 52, 52, 36, 36, 463,
103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
37, 73, 73, 73, 57, 135, 134, 136, 135, 73,
135, 115, 132, 5, 209, 136, 15, 130, 131, 132,
36, 73, 292, 135, 496, 185, 139, 135, 134, 409,
135, 191, 192, 288, 289, 290, 291, 36, 73, 135,
71, 262, 41, 42, 43, 44, 45, 46, 47, 48,
49, 528, 134, 71, 71, 527, 132, 132, 328, 137,
134, 138, 442, 132, 444, 133, 59, 539, 73, 134,
74, 115, 72, 136, 295, 137, 456, 138, 135, 239,
134, 72, 133, 136, 72, 38, 133, 73, 309, 73,
136, 136, 363, 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,
109, 110, 111, 112, 15, 73, 135, 138, 288, 289,
290, 291, 292, 72, 5, 73, 137, 73, 136, 79,
410, 130, 131, 132, 339, 36, 353, 134, 138, 26,
139, 42, 43, 44, 45, 46, 47, 48, 49, 319,
138, 138, 417, 137, 32, 136, 136, 134, 328, 138,
330, 136, 138, 352, 138, 354, 73, 138, 74, 449,
138, 138, 136, 138, 74, 106, 107, 108, 109, 110,
111, 112, 36, 73, 78, 74, 105, 4, 42, 43,
44, 45, 46, 47, 48, 49, 52, 367, 37, 130,
131, 132, 424, 420, 485, 511, 141, 64, 139, 522,
353, 360, 519, 90, 494, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 430, 431, 432, 85, -1,
435, -1, 512, -1, -1, -1, -1, -1, 95, -1,
410, -1, -1, -1, 509, -1, -1, 417, -1, -1,
107, -1, 109, 110, 111, 112, 445, -1, 475, 116,
-1, 118, 119, 120, 121, 122, 123, -1, -1, 126,
-1, 128, 129, 130, 131, 132, 133, 134, 135, 449,
-1, -1, -1, -1, 141, 502, -1, -1, -1, -1,
-1, -1, -1, -1, 511, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 510, -1, -1, -1, 514,
-1, 516, -1, -1, -1, -1, 521, -1, -1, -1,
-1, -1, -1, -1, 494, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 540, -1, -1, -1, 509,
-1, -1, 512, 200, 201, 202, 563, 204, -1, 554,
207, -1, -1, -1, 559, 560, -1, -1, 528, -1,
-1, -1, 567, -1, -1, 222, -1, -1, -1, 574,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
247, -1, -1, -1, 251, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
287, -1, -1, -1, -1, -1, 293, 294, -1, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
-1, -1, -1, -1, 311, 312, -1, 314, -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, 8, 341, 342, -1, -1, -1, 14,
15, 16, 349, -1, 19, 20, -1, -1, -1, 356,
-1, -1, 359, 360, -1, -1, 363, -1, -1, -1,
-1, 36, 37, 38, 39, 40, -1, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, -1, -1, -1,
-1, -1, -1, 58, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, 69, -1, 71, 72, 73, -1,
-1, 408, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 433, 434, 103, 104,
-1, -1, -1, -1, -1, -1, -1, -1, 113, 114,
115, 116, 117, -1, -1, -1, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 464, -1, -1,
-1, -1, -1, 138, -1, 8, -1, -1, -1, -1,
-1, 14, -1, 16, -1, -1, 19, 20, 485, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
497, 498, -1, 36, 37, 38, 39, 40, -1, 42,
43, 44, 45, 46, 47, 48, 49, 50, 51, -1,
-1, -1, 519, -1, -1, 58, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, 69, -1, 71, 72,
73, -1, -1, -1, -1, 542, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 552, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 562, -1, -1, -1, 566,
103, 104, -1, -1, -1, -1, -1, -1, -1, -1,
113, 114, 115, 116, 117, -1, -1, -1, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, -1,
8, -1, -1, -1, -1, 138, 14, -1, 16, -1,
-1, 19, 20, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 36, 37,
38, 39, 40, -1, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
58, -1, 60, -1, -1, -1, -1, -1, -1, -1,
-1, 69, -1, 71, 72, 73, -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, 103, 104, -1, -1, -1,
-1, -1, -1, -1, -1, 113, 114, 115, 116, 117,
-1, -1, -1, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 4, -1, -1, -1, 8, -1,
138, -1, -1, -1, 14, -1, 16, -1, -1, 19,
20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 36, 37, 38, 39,
40, -1, 42, 43, 44, 45, 46, 47, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, 58, -1,
60, -1, -1, -1, -1, -1, -1, -1, -1, 69,
-1, 71, 72, 73, -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, 103, 104, -1, -1, -1, -1, -1,
-1, -1, -1, 113, 114, 115, 116, 117, -1, -1,
-1, 121, 122, 123, 124, 125, 126, 127, 128, 129,
130, 131, 8, 133, -1, -1, -1, -1, 14, -1,
16, 17, -1, 19, 20, -1, -1, 23, 24, -1,
-1, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, -1, 42, 43, 44, 45,
46, 47, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, 58, -1, 60, -1, -1, 63, 64, 65,
66, 67, 68, 69, 70, 71, 72, 73, -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, 103, 104, -1,
-1, -1, -1, -1, -1, -1, -1, 113, 114, 115,
116, 117, -1, -1, -1, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 8, -1, -1, 135,
136, -1, 14, -1, 16, 17, -1, 19, 20, -1,
-1, 23, 24, -1, -1, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, -1,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
-1, -1, -1, -1, -1, -1, 58, -1, 60, -1,
-1, 63, 64, 65, 66, 67, 68, 69, 70, 71,
72, 73, -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, 103, 104, -1, -1, -1, -1, -1, -1, -1,
-1, 113, 114, 115, 116, 117, -1, -1, -1, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
8, -1, -1, 135, 136, -1, 14, -1, 16, 17,
-1, 19, 20, -1, -1, 23, 24, -1, -1, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, -1, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
58, -1, 60, -1, -1, 63, 64, 65, 66, 67,
68, 69, 70, 71, 72, 73, -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, 103, 104, -1, -1, -1,
-1, -1, -1, -1, -1, 113, 114, 115, 116, 117,
-1, -1, -1, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 8, -1, -1, 135, 136, -1,
14, -1, 16, -1, -1, 19, 20, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 36, 37, 38, 39, 40, -1, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, -1, -1,
-1, -1, -1, -1, 58, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, 69, -1, 71, 72, 73,
-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, 103,
104, -1, -1, -1, -1, -1, -1, -1, -1, 113,
114, 115, 116, 117, -1, -1, -1, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, 8, -1,
-1, -1, 136, -1, 14, -1, 16, -1, -1, 19,
20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 36, 37, 38, 39,
40, -1, 42, 43, 44, 45, 46, 47, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, 58, -1,
60, -1, -1, -1, -1, -1, -1, -1, -1, 69,
-1, 71, 72, 73, -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, 103, 104, -1, -1, -1, -1, -1,
-1, -1, -1, 113, 114, 115, 116, 117, -1, -1,
-1, 121, 122, 123, 124, 125, 126, 127, 128, 129,
130, 131, 8, -1, -1, 135, -1, -1, 14, -1,
16, -1, -1, 19, 20, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
36, 37, 38, 39, 40, -1, 42, 43, 44, 45,
46, 47, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, 58, -1, 60, -1, -1, -1, -1, -1,
-1, -1, -1, 69, -1, 71, 72, 73, -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, 103, 104, -1,
-1, -1, -1, -1, -1, -1, -1, 113, 114, 115,
116, 117, -1, -1, -1, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 8, -1, -1, 135,
-1, -1, 14, -1, 16, -1, -1, 19, 20, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 36, 37, 38, 39, 40, -1,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
-1, -1, -1, -1, -1, -1, 58, -1, 60, -1,
-1, -1, -1, -1, -1, -1, -1, 69, -1, 71,
72, 73, -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, 103, 104, -1, -1, -1, -1, -1, -1, -1,
-1, 113, 114, 115, 116, 117, -1, -1, -1, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
8, -1, -1, 135, -1, -1, 14, -1, 16, -1,
-1, 19, 20, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 36, 37,
38, 39, 40, -1, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
58, -1, 60, -1, -1, -1, -1, -1, -1, -1,
-1, 69, -1, 71, 72, 73, -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, 103, 104, -1, -1, -1,
-1, -1, -1, -1, -1, 113, 114, 115, 116, 117,
-1, -1, -1, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 8, -1, -1, 135, -1, -1,
14, -1, 16, -1, -1, 19, 20, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 36, 37, 38, 39, 40, -1, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, -1, -1,
-1, -1, -1, -1, 58, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, 69, -1, 71, 72, 73,
-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, 103,
104, -1, -1, -1, -1, -1, -1, -1, -1, 113,
114, 115, 116, 117, -1, -1, -1, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, -1, 5,
-1, 135, 8, -1, -1, -1, -1, -1, 14, -1,
16, -1, -1, 19, 20, -1, -1, 23, 24, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
36, 37, 38, 39, 40, -1, 42, 43, 44, 45,
46, 47, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, 58, -1, 60, -1, -1, -1, -1, -1,
-1, -1, -1, 69, -1, 71, 72, 73, -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, 103, 104, -1,
-1, -1, -1, -1, -1, -1, -1, 113, 114, 115,
116, 117, -1, -1, -1, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 5, -1, -1, 8,
-1, -1, -1, -1, -1, 14, -1, 16, -1, -1,
19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 36, 37, 38,
39, 40, -1, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, -1, -1, -1, -1, -1, -1, 58,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
69, -1, 71, 72, 73, -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, 103, 104, -1, -1, -1, -1,
-1, -1, -1, -1, 113, 114, 115, 116, 117, -1,
-1, -1, 121, 122, 123, 124, 125, 126, 127, 128,
129, 130, 131, 8, -1, -1, -1, -1, -1, 14,
-1, 16, -1, -1, 19, 20, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 36, 37, 38, 39, 40, -1, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, -1, -1, -1,
-1, -1, -1, 58, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, 69, -1, 71, 72, 73, -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, 103, 104,
-1, -1, -1, -1, -1, -1, -1, -1, 113, 114,
115, 116, 117, -1, -1, -1, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 8, 133, -1,
-1, -1, -1, 14, -1, 16, -1, -1, 19, 20,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 36, 37, 38, 39, 40,
-1, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, -1, -1, -1, -1, -1, -1, 58, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, 69, -1,
71, 72, 73, -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, 103, 104, -1, -1, -1, -1, -1, -1,
-1, -1, 113, 114, 115, 116, 117, -1, -1, -1,
121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
131, 8, 133, -1, -1, -1, -1, 14, 15, 16,
-1, -1, 19, 20, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 36,
37, 38, 39, 40, -1, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, -1, -1, -1, -1, -1,
-1, 58, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, 69, -1, 71, 72, 73, -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, 103, 104, -1, -1,
-1, -1, -1, -1, -1, -1, 113, 114, 115, 116,
117, -1, -1, -1, 121, 122, 123, 124, 125, 126,
127, 128, 129, 130, 131, 8, -1, -1, 11, -1,
-1, 14, -1, 16, -1, -1, 19, 20, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 36, 37, 38, 39, 40, -1, 42,
43, 44, 45, 46, 47, 48, 49, 50, 51, -1,
-1, -1, -1, -1, -1, 58, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, 69, -1, 71, 72,
73, -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,
103, 104, -1, -1, -1, -1, -1, -1, -1, -1,
113, 114, 115, 116, 117, -1, -1, -1, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 8,
-1, -1, -1, -1, -1, 14, -1, 16, -1, -1,
19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 36, 37, 38,
39, 40, -1, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, -1, -1, -1, -1, -1, -1, 58,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
69, -1, 71, 72, 73, -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, 103, 104, -1, -1, -1, -1,
-1, -1, -1, -1, 113, 114, 115, 116, 117, -1,
-1, -1, 121, 122, 123, 124, 125, 126, 127, 128,
129, 130, 131, 8, -1, -1, -1, -1, -1, 14,
-1, 16, -1, -1, 19, 20, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 36, 37, 38, 39, 40, -1, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, -1, -1, -1,
-1, -1, -1, 58, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, 69, -1, 71, 72, 73, -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, 103, 104,
-1, -1, -1, -1, -1, -1, -1, -1, 113, 114,
115, 116, 117, -1, -1, -1, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 8, -1, -1,
-1, -1, -1, 14, -1, 16, -1, -1, 19, 20,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 36, 37, 38, 39, 40,
-1, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, -1, -1, -1, -1, -1, -1, 58, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, 69, -1,
71, 72, 73, -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, 103, 104, -1, -1, -1, -1, -1, -1,
-1, -1, 113, 114, 115, 116, 117, -1, -1, -1,
121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
131, 8, -1, -1, -1, -1, -1, 14, -1, 16,
-1, -1, 19, 20, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 36,
37, 38, 39, 40, -1, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, -1, -1, -1, -1, -1,
-1, 58, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, 69, -1, 71, 72, 73, -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, 103, 104, -1, -1,
-1, -1, -1, -1, -1, -1, 113, 114, 115, 116,
117, -1, -1, -1, 121, 122, 123, 124, 125, 126,
127, 128, 129, 130, 131, 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,
109, 110, 111, 112, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 130, 131, 132, -1, -1, 135, -1, -1, -1,
139, 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, 109, 110, 111, 112,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 130, 131, 132,
-1, 134, -1, -1, -1, -1, 139, 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, 109, 110, 111, 112, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 130, 131, 132, -1, -1, 135, -1,
-1, -1, 139, 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, 109, 110,
111, 112, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
131, 132, -1, -1, -1, -1, 137, -1, 139, 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, 109, 110, 111, 112, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 130, 131, 132, -1, -1,
-1, -1, -1, 138, 139, 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,
109, 110, 111, 112, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 130, 131, 132, -1, -1, -1, -1, -1, 138,
139, 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, 109, 110, 111, 112,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 130, 131, 132,
-1, -1, -1, -1, -1, 138, 139, 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, 109, 110, 111, 112, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 130, 131, 132, -1, -1, -1, -1,
-1, 138, 139, 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, 109, 110,
111, 112, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
131, 132, -1, -1, -1, 136, -1, -1, 139, 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, 109, 110, 111, 112, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 130, 131, 132, -1, 134,
-1, -1, -1, -1, 139, 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,
109, 110, 111, 112, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 130, 131, 132, 133, -1, -1, -1, -1, -1,
139, 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, 109, 110, 111, 112,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 130, 131, 132,
133, -1, -1, -1, -1, -1, 139, 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, 109, 110, 111, 112, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 130, 131, 132, 133, -1, -1, -1,
-1, -1, 139, 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, 109, 110,
111, 112, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
131, 132, 133, -1, -1, -1, -1, -1, 139, 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, 109, 110, 111, 112, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 130, 131, 132, -1, -1,
-1, 136, -1, -1, 139, 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,
109, 110, 111, 112, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 130, 131, 132, 133, -1, -1, -1, -1, -1,
139, 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, 109, 110, 111, 112,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 130, 131, 132,
-1, -1, 135, -1, -1, -1, 139, 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, 109, 110, 111, 112, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 130, 131, 132, -1, -1, -1, -1,
-1, 138, 139, 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, 109, 110,
111, 112, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
131, 132, -1, -1, -1, 136, -1, -1, 139, 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, 109, 110, 111, 112, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 130, 131, 132, -1, -1,
-1, -1, -1, 138, 139, 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,
109, 110, 111, 112, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 130, 131, 132, -1, -1, -1, -1, -1, 138,
139, 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, 109, 110, 111, 112,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 130, 131, 132,
-1, -1, -1, -1, -1, -1, 139, 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, 109, 110,
111, 112, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
131, 132, -1, -1, -1, -1, -1, -1, 139, 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, 109,
110, 111, 112, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
130, 131, 132, -1, -1, -1, -1, -1, -1, 139,
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, 109, 110,
111, 112, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
131, 132, -1, -1, -1, -1, -1, -1, 139, 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, 109, 110, 111, 112,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 130, 131, 132,
-1, -1, -1, -1, -1, -1, 139, 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, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 130, 131, 132, -1, -1, -1, -1, -1, -1,
139
};
static
const
yytype_uint8 yystos[] =
{
0, 3, 141, 155, 156, 157, 36, 42, 43, 44,
45, 46, 47, 48, 49, 147, 158, 0, 157, 61,
159, 147, 72, 134, 135, 160, 4, 6, 9, 12,
13, 16, 18, 21, 22, 57, 161, 162, 163, 164,
165, 166, 167, 169, 170, 171, 172, 177, 178, 179,
186, 187, 186, 52, 52, 36, 142, 37, 147, 147,
147, 147, 38, 147, 72, 206, 136, 163, 135, 5,
7, 16, 135, 160, 134, 134, 10, 135, 10, 135,
135, 135, 135, 8, 14, 17, 19, 20, 23, 24,
27, 28, 29, 30, 31, 32, 33, 34, 35, 37,
38, 39, 40, 50, 51, 58, 60, 63, 64, 65,
66, 67, 68, 69, 70, 71, 72, 73, 103, 104,
113, 114, 115, 116, 117, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 135, 147, 180, 186,
188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
201, 202, 203, 204, 206, 207, 208, 209, 212, 213,
215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
235, 236, 237, 238, 36, 134, 143, 72, 173, 52,
52, 186, 186, 36, 144, 144, 209, 36, 72, 212,
73, 73, 73, 208, 73, 135, 135, 73, 212, 134,
135, 206, 147, 149, 150, 146, 147, 148, 149, 135,
212, 209, 146, 147, 212, 212, 212, 212, 209, 4,
184, 185, 209, 210, 212, 214, 136, 212, 214, 15,
145, 146, 214, 212, 212, 212, 212, 72, 212, 212,
209, 115, 212, 209, 212, 212, 212, 212, 212, 212,
212, 212, 132, 5, 136, 190, 135, 135, 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, 109, 110, 111, 112, 130, 131, 132,
135, 139, 71, 72, 71, 72, 41, 145, 151, 134,
143, 174, 175, 176, 145, 145, 135, 135, 134, 73,
11, 168, 212, 212, 211, 212, 73, 212, 212, 134,
206, 71, 71, 71, 106, 71, 135, 132, 212, 137,
132, 142, 133, 137, 134, 133, 137, 136, 146, 138,
137, 138, 212, 72, 212, 132, 143, 134, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 146, 146,
146, 146, 145, 212, 212, 38, 143, 212, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 71, 72,
73, 143, 212, 212, 142, 212, 142, 59, 152, 153,
73, 151, 74, 136, 137, 152, 152, 145, 210, 147,
138, 138, 138, 135, 115, 138, 138, 206, 133, 212,
133, 212, 72, 212, 72, 134, 186, 185, 209, 186,
212, 212, 23, 204, 136, 212, 72, 73, 151, 212,
142, 145, 210, 73, 134, 133, 136, 133, 136, 146,
154, 181, 182, 183, 209, 73, 38, 176, 135, 152,
138, 206, 206, 206, 212, 72, 212, 206, 72, 198,
133, 133, 142, 142, 186, 5, 145, 73, 137, 136,
142, 210, 73, 133, 136, 138, 138, 210, 212, 79,
138, 137, 134, 181, 26, 25, 26, 205, 205, 135,
212, 138, 199, 200, 201, 136, 136, 145, 134, 152,
212, 136, 138, 181, 138, 146, 135, 206, 183, 145,
138, 206, 73, 206, 211, 136, 206, 136, 202, 201,
152, 151, 74, 138, 138, 152, 135, 206, 212, 138,
138, 136, 74, 73, 212, 206, 74, 138, 206, 206,
212, 181, 212, 206, 138, 205, 206
};
static
const
yytype_uint8 yyr1[] =
{
0, 140, 141, 142, 143, 144, 145, 145, 146, 146,
146, 147, 147, 147, 147, 147, 147, 147, 147, 147,
148, 149, 149, 150, 150, 151, 151, 152, 152, 153,
154, 154, 155, 155, 156, 156, 157, 157, 157, 157,
158, 158, 159, 159, 160, 161, 161, 162, 162, 163,
163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
164, 165, 166, 167, 167, 168, 169, 170, 171, 172,
173, 174, 174, 175, 175, 175, 176, 176, 177, 178,
179, 179, 179, 179, 180, 180, 181, 181, 182, 182,
182, 183, 183, 184, 184, 184, 185, 185, 185, 185,
186, 186, 187, 187, 188, 188, 189, 189, 190, 190,
190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
190, 190, 190, 190, 190, 190, 190, 191, 191, 191,
191, 191, 192, 192, 192, 192, 192, 192, 193, 193,
194, 195, 195, 196, 197, 198, 198, 199, 199, 200,
200, 201, 201, 202, 202, 203, 203, 204, 204, 205,
205, 205, 206, 207, 208, 208, 209, 210, 210, 211,
211, 212, 212, 212, 212, 212, 212, 212, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 213, 213,
214, 214, 214, 215, 215, 215, 215, 215, 215, 215,
215, 215, 215, 215, 215, 215, 216, 216, 216, 216,
217, 217, 218, 218, 219, 219, 219, 219, 219, 219,
220, 220, 220, 220, 220, 220, 220, 220, 220, 221,
222, 222, 222, 222, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 224, 225,
225, 225, 226, 227, 227, 227, 227, 227, 228, 228,
229, 229, 230, 230, 231, 231, 231, 232, 232, 232,
233, 233, 233, 233, 233, 233, 233, 234, 234, 234,
235, 235, 235, 236, 237, 238
};
static
const
yytype_uint8 yyr2[] =
{
0, 2, 1, 1, 1, 1, 1, 2, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 3, 3, 4, 4, 2, 1, 0, 1, 2,
3, 1, 0, 1, 2, 1, 5, 7, 5, 7,
0, 1, 0, 2, 3, 0, 1, 2, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 2, 1,
2, 3, 3, 3, 5, 2, 5, 3, 3, 3,
3, 0, 1, 3, 2, 1, 1, 3, 7, 6,
9, 9, 8, 8, 8, 11, 0, 1, 3, 2,
1, 4, 6, 3, 2, 1, 6, 8, 5, 7,
0, 1, 2, 1, 0, 1, 2, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 2, 2,
2, 2, 3, 2, 2, 1, 2, 2, 1, 3,
2, 4, 1, 2, 2, 1, 1, 2, 2, 1,
9, 7, 9, 5, 5, 3, 4, 0, 1, 2,
1, 4, 3, 3, 2, 5, 7, 6, 6, 0,
2, 6, 3, 2, 5, 2, 1, 0, 1, 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 1, 1, 1, 1, 1, 1, 1, 3, 7,
3, 2, 1, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 1, 2, 4, 3, 5,
2, 2, 2, 2, 1, 1, 1, 1, 1, 1,
3, 3, 3, 3, 3, 3, 3, 3, 3, 5,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 2, 3, 3, 3, 3, 3, 3, 4, 5,
3, 3, 3, 3, 2, 2, 1, 3, 3, 2,
5, 2, 6, 3, 6, 3, 5, 5, 4, 4,
5, 4, 4, 6, 6, 6
};
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY (-2)
#define YYEOF 0
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
#define YYERROR goto yyerrorlab
#define YYRECOVERING() (!!yyerrstatus)
#define YYBACKUP(Token, Value) \
do
\
if
(yychar == YYEMPTY) \
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (yylen); \
yystate = *yyssp; \
goto
yybackup; \
} \
else
\
{ \
yyerror (compiler, YY_(
"syntax error: cannot back up"
)); \
YYERROR; \
} \
while
(0)
#define YYTERROR 1
#define YYERRCODE 256
#if YYDEBUG
# ifndef YYFPRINTF
# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
# define YYFPRINTF fprintf
# endif
# define YYDPRINTF(Args) \
do
{ \
if
(yydebug) \
YYFPRINTF Args; \
}
while
(0)
#ifndef YY_LOCATION_PRINT
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
#endif
# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
do
{ \
if
(yydebug) \
{ \
YYFPRINTF (stderr,
"%s "
, Title); \
yy_symbol_print (stderr, \
Type, Value, compiler); \
YYFPRINTF (stderr,
"\n"
); \
} \
}
while
(0)
static
void
yy_symbol_value_print (
FILE
*yyoutput,
int
yytype, YYSTYPE
const
*
const
yyvaluep, SPVM_COMPILER* compiler)
{
FILE
*yyo = yyoutput;
YYUSE (yyo);
YYUSE (compiler);
if
(!yyvaluep)
return
;
# ifdef YYPRINT
if
(yytype < YYNTOKENS)
YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
# endif
YYUSE (yytype);
}
static
void
yy_symbol_print (
FILE
*yyoutput,
int
yytype, YYSTYPE
const
*
const
yyvaluep, SPVM_COMPILER* compiler)
{
YYFPRINTF (yyoutput,
"%s %s ("
,
yytype < YYNTOKENS ?
"token"
:
"nterm"
, yytname[yytype]);
yy_symbol_value_print (yyoutput, yytype, yyvaluep, compiler);
YYFPRINTF (yyoutput,
")"
);
}
static
void
yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
{
YYFPRINTF (stderr,
"Stack now"
);
for
(; yybottom <= yytop; yybottom++)
{
int
yybot = *yybottom;
YYFPRINTF (stderr,
" %d"
, yybot);
}
YYFPRINTF (stderr,
"\n"
);
}
# define YY_STACK_PRINT(Bottom, Top) \
do
{ \
if
(yydebug) \
yy_stack_print ((Bottom), (Top)); \
}
while
(0)
static
void
yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp,
int
yyrule, SPVM_COMPILER* compiler)
{
unsigned
long
int
yylno = yyrline[yyrule];
int
yynrhs = yyr2[yyrule];
int
yyi;
YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n"
,
yyrule - 1, yylno);
for
(yyi = 0; yyi < yynrhs; yyi++)
{
YYFPRINTF (stderr,
" $%d = "
, yyi + 1);
yy_symbol_print (stderr,
yystos[yyssp[yyi + 1 - yynrhs]],
&(yyvsp[(yyi + 1) - (yynrhs)])
, compiler);
YYFPRINTF (stderr,
"\n"
);
}
}
# define YY_REDUCE_PRINT(Rule) \
do
{ \
if
(yydebug) \
yy_reduce_print (yyssp, yyvsp, Rule, compiler); \
}
while
(0)
int
yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args)
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
# define YY_STACK_PRINT(Bottom, Top)
# define YY_REDUCE_PRINT(Rule)
#endif /* !YYDEBUG */
#ifndef YYINITDEPTH
# define YYINITDEPTH 200
#endif
#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif
#if YYERROR_VERBOSE
# ifndef yystrlen
# if defined __GLIBC__ && defined _STRING_H
# define yystrlen strlen
# else
static
YYSIZE_T
yystrlen (
const
char
*yystr)
{
YYSIZE_T yylen;
for
(yylen = 0; yystr[yylen]; yylen++)
continue
;
return
yylen;
}
# endif
# endif
# ifndef yystpcpy
# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
# define yystpcpy stpcpy
# else
static
char
*
yystpcpy (
char
*yydest,
const
char
*yysrc)
{
char
*yyd = yydest;
const
char
*yys = yysrc;
while
((*yyd++ = *yys++) !=
'\0'
)
continue
;
return
yyd - 1;
}
# endif
# endif
# ifndef yytnamerr
static
YYSIZE_T
yytnamerr (
char
*yyres,
const
char
*yystr)
{
if
(*yystr ==
'"'
)
{
YYSIZE_T yyn = 0;
char
const
*yyp = yystr;
for
(;;)
switch
(*++yyp)
{
case
'\''
:
case
','
:
goto
do_not_strip_quotes;
case
'\\'
:
if
(*++yyp !=
'\\'
)
goto
do_not_strip_quotes;
default
:
if
(yyres)
yyres[yyn] = *yyp;
yyn++;
break
;
case
'"'
:
if
(yyres)
yyres[yyn] =
'\0'
;
return
yyn;
}
do_not_strip_quotes: ;
}
if
(! yyres)
return
yystrlen (yystr);
return
yystpcpy (yyres, yystr) - yyres;
}
# endif
static
int
yysyntax_error (YYSIZE_T *yymsg_alloc,
char
**yymsg,
yytype_int16 *yyssp,
int
yytoken)
{
YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
YYSIZE_T yysize = yysize0;
enum
{ YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
const
char
*yyformat = YY_NULLPTR;
char
const
*yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
int
yycount = 0;
if
(yytoken != YYEMPTY)
{
int
yyn = yypact[*yyssp];
yyarg[yycount++] = yytname[yytoken];
if
(!yypact_value_is_default (yyn))
{
int
yyxbegin = yyn < 0 ? -yyn : 0;
int
yychecklim = YYLAST - yyn + 1;
int
yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
int
yyx;
for
(yyx = yyxbegin; yyx < yyxend; ++yyx)
if
(yycheck[yyx + yyn] == yyx && yyx != YYTERROR
&& !yytable_value_is_error (yytable[yyx + yyn]))
{
if
(yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
{
yycount = 1;
yysize = yysize0;
break
;
}
yyarg[yycount++] = yytname[yyx];
{
YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
if
(! (yysize <= yysize1
&& yysize1 <= YYSTACK_ALLOC_MAXIMUM))
return
2;
yysize = yysize1;
}
}
}
}
switch
(yycount)
{
# define YYCASE_(N, S) \
case
N: \
yyformat = S; \
break
YYCASE_(0, YY_(
"syntax error"
));
YYCASE_(1, YY_(
"syntax error, unexpected %s"
));
YYCASE_(2, YY_(
"syntax error, unexpected %s, expecting %s"
));
YYCASE_(3, YY_(
"syntax error, unexpected %s, expecting %s or %s"
));
YYCASE_(4, YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"
));
YYCASE_(5, YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"
));
# undef YYCASE_
}
{
YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
if
(! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
return
2;
yysize = yysize1;
}
if
(*yymsg_alloc < yysize)
{
*yymsg_alloc = 2 * yysize;
if
(! (yysize <= *yymsg_alloc
&& *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
*yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
return
1;
}
{
char
*yyp = *yymsg;
int
yyi = 0;
while
((*yyp = *yyformat) !=
'\0'
)
if
(*yyp ==
'%'
&& yyformat[1] ==
's'
&& yyi < yycount)
{
yyp += yytnamerr (yyp, yyarg[yyi++]);
yyformat += 2;
}
else
{
yyp++;
yyformat++;
}
}
return
0;
}
#endif /* YYERROR_VERBOSE */
static
void
yydestruct (
const
char
*yymsg,
int
yytype, YYSTYPE *yyvaluep, SPVM_COMPILER* compiler)
{
YYUSE (yyvaluep);
YYUSE (compiler);
if
(!yymsg)
yymsg =
"Deleting"
;
YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
YYUSE (yytype);
YY_IGNORE_MAYBE_UNINITIALIZED_END
}
int
yyparse (SPVM_COMPILER* compiler)
{
int
yychar;
YY_INITIAL_VALUE (
static
YYSTYPE yyval_default;)
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
int
yynerrs;
int
yystate;
int
yyerrstatus;
yytype_int16 yyssa[YYINITDEPTH];
yytype_int16 *yyss;
yytype_int16 *yyssp;
YYSTYPE yyvsa[YYINITDEPTH];
YYSTYPE *yyvs;
YYSTYPE *yyvsp;
YYSIZE_T yystacksize;
int
yyn;
int
yyresult;
int
yytoken = 0;
YYSTYPE yyval;
#if YYERROR_VERBOSE
char
yymsgbuf[128];
char
*yymsg = yymsgbuf;
YYSIZE_T yymsg_alloc =
sizeof
yymsgbuf;
#endif
#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
int
yylen = 0;
yyssp = yyss = yyssa;
yyvsp = yyvs = yyvsa;
yystacksize = YYINITDEPTH;
YYDPRINTF ((stderr,
"Starting parse\n"
));
yystate = 0;
yyerrstatus = 0;
yynerrs = 0;
yychar = YYEMPTY;
goto
yysetstate;
yynewstate:
yyssp++;
yysetstate:
*yyssp = yystate;
if
(yyss + yystacksize - 1 <= yyssp)
{
YYSIZE_T yysize = yyssp - yyss + 1;
#ifdef yyoverflow
{
YYSTYPE *yyvs1 = yyvs;
yytype_int16 *yyss1 = yyss;
yyoverflow (YY_(
"memory exhausted"
),
&yyss1, yysize *
sizeof
(*yyssp),
&yyvs1, yysize *
sizeof
(*yyvsp),
&yystacksize);
yyss = yyss1;
yyvs = yyvs1;
}
#else /* no yyoverflow */
# ifndef YYSTACK_RELOCATE
goto
yyexhaustedlab;
# else
if
(YYMAXDEPTH <= yystacksize)
goto
yyexhaustedlab;
yystacksize *= 2;
if
(YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
yytype_int16 *yyss1 = yyss;
union
yyalloc *yyptr =
(
union
yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if
(! yyptr)
goto
yyexhaustedlab;
YYSTACK_RELOCATE (yyss_alloc, yyss);
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
# undef YYSTACK_RELOCATE
if
(yyss1 != yyssa)
YYSTACK_FREE (yyss1);
}
# endif
#endif /* no yyoverflow */
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
YYDPRINTF ((stderr,
"Stack size increased to %lu\n"
,
(unsigned
long
int
) yystacksize));
if
(yyss + yystacksize - 1 <= yyssp)
YYABORT;
}
YYDPRINTF ((stderr,
"Entering state %d\n"
, yystate));
if
(yystate == YYFINAL)
YYACCEPT;
goto
yybackup;
yybackup:
yyn = yypact[yystate];
if
(yypact_value_is_default (yyn))
goto
yydefault;
if
(yychar == YYEMPTY)
{
YYDPRINTF ((stderr,
"Reading a token: "
));
yychar = yylex (&yylval, compiler);
}
if
(yychar <= YYEOF)
{
yychar = yytoken = YYEOF;
YYDPRINTF ((stderr,
"Now at end of input.\n"
));
}
else
{
yytoken = YYTRANSLATE (yychar);
YY_SYMBOL_PRINT (
"Next token is"
, yytoken, &yylval, &yylloc);
}
yyn += yytoken;
if
(yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
goto
yydefault;
yyn = yytable[yyn];
if
(yyn <= 0)
{
if
(yytable_value_is_error (yyn))
goto
yyerrlab;
yyn = -yyn;
goto
yyreduce;
}
if
(yyerrstatus)
yyerrstatus--;
YY_SYMBOL_PRINT (
"Shifting"
, yytoken, &yylval, &yylloc);
yychar = YYEMPTY;
yystate = yyn;
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
*++yyvsp = yylval;
YY_IGNORE_MAYBE_UNINITIALIZED_END
goto
yynewstate;
yydefault:
yyn = yydefact[yystate];
if
(yyn == 0)
goto
yyerrlab;
goto
yyreduce;
yyreduce:
yylen = yyr2[yyn];
yyval = yyvsp[1-yylen];
YY_REDUCE_PRINT (yyn);
switch
(yyn)
{
case
7:
#line 90 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_mutable_type(compiler, (yyvsp[0].opval));
}
#line 2729 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
11:
#line 101 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_basic_type(compiler, (yyvsp[0].opval));
}
#line 2737 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
12:
#line 105 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_byte_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2747 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
13:
#line 111 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_short_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2757 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
14:
#line 117 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_int_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2767 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
15:
#line 123 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_long_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2777 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
16:
#line 129 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_float_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2787 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
17:
#line 135 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_double_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2797 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
18:
#line 141 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_any_object_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2806 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
19:
#line 146 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type = SPVM_OP_new_op_string_type(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = op_type;
}
#line 2816 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
20:
#line 154 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_ref_type(compiler, (yyvsp[-1].opval));
}
#line 2824 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
21:
#line 160 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_array_type(compiler, (yyvsp[-2].opval), NULL);
}
#line 2832 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
22:
#line 164 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_array_type(compiler, (yyvsp[-2].opval), NULL);
}
#line 2840 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
23:
#line 170 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_array_type(compiler, (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 2848 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
24:
#line 174 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_array_type(compiler, (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 2856 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
26:
#line 181 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_void_type(compiler, compiler->current_file, compiler->current_line);
}
#line 2864 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
27:
#line 187 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_DO_NOTHING, compiler->current_file, compiler->current_line);
}
#line 2872 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
29:
#line 194 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = (yyvsp[0].opval);
}
#line 2880 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
30:
#line 200 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-2].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-2].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-2].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 2898 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
31:
#line 214 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = (yyvsp[0].opval);
}
#line 2906 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
32:
#line 220 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 2914 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
33:
#line 224 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 2929 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
34:
#line 237 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-1].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-1].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-1].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 2947 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
36:
#line 254 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_class(compiler, (yyvsp[-4].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), NULL, (yyvsp[-2].opval));
}
#line 2955 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
37:
#line 258 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_class(compiler, (yyvsp[-6].opval), (yyvsp[-5].opval), (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[-4].opval));
}
#line 2963 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
38:
#line 262 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_class(compiler, (yyvsp[-4].opval), (yyvsp[-3].opval), NULL, NULL, (yyvsp[-2].opval));
}
#line 2971 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
39:
#line 266 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_class(compiler, (yyvsp[-6].opval), (yyvsp[-5].opval), NULL, (yyvsp[-2].opval), (yyvsp[-4].opval));
}
#line 2979 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
40:
#line 272 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = NULL;
}
#line 2987 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
42:
#line 279 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = NULL;
}
#line 2995 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
43:
#line 283 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_extends(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3003 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
44:
#line 289 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_class_block = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_CLASS_BLOCK, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_class_block, op_class_block->last, (yyvsp[-1].opval));
(yyval.opval) = op_class_block;
}
#line 3013 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
45:
#line 297 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3021 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
46:
#line 301 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, (yyval.opval), (yyval.opval)->last, (yyvsp[0].opval));
}
}
#line 3035 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
47:
#line 313 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-1].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-1].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-1].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3053 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
60:
#line 343 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_init_statement(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3061 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
61:
#line 349 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_version_decl(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3069 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
62:
#line 355 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_version_from(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3077 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
63:
#line 361 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
int32_t is_require = 0;
SPVM_OP* op_name_class_alias = NULL;
(yyval.opval) = SPVM_OP_build_use(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval), op_name_class_alias, is_require);
}
#line 3087 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
64:
#line 367 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
int32_t is_require = 0;
(yyval.opval) = SPVM_OP_build_use(compiler, (yyvsp[-4].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), is_require);
}
#line 3096 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
65:
#line 374 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_use = SPVM_OP_new_op_use(compiler, compiler->current_file, compiler->current_line);
int32_t is_require = 1;
(yyval.opval) = SPVM_OP_build_use(compiler, op_use, (yyvsp[0].opval), NULL, is_require);
}
#line 3106 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
66:
#line 382 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_use = SPVM_OP_new_op_use(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_alias(compiler, op_use, (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 3115 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
67:
#line 389 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_allow(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3123 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
68:
#line 395 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_interface_statement(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3131 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
69:
#line 401 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_enumeration(compiler, (yyvsp[-1].opval), (yyvsp[0].opval), (yyvsp[-2].opval));
}
#line 3139 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
70:
#line 407 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_enum_block = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ENUM_BLOCK, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_enum_block, op_enum_block->last, (yyvsp[-1].opval));
(yyval.opval) = op_enum_block;
}
#line 3149 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
71:
#line 415 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3157 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
72:
#line 419 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 3172 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
73:
#line 432 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-2].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-2].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-2].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3190 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
76:
#line 450 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_enumeration_item(compiler, (yyvsp[0].opval), NULL);
}
#line 3198 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
77:
#line 454 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_enumeration_item(compiler, (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3206 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
78:
#line 460 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_class_var(compiler, (yyvsp[-6].opval), (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-2].opval));
}
#line 3214 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
79:
#line 466 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_field(compiler, (yyvsp[-5].opval), (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3222 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
80:
#line 472 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_method(compiler, (yyvsp[-7].opval), (yyvsp[-6].opval), (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-8].opval), (yyvsp[0].opval));
}
#line 3230 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
81:
#line 476 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_method(compiler, (yyvsp[-7].opval), (yyvsp[-6].opval), (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-8].opval), NULL);
}
#line 3238 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
82:
#line 480 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_method(compiler, (yyvsp[-6].opval), NULL, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-7].opval), (yyvsp[0].opval));
}
#line 3246 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
83:
#line 484 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_method(compiler, (yyvsp[-6].opval), NULL, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-7].opval), NULL);
}
#line 3254 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
84:
#line 490 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_method(compiler, (yyvsp[-6].opval), NULL, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-7].opval), (yyvsp[0].opval));
}
#line 3262 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
85:
#line 494 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_anon_method_fields;
if
((yyvsp[-9].opval)->id == SPVM_OP_C_ID_LIST) {
op_anon_method_fields = (yyvsp[-9].opval);
}
else
{
op_anon_method_fields = SPVM_OP_new_op_list(compiler, (yyvsp[-9].opval)->file, (yyvsp[-9].opval)->line);
SPVM_OP_insert_child(compiler, op_anon_method_fields, op_anon_method_fields->last, (yyvsp[-9].opval));
}
(yyval.opval) = SPVM_OP_build_method(compiler, (yyvsp[-6].opval), NULL, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-7].opval), (yyvsp[0].opval));
SPVM_OP_attach_anon_method_fields(compiler, (yyval.opval), op_anon_method_fields);
}
#line 3281 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
86:
#line 511 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3289 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
87:
#line 515 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 3304 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
88:
#line 528 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-2].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-2].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-2].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3322 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
91:
#line 546 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_arg(compiler, (yyvsp[-3].opval), (yyvsp[-1].opval), NULL, NULL);
}
#line 3330 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
92:
#line 550 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_arg(compiler, (yyvsp[-5].opval), (yyvsp[-3].opval), NULL, (yyvsp[0].opval));
}
#line 3338 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
93:
#line 556 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-2].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-2].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-2].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3356 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
96:
#line 574 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_anon_method_field(compiler, (yyvsp[-5].opval), (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[-1].opval), NULL);
}
#line 3364 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
97:
#line 578 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_anon_method_field(compiler, (yyvsp[-7].opval), (yyvsp[-6].opval), (yyvsp[-4].opval), (yyvsp[-3].opval), (yyvsp[0].opval));
}
#line 3372 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
98:
#line 582 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_FIELD, (yyvsp[-4].opval)->file, (yyvsp[-4].opval)->line);
(yyval.opval) = SPVM_OP_build_anon_method_field(compiler, op_field, NULL, (yyvsp[-2].opval), (yyvsp[-1].opval), (yyvsp[-4].opval));
}
#line 3382 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
99:
#line 588 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_FIELD, (yyvsp[-6].opval)->file, (yyvsp[-6].opval)->line);
(yyval.opval) = SPVM_OP_build_anon_method_field(compiler, op_field, (yyvsp[-6].opval), (yyvsp[-4].opval), (yyvsp[-3].opval), (yyvsp[0].opval));
}
#line 3392 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
100:
#line 596 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3400 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
101:
#line 600 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 3415 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
102:
#line 613 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-1].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-1].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-1].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3433 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
104:
#line 630 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3441 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
105:
#line 634 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 3456 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
106:
#line 647 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-1].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-1].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-1].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3474 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
121:
#line 677 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_return(compiler, (yyvsp[-1].opval), NULL);
}
#line 3482 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
122:
#line 681 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_return(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3490 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
123:
#line 685 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_operator_statement(compiler, (yyvsp[-1].opval));
}
#line 3498 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
125:
#line 690 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_DO_NOTHING, compiler->current_file, compiler->current_line);
}
#line 3506 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
127:
#line 697 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_die(compiler, (yyvsp[-1].opval), (yyvsp[0].opval), NULL);
}
#line 3514 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
128:
#line 701 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_die(compiler, (yyvsp[0].opval), NULL, NULL);
}
#line 3522 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
129:
#line 705 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_die(compiler, (yyvsp[-2].opval), (yyvsp[0].opval), (yyvsp[-1].opval));
}
#line 3530 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
130:
#line 709 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_die(compiler, (yyvsp[-1].opval), NULL, (yyvsp[0].opval));
}
#line 3538 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
131:
#line 713 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_die(compiler, (yyvsp[-3].opval), (yyvsp[0].opval), (yyvsp[-2].opval));
}
#line 3546 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
133:
#line 720 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_print(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3554 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
134:
#line 724 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_print(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3562 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
137:
#line 730 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_make_read_only(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3570 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
138:
#line 736 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_warn(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3578 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
139:
#line 740 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_warn(compiler, (yyvsp[0].opval), NULL);
}
#line 3586 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
140:
#line 746 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_for_statement(compiler, (yyvsp[-8].opval), (yyvsp[-6].opval), (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3594 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
141:
#line 752 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_foreach_statement(compiler, (yyvsp[-6].opval), (yyvsp[-5].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3602 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
142:
#line 756 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_foreach_statement(compiler, (yyvsp[-8].opval), (yyvsp[-7].opval), (yyvsp[-3].opval), (yyvsp[0].opval));
}
#line 3610 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
143:
#line 762 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_while_statement(compiler, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3618 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
144:
#line 768 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_switch_statement(compiler, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3626 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
145:
#line 774 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_block = SPVM_OP_new_op_block(compiler, compiler->current_file, compiler->current_line);
op_block->uv.block->id = SPVM_BLOCK_C_ID_SWITCH;
(yyval.opval) = SPVM_OP_build_switch_block(compiler, op_block, (yyvsp[-1].opval), NULL);
}
#line 3636 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
146:
#line 780 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_block = SPVM_OP_new_op_block(compiler, compiler->current_file, compiler->current_line);
op_block->uv.block->id = SPVM_BLOCK_C_ID_SWITCH;
(yyval.opval) = SPVM_OP_build_switch_block(compiler, op_block, (yyvsp[-2].opval), (yyvsp[-1].opval));
}
#line 3646 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
147:
#line 788 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3654 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
148:
#line 792 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 3669 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
149:
#line 805 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-1].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-1].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-1].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3687 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
150:
#line 819 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = (yyvsp[0].opval);
}
#line 3695 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
151:
#line 825 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_case_statement(compiler, (yyvsp[-3].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3703 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
152:
#line 829 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_case_statement(compiler, (yyvsp[-2].opval), (yyvsp[-1].opval), NULL);
}
#line 3711 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
153:
#line 835 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_default_statement(compiler, (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3719 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
154:
#line 839 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_default_statement(compiler, (yyvsp[-1].opval), NULL);
}
#line 3727 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
155:
#line 845 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_if_require = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_IF_REQUIRE, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_if_require_statement(compiler, op_if_require, (yyvsp[-2].opval), (yyvsp[0].opval), NULL);
}
#line 3737 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
156:
#line 851 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_if_require = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_IF_REQUIRE, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_if_require_statement(compiler, op_if_require, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 3747 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
157:
#line 858 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_if = SPVM_OP_build_if_statement(compiler, (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), (yyvsp[0].opval), 0);
SPVM_OP* op_block = SPVM_OP_new_op_block(compiler, (yyvsp[-5].opval)->file, (yyvsp[-5].opval)->line);
SPVM_OP_insert_child(compiler, op_block, op_block->last, op_if);
(yyval.opval) = op_block;
}
#line 3762 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
158:
#line 869 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_if = SPVM_OP_build_if_statement(compiler, (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), (yyvsp[0].opval), 0);
SPVM_OP* op_block = SPVM_OP_new_op_block(compiler, (yyvsp[-5].opval)->file, (yyvsp[-5].opval)->line);
SPVM_OP_insert_child(compiler, op_block, op_block->last, op_if);
(yyval.opval) = op_block;
}
#line 3777 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
159:
#line 882 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_DO_NOTHING, compiler->current_file, compiler->current_line);
}
#line 3785 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
160:
#line 886 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = (yyvsp[0].opval);
}
#line 3793 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
161:
#line 890 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_if_statement(compiler, (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), (yyvsp[0].opval), 0);
}
#line 3801 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
162:
#line 896 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_block = SPVM_OP_new_op_block(compiler, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_block, op_block->last, (yyvsp[-1].opval));
(yyval.opval) = op_block;
}
#line 3811 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
163:
#line 904 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_eval(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3819 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
164:
#line 910 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_var_decl(compiler, (yyvsp[-4].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), NULL);
}
#line 3827 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
165:
#line 914 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_var_decl(compiler, (yyvsp[-1].opval), (yyvsp[0].opval), NULL, NULL);
}
#line 3835 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
166:
#line 920 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_var(compiler, (yyvsp[0].opval));
}
#line 3843 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
167:
#line 926 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
}
#line 3851 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
168:
#line 930 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[0].opval)->id == SPVM_OP_C_ID_LIST) {
(yyval.opval) = (yyvsp[0].opval);
}
else
{
SPVM_OP* op_list = SPVM_OP_new_op_list(compiler, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
}
#line 3866 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
169:
#line 943 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_DO_NOTHING, compiler->current_file, compiler->current_line);
}
#line 3874 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
180:
#line 959 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_true(compiler, (yyvsp[0].opval));
}
#line 3882 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
181:
#line 963 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_new_op_false(compiler, (yyvsp[0].opval));
}
#line 3890 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
190:
#line 975 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_basic_type_id(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3898 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
198:
#line 988 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
if
((yyvsp[-1].opval)->id == SPVM_OP_C_ID_LIST) {
SPVM_OP* op_operator = (yyvsp[-1].opval)->first;
SPVM_OP* op_sequence = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_SEQUENCE, compiler->current_file, compiler->current_line);
while
((op_operator = SPVM_OP_sibling(compiler, op_operator))) {
SPVM_OP* op_stab = SPVM_OP_cut_op(compiler, op_operator);
SPVM_OP_insert_child(compiler, op_sequence, op_sequence->last, op_operator);
op_operator = op_stab;
}
(yyval.opval) = op_sequence;
}
else
{
(yyval.opval) = (yyvsp[-1].opval);
}
}
#line 3918 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
199:
#line 1004 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_operator = (yyvsp[-5].opval)->first;
SPVM_OP* op_sequence = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_SEQUENCE, compiler->current_file, compiler->current_line);
SPVM_OP_insert_child(compiler, op_sequence, op_sequence->last, (yyvsp[-5].opval));
SPVM_OP_insert_child(compiler, op_sequence, op_sequence->last, (yyvsp[-3].opval));
SPVM_OP_insert_child(compiler, op_sequence, op_sequence->last, (yyvsp[-1].opval));
(yyval.opval) = op_sequence;
}
#line 3933 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
200:
#line 1017 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_list;
if
((yyvsp[-2].opval)->id == SPVM_OP_C_ID_LIST) {
op_list = (yyvsp[-2].opval);
}
else
{
op_list = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[-2].opval));
}
SPVM_OP_insert_child(compiler, op_list, op_list->last, (yyvsp[0].opval));
(yyval.opval) = op_list;
}
#line 3951 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
201:
#line 1031 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = (yyvsp[-1].opval);
}
#line 3959 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
202:
#line 1035 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = (yyvsp[0].opval);
}
#line 3967 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
203:
#line 1041 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_PLUS, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_unary_op(compiler, operator, (yyvsp[0].opval));
}
#line 3976 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
204:
#line 1046 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_negate = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_MINUS, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_unary_op(compiler, op_negate, (yyvsp[0].opval));
}
#line 3985 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
205:
#line 1051 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 3993 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
206:
#line 1055 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4001 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
207:
#line 1059 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4009 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
208:
#line 1063 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4017 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
209:
#line 1067 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4025 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
210:
#line 1071 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op_var(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4033 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
211:
#line 1075 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op_var(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4041 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
212:
#line 1079 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4049 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
213:
#line 1083 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4057 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
214:
#line 1087 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_unary_op(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4065 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
216:
#line 1094 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_length = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_LENGTH, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_array_length(compiler, op_array_length, (yyvsp[0].opval));
}
#line 4074 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
217:
#line 1099 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_length = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_LENGTH, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_array_length(compiler, op_array_length, (yyvsp[-1].opval));
}
#line 4083 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
218:
#line 1104 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_length = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_LENGTH, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_array_length(compiler, op_array_length, (yyvsp[0].opval));
}
#line 4092 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
219:
#line 1109 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_length = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_LENGTH, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_array_length(compiler, op_array_length, (yyvsp[-1].opval));
}
#line 4101 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
220:
#line 1116 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_PRE_INC, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_inc(compiler, operator, (yyvsp[0].opval));
}
#line 4110 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
221:
#line 1121 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_POST_INC, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = SPVM_OP_build_inc(compiler, operator, (yyvsp[-1].opval));
}
#line 4119 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
222:
#line 1128 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_PRE_DEC, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_dec(compiler, operator, (yyvsp[0].opval));
}
#line 4128 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
223:
#line 1133 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_POST_DEC, (yyvsp[0].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = SPVM_OP_build_dec(compiler, operator, (yyvsp[-1].opval));
}
#line 4137 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
230:
#line 1148 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ADD, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_binary_op(compiler, operator, (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4146 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
231:
#line 1153 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_SUBTRACT, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_binary_op(compiler, operator, (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4155 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
232:
#line 1158 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* operator = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_MULTIPLY, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_binary_op(compiler, operator, (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4164 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
233:
#line 1163 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4172 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
234:
#line 1167 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4180 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
235:
#line 1171 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4188 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
236:
#line 1175 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4196 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
237:
#line 1179 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4204 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
238:
#line 1183 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4212 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
239:
#line 1189 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* ternary_op = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_TERNARY_OP, (yyvsp[-4].opval)->file, (yyvsp[-4].opval)->line);
(yyval.opval) = SPVM_OP_build_ternary_op(compiler, ternary_op, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4221 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
240:
#line 1196 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4229 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
241:
#line 1200 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4237 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
242:
#line 1204 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4245 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
243:
#line 1208 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4253 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
244:
#line 1214 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4261 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
245:
#line 1218 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4269 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
246:
#line 1222 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4277 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
247:
#line 1226 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4285 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
248:
#line 1230 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4293 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
249:
#line 1234 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4301 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
250:
#line 1238 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4309 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
251:
#line 1242 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4317 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
252:
#line 1246 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4325 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
253:
#line 1250 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4333 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
254:
#line 1254 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4341 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
255:
#line 1258 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4349 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
256:
#line 1262 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4357 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
257:
#line 1266 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4365 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
258:
#line 1272 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_binary_op(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4373 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
259:
#line 1278 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_logical_or(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4381 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
260:
#line 1282 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_logical_and(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4389 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
261:
#line 1286 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_logical_not(compiler, (yyvsp[-1].opval), (yyvsp[0].opval));
}
#line 4397 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
262:
#line 1292 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_defined_or(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4405 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
263:
#line 1298 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_type_check(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4413 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
264:
#line 1302 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_type_check(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4421 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
265:
#line 1306 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_type_check(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4429 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
266:
#line 1310 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_type_check(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4437 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
267:
#line 1314 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_type_check(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4445 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
268:
#line 1320 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type_cast = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_TYPE_CAST, (yyvsp[-2].opval)->file, (yyvsp[-2].opval)->line);
(yyval.opval) = SPVM_OP_build_type_cast(compiler, op_type_cast, (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4454 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
269:
#line 1325 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_type_cast = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_TYPE_CAST, (yyvsp[-1].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_type_cast(compiler, op_type_cast, (yyvsp[-1].opval), (yyvsp[-4].opval));
}
#line 4463 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
270:
#line 1332 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_can(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4471 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
271:
#line 1336 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_can(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4479 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
272:
#line 1342 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_assign(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4487 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
273:
#line 1346 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_special_assign(compiler, (yyvsp[-1].opval), (yyvsp[-2].opval), (yyvsp[0].opval));
}
#line 4495 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
274:
#line 1352 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_new(compiler, (yyvsp[-1].opval), (yyvsp[0].opval), NULL);
}
#line 4503 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
275:
#line 1356 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_length = (yyvsp[0].opval)->last;
SPVM_OP_cut_op(compiler, (yyvsp[0].opval)->last);
(yyval.opval) = SPVM_OP_build_new(compiler, (yyvsp[-1].opval), (yyvsp[0].opval), op_length);
}
#line 4513 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
276:
#line 1362 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
(yyval.opval) = SPVM_OP_build_anon_method(compiler, (yyvsp[0].opval));
}
#line 4521 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
277:
#line 1368 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_init = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_INIT, compiler->current_file, compiler->current_line);
int32_t is_key_values = 0;
(yyval.opval) = SPVM_OP_build_array_init(compiler, op_array_init, (yyvsp[-1].opval), is_key_values);
}
#line 4531 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
278:
#line 1374 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_init = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_INIT, compiler->current_file, compiler->current_line);
int32_t is_key_values = 1;
(yyval.opval) = SPVM_OP_build_array_init(compiler, op_array_init, (yyvsp[-1].opval), is_key_values);
}
#line 4541 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
279:
#line 1380 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_init = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ARRAY_INIT, compiler->current_file, compiler->current_line);
int32_t is_key_values = 1;
SPVM_OP* op_list_elements = SPVM_OP_new_op_list(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_array_init(compiler, op_array_init, op_list_elements, is_key_values);
}
#line 4552 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
280:
#line 1389 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-4].opval), (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 4561 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
281:
#line 1394 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
SPVM_OP* op_operators = SPVM_OP_new_op_list(compiler, (yyvsp[-1].opval)->file, (yyvsp[0].opval)->line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-1].opval), (yyvsp[0].opval), op_operators);
}
#line 4571 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
282:
#line 1400 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 4580 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
283:
#line 1405 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
SPVM_OP* op_operators = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-2].opval), (yyvsp[0].opval), op_operators);
}
#line 4590 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
284:
#line 1411 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 4599 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
285:
#line 1416 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
SPVM_OP* op_operators = SPVM_OP_new_op_list(compiler, (yyvsp[-2].opval)->file, (yyvsp[-1].opval)->line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-2].opval), (yyvsp[0].opval), op_operators);
}
#line 4609 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
286:
#line 1422 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_call_method = SPVM_OP_new_op_call_method(compiler, compiler->current_file, compiler->current_line);
SPVM_OP* op_method_name = SPVM_OP_new_op_name(compiler,
""
, (yyvsp[-3].opval)->file, (yyvsp[-3].opval)->line);
(yyval.opval) = SPVM_OP_build_call_method(compiler, op_call_method, (yyvsp[-4].opval), op_method_name, (yyvsp[-1].opval));
}
#line 4619 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
287:
#line 1430 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_access = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ELEMENT_ACCESS, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_element_access(compiler, op_array_access, (yyvsp[-4].opval), (yyvsp[-1].opval));
}
#line 4628 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
288:
#line 1435 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_access = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ELEMENT_ACCESS, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_element_access(compiler, op_array_access, (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 4637 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
289:
#line 1440 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_access = SPVM_OP_new_op(compiler, SPVM_OP_C_ID_ELEMENT_ACCESS, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_element_access(compiler, op_array_access, (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 4646 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
290:
#line 1447 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field_access = SPVM_OP_new_op_field_access(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_field_access(compiler, op_field_access, (yyvsp[-4].opval), (yyvsp[-1].opval));
}
#line 4655 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
291:
#line 1452 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field_access = SPVM_OP_new_op_field_access(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_field_access(compiler, op_field_access, (yyvsp[-3].opval), (yyvsp[-1].opval));
}
#line 4664 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
292:
#line 1457 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_array_access = (yyvsp[-3].opval);
SPVM_OP* op_field_access = SPVM_OP_new_op_field_access(compiler, compiler->current_file, compiler->current_line);
(yyval.opval) = SPVM_OP_build_field_access(compiler, op_field_access, op_array_access, (yyvsp[-1].opval));
}
#line 4674 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
293:
#line 1465 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field_access = SPVM_OP_new_op_field_access(compiler, compiler->current_file, compiler->current_line);
SPVM_OP_build_field_access(compiler, op_field_access, (yyvsp[-4].opval), (yyvsp[-1].opval));
(yyval.opval) = SPVM_OP_build_weaken_field(compiler, (yyvsp[-5].opval), op_field_access);
}
#line 4684 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
294:
#line 1473 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field_access = SPVM_OP_new_op_field_access(compiler, compiler->current_file, compiler->current_line);
SPVM_OP_build_field_access(compiler, op_field_access, (yyvsp[-4].opval), (yyvsp[-1].opval));
(yyval.opval) = SPVM_OP_build_unweaken_field(compiler, (yyvsp[-5].opval), op_field_access);
}
#line 4694 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
case
295:
#line 1481 "yacc/spvm_yacc.y" /* yacc.c:1646 */
{
SPVM_OP* op_field_access = SPVM_OP_new_op_field_access(compiler, compiler->current_file, compiler->current_line);
SPVM_OP_build_field_access(compiler, op_field_access, (yyvsp[-4].opval), (yyvsp[-1].opval));
(yyval.opval) = SPVM_OP_build_isweak_field(compiler, (yyvsp[-5].opval), op_field_access);
}
#line 4704 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
break
;
#line 4708 "lib/SPVM/Builder/src/spvm_yacc.c" /* yacc.c:1646 */
default
:
break
;
}
YY_SYMBOL_PRINT (
"-> $$ ="
, yyr1[yyn], &yyval, &yyloc);
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
yyn = yyr1[yyn];
yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
if
(0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
yystate = yytable[yystate];
else
yystate = yydefgoto[yyn - YYNTOKENS];
goto
yynewstate;
yyerrlab:
yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
if
(!yyerrstatus)
{
++yynerrs;
#if ! YYERROR_VERBOSE
yyerror (compiler, YY_(
"syntax error"
));
#else
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
yyssp, yytoken)
{
char
const
*yymsgp = YY_(
"syntax error"
);
int
yysyntax_error_status;
yysyntax_error_status = YYSYNTAX_ERROR;
if
(yysyntax_error_status == 0)
yymsgp = yymsg;
else
if
(yysyntax_error_status == 1)
{
if
(yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
yymsg = (
char
*) YYSTACK_ALLOC (yymsg_alloc);
if
(!yymsg)
{
yymsg = yymsgbuf;
yymsg_alloc =
sizeof
yymsgbuf;
yysyntax_error_status = 2;
}
else
{
yysyntax_error_status = YYSYNTAX_ERROR;
yymsgp = yymsg;
}
}
yyerror (compiler, yymsgp);
if
(yysyntax_error_status == 2)
goto
yyexhaustedlab;
}
# undef YYSYNTAX_ERROR
#endif
}
if
(yyerrstatus == 3)
{
if
(yychar <= YYEOF)
{
if
(yychar == YYEOF)
YYABORT;
}
else
{
yydestruct (
"Error: discarding"
,
yytoken, &yylval, compiler);
yychar = YYEMPTY;
}
}
goto
yyerrlab1;
yyerrorlab:
if
(
0)
goto
yyerrorlab;
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
yystate = *yyssp;
goto
yyerrlab1;
yyerrlab1:
yyerrstatus = 3;
for
(;;)
{
yyn = yypact[yystate];
if
(!yypact_value_is_default (yyn))
{
yyn += YYTERROR;
if
(0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
{
yyn = yytable[yyn];
if
(0 < yyn)
break
;
}
}
if
(yyssp == yyss)
YYABORT;
yydestruct (
"Error: popping"
,
yystos[yystate], yyvsp, compiler);
YYPOPSTACK (1);
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
*++yyvsp = yylval;
YY_IGNORE_MAYBE_UNINITIALIZED_END
YY_SYMBOL_PRINT (
"Shifting"
, yystos[yyn], yyvsp, yylsp);
yystate = yyn;
goto
yynewstate;
yyacceptlab:
yyresult = 0;
goto
yyreturn;
yyabortlab:
yyresult = 1;
goto
yyreturn;
#if !defined yyoverflow || YYERROR_VERBOSE
yyexhaustedlab:
yyerror (compiler, YY_(
"memory exhausted"
));
yyresult = 2;
#endif
yyreturn:
if
(yychar != YYEMPTY)
{
yytoken = YYTRANSLATE (yychar);
yydestruct (
"Cleanup: discarding lookahead"
,
yytoken, &yylval, compiler);
}
YYPOPSTACK (yylen);
YY_STACK_PRINT (yyss, yyssp);
while
(yyssp != yyss)
{
yydestruct (
"Cleanup: popping"
,
yystos[*yyssp], yyvsp, compiler);
YYPOPSTACK (1);
}
#ifndef yyoverflow
if
(yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
#if YYERROR_VERBOSE
if
(yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
#endif
return
yyresult;
}
#line 1487 "yacc/spvm_yacc.y" /* yacc.c:1906 */