diff --git a/src/parser/xhpast/parser_nodes.php b/src/parser/xhpast/parser_nodes.php --- a/src/parser/xhpast/parser_nodes.php +++ b/src/parser/xhpast/parser_nodes.php @@ -118,5 +118,6 @@ 9111 => 'n_TRAIT_AS', 9112 => 'n_YIELD', 9113 => 'n_FINALLY', + 9114 => 'n_TRAIT_DECLARATION', ); } diff --git a/support/xhpast/generate_nodes.php b/support/xhpast/generate_nodes.php --- a/support/xhpast/generate_nodes.php +++ b/support/xhpast/generate_nodes.php @@ -1,126 +1,129 @@ -#!/usr/local/bin/php +#!/usr/bin/env php $value) { $hpp .= "#define {$node} {$value}\n"; } -file_put_contents('node_names.hpp', $hpp); -echo "Wrote C++ definition.\n"; +Filesystem::writeFile( + Filesystem::resolvePath('node_names.hpp', dirname(__FILE__)), + $hpp); +echo pht('Wrote C++ definition.')."\n"; $at = '@'; $php = @@ -142,5 +147,7 @@ } $php .= " );\n"; $php .= "}\n"; -file_put_contents('parser_nodes.php', $php); -echo "Wrote PHP definition.\n"; +Filesystem::writeFile( + Filesystem::resolvePath('parser_nodes.php', dirname(__FILE__)), + $php); +echo pht('Wrote PHP definition.')."\n"; diff --git a/support/xhpast/parser.y b/support/xhpast/parser.y --- a/support/xhpast/parser.y +++ b/support/xhpast/parser.y @@ -738,6 +738,18 @@ $$ = NNEW(n_STATEMENT)->appendChild($$); } +| trait_entry T_STRING '{' class_statement_list '}' { + $$ = NNEW(n_TRAIT_DECLARATION); + $$->appendChild(NNEW(n_CLASS_ATTRIBUTES)); + NMORE($$, $1); + $$->appendChild(NTYPE($2, n_CLASS_NAME)); + $$->appendChild(NNEW(n_EMPTY)); + $$->appendChild(NNEW(n_EMPTY)); + $$->appendChild(NEXPAND($3, $4, $5)); + NMORE($$, $5); + + $$ = NNEW(n_STATEMENT)->appendChild($$); + } ; class_entry_type: @@ -759,10 +771,6 @@ $$ = $2; } -| T_TRAIT { - $$ = NNEW(n_CLASS_ATTRIBUTES); - $$->appendChild(NTYPE($1, n_STRING)); - } ; extends_from: @@ -778,6 +786,10 @@ T_INTERFACE ; +trait_entry: + T_TRAIT +; + interface_extends_list: /* empty */ { $$ = NNEW(n_EMPTY); diff --git a/support/xhpast/parser.yacc.cpp b/support/xhpast/parser.yacc.cpp --- a/support/xhpast/parser.yacc.cpp +++ b/support/xhpast/parser.yacc.cpp @@ -566,16 +566,16 @@ /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 7827 +#define YYLAST 7887 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 165 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 131 +#define YYNNTS 132 /* YYNRULES -- Number of rules. */ -#define YYNRULES 433 +#define YYNRULES 434 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 893 +#define YYNSTATES 898 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ @@ -643,42 +643,42 @@ 517, 522, 527, 531, 535, 539, 545, 563, 580, 586, 590, 608, 616, 627, 628, 634, 637, 647, 651, 658, 670, 674, 681, 685, 689, 693, 696, 702, 717, 729, - 744, 748, 755, 762, 769, 772, 778, 782, 785, 793, - 796, 804, 807, 813, 816, 822, 823, 831, 832, 840, - 841, 849, 850, 858, 864, 875, 878, 888, 893, 905, - 908, 916, 926, 927, 931, 932, 940, 943, 953, 956, - 966, 969, 977, 980, 988, 989, 995, 1003, 1012, 1021, - 1029, 1037, 1046, 1056, 1068, 1071, 1074, 1077, 1083, 1084, - 1090, 1093, 1096, 1101, 1104, 1107, 1115, 1119, 1126, 1129, - 1133, 1140, 1148, 1156, 1164, 1175, 1178, 1184, 1192, 1196, - 1199, 1199, 1221, 1229, 1232, 1238, 1241, 1247, 1250, 1256, - 1260, 1267, 1270, 1276, 1284, 1288, 1295, 1299, 1305, 1313, - 1319, 1328, 1331, 1339, 1342, 1348, 1349, 1356, 1359, 1366, - 1370, 1376, 1377, 1378, 1379, 1380, 1381, 1385, 1392, 1399, - 1406, 1416, 1425, 1437, 1440, 1447, 1450, 1455, 1458, 1465, - 1473, 1479, 1489, 1503, 1508, 1514, 1520, 1526, 1532, 1538, - 1544, 1550, 1556, 1562, 1568, 1574, 1579, 1584, 1589, 1594, - 1600, 1606, 1612, 1618, 1624, 1630, 1636, 1642, 1668, 1674, - 1680, 1686, 1692, 1698, 1704, 1710, 1715, 1720, 1725, 1730, - 1736, 1742, 1748, 1754, 1760, 1766, 1772, 1778, 1784, 1785, - 1786, 1792, 1798, 1799, 1804, 1809, 1814, 1819, 1824, 1829, - 1834, 1839, 1844, 1848, 1849, 1850, 1851, 1856, 1862, 1876, - 1899, 1905, 1911, 1917, 1926, 1930, 1933, 1941, 1944, 1949, - 1953, 1962, 1967, 1974, 1980, 1989, 1998, 2007, 2016, 2024, - 2027, 2030, 2034, 2041, 2044, 2048, 2055, 2056, 2060, 2075, - 2079, 2082, 2088, 2094, 2097, 2101, 2109, 2112, 2118, 2121, - 2124, 2127, 2130, 2133, 2136, 2139, 2142, 2145, 2148, 2151, - 2157, 2158, 2159, 2163, 2167, 2172, 2177, 2182, 2187, 2191, - 2199, 2200, 2201, 2202, 2205, 2208, 2212, 2215, 2221, 2224, - 2228, 2239, 2246, 2253, 2263, 2264, 2268, 2272, 2276, 2280, - 2306, 2310, 2313, 2319, 2329, 2335, 2344, 2350, 2351, 2352, - 2358, 2359, 2374, 2379, 2387, 2391, 2397, 2406, 2407, 2408, - 2412, 2413, 2416, 2428, 2432, 2438, 2444, 2448, 2451, 2459, - 2462, 2468, 2469, 2473, 2479, 2485, 2489, 2493, 2499, 2502, - 2517, 2520, 2527, 2528, 2532, 2538, 2541, 2547, 2554, 2561, - 2568, 2575, 2582, 2589, 2596, 2606, 2616, 2626, 2629, 2632, - 2642, 2645, 2651, 2655, 2661, 2666, 2672, 2678, 2684, 2693, - 2698, 2706, 2715, 2720 + 741, 756, 760, 767, 777, 780, 786, 790, 794, 797, + 805, 808, 816, 819, 825, 828, 834, 835, 843, 844, + 852, 853, 861, 862, 870, 876, 887, 890, 900, 905, + 917, 920, 928, 938, 939, 943, 944, 952, 955, 965, + 968, 978, 981, 989, 992, 1000, 1001, 1007, 1015, 1024, + 1033, 1041, 1049, 1058, 1068, 1080, 1083, 1086, 1089, 1095, + 1096, 1102, 1105, 1108, 1113, 1116, 1119, 1127, 1131, 1138, + 1141, 1145, 1152, 1160, 1168, 1176, 1187, 1190, 1196, 1204, + 1208, 1211, 1211, 1233, 1241, 1244, 1250, 1253, 1259, 1262, + 1268, 1272, 1279, 1282, 1288, 1296, 1300, 1307, 1311, 1317, + 1325, 1331, 1340, 1343, 1351, 1354, 1360, 1361, 1368, 1371, + 1378, 1382, 1388, 1389, 1390, 1391, 1392, 1393, 1397, 1404, + 1411, 1418, 1428, 1437, 1449, 1452, 1459, 1462, 1467, 1470, + 1477, 1485, 1491, 1501, 1515, 1520, 1526, 1532, 1538, 1544, + 1550, 1556, 1562, 1568, 1574, 1580, 1586, 1591, 1596, 1601, + 1606, 1612, 1618, 1624, 1630, 1636, 1642, 1648, 1654, 1680, + 1686, 1692, 1698, 1704, 1710, 1716, 1722, 1727, 1732, 1737, + 1742, 1748, 1754, 1760, 1766, 1772, 1778, 1784, 1790, 1796, + 1797, 1798, 1804, 1810, 1811, 1816, 1821, 1826, 1831, 1836, + 1841, 1846, 1851, 1856, 1860, 1861, 1862, 1863, 1868, 1874, + 1888, 1911, 1917, 1923, 1929, 1938, 1942, 1945, 1953, 1956, + 1961, 1965, 1974, 1979, 1986, 1992, 2001, 2010, 2019, 2028, + 2036, 2039, 2042, 2046, 2053, 2056, 2060, 2067, 2068, 2072, + 2087, 2091, 2094, 2100, 2106, 2109, 2113, 2121, 2124, 2130, + 2133, 2136, 2139, 2142, 2145, 2148, 2151, 2154, 2157, 2160, + 2163, 2169, 2170, 2171, 2175, 2179, 2184, 2189, 2194, 2199, + 2203, 2211, 2212, 2213, 2214, 2217, 2220, 2224, 2227, 2233, + 2236, 2240, 2251, 2258, 2265, 2275, 2276, 2280, 2284, 2288, + 2292, 2318, 2322, 2325, 2331, 2341, 2347, 2356, 2362, 2363, + 2364, 2370, 2371, 2386, 2391, 2399, 2403, 2409, 2418, 2419, + 2420, 2424, 2425, 2428, 2440, 2444, 2450, 2456, 2460, 2463, + 2471, 2474, 2480, 2481, 2485, 2491, 2497, 2501, 2505, 2511, + 2514, 2529, 2532, 2539, 2540, 2544, 2550, 2553, 2559, 2566, + 2573, 2580, 2587, 2594, 2601, 2608, 2618, 2628, 2638, 2641, + 2644, 2654, 2657, 2663, 2667, 2673, 2678, 2684, 2690, 2696, + 2705, 2710, 2718, 2727, 2732 }; #endif @@ -728,13 +728,13 @@ "class_declaration_statement", "is_reference", "unticked_function_declaration_statement", "unticked_class_declaration_statement", "class_entry_type", - "extends_from", "interface_entry", "interface_extends_list", - "implements_list", "interface_list", "foreach_optional_arg", - "foreach_variable", "for_statement", "foreach_statement", - "declare_statement", "declare_list", "switch_case_list", "case_list", - "case_separator", "while_statement", "elseif_list", "new_elseif_list", - "else_single", "new_else_single", "parameter_list", - "non_empty_parameter_list", "optional_class_type", + "extends_from", "interface_entry", "trait_entry", + "interface_extends_list", "implements_list", "interface_list", + "foreach_optional_arg", "foreach_variable", "for_statement", + "foreach_statement", "declare_statement", "declare_list", + "switch_case_list", "case_list", "case_separator", "while_statement", + "elseif_list", "new_elseif_list", "else_single", "new_else_single", + "parameter_list", "non_empty_parameter_list", "optional_class_type", "function_call_parameter_list", "non_empty_function_call_parameter_list", "global_var_list", "global_var", "static_var_list", "class_statement_list", "class_statement", "$@1", "trait_use_statement", @@ -793,110 +793,110 @@ }; # endif -#define YYPACT_NINF -670 +#define YYPACT_NINF -625 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-670))) + (!!((Yystate) == (-625))) -#define YYTABLE_NINF -375 +#define YYTABLE_NINF -376 #define yytable_value_is_error(Yytable_value) \ - (!!((Yytable_value) == (-375))) + (!!((Yytable_value) == (-376))) /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ static const yytype_int16 yypact[] = { - -670, 39, 1878, -670, 6390, 6390, -100, 6390, 6390, 6390, - 6390, 6390, 6390, 6390, 510, 510, 6390, 6390, 6390, 6390, - 6390, 6390, 6390, 6390, 4818, 571, 6390, -90, -81, -670, - -670, 60, -670, -670, -670, 31, -670, 6390, 4678, -69, - -39, -35, 53, 76, 4949, 5080, 155, -670, 180, 5211, - 102, 6390, 9, -16, -11, 154, 158, 122, 141, 159, - 165, -670, -670, 168, 171, -670, -670, -670, -670, -670, - -670, -670, -670, -670, -7, -670, -670, 264, -670, -670, - 6390, 6521, -670, -670, 184, -75, -670, 8, -670, -670, - -670, -670, -670, -670, 277, 279, -670, -1, 322, 296, - 216, -670, -670, 6800, -670, 162, 1238, 212, -670, 227, - 310, 250, -670, -32, -670, 36, -670, -670, 313, 321, - -670, -670, -670, 280, 236, -670, 322, 7612, 7612, 6390, - 7612, 7612, 7712, -670, -670, 339, -670, -670, 239, 264, - 327, 93, 247, -670, -670, 248, -670, -670, -670, -670, - -670, -670, -670, -670, -670, 510, 7376, 230, 396, 254, - 264, 256, 263, 251, -670, 266, 288, -15, 36, -670, - 5342, -670, 6390, -670, 6390, 11, 7612, 328, 6390, 6390, - 6390, 341, 6390, -670, 6841, -670, 6882, 257, 405, -670, - 259, 7612, 86, -670, 6934, 264, 70, 13, -670, -670, - 238, 14, -670, 407, 15, 322, -670, -670, 510, 510, - 510, 267, 276, 4818, 264, -670, 72, 98, 57, 7417, - 1195, 271, 6975, 278, 2018, 6390, 352, 5473, 355, -670, - 314, 316, -670, -670, 0, 6390, -10, 6390, 6390, 6390, - 5604, 6390, 6390, 6390, 6390, 6390, 6390, 6390, 6390, 6390, - 6390, 6390, 6390, 6390, 6390, 6390, 6390, 6390, 6390, 6390, - 6390, 6390, 571, -670, -670, -670, 5735, 6390, 6390, 6390, - 6390, 6390, 6390, 6390, 6390, 6390, 6390, 6390, 5473, 6, - 6390, 49, 6390, 6390, 184, -18, 6390, 6390, 282, 7016, - 264, 103, 278, 43, 66, -670, -670, 5866, -670, 5997, - -670, 264, 256, 37, 5473, -670, 37, 49, -13, -670, - 7068, 7110, 7612, 283, 6390, -670, 286, 7151, 281, 441, - 7612, 357, 1561, 438, 20, 7201, -670, -670, -670, 7483, - -670, -670, 2158, -670, 84, 380, 9, -670, 6390, -670, - -670, -16, -670, 7483, 379, -670, 297, 21, -670, -670, - -670, 22, 299, 300, 298, -670, 24, -670, 302, 115, - 1598, -670, -670, 5473, 6390, -670, -670, -670, 304, -670, - -670, -670, -670, -670, 989, -670, 510, 307, 459, 26, - 931, 455, -20, 349, -20, 312, 319, 195, 315, 320, - 329, -13, 36, 7652, 7689, 7712, 6390, 7540, 7757, 7778, - 4871, 5002, 1730, 1870, 1870, 1870, 1870, 1008, 1008, 1008, - 1008, 498, 498, 269, 269, 269, 339, 339, 339, -670, - -31, 7712, 7712, 7712, 7712, 7712, 7712, 7712, 7712, 7712, - 7712, 7712, 7712, 334, 336, 340, 335, -670, 6390, -670, - 342, -9, -670, 337, 1302, 343, 344, -670, 107, 320, - 336, 510, 7612, 510, 7475, 256, -670, 345, -670, -670, - -670, 3978, -670, 7612, 6390, 4118, 6390, 6390, 510, 294, - 7483, 401, 4258, 1, 7483, 7483, 7483, -670, 348, 358, - 264, -60, 369, -670, -670, -670, 398, 442, -670, -670, - 1514, -670, -670, 505, 195, 510, 359, 510, -670, -670, - -670, 276, 276, 512, -670, 5473, -670, 1738, 364, 111, - 1215, 370, -670, -670, -670, 6128, 7483, 377, 264, 256, - -670, -20, 371, 523, -670, -670, 195, -670, -670, 378, - 528, 61, -670, -670, 5473, 5473, -13, 7735, 6390, 571, - -670, -670, 5473, 5473, -670, 6664, 5473, 483, 485, -670, - 6390, 6390, -670, -670, -670, -670, -670, -670, 6259, -670, - 426, -670, -670, 7243, -670, -670, -670, 392, 7612, 429, - 510, 429, -670, -670, 542, -670, -670, -670, 399, 402, - -670, -670, -670, 431, 394, 553, 7483, 264, 51, 490, - 406, -670, -670, 7483, 408, -670, -670, -670, 28, -670, - 6390, 412, -670, -670, 413, 510, 32, 1063, -670, 264, - 256, 523, -670, -20, 588, 418, 465, 88, 491, 565, - 420, 421, 7735, 251, 425, 427, -670, 428, 6390, 6390, - 466, 430, 6705, 510, 7612, 49, -670, 3838, 215, 432, - 2298, 6390, 294, 434, -670, 437, 7483, 2438, -670, 245, - -670, 97, 7483, -670, 7483, -670, 439, 80, -670, -20, - -670, 465, -670, 7712, -670, -670, -670, 256, 877, -670, - 516, -20, -670, -670, -670, -670, -670, -670, -670, -670, - -670, -670, 530, 280, 192, -670, 16, 445, 449, 448, - 126, 590, 7483, -670, -670, -670, -670, -670, -670, 446, - 447, 49, -670, -670, -670, -670, -670, 219, 456, 4678, - -670, -670, 453, 461, -670, 4398, 4398, -670, 464, 260, - 467, 6390, 12, 130, -670, -670, 496, -670, 540, 468, - -670, 612, 4, -670, 617, 18, -670, -670, 558, -670, - -670, 167, -670, 559, 620, 7483, -670, -670, -670, 342, - 478, 614, 572, 6390, -670, -670, 4538, -670, -670, -670, - -670, -670, 488, -670, 6746, -670, -670, -670, -670, 7483, - 494, -670, 7483, -20, -670, -6, -670, 7483, 575, -670, - 322, 643, 2578, 582, -670, 33, 2718, 649, 7483, -670, - -670, 6390, -670, 504, 7284, -670, -670, -670, 2858, -670, - -670, 3838, -670, 506, 2998, -670, -670, 576, 503, -6, - -670, 511, 579, 525, 515, 533, -670, 666, 609, 7483, - -670, -670, 177, -670, -670, 7483, -670, 7334, 3838, -670, - 4678, 3138, 534, 3838, -670, -670, -670, -670, -670, 597, - -20, -670, 610, 7483, 527, -670, 613, -670, -670, 670, - -670, 544, -670, 3278, 639, 640, 707, -670, -670, -670, - 195, -670, -670, -670, 616, -670, -20, 564, 3838, 568, - 560, 616, -670, -670, 160, -20, 566, -670, -670, -670, - -670, -670, 653, -670, 3418, 577, 3558, -670, 569, -670, - -670, 3698, -670 + -625, 89, 1866, -625, 6378, 6378, -67, 6378, 6378, 6378, + 6378, 6378, 6378, 6378, 273, 273, 6378, 6378, 6378, 6378, + 6378, 6378, 6378, 6378, 4806, 306, 6378, -57, -55, -625, + -625, 87, -625, -625, -625, 64, -625, 6378, 4666, 11, + 35, 44, 70, 72, 4937, 5068, 118, -625, 134, 5199, + -18, 6378, -13, -8, 15, 119, 125, 85, 97, 99, + 105, -625, -625, 107, 115, -625, -625, -625, -625, -625, + -625, -625, -625, -625, -27, -625, -625, 206, -625, -625, + 6378, 6509, -625, -625, 121, 109, -625, 10, -625, -625, + -625, -625, -625, -625, 219, 228, 248, -625, 169, 296, + 272, 198, -625, -625, 6872, -625, 255, 982, 187, -625, + 217, 278, 240, -625, -28, -625, -7, -625, -625, 307, + 320, -625, -625, -625, 279, 235, -625, 296, 7695, 7695, + 6378, 7695, 7695, 7795, -625, -625, 352, -625, -625, 252, + 206, 344, 71, 264, -625, -625, 271, -625, -625, -625, + -625, -625, -625, -625, -625, -625, 273, 7457, 253, 412, + 274, 206, 275, 277, 265, -625, 283, 305, -16, -7, + -625, 5330, -625, 6378, -625, 6378, 12, 7695, 347, 6378, + 6378, 6378, 360, 6378, -625, 6924, -625, 6965, 280, 421, + -625, 286, 7695, 1455, -625, 7006, 206, -14, 13, -625, + -625, 167, 14, -625, 424, 18, 296, -625, -625, 273, + 273, 273, 290, 196, 4806, 206, -625, -52, 123, 179, + 7498, 1295, 291, 7058, 292, 2006, 6378, 365, 5461, 366, + -625, 330, 331, 294, -625, -625, -4, 6378, 27, 6378, + 6378, 6378, 5592, 6378, 6378, 6378, 6378, 6378, 6378, 6378, + 6378, 6378, 6378, 6378, 6378, 6378, 6378, 6378, 6378, 6378, + 6378, 6378, 6378, 6378, 306, -625, -625, -625, 5723, 6378, + 6378, 6378, 6378, 6378, 6378, 6378, 6378, 6378, 6378, 6378, + 5461, 45, 6378, 20, 6378, 6378, 121, 1, 6378, 6378, + 298, 7099, 206, 108, 292, 46, 50, -625, -625, 5854, + -625, 5985, -625, 206, 275, 31, 5461, -625, 31, 20, + -9, -625, 7140, 7191, 7695, 299, 6378, -625, 304, 7232, + 308, 462, 7695, 379, 704, 461, 8, 7273, -625, -625, + -625, 7566, -625, -625, 2146, -625, 49, 402, -13, -625, + 6378, -625, -625, -8, -625, 7566, 401, -625, 319, 28, + -625, -625, -625, 29, 322, 323, 321, -625, 33, -625, + 325, 142, 1586, -625, -625, 5461, 6378, -625, -625, -625, + 332, -625, -625, -625, -625, -625, 1236, -625, 273, 335, + 492, 36, 942, 476, 63, 382, 63, 349, -625, 355, + 183, 350, 359, 361, -9, -7, 7735, 7772, 7795, 6378, + 7623, 7817, 7838, 4859, 4990, 1718, 1858, 1858, 1858, 1858, + 1472, 1472, 1472, 1472, 791, 791, 342, 342, 342, 352, + 352, 352, -625, 2, 7795, 7795, 7795, 7795, 7795, 7795, + 7795, 7795, 7795, 7795, 7795, 7795, 367, 363, 376, 356, + -625, 6378, -625, 377, 0, -625, 372, 6652, 375, 380, + -625, 153, 359, 363, 273, 7695, 273, 7558, 275, -625, + 381, -625, -625, -625, 3966, -625, 7695, 6378, 4106, 6378, + 6378, 273, 73, 7566, 452, 4246, 16, 7566, 7566, 7566, + -625, 383, 394, 206, -19, 403, -625, -625, -625, 442, + 477, -625, -625, 6693, -625, -625, 536, 183, 273, 400, + 273, -625, -625, -625, 196, 196, 548, -625, 5461, -625, + 1726, 404, 190, 1443, 405, -625, -625, -625, 6116, 7566, + 414, 206, 275, -625, 63, 407, 558, -625, -625, 444, + 183, -625, -625, 410, 562, 40, -625, -625, 5461, 5461, + -9, 1525, 6378, 306, -625, -625, 5461, 5461, -625, 6734, + 5461, 508, 511, -625, 6378, 6378, -625, -625, -625, -625, + -625, -625, 6247, -625, 451, -625, -625, 7324, -625, -625, + -625, 416, 7695, 457, 273, 457, -625, -625, 564, -625, + -625, -625, 426, 427, -625, -625, -625, 464, 435, 592, + 7566, 206, 67, 529, 445, -625, -625, 7566, 448, -625, + -625, -625, 37, -625, 6378, 450, -625, -625, 453, 273, + 47, 959, -625, 206, 275, 558, -625, 63, 481, 531, + 63, -625, -625, -625, -625, -625, -625, -625, -625, -625, + -625, 535, 279, 137, -625, 25, 456, 504, 210, 537, + 603, 459, 463, 1525, 265, 465, 466, -625, 469, 6378, + 6378, 496, 467, 6788, 273, 7695, 20, -625, 3826, 244, + 472, 2286, 6378, 73, 470, -625, 478, 7566, 2426, -625, + 310, -625, -23, 7566, -625, 7566, -625, 479, 75, -625, + 63, -625, 504, -625, 7795, -625, -625, -625, 275, 652, + -625, -625, 610, 3, -625, 622, 26, -625, -625, 563, + -625, 480, 482, 485, 56, 626, 7566, -625, -625, -625, + -625, -625, -625, 483, 488, 20, -625, -625, -625, -625, + -625, 288, 491, 4666, -625, -625, 493, 495, -625, 4386, + 4386, -625, 497, 317, 498, 6378, -3, -15, -625, -625, + 539, -625, 585, 501, -625, 7566, 63, -625, 68, -625, + 7566, 590, -625, 296, 654, -625, 65, -625, 594, 657, + 7566, -625, -625, -625, 377, 513, 646, 605, 6378, -625, + -625, 4526, -625, -625, -625, -625, -625, 516, -625, 6831, + -625, -625, -625, -625, 7566, 514, -625, -625, -625, 586, + 518, 68, -625, 521, 591, 533, 523, 541, -625, 675, + 616, 7566, 2566, 615, -625, 51, 2706, 679, 7566, -625, + -625, 6378, -625, 538, 7365, -625, -625, -625, 2846, -625, + -625, 3826, -625, 532, 2986, -625, -625, -625, 284, 63, + -625, 623, 7566, 542, -625, -625, -625, 76, -625, -625, + 7566, -625, 7406, 3826, -625, 4666, 3126, 543, 3826, -625, + -625, 628, 629, 687, -625, -625, -625, 183, 630, -625, + -625, 680, -625, 547, -625, 3266, -625, 63, 549, -625, + -625, -625, 607, -625, 192, 3826, 552, 556, 607, -625, + -625, -625, -625, 63, 553, -625, -625, 3406, 640, -625, + -625, 557, 3546, 568, -625, -625, 3686, -625 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -906,132 +906,132 @@ { 4, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 405, 0, 0, 313, 0, 318, - 319, 5, 340, 387, 52, 320, 272, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 284, 0, 0, - 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, - 0, 80, 86, 0, 0, 324, 325, 327, 321, 322, - 32, 33, 34, 329, 0, 328, 323, 0, 83, 326, - 277, 0, 59, 25, 398, 342, 3, 0, 7, 30, - 8, 9, 73, 74, 0, 0, 355, 0, 75, 379, - 0, 345, 273, 0, 354, 0, 356, 0, 383, 0, - 378, 360, 377, 380, 386, 0, 262, 258, 274, 275, - 259, 341, 5, 299, 0, 277, 75, 417, 418, 0, - 420, 421, 276, 245, 246, 247, 248, 299, 0, 0, - 0, 300, 0, 226, 358, 0, 228, 263, 264, 265, - 266, 267, 268, 269, 271, 0, 410, 0, 348, 0, - 0, 300, 306, 316, 307, 0, 309, 380, 0, 213, - 0, 270, 0, 31, 389, 0, 204, 0, 0, 205, - 0, 0, 0, 42, 0, 44, 0, 0, 0, 46, - 355, 0, 356, 25, 0, 0, 18, 0, 17, 148, - 0, 0, 147, 153, 0, 75, 81, 82, 0, 0, - 0, 0, 404, 405, 0, 4, 0, 344, 355, 0, - 356, 0, 0, 259, 0, 0, 0, 139, 0, 15, - 84, 87, 54, 76, 0, 389, 0, 0, 0, 0, + 0, 0, 0, 0, 406, 0, 0, 314, 0, 319, + 320, 5, 341, 388, 52, 321, 273, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 285, 0, 0, + 0, 0, 0, 0, 300, 0, 0, 0, 0, 0, + 0, 81, 86, 0, 0, 325, 326, 328, 322, 323, + 32, 33, 34, 330, 0, 329, 324, 0, 87, 327, + 278, 0, 59, 25, 399, 343, 3, 0, 7, 30, + 8, 9, 73, 74, 0, 0, 0, 356, 0, 75, + 380, 0, 346, 274, 0, 355, 0, 357, 0, 384, + 0, 379, 361, 378, 381, 387, 0, 263, 259, 275, + 276, 260, 342, 5, 300, 0, 278, 75, 418, 419, + 0, 421, 422, 277, 246, 247, 248, 249, 300, 0, + 0, 0, 301, 0, 227, 359, 0, 229, 264, 265, + 266, 267, 268, 269, 270, 272, 0, 411, 0, 349, + 0, 0, 301, 307, 317, 308, 0, 310, 381, 0, + 214, 0, 271, 0, 31, 390, 0, 205, 0, 0, + 206, 0, 0, 0, 42, 0, 44, 0, 0, 0, + 46, 356, 0, 357, 25, 0, 0, 18, 0, 17, + 149, 0, 0, 148, 154, 0, 75, 82, 83, 0, + 0, 0, 0, 405, 406, 0, 4, 0, 345, 356, + 0, 357, 0, 0, 260, 0, 0, 0, 140, 0, + 15, 84, 88, 0, 54, 76, 0, 390, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 53, 225, 227, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 139, 0, - 389, 0, 389, 0, 399, 382, 389, 389, 0, 0, - 0, 302, 0, 0, 0, 414, 357, 0, 430, 349, - 406, 0, 302, 0, 139, 431, 0, 0, 382, 314, - 0, 0, 390, 0, 0, 51, 0, 0, 0, 206, - 208, 355, 356, 0, 0, 0, 43, 45, 62, 0, - 47, 48, 0, 61, 20, 0, 0, 14, 0, 149, - 356, 0, 49, 0, 0, 50, 0, 0, 70, 72, - 422, 0, 0, 0, 0, 402, 0, 401, 0, 343, - 0, 11, 4, 139, 0, 425, 424, 381, 0, 35, - 24, 26, 27, 28, 0, 6, 0, 0, 138, 355, - 356, 0, 0, 89, 0, 0, 0, 134, 0, 432, - 372, 370, 0, 231, 233, 232, 0, 0, 229, 230, - 234, 236, 235, 251, 252, 249, 250, 253, 254, 255, - 256, 243, 244, 238, 239, 237, 240, 241, 242, 257, - 0, 210, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 0, 433, 373, 0, 396, 0, 392, - 369, 391, 395, 0, 0, 0, 0, 419, 301, 0, - 0, 0, 409, 0, 408, 301, 372, 0, 373, 311, - 315, 0, 428, 203, 0, 0, 205, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 346, 320, 0, 0, - 0, 331, 0, 330, 23, 338, 0, 0, 19, 16, - 0, 146, 154, 151, 134, 0, 0, 0, 415, 416, - 10, 404, 404, 0, 429, 139, 13, 0, 0, 355, - 356, 0, 388, 142, 291, 0, 0, 0, 0, 303, - 85, 0, 0, 88, 91, 156, 134, 136, 137, 0, - 124, 0, 135, 376, 139, 139, 371, 261, 0, 0, - 211, 298, 139, 139, 375, 0, 139, 368, 367, 362, - 389, 0, 384, 385, 427, 426, 413, 412, 0, 317, - 308, 25, 116, 0, 25, 114, 38, 0, 207, 93, - 0, 93, 95, 103, 0, 25, 101, 58, 109, 109, - 41, 334, 335, 353, 0, 348, 346, 0, 333, 0, - 0, 21, 150, 0, 0, 71, 55, 423, 0, 400, - 0, 0, 12, 293, 0, 0, 355, 356, 22, 0, - 305, 90, 156, 0, 187, 0, 285, 134, 0, 126, - 0, 0, 260, 316, 0, 0, 397, 0, 389, 389, - 359, 0, 0, 0, 407, 0, 310, 118, 120, 0, - 0, 205, 0, 0, 96, 0, 0, 0, 109, 0, - 109, 0, 0, 337, 349, 347, 0, 332, 339, 0, - 152, 285, 403, 209, 292, 29, 145, 304, 187, 92, - 0, 0, 194, 195, 196, 193, 192, 191, 186, 79, - 155, 159, 0, 0, 185, 189, 0, 0, 0, 0, - 0, 127, 0, 294, 297, 212, 295, 296, 366, 0, - 0, 0, 361, 393, 394, 411, 312, 122, 0, 0, - 36, 39, 0, 0, 94, 0, 0, 104, 0, 0, - 0, 0, 0, 0, 105, 352, 351, 336, 0, 0, - 78, 0, 0, 163, 199, 0, 160, 190, 0, 158, - 25, 0, 25, 0, 130, 0, 129, 364, 365, 369, - 0, 0, 0, 0, 121, 115, 0, 25, 99, 57, - 56, 102, 0, 107, 0, 112, 113, 25, 106, 0, - 0, 25, 0, 0, 165, 167, 162, 0, 0, 157, - 75, 0, 0, 0, 289, 0, 0, 131, 0, 128, - 363, 0, 25, 0, 0, 25, 97, 40, 0, 108, - 25, 111, 350, 0, 0, 202, 164, 5, 0, 168, - 169, 0, 0, 177, 0, 0, 200, 197, 0, 0, - 77, 290, 0, 286, 278, 0, 133, 0, 123, 37, - 0, 0, 0, 110, 25, 279, 166, 170, 171, 181, - 0, 172, 0, 0, 0, 201, 0, 287, 132, 0, - 117, 0, 100, 0, 0, 180, 173, 174, 178, 198, - 134, 288, 25, 98, 64, 179, 0, 0, 119, 0, - 65, 63, 67, 175, 0, 0, 0, 60, 68, 183, - 25, 161, 0, 25, 0, 0, 0, 184, 0, 66, - 25, 0, 69 + 0, 0, 0, 0, 0, 53, 226, 228, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 140, 0, 390, 0, 390, 0, 400, 383, 390, 390, + 0, 0, 0, 303, 0, 0, 0, 415, 358, 0, + 431, 350, 407, 0, 303, 0, 140, 432, 0, 0, + 383, 315, 0, 0, 391, 0, 0, 51, 0, 0, + 0, 207, 209, 356, 357, 0, 0, 0, 43, 45, + 62, 0, 47, 48, 0, 61, 20, 0, 0, 14, + 0, 150, 357, 0, 49, 0, 0, 50, 0, 0, + 70, 72, 423, 0, 0, 0, 0, 403, 0, 402, + 0, 344, 0, 11, 4, 140, 0, 426, 425, 382, + 0, 35, 24, 26, 27, 28, 0, 6, 0, 0, + 139, 356, 357, 0, 0, 90, 0, 0, 157, 0, + 135, 0, 433, 373, 371, 0, 232, 234, 233, 0, + 0, 230, 231, 235, 237, 236, 252, 253, 250, 251, + 254, 255, 256, 257, 244, 245, 239, 240, 238, 241, + 242, 243, 258, 0, 211, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 0, 434, 374, 0, + 397, 0, 393, 370, 392, 396, 0, 0, 0, 0, + 420, 302, 0, 0, 0, 410, 0, 409, 302, 373, + 0, 374, 312, 316, 0, 429, 204, 0, 0, 206, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 347, + 321, 0, 0, 0, 332, 0, 331, 23, 339, 0, + 0, 19, 16, 0, 147, 155, 152, 135, 0, 0, + 0, 416, 417, 10, 405, 405, 0, 430, 140, 13, + 0, 0, 356, 357, 0, 389, 143, 292, 0, 0, + 0, 0, 304, 85, 0, 0, 89, 92, 157, 188, + 135, 137, 138, 0, 125, 0, 136, 377, 140, 140, + 372, 262, 0, 0, 212, 299, 140, 140, 376, 0, + 140, 369, 368, 363, 390, 0, 385, 386, 428, 427, + 414, 413, 0, 318, 309, 25, 117, 0, 25, 115, + 38, 0, 208, 94, 0, 94, 96, 104, 0, 25, + 102, 58, 110, 110, 41, 335, 336, 354, 0, 349, + 347, 0, 334, 0, 0, 21, 151, 0, 0, 71, + 55, 424, 0, 401, 0, 0, 12, 294, 0, 0, + 356, 357, 22, 0, 306, 91, 157, 0, 188, 0, + 0, 195, 196, 197, 194, 193, 192, 187, 80, 156, + 160, 0, 0, 186, 190, 0, 0, 286, 135, 0, + 127, 0, 0, 261, 317, 0, 0, 398, 0, 390, + 390, 360, 0, 0, 0, 408, 0, 311, 119, 121, + 0, 0, 206, 0, 0, 97, 0, 0, 0, 110, + 0, 110, 0, 0, 338, 350, 348, 0, 333, 340, + 0, 153, 286, 404, 210, 293, 29, 146, 305, 188, + 93, 79, 0, 0, 164, 200, 0, 161, 191, 0, + 159, 0, 0, 0, 0, 128, 0, 295, 298, 213, + 296, 297, 367, 0, 0, 0, 362, 394, 395, 412, + 313, 123, 0, 0, 36, 39, 0, 0, 95, 0, + 0, 105, 0, 0, 0, 0, 0, 0, 106, 353, + 352, 337, 0, 0, 78, 0, 0, 166, 168, 163, + 0, 0, 158, 75, 0, 25, 0, 25, 0, 131, + 0, 130, 365, 366, 370, 0, 0, 0, 0, 122, + 116, 0, 25, 100, 57, 56, 103, 0, 108, 0, + 113, 114, 25, 107, 0, 0, 25, 203, 165, 5, + 0, 169, 170, 0, 0, 178, 0, 0, 201, 198, + 0, 0, 0, 0, 290, 0, 0, 132, 0, 129, + 364, 0, 25, 0, 0, 25, 98, 40, 0, 109, + 25, 112, 351, 0, 0, 167, 171, 172, 182, 0, + 173, 0, 0, 0, 202, 77, 291, 0, 287, 279, + 0, 134, 0, 124, 37, 0, 0, 0, 111, 25, + 280, 0, 181, 174, 175, 179, 199, 135, 0, 288, + 133, 0, 118, 0, 101, 0, 180, 0, 0, 289, + 25, 99, 64, 176, 0, 120, 0, 65, 63, 67, + 184, 25, 162, 0, 0, 60, 68, 0, 0, 25, + 185, 0, 0, 0, 66, 25, 0, 69 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -670, -670, -180, -5, -670, -670, 411, -670, -26, -670, - 23, -670, -670, -670, -670, -136, -670, 242, 3, 5, - -125, -670, -670, -670, -670, -670, -670, -670, 222, 173, - 106, -670, 35, -670, -670, -670, -430, -8, -670, -670, - -670, -670, -670, -480, -670, 132, -207, -670, -670, 414, - -670, 145, -670, -670, -670, -670, -670, -670, -670, -56, - -670, -670, -670, -670, -670, -670, -670, -670, -670, -670, - -669, -670, -670, -670, -455, -670, 117, 677, -2, 99, - -670, -670, 100, -249, -260, -670, -670, -670, -670, 136, - 634, -286, -670, -670, 175, 178, -670, 886, 573, -358, - 318, 994, -670, -670, -670, -670, 27, -219, -670, 223, - -670, -670, -22, -17, -670, -231, -301, -670, -670, -12, - 270, 273, 552, -670, -670, -670, -670, -670, -670, -44, - -670 + -625, -625, -185, -12, -625, -625, 393, -625, -138, -625, + 23, -625, -625, -625, -625, -143, -625, 239, 5, 6, + -126, -625, -625, -625, -625, -625, -625, -625, -625, 215, + 165, 78, -625, 17, -625, -625, -625, -559, -37, -625, + -625, -625, -625, -625, -482, -625, 106, -230, -625, -625, + 406, -625, -450, -625, -625, -625, -625, -625, -625, -625, + -46, -625, -625, -625, -625, -625, -625, -625, -625, -625, + -625, -624, -625, -625, -625, -457, -625, 34, 669, -2, + 86, -625, -625, 24, -356, -247, -625, -625, -625, -625, + 114, 741, -302, -625, -625, 170, 181, -625, 888, 570, + -368, 362, 872, -625, -625, -625, -625, 9, -211, -625, + 835, -625, -625, -20, -11, -625, -231, -305, -625, -625, + -6, 276, 270, 567, -625, -625, -625, -625, -625, -625, + -49, -625 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 2, 85, 86, 197, 198, 87, 224, 370, - 371, 89, 870, 877, 871, 872, 347, 348, 372, 373, - 234, 92, 93, 94, 383, 95, 385, 522, 523, 643, - 571, 797, 759, 577, 324, 580, 649, 767, 566, 638, - 707, 710, 752, 529, 530, 531, 377, 378, 201, 202, - 204, 614, 680, 780, 681, 732, 776, 808, 809, 810, - 811, 856, 812, 813, 814, 854, 881, 682, 683, 684, - 685, 735, 686, 175, 318, 319, 96, 97, 126, 689, - 785, 99, 100, 532, 163, 164, 560, 636, 171, 305, - 101, 583, 485, 102, 584, 300, 585, 103, 104, 295, - 105, 106, 630, 702, 547, 548, 549, 107, 108, 109, - 110, 111, 112, 113, 114, 313, 440, 441, 442, 115, - 356, 357, 157, 158, 116, 351, 117, 118, 119, 120, - 121 + -1, 1, 2, 85, 86, 198, 199, 87, 225, 372, + 373, 89, 877, 885, 878, 879, 349, 350, 374, 375, + 236, 92, 93, 94, 385, 95, 96, 387, 525, 526, + 664, 575, 817, 774, 581, 326, 584, 670, 782, 570, + 659, 721, 724, 767, 533, 534, 535, 379, 380, 202, + 203, 205, 529, 629, 753, 630, 693, 749, 790, 791, + 792, 793, 853, 794, 795, 796, 851, 882, 631, 632, + 633, 634, 696, 635, 176, 320, 321, 97, 98, 127, + 703, 805, 100, 101, 536, 164, 165, 564, 657, 172, + 307, 102, 587, 488, 103, 588, 302, 589, 104, 105, + 297, 106, 107, 651, 716, 551, 552, 553, 108, 109, + 110, 111, 112, 113, 114, 115, 315, 443, 444, 445, + 116, 358, 359, 158, 159, 117, 353, 118, 119, 120, + 121, 122 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1039,1299 +1039,1330 @@ number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 98, 288, 419, 166, 388, 90, 459, 91, 167, 141, - 141, 567, 773, 168, 594, 737, 228, 390, 513, 314, - 161, 336, 341, 344, 738, 88, 778, 578, 471, 495, - 497, 282, 502, 539, -140, 360, 502, 223, 765, 3, - -143, 822, 122, 484, 33, 282, 615, 196, 282, 436, - 282, 443, 205, 122, 550, 445, 446, 492, 129, 199, - 435, 177, 439, 389, 203, 33, 122, 807, 170, 216, - -300, 433, 217, 386, 390, 435, 226, 172, 137, 434, - 346, 33, 122, 227, 456, -300, 173, 458, 439, 178, - 47, 226, 618, 556, 174, 557, 292, 457, 285, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 33, 33, -374, 142, 142, 449, 138, 33, 179, - 139, 205, 437, 180, 33, 162, -370, 140, 517, 283, - -374, 518, 84, 520, 291, 524, 619, -358, -358, 450, - -371, 33, 517, 283, 214, 518, 283, 200, 283, 651, - 141, 308, 551, 84, 215, 302, 508, 743, 387, 232, - 195, 122, 579, 335, 774, 775, 190, 332, 229, 84, - 855, 315, 766, 337, 342, 345, 739, 487, 779, 472, - 496, 498, 507, 503, 573, -140, 713, 662, 581, 582, - 334, -143, 823, 721, 722, 141, -302, 218, 783, 284, - 84, 744, 226, 141, 141, 141, 84, 141, 846, 359, - 438, 181, 84, 264, 265, 527, -280, -280, 719, 391, - 723, 226, 98, 226, 392, -301, 721, 722, 187, 84, - 608, 226, 361, 362, 182, 226, 517, 145, 145, 518, - 166, 528, 784, -302, 226, 167, 331, 666, 165, 226, - 168, 227, 847, 188, 226, 142, 363, 161, 226, 724, - -301, 363, 391, 193, 391, 505, 226, 392, 122, 392, - -282, -282, 524, 505, 206, 705, 391, 391, 207, 623, - 208, 392, 392, 708, 709, 448, 391, 750, 751, 391, - 391, 392, 768, -188, 392, 392, 455, 321, 601, 209, - 142, 672, 673, 674, 675, 676, 677, 660, 142, 142, - 142, 122, 142, 33, 259, 260, 261, 210, 262, 631, - 879, 880, 527, 211, 481, 570, 212, 620, 621, 213, - 98, 196, 143, 146, 706, 624, 625, 122, 481, 627, - 720, 721, 722, 517, 379, 225, 518, 137, 528, 122, - 230, 33, 231, 233, -125, 762, 721, 722, 98, 235, - 717, 236, 162, 90, 669, 91, 725, 122, 726, 33, - 278, 141, 279, 280, 281, 536, 286, 519, 145, 519, - 867, 47, 519, 88, 287, 137, 138, 214, 262, 139, - 290, 25, 293, 294, 298, 379, 140, 699, 700, 338, - 749, 84, 354, 137, 299, 301, 746, 226, 303, 304, - 728, 306, 307, 316, 323, 141, 439, 328, 329, 330, - 343, 379, 733, 145, 138, 375, 353, 139, 381, 482, - 365, 145, 145, 145, 140, 145, 382, 367, 384, 84, - 387, 466, 138, 482, 464, 139, 141, 462, 141, 467, - 468, 470, 140, 488, 493, 494, 501, 84, 499, 789, - 500, 504, 511, 141, 141, 481, 514, 515, 516, 481, - 481, 481, 521, 525, 574, 588, 142, 526, 534, 533, - 379, 509, 439, 802, 562, 165, 805, 535, 565, 519, - 141, 816, 141, 541, 542, 576, 141, 141, 543, 544, - 546, 552, 826, 590, 559, 98, 586, 554, 555, 587, - 90, 481, 91, 610, 589, 591, 519, 166, 593, 596, - 142, 519, 167, 603, 806, 600, 815, 168, 609, 604, - 88, 613, 612, 845, 161, 637, 617, 616, 640, 848, - 256, 257, 258, 259, 260, 261, 628, 262, 629, 647, - 635, 142, 641, 142, 642, 646, 652, 859, 653, 648, - 815, 654, 650, 658, 659, 141, 691, 661, 142, 142, - 482, 664, 688, 665, 482, 482, 482, 687, 692, 693, - 694, 481, 657, 122, 696, 33, 697, 698, 481, 731, - 701, 857, 711, 715, 703, 142, 716, 142, 727, 145, - 141, 142, 142, 745, 667, 734, 740, 741, 519, 742, - 747, 748, 519, 755, 753, 770, 482, 873, 391, 137, - 756, 769, 379, 392, 761, 772, 882, 763, 141, 771, - 777, 781, 606, 788, 787, 98, 791, 141, 98, 162, - 792, 481, 793, 145, 122, 98, 33, 481, 799, 481, - 817, 379, 379, 803, 519, 818, 819, 821, 138, 379, - 379, 139, 825, 379, 829, 836, 519, 834, 140, -176, - 142, 838, 839, 84, 145, 841, 145, 840, 842, 843, - 137, 736, 844, 858, 391, 860, 482, 481, 861, 392, - 670, 145, 145, 482, 852, 671, 862, 672, 673, 674, - 675, 676, 677, 678, 863, 142, 672, 673, 674, 675, - 676, 677, 865, -182, 782, 866, 786, 876, 145, 159, - 145, 869, 160, 874, 145, 145, 875, 883, 885, 140, - 890, 798, 754, 142, 84, 878, 888, 595, 758, 758, - 481, 801, 142, 611, 645, 804, 482, 489, 714, 690, - 679, 760, 482, 837, 482, 491, 800, 668, 221, 695, - 729, 656, 165, 655, 481, 358, 828, 481, 519, 831, - 519, 598, 481, 339, 833, 599, 790, 0, 0, 796, - 98, 0, 0, 481, 98, 0, 0, 0, 0, 0, - 0, 0, 482, 145, 0, 0, 98, 0, 0, 98, - 0, 0, 98, 0, 519, 0, 0, 0, 853, 0, - 0, 0, 0, 0, 481, 0, 0, 0, 0, 0, - 481, 0, 0, 0, 0, 0, 98, 0, 145, 98, - 0, 98, 0, 0, 0, 519, 868, 0, 481, 0, - 0, 0, 0, 0, 0, 482, 0, 0, 0, 0, - 0, 98, 0, 850, 884, 519, 145, 886, 0, 0, - 0, 519, 0, 0, 891, 145, 98, 0, 0, 482, - 519, 0, 482, 0, 0, 0, 0, 482, 0, 0, - 0, 0, 98, 0, 98, 0, 0, 0, 482, 98, - 127, 128, 0, 130, 131, 132, 133, 134, 135, 136, - 0, 0, 147, 148, 149, 150, 151, 152, 153, 154, - 156, 0, 169, 0, 0, 0, 0, 0, 0, 482, - 0, 0, 0, 176, 0, 482, 0, 0, 0, 0, - 184, 186, 0, 0, 0, 191, 0, 194, 0, -141, - 0, 0, 0, 482, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 0, 0, 0, 0, - 0, 0, 0, 483, 0, 0, 219, 222, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 483, 0, 670, - 0, 0, -358, -358, 671, 0, 672, 673, 674, 675, - 676, 677, 678, 0, 0, 0, 0, 0, 237, 238, - 239, 0, 0, 0, 0, 0, 0, 0, 144, 144, - 0, 0, 0, 0, 240, 289, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 0, 262, 730, - 0, 0, 0, 192, -375, -375, -375, -375, 254, 255, - 256, 257, 258, 259, 260, 261, 310, 262, 311, 0, - 312, 0, 0, 0, 317, 320, 191, 0, 325, 0, - 0, -144, 0, 0, 220, 0, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 0, 0, - -141, 0, 0, 0, 0, 0, 0, 0, 0, 156, - 0, 0, 0, 0, 483, 0, 0, 0, 483, 483, - 483, 374, 0, 191, -358, -358, 0, 0, 0, 0, - 0, 312, 0, 393, 394, 395, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 0, 296, - 483, 512, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 191, 0, 312, 0, 312, 444, - 0, 0, 312, 312, 322, 0, 0, 0, 0, 0, - 0, 0, 0, 452, 0, 454, 0, 0, 0, 0, - 191, 0, 0, 0, 340, 0, 0, 0, 0, 0, - 463, 0, 349, 350, 352, 0, 355, 0, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 483, 380, -144, 0, 490, 0, 0, 483, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 0, 0, 0, 0, 0, 0, -358, -358, 0, 191, - 191, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 0, 0, 0, -358, -358, 0, 0, - 0, 0, 380, 0, 0, 0, 0, 0, 0, 0, - 483, 0, 537, 0, 0, 0, 483, 0, 483, -358, - -358, 0, 0, 0, 0, 0, 0, 0, 380, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 237, 238, 239, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 545, 0, 483, 240, 0, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 563, 262, 320, 568, -281, -281, 0, 380, 510, 0, + 99, 290, 142, 142, 462, 167, 391, 90, 91, 698, + 516, 746, 571, 162, 168, 598, 474, 422, 229, 169, + 316, 338, 343, 780, 672, 88, 346, 393, 523, 487, + 527, 362, 224, 699, 751, 284, 498, 500, 143, 143, + 197, 505, 582, 495, -141, 505, 123, 284, 636, 163, + 436, 439, 206, 446, 284, -144, 334, 448, 449, 837, + 123, 178, 217, 554, 284, 218, 543, 200, 33, 389, + 438, 639, 442, 735, 736, 123, 460, 33, 618, 337, + 348, 735, 736, 191, 393, 438, 560, 758, 561, 3, + 204, 130, 294, 440, 459, 33, 803, 461, 442, 227, + 392, 171, 33, 173, 574, 287, 33, 858, 363, 364, + 733, 138, 737, 174, 219, 640, 47, -375, 437, 452, + 33, 33, 206, 453, 215, 33, -301, 175, 293, -375, + -371, 759, 227, 285, 216, 511, 123, 227, 196, 738, + 804, 789, 490, 194, 142, 285, 123, 783, 33, 304, + 139, 859, 285, 140, 390, 201, 286, 781, 310, -372, + 141, 555, 285, 747, 748, 84, 689, 475, 527, 179, + 230, 577, 317, 339, 344, 585, 586, 583, 347, 510, + 143, 441, 138, 84, 336, 700, 752, 499, 501, 142, + 84, 188, 506, 180, 84, -141, 683, 142, 142, 142, + 227, 142, 181, 361, 852, 727, -144, 189, 84, 84, + 838, 520, -303, 84, 521, 323, 520, 612, 227, 521, + -302, 139, 227, 99, 140, 143, 227, 394, 182, 228, + 183, 141, 395, 143, 143, 143, 84, 143, -189, 207, + 123, 687, 33, 209, 167, 208, 621, 622, 623, 624, + 625, 626, 162, 168, -301, 210, 123, 211, 169, 227, + 227, 690, 381, 212, 694, 213, 365, 228, -303, 123, + 394, 33, 394, 214, 227, 395, 138, 395, 605, 123, + 451, 365, 226, 123, 394, 394, 719, -302, 163, 395, + 395, 458, 231, 227, 394, 681, 644, 394, 394, 395, + 508, 232, 395, 395, 227, 138, 266, 267, 641, 642, + 531, 508, 722, 723, 381, 139, 645, 646, 140, 484, + 648, 233, 356, 652, 742, 141, 197, 235, 340, 234, + 84, 520, 99, 484, 521, 237, 532, 531, -281, -281, + 381, 282, -126, 238, 139, 280, 123, 140, 33, -283, + -283, 720, 880, 881, 141, 485, 765, 766, 520, 84, + 99, 521, 281, 532, 283, 731, 142, 90, 91, 485, + 288, 739, 522, 740, 522, 868, 144, 147, 522, 123, + 47, 33, 138, 289, 540, 88, 215, 261, 262, 263, + 788, 264, 797, 621, 622, 623, 624, 625, 626, 381, + 512, 264, 143, 292, 761, 734, 735, 736, 25, 295, + 764, 142, 777, 735, 736, 138, 296, 300, 713, 714, + 301, 139, 305, 306, 140, 303, 227, 658, 308, 309, + 661, 141, 318, 325, 331, 797, 84, 345, 377, 383, + 330, 668, 142, 787, 142, 442, 332, 143, 798, 355, + 367, 369, 384, 386, 160, 388, 390, 161, 809, 142, + 142, 484, 467, 465, 141, 484, 484, 484, 469, 84, + 470, 592, 471, 854, 473, 491, 496, 497, 143, 504, + 143, 502, 822, 503, 507, 522, 142, 566, 142, 519, + 514, 569, 142, 142, 517, 143, 143, 485, 580, 834, + 518, 485, 485, 485, 442, 524, 841, 484, 99, 614, + 528, 873, 522, 530, 537, 90, 91, 538, 522, 539, + 548, 546, 143, 167, 143, 578, 545, 888, 143, 143, + 856, 162, 168, 88, 547, 550, 556, 169, 860, 558, + 563, 590, 381, 485, 559, 591, 619, 594, 593, 597, + 595, 620, 610, 621, 622, 623, 624, 625, 626, 627, + 600, 604, 142, 607, 608, 613, 617, 163, 616, 637, + 638, 649, 381, 381, 650, 656, 662, 667, 484, 678, + 381, 381, 663, 619, 381, 484, 669, 671, 620, 673, + 621, 622, 623, 624, 625, 626, 627, 142, 143, 674, + 675, 688, 679, 680, 692, 522, 628, 682, 522, 685, + 695, 702, 705, 686, 485, 701, 706, 802, 707, 806, + 715, 485, 708, 745, 710, 711, 522, 800, 712, 729, + 697, 717, 725, 143, 818, 750, 754, 730, 741, 760, + 756, 755, 142, 691, 821, 394, 757, 762, 824, 768, + 395, 142, 763, 770, 771, 484, 99, 776, 778, 99, + 785, 484, 786, 484, 784, 799, 99, 801, 522, 807, + 808, 811, 812, 823, 843, 813, 819, 846, 143, -177, + 825, 827, 848, 830, 828, 829, 831, 143, 832, 833, + 836, 485, 840, 849, 484, 867, 855, 485, 844, 485, + 857, 866, -183, 864, 394, 869, 870, 871, 874, 395, + 883, 865, 876, 884, 889, 891, 893, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 277, 278, 279, 895, + 485, 492, 875, 484, 522, 886, 522, 599, 484, 615, + 666, 728, 820, 887, 704, 826, 769, 775, 484, 494, + 222, 892, 773, 773, 619, -359, -359, 896, 709, 620, + 677, 621, 622, 623, 624, 625, 626, 627, 743, 485, + 676, 341, 484, 810, 485, 603, 0, 0, 0, 522, + 602, 360, 0, 0, 485, 0, 0, 0, 0, 484, + 0, 0, 0, 0, 816, 0, 484, 472, 0, 0, + 99, 0, 0, 0, 99, 0, 0, 0, 485, 0, + 0, 0, 0, 0, 744, 0, 99, 522, 0, 99, + 484, 0, 99, 0, 0, 485, 0, 0, 484, 0, + 0, 0, 485, 258, 259, 260, 261, 262, 263, 0, + 264, 99, 0, 0, 99, 522, 99, 0, 0, 146, + 146, 0, 0, 0, 0, 522, 485, 0, 0, 0, + 166, 0, 0, 99, 485, 0, 0, 0, 862, 0, + 0, 522, 0, 99, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 99, 145, 145, 0, 0, + 99, 0, 128, 129, 99, 131, 132, 133, 134, 135, + 136, 137, 0, 0, 148, 149, 150, 151, 152, 153, + 154, 155, 157, 0, 170, 0, 0, 0, 0, 0, + 0, 193, 0, 0, 0, 177, 0, 0, 0, 0, + 0, 0, 185, 187, 0, 0, 0, 192, 0, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 296, 0, 0, 0, -283, -283, 0, 0, 0, 483, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 191, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 191, 0, 483, 0, 0, 483, 0, 0, 0, - 0, 483, 0, 0, 540, 0, 0, 0, 0, 0, - 191, 191, 483, 0, 622, 0, 0, 0, 191, 191, - 0, 0, 191, 0, 0, 0, 312, 632, 0, 0, - 0, 0, 0, 0, 634, 296, 0, 296, 0, 0, - 0, 0, 0, 483, 0, 0, 0, 0, 0, 483, - 0, 0, 569, 572, 553, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 483, 0, 0, - 0, 0, 0, 0, 0, 0, 663, 0, 0, 349, - 0, 597, 0, 0, 0, 355, 355, 0, 0, 380, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 607, - 0, 0, 0, 0, 312, 312, 0, 0, 0, 0, - 0, 0, 0, 237, 238, 239, 0, 320, 380, 380, - 0, 0, 0, 0, 0, 0, 380, 380, 0, 240, - 380, 241, 242, 243, 244, 245, 246, 247, 248, 249, + -142, 0, 221, 0, 0, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, -145, 220, 223, + 0, 0, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 0, 0, 0, 0, 0, 0, + 0, 146, 0, -359, -359, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 0, 0, 0, + -359, -359, 0, 0, 0, 0, 0, 0, 291, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 298, 0, + 0, 0, 0, -359, -359, 0, 146, 0, 0, 0, + 0, 0, 0, 0, 146, 146, 146, 0, 146, 0, + 0, 0, 0, 324, 0, 0, 0, 0, 0, 312, + 0, 313, 0, 314, 0, 0, 0, 319, 322, 192, + 0, 327, 486, 342, 0, 0, 0, 0, 0, 0, + 0, 351, 352, 354, 0, 357, 486, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 166, + 382, -142, 157, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 376, 0, 192, 0, -145, 0, + 0, 0, 0, 0, 0, 314, 0, 396, 397, 398, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 421, 382, 0, 0, 0, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 434, 435, 192, 0, + 314, 0, 314, 447, 0, 0, 314, 314, 382, 0, + 0, 0, 0, 0, 0, 0, 0, 455, 0, 457, + 0, 0, 0, 0, 192, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 466, 0, 0, 0, 0, 0, + 0, 0, 0, 146, 486, 0, 0, 0, 486, 486, + 486, 0, 0, 0, 0, 0, 0, 0, 493, 0, + 0, 0, 0, 0, 0, 0, 0, 382, 513, 0, + 0, 0, 0, 0, 0, 239, 240, 241, 0, 0, + 298, 0, 0, 192, 192, 0, 0, 0, 146, 0, + 486, 242, 0, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 644, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 296, - 0, 4, 5, 6, 7, 8, 0, 764, 0, 0, - 9, 0, -358, -358, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 0, 0, 572, 0, 0, 794, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 469, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 592, 827, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 48, 49, 50, 0, 51, 52, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 60, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 74, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 506, 84, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 48, 49, 50, 0, 51, 52, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 60, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 74, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 602, 84, -375, -375, -375, -375, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 48, 49, 50, 0, 51, 52, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 60, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 74, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 369, 84, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 486, 84, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 712, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 718, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 260, 261, 262, 263, 0, 264, 0, 541, 0, 146, + 0, 146, 0, 0, 0, 544, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 146, 146, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 0, 0, 0, 0, 0, 0, 298, 0, 298, 549, + 0, 486, 0, 146, 0, 146, 0, 0, 486, 146, + 146, 0, 0, 573, 576, 0, -359, -359, 0, 0, + 0, 0, 0, 0, 0, 567, 0, 322, 572, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 820, 84, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 824, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 351, 0, 601, 0, 0, 0, 357, 357, 166, 0, + 382, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 611, 0, 0, 0, 0, 0, 192, 0, 515, 0, + 0, 0, 0, 0, 0, 0, 192, 0, 486, 146, + 382, 382, 0, 0, 486, 0, 486, 0, 382, 382, + 0, 0, 382, 0, 0, 0, 192, 192, 0, 0, + 643, 0, 0, 0, 192, 192, 0, 0, 192, 0, + 0, 0, 314, 653, 146, 0, 665, 486, 0, 0, + 655, 0, 0, 0, -282, -282, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 0, 298, 0, 0, 0, 0, 486, 0, 0, 146, + 0, 486, 684, 0, -359, -359, 0, 0, 146, 0, + 0, 486, 0, 0, 0, 0, -359, -359, -376, -376, + -376, -376, 256, 257, 258, 259, 260, 261, 262, 263, + 0, 264, 0, 0, 0, 486, 298, 0, 0, 0, + 0, 0, 0, 0, 0, 576, 0, 314, 314, 0, + 0, 0, 486, 0, 0, 0, 0, 0, 0, 486, + 322, 0, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 486, 264, 0, 0, 0, 0, 0, + 0, 486, 0, 0, 0, 0, 0, 0, 0, 4, + 5, 6, 7, 8, 0, 0, 0, 0, 9, 0, + 0, 0, -284, -284, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 333, 0, 0, 0, 0, + 0, 0, 0, 779, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 814, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 51, 52, 53, 54, 55, 56, 0, 842, + 0, 0, 57, 58, 59, 60, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 74, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 509, 84, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 0, 264, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 51, 52, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 60, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 74, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 606, 84, + -376, -376, -376, -376, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 0, 264, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 51, 52, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 60, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 74, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 832, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 371, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 835, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 489, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 851, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 726, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 864, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 732, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 887, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 835, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 889, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 839, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 892, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 847, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 55, 56, - 0, 0, 0, 0, 57, 58, 59, 368, 61, 62, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 78, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 561, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 850, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 0, 0, - 0, 0, 0, 0, 57, 58, 59, 0, 0, 0, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 0, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 564, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 863, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 0, 0, - 0, 0, 0, 0, 57, 58, 59, 0, 0, 0, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 0, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 575, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 872, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 0, 0, - 0, 0, 0, 0, 57, 58, 59, 0, 0, 0, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 0, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 757, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 890, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 0, 0, - 0, 0, 0, 0, 57, 58, 59, 0, 0, 0, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 0, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 795, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 894, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 0, 0, - 0, 0, 0, 0, 57, 58, 59, 0, 0, 0, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 0, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 897, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, - 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 0, 0, 0, 29, - 30, 31, 32, 33, 0, 34, 0, 0, 0, 35, - 36, 37, 38, 39, 0, 40, 0, 41, 0, 42, - 0, 0, 43, 0, 0, 0, 44, 45, 46, 47, - 0, 49, 50, 0, 51, 0, 53, 54, 0, 0, - 0, 0, 0, 0, 57, 58, 59, 0, 0, 0, - 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, - 69, 0, 0, 70, 71, 0, 72, 0, 0, 0, - 73, 4, 5, 6, 7, 8, 124, 75, 76, 77, - 9, 0, 0, 79, 80, 0, 81, 0, 82, 83, - 0, 84, 0, 0, 0, 0, 0, 0, 0, 155, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 55, 56, 0, 0, + 0, 0, 57, 58, 59, 370, 61, 62, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 78, 79, 80, 0, 81, 0, 82, 83, 0, 84, + 0, 0, 565, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 0, 0, 0, 0, + 0, 0, 57, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 0, 79, 80, 0, 81, 0, 82, 83, 0, 84, + 0, 0, 568, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 0, 0, 0, 0, + 0, 0, 57, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 0, 79, 80, 0, 81, 0, 82, 83, 0, 84, + 0, 0, 579, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 0, 0, 0, 0, + 0, 0, 57, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 0, 79, 80, 0, 81, 0, 82, 83, 0, 84, + 0, 0, 772, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 0, 0, 0, 0, + 0, 0, 57, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 0, 79, 80, 0, 81, 0, 82, 83, 0, 84, + 0, 0, 815, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 0, 0, 0, 0, + 0, 0, 57, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 0, 79, 80, 0, 81, 0, 82, 83, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 0, 34, 0, 0, 0, 35, 36, 37, + 38, 39, 0, 40, 0, 41, 0, 42, 0, 0, + 43, 0, 0, 0, 44, 45, 46, 47, 0, 49, + 50, 0, 51, 0, 53, 54, 0, 0, 0, 0, + 0, 0, 57, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 0, 70, 71, 0, 72, 0, 0, 0, 73, 4, + 5, 6, 7, 8, 125, 75, 76, 77, 9, 0, + 0, 79, 80, 0, 81, 0, 82, 83, 0, 84, + 0, 0, 0, 0, 0, 0, 0, 156, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, + 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, + 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 0, 0, 0, 0, 29, 30, 123, + 32, 33, 0, 0, 0, 0, 0, 35, 36, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 47, 264, 0, + 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, + 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, + 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, + 4, 5, 6, 7, 8, 0, 0, 0, 73, 9, + 0, 0, 0, 0, 125, 75, 76, 77, 0, 0, + 0, 79, 126, 0, 81, 0, 0, 0, 0, 84, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, + 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, + 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 0, 0, 0, 0, 29, 30, + 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, + 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 47, 264, + 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, + 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, + 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, + 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, + 9, 0, 0, 0, 0, 125, 75, 76, 77, 0, + 0, 0, 79, 126, 0, 81, 0, 184, 0, 0, + 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, 29, - 30, 122, 32, 33, 0, 0, 0, 0, 0, 35, - 36, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 47, - 262, 0, 0, 0, 0, 0, 0, 123, 0, 0, + 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, + 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, + 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, - 73, 9, 0, 0, 0, 0, 124, 75, 76, 77, - 0, 0, 0, 79, 125, 0, 81, 0, 0, 0, + 73, 9, 0, 0, 0, 0, 125, 75, 76, 77, + 0, 0, 0, 79, 126, 0, 81, 0, 186, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, - 29, 30, 122, 32, 33, 0, 0, 0, 0, 0, - 35, 36, 0, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 47, 262, 0, 0, 0, 0, 0, 0, 123, 0, + 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, + 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 47, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, - 0, 73, 9, 0, 0, 0, 0, 124, 75, 76, - 77, 0, 0, 0, 79, 125, 0, 81, 0, 183, + 0, 73, 9, 0, 0, 0, 0, 125, 75, 76, + 77, 0, 0, 0, 79, 126, 0, 81, 0, 190, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, - 0, 29, 30, 122, 32, 33, 0, 0, 0, 0, + 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 47, 0, 0, 0, 0, 0, 0, 0, 123, + 0, 47, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, - 0, 0, 73, 9, 0, 0, 0, 0, 124, 75, - 76, 77, 0, 0, 0, 79, 125, 0, 81, 0, - 185, 0, 0, 84, 0, 0, 0, 0, 0, 0, + 0, 0, 73, 9, 0, 0, 0, 0, 125, 75, + 76, 77, 0, 0, 0, 79, 126, 0, 81, 311, + 0, 0, 378, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, - 0, 0, 29, 30, 122, 32, 33, 0, 0, 0, + 0, 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, - 123, 0, 0, 0, 0, 0, 0, 0, 58, 59, + 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, - 0, 0, 0, 73, 9, 0, 0, 0, 0, 124, - 75, 76, 77, 0, 0, 0, 79, 125, 0, 81, - 0, 189, 0, 0, 84, 0, 0, 0, 0, 0, + 0, 0, 0, 73, 9, 0, 0, 0, 0, 125, + 75, 76, 77, 0, 0, 0, 79, 126, 399, 81, + 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, - 0, 0, 0, 29, 30, 122, 32, 33, 0, 0, + 0, 0, 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, - 0, 123, 0, 0, 0, 0, 0, 0, 0, 58, + 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, 9, 0, 0, 0, 0, - 124, 75, 76, 77, 0, 0, 0, 79, 125, 0, - 81, 309, 0, 0, 376, 84, 0, 0, 0, 0, + 125, 75, 76, 77, 0, 0, 0, 79, 126, 0, + 81, 0, 0, 0, 423, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 0, 0, 0, 0, 29, 30, 122, 32, 33, 0, + 0, 0, 0, 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, - 0, 0, 123, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, 9, 0, 0, 0, - 0, 124, 75, 76, 77, 0, 0, 0, 79, 125, - 396, 81, 0, 0, 0, 0, 84, 0, 0, 0, + 0, 125, 75, 76, 77, 0, 0, 0, 79, 126, + 0, 81, 0, 0, 0, 454, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 0, 0, 0, 0, 29, 30, 122, 32, 33, + 27, 0, 0, 0, 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, - 0, 0, 0, 123, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, 9, 0, 0, - 0, 0, 124, 75, 76, 77, 0, 0, 0, 79, - 125, 0, 81, 0, 0, 0, 420, 84, 0, 0, + 0, 0, 125, 75, 76, 77, 0, 0, 0, 79, + 126, 0, 81, 0, 0, 0, 456, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 0, 0, 0, 0, 29, 30, 122, 32, + 26, 27, 0, 0, 0, 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, - 0, 0, 0, 0, 123, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, 9, 0, - 0, 0, 0, 124, 75, 76, 77, 0, 0, 0, - 79, 125, 0, 81, 0, 0, 0, 451, 84, 0, + 0, 0, 0, 125, 75, 76, 77, 0, 0, 0, + 79, 126, 0, 81, 0, 0, 0, 609, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 0, 0, 0, 0, 29, 30, 122, + 25, 26, 27, 0, 0, 0, 0, 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, - 0, 0, 0, 0, 0, 123, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, 9, - 0, 0, 0, 0, 124, 75, 76, 77, 0, 0, - 0, 79, 125, 0, 81, 0, 0, 0, 453, 84, + 0, 0, 0, 0, 125, 75, 76, 77, 0, 0, + 0, 79, 126, 0, 81, 0, 0, 0, 654, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, 29, 30, - 122, 32, 33, 0, 0, 0, 0, 0, 35, 36, + 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, - 0, 0, 0, 0, 0, 0, 123, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, 73, - 9, 0, 0, 0, 0, 124, 75, 76, 77, 0, - 0, 0, 79, 125, 0, 81, 0, 0, 0, 605, + 9, 0, 0, 0, 0, 125, 75, 76, 77, 0, + 0, 0, 79, 126, 0, 81, 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, 29, - 30, 122, 32, 33, 0, 0, 0, 0, 0, 35, + 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, - 0, 0, 0, 0, 0, 0, 0, 123, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, 0, - 73, 9, 0, 0, 0, 0, 124, 75, 76, 77, - 0, 0, 0, 79, 125, 0, 81, 0, 0, 0, - 633, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 73, 9, 0, 0, 0, 0, 125, 75, 76, 77, + 0, 0, 0, 79, 126, 0, 81, 0, 0, 0, + 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, - 29, 30, 122, 32, 33, 0, 0, 0, 0, 0, + 29, 30, 123, 32, 33, 0, 0, 0, 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 47, 0, 0, 0, 0, 0, 0, 0, 123, 0, + 47, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, 67, - 68, 69, 0, 4, 5, 6, 7, 8, 0, 0, - 0, 73, 9, 0, 0, 0, 0, 124, 75, 76, - 77, 0, 0, 0, 79, 125, 0, 81, 0, 0, - 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 10, 11, 0, 0, 0, 0, 12, 0, - 13, 14, 15, 16, 17, 18, 0, 0, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, - 0, 29, 30, 122, 32, 33, 0, 0, 0, 0, - 0, 35, 36, 0, 0, 0, 0, 0, 0, 0, + 68, 69, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 73, 0, 0, 0, 0, 0, 125, 75, 76, + 77, 239, 240, 241, 79, 80, 0, 81, 0, 0, + 0, 0, 84, 0, 0, 0, 0, 242, 0, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 0, 264, 239, 240, 241, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 242, 0, + 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 0, 264, 239, 240, 241, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 242, + 0, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 0, 264, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 47, 0, 0, 0, 0, 0, 0, 0, 123, - 0, 0, 0, 0, 0, 0, 0, 58, 59, 0, - 0, 0, 0, 0, 0, 0, 63, 64, 65, 66, - 67, 68, 69, 0, 4, 5, 6, 7, 8, 0, - 0, 0, 73, 9, 0, 0, 0, 0, 124, 75, - 76, 77, 0, 0, 0, 79, 125, 0, 81, 0, - 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 10, 11, 0, 0, 0, 0, 12, - 0, 13, 14, 15, 16, 17, 18, 0, 0, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, - 0, 0, 29, 30, 122, 32, 33, 0, 0, 0, - 0, 0, 35, 36, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 242, 557, 243, 244, 245, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 0, 264, 0, 0, + 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 596, 242, 780, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, + 264, 239, 240, 241, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 647, 242, 0, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 0, 264, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 239, 240, 241, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 242, + 718, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 0, 264, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, - 123, 0, 0, 0, 0, 0, 0, 0, 58, 59, - 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, - 66, 67, 68, 69, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 73, 0, 0, 0, 0, 0, 124, - 75, 76, 77, 237, 238, 239, 79, 80, 0, 81, - 0, 0, 0, 0, 84, 0, 0, 0, 0, 240, - 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 237, 238, 239, 0, 0, 0, + 242, 781, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 0, 264, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 240, 0, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 237, 238, 239, 0, 0, + 0, 242, 265, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 0, 264, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 240, 765, 241, 242, 243, 244, 245, 246, 247, + 0, 0, 0, 242, 328, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 0, 262, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, - 238, 239, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 240, 626, 241, 242, 243, + 258, 259, 260, 261, 262, 263, 0, 264, 239, 240, + 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 242, 329, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 0, 264, 239, + 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 242, 335, 243, 244, 245, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 242, 368, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, + 264, 239, 240, 241, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 242, 450, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 237, 238, 239, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 240, 704, 241, 242, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 0, 264, 239, 240, 241, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 242, 463, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 237, 238, 239, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 766, 240, 0, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 0, 264, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 239, 240, 241, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 242, + 464, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 237, 238, 239, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, - 263, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 262, 263, 0, 264, 239, 240, 241, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 242, 468, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 0, 264, 239, 240, 241, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 242, 476, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 237, 238, 239, 0, 0, 0, + 260, 261, 262, 263, 0, 264, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 240, 326, 241, 242, 243, 244, 245, 246, 247, 248, + 0, 0, 242, 660, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 237, 238, 239, 0, 0, + 259, 260, 261, 262, 263, 0, 264, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 240, 327, 241, 242, 243, 244, 245, 246, 247, + 0, 0, 0, 242, 845, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 0, 262, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 237, 238, 239, + 258, 259, 260, 261, 262, 263, 0, 264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 240, 333, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 0, 262, 0, 237, - 238, 239, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 366, 240, 0, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 237, 238, 239, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 447, 240, 0, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 237, 238, 239, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 240, 460, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 0, 237, 238, 239, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 240, 461, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 0, 262, 237, 238, 239, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, - 465, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 237, 238, 239, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, - 473, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 0, 237, 238, 239, 0, 0, + 0, 0, 0, 0, 0, 861, 0, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 240, 639, 241, 242, 243, 244, 245, 246, 247, + 0, 0, 299, 242, 0, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 0, 262, 237, 238, 239, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 240, 830, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 0, 262, 0, 0, 0, + 258, 259, 260, 261, 262, 263, 0, 264, 477, 478, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 237, 238, 239, 0, 0, 0, - 0, 0, 0, 849, 0, 0, 0, 0, 0, 0, - 240, 297, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 474, 475, 0, 0, 0, + 0, 0, 0, 366, 0, 0, 0, 0, 0, 479, + 0, 0, 239, 240, 241, 0, 0, 29, 30, 123, + 0, 0, 0, 0, 0, 0, 0, 480, 242, 542, + 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 0, 264, 0, 0, 138, 0, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 481, 65, 66, 67, 68, 69, 0, + 0, 0, 0, 0, 239, 240, 241, 0, 73, 0, + 0, 0, 0, 0, 482, 75, 76, 483, 0, 0, + 242, 79, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 0, 264, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 364, 0, 0, 0, 476, 0, 0, 237, - 238, 239, 0, 0, 29, 30, 122, 0, 0, 0, - 0, 0, 0, 0, 477, 240, 538, 241, 242, 243, + 242, 0, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 241, 264, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 242, 0, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 0, 0, 137, 0, 0, 0, 0, 0, 0, 0, - 558, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 478, 65, 66, 67, 68, 69, 0, 0, 0, 0, - 0, 237, 238, 239, 0, 73, 0, 0, 0, 0, - 0, 479, 75, 76, 480, 0, 0, 240, 79, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 238, 239, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 240, 0, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 239, 262, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 240, 0, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 240, 262, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 241, 242, 243, 244, 245, 246, 247, 248, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 242, 264, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 0, 264, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 0, 262, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 0, 262 + 259, 260, 261, 262, 263, 0, 264, 245, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 0, 264 }; static const yytype_int16 yycheck[] = -{ - 2, 126, 262, 25, 235, 2, 307, 2, 25, 14, - 15, 466, 8, 25, 494, 684, 8, 236, 376, 8, - 25, 8, 8, 8, 8, 2, 8, 26, 8, 8, - 8, 63, 8, 64, 8, 215, 8, 81, 26, 0, - 8, 8, 73, 329, 75, 63, 526, 52, 63, 280, - 63, 282, 54, 73, 63, 286, 287, 343, 158, 75, - 279, 38, 281, 73, 75, 75, 73, 73, 158, 74, - 145, 278, 77, 73, 293, 294, 151, 158, 109, 73, - 205, 75, 73, 158, 303, 145, 26, 306, 307, 158, - 101, 151, 31, 451, 63, 453, 140, 304, 115, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 75, 75, 145, 14, 15, 73, 148, 75, 158, - 151, 123, 73, 158, 75, 25, 158, 158, 148, 161, - 145, 151, 163, 382, 139, 384, 75, 51, 52, 73, - 158, 75, 148, 161, 151, 151, 161, 163, 161, 579, - 155, 168, 161, 163, 161, 160, 363, 31, 158, 160, - 151, 73, 161, 93, 160, 161, 49, 193, 160, 163, - 839, 160, 160, 160, 160, 160, 160, 93, 160, 159, - 159, 159, 362, 159, 470, 159, 641, 159, 474, 475, - 195, 159, 159, 96, 97, 200, 145, 80, 31, 163, - 163, 75, 151, 208, 209, 210, 163, 212, 31, 214, - 161, 158, 163, 51, 52, 127, 159, 160, 648, 236, - 650, 151, 224, 151, 236, 145, 96, 97, 73, 163, - 516, 151, 160, 161, 158, 151, 148, 14, 15, 151, - 262, 153, 75, 145, 151, 262, 160, 605, 25, 151, - 262, 158, 75, 73, 151, 155, 158, 262, 151, 162, - 145, 158, 279, 161, 281, 158, 151, 279, 73, 281, - 159, 160, 521, 158, 120, 633, 293, 294, 120, 539, - 158, 293, 294, 68, 69, 290, 303, 68, 69, 306, - 307, 303, 162, 101, 306, 307, 301, 180, 505, 158, - 200, 109, 110, 111, 112, 113, 114, 593, 208, 209, - 210, 73, 212, 75, 45, 46, 47, 158, 49, 550, - 160, 161, 127, 158, 329, 31, 158, 534, 535, 158, - 332, 336, 14, 15, 635, 542, 543, 73, 343, 546, - 95, 96, 97, 148, 227, 161, 151, 109, 153, 73, - 73, 75, 73, 31, 159, 95, 96, 97, 360, 63, - 646, 145, 262, 360, 613, 360, 652, 73, 654, 75, - 158, 376, 145, 63, 124, 392, 63, 382, 155, 384, - 860, 101, 387, 360, 63, 109, 148, 151, 49, 151, - 151, 64, 145, 145, 164, 278, 158, 628, 629, 161, - 701, 163, 126, 109, 8, 151, 692, 151, 145, 158, - 659, 145, 124, 85, 73, 420, 635, 160, 13, 160, - 13, 304, 671, 200, 148, 73, 159, 151, 73, 329, - 159, 208, 209, 210, 158, 212, 122, 159, 122, 163, - 158, 160, 148, 343, 158, 151, 451, 164, 453, 8, - 93, 13, 158, 73, 75, 158, 158, 163, 159, 745, - 160, 159, 158, 468, 469, 470, 159, 8, 13, 474, - 475, 476, 123, 161, 73, 480, 376, 158, 158, 164, - 363, 364, 701, 769, 461, 262, 772, 158, 465, 494, - 495, 777, 497, 159, 158, 472, 501, 502, 158, 164, - 158, 164, 788, 105, 159, 507, 158, 164, 164, 151, - 507, 516, 507, 518, 145, 73, 521, 539, 13, 160, - 420, 526, 539, 159, 773, 13, 775, 539, 151, 159, - 507, 8, 161, 819, 539, 561, 8, 159, 564, 825, - 42, 43, 44, 45, 46, 47, 63, 49, 63, 575, - 124, 451, 160, 453, 125, 13, 125, 843, 164, 160, - 809, 8, 160, 73, 158, 570, 75, 159, 468, 469, - 470, 159, 107, 160, 474, 475, 476, 159, 13, 159, - 159, 586, 587, 73, 159, 75, 159, 159, 593, 73, - 124, 840, 160, 159, 164, 495, 159, 497, 159, 376, - 605, 501, 502, 13, 609, 75, 161, 158, 613, 161, - 164, 164, 617, 160, 158, 75, 516, 866, 635, 109, - 159, 125, 505, 635, 160, 13, 875, 160, 633, 161, - 13, 73, 515, 13, 75, 637, 158, 642, 640, 539, - 26, 646, 70, 420, 73, 647, 75, 652, 160, 654, - 75, 534, 535, 159, 659, 780, 13, 75, 148, 542, - 543, 151, 13, 546, 160, 162, 671, 161, 158, 93, - 570, 160, 93, 163, 451, 160, 453, 152, 145, 13, - 109, 683, 73, 73, 701, 158, 586, 692, 75, 701, - 102, 468, 469, 593, 160, 107, 26, 109, 110, 111, - 112, 113, 114, 115, 160, 605, 109, 110, 111, 112, - 113, 114, 73, 73, 740, 8, 742, 157, 495, 148, - 497, 105, 151, 159, 501, 502, 158, 161, 75, 158, - 161, 757, 709, 633, 163, 871, 159, 495, 715, 716, - 745, 767, 642, 521, 571, 771, 646, 336, 642, 617, - 162, 716, 652, 809, 654, 341, 764, 612, 81, 623, - 661, 586, 539, 585, 769, 213, 792, 772, 773, 795, - 775, 501, 777, 200, 800, 502, 749, -1, -1, 756, - 782, -1, -1, 788, 786, -1, -1, -1, -1, -1, - -1, -1, 692, 570, -1, -1, 798, -1, -1, 801, - -1, -1, 804, -1, 809, -1, -1, -1, 834, -1, - -1, -1, -1, -1, 819, -1, -1, -1, -1, -1, - 825, -1, -1, -1, -1, -1, 828, -1, 605, 831, - -1, 833, -1, -1, -1, 840, 862, -1, 843, -1, - -1, -1, -1, -1, -1, 745, -1, -1, -1, -1, - -1, 853, -1, 830, 880, 860, 633, 883, -1, -1, - -1, 866, -1, -1, 890, 642, 868, -1, -1, 769, - 875, -1, 772, -1, -1, -1, -1, 777, -1, -1, - -1, -1, 884, -1, 886, -1, -1, -1, 788, 891, - 4, 5, -1, 7, 8, 9, 10, 11, 12, 13, - -1, -1, 16, 17, 18, 19, 20, 21, 22, 23, - 24, -1, 26, -1, -1, -1, -1, -1, -1, 819, - -1, -1, -1, 37, -1, 825, -1, -1, -1, -1, - 44, 45, -1, -1, -1, 49, -1, 51, -1, 8, - -1, -1, -1, 843, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, - -1, -1, -1, 329, -1, -1, 80, 81, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 343, -1, 102, - -1, -1, 51, 52, 107, -1, 109, 110, 111, 112, - 113, 114, 115, -1, -1, -1, -1, -1, 9, 10, - 11, -1, -1, -1, -1, -1, -1, -1, 14, 15, - -1, -1, -1, -1, 25, 129, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, -1, 49, 162, - -1, -1, -1, 49, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 170, 49, 172, -1, - 174, -1, -1, -1, 178, 179, 180, -1, 182, -1, - -1, 8, -1, -1, 80, -1, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, -1, -1, - 159, -1, -1, -1, -1, -1, -1, -1, -1, 213, - -1, -1, -1, -1, 470, -1, -1, -1, 474, 475, - 476, 225, -1, 227, 51, 52, -1, -1, -1, -1, - -1, 235, -1, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, -1, 155, - 516, 162, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, -1, 280, -1, 282, 283, - -1, -1, 286, 287, 180, -1, -1, -1, -1, -1, - -1, -1, -1, 297, -1, 299, -1, -1, -1, -1, - 304, -1, -1, -1, 200, -1, -1, -1, -1, -1, - 314, -1, 208, 209, 210, -1, 212, -1, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 586, 227, 159, -1, 338, -1, -1, 593, 13, 14, +{ + 2, 127, 14, 15, 309, 25, 237, 2, 2, 633, + 378, 8, 469, 25, 25, 497, 8, 264, 8, 25, + 8, 8, 8, 26, 583, 2, 8, 238, 384, 331, + 386, 216, 81, 8, 8, 63, 8, 8, 14, 15, + 52, 8, 26, 345, 8, 8, 73, 63, 530, 25, + 280, 282, 54, 284, 63, 8, 194, 288, 289, 8, + 73, 38, 74, 63, 63, 77, 64, 75, 75, 73, + 281, 31, 283, 96, 97, 73, 306, 75, 528, 93, + 206, 96, 97, 49, 295, 296, 454, 31, 456, 0, + 75, 158, 141, 73, 305, 75, 31, 308, 309, 151, + 73, 158, 75, 158, 31, 116, 75, 31, 160, 161, + 669, 109, 671, 26, 80, 75, 101, 145, 73, 73, + 75, 75, 124, 73, 151, 75, 145, 63, 140, 145, + 158, 75, 151, 161, 161, 365, 73, 151, 151, 162, + 75, 73, 93, 161, 156, 161, 73, 162, 75, 161, + 148, 75, 161, 151, 158, 163, 163, 160, 169, 158, + 158, 161, 161, 160, 161, 163, 616, 159, 524, 158, + 160, 473, 160, 160, 160, 477, 478, 161, 160, 364, + 156, 161, 109, 163, 196, 160, 160, 159, 159, 201, + 163, 73, 159, 158, 163, 159, 159, 209, 210, 211, + 151, 213, 158, 215, 828, 662, 159, 73, 163, 163, + 159, 148, 145, 163, 151, 181, 148, 519, 151, 151, + 145, 148, 151, 225, 151, 201, 151, 238, 158, 158, + 158, 158, 238, 209, 210, 211, 163, 213, 101, 120, + 73, 609, 75, 158, 264, 120, 109, 110, 111, 112, + 113, 114, 264, 264, 145, 158, 73, 158, 264, 151, + 151, 617, 228, 158, 620, 158, 158, 158, 145, 73, + 281, 75, 283, 158, 151, 281, 109, 283, 508, 73, + 292, 158, 161, 73, 295, 296, 654, 145, 264, 295, + 296, 303, 73, 151, 305, 597, 543, 308, 309, 305, + 158, 73, 308, 309, 151, 109, 51, 52, 538, 539, + 127, 158, 68, 69, 280, 148, 546, 547, 151, 331, + 550, 73, 126, 554, 680, 158, 338, 31, 161, 160, + 163, 148, 334, 345, 151, 63, 153, 127, 159, 160, + 306, 63, 159, 145, 148, 158, 73, 151, 75, 159, + 160, 656, 160, 161, 158, 331, 68, 69, 148, 163, + 362, 151, 145, 153, 124, 667, 378, 362, 362, 345, + 63, 673, 384, 675, 386, 857, 14, 15, 390, 73, + 101, 75, 109, 63, 395, 362, 151, 45, 46, 47, + 746, 49, 748, 109, 110, 111, 112, 113, 114, 365, + 366, 49, 378, 151, 706, 95, 96, 97, 64, 145, + 715, 423, 95, 96, 97, 109, 145, 164, 649, 650, + 8, 148, 145, 158, 151, 151, 151, 565, 145, 124, + 568, 158, 85, 73, 13, 791, 163, 13, 73, 73, + 160, 579, 454, 745, 456, 656, 160, 423, 750, 159, + 159, 159, 122, 122, 148, 161, 158, 151, 760, 471, + 472, 473, 158, 164, 158, 477, 478, 479, 160, 163, + 8, 483, 93, 829, 13, 73, 75, 158, 454, 158, + 456, 159, 784, 160, 159, 497, 498, 464, 500, 13, + 158, 468, 504, 505, 159, 471, 472, 473, 475, 801, + 8, 477, 478, 479, 715, 123, 808, 519, 510, 521, + 161, 867, 524, 158, 164, 510, 510, 158, 530, 158, + 164, 158, 498, 543, 500, 73, 159, 883, 504, 505, + 832, 543, 543, 510, 158, 158, 164, 543, 840, 164, + 159, 158, 508, 519, 164, 151, 102, 105, 145, 13, + 73, 107, 518, 109, 110, 111, 112, 113, 114, 115, + 160, 13, 574, 159, 159, 151, 8, 543, 161, 159, + 8, 63, 538, 539, 63, 124, 160, 13, 590, 591, + 546, 547, 125, 102, 550, 597, 160, 160, 107, 125, + 109, 110, 111, 112, 113, 114, 115, 609, 574, 164, + 8, 613, 73, 158, 73, 617, 162, 159, 620, 159, + 75, 107, 75, 160, 590, 159, 13, 755, 159, 757, + 124, 597, 159, 13, 159, 159, 638, 753, 159, 159, + 632, 164, 160, 609, 772, 13, 73, 159, 159, 13, + 158, 161, 654, 162, 782, 656, 161, 164, 786, 158, + 656, 663, 164, 160, 159, 667, 658, 160, 160, 661, + 75, 673, 161, 675, 125, 75, 668, 13, 680, 75, + 13, 158, 26, 159, 812, 70, 160, 815, 654, 93, + 162, 160, 820, 160, 93, 152, 145, 663, 13, 73, + 75, 667, 13, 161, 706, 8, 73, 673, 160, 675, + 158, 73, 73, 160, 715, 75, 26, 160, 159, 715, + 158, 849, 105, 157, 161, 75, 159, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 161, + 706, 338, 870, 745, 746, 878, 748, 498, 750, 524, + 575, 663, 779, 881, 638, 791, 723, 730, 760, 343, + 81, 889, 729, 730, 102, 51, 52, 895, 644, 107, + 590, 109, 110, 111, 112, 113, 114, 115, 682, 745, + 589, 201, 784, 764, 750, 505, -1, -1, -1, 791, + 504, 214, -1, -1, 760, -1, -1, -1, -1, 801, + -1, -1, -1, -1, 771, -1, 808, 93, -1, -1, + 802, -1, -1, -1, 806, -1, -1, -1, 784, -1, + -1, -1, -1, -1, 162, -1, 818, 829, -1, 821, + 832, -1, 824, -1, -1, 801, -1, -1, 840, -1, + -1, -1, 808, 42, 43, 44, 45, 46, 47, -1, + 49, 843, -1, -1, 846, 857, 848, -1, -1, 14, + 15, -1, -1, -1, -1, 867, 832, -1, -1, -1, + 25, -1, -1, 865, 840, -1, -1, -1, 845, -1, + -1, 883, -1, 875, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 887, 14, 15, -1, -1, + 892, -1, 4, 5, 896, 7, 8, 9, 10, 11, + 12, 13, -1, -1, 16, 17, 18, 19, 20, 21, + 22, 23, 24, -1, 26, -1, -1, -1, -1, -1, + -1, 49, -1, -1, -1, 37, -1, -1, -1, -1, + -1, -1, 44, 45, -1, -1, -1, 49, -1, 51, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 8, -1, 80, -1, -1, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 8, 80, 81, + -1, -1, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, + -1, 156, -1, 51, 52, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, -1, -1, -1, + 51, 52, -1, -1, -1, -1, -1, -1, 130, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 156, -1, + -1, -1, -1, 51, 52, -1, 201, -1, -1, -1, + -1, -1, -1, -1, 209, 210, 211, -1, 213, -1, + -1, -1, -1, 181, -1, -1, -1, -1, -1, 171, + -1, 173, -1, 175, -1, -1, -1, 179, 180, 181, + -1, 183, 331, 201, -1, -1, -1, -1, -1, -1, + -1, 209, 210, 211, -1, 213, 345, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 264, + 228, 159, 214, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 226, -1, 228, -1, 159, -1, + -1, -1, -1, -1, -1, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 280, -1, -1, -1, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, -1, + 282, -1, 284, 285, -1, -1, 288, 289, 306, -1, + -1, -1, -1, -1, -1, -1, -1, 299, -1, 301, + -1, -1, -1, -1, 306, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 316, -1, -1, -1, -1, -1, + -1, -1, -1, 378, 473, -1, -1, -1, 477, 478, + 479, -1, -1, -1, -1, -1, -1, -1, 340, -1, + -1, -1, -1, -1, -1, -1, -1, 365, 366, -1, + -1, -1, -1, -1, -1, 9, 10, 11, -1, -1, + 378, -1, -1, 365, 366, -1, -1, -1, 423, -1, + 519, 25, -1, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, -1, 49, -1, 399, -1, 454, + -1, 456, -1, -1, -1, 423, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 471, 472, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - -1, -1, -1, -1, -1, -1, 51, 52, -1, 363, - 364, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, -1, -1, -1, 51, 52, -1, -1, - -1, -1, 278, -1, -1, -1, -1, -1, -1, -1, - 646, -1, 396, -1, -1, -1, 652, -1, 654, 51, - 52, -1, -1, -1, -1, -1, -1, -1, 304, -1, + -1, -1, -1, -1, -1, -1, 454, -1, 456, 441, + -1, 590, -1, 498, -1, 500, -1, -1, 597, 504, + 505, -1, -1, 471, 472, -1, 51, 52, -1, -1, + -1, -1, -1, -1, -1, 467, -1, 469, 470, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 438, -1, 692, 25, -1, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 498, -1, 500, -1, -1, -1, 504, 505, 543, -1, + 508, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 518, -1, -1, -1, -1, -1, 508, -1, 162, -1, + -1, -1, -1, -1, -1, -1, 518, -1, 667, 574, + 538, 539, -1, -1, 673, -1, 675, -1, 546, 547, + -1, -1, 550, -1, -1, -1, 538, 539, -1, -1, + 542, -1, -1, -1, 546, 547, -1, -1, 550, -1, + -1, -1, 554, 555, 609, -1, 574, 706, -1, -1, + 562, -1, -1, -1, 159, 160, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + -1, 609, -1, -1, -1, -1, 745, -1, -1, 654, + -1, 750, 604, -1, 51, 52, -1, -1, 663, -1, + -1, 760, -1, -1, -1, -1, 51, 52, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 464, 49, 466, 467, 159, 160, -1, 363, 364, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 376, -1, -1, -1, 159, 160, -1, -1, -1, 745, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 505, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 515, -1, 769, -1, -1, 772, -1, -1, -1, - -1, 777, -1, -1, 420, -1, -1, -1, -1, -1, - 534, 535, 788, -1, 538, -1, -1, -1, 542, 543, - -1, -1, 546, -1, -1, -1, 550, 551, -1, -1, - -1, -1, -1, -1, 558, 451, -1, 453, -1, -1, - -1, -1, -1, 819, -1, -1, -1, -1, -1, 825, - -1, -1, 468, 469, 162, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 843, -1, -1, - -1, -1, -1, -1, -1, -1, 600, -1, -1, 495, - -1, 497, -1, -1, -1, 501, 502, -1, -1, 505, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, - -1, -1, -1, -1, 628, 629, -1, -1, -1, -1, - -1, -1, -1, 9, 10, 11, -1, 641, 534, 535, - -1, -1, -1, -1, -1, -1, 542, 543, -1, 25, - 546, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, -1, 49, 570, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 605, - -1, 3, 4, 5, 6, 7, -1, 721, -1, -1, - 12, -1, 51, 52, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 633, -1, -1, - -1, -1, -1, -1, -1, -1, 642, -1, -1, 753, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, 93, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, 162, 791, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - 102, 103, 104, -1, 106, 107, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - 102, 103, 104, -1, 106, 107, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - 102, 103, 104, -1, 106, 107, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, 86, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - 92, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 49, -1, -1, -1, 784, 654, -1, -1, -1, + -1, -1, -1, -1, -1, 663, -1, 649, 650, -1, + -1, -1, 801, -1, -1, -1, -1, -1, -1, 808, + 662, -1, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 832, 49, -1, -1, -1, -1, -1, + -1, 840, -1, -1, -1, -1, -1, -1, -1, 3, + 4, 5, 6, 7, -1, -1, -1, -1, 12, -1, + -1, -1, 159, 160, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 160, -1, -1, -1, -1, + -1, -1, -1, 735, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, 768, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, 102, 103, + 104, -1, 106, 107, 108, 109, 110, 111, -1, 811, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, -1, 49, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, 102, 103, + 104, -1, 106, 107, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, -1, 49, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, 102, 103, + 104, -1, 106, 107, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, 90, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, 88, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, 86, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, 92, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, 90, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, 110, 111, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, 154, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, 26, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, -1, -1, - -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, -1, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, 26, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, 88, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, -1, -1, - -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, -1, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, 26, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, -1, -1, - -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, -1, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, 26, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, -1, -1, - -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, -1, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, 26, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, -1, -1, - -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, -1, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, 162, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, - 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, 71, - 72, 73, 74, 75, -1, 77, -1, -1, -1, 81, - 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, - -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, - -1, 103, 104, -1, 106, -1, 108, 109, -1, -1, - -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, - -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, - 132, -1, -1, 135, 136, -1, 138, -1, -1, -1, - 142, 3, 4, 5, 6, 7, 148, 149, 150, 151, - 12, -1, -1, 155, 156, -1, 158, -1, 160, 161, - -1, 163, -1, -1, -1, -1, -1, -1, -1, 31, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, 110, 111, -1, -1, + -1, -1, 116, 117, 118, 119, 120, 121, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + 154, 155, 156, -1, 158, -1, 160, 161, -1, 163, + -1, -1, 26, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, -1, -1, -1, -1, + -1, -1, 116, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + -1, 155, 156, -1, 158, -1, 160, 161, -1, 163, + -1, -1, 26, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, -1, -1, -1, -1, + -1, -1, 116, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + -1, 155, 156, -1, 158, -1, 160, 161, -1, 163, + -1, -1, 26, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, -1, -1, -1, -1, + -1, -1, 116, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + -1, 155, 156, -1, 158, -1, 160, 161, -1, 163, + -1, -1, 26, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, -1, -1, -1, -1, + -1, -1, 116, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + -1, 155, 156, -1, 158, -1, 160, 161, -1, 163, + -1, -1, 26, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, -1, -1, -1, -1, + -1, -1, 116, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + -1, 155, 156, -1, 158, -1, 160, 161, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, 71, 72, 73, + 74, 75, -1, 77, -1, -1, -1, 81, 82, 83, + 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, + 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, + 104, -1, 106, -1, 108, 109, -1, -1, -1, -1, + -1, -1, 116, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + -1, 135, 136, -1, 138, -1, -1, -1, 142, 3, + 4, 5, 6, 7, 148, 149, 150, 151, 12, -1, + -1, 155, 156, -1, 158, -1, 160, 161, -1, 163, + -1, -1, -1, -1, -1, -1, -1, 31, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, + -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, + 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, + 64, 65, 66, -1, -1, -1, -1, 71, 72, 73, + 74, 75, -1, -1, -1, -1, -1, 81, 82, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 101, 49, -1, + -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, + -1, -1, -1, 117, 118, -1, -1, -1, -1, -1, + -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, + 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, + -1, -1, -1, -1, 148, 149, 150, 151, -1, -1, + -1, 155, 156, -1, 158, -1, -1, -1, -1, 163, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, + 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, + 63, 64, 65, 66, -1, -1, -1, -1, 71, 72, + 73, 74, 75, -1, -1, -1, -1, -1, 81, 82, + -1, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 101, 49, + -1, -1, -1, -1, -1, -1, 109, -1, -1, -1, + -1, -1, -1, -1, 117, 118, -1, -1, -1, -1, + -1, -1, -1, 126, 127, 128, 129, 130, 131, 132, + -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, + 12, -1, -1, -1, -1, 148, 149, 150, 151, -1, + -1, -1, 155, 156, -1, 158, -1, 160, -1, -1, + 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, -1, -1, 81, - 82, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 101, - 49, -1, -1, -1, -1, -1, -1, 109, -1, -1, + 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, + -1, -1, -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, -1, -1, -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, 150, 151, - -1, -1, -1, 155, 156, -1, 158, -1, -1, -1, + -1, -1, -1, 155, 156, -1, 158, -1, 160, -1, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, -1, -1, - 81, 82, -1, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 101, 49, -1, -1, -1, -1, -1, -1, 109, -1, + 81, 82, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 101, -1, -1, -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, -1, -1, -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, @@ -2349,8 +2380,8 @@ -1, -1, -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, - 150, 151, -1, -1, -1, 155, 156, -1, 158, -1, - 160, -1, -1, 163, -1, -1, -1, -1, -1, -1, + 150, 151, -1, -1, -1, 155, 156, -1, 158, 159, + -1, -1, 31, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, -1, -1, @@ -2362,8 +2393,8 @@ -1, -1, -1, -1, -1, -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, - 149, 150, 151, -1, -1, -1, 155, 156, -1, 158, - -1, 160, -1, -1, 163, -1, -1, -1, -1, -1, + 149, 150, 151, -1, -1, -1, 155, 156, 26, 158, + -1, -1, -1, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, -1, @@ -2376,7 +2407,7 @@ 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, 150, 151, -1, -1, -1, 155, 156, -1, - 158, 159, -1, -1, 31, 163, -1, -1, -1, -1, + 158, -1, -1, -1, 31, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, @@ -2389,7 +2420,7 @@ 127, 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, 150, 151, -1, -1, -1, 155, 156, - 26, 158, -1, -1, -1, -1, 163, -1, -1, -1, + -1, 158, -1, -1, -1, 31, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, @@ -2441,7 +2472,7 @@ -1, -1, -1, 126, 127, 128, 129, 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, 150, 151, -1, - -1, -1, 155, 156, -1, 158, -1, -1, -1, 31, + -1, -1, 155, 156, -1, 158, -1, -1, -1, -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, @@ -2455,7 +2486,7 @@ 132, -1, 3, 4, 5, 6, 7, -1, -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, 150, 151, -1, -1, -1, 155, 156, -1, 158, -1, -1, -1, - 31, 163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, -1, -1, -1, -1, @@ -2465,64 +2496,38 @@ 101, -1, -1, -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, -1, -1, -1, -1, -1, -1, 126, 127, 128, 129, 130, - 131, 132, -1, 3, 4, 5, 6, 7, -1, -1, - -1, 142, 12, -1, -1, -1, -1, 148, 149, 150, - 151, -1, -1, -1, 155, 156, -1, 158, -1, -1, - -1, -1, 163, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 42, 43, -1, -1, -1, -1, 48, -1, - 50, 51, 52, 53, 54, 55, -1, -1, 58, 59, - 60, 61, 62, 63, 64, 65, 66, -1, -1, -1, - -1, 71, 72, 73, 74, 75, -1, -1, -1, -1, - -1, 81, 82, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 101, -1, -1, -1, -1, -1, -1, -1, 109, - -1, -1, -1, -1, -1, -1, -1, 117, 118, -1, - -1, -1, -1, -1, -1, -1, 126, 127, 128, 129, - 130, 131, 132, -1, 3, 4, 5, 6, 7, -1, - -1, -1, 142, 12, -1, -1, -1, -1, 148, 149, - 150, 151, -1, -1, -1, 155, 156, -1, 158, -1, - -1, -1, -1, 163, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 42, 43, -1, -1, -1, -1, 48, - -1, 50, 51, 52, 53, 54, 55, -1, -1, 58, - 59, 60, 61, 62, 63, 64, 65, 66, -1, -1, - -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, - -1, -1, 81, 82, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, - 109, -1, -1, -1, -1, -1, -1, -1, 117, 118, - -1, -1, -1, -1, -1, -1, -1, 126, 127, 128, - 129, 130, 131, 132, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 142, -1, -1, -1, -1, -1, 148, - 149, 150, 151, 9, 10, 11, 155, 156, -1, 158, - -1, -1, -1, -1, 163, -1, -1, -1, -1, 25, + 131, 132, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 142, -1, -1, -1, -1, -1, 148, 149, 150, + 151, 9, 10, 11, 155, 156, -1, 158, -1, -1, + -1, -1, 163, -1, -1, -1, -1, 25, -1, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + -1, 49, 9, 10, 11, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 25, -1, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, -1, 49, 9, 10, 11, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, -1, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, -1, 49, 9, 10, 11, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 25, -1, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, -1, 49, 9, 10, 11, -1, -1, + 46, 47, -1, 49, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, -1, 49, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, - 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 25, 162, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, + -1, -1, -1, 25, 162, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, -1, 49, -1, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 25, 162, 27, 28, + -1, -1, -1, -1, -1, 162, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, 9, 10, 11, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 160, 25, -1, 27, + -1, -1, -1, -1, -1, -1, 162, 25, -1, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, - 160, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 162, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -2537,72 +2542,79 @@ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, 160, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, -1, 49, -1, 9, + 42, 43, 44, 45, 46, 47, -1, 49, 9, 10, + 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 25, 160, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, -1, 49, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 159, 25, -1, 27, 28, 29, + -1, -1, -1, -1, -1, 25, 160, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, - 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 159, 25, -1, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, - 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, 159, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, - 49, -1, 9, 10, 11, -1, -1, -1, -1, -1, + 49, 9, 10, 11, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 25, 159, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + -1, 49, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, 159, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, -1, 49, 9, 10, 11, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, - 159, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, -1, 49, -1, -1, -1, -1, -1, -1, + 47, -1, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, 159, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, -1, 49, -1, 9, 10, 11, -1, -1, + 46, 47, -1, 49, 9, 10, 11, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 25, 159, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, -1, 49, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, 159, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, -1, 49, 9, 10, 11, -1, + 44, 45, 46, 47, -1, 49, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, 159, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, -1, 49, -1, -1, -1, + 43, 44, 45, 46, 47, -1, 49, 9, 10, 11, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 25, 159, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, -1, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 9, 10, 11, -1, -1, -1, - -1, -1, -1, 159, -1, -1, -1, -1, -1, -1, - 25, 125, 27, 28, 29, 30, 31, 32, 33, 34, + -1, -1, -1, -1, -1, 159, -1, 9, 10, 11, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 125, 25, -1, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, -1, 49, 42, 43, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 125, -1, -1, -1, -1, -1, 63, + -1, -1, 9, 10, 11, -1, -1, 71, 72, 73, + -1, -1, -1, -1, -1, -1, -1, 81, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, -1, 49, -1, -1, 109, -1, -1, -1, -1, + -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 127, 128, 129, 130, 131, 132, -1, + -1, -1, -1, -1, 9, 10, 11, -1, 142, -1, + -1, -1, -1, -1, 148, 149, 150, 151, -1, -1, + 25, 155, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, -1, 49, 42, 43, -1, -1, -1, + 45, 46, 47, -1, 49, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 125, -1, -1, -1, 63, -1, -1, 9, - 10, 11, -1, -1, 71, 72, 73, -1, -1, -1, - -1, -1, -1, -1, 81, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, - -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, - 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 127, 128, 129, 130, 131, 132, -1, -1, -1, -1, - -1, 9, 10, 11, -1, 142, -1, -1, -1, -1, - -1, 148, 149, 150, 151, -1, -1, 25, 155, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - -1, 49, 10, 11, -1, -1, -1, -1, -1, -1, + 25, -1, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 11, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, -1, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 11, 49, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 25, -1, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 25, 49, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - -1, 49, 27, 28, 29, 30, 31, 32, 33, 34, + 25, 49, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, -1, 49, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, @@ -2624,87 +2636,87 @@ 119, 120, 121, 126, 127, 128, 129, 130, 131, 132, 135, 136, 138, 142, 148, 149, 150, 151, 154, 155, 156, 158, 160, 161, 163, 168, 169, 172, 175, 176, - 183, 184, 186, 187, 188, 190, 241, 242, 243, 246, - 247, 255, 258, 262, 263, 265, 266, 272, 273, 274, - 275, 276, 277, 278, 279, 284, 289, 291, 292, 293, - 294, 295, 73, 109, 148, 156, 243, 262, 262, 158, - 262, 262, 262, 262, 262, 262, 262, 109, 148, 151, - 158, 168, 247, 265, 266, 274, 265, 262, 262, 262, - 262, 262, 262, 262, 262, 31, 262, 287, 288, 148, - 151, 168, 247, 249, 250, 274, 277, 278, 284, 262, - 158, 253, 158, 26, 63, 238, 262, 175, 158, 158, - 158, 158, 158, 160, 262, 160, 262, 73, 73, 160, - 241, 262, 266, 161, 262, 151, 168, 170, 171, 75, - 163, 213, 214, 75, 215, 243, 120, 120, 158, 158, - 158, 158, 158, 158, 151, 161, 168, 168, 241, 262, - 266, 242, 262, 294, 173, 161, 151, 158, 8, 160, - 73, 73, 160, 31, 185, 63, 145, 9, 10, 11, - 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 49, 160, 51, 52, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 158, 145, - 63, 124, 63, 161, 163, 278, 63, 63, 185, 262, - 151, 168, 294, 145, 145, 264, 266, 125, 164, 8, - 260, 151, 168, 145, 158, 254, 145, 124, 278, 159, - 262, 262, 262, 280, 8, 160, 85, 262, 239, 240, - 262, 241, 266, 73, 199, 262, 160, 160, 160, 13, - 160, 160, 173, 160, 168, 93, 8, 160, 161, 263, - 266, 8, 160, 13, 8, 160, 185, 181, 182, 266, - 266, 290, 266, 159, 126, 266, 285, 286, 287, 168, - 167, 160, 161, 158, 125, 159, 159, 159, 119, 162, - 174, 175, 183, 184, 262, 73, 31, 211, 212, 241, - 266, 73, 122, 189, 122, 191, 73, 158, 280, 73, - 272, 278, 284, 262, 262, 262, 26, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 249, - 31, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 211, 73, 272, 280, 73, 161, 272, - 281, 282, 283, 280, 262, 280, 280, 159, 168, 73, - 73, 31, 262, 31, 262, 168, 272, 211, 272, 281, - 159, 159, 164, 262, 158, 159, 160, 8, 93, 93, - 13, 8, 159, 159, 42, 43, 63, 81, 127, 148, - 151, 168, 247, 255, 256, 257, 162, 93, 73, 171, - 262, 214, 256, 75, 158, 8, 159, 8, 159, 159, - 160, 158, 8, 159, 159, 158, 162, 167, 211, 241, - 266, 158, 162, 264, 159, 8, 13, 148, 151, 168, - 248, 123, 192, 193, 248, 161, 158, 127, 153, 208, - 209, 210, 248, 164, 158, 158, 278, 262, 26, 64, - 266, 159, 158, 158, 164, 262, 158, 269, 270, 271, - 63, 161, 164, 162, 164, 164, 264, 264, 125, 159, - 251, 26, 175, 262, 26, 175, 203, 239, 262, 266, - 31, 195, 266, 256, 73, 26, 175, 198, 26, 161, - 200, 256, 256, 256, 259, 261, 158, 151, 168, 145, - 105, 73, 162, 13, 208, 182, 160, 266, 285, 286, - 13, 211, 162, 159, 159, 31, 241, 266, 256, 151, - 168, 193, 161, 8, 216, 208, 159, 8, 31, 75, - 211, 211, 262, 249, 211, 211, 162, 211, 63, 63, - 267, 280, 262, 31, 262, 124, 252, 173, 204, 159, - 173, 160, 125, 194, 266, 194, 13, 173, 160, 201, - 160, 201, 125, 164, 8, 260, 259, 168, 73, 158, - 256, 159, 159, 262, 159, 160, 264, 168, 216, 248, - 102, 107, 109, 110, 111, 112, 113, 114, 115, 162, - 217, 219, 232, 233, 234, 235, 237, 159, 107, 244, - 210, 75, 13, 159, 159, 254, 159, 159, 159, 280, - 280, 124, 268, 164, 162, 264, 281, 205, 68, 69, - 206, 160, 86, 239, 195, 159, 159, 256, 92, 201, - 95, 96, 97, 201, 162, 256, 256, 159, 248, 244, - 162, 73, 220, 248, 75, 236, 243, 235, 8, 160, - 161, 158, 161, 31, 75, 13, 256, 164, 164, 281, - 68, 69, 207, 158, 175, 160, 159, 26, 175, 197, - 197, 160, 95, 160, 262, 26, 160, 202, 162, 125, - 75, 161, 13, 8, 160, 161, 221, 13, 8, 160, - 218, 73, 173, 31, 75, 245, 173, 75, 13, 256, - 271, 158, 26, 70, 262, 26, 175, 196, 173, 160, - 202, 173, 256, 159, 173, 256, 248, 73, 222, 223, - 224, 225, 227, 228, 229, 248, 256, 75, 185, 13, - 162, 75, 8, 159, 162, 13, 256, 262, 173, 160, - 159, 173, 90, 173, 161, 162, 162, 224, 160, 93, - 152, 160, 145, 13, 73, 256, 31, 75, 256, 159, - 175, 88, 160, 173, 230, 235, 226, 248, 73, 256, - 158, 75, 26, 160, 162, 73, 8, 208, 173, 105, - 177, 179, 180, 248, 159, 158, 157, 178, 180, 160, - 161, 231, 248, 161, 173, 75, 173, 162, 159, 162, - 161, 173, 162 + 183, 184, 186, 187, 188, 190, 191, 242, 243, 244, + 247, 248, 256, 259, 263, 264, 266, 267, 273, 274, + 275, 276, 277, 278, 279, 280, 285, 290, 292, 293, + 294, 295, 296, 73, 109, 148, 156, 244, 263, 263, + 158, 263, 263, 263, 263, 263, 263, 263, 109, 148, + 151, 158, 168, 248, 266, 267, 275, 266, 263, 263, + 263, 263, 263, 263, 263, 263, 31, 263, 288, 289, + 148, 151, 168, 248, 250, 251, 275, 278, 279, 285, + 263, 158, 254, 158, 26, 63, 239, 263, 175, 158, + 158, 158, 158, 158, 160, 263, 160, 263, 73, 73, + 160, 242, 263, 267, 161, 263, 151, 168, 170, 171, + 75, 163, 214, 215, 75, 216, 244, 120, 120, 158, + 158, 158, 158, 158, 158, 151, 161, 168, 168, 242, + 263, 267, 243, 263, 295, 173, 161, 151, 158, 8, + 160, 73, 73, 73, 160, 31, 185, 63, 145, 9, + 10, 11, 25, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 49, 160, 51, 52, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 158, 145, 63, 124, 63, 161, 163, 279, 63, 63, + 185, 263, 151, 168, 295, 145, 145, 265, 267, 125, + 164, 8, 261, 151, 168, 145, 158, 255, 145, 124, + 279, 159, 263, 263, 263, 281, 8, 160, 85, 263, + 240, 241, 263, 242, 267, 73, 200, 263, 160, 160, + 160, 13, 160, 160, 173, 160, 168, 93, 8, 160, + 161, 264, 267, 8, 160, 13, 8, 160, 185, 181, + 182, 267, 267, 291, 267, 159, 126, 267, 286, 287, + 288, 168, 167, 160, 161, 158, 125, 159, 159, 159, + 119, 162, 174, 175, 183, 184, 263, 73, 31, 212, + 213, 242, 267, 73, 122, 189, 122, 192, 161, 73, + 158, 281, 73, 273, 279, 285, 263, 263, 263, 26, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 250, 31, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 212, 73, 273, 281, + 73, 161, 273, 282, 283, 284, 281, 263, 281, 281, + 159, 168, 73, 73, 31, 263, 31, 263, 168, 273, + 212, 273, 282, 159, 159, 164, 263, 158, 159, 160, + 8, 93, 93, 13, 8, 159, 159, 42, 43, 63, + 81, 127, 148, 151, 168, 248, 256, 257, 258, 162, + 93, 73, 171, 263, 215, 257, 75, 158, 8, 159, + 8, 159, 159, 160, 158, 8, 159, 159, 158, 162, + 167, 212, 242, 267, 158, 162, 265, 159, 8, 13, + 148, 151, 168, 249, 123, 193, 194, 249, 161, 217, + 158, 127, 153, 209, 210, 211, 249, 164, 158, 158, + 279, 263, 26, 64, 267, 159, 158, 158, 164, 263, + 158, 270, 271, 272, 63, 161, 164, 162, 164, 164, + 265, 265, 125, 159, 252, 26, 175, 263, 26, 175, + 204, 240, 263, 267, 31, 196, 267, 257, 73, 26, + 175, 199, 26, 161, 201, 257, 257, 257, 260, 262, + 158, 151, 168, 145, 105, 73, 162, 13, 209, 182, + 160, 267, 286, 287, 13, 212, 162, 159, 159, 31, + 242, 267, 257, 151, 168, 194, 161, 8, 217, 102, + 107, 109, 110, 111, 112, 113, 114, 115, 162, 218, + 220, 233, 234, 235, 236, 238, 209, 159, 8, 31, + 75, 212, 212, 263, 250, 212, 212, 162, 212, 63, + 63, 268, 281, 263, 31, 263, 124, 253, 173, 205, + 159, 173, 160, 125, 195, 267, 195, 13, 173, 160, + 202, 160, 202, 125, 164, 8, 261, 260, 168, 73, + 158, 257, 159, 159, 263, 159, 160, 265, 168, 217, + 249, 162, 73, 221, 249, 75, 237, 244, 236, 8, + 160, 159, 107, 245, 211, 75, 13, 159, 159, 255, + 159, 159, 159, 281, 281, 124, 269, 164, 162, 265, + 282, 206, 68, 69, 207, 160, 86, 240, 196, 159, + 159, 257, 92, 202, 95, 96, 97, 202, 162, 257, + 257, 159, 249, 245, 162, 13, 8, 160, 161, 222, + 13, 8, 160, 219, 73, 161, 158, 161, 31, 75, + 13, 257, 164, 164, 282, 68, 69, 208, 158, 175, + 160, 159, 26, 175, 198, 198, 160, 95, 160, 263, + 26, 160, 203, 162, 125, 75, 161, 257, 249, 73, + 223, 224, 225, 226, 228, 229, 230, 249, 257, 75, + 185, 13, 173, 31, 75, 246, 173, 75, 13, 257, + 272, 158, 26, 70, 263, 26, 175, 197, 173, 160, + 203, 173, 257, 159, 173, 162, 225, 160, 93, 152, + 160, 145, 13, 73, 257, 162, 75, 8, 159, 162, + 13, 257, 263, 173, 160, 159, 173, 90, 173, 161, + 162, 231, 236, 227, 249, 73, 257, 158, 31, 75, + 257, 159, 175, 88, 160, 173, 73, 8, 209, 75, + 26, 160, 162, 249, 159, 173, 105, 177, 179, 180, + 160, 161, 232, 158, 157, 178, 180, 173, 249, 161, + 162, 75, 173, 159, 162, 161, 173, 162 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ @@ -2718,42 +2730,42 @@ 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 177, 177, 178, 178, 179, 179, 180, 181, 181, 182, 183, 184, 185, 185, 186, 187, 187, - 188, 188, 188, 188, 189, 189, 190, 191, 191, 192, - 192, 193, 193, 194, 194, 195, 195, 196, 196, 197, - 197, 198, 198, 199, 199, 200, 200, 200, 200, 201, - 201, 201, 202, 202, 203, 203, 204, 204, 205, 205, - 206, 206, 207, 207, 208, 208, 209, 209, 209, 209, - 209, 209, 209, 209, 210, 210, 210, 210, 211, 211, - 212, 212, 212, 212, 212, 212, 213, 213, 214, 214, - 214, 215, 215, 215, 215, 216, 216, 217, 217, 217, - 218, 217, 219, 220, 220, 221, 221, 222, 222, 223, - 223, 224, 224, 225, 226, 226, 227, 227, 228, 229, - 229, 230, 230, 231, 231, 232, 232, 233, 233, 234, - 234, 235, 235, 235, 235, 235, 235, 236, 236, 236, - 236, 237, 237, 238, 238, 239, 239, 240, 240, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 242, 242, 242, 242, 243, 244, 244, 245, 245, 245, - 245, 246, 246, 246, 246, 246, 246, 246, 246, 247, - 247, 247, 247, 248, 248, 248, 249, 249, 250, 250, - 251, 251, 252, 253, 253, 253, 254, 254, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 256, 256, 256, 256, 256, 256, 256, 256, 256, 257, - 258, 258, 258, 258, 258, 258, 259, 259, 260, 260, - 261, 261, 261, 261, 262, 262, 263, 264, 265, 266, - 266, 267, 267, 268, 269, 269, 270, 271, 271, 271, - 272, 272, 273, 273, 274, 275, 275, 276, 276, 276, - 277, 277, 277, 277, 278, 278, 278, 279, 279, 280, - 280, 281, 281, 282, 282, 282, 283, 283, 284, 284, - 285, 285, 286, 286, 286, 287, 287, 288, 288, 288, - 288, 288, 288, 288, 288, 289, 289, 289, 289, 289, - 289, 289, 290, 290, 291, 291, 292, 292, 292, 293, - 293, 294, 295, 295 + 187, 188, 188, 188, 189, 189, 190, 191, 192, 192, + 193, 193, 194, 194, 195, 195, 196, 196, 197, 197, + 198, 198, 199, 199, 200, 200, 201, 201, 201, 201, + 202, 202, 202, 203, 203, 204, 204, 205, 205, 206, + 206, 207, 207, 208, 208, 209, 209, 210, 210, 210, + 210, 210, 210, 210, 210, 211, 211, 211, 211, 212, + 212, 213, 213, 213, 213, 213, 213, 214, 214, 215, + 215, 215, 216, 216, 216, 216, 217, 217, 218, 218, + 218, 219, 218, 220, 221, 221, 222, 222, 223, 223, + 224, 224, 225, 225, 226, 227, 227, 228, 228, 229, + 230, 230, 231, 231, 232, 232, 233, 233, 234, 234, + 235, 235, 236, 236, 236, 236, 236, 236, 237, 237, + 237, 237, 238, 238, 239, 239, 240, 240, 241, 241, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, + 242, 243, 243, 243, 243, 244, 245, 245, 246, 246, + 246, 246, 247, 247, 247, 247, 247, 247, 247, 247, + 248, 248, 248, 248, 249, 249, 249, 250, 250, 251, + 251, 252, 252, 253, 254, 254, 254, 255, 255, 256, + 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, + 256, 257, 257, 257, 257, 257, 257, 257, 257, 257, + 258, 259, 259, 259, 259, 259, 259, 260, 260, 261, + 261, 262, 262, 262, 262, 263, 263, 264, 265, 266, + 267, 267, 268, 268, 269, 270, 270, 271, 272, 272, + 272, 273, 273, 274, 274, 275, 276, 276, 277, 277, + 277, 278, 278, 278, 278, 279, 279, 279, 280, 280, + 281, 281, 282, 282, 283, 283, 283, 284, 284, 285, + 285, 286, 286, 287, 287, 287, 288, 288, 289, 289, + 289, 289, 289, 289, 289, 289, 290, 290, 290, 290, + 290, 290, 290, 291, 291, 292, 292, 293, 293, 293, + 294, 294, 295, 296, 296 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -2767,42 +2779,42 @@ 3, 3, 1, 2, 2, 5, 8, 8, 5, 1, 14, 3, 3, 1, 0, 0, 4, 1, 2, 8, 1, 3, 1, 1, 1, 0, 1, 9, 7, 6, - 1, 2, 2, 1, 0, 2, 1, 0, 2, 0, - 2, 1, 3, 0, 2, 1, 2, 1, 4, 1, - 4, 1, 4, 3, 5, 3, 4, 4, 5, 0, - 5, 4, 1, 1, 1, 4, 0, 6, 0, 7, - 0, 2, 0, 3, 1, 0, 2, 3, 5, 4, - 4, 5, 7, 6, 0, 1, 1, 1, 1, 0, - 1, 1, 2, 3, 3, 4, 3, 1, 1, 2, - 4, 3, 5, 1, 3, 2, 0, 3, 2, 1, - 0, 9, 3, 1, 3, 1, 3, 0, 1, 1, - 2, 2, 2, 3, 1, 3, 1, 1, 3, 4, - 3, 0, 1, 1, 3, 1, 1, 0, 1, 1, - 2, 1, 1, 1, 1, 1, 1, 3, 5, 1, - 3, 5, 4, 3, 1, 0, 1, 3, 1, 6, - 3, 4, 6, 2, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, + 5, 1, 2, 2, 0, 2, 1, 1, 0, 2, + 0, 2, 1, 3, 0, 2, 1, 2, 1, 4, + 1, 4, 1, 4, 3, 5, 3, 4, 4, 5, + 0, 5, 4, 1, 1, 1, 4, 0, 6, 0, + 7, 0, 2, 0, 3, 1, 0, 2, 3, 5, + 4, 4, 5, 7, 6, 0, 1, 1, 1, 1, + 0, 1, 1, 2, 3, 3, 4, 3, 1, 1, + 2, 4, 3, 5, 1, 3, 2, 0, 3, 2, + 1, 0, 9, 3, 1, 3, 1, 3, 0, 1, + 1, 2, 2, 2, 3, 1, 3, 1, 1, 3, + 4, 3, 0, 1, 1, 3, 1, 1, 0, 1, + 1, 2, 1, 1, 1, 1, 1, 1, 3, 5, + 1, 3, 5, 4, 3, 1, 0, 1, 3, 1, + 6, 3, 4, 6, 2, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, - 5, 4, 1, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 1, 1, 1, 1, 2, 1, 9, 10, - 2, 2, 4, 4, 1, 0, 4, 3, 4, 1, - 2, 4, 6, 5, 6, 6, 6, 6, 4, 1, - 1, 3, 2, 1, 3, 2, 1, 1, 4, 1, - 2, 0, 2, 0, 2, 3, 0, 3, 1, 1, + 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, + 1, 5, 4, 1, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 1, 1, 1, 1, 2, 1, 9, + 10, 2, 2, 4, 4, 1, 0, 4, 3, 4, + 1, 2, 4, 6, 5, 6, 6, 6, 6, 4, + 1, 1, 3, 2, 1, 3, 2, 1, 1, 4, + 1, 2, 0, 2, 0, 2, 3, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 3, 2, 2, 2, 4, 3, 1, 3, - 1, 1, 1, 3, 2, 1, 0, 2, 0, 1, - 5, 3, 3, 1, 1, 1, 1, 1, 1, 5, - 1, 2, 0, 3, 4, 4, 3, 1, 1, 0, - 1, 2, 3, 3, 1, 4, 4, 1, 1, 1, - 1, 3, 2, 1, 4, 4, 1, 1, 4, 0, - 1, 1, 1, 4, 4, 1, 1, 3, 1, 2, - 3, 1, 1, 4, 0, 0, 2, 5, 3, 3, - 1, 6, 4, 4, 2, 4, 4, 2, 2, 4, - 2, 2, 1, 3, 3, 3, 4, 4, 4, 4, - 3, 3, 3, 3 + 1, 1, 1, 3, 2, 2, 2, 4, 3, 1, + 3, 1, 1, 1, 3, 2, 1, 0, 2, 0, + 1, 5, 3, 3, 1, 1, 1, 1, 1, 1, + 5, 1, 2, 0, 3, 4, 4, 3, 1, 1, + 0, 1, 2, 3, 3, 1, 4, 4, 1, 1, + 1, 1, 3, 2, 1, 4, 4, 1, 1, 4, + 0, 1, 1, 1, 4, 4, 1, 1, 3, 1, + 2, 3, 1, 1, 4, 0, 0, 2, 5, 3, + 3, 1, 6, 4, 4, 2, 4, 4, 2, 2, + 4, 2, 2, 1, 3, 3, 3, 4, 4, 4, + 4, 3, 3, 3, 3 }; @@ -3491,7 +3503,7 @@ { *root = NNEW(n_PROGRAM)->appendChild((yyvsp[0])); } -#line 3495 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3507 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 3: @@ -3499,7 +3511,7 @@ { (yyval) = (yyvsp[-1])->appendChild((yyvsp[0])); } -#line 3503 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3515 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 4: @@ -3507,7 +3519,7 @@ { (yyval) = NNEW(n_STATEMENT_LIST); } -#line 3511 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3523 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 5: @@ -3515,7 +3527,7 @@ { (yyval) = NTYPE((yyvsp[0]), n_SYMBOL_NAME); } -#line 3519 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3531 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 6: @@ -3523,7 +3535,7 @@ { (yyval) = NMORE((yyvsp[-2]), (yyvsp[0])); } -#line 3527 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3539 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 10: @@ -3533,7 +3545,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-3])); NMORE((yyval), (yyvsp[0])); } -#line 3537 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3549 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 11: @@ -3545,7 +3557,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 3549 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3561 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 12: @@ -3556,7 +3568,7 @@ (yyvsp[-4])->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-4])); } -#line 3560 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3572 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 13: @@ -3569,7 +3581,7 @@ (yyvsp[-3])->appendChild((yyvsp[-1])); (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-3])); } -#line 3573 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3585 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 14: @@ -3580,7 +3592,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 3584 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3596 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 15: @@ -3589,7 +3601,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3593 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3605 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 16: @@ -3597,7 +3609,7 @@ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 3601 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3613 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 17: @@ -3606,7 +3618,7 @@ (yyval) = NNEW(n_USE_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 3610 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3622 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 18: @@ -3616,7 +3628,7 @@ (yyval)->appendChild((yyvsp[0])); (yyval)->appendChild(NNEW(n_EMPTY)); } -#line 3620 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3632 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 19: @@ -3627,7 +3639,7 @@ NTYPE((yyvsp[0]), n_STRING); (yyval)->appendChild((yyvsp[0])); } -#line 3631 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3643 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 20: @@ -3638,7 +3650,7 @@ (yyval)->appendChild((yyvsp[0])); (yyval)->appendChild(NNEW(n_EMPTY)); } -#line 3642 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3654 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 21: @@ -3650,7 +3662,7 @@ NTYPE((yyvsp[0]), n_STRING); (yyval)->appendChild((yyvsp[0])); } -#line 3654 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3666 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 22: @@ -3662,7 +3674,7 @@ ->appendChild(NTYPE((yyvsp[-2]), n_STRING)) ->appendChild((yyvsp[0]))); } -#line 3666 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3678 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 23: @@ -3674,7 +3686,7 @@ ->appendChild(NTYPE((yyvsp[-2]), n_STRING)) ->appendChild((yyvsp[0]))); } -#line 3678 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3690 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 24: @@ -3682,7 +3694,7 @@ { (yyval) = (yyvsp[-1])->appendChild((yyvsp[0])); } -#line 3686 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3698 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 25: @@ -3690,7 +3702,7 @@ { (yyval) = NNEW(n_STATEMENT_LIST); } -#line 3694 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3706 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 29: @@ -3700,7 +3712,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-3])); NMORE((yyval), (yyvsp[0])); } -#line 3704 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3716 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 31: @@ -3711,7 +3723,7 @@ (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3715 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3727 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 32: @@ -3719,7 +3731,7 @@ { (yyval) = NTYPE((yyvsp[0]), n_OPEN_TAG); } -#line 3723 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3735 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 33: @@ -3727,7 +3739,7 @@ { (yyval) = NTYPE((yyvsp[0]), n_OPEN_TAG); } -#line 3731 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3743 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 34: @@ -3735,7 +3747,7 @@ { (yyval) = NTYPE((yyvsp[0]), n_CLOSE_TAG); } -#line 3739 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3751 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 35: @@ -3743,7 +3755,7 @@ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 3747 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3759 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 36: @@ -3778,7 +3790,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); } -#line 3782 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3794 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 37: @@ -3798,7 +3810,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); NMORE((yyval), (yyvsp[0])); } -#line 3802 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3814 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 38: @@ -3810,7 +3822,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-4])); } -#line 3814 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3826 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 39: @@ -3823,7 +3835,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-6])); NMORE((yyval), (yyvsp[0])); } -#line 3827 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3839 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 40: @@ -3841,7 +3853,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-8])); } -#line 3845 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3857 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 41: @@ -3853,7 +3865,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-4])); } -#line 3857 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3869 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 42: @@ -3865,7 +3877,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3869 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3881 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 43: @@ -3877,7 +3889,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 3881 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3893 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 44: @@ -3889,7 +3901,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3893 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3905 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 45: @@ -3901,7 +3913,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 3905 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3917 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 46: @@ -3913,7 +3925,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3917 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3929 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 47: @@ -3925,7 +3937,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 3929 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3941 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 48: @@ -3937,7 +3949,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 3941 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3953 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 49: @@ -3947,7 +3959,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3951 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3963 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 50: @@ -3957,7 +3969,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3961 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3973 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 51: @@ -3967,7 +3979,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3971 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3983 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 52: @@ -3976,7 +3988,7 @@ NTYPE((yyvsp[0]), n_INLINE_HTML); (yyval) = (yyvsp[0]); } -#line 3980 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 3992 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 53: @@ -3985,7 +3997,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3989 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4001 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 54: @@ -3994,7 +4006,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 3998 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4010 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 55: @@ -4005,7 +4017,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 4009 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4021 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 56: @@ -4027,7 +4039,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-7])); } -#line 4031 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4043 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 57: @@ -4048,7 +4060,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-7])); } -#line 4052 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4064 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 58: @@ -4059,7 +4071,7 @@ (yyvsp[-4])->appendChild((yyvsp[0])); (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-4])); } -#line 4063 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4075 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 59: @@ -4068,7 +4080,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild(NNEW(n_EMPTY)); NMORE((yyval), (yyvsp[0])); } -#line 4072 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4084 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 60: @@ -4087,7 +4099,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-13])); } -#line 4091 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4103 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 61: @@ -4100,7 +4112,7 @@ NMORE((yyval), (yyvsp[0])); } -#line 4104 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4116 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 62: @@ -4113,7 +4125,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-2])); NMORE((yyval), (yyvsp[0])); } -#line 4117 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4129 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 64: @@ -4121,7 +4133,7 @@ { (yyval) = NNEW(n_EMPTY); } -#line 4125 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4137 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 65: @@ -4129,7 +4141,7 @@ { (yyval) = NNEW(n_EMPTY); } -#line 4133 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4145 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 66: @@ -4140,7 +4152,7 @@ NMORE((yyvsp[-3]), (yyvsp[0])); (yyval) = (yyvsp[-3]); } -#line 4144 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4156 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 67: @@ -4149,7 +4161,7 @@ (yyval) = NNEW(n_CATCH_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 4153 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4165 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 68: @@ -4158,7 +4170,7 @@ (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 4162 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4174 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 69: @@ -4171,7 +4183,7 @@ NMORE((yyvsp[-7]), (yyvsp[0])); (yyval) = (yyvsp[-7]); } -#line 4175 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4187 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 70: @@ -4180,7 +4192,7 @@ (yyval) = NNEW(n_UNSET_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 4184 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4196 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 71: @@ -4189,7 +4201,7 @@ (yyvsp[-2])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 4193 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4205 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 75: @@ -4197,7 +4209,7 @@ { (yyval) = NNEW(n_EMPTY); } -#line 4201 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4213 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 76: @@ -4205,7 +4217,7 @@ { (yyval) = NTYPE((yyvsp[0]), n_REFERENCE); } -#line 4209 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4221 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 77: @@ -4221,7 +4233,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-8])); } -#line 4225 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4237 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 78: @@ -4237,7 +4249,7 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); } -#line 4241 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4253 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 79: @@ -4254,32 +4266,37 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); } -#line 4258 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4270 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 80: -#line 744 "parser.y" /* yacc.c:1646 */ +#line 741 "parser.y" /* yacc.c:1646 */ { - NTYPE((yyvsp[0]), n_CLASS_ATTRIBUTES); - (yyval) = (yyvsp[0]); + (yyval) = NNEW(n_TRAIT_DECLARATION); + (yyval)->appendChild(NNEW(n_CLASS_ATTRIBUTES)); + NMORE((yyval), (yyvsp[-4])); + (yyval)->appendChild(NTYPE((yyvsp[-3]), n_CLASS_NAME)); + (yyval)->appendChild(NNEW(n_EMPTY)); + (yyval)->appendChild(NNEW(n_EMPTY)); + (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); + NMORE((yyval), (yyvsp[0])); + + (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); } -#line 4267 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4287 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 81: -#line 748 "parser.y" /* yacc.c:1646 */ +#line 756 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_CLASS_ATTRIBUTES); - NMORE((yyvsp[0]), (yyvsp[-1])); - (yyvsp[0])->appendChild(NTYPE((yyvsp[-1]), n_STRING)); - (yyval) = (yyvsp[0]); } -#line 4279 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4296 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 82: -#line 755 "parser.y" /* yacc.c:1646 */ +#line 760 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_CLASS_ATTRIBUTES); NMORE((yyvsp[0]), (yyvsp[-1])); @@ -4287,155 +4304,158 @@ (yyval) = (yyvsp[0]); } -#line 4291 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4308 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 83: -#line 762 "parser.y" /* yacc.c:1646 */ +#line 767 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_CLASS_ATTRIBUTES); - (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); + NTYPE((yyvsp[0]), n_CLASS_ATTRIBUTES); + NMORE((yyvsp[0]), (yyvsp[-1])); + (yyvsp[0])->appendChild(NTYPE((yyvsp[-1]), n_STRING)); + + (yyval) = (yyvsp[0]); } -#line 4300 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4320 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 84: -#line 769 "parser.y" /* yacc.c:1646 */ +#line 777 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4308 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4328 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 85: -#line 772 "parser.y" /* yacc.c:1646 */ +#line 780 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-1]), n_EXTENDS_LIST)->appendChild((yyvsp[0])); } -#line 4316 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4336 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 87: -#line 782 "parser.y" /* yacc.c:1646 */ + case 88: +#line 794 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4324 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4344 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 88: -#line 785 "parser.y" /* yacc.c:1646 */ + case 89: +#line 797 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_EXTENDS_LIST); (yyvsp[-1])->appendChildren((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 4334 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4354 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 89: -#line 793 "parser.y" /* yacc.c:1646 */ + case 90: +#line 805 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4342 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4362 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 90: -#line 796 "parser.y" /* yacc.c:1646 */ + case 91: +#line 808 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_IMPLEMENTS_LIST); (yyvsp[-1])->appendChildren((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 4352 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4372 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 91: -#line 804 "parser.y" /* yacc.c:1646 */ + case 92: +#line 816 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_IMPLEMENTS_LIST)->appendChild((yyvsp[0])); } -#line 4360 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4380 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 92: -#line 807 "parser.y" /* yacc.c:1646 */ + case 93: +#line 819 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 4368 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4388 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 93: -#line 813 "parser.y" /* yacc.c:1646 */ + case 94: +#line 825 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4376 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4396 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 94: -#line 816 "parser.y" /* yacc.c:1646 */ + case 95: +#line 828 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 4384 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4404 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 96: -#line 823 "parser.y" /* yacc.c:1646 */ + case 97: +#line 835 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_VARIABLE_REFERENCE); (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 4394 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4414 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 98: -#line 832 "parser.y" /* yacc.c:1646 */ + case 99: +#line 844 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-2]), (yyvsp[-3])); NMORE((yyvsp[-2]), (yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 4404 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4424 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 100: -#line 841 "parser.y" /* yacc.c:1646 */ + case 101: +#line 853 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-2]), (yyvsp[-3])); NMORE((yyvsp[-2]), (yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 4414 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4434 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 102: -#line 850 "parser.y" /* yacc.c:1646 */ + case 103: +#line 862 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-2]), (yyvsp[-3])); NMORE((yyvsp[-2]), (yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 4424 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4444 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 103: -#line 858 "parser.y" /* yacc.c:1646 */ + case 104: +#line 870 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARE_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[-2]), n_STRING)); (yyval)->appendChild((yyvsp[0])); (yyval) = NNEW(n_DECLARE_DECLARATION_LIST)->appendChild((yyval)); } -#line 4435 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4455 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 104: -#line 864 "parser.y" /* yacc.c:1646 */ + case 105: +#line 876 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARE_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[-2]), n_STRING)); @@ -4444,19 +4464,19 @@ (yyvsp[-4])->appendChild((yyval)); (yyval) = (yyvsp[-4]); } -#line 4448 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4468 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 105: -#line 875 "parser.y" /* yacc.c:1646 */ + case 106: +#line 887 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 4456 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4476 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 106: -#line 878 "parser.y" /* yacc.c:1646 */ + case 107: +#line 890 "parser.y" /* yacc.c:1646 */ { // ...why does this rule exist? @@ -4467,21 +4487,21 @@ (yyval)->appendChildren((yyvsp[-1])); NEXPAND((yyvsp[-3]), (yyval), (yyvsp[0])); } -#line 4471 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4491 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 107: -#line 888 "parser.y" /* yacc.c:1646 */ + case 108: +#line 900 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-2]), (yyvsp[0])); NMORE((yyvsp[-2]), (yyvsp[-3])); (yyval) = (yyvsp[-2]); } -#line 4481 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4501 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 108: -#line 893 "parser.y" /* yacc.c:1646 */ + case 109: +#line 905 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_STATEMENT); (yyvsp[-4])->appendChild(NNEW(n_EMPTY)); @@ -4491,19 +4511,19 @@ NMORE((yyval), (yyvsp[0])); NMORE((yyval), (yyvsp[-4])); } -#line 4495 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4515 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 109: -#line 905 "parser.y" /* yacc.c:1646 */ + case 110: +#line 917 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_STATEMENT_LIST); } -#line 4503 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4523 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 110: -#line 908 "parser.y" /* yacc.c:1646 */ + case 111: +#line 920 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_CASE); (yyvsp[-3])->appendChild((yyvsp[-2])); @@ -4512,11 +4532,11 @@ (yyvsp[-4])->appendChild((yyvsp[-3])); (yyval) = (yyvsp[-4]); } -#line 4516 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4536 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 111: -#line 916 "parser.y" /* yacc.c:1646 */ + case 112: +#line 928 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_DEFAULT); (yyvsp[-2])->appendChild((yyvsp[0])); @@ -4524,29 +4544,29 @@ (yyvsp[-3])->appendChild((yyvsp[-2])); (yyval) = (yyvsp[-3]); } -#line 4528 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4548 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 115: -#line 932 "parser.y" /* yacc.c:1646 */ + case 116: +#line 944 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-2]), (yyvsp[0])); NMORE((yyvsp[-2]), (yyvsp[-3])); (yyval) = (yyvsp[-2]); } -#line 4538 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4558 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 116: -#line 940 "parser.y" /* yacc.c:1646 */ + case 117: +#line 952 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CONDITION_LIST); } -#line 4546 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4566 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 117: -#line 943 "parser.y" /* yacc.c:1646 */ + case 118: +#line 955 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-4]), n_ELSEIF); (yyvsp[-4])->appendChild(NSPAN((yyvsp[-3]), n_CONTROL_CONDITION, (yyvsp[-1]))->appendChild((yyvsp[-2]))); @@ -4554,19 +4574,19 @@ (yyval) = (yyvsp[-5])->appendChild((yyvsp[-4])); } -#line 4558 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4578 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 118: -#line 953 "parser.y" /* yacc.c:1646 */ + case 119: +#line 965 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CONDITION_LIST); } -#line 4566 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4586 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 119: -#line 956 "parser.y" /* yacc.c:1646 */ + case 120: +#line 968 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-5]), n_ELSEIF); (yyvsp[-5])->appendChild((yyvsp[-3])); @@ -4574,55 +4594,55 @@ (yyval) = (yyvsp[-6])->appendChild((yyvsp[-5])); } -#line 4578 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4598 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 120: -#line 966 "parser.y" /* yacc.c:1646 */ + case 121: +#line 978 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4586 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4606 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 121: -#line 969 "parser.y" /* yacc.c:1646 */ + case 122: +#line 981 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_ELSE); (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 4596 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4616 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 122: -#line 977 "parser.y" /* yacc.c:1646 */ + case 123: +#line 989 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4604 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4624 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 123: -#line 980 "parser.y" /* yacc.c:1646 */ + case 124: +#line 992 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_ELSE); (yyvsp[-2])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 4614 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4634 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 125: -#line 989 "parser.y" /* yacc.c:1646 */ + case 126: +#line 1001 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER_LIST); } -#line 4622 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4642 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 126: -#line 995 "parser.y" /* yacc.c:1646 */ + case 127: +#line 1007 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-1])); @@ -4631,11 +4651,11 @@ (yyval) = NNEW(n_DECLARATION_PARAMETER_LIST)->appendChild((yyval)); } -#line 4635 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4655 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 127: -#line 1003 "parser.y" /* yacc.c:1646 */ + case 128: +#line 1015 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-2])); @@ -4645,11 +4665,11 @@ (yyval) = NNEW(n_DECLARATION_PARAMETER_LIST)->appendChild((yyval)); } -#line 4649 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4669 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 128: -#line 1012 "parser.y" /* yacc.c:1646 */ + case 129: +#line 1024 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-4])); @@ -4659,11 +4679,11 @@ (yyval) = NNEW(n_DECLARATION_PARAMETER_LIST)->appendChild((yyval)); } -#line 4663 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4683 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 129: -#line 1021 "parser.y" /* yacc.c:1646 */ + case 130: +#line 1033 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-3])); @@ -4672,11 +4692,11 @@ (yyval) = NNEW(n_DECLARATION_PARAMETER_LIST)->appendChild((yyval)); } -#line 4676 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4696 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 130: -#line 1029 "parser.y" /* yacc.c:1646 */ + case 131: +#line 1041 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-1])); @@ -4685,11 +4705,11 @@ (yyval) = (yyvsp[-3])->appendChild((yyval)); } -#line 4689 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4709 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 131: -#line 1037 "parser.y" /* yacc.c:1646 */ + case 132: +#line 1049 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-2])); @@ -4699,11 +4719,11 @@ (yyval) = (yyvsp[-4])->appendChild((yyval)); } -#line 4703 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4723 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 132: -#line 1047 "parser.y" /* yacc.c:1646 */ + case 133: +#line 1059 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-4])); @@ -4713,11 +4733,11 @@ (yyval) = (yyvsp[-6])->appendChild((yyval)); } -#line 4717 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4737 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 133: -#line 1057 "parser.y" /* yacc.c:1646 */ + case 134: +#line 1069 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_DECLARATION_PARAMETER); (yyval)->appendChild((yyvsp[-3])); @@ -4726,147 +4746,147 @@ (yyval) = (yyvsp[-5])->appendChild((yyval)); } -#line 4730 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4750 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 134: -#line 1068 "parser.y" /* yacc.c:1646 */ + case 135: +#line 1080 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 4738 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4758 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 135: -#line 1071 "parser.y" /* yacc.c:1646 */ + case 136: +#line 1083 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 4746 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4766 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 136: -#line 1074 "parser.y" /* yacc.c:1646 */ + case 137: +#line 1086 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_TYPE_NAME); } -#line 4754 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4774 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 137: -#line 1077 "parser.y" /* yacc.c:1646 */ + case 138: +#line 1089 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_TYPE_NAME); } -#line 4762 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4782 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 139: -#line 1084 "parser.y" /* yacc.c:1646 */ + case 140: +#line 1096 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CALL_PARAMETER_LIST); } -#line 4770 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4790 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 140: -#line 1090 "parser.y" /* yacc.c:1646 */ + case 141: +#line 1102 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CALL_PARAMETER_LIST)->appendChild((yyvsp[0])); } -#line 4778 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4798 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 141: -#line 1093 "parser.y" /* yacc.c:1646 */ + case 142: +#line 1105 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CALL_PARAMETER_LIST)->appendChild((yyvsp[0])); } -#line 4786 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4806 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 142: -#line 1096 "parser.y" /* yacc.c:1646 */ + case 143: +#line 1108 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_VARIABLE_REFERENCE); (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = NNEW(n_CALL_PARAMETER_LIST)->appendChild((yyvsp[-1])); } -#line 4796 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4816 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 143: -#line 1101 "parser.y" /* yacc.c:1646 */ + case 144: +#line 1113 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 4804 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4824 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 144: -#line 1104 "parser.y" /* yacc.c:1646 */ + case 145: +#line 1116 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 4812 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4832 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 145: -#line 1107 "parser.y" /* yacc.c:1646 */ + case 146: +#line 1119 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_VARIABLE_REFERENCE); (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-3])->appendChild((yyvsp[-1])); } -#line 4822 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4842 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 146: -#line 1115 "parser.y" /* yacc.c:1646 */ + case 147: +#line 1127 "parser.y" /* yacc.c:1646 */ { (yyvsp[-2])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 4831 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4851 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 147: -#line 1119 "parser.y" /* yacc.c:1646 */ + case 148: +#line 1131 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_GLOBAL_DECLARATION_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 4840 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4860 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 148: -#line 1126 "parser.y" /* yacc.c:1646 */ + case 149: +#line 1138 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_VARIABLE); } -#line 4848 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4868 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 149: -#line 1129 "parser.y" /* yacc.c:1646 */ + case 150: +#line 1141 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-1]), n_VARIABLE_VARIABLE); (yyval)->appendChild((yyvsp[0])); } -#line 4857 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4877 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 150: -#line 1133 "parser.y" /* yacc.c:1646 */ + case 151: +#line 1145 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-3]), n_VARIABLE_VARIABLE); (yyval)->appendChild((yyvsp[-1])); } -#line 4866 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4886 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 151: -#line 1140 "parser.y" /* yacc.c:1646 */ + case 152: +#line 1152 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_VARIABLE); (yyval) = NNEW(n_STATIC_DECLARATION); @@ -4875,11 +4895,11 @@ (yyval) = (yyvsp[-2])->appendChild((yyval)); } -#line 4879 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4899 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 152: -#line 1148 "parser.y" /* yacc.c:1646 */ + case 153: +#line 1160 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_VARIABLE); (yyval) = NNEW(n_STATIC_DECLARATION); @@ -4888,11 +4908,11 @@ (yyval) = (yyvsp[-4])->appendChild((yyval)); } -#line 4892 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4912 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 153: -#line 1156 "parser.y" /* yacc.c:1646 */ + case 154: +#line 1168 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_VARIABLE); (yyval) = NNEW(n_STATIC_DECLARATION); @@ -4901,11 +4921,11 @@ (yyval) = NNEW(n_STATIC_DECLARATION_LIST)->appendChild((yyval)); } -#line 4905 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4925 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 154: -#line 1164 "parser.y" /* yacc.c:1646 */ + case 155: +#line 1176 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_VARIABLE); (yyval) = NNEW(n_STATIC_DECLARATION); @@ -4914,27 +4934,27 @@ (yyval) = NNEW(n_STATIC_DECLARATION_LIST)->appendChild((yyval)); } -#line 4918 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4938 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 155: -#line 1175 "parser.y" /* yacc.c:1646 */ + case 156: +#line 1187 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-1])->appendChild((yyvsp[0])); } -#line 4926 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4946 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 156: -#line 1178 "parser.y" /* yacc.c:1646 */ + case 157: +#line 1190 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_STATEMENT_LIST); } -#line 4934 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4954 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 157: -#line 1184 "parser.y" /* yacc.c:1646 */ + case 158: +#line 1196 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION_LIST); (yyval)->appendChild((yyvsp[-2])); @@ -4943,38 +4963,38 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); NMORE((yyval), (yyvsp[0])); } -#line 4947 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4967 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 158: -#line 1192 "parser.y" /* yacc.c:1646 */ + case 159: +#line 1204 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_STATEMENT)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 4956 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4976 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 159: -#line 1196 "parser.y" /* yacc.c:1646 */ + case 160: +#line 1208 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 4964 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4984 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 160: -#line 1199 "parser.y" /* yacc.c:1646 */ + case 161: +#line 1211 "parser.y" /* yacc.c:1646 */ { yyextra->old_expecting_xhp_class_statements = yyextra->expecting_xhp_class_statements; yyextra->expecting_xhp_class_statements = false; } -#line 4974 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 4994 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 161: -#line 1203 "parser.y" /* yacc.c:1646 */ + case 162: +#line 1215 "parser.y" /* yacc.c:1646 */ { yyextra->expecting_xhp_class_statements = yyextra->old_expecting_xhp_class_statements; @@ -4990,256 +5010,256 @@ (yyval) = NNEW(n_STATEMENT)->appendChild((yyval)); } -#line 4994 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5014 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 162: -#line 1221 "parser.y" /* yacc.c:1646 */ + case 163: +#line 1233 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-2]), n_TRAIT_USE); (yyval)->appendChildren((yyvsp[-1])); (yyval)->appendChild((yyvsp[0])); } -#line 5004 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5024 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 163: -#line 1229 "parser.y" /* yacc.c:1646 */ + case 164: +#line 1241 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_USE_LIST)->appendChild((yyvsp[0])); } -#line 5012 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5032 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 164: -#line 1232 "parser.y" /* yacc.c:1646 */ + case 165: +#line 1244 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 5020 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5040 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 165: -#line 1238 "parser.y" /* yacc.c:1646 */ + case 166: +#line 1250 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 5028 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5048 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 166: -#line 1241 "parser.y" /* yacc.c:1646 */ + case 167: +#line 1253 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 5036 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5056 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 167: -#line 1247 "parser.y" /* yacc.c:1646 */ + case 168: +#line 1259 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_ADAPTATION_LIST); } -#line 5044 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5064 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 168: -#line 1250 "parser.y" /* yacc.c:1646 */ + case 169: +#line 1262 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 5052 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5072 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 169: -#line 1256 "parser.y" /* yacc.c:1646 */ + case 170: +#line 1268 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_ADAPTATION_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 5061 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5081 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 170: -#line 1260 "parser.y" /* yacc.c:1646 */ + case 171: +#line 1272 "parser.y" /* yacc.c:1646 */ { (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 5070 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5090 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 171: -#line 1267 "parser.y" /* yacc.c:1646 */ + case 172: +#line 1279 "parser.y" /* yacc.c:1646 */ { (yyval) = NMORE((yyvsp[-1]), (yyvsp[0])); } -#line 5078 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5098 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 172: -#line 1270 "parser.y" /* yacc.c:1646 */ + case 173: +#line 1282 "parser.y" /* yacc.c:1646 */ { (yyval) = NMORE((yyvsp[-1]), (yyvsp[0])); } -#line 5086 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5106 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 173: -#line 1276 "parser.y" /* yacc.c:1646 */ + case 174: +#line 1288 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_INSTEADOF); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild((yyvsp[0])); } -#line 5096 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5116 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 174: -#line 1284 "parser.y" /* yacc.c:1646 */ + case 175: +#line 1296 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_REFERENCE_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 5105 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5125 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 175: -#line 1288 "parser.y" /* yacc.c:1646 */ + case 176: +#line 1300 "parser.y" /* yacc.c:1646 */ { (yyvsp[-2])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 5114 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5134 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 176: -#line 1295 "parser.y" /* yacc.c:1646 */ + case 177: +#line 1307 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_METHOD_REFERENCE); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 5123 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5143 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 177: -#line 1299 "parser.y" /* yacc.c:1646 */ + case 178: +#line 1311 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 5131 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5151 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 178: -#line 1305 "parser.y" /* yacc.c:1646 */ + case 179: +#line 1317 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_TRAIT_METHOD_REFERENCE); NEXPAND((yyvsp[-2]), (yyvsp[-1]), NTYPE((yyvsp[0]), n_STRING)); (yyval) = (yyvsp[-1]); } -#line 5141 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5161 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 179: -#line 1313 "parser.y" /* yacc.c:1646 */ + case 180: +#line 1325 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_AS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 5152 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5172 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 180: -#line 1319 "parser.y" /* yacc.c:1646 */ + case 181: +#line 1331 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TRAIT_AS); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild((yyvsp[0])); (yyval)->appendChild(NNEW(n_EMPTY)); } -#line 5163 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5183 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 181: -#line 1328 "parser.y" /* yacc.c:1646 */ + case 182: +#line 1340 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 5171 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5191 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 182: -#line 1331 "parser.y" /* yacc.c:1646 */ + case 183: +#line 1343 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_METHOD_MODIFIER_LIST); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 5180 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5200 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 183: -#line 1339 "parser.y" /* yacc.c:1646 */ + case 184: +#line 1351 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 5188 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5208 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 184: -#line 1342 "parser.y" /* yacc.c:1646 */ + case 185: +#line 1354 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 5196 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5216 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 186: -#line 1349 "parser.y" /* yacc.c:1646 */ + case 187: +#line 1361 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_MODIFIER_LIST); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 5205 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5225 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 187: -#line 1356 "parser.y" /* yacc.c:1646 */ + case 188: +#line 1368 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_METHOD_MODIFIER_LIST); } -#line 5213 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5233 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 188: -#line 1359 "parser.y" /* yacc.c:1646 */ + case 189: +#line 1371 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_METHOD_MODIFIER_LIST); (yyval) = (yyvsp[0]); } -#line 5222 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5242 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 189: -#line 1366 "parser.y" /* yacc.c:1646 */ + case 190: +#line 1378 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_MODIFIER_LIST); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 5231 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5251 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 190: -#line 1370 "parser.y" /* yacc.c:1646 */ + case 191: +#line 1382 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-1])->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 5239 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5259 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 197: -#line 1385 "parser.y" /* yacc.c:1646 */ + case 198: +#line 1397 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[0]), n_VARIABLE)); @@ -5247,11 +5267,11 @@ (yyval) = (yyvsp[-2])->appendChild((yyval)); } -#line 5251 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5271 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 198: -#line 1392 "parser.y" /* yacc.c:1646 */ + case 199: +#line 1404 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[-2]), n_VARIABLE)); @@ -5259,11 +5279,11 @@ (yyval) = (yyvsp[-4])->appendChild((yyval)); } -#line 5263 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5283 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 199: -#line 1399 "parser.y" /* yacc.c:1646 */ + case 200: +#line 1411 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[0]), n_VARIABLE)); @@ -5271,11 +5291,11 @@ (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION_LIST)->appendChild((yyval)); } -#line 5275 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5295 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 200: -#line 1406 "parser.y" /* yacc.c:1646 */ + case 201: +#line 1418 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[-2]), n_VARIABLE)); @@ -5283,11 +5303,11 @@ (yyval) = NNEW(n_CLASS_MEMBER_DECLARATION_LIST)->appendChild((yyval)); } -#line 5287 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5307 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 201: -#line 1416 "parser.y" /* yacc.c:1646 */ + case 202: +#line 1428 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_CONSTANT_DECLARATION); (yyval)->appendChild(NTYPE((yyvsp[-2]), n_STRING)); @@ -5297,11 +5317,11 @@ (yyval) = (yyvsp[-4]); } -#line 5301 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5321 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 202: -#line 1425 "parser.y" /* yacc.c:1646 */ + case 203: +#line 1437 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_CLASS_CONSTANT_DECLARATION_LIST); (yyval) = NNEW(n_CLASS_CONSTANT_DECLARATION); @@ -5311,53 +5331,53 @@ (yyval) = (yyvsp[-3]); } -#line 5315 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5335 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 203: -#line 1437 "parser.y" /* yacc.c:1646 */ + case 204: +#line 1449 "parser.y" /* yacc.c:1646 */ { (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 5323 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5343 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 204: -#line 1440 "parser.y" /* yacc.c:1646 */ + case 205: +#line 1452 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ECHO_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 5332 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5352 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 205: -#line 1447 "parser.y" /* yacc.c:1646 */ + case 206: +#line 1459 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 5340 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5360 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 207: -#line 1455 "parser.y" /* yacc.c:1646 */ + case 208: +#line 1467 "parser.y" /* yacc.c:1646 */ { (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 5348 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5368 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 208: -#line 1458 "parser.y" /* yacc.c:1646 */ + case 209: +#line 1470 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EXPRESSION_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 5357 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5377 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 209: -#line 1465 "parser.y" /* yacc.c:1646 */ + case 210: +#line 1477 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-5]), n_LIST); (yyvsp[-5])->appendChild(NEXPAND((yyvsp[-4]), (yyvsp[-3]), (yyvsp[-2]))); @@ -5366,22 +5386,22 @@ (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5370 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5390 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 210: -#line 1473 "parser.y" /* yacc.c:1646 */ + case 211: +#line 1485 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5381 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5401 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 211: -#line 1479 "parser.y" /* yacc.c:1646 */ + case 212: +#line 1491 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-3])); @@ -5392,11 +5412,11 @@ (yyval)->appendChild((yyvsp[-1])); } -#line 5396 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5416 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 212: -#line 1489 "parser.y" /* yacc.c:1646 */ + case 213: +#line 1501 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-5])); @@ -5411,162 +5431,142 @@ (yyval)->appendChild((yyvsp[-3])); } -#line 5415 "parser.yacc.cpp" /* yacc.c:1646 */ - break; - - case 213: -#line 1503 "parser.y" /* yacc.c:1646 */ - { - (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); - (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); - (yyval)->appendChild((yyvsp[0])); - } -#line 5425 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5435 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 214: -#line 1508 "parser.y" /* yacc.c:1646 */ +#line 1515 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_BINARY_EXPRESSION); - (yyval)->appendChild((yyvsp[-2])); + (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5436 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5445 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 215: -#line 1514 "parser.y" /* yacc.c:1646 */ +#line 1520 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5447 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5456 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 216: -#line 1520 "parser.y" /* yacc.c:1646 */ +#line 1526 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5458 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5467 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 217: -#line 1526 "parser.y" /* yacc.c:1646 */ +#line 1532 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5469 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5478 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 218: -#line 1532 "parser.y" /* yacc.c:1646 */ +#line 1538 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5480 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5489 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 219: -#line 1538 "parser.y" /* yacc.c:1646 */ +#line 1544 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5491 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5500 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 220: -#line 1544 "parser.y" /* yacc.c:1646 */ +#line 1550 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5502 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5511 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 221: -#line 1550 "parser.y" /* yacc.c:1646 */ +#line 1556 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5513 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5522 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 222: -#line 1556 "parser.y" /* yacc.c:1646 */ +#line 1562 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5524 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5533 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 223: -#line 1562 "parser.y" /* yacc.c:1646 */ +#line 1568 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5535 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5544 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 224: -#line 1568 "parser.y" /* yacc.c:1646 */ +#line 1574 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5546 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5555 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 225: -#line 1574 "parser.y" /* yacc.c:1646 */ - { - (yyval) = NNEW(n_UNARY_POSTFIX_EXPRESSION); - (yyval)->appendChild((yyvsp[-1])); - (yyval)->appendChild(NTYPE((yyvsp[0]), n_OPERATOR)); - } -#line 5556 "parser.yacc.cpp" /* yacc.c:1646 */ - break; - - case 226: -#line 1579 "parser.y" /* yacc.c:1646 */ +#line 1580 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); + (yyval) = NNEW(n_BINARY_EXPRESSION); + (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } #line 5566 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 227: -#line 1584 "parser.y" /* yacc.c:1646 */ + case 226: +#line 1586 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_POSTFIX_EXPRESSION); (yyval)->appendChild((yyvsp[-1])); @@ -5575,8 +5575,8 @@ #line 5576 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 228: -#line 1589 "parser.y" /* yacc.c:1646 */ + case 227: +#line 1591 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); @@ -5585,96 +5585,116 @@ #line 5586 "parser.yacc.cpp" /* yacc.c:1646 */ break; + case 228: +#line 1596 "parser.y" /* yacc.c:1646 */ + { + (yyval) = NNEW(n_UNARY_POSTFIX_EXPRESSION); + (yyval)->appendChild((yyvsp[-1])); + (yyval)->appendChild(NTYPE((yyvsp[0]), n_OPERATOR)); + } +#line 5596 "parser.yacc.cpp" /* yacc.c:1646 */ + break; + case 229: -#line 1594 "parser.y" /* yacc.c:1646 */ +#line 1601 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_BINARY_EXPRESSION); - (yyval)->appendChild((yyvsp[-2])); + (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5597 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5606 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 230: -#line 1600 "parser.y" /* yacc.c:1646 */ +#line 1606 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5608 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5617 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 231: -#line 1606 "parser.y" /* yacc.c:1646 */ +#line 1612 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5619 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5628 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 232: -#line 1612 "parser.y" /* yacc.c:1646 */ +#line 1618 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5630 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5639 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 233: -#line 1618 "parser.y" /* yacc.c:1646 */ +#line 1624 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5641 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5650 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 234: -#line 1624 "parser.y" /* yacc.c:1646 */ +#line 1630 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5652 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5661 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 235: -#line 1630 "parser.y" /* yacc.c:1646 */ +#line 1636 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5663 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5672 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 236: -#line 1636 "parser.y" /* yacc.c:1646 */ +#line 1642 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5674 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5683 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 237: -#line 1642 "parser.y" /* yacc.c:1646 */ +#line 1648 "parser.y" /* yacc.c:1646 */ + { + (yyval) = NNEW(n_BINARY_EXPRESSION); + (yyval)->appendChild((yyvsp[-2])); + (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); + (yyval)->appendChild((yyvsp[0])); + } +#line 5694 "parser.yacc.cpp" /* yacc.c:1646 */ + break; + + case 238: +#line 1654 "parser.y" /* yacc.c:1646 */ { /* The concatenation operator generates n_CONCATENATION_LIST instead of @@ -5701,369 +5721,369 @@ (yyval)->appendChild((yyvsp[0])); } } -#line 5705 "parser.yacc.cpp" /* yacc.c:1646 */ - break; - - case 238: -#line 1668 "parser.y" /* yacc.c:1646 */ - { - (yyval) = NNEW(n_BINARY_EXPRESSION); - (yyval)->appendChild((yyvsp[-2])); - (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); - (yyval)->appendChild((yyvsp[0])); - } -#line 5716 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5725 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 239: -#line 1674 "parser.y" /* yacc.c:1646 */ +#line 1680 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5727 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5736 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 240: -#line 1680 "parser.y" /* yacc.c:1646 */ +#line 1686 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5738 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5747 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 241: -#line 1686 "parser.y" /* yacc.c:1646 */ +#line 1692 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5749 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5758 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 242: -#line 1692 "parser.y" /* yacc.c:1646 */ +#line 1698 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5760 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5769 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 243: -#line 1698 "parser.y" /* yacc.c:1646 */ +#line 1704 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5771 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5780 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 244: -#line 1704 "parser.y" /* yacc.c:1646 */ +#line 1710 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5782 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5791 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 245: -#line 1710 "parser.y" /* yacc.c:1646 */ +#line 1716 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); + (yyval) = NNEW(n_BINARY_EXPRESSION); + (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5792 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5802 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 246: -#line 1715 "parser.y" /* yacc.c:1646 */ +#line 1722 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5802 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5812 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 247: -#line 1720 "parser.y" /* yacc.c:1646 */ +#line 1727 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5812 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5822 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 248: -#line 1725 "parser.y" /* yacc.c:1646 */ +#line 1732 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5822 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5832 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 249: -#line 1730 "parser.y" /* yacc.c:1646 */ +#line 1737 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_BINARY_EXPRESSION); - (yyval)->appendChild((yyvsp[-2])); + (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5833 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5842 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 250: -#line 1736 "parser.y" /* yacc.c:1646 */ +#line 1742 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5844 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5853 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 251: -#line 1742 "parser.y" /* yacc.c:1646 */ +#line 1748 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5855 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5864 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 252: -#line 1748 "parser.y" /* yacc.c:1646 */ +#line 1754 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5866 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5875 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 253: -#line 1754 "parser.y" /* yacc.c:1646 */ +#line 1760 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5877 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5886 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 254: -#line 1760 "parser.y" /* yacc.c:1646 */ +#line 1766 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5888 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5897 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 255: -#line 1766 "parser.y" /* yacc.c:1646 */ +#line 1772 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5899 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5908 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 256: -#line 1772 "parser.y" /* yacc.c:1646 */ +#line 1778 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5910 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5919 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 257: -#line 1778 "parser.y" /* yacc.c:1646 */ +#line 1784 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5921 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5930 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 260: -#line 1786 "parser.y" /* yacc.c:1646 */ + case 258: +#line 1790 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_TERNARY_EXPRESSION); - (yyval)->appendChild((yyvsp[-4])); + (yyval) = NNEW(n_BINARY_EXPRESSION); (yyval)->appendChild((yyvsp[-2])); + (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 5932 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5941 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 261: -#line 1792 "parser.y" /* yacc.c:1646 */ +#line 1798 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_TERNARY_EXPRESSION); - (yyval)->appendChild((yyvsp[-3])); - (yyval)->appendChild(NNEW(n_EMPTY)); + (yyval)->appendChild((yyvsp[-4])); + (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild((yyvsp[0])); } -#line 5943 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5952 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 263: -#line 1799 "parser.y" /* yacc.c:1646 */ + case 262: +#line 1804 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_CAST_EXPRESSION); - (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); + (yyval) = NNEW(n_TERNARY_EXPRESSION); + (yyval)->appendChild((yyvsp[-3])); + (yyval)->appendChild(NNEW(n_EMPTY)); (yyval)->appendChild((yyvsp[0])); } -#line 5953 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5963 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 264: -#line 1804 "parser.y" /* yacc.c:1646 */ +#line 1811 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CAST_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 5963 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5973 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 265: -#line 1809 "parser.y" /* yacc.c:1646 */ +#line 1816 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CAST_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 5973 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5983 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 266: -#line 1814 "parser.y" /* yacc.c:1646 */ +#line 1821 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CAST_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 5983 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 5993 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 267: -#line 1819 "parser.y" /* yacc.c:1646 */ +#line 1826 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CAST_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 5993 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6003 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 268: -#line 1824 "parser.y" /* yacc.c:1646 */ +#line 1831 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CAST_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 6003 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6013 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 269: -#line 1829 "parser.y" /* yacc.c:1646 */ +#line 1836 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CAST_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 6013 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6023 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 270: -#line 1834 "parser.y" /* yacc.c:1646 */ +#line 1841 "parser.y" /* yacc.c:1646 */ { - (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); - (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); + (yyval) = NNEW(n_CAST_EXPRESSION); + (yyval)->appendChild(NTYPE((yyvsp[-1]), n_CAST)); (yyval)->appendChild((yyvsp[0])); } -#line 6023 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6033 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 271: -#line 1839 "parser.y" /* yacc.c:1646 */ +#line 1846 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 6033 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6043 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 272: -#line 1844 "parser.y" /* yacc.c:1646 */ +#line 1851 "parser.y" /* yacc.c:1646 */ + { + (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); + (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); + (yyval)->appendChild((yyvsp[0])); + } +#line 6053 "parser.yacc.cpp" /* yacc.c:1646 */ + break; + + case 273: +#line 1856 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_BACKTICKS_EXPRESSION); (yyval) = (yyvsp[0]); } -#line 6042 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6062 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 276: -#line 1851 "parser.y" /* yacc.c:1646 */ + case 277: +#line 1863 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 6052 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6072 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 277: -#line 1856 "parser.y" /* yacc.c:1646 */ + case 278: +#line 1868 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_YIELD); (yyvsp[0])->appendChild(NNEW(n_EMPTY)); (yyvsp[0])->appendChild(NNEW(n_EMPTY)); (yyval) = (yyvsp[0]); } -#line 6063 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6083 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 278: -#line 1865 "parser.y" /* yacc.c:1646 */ + case 279: +#line 1877 "parser.y" /* yacc.c:1646 */ { NSPAN((yyvsp[-8]), n_FUNCTION_DECLARATION, (yyvsp[0])); (yyvsp[-8])->appendChild(NNEW(n_EMPTY)); @@ -6075,11 +6095,11 @@ (yyval) = (yyvsp[-8]); } -#line 6079 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6099 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 279: -#line 1879 "parser.y" /* yacc.c:1646 */ + case 280: +#line 1891 "parser.y" /* yacc.c:1646 */ { NSPAN((yyvsp[-8]), n_FUNCTION_DECLARATION, (yyvsp[0])); NMORE((yyvsp[-8]), (yyvsp[-9])); @@ -6097,143 +6117,143 @@ (yyval) = (yyvsp[-8]); } -#line 6101 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6121 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 280: -#line 1899 "parser.y" /* yacc.c:1646 */ + case 281: +#line 1911 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_YIELD); (yyvsp[0])->appendChild(NNEW(n_EMPTY)); (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 6112 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6132 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 281: -#line 1905 "parser.y" /* yacc.c:1646 */ + case 282: +#line 1917 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_YIELD); (yyvsp[0])->appendChild(NNEW(n_EMPTY)); (yyvsp[-1])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 6123 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6143 "parser.yacc.cpp" /* yacc.c:1646 */ break; - - case 282: -#line 1911 "parser.y" /* yacc.c:1646 */ + + case 283: +#line 1923 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_YIELD); (yyvsp[-3])->appendChild((yyvsp[-2])); (yyvsp[-3])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-3]); } -#line 6134 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6154 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 283: -#line 1917 "parser.y" /* yacc.c:1646 */ + case 284: +#line 1929 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_YIELD); (yyvsp[-3])->appendChild((yyvsp[-2])); (yyvsp[-3])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-3]); } -#line 6145 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6165 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 285: -#line 1930 "parser.y" /* yacc.c:1646 */ + case 286: +#line 1942 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6153 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6173 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 286: -#line 1933 "parser.y" /* yacc.c:1646 */ + case 287: +#line 1945 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_LEXICAL_VARIABLE_LIST); (yyvsp[-3])->appendChildren((yyvsp[-1])); (yyval) = (yyvsp[-3]); } -#line 6163 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6183 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 287: -#line 1941 "parser.y" /* yacc.c:1646 */ + case 288: +#line 1953 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild(NTYPE((yyvsp[0]), n_VARIABLE)); } -#line 6171 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6191 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 288: -#line 1944 "parser.y" /* yacc.c:1646 */ + case 289: +#line 1956 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_VARIABLE_REFERENCE); (yyvsp[-1])->appendChild(NTYPE((yyvsp[0]), n_VARIABLE)); (yyval) = (yyvsp[-3])->appendChild((yyvsp[-1])); } -#line 6181 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6201 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 289: -#line 1949 "parser.y" /* yacc.c:1646 */ + case 290: +#line 1961 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_LEXICAL_VARIABLE_LIST); (yyval)->appendChild(NTYPE((yyvsp[0]), n_VARIABLE)); } -#line 6190 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6210 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 290: -#line 1953 "parser.y" /* yacc.c:1646 */ + case 291: +#line 1965 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-1]), n_VARIABLE_REFERENCE); (yyvsp[-1])->appendChild(NTYPE((yyvsp[0]), n_VARIABLE)); (yyval) = NNEW(n_LEXICAL_VARIABLE_LIST); (yyval)->appendChild((yyvsp[-1])); } -#line 6201 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6221 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 291: -#line 1962 "parser.y" /* yacc.c:1646 */ + case 292: +#line 1974 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_FUNCTION_CALL); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6211 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6231 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 292: -#line 1968 "parser.y" /* yacc.c:1646 */ + case 293: +#line 1980 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-3]), (yyvsp[-5])); (yyval) = NNEW(n_FUNCTION_CALL); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6222 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6242 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 293: -#line 1974 "parser.y" /* yacc.c:1646 */ + case 294: +#line 1986 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[-3]), (yyvsp[-4])); (yyval) = NNEW(n_FUNCTION_CALL); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6233 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6253 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 294: -#line 1981 "parser.y" /* yacc.c:1646 */ + case 295: +#line 1993 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-5])); @@ -6242,11 +6262,11 @@ (yyval) = NNEW(n_FUNCTION_CALL)->appendChild((yyval)); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6246 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6266 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 295: -#line 1990 "parser.y" /* yacc.c:1646 */ + case 296: +#line 2002 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-5])); @@ -6255,11 +6275,11 @@ (yyval) = NNEW(n_FUNCTION_CALL)->appendChild((yyval)); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6259 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6279 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 296: -#line 1999 "parser.y" /* yacc.c:1646 */ + case 297: +#line 2011 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-5])); @@ -6268,11 +6288,11 @@ (yyval) = NNEW(n_FUNCTION_CALL)->appendChild((yyval)); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6272 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6292 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 297: -#line 2008 "parser.y" /* yacc.c:1646 */ + case 298: +#line 2020 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-5])); @@ -6281,81 +6301,81 @@ (yyval) = NNEW(n_FUNCTION_CALL)->appendChild((yyval)); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6285 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6305 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 298: -#line 2016 "parser.y" /* yacc.c:1646 */ + case 299: +#line 2028 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_FUNCTION_CALL); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 6295 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6315 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 299: -#line 2024 "parser.y" /* yacc.c:1646 */ + case 300: +#line 2036 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6303 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6323 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 300: -#line 2027 "parser.y" /* yacc.c:1646 */ + case 301: +#line 2039 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6311 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6331 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 301: -#line 2030 "parser.y" /* yacc.c:1646 */ + case 302: +#line 2042 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[0]), (yyvsp[-2])); (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6320 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6340 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 302: -#line 2034 "parser.y" /* yacc.c:1646 */ + case 303: +#line 2046 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[0]), (yyvsp[-1])); (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6329 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6349 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 303: -#line 2041 "parser.y" /* yacc.c:1646 */ + case 304: +#line 2053 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6337 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6357 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 304: -#line 2044 "parser.y" /* yacc.c:1646 */ + case 305: +#line 2056 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[0]), (yyvsp[-2])); (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6346 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6366 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 305: -#line 2048 "parser.y" /* yacc.c:1646 */ + case 306: +#line 2060 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[0]), (yyvsp[-1])); (yyval) = NTYPE((yyvsp[0]), n_CLASS_NAME); } -#line 6355 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6375 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 308: -#line 2063 "parser.y" /* yacc.c:1646 */ + case 309: +#line 2075 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_OBJECT_PROPERTY_ACCESS); (yyval)->appendChild((yyvsp[-3])); @@ -6368,282 +6388,282 @@ (yyval)->appendChild(*ii); } } -#line 6372 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6392 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 310: -#line 2079 "parser.y" /* yacc.c:1646 */ + case 311: +#line 2091 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-1])->appendChild((yyvsp[0])); } -#line 6380 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6400 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 311: -#line 2082 "parser.y" /* yacc.c:1646 */ + case 312: +#line 2094 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6388 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6408 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 312: -#line 2088 "parser.y" /* yacc.c:1646 */ + case 313: +#line 2100 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 6396 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6416 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 313: -#line 2094 "parser.y" /* yacc.c:1646 */ + case 314: +#line 2106 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6404 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6424 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 314: -#line 2097 "parser.y" /* yacc.c:1646 */ + case 315: +#line 2109 "parser.y" /* yacc.c:1646 */ { NSPAN((yyvsp[-1]), n_EMPTY, (yyvsp[0])); (yyval) = (yyvsp[-1]); } -#line 6413 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6433 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 315: -#line 2101 "parser.y" /* yacc.c:1646 */ + case 316: +#line 2113 "parser.y" /* yacc.c:1646 */ { NSPAN((yyvsp[-2]), n_PARENTHETICAL_EXPRESSION, (yyvsp[0])); (yyvsp[-2])->appendChild((yyvsp[-1])); (yyval) = (yyvsp[-2]); } -#line 6423 "parser.yacc.cpp" /* yacc.c:1646 */ - break; - - case 316: -#line 2109 "parser.y" /* yacc.c:1646 */ - { - (yyval) = NNEW(n_EMPTY); - } -#line 6431 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6443 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 317: -#line 2112 "parser.y" /* yacc.c:1646 */ +#line 2121 "parser.y" /* yacc.c:1646 */ { - (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); + (yyval) = NNEW(n_EMPTY); } -#line 6439 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6451 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 318: -#line 2118 "parser.y" /* yacc.c:1646 */ +#line 2124 "parser.y" /* yacc.c:1646 */ { - (yyval) = NTYPE((yyvsp[0]), n_NUMERIC_SCALAR); + (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 6447 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6459 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 319: -#line 2121 "parser.y" /* yacc.c:1646 */ +#line 2130 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_NUMERIC_SCALAR); } -#line 6455 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6467 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 320: -#line 2124 "parser.y" /* yacc.c:1646 */ +#line 2133 "parser.y" /* yacc.c:1646 */ { - (yyval) = NTYPE((yyvsp[0]), n_STRING_SCALAR); + (yyval) = NTYPE((yyvsp[0]), n_NUMERIC_SCALAR); } -#line 6463 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6475 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 321: -#line 2127 "parser.y" /* yacc.c:1646 */ +#line 2136 "parser.y" /* yacc.c:1646 */ { - (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); + (yyval) = NTYPE((yyvsp[0]), n_STRING_SCALAR); } -#line 6471 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6483 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 322: -#line 2130 "parser.y" /* yacc.c:1646 */ +#line 2139 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6479 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6491 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 323: -#line 2133 "parser.y" /* yacc.c:1646 */ +#line 2142 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6487 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6499 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 324: -#line 2136 "parser.y" /* yacc.c:1646 */ +#line 2145 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6495 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6507 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 325: -#line 2139 "parser.y" /* yacc.c:1646 */ +#line 2148 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6503 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6515 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 326: -#line 2142 "parser.y" /* yacc.c:1646 */ +#line 2151 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6511 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6523 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 327: -#line 2145 "parser.y" /* yacc.c:1646 */ +#line 2154 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6519 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6531 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 328: -#line 2148 "parser.y" /* yacc.c:1646 */ +#line 2157 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); } -#line 6527 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6539 "parser.yacc.cpp" /* yacc.c:1646 */ break; case 329: -#line 2151 "parser.y" /* yacc.c:1646 */ +#line 2160 "parser.y" /* yacc.c:1646 */ + { + (yyval) = NTYPE((yyvsp[0]), n_MAGIC_SCALAR); + } +#line 6547 "parser.yacc.cpp" /* yacc.c:1646 */ + break; + + case 330: +#line 2163 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_HEREDOC); } -#line 6535 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6555 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 332: -#line 2159 "parser.y" /* yacc.c:1646 */ + case 333: +#line 2171 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[0]), (yyvsp[-2])); (yyval) = (yyvsp[0]); } -#line 6544 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6564 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 333: -#line 2163 "parser.y" /* yacc.c:1646 */ + case 334: +#line 2175 "parser.y" /* yacc.c:1646 */ { NMORE((yyvsp[0]), (yyvsp[-1])); (yyval) = (yyvsp[0]); } -#line 6553 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6573 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 334: -#line 2167 "parser.y" /* yacc.c:1646 */ + case 335: +#line 2179 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 6563 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6583 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 335: -#line 2172 "parser.y" /* yacc.c:1646 */ + case 336: +#line 2184 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_UNARY_PREFIX_EXPRESSION); (yyval)->appendChild(NTYPE((yyvsp[-1]), n_OPERATOR)); (yyval)->appendChild((yyvsp[0])); } -#line 6573 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6593 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 336: -#line 2177 "parser.y" /* yacc.c:1646 */ + case 337: +#line 2189 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_ARRAY_LITERAL); (yyvsp[-3])->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); (yyval) = (yyvsp[-3]); } -#line 6583 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6603 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 337: -#line 2182 "parser.y" /* yacc.c:1646 */ + case 338: +#line 2194 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_ARRAY_LITERAL); (yyvsp[-2])->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); (yyval) = (yyvsp[-2]); } -#line 6593 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6613 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 339: -#line 2191 "parser.y" /* yacc.c:1646 */ + case 340: +#line 2203 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 6603 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6623 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 343: -#line 2202 "parser.y" /* yacc.c:1646 */ + case 344: +#line 2214 "parser.y" /* yacc.c:1646 */ { (yyval) = NMORE((yyvsp[0]), (yyvsp[-2])); } -#line 6611 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6631 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 344: -#line 2205 "parser.y" /* yacc.c:1646 */ + case 345: +#line 2217 "parser.y" /* yacc.c:1646 */ { (yyval) = NMORE((yyvsp[0]), (yyvsp[-1])); } -#line 6619 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6639 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 346: -#line 2212 "parser.y" /* yacc.c:1646 */ + case 347: +#line 2224 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE_LIST); } -#line 6627 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6647 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 347: -#line 2215 "parser.y" /* yacc.c:1646 */ + case 348: +#line 2227 "parser.y" /* yacc.c:1646 */ { (yyval) = NMORE((yyvsp[-1]), (yyvsp[0])); } -#line 6635 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6655 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 348: -#line 2221 "parser.y" /* yacc.c:1646 */ + case 349: +#line 2233 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6643 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6663 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 350: -#line 2232 "parser.y" /* yacc.c:1646 */ + case 351: +#line 2244 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild((yyvsp[-2])); @@ -6651,11 +6671,11 @@ (yyval) = (yyvsp[-4])->appendChild((yyval)); } -#line 6655 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6675 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 351: -#line 2239 "parser.y" /* yacc.c:1646 */ + case 352: +#line 2251 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild(NNEW(n_EMPTY)); @@ -6663,11 +6683,11 @@ (yyval) = (yyvsp[-2])->appendChild((yyval)); } -#line 6667 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6687 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 352: -#line 2246 "parser.y" /* yacc.c:1646 */ + case 353: +#line 2258 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild((yyvsp[-2])); @@ -6675,11 +6695,11 @@ (yyval) = NNEW(n_ARRAY_VALUE_LIST)->appendChild((yyval)); } -#line 6679 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6699 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 353: -#line 2253 "parser.y" /* yacc.c:1646 */ + case 354: +#line 2265 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild(NNEW(n_EMPTY)); @@ -6687,11 +6707,11 @@ (yyval) = NNEW(n_ARRAY_VALUE_LIST)->appendChild((yyval)); } -#line 6691 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6711 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 359: -#line 2283 "parser.y" /* yacc.c:1646 */ + case 360: +#line 2295 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_OBJECT_PROPERTY_ACCESS); (yyval)->appendChild((yyvsp[-4])); @@ -6715,27 +6735,27 @@ } } } -#line 6719 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6739 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 361: -#line 2310 "parser.y" /* yacc.c:1646 */ + case 362: +#line 2322 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-1])->appendChildren((yyvsp[0])); } -#line 6727 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6747 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 362: -#line 2313 "parser.y" /* yacc.c:1646 */ + case 363: +#line 2325 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6735 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6755 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 363: -#line 2319 "parser.y" /* yacc.c:1646 */ + case 364: +#line 2331 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); (yyval)->appendChild((yyvsp[-1])); @@ -6743,49 +6763,49 @@ (yyval)->appendChild((yyvsp[0])); } } -#line 6747 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6767 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 364: -#line 2329 "parser.y" /* yacc.c:1646 */ + case 365: +#line 2341 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6758 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6778 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 365: -#line 2335 "parser.y" /* yacc.c:1646 */ + case 366: +#line 2347 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6769 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6789 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 366: -#line 2344 "parser.y" /* yacc.c:1646 */ + case 367: +#line 2356 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 6777 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6797 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 369: -#line 2352 "parser.y" /* yacc.c:1646 */ + case 370: +#line 2364 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6785 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6805 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 371: -#line 2359 "parser.y" /* yacc.c:1646 */ + case 372: +#line 2371 "parser.y" /* yacc.c:1646 */ { xhpast::Node *last = (yyvsp[-1]); NMORE((yyvsp[-1]), (yyvsp[0])); @@ -6798,61 +6818,61 @@ (yyval) = (yyvsp[-1]); } -#line 6802 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6822 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 372: -#line 2374 "parser.y" /* yacc.c:1646 */ + case 373: +#line 2386 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild((yyvsp[0])); } -#line 6812 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6832 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 373: -#line 2379 "parser.y" /* yacc.c:1646 */ + case 374: +#line 2391 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild((yyvsp[0])); } -#line 6822 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6842 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 375: -#line 2391 "parser.y" /* yacc.c:1646 */ + case 376: +#line 2403 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6833 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6853 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 376: -#line 2397 "parser.y" /* yacc.c:1646 */ + case 377: +#line 2409 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6844 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6864 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 381: -#line 2413 "parser.y" /* yacc.c:1646 */ + case 382: +#line 2425 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 6852 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6872 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 382: -#line 2416 "parser.y" /* yacc.c:1646 */ + case 383: +#line 2428 "parser.y" /* yacc.c:1646 */ { xhpast::Node *last = (yyvsp[-1]); NMORE((yyvsp[-1]), (yyvsp[0])); @@ -6865,114 +6885,114 @@ (yyval) = (yyvsp[-1]); } -#line 6869 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6889 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 384: -#line 2432 "parser.y" /* yacc.c:1646 */ + case 385: +#line 2444 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6880 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6900 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 385: -#line 2438 "parser.y" /* yacc.c:1646 */ + case 386: +#line 2450 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6891 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6911 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 387: -#line 2448 "parser.y" /* yacc.c:1646 */ + case 388: +#line 2460 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_VARIABLE); } -#line 6899 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6919 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 388: -#line 2451 "parser.y" /* yacc.c:1646 */ + case 389: +#line 2463 "parser.y" /* yacc.c:1646 */ { NSPAN((yyvsp[-3]), n_VARIABLE_EXPRESSION, (yyvsp[0])); (yyvsp[-3])->appendChild((yyvsp[-1])); (yyval) = (yyvsp[-3]); } -#line 6909 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6929 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 389: -#line 2459 "parser.y" /* yacc.c:1646 */ + case 390: +#line 2471 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 6917 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6937 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 390: -#line 2462 "parser.y" /* yacc.c:1646 */ + case 391: +#line 2474 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[0]); } -#line 6925 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6945 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 393: -#line 2473 "parser.y" /* yacc.c:1646 */ + case 394: +#line 2485 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6936 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6956 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 394: -#line 2479 "parser.y" /* yacc.c:1646 */ + case 395: +#line 2491 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 6947 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6967 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 396: -#line 2489 "parser.y" /* yacc.c:1646 */ + case 397: +#line 2501 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[0]), n_STRING); (yyval) = (yyvsp[0]); } -#line 6956 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6976 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 397: -#line 2493 "parser.y" /* yacc.c:1646 */ + case 398: +#line 2505 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 6964 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6984 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 398: -#line 2499 "parser.y" /* yacc.c:1646 */ + case 399: +#line 2511 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[0]), n_VARIABLE_VARIABLE); } -#line 6972 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 6992 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 399: -#line 2502 "parser.y" /* yacc.c:1646 */ + case 400: +#line 2514 "parser.y" /* yacc.c:1646 */ { (yyvsp[0]) = NTYPE((yyvsp[0]), n_VARIABLE_VARIABLE); @@ -6985,61 +7005,61 @@ (yyval) = (yyvsp[-1]); } -#line 6989 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7009 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 400: -#line 2517 "parser.y" /* yacc.c:1646 */ + case 401: +#line 2529 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 6997 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7017 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 401: -#line 2520 "parser.y" /* yacc.c:1646 */ + case 402: +#line 2532 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ASSIGNMENT_LIST); (yyval)->appendChild((yyvsp[0])); } -#line 7006 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7026 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 403: -#line 2528 "parser.y" /* yacc.c:1646 */ + case 404: +#line 2540 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_LIST); (yyval)->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); } -#line 7015 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7035 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 404: -#line 2532 "parser.y" /* yacc.c:1646 */ + case 405: +#line 2544 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); } -#line 7023 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7043 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 405: -#line 2538 "parser.y" /* yacc.c:1646 */ + case 406: +#line 2550 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE_LIST); } -#line 7031 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7051 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 406: -#line 2541 "parser.y" /* yacc.c:1646 */ + case 407: +#line 2553 "parser.y" /* yacc.c:1646 */ { (yyval) = NMORE((yyvsp[-1]), (yyvsp[0])); } -#line 7039 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7059 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 407: -#line 2547 "parser.y" /* yacc.c:1646 */ + case 408: +#line 2559 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild((yyvsp[-2])); @@ -7047,11 +7067,11 @@ (yyval) = (yyvsp[-4])->appendChild((yyval)); } -#line 7051 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7071 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 408: -#line 2554 "parser.y" /* yacc.c:1646 */ + case 409: +#line 2566 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild(NNEW(n_EMPTY)); @@ -7059,11 +7079,11 @@ (yyval) = (yyvsp[-2])->appendChild((yyval)); } -#line 7063 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7083 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 409: -#line 2561 "parser.y" /* yacc.c:1646 */ + case 410: +#line 2573 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild((yyvsp[-2])); @@ -7071,11 +7091,11 @@ (yyval) = NNEW(n_ARRAY_VALUE_LIST)->appendChild((yyval)); } -#line 7075 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7095 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 410: -#line 2568 "parser.y" /* yacc.c:1646 */ + case 411: +#line 2580 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild(NNEW(n_EMPTY)); @@ -7083,11 +7103,11 @@ (yyval) = NNEW(n_ARRAY_VALUE_LIST)->appendChild((yyval)); } -#line 7087 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7107 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 411: -#line 2575 "parser.y" /* yacc.c:1646 */ + case 412: +#line 2587 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild((yyvsp[-3])); @@ -7095,11 +7115,11 @@ (yyval) = (yyvsp[-5])->appendChild((yyval)); } -#line 7099 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7119 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 412: -#line 2582 "parser.y" /* yacc.c:1646 */ + case 413: +#line 2594 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild(NNEW(n_EMPTY)); @@ -7107,11 +7127,11 @@ (yyval) = (yyvsp[-3])->appendChild((yyval)); } -#line 7111 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7131 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 413: -#line 2589 "parser.y" /* yacc.c:1646 */ + case 414: +#line 2601 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild((yyvsp[-3])); @@ -7119,11 +7139,11 @@ (yyval) = NNEW(n_ARRAY_VALUE_LIST)->appendChild((yyval)); } -#line 7123 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7143 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 414: -#line 2596 "parser.y" /* yacc.c:1646 */ + case 415: +#line 2608 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_ARRAY_VALUE); (yyval)->appendChild(NNEW(n_EMPTY)); @@ -7131,11 +7151,11 @@ (yyval) = NNEW(n_ARRAY_VALUE_LIST)->appendChild((yyval)); } -#line 7135 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7155 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 415: -#line 2606 "parser.y" /* yacc.c:1646 */ + case 416: +#line 2618 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_SYMBOL_NAME); @@ -7146,11 +7166,11 @@ (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-2])); } -#line 7150 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7170 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 416: -#line 2616 "parser.y" /* yacc.c:1646 */ + case 417: +#line 2628 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_SYMBOL_NAME); @@ -7161,27 +7181,27 @@ (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-2])); } -#line 7165 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7185 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 417: -#line 2626 "parser.y" /* yacc.c:1646 */ + case 418: +#line 2638 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-1]), n_INCLUDE_FILE)->appendChild((yyvsp[0])); } -#line 7173 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7193 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 418: -#line 2629 "parser.y" /* yacc.c:1646 */ + case 419: +#line 2641 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-1]), n_INCLUDE_FILE)->appendChild((yyvsp[0])); } -#line 7181 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7201 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 419: -#line 2632 "parser.y" /* yacc.c:1646 */ + case 420: +#line 2644 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_SYMBOL_NAME); @@ -7192,146 +7212,146 @@ (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-2])); } -#line 7196 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7216 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 420: -#line 2642 "parser.y" /* yacc.c:1646 */ + case 421: +#line 2654 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-1]), n_INCLUDE_FILE)->appendChild((yyvsp[0])); } -#line 7204 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7224 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 421: -#line 2645 "parser.y" /* yacc.c:1646 */ + case 422: +#line 2657 "parser.y" /* yacc.c:1646 */ { (yyval) = NTYPE((yyvsp[-1]), n_INCLUDE_FILE)->appendChild((yyvsp[0])); } -#line 7212 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7232 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 422: -#line 2651 "parser.y" /* yacc.c:1646 */ + case 423: +#line 2663 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_EMPTY); (yyval)->appendChild((yyvsp[0])); } -#line 7221 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7241 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 423: -#line 2655 "parser.y" /* yacc.c:1646 */ + case 424: +#line 2667 "parser.y" /* yacc.c:1646 */ { (yyval) = (yyvsp[-2])->appendChild((yyvsp[0])); } -#line 7229 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7249 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 424: -#line 2661 "parser.y" /* yacc.c:1646 */ + case 425: +#line 2673 "parser.y" /* yacc.c:1646 */ { NSPAN((yyvsp[-2]), n_PARENTHETICAL_EXPRESSION, (yyvsp[0])); (yyvsp[-2])->appendChild((yyvsp[-1])); (yyval) = (yyvsp[-2]); } -#line 7239 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7259 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 425: -#line 2666 "parser.y" /* yacc.c:1646 */ + case 426: +#line 2678 "parser.y" /* yacc.c:1646 */ { (yyval) = NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0])); } -#line 7247 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7267 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 426: -#line 2672 "parser.y" /* yacc.c:1646 */ + case 427: +#line 2684 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 7258 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7278 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 427: -#line 2678 "parser.y" /* yacc.c:1646 */ + case 428: +#line 2690 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild((yyvsp[-3])); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 7269 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7289 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 428: -#line 2684 "parser.y" /* yacc.c:1646 */ + case 429: +#line 2696 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_INDEX_ACCESS); (yyval)->appendChild(NTYPE((yyvsp[-3]), n_STRING_SCALAR)); (yyval)->appendChild((yyvsp[-1])); NMORE((yyval), (yyvsp[0])); } -#line 7280 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7300 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 429: -#line 2693 "parser.y" /* yacc.c:1646 */ + case 430: +#line 2705 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-3]), n_ARRAY_LITERAL); (yyvsp[-3])->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); (yyval) = (yyvsp[-3]); } -#line 7290 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7310 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 430: -#line 2698 "parser.y" /* yacc.c:1646 */ + case 431: +#line 2710 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_ARRAY_LITERAL); (yyvsp[-2])->appendChild(NEXPAND((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]))); (yyval) = (yyvsp[-2]); } -#line 7300 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7320 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 431: -#line 2706 "parser.y" /* yacc.c:1646 */ + case 432: +#line 2718 "parser.y" /* yacc.c:1646 */ { NTYPE((yyvsp[-2]), n_NEW); (yyvsp[-2])->appendChild((yyvsp[-1])); (yyvsp[-2])->appendChild((yyvsp[0])); (yyval) = (yyvsp[-2]); } -#line 7311 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7331 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 432: -#line 2715 "parser.y" /* yacc.c:1646 */ + case 433: +#line 2727 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 7321 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7341 "parser.yacc.cpp" /* yacc.c:1646 */ break; - case 433: -#line 2720 "parser.y" /* yacc.c:1646 */ + case 434: +#line 2732 "parser.y" /* yacc.c:1646 */ { (yyval) = NNEW(n_CLASS_STATIC_ACCESS); (yyval)->appendChild((yyvsp[-2])); (yyval)->appendChild(NTYPE((yyvsp[0]), n_STRING)); } -#line 7331 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7351 "parser.yacc.cpp" /* yacc.c:1646 */ break; -#line 7335 "parser.yacc.cpp" /* yacc.c:1646 */ +#line 7355 "parser.yacc.cpp" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -7559,7 +7579,7 @@ #endif return yyresult; } -#line 2727 "parser.y" /* yacc.c:1906 */ +#line 2739 "parser.y" /* yacc.c:1906 */ const char* yytokname(int tok) { diff --git a/support/xhpast/parser_nodes.php b/support/xhpast/parser_nodes.php --- a/support/xhpast/parser_nodes.php +++ b/support/xhpast/parser_nodes.php @@ -118,5 +118,6 @@ 9111 => 'n_TRAIT_AS', 9112 => 'n_YIELD', 9113 => 'n_FINALLY', + 9114 => 'n_TRAIT_DECLARATION', ); }