diff options
author | Nicolas Williams <nico@cryptonector.com> | 2015-06-26 20:29:04 -0500 |
---|---|---|
committer | Nicolas Williams <nico@cryptonector.com> | 2015-06-26 20:45:14 -0500 |
commit | e16bd175710cffe8380a0ed6c2806d67fed7c53c (patch) | |
tree | 853e23498ea2606e37d3ad6775237e6d1ce6ce3a | |
parent | 25d47ca08e682dd28793cb76e0deeae93cd2f8bd (diff) |
Add `{$var}` `. as {$var}` syntax (fix #831)
-rw-r--r-- | parser.c | 1328 | ||||
-rw-r--r-- | parser.y | 7 |
2 files changed, 680 insertions, 655 deletions
@@ -651,16 +651,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 27 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1986 +#define YYLAST 1976 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 65 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 26 /* YYNRULES -- Number of rules. */ -#define YYNRULES 151 +#define YYNRULES 153 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 300 +#define YYNSTATES 304 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ @@ -722,10 +722,10 @@ static const yytype_uint16 yyrline[] = 660, 663, 666, 669, 672, 675, 678, 681, 684, 687, 690, 697, 701, 705, 717, 722, 723, 724, 725, 728, 731, 736, 741, 745, 748, 753, 756, 761, 764, 769, - 772, 775, 778, 783, 786, 789, 792, 795, 798, 801, + 772, 775, 778, 781, 786, 789, 792, 795, 798, 801, 804, 807, 810, 813, 816, 819, 822, 825, 828, 831, - 834, 839, 842, 843, 844, 847, 850, 853, 856, 860, - 864, 867 + 834, 837, 842, 845, 846, 847, 850, 853, 856, 859, + 863, 867, 871, 874 }; #endif @@ -766,50 +766,51 @@ static const yytype_uint16 yytoknum[] = }; # endif -#define YYPACT_NINF -171 +#define YYPACT_NINF -141 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-171))) + (!!((Yystate) == (-141))) -#define YYTABLE_NINF -142 +#define YYTABLE_NINF -143 #define yytable_value_is_error(Yytable_value) \ - (!!((Yytable_value) == (-142))) + (!!((Yytable_value) == (-143))) /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ static const yytype_int16 yypact[] = { - 19, 862, 41, 28, 48, -2, -171, 25, -171, 53, - 862, 152, 152, 862, 56, 1, -171, 862, 508, 21, - 267, 482, 329, 1323, 862, -171, 6, -171, 3, 862, - 28, 862, -171, -171, -20, 1698, 8, 10, 81, 73, - -171, 111, -171, 9, 59, 1168, -171, -171, -171, 116, - 25, 64, 57, -171, 950, -31, 63, -171, -171, -171, - -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, - -171, -171, -171, -171, -171, 569, 67, 69, 65, 86, - 862, 862, 862, 862, 862, 862, 862, 862, 862, 862, - 862, 862, 862, 862, 862, 862, 862, 862, 862, 862, - 862, 862, 862, 862, -171, -171, 1852, 78, -23, 3, - 419, 121, -171, 1852, 862, -171, 1852, -12, -171, -171, - 18, 862, 595, -23, -23, 656, 91, -171, 13, -171, - -171, -171, -171, -171, -171, 382, -171, 144, 83, 1199, - 144, 144, -171, 382, 1914, 324, 324, 1883, 1088, 1932, - 1914, 1914, 1914, 1914, 1914, 1914, 324, 324, 1852, 1883, - 1914, 324, 324, 9, 9, 84, 84, 84, -171, 137, - -23, 1093, 98, 89, 82, 862, 92, 904, 54, -171, - 862, -171, 32, -171, 141, -8, -171, 1370, -171, 1652, - 97, 99, -171, -171, 862, -171, 862, -171, 109, -171, - 144, 117, 50, 103, 104, 117, 117, -171, -171, -171, - -14, 105, 862, 106, -18, -171, 108, 862, -171, -171, - 996, -171, 682, 114, 742, 165, -171, -171, -171, 18, - 112, -171, 862, 862, -171, 862, 862, 1852, 1729, -171, - 144, 144, 144, -23, -171, -23, 1230, -23, 1093, -171, - -23, 1852, 118, 122, 1042, -171, -171, 1417, 802, -171, - 862, 1775, 1821, 1464, 1511, -171, 117, 117, 117, -171, - -171, 119, -171, -171, -171, -171, -171, 123, -171, -171, - 1558, 1605, -171, 862, 862, 862, -23, -171, -171, -171, - 1652, 1261, 1119, -171, -171, -171, 862, -171, 1292, -171 + 25, 806, 31, 33, -5, -2, -141, 17, -141, 64, + 806, 666, 666, 806, 18, 0, -141, 806, 452, 11, + 271, 426, 333, 1284, 806, -141, 6, -141, 3, 806, + 33, 806, -141, -141, -21, 1659, 9, 48, 45, 71, + -141, 73, -141, -6, 56, 1129, -141, -141, -141, 78, + 17, 63, 57, -141, 942, -32, 68, -141, -141, -141, + -141, -141, -141, -141, -141, -141, -141, -141, -141, -141, + -141, -141, -141, -141, -141, 513, 116, 69, 72, 59, + 85, 806, 806, 806, 806, 806, 806, 806, 806, 806, + 806, 806, 806, 806, 806, 806, 806, 806, 806, 806, + 806, 806, 806, 806, 806, -141, -141, 1813, 79, -24, + 3, 143, 122, -141, 1813, 806, -141, 1813, 16, -141, + -141, 2, 806, 539, -24, -24, 600, 92, -141, 14, + -141, -141, -141, -141, -141, -141, 386, -141, 204, 83, + 1160, -141, 204, 204, -141, 386, 1875, 328, 328, 1844, + 1922, 1893, 1875, 1875, 1875, 1875, 1875, 1875, 328, 328, + 1813, 1844, 1875, 328, 328, -6, -6, 87, 87, 87, + -141, 138, -24, 861, 99, 91, 90, 806, 100, 896, + 20, -141, 806, -141, 22, -141, 149, 61, -141, 1331, + -141, 1613, 102, 103, -141, -141, 806, -141, 806, -141, + 110, -141, 204, 112, 54, 104, 107, 112, 112, -141, + -141, -141, -19, 108, 806, 157, 111, -20, -141, 114, + 806, -141, -141, 988, -141, 626, 121, 686, 158, -141, + -141, -141, 2, 118, -141, 806, 806, -141, 806, 806, + 1813, 1690, -141, 204, 204, 204, -24, -141, -24, 1191, + -141, -24, 861, -141, -24, 1813, 124, 125, 1034, -141, + -141, 1378, 746, -141, 806, 1736, 1782, 1425, 1472, -141, + 112, 112, 112, -141, -141, 126, -141, -141, -141, -141, + -141, 129, -141, -141, 1519, 1566, -141, 806, 806, 806, + -24, -141, -141, -141, 1613, 1222, 1080, -141, -141, -141, + 806, -141, 1253, -141 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -822,47 +823,48 @@ static const yytype_uint8 yydefact[] = 0, 0, 0, 0, 0, 95, 47, 1, 0, 8, 6, 0, 75, 60, 0, 0, 0, 0, 18, 0, 73, 0, 62, 32, 0, 0, 102, 101, 82, 0, - 0, 81, 0, 99, 0, 0, 149, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 0, 148, 0, 0, 142, + 0, 81, 0, 99, 0, 0, 151, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 0, 0, 149, 0, 0, + 143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 21, 5, 10, 78, 0, 0, - 0, 0, 3, 2, 8, 7, 111, 0, 109, 62, - 0, 0, 0, 0, 0, 0, 0, 72, 0, 105, - 97, 83, 77, 106, 98, 0, 108, 0, 0, 0, - 0, 0, 100, 0, 40, 41, 42, 25, 24, 23, - 27, 31, 34, 36, 39, 26, 45, 46, 28, 29, - 22, 43, 44, 30, 33, 35, 37, 38, 74, 0, - 0, 0, 0, 80, 0, 0, 87, 0, 0, 9, - 0, 104, 0, 57, 0, 0, 54, 0, 16, 0, - 0, 0, 19, 17, 0, 63, 0, 59, 0, 144, - 0, 145, 69, 0, 0, 147, 146, 143, 112, 115, - 0, 0, 0, 0, 0, 117, 0, 0, 76, 107, - 0, 86, 0, 85, 0, 0, 110, 61, 56, 0, - 0, 52, 0, 0, 15, 0, 0, 20, 0, 68, - 0, 0, 0, 0, 113, 0, 0, 0, 0, 114, - 0, 11, 93, 92, 0, 84, 49, 0, 0, 55, - 0, 0, 0, 0, 0, 64, 67, 151, 150, 116, - 119, 0, 121, 118, 120, 90, 89, 91, 50, 48, - 0, 0, 66, 0, 0, 0, 0, 88, 51, 53, - 0, 0, 0, 122, 65, 12, 0, 14, 0, 13 + 0, 0, 0, 0, 0, 21, 5, 10, 78, 0, + 0, 0, 0, 3, 2, 8, 7, 111, 0, 109, + 62, 0, 0, 0, 0, 0, 0, 0, 72, 0, + 105, 97, 83, 77, 106, 98, 0, 108, 0, 0, + 0, 150, 0, 0, 100, 0, 40, 41, 42, 25, + 24, 23, 27, 31, 34, 36, 39, 26, 45, 46, + 28, 29, 22, 43, 44, 30, 33, 35, 37, 38, + 74, 0, 0, 0, 0, 80, 0, 0, 87, 0, + 0, 9, 0, 104, 0, 57, 0, 0, 54, 0, + 16, 0, 0, 0, 19, 17, 0, 63, 0, 59, + 0, 145, 0, 146, 69, 0, 0, 148, 147, 144, + 112, 115, 0, 0, 0, 0, 0, 0, 117, 0, + 0, 76, 107, 0, 86, 0, 85, 0, 0, 110, + 61, 56, 0, 0, 52, 0, 0, 15, 0, 0, + 20, 0, 68, 0, 0, 0, 0, 113, 0, 0, + 119, 0, 0, 114, 0, 11, 93, 92, 0, 84, + 49, 0, 0, 55, 0, 0, 0, 0, 0, 64, + 67, 153, 152, 116, 120, 0, 122, 118, 121, 90, + 89, 91, 50, 48, 0, 0, 66, 0, 0, 0, + 0, 88, 51, 53, 0, 0, 0, 123, 65, 12, + 0, 14, 0, 13 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -171, -171, -171, 140, 66, -1, -171, -11, -171, -47, - 4, -171, -171, 68, -105, -135, -4, -171, 12, -120, - -171, -171, -64, -170, -106, -171 + -141, -141, -141, 150, 74, -1, -141, -11, -141, -48, + 1, -141, -141, 66, -107, -138, -4, -141, 8, -122, + -141, -141, -64, -140, -109, -141 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 29, 112, 106, 30, 24, 185, 186, - 25, 42, 119, 128, 234, 201, 26, 117, 118, 172, - 210, 214, 215, 77, 78, 79 + -1, 2, 3, 29, 113, 107, 30, 24, 187, 188, + 25, 42, 120, 129, 237, 203, 26, 118, 119, 174, + 212, 217, 218, 78, 79, 80 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -870,332 +872,324 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 23, 216, 40, 190, 191, 205, 206, 36, 37, 35, - 50, 107, 38, 107, 135, 107, 43, 45, 114, 108, - 54, 123, 183, 124, 51, 46, 76, 248, 113, 199, - 116, 243, 111, 136, 1, 169, 120, 207, 170, 121, - 171, 27, 16, 180, 28, 181, 249, 229, 244, 230, - 209, 47, 32, 195, 196, 107, 197, 34, 224, 41, - 101, 102, 103, 104, 33, 239, 109, 110, 109, 110, - 109, 110, 195, 196, 139, 227, 184, 126, 216, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 114, 31, 266, 267, 268, 125, 177, - 109, 110, 225, 173, 39, 127, 129, 131, 132, 133, - 187, 189, 137, 269, 193, 270, 140, 272, 141, 142, - 274, 143, 168, 202, 178, 194, 202, 202, 104, 76, - 203, 208, 217, 218, 219, 228, 221, 76, 4, 5, - 6, 7, 8, 235, 135, 236, 4, 5, 6, 7, - 8, 240, 241, 242, 245, 247, 293, 250, 255, 258, - 115, 260, 275, 15, 220, 213, 276, 287, 286, 116, - 179, 15, 259, 16, 273, 294, 0, 182, 0, 0, - 0, 16, 226, 237, 200, 238, 202, 0, 0, 0, - 18, 0, 19, 0, 20, 21, 0, 22, 18, 0, - 19, 246, 20, 21, 0, 22, 251, 0, 0, 0, - 0, 254, 0, 257, 0, 0, 0, 0, 0, 0, - 0, 261, 262, 0, 263, 264, 202, 202, 202, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 213, 0, 0, 0, 0, 280, 0, 281, - 0, 0, 0, 0, 0, 0, 0, -70, 48, 0, - 0, 49, -70, 0, 50, 0, -70, -70, -70, -70, - -70, 0, 290, 291, 292, -70, -70, -70, 0, 0, - -70, -70, -70, 0, -70, 298, 0, 0, -70, -70, - -70, -70, -70, -70, -70, -70, 16, 0, 0, -70, - 0, -70, -70, -70, -70, -70, -70, -70, -70, -70, - -70, -70, -70, 0, -70, 0, -70, -70, -70, -70, - 55, -70, 0, 56, -142, -142, 50, 0, 0, 0, - 0, 0, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 0, -142, -142, 0, 0, 0, 0, 0, 16, 0, - 0, -142, -142, 99, 100, 101, 102, 103, 104, 0, - 0, 0, 0, 198, 0, 75, 56, 0, 0, 50, - 0, 0, 0, -141, 0, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, - 174, 16, 0, 4, 5, 6, 7, 8, 0, 0, - 0, 0, 0, 9, 0, 0, 10, 0, 75, 0, - 11, 12, 0, 0, 0, 13, -141, 14, 15, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, - 0, 0, 0, 0, 0, 18, 0, 19, 175, 20, - 21, 176, 22, 52, 0, 0, 4, 5, 6, 7, - 8, 0, 0, 0, 0, 0, 9, 0, 0, 10, - 0, 0, 0, 11, 12, 0, 0, 0, 13, 44, - 14, 15, 4, 5, 6, 7, 8, 0, 0, 0, - 0, 16, 9, 0, 0, 10, 0, 0, 0, 11, - 12, 0, 17, 0, 13, 0, 14, 15, 18, 0, - 19, 0, 20, 21, 53, 22, 0, 16, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, - 0, 0, 0, 0, 18, 0, 19, 0, 20, 21, - 138, 22, 0, 4, 5, 6, 7, 8, 0, 0, - 0, 0, 0, 9, 0, 0, 10, 0, 0, 0, - 11, 12, 0, 0, 0, 13, 188, 14, 15, 4, - 5, 6, 7, 8, 0, 0, 0, 0, 16, 9, - 0, 0, 10, 0, 0, 0, 11, 12, 0, 17, - 0, 13, 0, 14, 15, 18, 0, 19, 0, 20, - 21, 0, 22, 0, 16, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, - 0, 18, 0, 19, 0, 20, 21, 192, 22, 0, + 23, 40, 192, 193, 207, 208, 185, 36, 37, 35, + 50, 108, 38, 136, 108, 46, 43, 45, 115, 109, + 54, 51, 124, 77, 227, 252, 246, 201, 114, 112, + 117, 27, 137, 219, 171, 121, 209, 172, 122, 173, + 1, 47, 16, 247, 253, 102, 103, 104, 105, 28, + 211, 31, 32, 108, 197, 198, 33, 199, 41, 108, + 186, 125, 197, 198, 242, 230, 110, 111, 34, 110, + 111, 182, 126, 183, 140, 127, 39, 128, 228, 132, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 166, 167, 168, 169, 115, 270, 271, 272, 110, 111, + 179, 175, 219, 130, 110, 111, 232, 133, 233, 134, + 141, 189, 191, 144, 273, 195, 274, 138, 142, 276, + 145, 143, 278, 170, 204, 180, 196, 77, 204, 204, + 205, 105, 210, 220, 176, 221, 77, 4, 5, 6, + 7, 8, 222, 231, 224, 136, 243, 9, 238, 239, + 10, 250, 262, 244, 11, 12, 245, 248, 297, 13, + 251, 14, 15, 254, 216, 259, 223, 264, 279, 280, + 116, 117, 16, 291, 263, 290, 184, 298, 277, 181, + 229, 0, 0, 17, 0, 240, 0, 241, 204, 18, + 0, 19, 177, 20, 21, 178, 22, 0, 4, 5, + 6, 7, 8, 249, 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 258, 0, 261, 0, 0, 0, + 0, 0, 0, 15, 265, 266, 0, 267, 268, 204, + 204, 204, 0, 16, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 216, 202, 0, 0, 0, 0, 0, + 18, 284, 19, 285, 20, 21, 0, 22, 0, 0, + 0, -70, 48, 0, 0, 49, -70, 0, 50, 0, + -70, -70, -70, -70, -70, 0, 294, 295, 296, -70, + -70, -70, 0, 0, -70, -70, -70, 0, -70, 302, + 0, 0, -70, -70, -70, -70, -70, -70, -70, -70, + 16, 0, 0, -70, 0, -70, -70, -70, -70, -70, + -70, -70, -70, -70, -70, -70, -70, 0, -70, 0, + -70, -70, -70, -70, 55, -70, 0, 56, -143, -143, + 50, 0, 0, 0, 0, 0, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 0, -143, -143, 0, 0, 0, + 0, 0, 16, 0, 0, -143, -143, 100, 101, 102, + 103, 104, 105, 0, 0, 0, 0, 200, 0, 75, + 56, 76, 0, 50, 0, 0, 0, -142, 0, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, 74, 0, 0, 0, + 0, 0, 0, 0, 0, 16, 0, 52, 0, 0, 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, - 9, 0, 0, 10, 0, 0, 0, 11, 12, 0, - 0, 0, 13, 0, 14, 15, 4, 5, 6, 7, + 9, 0, 75, 10, 76, 0, 0, 11, 12, 0, + -142, 0, 13, 44, 14, 15, 4, 5, 6, 7, 8, 0, 0, 0, 0, 16, 9, 0, 0, 10, 0, 0, 0, 11, 12, 0, 17, 0, 13, 0, - 14, 15, 18, 0, 19, 0, 20, 21, 0, 22, + 14, 15, 18, 0, 19, 0, 20, 21, 53, 22, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, 18, 0, - 19, 0, 20, 21, 253, 22, 4, 5, 6, 7, - 8, 0, 0, 0, 0, 0, 9, 0, 0, 10, - 0, 0, 0, 11, 12, 0, 0, 0, 13, 0, - 14, 15, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 17, 0, 0, 0, 0, 256, 18, 0, - 19, 0, 20, 21, 0, 22, 4, 5, 6, 7, - 8, 0, 0, 0, 0, 0, 9, 0, 0, 10, - 0, 0, 0, 11, 12, 0, 0, 0, 13, 0, - 14, 15, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 17, 0, 0, 0, 0, 279, 18, 0, - 19, 0, 20, 21, 0, 22, 4, 5, 6, 7, - 8, 0, 0, 0, 0, 0, 9, 0, 0, 10, - 0, 0, 0, 11, 12, 0, 0, 0, 13, 0, - 14, 15, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 17, 80, 81, 82, 83, 0, 18, 0, - 19, 0, 20, 21, 0, 22, 0, 0, 84, 85, - 0, 0, 0, 0, 0, 86, 87, 88, 89, 90, - 91, 92, 93, 0, 0, 0, 0, 0, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 80, - 81, 82, 83, 222, 0, 0, 223, 0, 0, 0, - 0, 0, 0, 0, 84, 85, 0, 0, 0, 0, - 0, 86, 87, 88, 89, 90, 91, 92, 93, 0, - 0, 0, 0, 0, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 80, 81, 82, 83, 0, - 0, 0, 134, 0, 0, 0, 0, 0, 0, 0, - 84, 85, 0, 0, 0, 0, 0, 86, 87, 88, - 89, 90, 91, 92, 93, 0, 0, 0, 0, 0, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 80, 81, 82, 83, 0, 0, 0, 252, 0, - 0, 0, 0, 0, 0, 0, 84, 85, 0, 0, - 0, 0, 0, 86, 87, 88, 89, 90, 91, 92, - 93, 0, 0, 0, 0, 0, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 211, 81, 82, - 50, 0, 0, 0, 277, 0, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 73, 74, 0, 92, 93, 0, 80, 81, - 82, 83, 16, 0, 0, 97, 98, 99, 100, 101, - 102, 103, 104, 84, 85, 0, 0, 0, 0, 212, - 86, 87, 88, 89, 90, 91, 92, 93, 0, 0, - 0, 0, 0, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 296, 0, 297, 80, 81, 82, - 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 84, 85, 0, 0, 0, 0, 0, 86, - 87, 88, 89, 90, 91, 92, 93, 0, 80, 81, - 82, 83, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 84, 85, 130, 0, 0, 0, 0, - 86, 87, 88, 89, 90, 91, 92, 93, 0, 80, - 81, 82, 83, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 84, 85, 204, 0, 0, 0, - 0, 86, 87, 88, 89, 90, 91, 92, 93, 0, - 80, 81, 82, 83, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 84, 85, 271, 0, 0, - 0, 0, 86, 87, 88, 89, 90, 91, 92, 93, - 0, 80, 81, 82, 83, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 84, 85, 295, 0, - 0, 0, 0, 86, 87, 88, 89, 90, 91, 92, - 93, 0, 80, 81, 82, 83, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 84, 85, 299, - 0, 0, 0, 0, 86, 87, 88, 89, 90, 91, - 92, 93, 0, 0, 0, 0, 0, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 80, - 81, 82, 83, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 84, 85, 0, 0, 0, 0, - 0, 86, 87, 88, 89, 90, 91, 92, 93, 0, - 0, 0, 0, 0, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 231, 80, 81, 82, 83, + 19, 0, 20, 21, 139, 22, 0, 4, 5, 6, + 7, 8, 0, 0, 0, 0, 0, 9, 0, 0, + 10, 0, 0, 0, 11, 12, 0, 0, 0, 13, + 190, 14, 15, 4, 5, 6, 7, 8, 0, 0, + 0, 0, 16, 9, 0, 0, 10, 0, 0, 0, + 11, 12, 0, 17, 0, 13, 0, 14, 15, 18, + 0, 19, 0, 20, 21, 0, 22, 0, 16, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, + 0, 0, 0, 0, 0, 18, 0, 19, 0, 20, + 21, 194, 22, 0, 4, 5, 6, 7, 8, 0, + 0, 0, 0, 0, 9, 0, 0, 10, 0, 0, + 0, 11, 12, 0, 0, 0, 13, 0, 14, 15, + 4, 5, 6, 7, 8, 0, 0, 0, 0, 16, + 9, 0, 0, 10, 0, 0, 0, 11, 12, 0, + 17, 0, 13, 0, 14, 15, 18, 0, 19, 0, + 20, 21, 0, 22, 0, 16, 0, 0, 0, 0, + 4, 5, 6, 7, 8, 0, 17, 0, 0, 0, + 0, 0, 18, 0, 19, 0, 20, 21, 257, 22, + 4, 5, 6, 7, 8, 15, 0, 0, 0, 0, + 9, 0, 0, 10, 0, 16, 0, 11, 12, 0, + 0, 0, 13, 0, 14, 15, 0, 0, 0, 0, + 0, 0, 18, 0, 19, 16, 20, 21, 0, 22, + 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, + 0, 260, 18, 0, 19, 0, 20, 21, 0, 22, + 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, + 9, 0, 0, 10, 0, 0, 0, 11, 12, 0, + 0, 0, 13, 0, 14, 15, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, + 0, 283, 18, 0, 19, 0, 20, 21, 0, 22, + 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, + 9, 0, 0, 10, 0, 0, 0, 11, 12, 0, + 0, 0, 13, 0, 14, 15, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, + 0, 0, 18, 0, 19, 213, 20, 21, 50, 22, + 0, 0, 0, 0, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, + 16, 0, 0, 0, 0, 81, 82, 83, 84, 0, + 0, 0, 0, 0, 0, 0, 0, 214, 0, 215, + 85, 86, 0, 0, 0, 0, 0, 87, 88, 89, + 90, 91, 92, 93, 94, 0, 0, 0, 0, 0, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 81, 82, 83, 84, 225, 0, 0, 226, 0, + 0, 0, 0, 0, 0, 0, 85, 86, 0, 0, + 0, 0, 0, 87, 88, 89, 90, 91, 92, 93, + 94, 0, 0, 0, 0, 0, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 81, 82, 83, + 84, 0, 0, 0, 135, 0, 0, 0, 0, 0, + 0, 0, 85, 86, 0, 0, 0, 0, 0, 87, + 88, 89, 90, 91, 92, 93, 94, 0, 0, 0, + 0, 0, 95, 96, 97, 98, 99, 100, 101, 102, + 103, 104, 105, 81, 82, 83, 84, 0, 0, 0, + 256, 0, 0, 0, 0, 0, 0, 0, 85, 86, + 0, 0, 0, 0, 0, 87, 88, 89, 90, 91, + 92, 93, 94, 0, 0, 0, 0, 0, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 81, + 82, 83, 84, 0, 0, 0, 281, 0, 0, 0, + 0, 0, 0, 0, 85, 86, 0, 0, 0, 0, + 0, 87, 88, 89, 90, 91, 92, 93, 94, 0, + 0, 0, 0, 0, 95, 96, 97, 98, 99, 100, + 101, 102, 103, 104, 105, 300, 0, 301, 81, 82, + 83, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 85, 86, 0, 0, 0, 0, 0, + 87, 88, 89, 90, 91, 92, 93, 94, 0, 81, + 82, 83, 84, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 85, 86, 131, 0, 0, 0, + 0, 87, 88, 89, 90, 91, 92, 93, 94, 0, + 81, 82, 83, 84, 95, 96, 97, 98, 99, 100, + 101, 102, 103, 104, 105, 85, 86, 206, 0, 0, + 0, 0, 87, 88, 89, 90, 91, 92, 93, 94, + 0, 81, 82, 83, 84, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 85, 86, 275, 0, + 0, 0, 0, 87, 88, 89, 90, 91, 92, 93, + 94, 0, 81, 82, 83, 84, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 85, 86, 299, + 0, 0, 0, 0, 87, 88, 89, 90, 91, 92, + 93, 94, 0, 81, 82, 83, 84, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 85, 86, + 303, 0, 0, 0, 0, 87, 88, 89, 90, 91, + 92, 93, 94, 0, 0, 0, 0, 0, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 81, 82, 83, 84, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 85, 86, 0, 0, 0, + 0, 0, 87, 88, 89, 90, 91, 92, 93, 94, + 0, 0, 0, 0, 0, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 234, 81, 82, 83, + 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 85, 86, 0, 0, 0, 0, 0, 87, + 88, 89, 90, 91, 92, 93, 94, 0, 0, 0, + 0, 0, 95, 96, 97, 98, 99, 100, 101, 102, + 103, 104, 105, 282, 81, 82, 83, 84, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 86, 0, 0, 0, 0, 0, 87, 88, 89, 90, + 91, 92, 93, 94, 0, 0, 0, 0, 0, 95, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 288, 81, 82, 83, 84, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 85, 86, 0, 0, + 0, 0, 0, 87, 88, 89, 90, 91, 92, 93, + 94, 0, 0, 0, 0, 0, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 289, 81, 82, + 83, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 85, 86, 0, 0, 0, 0, 0, + 87, 88, 89, 90, 91, 92, 93, 94, 0, 0, + 0, 0, 0, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 292, 81, 82, 83, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 84, 85, 0, 0, 0, 0, 0, 86, 87, - 88, 89, 90, 91, 92, 93, 0, 0, 0, 0, - 0, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 278, 80, 81, 82, 83, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 84, 85, - 0, 0, 0, 0, 0, 86, 87, 88, 89, 90, - 91, 92, 93, 0, 0, 0, 0, 0, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 284, - 80, 81, 82, 83, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 84, 85, 0, 0, 0, - 0, 0, 86, 87, 88, 89, 90, 91, 92, 93, - 0, 0, 0, 0, 0, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 285, 80, 81, 82, - 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 84, 85, 0, 0, 0, 0, 0, 86, - 87, 88, 89, 90, 91, 92, 93, 0, 0, 0, - 0, 0, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 288, 80, 81, 82, 83, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 84, - 85, 0, 0, 0, 0, 0, 86, 87, 88, 89, - 90, 91, 92, 93, 0, 0, 0, 0, 0, 94, + 85, 86, 0, 0, 0, 0, 0, 87, 88, 89, + 90, 91, 92, 93, 94, 0, 0, 0, 0, 0, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 289, 80, 81, 82, 83, 0, 0, 0, 0, 0, - 0, 232, 233, 0, 0, 0, 84, 85, 0, 0, - 0, 0, 0, 86, 87, 88, 89, 90, 91, 92, - 93, 0, 0, 0, 0, 0, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 80, 81, 82, - 83, 0, 0, 0, 0, 0, 122, 0, 0, 0, - 0, 0, 84, 85, 0, 0, 0, 0, 0, 86, - 87, 88, 89, 90, 91, 92, 93, 0, 80, 81, - 82, 83, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 84, 85, 0, 0, 0, 0, 0, - 86, 87, 88, 89, 90, 91, 92, 93, 0, 0, - 0, 265, 0, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 80, 81, 82, 83, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 282, 84, - 85, 0, 0, 0, 0, 0, 86, 87, 88, 89, - 90, 91, 92, 93, 0, 0, 0, 0, 0, 94, + 105, 293, 81, 82, 83, 84, 0, 0, 0, 0, + 0, 0, 235, 236, 0, 0, 0, 85, 86, 0, + 0, 0, 0, 0, 87, 88, 89, 90, 91, 92, + 93, 94, 0, 0, 0, 0, 0, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 81, 82, + 83, 84, 0, 0, 0, 0, 0, 123, 0, 0, + 0, 0, 0, 85, 86, 0, 0, 0, 0, 0, + 87, 88, 89, 90, 91, 92, 93, 94, 0, 81, + 82, 83, 84, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 85, 86, 0, 0, 0, 0, + 0, 87, 88, 89, 90, 91, 92, 93, 94, 0, + 0, 0, 269, 0, 95, 96, 97, 98, 99, 100, + 101, 102, 103, 104, 105, 81, 82, 83, 84, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 286, + 85, 86, 0, 0, 0, 0, 0, 87, 88, 89, + 90, 91, 92, 93, 94, 0, 0, 0, 0, 0, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 80, 81, 82, 83, 0, 0, 0, 0, 0, 283, - 0, 0, 0, 0, 0, 84, 85, 0, 0, 0, - 0, 0, 86, 87, 88, 89, 90, 91, 92, 93, - 0, 80, 81, 82, 83, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 84, 85, 0, 0, - 0, 0, 0, 86, 87, 88, 89, 90, 91, 92, - 93, 0, 80, 81, 82, 83, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 84, 85, 0, - 0, 0, 0, 0, 86, 87, 88, 89, 90, 91, - 92, 93, 0, -142, 81, 82, 0, 0, 0, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 84, 85, - 0, 0, 81, 82, 0, -142, -142, -142, -142, -142, - -142, 92, 93, 0, 0, 0, 84, 0, 0, 0, - -142, 97, 98, 99, 100, 101, 102, 103, 104, 92, - 93, 0, 0, 0, 0, 0, 0, 0, 0, 97, - 98, 99, 100, 101, 102, 103, 104 + 105, 81, 82, 83, 84, 0, 0, 0, 0, 0, + 287, 0, 0, 0, 0, 0, 85, 86, 0, 0, + 0, 0, 0, 87, 88, 89, 90, 91, 92, 93, + 94, 0, 81, 82, 83, 84, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 85, 86, 0, + 0, 0, 0, 0, 87, 88, 89, 90, 91, 92, + 93, 94, 0, 81, 82, 83, 84, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 85, 86, + 0, 0, 0, 0, 0, 87, 88, 89, 90, 91, + 92, 93, 94, 0, -143, 82, 83, 0, 0, 0, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 85, + 86, 0, 0, 82, 83, 0, -143, -143, -143, -143, + -143, -143, 93, 94, 0, 0, 0, 85, 0, 0, + 0, -143, 98, 99, 100, 101, 102, 103, 104, 105, + 93, 94, 82, 83, 0, 0, 0, 0, 0, 0, + 98, 99, 100, 101, 102, 103, 104, 105, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, + 94, 0, 0, 0, 0, 0, 0, 0, 0, 98, + 99, 100, 101, 102, 103, 104, 105 }; static const yytype_int16 yycheck[] = { - 1, 171, 1, 123, 124, 140, 141, 11, 12, 10, - 7, 5, 13, 5, 45, 5, 17, 18, 29, 13, - 21, 13, 4, 13, 20, 4, 22, 45, 29, 135, - 31, 45, 28, 64, 15, 58, 56, 143, 61, 59, - 63, 0, 39, 55, 16, 57, 64, 55, 62, 57, - 170, 30, 54, 40, 41, 5, 43, 4, 4, 58, - 51, 52, 53, 54, 39, 200, 60, 61, 60, 61, - 60, 61, 40, 41, 75, 43, 58, 4, 248, 80, + 1, 1, 124, 125, 142, 143, 4, 11, 12, 10, + 7, 5, 13, 45, 5, 4, 17, 18, 29, 13, + 21, 20, 13, 22, 4, 45, 45, 136, 29, 28, + 31, 0, 64, 173, 58, 56, 145, 61, 59, 63, + 15, 30, 39, 62, 64, 51, 52, 53, 54, 16, + 172, 56, 54, 5, 40, 41, 39, 43, 58, 5, + 58, 13, 40, 41, 202, 43, 60, 61, 4, 60, + 61, 55, 27, 57, 75, 4, 58, 4, 58, 1, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 114, 56, 240, 241, 242, 27, 110, - 60, 61, 58, 109, 58, 4, 57, 1, 54, 62, - 121, 122, 59, 243, 125, 245, 59, 247, 59, 64, - 250, 45, 54, 137, 13, 44, 140, 141, 54, 135, - 57, 4, 44, 54, 62, 4, 54, 143, 4, 5, - 6, 7, 8, 56, 45, 56, 4, 5, 6, 7, - 8, 44, 59, 59, 59, 59, 286, 59, 54, 4, - 30, 59, 54, 29, 175, 171, 54, 54, 59, 180, - 114, 29, 229, 39, 248, 290, -1, 119, -1, -1, - -1, 39, 180, 194, 50, 196, 200, -1, -1, -1, - 56, -1, 58, -1, 60, 61, -1, 63, 56, -1, - 58, 212, 60, 61, -1, 63, 217, -1, -1, -1, - -1, 222, -1, 224, -1, -1, -1, -1, -1, -1, - -1, 232, 233, -1, 235, 236, 240, 241, 242, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 248, -1, -1, -1, -1, 258, -1, 260, - -1, -1, -1, -1, -1, -1, -1, 0, 1, -1, - -1, 4, 5, -1, 7, -1, 9, 10, 11, 12, - 13, -1, 283, 284, 285, 18, 19, 20, -1, -1, - 23, 24, 25, -1, 27, 296, -1, -1, 31, 32, - 33, 34, 35, 36, 37, 38, 39, -1, -1, 42, - -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, -1, 57, -1, 59, 60, 61, 62, - 1, 64, -1, 4, 10, 11, 7, -1, -1, -1, - -1, -1, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - -1, 37, 38, -1, -1, -1, -1, -1, 39, -1, - -1, 47, 48, 49, 50, 51, 52, 53, 54, -1, - -1, -1, -1 |