/* -*- mode: C; buffer-read-only: t -*- !!!!!!! DO NOT EDIT THIS FILE !!!!!!! This file is built by regen_perly.pl from perly.y. Any changes made here will be lost! */ #define YYFINAL 16 /* YYLAST -- Last index in YYTABLE. */ #define YYLAST 3664 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 131 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 113 /* YYNRULES -- Number of rules. */ #define YYNRULES 337 /* YYNSTATES -- Number of states. */ #define YYNSTATES 669 #define YYUNDEFTOK 2 #define YYMAXUTOK 385 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. */ #define YYTRANSLATE(YYX) \ ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM as returned by yylex. */ 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, 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, 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, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { 0, 161, 161, 160, 172, 171, 182, 181, 195, 194, 208, 207, 221, 220, 231, 230, 244, 246, 251, 259, 263, 270, 275, 282, 288, 292, 294, 291, 301, 302, 312, 313, 322, 326, 330, 337, 347, 349, 362, 359, 383, 378, 406, 405, 431, 442, 454, 453, 464, 470, 476, 481, 483, 485, 492, 500, 502, 499, 519, 524, 533, 540, 539, 554, 562, 569, 568, 583, 590, 589, 605, 604, 624, 628, 632, 636, 642, 650, 668, 669, 673, 677, 679, 681, 683, 685, 687, 689, 692, 698, 699, 704, 715, 716, 721, 723, 728, 735, 736, 740, 744, 748, 753, 757, 761, 762, 765, 771, 776, 781, 787, 788, 793, 794, 799, 800, 807, 812, 814, 825, 827, 832, 834, 838, 858, 859, 861, 874, 934, 936, 942, 944, 948, 954, 955, 960, 961, 965, 969, 969, 1036, 1037, 1042, 1054, 1055, 1059, 1070, 1072, 1074, 1076, 1078, 1082, 1084, 1089, 1093, 1097, 1101, 1107, 1112, 1118, 1124, 1126, 1128, 1131, 1130, 1141, 1142, 1146, 1150, 1153, 1158, 1163, 1166, 1170, 1174, 1180, 1188, 1195, 1201, 1203, 1205, 1210, 1212, 1214, 1216, 1218, 1220, 1225, 1227, 1229, 1231, 1233, 1235, 1237, 1239, 1241, 1243, 1245, 1247, 1249, 1251, 1253, 1255, 1259, 1261, 1263, 1265, 1267, 1271, 1273, 1277, 1279, 1281, 1283, 1287, 1289, 1294, 1296, 1299, 1301, 1303, 1306, 1309, 1320, 1323, 1331, 1333, 1335, 1338, 1341, 1349, 1351, 1355, 1356, 1357, 1358, 1359, 1361, 1363, 1365, 1367, 1369, 1371, 1373, 1375, 1377, 1379, 1381, 1383, 1385, 1395, 1405, 1415, 1425, 1427, 1429, 1432, 1437, 1441, 1443, 1445, 1447, 1450, 1452, 1455, 1457, 1459, 1461, 1463, 1465, 1467, 1469, 1471, 1474, 1476, 1478, 1480, 1482, 1484, 1488, 1491, 1490, 1503, 1504, 1505, 1510, 1512, 1514, 1516, 1521, 1523, 1526, 1528, 1530, 1535, 1540, 1545, 1553, 1555, 1557, 1561, 1569, 1568, 1586, 1587, 1591, 1592, 1596, 1597, 1602, 1607, 1609, 1613, 1616, 1620, 1621, 1622, 1625, 1626, 1629, 1630, 1633, 1637, 1641, 1647, 1653, 1655, 1659, 1663, 1664, 1668, 1669, 1673, 1674, 1679, 1681, 1683, 1686 }; #endif #if YYDEBUG || YYERROR_VERBOSE || 0 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = { "$end", "error", "$undefined", "GRAMPROG", "GRAMEXPR", "GRAMBLOCK", "GRAMBARESTMT", "GRAMFULLSTMT", "GRAMSTMTSEQ", "GRAMSUBSIGNATURE", "PERLY_AMPERSAND", "PERLY_BRACE_OPEN", "PERLY_BRACE_CLOSE", "PERLY_BRACKET_OPEN", "PERLY_BRACKET_CLOSE", "PERLY_COMMA", "PERLY_DOLLAR", "PERLY_DOT", "PERLY_EQUAL_SIGN", "PERLY_MINUS", "PERLY_PERCENT_SIGN", "PERLY_PLUS", "PERLY_SEMICOLON", "PERLY_SLASH", "PERLY_SNAIL", "PERLY_STAR", "KW_FORMAT", "KW_PACKAGE", "KW_CLASS", "KW_LOCAL", "KW_MY", "KW_FIELD", "KW_IF", "KW_ELSE", "KW_ELSIF", "KW_UNLESS", "KW_FOR", "KW_UNTIL", "KW_WHILE", "KW_CONTINUE", "KW_GIVEN", "KW_WHEN", "KW_DEFAULT", "KW_TRY", "KW_CATCH", "KW_FINALLY", "KW_DEFER", "KW_REQUIRE", "KW_DO", "KW_USE_or_NO", "KW_SUB_named", "KW_SUB_named_sig", "KW_SUB_anon", "KW_SUB_anon_sig", "KW_METHOD_named", "KW_METHOD_anon", "BAREWORD", "METHCALL0", "METHCALL", "THING", "PMFUNC", "PRIVATEREF", "QWLIST", "FUNC0OP", "FUNC0SUB", "UNIOPSUB", "LSTOPSUB", "PLUGEXPR", "PLUGSTMT", "LABEL", "LOOPEX", "DOTDOT", "YADAYADA", "FUNC0", "FUNC1", "FUNC", "UNIOP", "LSTOP", "POWOP", "MULOP", "ADDOP", "DOLSHARP", "HASHBRACK", "NOAMP", "COLONATTR", "FORMLBRACK", "FORMRBRACK", "SUBLEXSTART", "SUBLEXEND", "PHASER", "PREC_LOW", "PLUGIN_LOW_OP", "OROP", "PLUGIN_LOGICAL_OR_LOW_OP", "ANDOP", "PLUGIN_LOGICAL_AND_LOW_OP", "NOTOP", "ASSIGNOP", "PLUGIN_ASSIGN_OP", "PERLY_QUESTION_MARK", "PERLY_COLON", "OROR", "DORDOR", "PLUGIN_LOGICAL_OR_OP", "ANDAND", "PLUGIN_LOGICAL_AND_OP", "BITOROP", "BITANDOP", "CHEQOP", "NCEQOP", "CHRELOP", "NCRELOP", "PLUGIN_REL_OP", "SHIFTOP", "PLUGIN_ADD_OP", "PLUGIN_MUL_OP", "MATCHOP", "PERLY_EXCLAMATION_MARK", "PERLY_TILDE", "UMINUS", "REFGEN", "PLUGIN_POW_OP", "PREINC", "PREDEC", "POSTINC", "POSTDEC", "POSTJOIN", "PLUGIN_HIGH_OP", "ARROW", "PERLY_PAREN_CLOSE", "PERLY_PAREN_OPEN", "$accept", "grammar", "@1", "@2", "@3", "@4", "@5", "@6", "@7", "sigsub_or_method_named", "block", "empty", "formblock", "remember", "mblock", "mremember", "catch_paren", "$@8", "$@9", "stmtseq", "formstmtseq", "fullstmt", "labfullstmt", "barestmt", "$@10", "$@11", "$@12", "$@13", "$@14", "$@15", "@16", "$@17", "$@18", "$@19", "formline", "formarg", "condition", "sideff", "else", "cont", "finally", "mintro", "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "formname", "startsub", "startanonsub", "startanonmethod", "startformsub", "subname", "proto", "subattrlist", "myattrlist", "sigvarname", "sigslurpsigil", "sigslurpelem", "sigdefault", "sigscalarelem", "sigelem", "siglist", "optsiglist", "optsubsignature", "subsignature", "subsigguts", "$@20", "optsubbody", "subbody", "optsigsubbody", "sigsubbody", "expr", "listexpr", "listop", "@21", "methodname", "subscripted", "termbinop", "termrelop", "relopchain", "termeqop", "eqopchain", "termunop", "anonymous", "termdo", "term", "@22", "myattrterm", "myterm", "fieldvar", "optfieldattrlist", "fielddecl", "$@23", "optlistexpr", "optexpr", "optrepl", "my_scalar", "list_of_scalars", "my_list_of_scalars", "my_var", "refgen_topic", "my_refgen", "amper", "scalar", "ary", "hsh", "arylen", "star", "sliceme", "kvslice", "gelem", "indirob", YY_NULLPTR }; #endif # ifdef YYPRINT /* YYTOKNUM[NUM] -- (External) token number corresponding to the (internal) symbol number NUM (which must be that of a token). */ 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, 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, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385 }; # endif #define YYPACT_NINF -551 #define yypact_value_is_default(Yystate) \ (!!((Yystate) == (-551))) #define YYTABLE_NINF -336 #define yytable_value_is_error(Yytable_value) \ (!!((Yytable_value) == (-336))) /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ static const yytype_int16 yypact[] = { 926, -551, -551, -551, -551, -551, -551, -551, 34, -551, 2909, 41, 1877, 1762, -551, -551, -551, -551, 46, 2909, 46, 2909, 46, 2909, 46, 46, 2909, 12, 2909, 2198, -551, -551, -551, -551, 46, 46, -551, -551, 42, -66, -551, 2909, -551, -551, 2909, -41, -38, -64, 2198, 2119, 46, 2909, -23, 2909, 2909, 2909, 2909, 2909, 2909, 2277, -551, 680, 101, -551, 4, -551, -42, 10, 63, 22, -551, -551, -551, 3152, -551, -551, 18, 185, 200, 212, -551, 151, 219, 229, 192, -551, -551, -551, -551, -551, 160, 177, 129, 82, 111, 13, 127, 134, 175, 180, 41, 300, 300, -551, -23, -551, -551, -551, 292, -551, -23, 276, -551, 303, 432, 313, 1762, -551, -551, -551, -551, 660, -551, 384, 832, -551, -551, -551, -551, -551, 323, -551, 329, -551, 329, -551, -551, 317, 2988, 2356, 255, -551, -551, -551, 317, -551, 317, 281, 261, 261, 2909, 216, 266, 2909, 230, 317, 41, 3152, 232, 2435, 2909, 2119, -551, 317, 3067, -551, 101, -551, 2514, 2909, -551, 326, -551, -551, 2909, 101, 329, 329, 329, 642, 642, 350, 262, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2593, -551, -551, 2909, -551, -551, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, -551, -551, -551, 2909, 84, 2672, 2909, 2909, 2909, 2909, 2909, 2909, 2909, -551, 318, 324, 325, 289, -551, -551, -551, -551, -551, 259, 741, -551, -551, 258, -551, -551, -551, -551, -551, -551, 341, -551, -551, -551, -551, -551, -551, 41, -551, -551, -551, 2909, 2909, 2909, 2909, 2909, 2909, -551, -551, -551, -551, 332, -551, -551, -551, 332, -551, -551, -551, 372, -551, -551, 2751, 329, 255, 40, 250, 278, -551, 273, 340, -551, -551, -551, 261, 342, -551, -551, -551, -551, 2909, 2909, 96, -551, -551, -551, -551, 390, 315, 282, 2909, 101, 398, -551, 2909, 399, 161, 161, -551, -551, 3254, 66, 100, -551, 411, 3517, 3497, 3356, 329, 492, 3220, 3203, 3254, 3254, 3101, 3395, 3395, 3395, 3418, 3418, 3457, 3478, 3497, 3497, 3517, 3517, 3536, 459, 3220, 492, 329, 329, 146, 392, 2909, 2909, 322, 393, 400, 401, -551, 410, 2830, 294, -551, -551, 417, 89, 115, 236, 142, 249, 159, 257, 947, -551, -551, 418, 54, 261, 380, -551, 343, 2909, 2909, -551, 6, -551, -551, 316, -551, -551, -551, -551, 1961, 129, -551, 2909, 2909, 2909, 2909, -551, -551, 403, -551, 426, -551, -551, -551, 680, -551, -551, -551, 680, -551, -551, -551, 352, 352, 384, -12, 449, -551, -551, -551, -551, -551, 330, -551, -551, 334, 103, -551, 2909, -551, -551, -551, 500, -551, 173, 2909, 453, -551, -551, 2909, -551, 277, 214, -551, -551, -551, -551, -551, -551, 652, 2909, -551, 454, -551, 460, -551, 462, -551, 463, -551, -551, -551, -551, -551, 156, -551, -551, 347, 680, 349, 455, 358, -551, -551, -551, -551, -551, 351, 457, 183, -551, 2909, 361, 363, 680, 365, 366, 1072, 367, 442, 281, -551, 490, -551, -551, 261, 2909, -551, -551, -551, -551, 37, -551, -551, -551, 491, -551, -551, 2909, -551, 419, -551, -551, -551, 224, -551, 3305, 502, -551, -551, 386, -551, -551, -551, -551, 494, -551, -551, -551, 2909, 300, 300, 503, 391, -551, 2909, 2909, 300, -551, 415, 404, -551, -551, 300, 300, -551, -551, -551, -551, 2909, 261, -551, 506, 3152, 423, -551, 680, -551, -551, -551, -551, 436, -551, -551, 3152, 247, 247, 455, 424, 428, 429, 276, 2909, 2909, 300, 300, 300, -551, -551, 455, 300, 507, 426, 1187, -551, -551, -551, -551, 1302, -551, 1417, -551, 300, 431, -551, -551, -551, -551, 2909, 300, 300, -551, 525, 430, 276, 276, 276, -551, 519, -551, -551, -551, -551, -551, 20, -551, 1532, -551, 2909, 439, 276, 276, -551, 300, -551, -551, -551, 440, 41, -551, 548, 486, -551, -551, 447, 300, -551, -551, -551, 276, -551, -551, -551, -551, -551, -551, 300, 276, 2040, -551, 1647, 247, -551, 448, -551, -551, 300, -551 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. Performed when YYTABLE does not specify something else to do. Zero means the default is an error. */ static const yytype_uint16 yydefact[] = { 0, 2, 4, 6, 8, 10, 12, 14, 0, 21, 19, 0, 0, 0, 19, 138, 1, 19, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 269, 0, 107, 107, 108, 282, 0, 0, 253, 280, 241, 275, 277, 271, 107, 284, 263, 273, 0, 0, 266, 19, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 305, 306, 150, 283, 248, 232, 191, 203, 192, 210, 233, 234, 235, 153, 238, 5, 254, 243, 246, 245, 247, 244, 0, 0, 0, 21, 7, 81, 76, 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 0, 16, 17, 36, 0, 106, 0, 19, 9, 0, 82, 0, 0, 11, 33, 32, 28, 0, 15, 19, 0, 334, 337, 336, 335, 321, 0, 322, 216, 324, 217, 323, 327, 239, 0, 0, 286, 291, 293, 292, 270, 231, 230, 19, 19, 19, 19, 0, 0, 0, 0, 272, 0, 264, 0, 0, 19, 19, 267, 268, 282, 303, 304, 160, 243, 0, 325, 0, 110, 111, 19, 265, 218, 219, 237, 223, 224, 242, 0, 0, 0, 0, 0, 151, 0, 0, 0, 206, 205, 0, 213, 212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 0, 0, 19, 294, 296, 295, 21, 21, 21, 0, 21, 21, 0, 21, 21, 21, 21, 52, 23, 0, 74, 46, 106, 75, 42, 106, 0, 92, 67, 73, 0, 0, 0, 0, 0, 0, 72, 35, 34, 29, 119, 122, 121, 133, 119, 129, 128, 132, 134, 139, 225, 0, 288, 0, 243, 246, 245, 290, 0, 118, 285, 113, 112, 19, 116, 114, 21, 21, 158, 19, 0, 0, 276, 163, 274, 278, 0, 0, 0, 0, 154, 0, 257, 0, 240, 148, 149, 146, 147, 152, 0, 0, 177, 0, 209, 215, 195, 184, 186, 188, 202, 182, 183, 0, 198, 200, 199, 196, 197, 194, 193, 214, 211, 208, 204, 207, 190, 189, 187, 201, 185, 181, 0, 0, 0, 0, 331, 329, 333, 165, 0, 0, 157, 166, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 105, 0, 0, 19, 298, 299, 300, 0, 0, 319, 0, 320, 317, 0, 318, 314, 315, 316, 0, 0, 21, 0, 99, 0, 0, 19, 21, 0, 38, 21, 40, 93, 83, 80, 84, 87, 86, 101, 85, 88, 120, 19, 19, 130, 242, 0, 287, 289, 117, 21, 115, 19, 228, 229, 0, 19, 179, 19, 279, 162, 161, 0, 226, 0, 0, 0, 170, 176, 0, 261, 0, 0, 258, 260, 259, 262, 326, 174, 0, 19, 256, 0, 168, 0, 249, 0, 250, 0, 18, 21, 37, 21, 44, 0, 297, 301, 0, 102, 0, 0, 0, 309, 21, 97, 98, 103, 0, 0, 82, 61, 0, 0, 0, 100, 0, 0, 0, 19, 0, 19, 141, 0, 43, 140, 19, 125, 124, 127, 123, 131, 240, 227, 138, 135, 0, 136, 159, 0, 307, 0, 164, 155, 180, 0, 173, 236, 0, 169, 175, 0, 171, 251, 252, 167, 0, 68, 21, 45, 0, 0, 0, 313, 0, 312, 0, 0, 0, 55, 0, 0, 96, 96, 0, 0, 22, 25, 24, 65, 19, 19, 19, 21, 126, 0, 19, 308, 281, 178, 172, 156, 0, 19, 70, 302, 19, 19, 310, 0, 0, 0, 19, 99, 0, 0, 0, 0, 50, 51, 0, 0, 0, 21, 0, 144, 41, 143, 137, 0, 19, 0, 19, 0, 0, 89, 48, 49, 311, 0, 0, 0, 64, 0, 0, 19, 19, 19, 26, 94, 47, 39, 142, 145, 30, 0, 69, 0, 90, 0, 0, 19, 19, 56, 0, 60, 54, 53, 0, 0, 66, 0, 19, 31, 71, 0, 0, 58, 63, 96, 19, 27, 95, 20, 19, 78, 77, 0, 19, 0, 62, 0, 19, 59, 0, 79, 91, 0, 57 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, -4, -10, -551, 50, -55, -551, -551, -551, -551, -13, -551, 568, 466, 28, -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, 52, -390, -550, -533, -551, -534, -551, 14, 193, -220, -61, -551, -96, 137, -551, -551, -17, 102, -146, 311, 328, -551, -551, 186, -551, 179, -551, -551, -551, -551, 97, -551, 30, 184, -551, -293, 16, -47, -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, -551, 610, -551, -551, 489, -551, -551, -551, -551, -126, -14, -551, -551, -551, -551, 223, -551, -551, 382, 36, -19, -15, -551, -551, -551, -551, -551, 56 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { -1, 8, 9, 10, 11, 12, 13, 14, 15, 110, 111, 120, 472, 433, 256, 407, 559, 590, 638, 121, 625, 276, 118, 119, 501, 506, 411, 409, 583, 649, 550, 591, 573, 602, 643, 656, 414, 113, 606, 265, 640, 586, 487, 494, 418, 478, 489, 383, 258, 147, 149, 236, 174, 300, 303, 297, 423, 281, 282, 509, 283, 284, 285, 286, 516, 517, 122, 123, 504, 505, 596, 434, 114, 62, 63, 439, 369, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 152, 74, 140, 239, 388, 115, 540, 167, 75, 521, 482, 543, 544, 394, 395, 248, 76, 77, 78, 79, 80, 81, 82, 83, 84, 131 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule whose number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { 60, 320, 166, 304, 124, 130, 175, 86, 142, 60, 486, 435, 143, 261, 127, 188, 127, 189, 127, 587, 127, 127, 20, 160, 305, 145, 61, 607, 20, 20, 127, 127, 22, 172, 16, 61, 24, 171, 173, 165, 112, 60, 641, 245, 162, 127, 127, 257, 319, 612, 446, 228, 85, 229, 128, 153, 128, 85, 128, 17, 128, 128, 20, 141, 154, 473, 161, 61, 191, 192, 128, 128, -290, 241, 129, 182, 474, 242, 133, 642, 135, 136, 635, 636, 637, 168, 128, 259, 447, 158, 150, 151, 159, 262, 359, 360, 254, 361, 647, 648, 362, 264, 125, 166, 363, 169, 170, 126, 364, 365, 438, 463, 666, 280, 448, 659, 187, 660, 187, 292, 193, -289, 317, 293, -291, 663, 519, 166, 240, 464, 196, 249, 138, 246, 190, 235, 481, 299, 302, 302, 165, 366, 139, 247, 275, 20, 314, 315, 227, 22, 60, 60, 310, 24, 431, 295, 466, 127, 183, 184, 185, 186, -332, 410, 165, 367, 412, 538, 148, 308, 480, 194, 195, 468, 291, 313, 61, 61, 539, 156, 488, 183, 184, 185, 186, 496, 497, 524, 183, 184, 185, 186, 183, 184, 185, 186, 228, 168, 229, 322, 323, 324, 325, 234, 327, 328, 330, 183, 184, 185, 186, -328, 243, -328, 368, 267, 237, 316, 268, 269, 270, 271, 380, -330, 272, -330, 382, 398, 529, 387, 230, 399, 231, 238, 183, 184, 185, 186, 569, 475, 232, 244, 233, 372, 373, 374, 375, 376, 377, 378, 379, 183, 184, 185, 186, 185, 186, 250, 465, 413, 437, -328, 370, -328, 251, 183, 184, 185, 186, 486, 597, 467, 551, -336, 226, 183, 184, 185, 186, 469, 603, 604, 397, 415, 415, 415, 419, 415, 415, -330, 302, -330, 436, 389, 390, 392, 60, 400, 401, 528, 403, 404, 405, 406, 427, 252, 183, 184, 185, 186, 253, 255, -102, 522, 260, 263, 183, 184, 185, 186, 416, 417, 61, 420, 421, 266, 580, 581, 183, 184, 185, 186, 443, 85, -293, 273, 445, 287, 20, 296, 298, 183, 184, 185, 186, 301, 306, 454, 318, 183, 184, 185, 186, 307, 183, 184, 185, 186, 127, 309, 563, 311, -292, 320, 614, 183, 184, 185, 186, 183, 184, 185, 186, 386, 381, 302, 452, 453, 125, 391, 384, 385, 398, 126, 460, 408, 399, 425, 402, 630, 485, 321, 166, 422, 498, 198, 199, 200, 128, 430, 277, 432, 429, 441, 278, 479, 479, 198, 279, 645, 444, 442, 446, 508, 508, 593, 490, 451, 455, 419, 495, 479, 479, 515, 461, 456, 457, 520, 483, 165, 217, 218, 219, 220, 592, 458, 471, 397, 221, 476, 477, 222, 223, 224, 225, 226, 484, 531, 502, 507, 221, 60, 492, 222, 223, 224, 225, 226, 499, 500, 514, 503, 525, 518, 267, 526, 532, 268, 269, 270, 271, 20, 533, 272, 534, 535, 541, 61, 542, 549, 548, 503, 183, 184, 185, 186, 576, 577, 546, 558, 552, 299, 553, 582, 554, 555, 302, 557, 560, 588, 589, 562, 566, 183, 184, 185, 186, 568, 479, 183, 184, 185, 186, 166, 570, 571, 572, 545, 578, 440, 579, 536, 600, 537, 183, 184, 185, 186, 595, 620, 615, 616, 617, 585, 547, 567, 619, 198, 199, 200, 449, 183, 184, 185, 186, 584, 462, 633, 628, 594, 165, 302, 598, 599, 609, 631, 632, 610, 611, 634, 601, 629, 479, 479, 639, 653, 605, 605, 646, 651, 198, 654, 264, 218, 219, 220, 657, 667, 512, 650, 221, 117, 274, 222, 223, 224, 225, 226, 574, 627, 624, 658, 183, 184, 185, 186, 493, 613, 664, 495, 479, 428, 662, 561, 511, 264, 264, 264, 220, 424, 510, 565, 668, 221, 608, 513, 222, 223, 224, 225, 226, 264, 264, 621, 491, 479, 618, 290, 396, 523, 0, 132, 655, 134, 0, 652, 137, 0, 144, 146, 264, 661, 0, 503, 0, 479, 0, 0, 264, 485, 0, 155, 605, 0, 157, 0, 0, 0, 163, 0, -13, 87, 0, 0, 176, 177, 178, 179, 180, 0, 18, 85, 0, 19, 0, 0, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 183, 184, 185, 186, 289, 109, 0, 18, 0, 0, 0, 0, 53, 20, 0, 0, 0, 22, 0, 0, 0, 24, -336, -336, -336, 225, 226, 393, 183, 184, 185, 186, 0, 54, 55, 0, 56, 530, 57, 58, 0, 0, 0, 0, 0, 0, 59, 0, 0, 0, 0, 0, 0, 326, 0, 0, 0, 0, 0, 331, 0, 0, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, -3, 87, 0, 358, 0, 0, 0, 0, 0, 0, 18, 85, 0, 19, 0, 0, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 1, 2, 3, 4, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 470, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 527, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 87, 0, 0, 0, 59, 0, 0, 0, 0, 18, 85, 556, 19, 0, 0, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 564, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 575, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 622, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 623, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 626, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 644, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 0, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 665, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 0, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 116, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 54, 55, 0, 56, 0, 57, 58, 0, 18, 85, 0, 19, 0, 59, 20, 0, 0, 21, 22, 23, 88, 0, 24, 25, 89, 90, 91, 26, 27, 92, 93, 0, 0, 94, 95, 96, 97, 0, 98, 99, 100, 101, 0, 0, 102, 28, 29, 103, 104, 105, 30, 31, 106, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 107, 0, 44, 0, 108, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 87, 0, 0, 0, 109, 0, 0, 0, 0, 18, 0, 53, 19, 0, 0, 20, 0, 0, 21, 22, 23, -19, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 0, 0, 0, 0, 59, 28, 29, 0, 0, 0, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 87, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 0, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 85, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, -19, 59, 30, 31, 0, 32, 164, 34, 35, 36, 37, 126, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 85, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 0, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 0, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 181, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 294, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, -335, 228, 0, 229, 0, 0, -335, 53, 0, -335, -335, -335, 0, 0, -335, -335, 0, 0, 0, -335, -335, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, -335, -335, 0, 312, 59, -335, -335, 0, -335, -335, -335, -335, -335, -335, 0, -335, -335, -335, -335, -335, -335, 0, 0, -335, 0, 0, -335, -335, -335, -335, -335, 0, 0, 0, -335, -335, -335, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, -335, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, -335, -335, 0, -335, 0, -335, -335, 0, 0, 28, 29, 0, 0, -335, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 329, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 371, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 426, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 459, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 18, 0, 0, 19, 0, 0, 20, 53, 0, 21, 22, 23, 0, 0, 24, 25, 0, 0, 0, 26, 27, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, 28, 29, 0, 0, 59, 30, 31, 0, 32, 33, 34, 35, 36, 37, 0, 38, 39, 40, 41, 42, 43, 0, 0, 44, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, -334, 0, 0, -334, 0, 0, -334, 53, 0, -334, -334, -334, 0, 0, -334, -334, 0, 0, 0, -334, -334, 0, 0, 0, 0, 0, 0, 0, 54, 55, 0, 56, 0, 57, 58, 0, 0, -334, -334, 0, 0, 288, -334, -334, 0, -334, -334, -334, -334, -334, -334, 0, -334, -334, -334, -334, -334, -334, 0, 0, -334, 0, 0, -334, -334, -334, -334, -334, 0, 0, 0, -334, -334, -334, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -334, 0, 0, 0, 0, 0, 0, 0, 0, 197, 0, 0, 0, 0, 0, 0, 198, 199, 200, 0, 0, -334, -334, 0, -334, 0, -334, -334, 0, 201, 0, 0, 0, 0, -334, 202, 203, 204, 450, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, 197, 0, 222, 223, 224, 225, 226, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 201, 0, 0, 0, 0, 0, 202, 203, 204, 0, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, 197, 0, 222, 223, 224, 225, 226, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -336, 0, 0, 0, 198, 199, 202, 203, 204, 0, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, 197, 0, 222, 223, 224, 225, 226, 198, 199, 200, 219, 220, 0, 0, 0, 0, 221, 0, 0, 222, 223, 224, 225, 226, 0, 0, 202, 203, 204, 0, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, 197, 0, 222, 223, 224, 225, 226, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 204, 0, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, -336, 0, 222, 223, 224, 225, 226, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 198, 199, 200, 0, 221, 0, 0, 222, 223, 224, 225, 226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 198, 199, 200, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, 0, 0, 222, 223, 224, 225, 226, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 198, 199, 200, 0, 221, 0, 0, 222, 223, 224, 225, 226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 198, 199, 200, 0, 0, 0, 0, 0, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 0, 198, 199, 200, 221, 0, 0, 222, 223, 224, 225, 226, 212, 213, 214, 215, 216, 217, 218, 219, 220, 198, 199, 200, 0, 221, 0, 0, 222, 223, 224, 225, 226, 214, 215, 216, 217, 218, 219, 220, 198, 199, 200, 0, 221, 0, 0, 222, 223, 224, 225, 226, 0, 0, 0, 216, 217, 218, 219, 220, 0, 0, 0, 0, 221, 0, 0, 222, 223, 224, 225, 226, 0, 0, -336, 217, 218, 219, 220, 0, 0, 0, 0, 221, 0, 0, 222, 223, 224, 225, 226 }; static const yytype_int16 yycheck[] = { 10, 13, 49, 149, 17, 19, 53, 11, 27, 19, 400, 304, 27, 109, 18, 11, 20, 13, 22, 553, 24, 25, 16, 87, 150, 29, 10, 577, 16, 16, 34, 35, 20, 56, 0, 19, 24, 51, 61, 49, 12, 51, 22, 30, 48, 49, 50, 102, 174, 582, 13, 11, 11, 13, 18, 13, 20, 11, 22, 9, 24, 25, 16, 27, 130, 11, 130, 51, 110, 111, 34, 35, 84, 92, 18, 59, 22, 92, 22, 59, 24, 25, 615, 616, 617, 49, 50, 104, 22, 130, 34, 35, 130, 110, 10, 11, 100, 13, 631, 632, 16, 111, 56, 150, 20, 49, 50, 61, 24, 25, 14, 22, 662, 123, 14, 649, 15, 650, 15, 138, 110, 84, 169, 138, 84, 658, 23, 174, 92, 14, 108, 95, 120, 120, 130, 85, 130, 147, 148, 149, 150, 57, 130, 130, 116, 16, 160, 161, 130, 20, 160, 161, 156, 24, 300, 139, 14, 161, 92, 93, 94, 95, 11, 259, 174, 81, 262, 11, 31, 153, 390, 108, 109, 14, 138, 159, 160, 161, 22, 42, 400, 92, 93, 94, 95, 405, 406, 14, 92, 93, 94, 95, 92, 93, 94, 95, 11, 161, 13, 183, 184, 185, 186, 11, 188, 189, 190, 92, 93, 94, 95, 11, 130, 13, 130, 32, 56, 161, 35, 36, 37, 38, 235, 11, 41, 13, 236, 246, 14, 239, 11, 246, 13, 56, 92, 93, 94, 95, 14, 385, 11, 130, 13, 227, 228, 229, 230, 231, 232, 233, 234, 92, 93, 94, 95, 94, 95, 130, 22, 263, 307, 11, 226, 13, 130, 92, 93, 94, 95, 659, 563, 22, 492, 127, 128, 92, 93, 94, 95, 22, 33, 34, 246, 267, 268, 269, 270, 271, 272, 11, 300, 13, 306, 243, 244, 245, 306, 247, 248, 22, 250, 251, 252, 253, 288, 130, 92, 93, 94, 95, 130, 11, 129, 439, 22, 39, 92, 93, 94, 95, 268, 269, 306, 271, 272, 22, 546, 547, 92, 93, 94, 95, 316, 11, 84, 22, 320, 14, 16, 84, 59, 92, 93, 94, 95, 84, 130, 25, 22, 92, 93, 94, 95, 87, 92, 93, 94, 95, 362, 129, 506, 129, 84, 13, 584, 92, 93, 94, 95, 92, 93, 94, 95, 84, 56, 385, 360, 361, 56, 120, 56, 56, 401, 61, 368, 44, 401, 15, 130, 609, 400, 129, 439, 61, 407, 78, 79, 80, 362, 59, 16, 59, 129, 88, 20, 389, 390, 78, 24, 629, 12, 129, 13, 423, 424, 561, 400, 25, 25, 403, 404, 405, 406, 433, 130, 25, 25, 437, 392, 439, 113, 114, 115, 116, 560, 25, 18, 401, 121, 59, 97, 124, 125, 126, 127, 128, 130, 461, 22, 97, 121, 461, 402, 124, 125, 126, 127, 128, 408, 56, 130, 411, 446, 129, 32, 12, 12, 35, 36, 37, 38, 16, 12, 41, 12, 12, 129, 461, 129, 22, 129, 431, 92, 93, 94, 95, 541, 542, 130, 499, 129, 501, 129, 548, 129, 129, 506, 130, 56, 554, 555, 11, 11, 92, 93, 94, 95, 88, 492, 92, 93, 94, 95, 560, 12, 129, 22, 481, 15, 129, 129, 471, 86, 473, 92, 93, 94, 95, 22, 22, 585, 586, 587, 129, 484, 519, 591, 78, 79, 80, 129, 92, 93, 94, 95, 130, 129, 22, 603, 562, 560, 561, 129, 566, 130, 610, 611, 129, 129, 129, 573, 130, 546, 547, 45, 17, 576, 577, 129, 129, 78, 85, 582, 114, 115, 116, 129, 129, 129, 634, 121, 13, 116, 124, 125, 126, 127, 128, 538, 602, 600, 646, 92, 93, 94, 95, 403, 583, 659, 583, 584, 290, 657, 501, 425, 615, 616, 617, 116, 281, 424, 514, 667, 121, 578, 431, 124, 125, 126, 127, 128, 631, 632, 593, 401, 609, 590, 138, 246, 129, -1, 21, 642, 23, -1, 639, 26, -1, 28, 29, 650, 654, -1, 593, -1, 629, -1, -1, 658, 659, -1, 41, 662, -1, 44, -1, -1, -1, 48, -1, 0, 1, -1, -1, 54, 55, 56, 57, 58, -1, 10, 11, -1, 13, -1, -1, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, 92, 93, 94, 95, 138, 89, -1, 10, -1, -1, -1, -1, 96, 16, -1, -1, -1, 20, -1, -1, -1, 24, 124, 125, 126, 127, 128, 30, 92, 93, 94, 95, -1, 117, 118, -1, 120, 129, 122, 123, -1, -1, -1, -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, 187, -1, -1, -1, -1, -1, 193, -1, -1, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 0, 1, -1, 225, -1, -1, -1, -1, -1, -1, 10, 11, -1, 13, -1, -1, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, 12, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 450, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 1, -1, -1, -1, 130, -1, -1, -1, -1, 10, 11, 12, 13, -1, -1, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, 507, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, 540, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, 12, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, 12, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, 12, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, 12, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, -1, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, 86, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, -1, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 117, 118, -1, 120, -1, 122, 123, -1, 10, 11, -1, 13, -1, 130, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, 68, -1, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, 1, -1, -1, -1, 89, -1, -1, -1, -1, 10, -1, 96, 13, -1, -1, 16, -1, -1, 19, 20, 21, 22, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, -1, -1, -1, -1, 130, 47, 48, -1, -1, -1, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, 1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, -1, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, 11, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, 11, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, -1, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, -1, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, 11, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, -1, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, 129, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, -1, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, 16, 96, -1, 19, 20, 21, -1, -1, 24, 25, -1, -1, -1, 29, 30, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, -1, 47, 48, -1, -1, 130, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, 66, 67, -1, -1, 70, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, 78, 79, 80, -1, -1, 117, 118, -1, 120, -1, 122, 123, -1, 91, -1, -1, -1, -1, 130, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, 71, -1, 124, 125, 126, 127, 128, 78, 79, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 91, -1, -1, -1, -1, -1, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, 71, -1, 124, 125, 126, 127, 128, 78, 79, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 91, -1, -1, -1, 78, 79, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, 71, -1, 124, 125, 126, 127, 128, 78, 79, 80, 115, 116, -1, -1, -1, -1, 121, -1, -1, 124, 125, 126, 127, 128, -1, -1, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, 71, -1, 124, 125, 126, 127, 128, 78, 79, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, 71, -1, 124, 125, 126, 127, 128, 78, 79, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 78, 79, 80, -1, 121, -1, -1, 124, 125, 126, 127, 128, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 78, 79, 80, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, -1, -1, 124, 125, 126, 127, 128, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 78, 79, 80, -1, 121, -1, -1, 124, 125, 126, 127, 128, -1, -1, -1, -1, -1, -1, -1, -1, -1, 78, 79, 80, -1, -1, -1, -1, -1, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 78, 79, 80, 121, -1, -1, 124, 125, 126, 127, 128, 108, 109, 110, 111, 112, 113, 114, 115, 116, 78, 79, 80, -1, 121, -1, -1, 124, 125, 126, 127, 128, 110, 111, 112, 113, 114, 115, 116, 78, 79, 80, -1, 121, -1, -1, 124, 125, 126, 127, 128, -1, -1, -1, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, -1, -1, 124, 125, 126, 127, 128, -1, -1, 112, 113, 114, 115, 116, -1, -1, -1, -1, 121, -1, -1, 124, 125, 126, 127, 128 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { 0, 3, 4, 5, 6, 7, 8, 9, 132, 133, 134, 135, 136, 137, 138, 139, 0, 144, 10, 13, 16, 19, 20, 21, 24, 25, 29, 30, 47, 48, 52, 53, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 70, 73, 74, 75, 76, 77, 81, 82, 83, 96, 117, 118, 120, 122, 123, 130, 142, 203, 204, 205, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 219, 226, 234, 235, 236, 237, 238, 239, 240, 241, 242, 11, 141, 1, 22, 26, 27, 28, 31, 32, 35, 36, 37, 38, 40, 41, 42, 43, 46, 49, 50, 51, 54, 68, 72, 89, 140, 141, 154, 168, 203, 223, 69, 152, 153, 154, 142, 150, 197, 198, 150, 56, 61, 141, 235, 243, 226, 243, 217, 243, 217, 243, 243, 217, 120, 130, 220, 235, 236, 237, 217, 141, 217, 180, 180, 181, 243, 243, 218, 13, 130, 217, 180, 217, 130, 130, 87, 130, 141, 217, 56, 142, 204, 225, 235, 243, 243, 226, 56, 61, 183, 204, 217, 217, 217, 217, 217, 129, 203, 92, 93, 94, 95, 15, 11, 13, 130, 110, 111, 110, 108, 109, 108, 71, 78, 79, 80, 91, 97, 98, 99, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 121, 124, 125, 126, 127, 128, 130, 11, 13, 11, 13, 11, 13, 11, 144, 182, 56, 56, 221, 235, 236, 237, 130, 130, 30, 120, 130, 233, 235, 130, 130, 130, 130, 141, 11, 145, 145, 179, 183, 22, 179, 183, 39, 142, 170, 22, 32, 35, 36, 37, 38, 41, 22, 153, 154, 152, 16, 20, 24, 142, 188, 189, 191, 192, 193, 194, 14, 130, 217, 220, 235, 236, 237, 129, 203, 84, 186, 59, 142, 184, 84, 142, 185, 185, 225, 130, 87, 203, 129, 141, 129, 129, 203, 226, 226, 243, 204, 22, 225, 13, 129, 203, 203, 203, 203, 217, 203, 203, 129, 203, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 10, 11, 13, 16, 20, 24, 25, 57, 81, 130, 207, 235, 129, 203, 203, 203, 203, 203, 203, 203, 203, 150, 56, 142, 178, 56, 56, 84, 142, 222, 144, 144, 120, 144, 30, 231, 232, 234, 235, 236, 237, 144, 144, 130, 144, 144, 144, 144, 146, 44, 158, 179, 157, 179, 141, 167, 203, 167, 167, 175, 203, 167, 167, 61, 187, 187, 15, 129, 203, 186, 129, 59, 185, 59, 144, 202, 202, 226, 204, 14, 206, 129, 88, 129, 203, 12, 203, 13, 22, 14, 129, 100, 25, 203, 203, 25, 25, 25, 25, 25, 129, 203, 130, 129, 22, 14, 22, 14, 22, 14, 22, 12, 18, 143, 11, 22, 185, 59, 97, 176, 203, 176, 130, 228, 235, 130, 142, 168, 173, 176, 177, 203, 231, 144, 175, 174, 203, 176, 176, 150, 144, 56, 155, 22, 144, 199, 200, 156, 97, 142, 190, 190, 192, 129, 200, 130, 142, 195, 196, 129, 23, 142, 227, 225, 129, 14, 203, 12, 217, 22, 14, 129, 226, 12, 12, 12, 12, 144, 144, 11, 22, 224, 129, 129, 229, 230, 235, 130, 144, 129, 22, 161, 176, 129, 129, 129, 129, 12, 130, 142, 147, 56, 184, 11, 185, 217, 197, 11, 203, 88, 14, 12, 129, 22, 163, 144, 217, 145, 145, 15, 129, 176, 176, 145, 159, 130, 129, 172, 172, 145, 145, 148, 162, 225, 185, 150, 22, 201, 202, 129, 150, 86, 150, 164, 33, 34, 142, 169, 169, 235, 130, 129, 129, 170, 174, 176, 145, 145, 145, 235, 145, 22, 199, 12, 12, 142, 151, 12, 150, 145, 130, 176, 145, 145, 22, 129, 170, 170, 170, 149, 45, 171, 22, 59, 165, 12, 176, 129, 170, 170, 160, 145, 129, 141, 17, 85, 142, 166, 129, 145, 172, 170, 150, 145, 170, 177, 86, 169, 129, 145 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { 0, 131, 133, 132, 134, 132, 135, 132, 136, 132, 137, 132, 138, 132, 139, 132, 140, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 147, 150, 150, 151, 151, 152, 152, 153, 153, 154, 154, 155, 154, 156, 154, 157, 154, 154, 154, 158, 154, 154, 154, 154, 154, 154, 154, 154, 159, 160, 154, 154, 154, 154, 161, 154, 154, 154, 162, 154, 154, 163, 154, 164, 154, 154, 154, 154, 154, 154, 165, 166, 166, 167, 168, 168, 168, 168, 168, 168, 168, 168, 169, 169, 169, 170, 170, 171, 171, 172, 173, 173, 174, 174, 175, 176, 177, 178, 178, 179, 180, 181, 182, 183, 183, 184, 184, 185, 185, 185, 186, 186, 187, 187, 188, 188, 189, 190, 190, 190, 191, 192, 192, 193, 193, 193, 194, 194, 195, 195, 196, 198, 197, 199, 199, 200, 201, 201, 202, 203, 203, 203, 203, 203, 204, 204, 204, 205, 205, 205, 205, 205, 205, 205, 205, 205, 206, 205, 207, 207, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 210, 210, 210, 210, 210, 211, 211, 212, 212, 212, 212, 213, 213, 214, 214, 214, 214, 214, 214, 214, 214, 214, 215, 215, 215, 215, 215, 216, 216, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 218, 217, 217, 217, 217, 219, 219, 219, 219, 220, 220, 220, 220, 220, 221, 221, 221, 222, 222, 222, 223, 224, 223, 225, 225, 226, 226, 227, 227, 228, 229, 229, 229, 230, 231, 231, 231, 232, 232, 233, 233, 234, 235, 236, 237, 238, 238, 239, 240, 240, 241, 241, 242, 242, 243, 243, 243, 243 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ static const yytype_uint8 yyr2[] = { 0, 2, 0, 4, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 1, 1, 4, 0, 7, 0, 4, 0, 1, 0, 0, 5, 1, 2, 1, 2, 1, 1, 2, 2, 1, 4, 0, 7, 0, 6, 0, 4, 4, 5, 0, 7, 7, 7, 6, 6, 2, 8, 8, 0, 0, 13, 9, 11, 8, 0, 10, 9, 7, 0, 8, 2, 0, 8, 0, 9, 2, 2, 2, 2, 1, 2, 1, 3, 1, 1, 1, 3, 3, 3, 3, 3, 3, 1, 2, 6, 1, 2, 0, 2, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 1, 2, 1, 0, 1, 1, 1, 3, 1, 1, 2, 3, 1, 1, 2, 3, 1, 1, 1, 1, 1, 3, 0, 2, 1, 1, 4, 1, 1, 5, 3, 3, 3, 3, 1, 2, 3, 1, 3, 5, 6, 3, 3, 5, 2, 4, 4, 0, 5, 1, 1, 5, 4, 5, 4, 5, 6, 5, 4, 5, 4, 3, 6, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 2, 2, 3, 3, 3, 1, 3, 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 4, 5, 4, 4, 2, 2, 1, 1, 1, 1, 5, 2, 1, 2, 3, 1, 2, 1, 1, 1, 1, 1, 1, 4, 4, 5, 5, 1, 1, 3, 4, 3, 4, 4, 4, 4, 4, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 4, 0, 6, 1, 1, 1, 3, 2, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 3, 0, 6, 1, 1, 1, 1, 1, 2, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 4, 2, 1, 3, 1, 3, 1, 3, 1, 1, 1, 1 }; typedef enum { toketype_ival, toketype_opval, toketype_pval } toketypes; /* type of each token/terminal */ static const toketypes yy_type_tab[] = { toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_ival, toketype_opval, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_pval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval }; /* Generated from: * 0a5fcd15cf0b7afb57ade6ceaf68037a38dd194acd9d60d3e4ad99c15233af75 perly.y * acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl * ex: set ro ft=c: */