diff --git a/dtool/src/cppparser/cppBison.cxx.prebuilt b/dtool/src/cppparser/cppBison.cxx.prebuilt index 058d1dc791..714d121a40 100644 --- a/dtool/src/cppparser/cppBison.cxx.prebuilt +++ b/dtool/src/cppparser/cppBison.cxx.prebuilt @@ -772,16 +772,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 73 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 3636 +#define YYLAST 3698 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 131 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 93 /* YYNRULES -- Number of rules. */ -#define YYNRULES 548 +#define YYNRULES 553 /* YYNRULES -- Number of states. */ -#define YYNSTATES 993 +#define YYNSTATES 1002 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -849,49 +849,50 @@ static const yytype_uint16 yyprhs[] = 315, 317, 319, 321, 323, 325, 327, 329, 331, 333, 335, 337, 339, 341, 343, 345, 347, 349, 351, 353, 355, 357, 359, 361, 363, 365, 367, 369, 371, 374, - 377, 379, 381, 383, 385, 386, 393, 395, 397, 399, - 403, 406, 411, 414, 419, 423, 428, 430, 432, 434, - 436, 439, 442, 445, 448, 451, 455, 460, 464, 468, - 469, 476, 478, 480, 482, 486, 489, 491, 495, 497, - 500, 502, 505, 507, 511, 517, 521, 526, 528, 530, - 533, 535, 539, 543, 549, 553, 557, 562, 564, 566, - 568, 570, 573, 576, 579, 582, 586, 591, 593, 595, - 597, 600, 603, 606, 609, 613, 618, 626, 630, 632, - 635, 638, 641, 644, 648, 653, 661, 663, 665, 668, - 670, 672, 674, 677, 682, 684, 686, 689, 691, 693, - 695, 698, 703, 706, 708, 710, 713, 716, 719, 722, - 726, 727, 733, 734, 742, 744, 746, 749, 753, 756, - 759, 762, 766, 770, 774, 778, 782, 786, 791, 796, - 799, 803, 805, 807, 809, 811, 815, 821, 823, 826, - 831, 833, 835, 837, 839, 840, 847, 852, 855, 859, - 861, 863, 865, 867, 869, 871, 873, 875, 877, 879, - 881, 883, 885, 887, 890, 893, 896, 899, 901, 904, - 906, 910, 913, 915, 916, 919, 921, 924, 926, 928, - 930, 932, 934, 936, 938, 940, 942, 944, 946, 948, - 950, 952, 954, 956, 958, 960, 962, 964, 966, 968, - 970, 972, 974, 976, 978, 980, 982, 984, 986, 988, - 990, 992, 994, 996, 998, 1000, 1002, 1004, 1006, 1008, - 1010, 1012, 1014, 1016, 1018, 1020, 1022, 1024, 1026, 1028, - 1030, 1032, 1034, 1036, 1038, 1040, 1042, 1044, 1046, 1048, - 1050, 1052, 1054, 1056, 1058, 1060, 1062, 1064, 1066, 1068, - 1070, 1072, 1074, 1076, 1078, 1080, 1082, 1084, 1086, 1088, - 1090, 1092, 1094, 1096, 1098, 1100, 1102, 1104, 1106, 1108, - 1110, 1112, 1114, 1116, 1118, 1120, 1122, 1124, 1126, 1128, - 1130, 1132, 1134, 1138, 1140, 1142, 1144, 1146, 1148, 1152, - 1154, 1159, 1167, 1175, 1180, 1183, 1186, 1189, 1192, 1195, - 1199, 1203, 1207, 1211, 1215, 1219, 1223, 1227, 1231, 1235, - 1239, 1243, 1247, 1251, 1255, 1259, 1265, 1270, 1275, 1279, - 1283, 1287, 1291, 1293, 1298, 1306, 1314, 1319, 1324, 1329, - 1334, 1339, 1344, 1349, 1354, 1359, 1364, 1369, 1374, 1379, - 1384, 1387, 1393, 1396, 1399, 1402, 1405, 1408, 1412, 1416, - 1420, 1424, 1428, 1432, 1436, 1440, 1444, 1448, 1452, 1456, - 1460, 1464, 1468, 1472, 1476, 1480, 1486, 1491, 1496, 1500, - 1504, 1508, 1512, 1514, 1516, 1518, 1520, 1522, 1524, 1526, - 1528, 1533, 1541, 1549, 1554, 1557, 1563, 1566, 1569, 1572, - 1575, 1579, 1583, 1587, 1591, 1595, 1599, 1603, 1607, 1611, - 1615, 1619, 1623, 1627, 1631, 1635, 1639, 1643, 1647, 1653, - 1658, 1663, 1667, 1671, 1675, 1679, 1681, 1683, 1685, 1687, - 1689, 1691, 1693, 1696, 1699, 1701, 1703, 1705, 1708 + 377, 379, 381, 383, 385, 386, 393, 396, 398, 400, + 402, 406, 409, 414, 417, 422, 426, 431, 433, 435, + 437, 439, 442, 445, 448, 451, 454, 457, 461, 466, + 470, 474, 475, 482, 484, 486, 488, 492, 495, 497, + 501, 503, 506, 508, 511, 513, 517, 523, 527, 532, + 534, 536, 539, 541, 545, 549, 555, 559, 563, 568, + 570, 572, 574, 576, 579, 582, 585, 588, 591, 595, + 600, 602, 604, 606, 609, 612, 615, 618, 621, 625, + 630, 638, 642, 644, 647, 650, 653, 656, 659, 663, + 668, 676, 678, 680, 683, 685, 687, 689, 692, 697, + 699, 701, 704, 706, 708, 710, 713, 718, 721, 723, + 725, 728, 731, 734, 737, 741, 742, 748, 749, 757, + 759, 761, 764, 768, 771, 774, 777, 781, 785, 789, + 793, 797, 801, 806, 811, 814, 818, 820, 822, 824, + 826, 830, 836, 838, 841, 846, 848, 850, 852, 854, + 855, 862, 867, 870, 874, 876, 878, 880, 882, 884, + 886, 888, 890, 892, 894, 896, 898, 900, 902, 905, + 908, 911, 914, 916, 919, 921, 925, 928, 930, 931, + 934, 936, 939, 941, 943, 945, 947, 949, 951, 953, + 955, 957, 959, 961, 963, 965, 967, 969, 971, 973, + 975, 977, 979, 981, 983, 985, 987, 989, 991, 993, + 995, 997, 999, 1001, 1003, 1005, 1007, 1009, 1011, 1013, + 1015, 1017, 1019, 1021, 1023, 1025, 1027, 1029, 1031, 1033, + 1035, 1037, 1039, 1041, 1043, 1045, 1047, 1049, 1051, 1053, + 1055, 1057, 1059, 1061, 1063, 1065, 1067, 1069, 1071, 1073, + 1075, 1077, 1079, 1081, 1083, 1085, 1087, 1089, 1091, 1093, + 1095, 1097, 1099, 1101, 1103, 1105, 1107, 1109, 1111, 1113, + 1115, 1117, 1119, 1121, 1123, 1125, 1127, 1129, 1131, 1133, + 1135, 1137, 1139, 1141, 1143, 1145, 1147, 1149, 1153, 1155, + 1157, 1159, 1161, 1163, 1167, 1169, 1174, 1182, 1190, 1195, + 1198, 1201, 1204, 1207, 1210, 1214, 1218, 1222, 1226, 1230, + 1234, 1238, 1242, 1246, 1250, 1254, 1258, 1262, 1266, 1270, + 1274, 1280, 1285, 1290, 1294, 1298, 1302, 1306, 1308, 1313, + 1321, 1329, 1334, 1339, 1344, 1349, 1354, 1359, 1364, 1369, + 1374, 1379, 1384, 1389, 1394, 1399, 1402, 1408, 1411, 1414, + 1417, 1420, 1423, 1427, 1431, 1435, 1439, 1443, 1447, 1451, + 1455, 1459, 1463, 1467, 1471, 1475, 1479, 1483, 1487, 1491, + 1495, 1501, 1506, 1511, 1515, 1519, 1523, 1527, 1529, 1531, + 1533, 1535, 1537, 1539, 1541, 1543, 1548, 1556, 1564, 1569, + 1572, 1578, 1581, 1584, 1587, 1590, 1594, 1598, 1602, 1606, + 1610, 1614, 1618, 1622, 1626, 1630, 1634, 1638, 1642, 1646, + 1650, 1654, 1658, 1662, 1668, 1673, 1678, 1682, 1686, 1690, + 1694, 1696, 1698, 1700, 1702, 1704, 1706, 1708, 1711, 1714, + 1716, 1718, 1720, 1723 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -936,138 +937,140 @@ static const yytype_int16 yyrhs[] = -1, 39, -1, 40, -1, 41, -1, 42, -1, 29, -1, 126, 130, -1, 125, 127, -1, 76, -1, 52, -1, 142, -1, 164, -1, -1, 90, 165, 116, 166, - 117, 163, -1, 223, -1, 167, -1, 168, -1, 167, - 108, 168, -1, 50, 221, -1, 50, 221, 111, 186, - -1, 95, 221, -1, 95, 221, 111, 186, -1, 169, - 181, 174, -1, 51, 169, 181, 174, -1, 204, -1, - 8, -1, 9, -1, 221, -1, 78, 162, -1, 51, - 170, -1, 120, 170, -1, 115, 170, -1, 14, 170, - -1, 10, 120, 170, -1, 170, 126, 212, 130, -1, - 170, 110, 4, -1, 125, 170, 127, -1, -1, 170, - 125, 171, 172, 127, 161, -1, 223, -1, 12, -1, - 173, -1, 173, 108, 12, -1, 173, 12, -1, 179, - -1, 173, 108, 179, -1, 223, -1, 111, 215, -1, - 223, -1, 111, 216, -1, 109, -1, 107, 208, 128, - -1, 110, 134, 107, 208, 128, -1, 111, 216, 109, - -1, 111, 107, 177, 128, -1, 223, -1, 178, -1, - 178, 108, -1, 216, -1, 107, 177, 128, -1, 178, - 108, 216, -1, 178, 108, 107, 177, 128, -1, 183, - 181, 175, -1, 8, 181, 175, -1, 51, 183, 181, - 175, -1, 218, -1, 223, -1, 8, -1, 9, -1, - 51, 180, -1, 120, 180, -1, 115, 180, -1, 14, - 180, -1, 10, 120, 180, -1, 180, 126, 212, 130, - -1, 223, -1, 8, -1, 9, -1, 51, 181, -1, - 120, 181, -1, 115, 181, -1, 14, 181, -1, 10, - 120, 181, -1, 181, 126, 212, 130, -1, 125, 181, - 127, 125, 172, 127, 161, -1, 125, 181, 127, -1, - 223, -1, 51, 182, -1, 120, 182, -1, 115, 182, - -1, 14, 182, -1, 10, 120, 182, -1, 182, 126, - 212, 130, -1, 125, 182, 127, 125, 172, 127, 161, - -1, 204, -1, 9, -1, 95, 221, -1, 187, -1, - 189, -1, 194, -1, 200, 221, -1, 199, 221, 110, - 196, -1, 204, -1, 9, -1, 95, 221, -1, 187, - -1, 189, -1, 194, -1, 200, 221, -1, 199, 221, - 110, 196, -1, 199, 221, -1, 204, -1, 9, -1, - 95, 221, -1, 200, 221, -1, 199, 221, -1, 183, - 182, -1, 51, 183, 182, -1, -1, 200, 107, 188, - 133, 128, -1, -1, 200, 221, 190, 191, 107, 133, - 128, -1, 223, -1, 192, -1, 110, 193, -1, 192, - 108, 193, -1, 81, 220, -1, 80, 220, -1, 79, - 220, -1, 99, 81, 220, -1, 99, 80, 220, -1, - 99, 79, 220, -1, 81, 99, 220, -1, 80, 99, - 220, -1, 79, 99, 220, -1, 195, 107, 198, 128, - -1, 199, 221, 110, 196, -1, 199, 221, -1, 199, - 110, 196, -1, 199, -1, 205, -1, 9, -1, 223, - -1, 197, 221, 108, -1, 197, 221, 111, 216, 108, - -1, 197, -1, 197, 221, -1, 197, 221, 111, 216, - -1, 57, -1, 50, -1, 89, -1, 96, -1, -1, - 75, 221, 107, 202, 133, 128, -1, 75, 107, 133, - 128, -1, 98, 221, -1, 98, 75, 221, -1, 205, - -1, 206, -1, 207, -1, 45, -1, 47, -1, 102, - -1, 48, -1, 49, -1, 84, -1, 70, -1, 71, - -1, 97, -1, 85, -1, 69, -1, 84, 205, -1, - 70, 205, -1, 97, 205, -1, 85, 205, -1, 63, - -1, 70, 63, -1, 53, -1, 70, 70, 63, -1, - 70, 53, -1, 100, -1, -1, 209, 210, -1, 223, - -1, 210, 211, -1, 3, -1, 4, -1, 6, -1, - 5, -1, 8, -1, 9, -1, 10, -1, 7, -1, - 12, -1, 13, -1, 14, -1, 15, -1, 16, -1, - 17, -1, 18, -1, 19, -1, 20, -1, 21, -1, - 22, -1, 29, -1, 30, -1, 31, -1, 32, -1, - 33, -1, 34, -1, 35, -1, 36, -1, 37, -1, - 38, -1, 39, -1, 40, -1, 41, -1, 42, -1, - 45, -1, 46, -1, 47, -1, 48, -1, 49, -1, - 102, -1, 50, -1, 51, -1, 52, -1, 53, -1, - 54, -1, 55, -1, 57, -1, 59, -1, 60, -1, - 62, -1, 63, -1, 64, -1, 65, -1, 66, -1, - 67, -1, 68, -1, 69, -1, 70, -1, 74, -1, - 76, -1, 79, -1, 80, -1, 81, -1, 61, -1, - 82, -1, 83, -1, 84, -1, 85, -1, 86, -1, - 87, -1, 88, -1, 89, -1, 91, -1, 92, -1, - 93, -1, 94, -1, 95, -1, 96, -1, 97, -1, - 99, -1, 100, -1, 101, -1, 103, -1, 78, -1, - 118, -1, 119, -1, 120, -1, 121, -1, 115, -1, - 113, -1, 114, -1, 129, -1, 123, -1, 111, -1, - 122, -1, 116, -1, 117, -1, 125, -1, 127, -1, - 124, -1, 108, -1, 109, -1, 110, -1, 126, -1, - 130, -1, 112, -1, 107, 210, 128, -1, 223, -1, - 216, -1, 223, -1, 214, -1, 216, -1, 214, 108, - 216, -1, 217, -1, 125, 186, 127, 215, -1, 88, - 116, 186, 117, 125, 214, 127, -1, 54, 116, 186, - 117, 125, 214, 127, -1, 86, 125, 186, 127, -1, - 129, 215, -1, 123, 215, -1, 119, 215, -1, 120, - 215, -1, 115, 215, -1, 215, 120, 215, -1, 215, - 121, 215, -1, 215, 122, 215, -1, 215, 118, 215, - -1, 215, 119, 215, -1, 215, 113, 215, -1, 215, - 114, 215, -1, 215, 115, 215, -1, 215, 13, 215, - -1, 215, 14, 215, -1, 215, 15, 215, -1, 215, - 16, 215, -1, 215, 17, 215, -1, 215, 18, 215, - -1, 215, 19, 215, -1, 215, 20, 215, -1, 215, - 112, 215, 110, 215, -1, 215, 126, 216, 130, -1, - 215, 125, 214, 127, -1, 215, 125, 127, -1, 215, - 124, 215, -1, 215, 29, 215, -1, 125, 214, 127, - -1, 217, -1, 125, 186, 127, 216, -1, 88, 116, - 186, 117, 125, 214, 127, -1, 54, 116, 186, 117, - 125, 214, 127, -1, 9, 125, 213, 127, -1, 69, - 125, 213, 127, -1, 47, 125, 213, 127, -1, 102, - 125, 213, 127, -1, 48, 125, 213, 127, -1, 49, - 125, 213, 127, -1, 45, 125, 213, 127, -1, 84, - 125, 213, 127, -1, 70, 125, 213, 127, -1, 97, - 125, 213, 127, -1, 85, 125, 213, 127, -1, 63, - 125, 213, 127, -1, 53, 125, 213, 127, -1, 86, - 125, 186, 127, -1, 76, 185, -1, 76, 185, 125, - 213, 127, -1, 129, 216, -1, 123, 216, -1, 119, - 216, -1, 120, 216, -1, 115, 216, -1, 216, 120, - 216, -1, 216, 121, 216, -1, 216, 122, 216, -1, - 216, 118, 216, -1, 216, 119, 216, -1, 216, 113, - 216, -1, 216, 114, 216, -1, 216, 115, 216, -1, - 216, 13, 216, -1, 216, 14, 216, -1, 216, 15, - 216, -1, 216, 16, 216, -1, 216, 17, 216, -1, - 216, 18, 216, -1, 216, 116, 216, -1, 216, 117, - 216, -1, 216, 19, 216, -1, 216, 20, 216, -1, - 216, 112, 216, 110, 216, -1, 216, 126, 216, 130, - -1, 216, 125, 214, 127, -1, 216, 125, 127, -1, - 216, 124, 216, -1, 216, 29, 216, -1, 125, 214, - 127, -1, 4, -1, 92, -1, 62, -1, 5, -1, - 3, -1, 222, -1, 8, -1, 219, -1, 125, 186, + 117, 163, -1, 90, 142, -1, 223, -1, 167, -1, + 168, -1, 167, 108, 168, -1, 50, 221, -1, 50, + 221, 111, 186, -1, 95, 221, -1, 95, 221, 111, + 186, -1, 169, 181, 174, -1, 51, 169, 181, 174, + -1, 204, -1, 8, -1, 9, -1, 221, -1, 78, + 162, -1, 51, 170, -1, 101, 170, -1, 120, 170, + -1, 115, 170, -1, 14, 170, -1, 10, 120, 170, + -1, 170, 126, 212, 130, -1, 170, 110, 4, -1, + 125, 170, 127, -1, -1, 170, 125, 171, 172, 127, + 161, -1, 223, -1, 12, -1, 173, -1, 173, 108, + 12, -1, 173, 12, -1, 179, -1, 173, 108, 179, + -1, 223, -1, 111, 215, -1, 223, -1, 111, 216, + -1, 109, -1, 107, 208, 128, -1, 110, 134, 107, + 208, 128, -1, 111, 216, 109, -1, 111, 107, 177, + 128, -1, 223, -1, 178, -1, 178, 108, -1, 216, + -1, 107, 177, 128, -1, 178, 108, 216, -1, 178, + 108, 107, 177, 128, -1, 183, 181, 175, -1, 8, + 181, 175, -1, 51, 183, 181, 175, -1, 218, -1, + 223, -1, 8, -1, 9, -1, 51, 180, -1, 101, + 180, -1, 120, 180, -1, 115, 180, -1, 14, 180, + -1, 10, 120, 180, -1, 180, 126, 212, 130, -1, + 223, -1, 8, -1, 9, -1, 51, 181, -1, 101, + 181, -1, 120, 181, -1, 115, 181, -1, 14, 181, + -1, 10, 120, 181, -1, 181, 126, 212, 130, -1, + 125, 181, 127, 125, 172, 127, 161, -1, 125, 181, + 127, -1, 223, -1, 51, 182, -1, 101, 182, -1, + 120, 182, -1, 115, 182, -1, 14, 182, -1, 10, + 120, 182, -1, 182, 126, 212, 130, -1, 125, 182, + 127, 125, 172, 127, 161, -1, 204, -1, 9, -1, + 95, 221, -1, 187, -1, 189, -1, 194, -1, 200, + 221, -1, 199, 221, 110, 196, -1, 204, -1, 9, + -1, 95, 221, -1, 187, -1, 189, -1, 194, -1, + 200, 221, -1, 199, 221, 110, 196, -1, 199, 221, + -1, 204, -1, 9, -1, 95, 221, -1, 200, 221, + -1, 199, 221, -1, 183, 182, -1, 51, 183, 182, + -1, -1, 200, 107, 188, 133, 128, -1, -1, 200, + 221, 190, 191, 107, 133, 128, -1, 223, -1, 192, + -1, 110, 193, -1, 192, 108, 193, -1, 81, 220, + -1, 80, 220, -1, 79, 220, -1, 99, 81, 220, + -1, 99, 80, 220, -1, 99, 79, 220, -1, 81, + 99, 220, -1, 80, 99, 220, -1, 79, 99, 220, + -1, 195, 107, 198, 128, -1, 199, 221, 110, 196, + -1, 199, 221, -1, 199, 110, 196, -1, 199, -1, + 205, -1, 9, -1, 223, -1, 197, 221, 108, -1, + 197, 221, 111, 216, 108, -1, 197, -1, 197, 221, + -1, 197, 221, 111, 216, -1, 57, -1, 50, -1, + 89, -1, 96, -1, -1, 75, 221, 107, 202, 133, + 128, -1, 75, 107, 133, 128, -1, 98, 221, -1, + 98, 75, 221, -1, 205, -1, 206, -1, 207, -1, + 45, -1, 47, -1, 102, -1, 48, -1, 49, -1, + 84, -1, 70, -1, 71, -1, 97, -1, 85, -1, + 69, -1, 84, 205, -1, 70, 205, -1, 97, 205, + -1, 85, 205, -1, 63, -1, 70, 63, -1, 53, + -1, 70, 70, 63, -1, 70, 53, -1, 100, -1, + -1, 209, 210, -1, 223, -1, 210, 211, -1, 3, + -1, 4, -1, 6, -1, 5, -1, 8, -1, 9, + -1, 10, -1, 7, -1, 12, -1, 13, -1, 14, + -1, 15, -1, 16, -1, 17, -1, 18, -1, 19, + -1, 20, -1, 21, -1, 22, -1, 29, -1, 30, + -1, 31, -1, 32, -1, 33, -1, 34, -1, 35, + -1, 36, -1, 37, -1, 38, -1, 39, -1, 40, + -1, 41, -1, 42, -1, 45, -1, 46, -1, 47, + -1, 48, -1, 49, -1, 102, -1, 50, -1, 51, + -1, 52, -1, 53, -1, 54, -1, 55, -1, 57, + -1, 59, -1, 60, -1, 62, -1, 63, -1, 64, + -1, 65, -1, 66, -1, 67, -1, 68, -1, 69, + -1, 70, -1, 74, -1, 76, -1, 79, -1, 80, + -1, 81, -1, 61, -1, 82, -1, 83, -1, 84, + -1, 85, -1, 86, -1, 87, -1, 88, -1, 89, + -1, 91, -1, 92, -1, 93, -1, 94, -1, 95, + -1, 96, -1, 97, -1, 99, -1, 100, -1, 101, + -1, 103, -1, 78, -1, 118, -1, 119, -1, 120, + -1, 121, -1, 115, -1, 113, -1, 114, -1, 129, + -1, 123, -1, 111, -1, 122, -1, 116, -1, 117, + -1, 125, -1, 127, -1, 124, -1, 108, -1, 109, + -1, 110, -1, 126, -1, 130, -1, 112, -1, 107, + 210, 128, -1, 223, -1, 216, -1, 223, -1, 214, + -1, 216, -1, 214, 108, 216, -1, 217, -1, 125, + 186, 127, 215, -1, 88, 116, 186, 117, 125, 214, + 127, -1, 54, 116, 186, 117, 125, 214, 127, -1, + 86, 125, 186, 127, -1, 129, 215, -1, 123, 215, + -1, 119, 215, -1, 120, 215, -1, 115, 215, -1, + 215, 120, 215, -1, 215, 121, 215, -1, 215, 122, + 215, -1, 215, 118, 215, -1, 215, 119, 215, -1, + 215, 113, 215, -1, 215, 114, 215, -1, 215, 115, + 215, -1, 215, 13, 215, -1, 215, 14, 215, -1, + 215, 15, 215, -1, 215, 16, 215, -1, 215, 17, + 215, -1, 215, 18, 215, -1, 215, 19, 215, -1, + 215, 20, 215, -1, 215, 112, 215, 110, 215, -1, + 215, 126, 216, 130, -1, 215, 125, 214, 127, -1, + 215, 125, 127, -1, 215, 124, 215, -1, 215, 29, + 215, -1, 125, 214, 127, -1, 217, -1, 125, 186, 127, 216, -1, 88, 116, 186, 117, 125, 214, 127, - -1, 54, 116, 186, 117, 125, 214, 127, -1, 86, - 125, 186, 127, -1, 76, 185, -1, 76, 185, 125, - 213, 127, -1, 129, 216, -1, 123, 216, -1, 119, - 216, -1, 115, 216, -1, 218, 120, 216, -1, 218, - 121, 216, -1, 218, 122, 216, -1, 218, 118, 216, - -1, 218, 119, 216, -1, 218, 113, 216, -1, 218, - 114, 216, -1, 218, 115, 216, -1, 218, 13, 216, - -1, 218, 14, 216, -1, 218, 15, 216, -1, 218, - 16, 216, -1, 218, 17, 216, -1, 218, 18, 216, - -1, 218, 116, 216, -1, 218, 117, 216, -1, 218, - 19, 216, -1, 218, 20, 216, -1, 218, 112, 216, - 110, 216, -1, 218, 126, 216, 130, -1, 218, 125, - 214, 127, -1, 218, 125, 127, -1, 218, 124, 216, - -1, 218, 29, 216, -1, 125, 214, 127, -1, 4, - -1, 92, -1, 62, -1, 5, -1, 3, -1, 222, - -1, 221, -1, 200, 221, -1, 95, 221, -1, 8, - -1, 9, -1, 6, -1, 222, 6, -1, -1 + -1, 54, 116, 186, 117, 125, 214, 127, -1, 9, + 125, 213, 127, -1, 69, 125, 213, 127, -1, 47, + 125, 213, 127, -1, 102, 125, 213, 127, -1, 48, + 125, 213, 127, -1, 49, 125, 213, 127, -1, 45, + 125, 213, 127, -1, 84, 125, 213, 127, -1, 70, + 125, 213, 127, -1, 97, 125, 213, 127, -1, 85, + 125, 213, 127, -1, 63, 125, 213, 127, -1, 53, + 125, 213, 127, -1, 86, 125, 186, 127, -1, 76, + 185, -1, 76, 185, 125, 213, 127, -1, 129, 216, + -1, 123, 216, -1, 119, 216, -1, 120, 216, -1, + 115, 216, -1, 216, 120, 216, -1, 216, 121, 216, + -1, 216, 122, 216, -1, 216, 118, 216, -1, 216, + 119, 216, -1, 216, 113, 216, -1, 216, 114, 216, + -1, 216, 115, 216, -1, 216, 13, 216, -1, 216, + 14, 216, -1, 216, 15, 216, -1, 216, 16, 216, + -1, 216, 17, 216, -1, 216, 18, 216, -1, 216, + 116, 216, -1, 216, 117, 216, -1, 216, 19, 216, + -1, 216, 20, 216, -1, 216, 112, 216, 110, 216, + -1, 216, 126, 216, 130, -1, 216, 125, 214, 127, + -1, 216, 125, 127, -1, 216, 124, 216, -1, 216, + 29, 216, -1, 125, 214, 127, -1, 4, -1, 92, + -1, 62, -1, 5, -1, 3, -1, 222, -1, 8, + -1, 219, -1, 125, 186, 127, 216, -1, 88, 116, + 186, 117, 125, 214, 127, -1, 54, 116, 186, 117, + 125, 214, 127, -1, 86, 125, 186, 127, -1, 76, + 185, -1, 76, 185, 125, 213, 127, -1, 129, 216, + -1, 123, 216, -1, 119, 216, -1, 115, 216, -1, + 218, 120, 216, -1, 218, 121, 216, -1, 218, 122, + 216, -1, 218, 118, 216, -1, 218, 119, 216, -1, + 218, 113, 216, -1, 218, 114, 216, -1, 218, 115, + 216, -1, 218, 13, 216, -1, 218, 14, 216, -1, + 218, 15, 216, -1, 218, 16, 216, -1, 218, 17, + 216, -1, 218, 18, 216, -1, 218, 116, 216, -1, + 218, 117, 216, -1, 218, 19, 216, -1, 218, 20, + 216, -1, 218, 112, 216, 110, 216, -1, 218, 126, + 216, 130, -1, 218, 125, 214, 127, -1, 218, 125, + 127, -1, 218, 124, 216, -1, 218, 29, 216, -1, + 125, 214, 127, -1, 4, -1, 92, -1, 62, -1, + 5, -1, 3, -1, 222, -1, 221, -1, 200, 221, + -1, 95, 221, -1, 8, -1, 9, -1, 6, -1, + 222, 6, -1, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -1085,49 +1088,50 @@ static const yytype_uint16 yyrline[] = 997, 1001, 1005, 1009, 1013, 1017, 1021, 1025, 1029, 1033, 1037, 1041, 1045, 1049, 1053, 1057, 1061, 1065, 1069, 1073, 1077, 1081, 1085, 1089, 1093, 1097, 1101, 1105, 1109, 1113, - 1117, 1121, 1128, 1129, 1134, 1133, 1144, 1145, 1149, 1155, - 1164, 1168, 1172, 1176, 1180, 1186, 1196, 1200, 1205, 1214, - 1218, 1232, 1237, 1242, 1247, 1252, 1257, 1262, 1267, 1273, - 1272, 1294, 1298, 1303, 1307, 1312, 1320, 1325, 1333, 1337, - 1344, 1348, 1355, 1359, 1363, 1367, 1371, 1378, 1379, 1380, - 1384, 1387, 1388, 1389, 1393, 1398, 1406, 1412, 1422, 1426, - 1430, 1434, 1439, 1444, 1449, 1454, 1459, 1467, 1471, 1475, - 1479, 1484, 1489, 1494, 1499, 1504, 1509, 1515, 1523, 1527, - 1532, 1537, 1542, 1547, 1552, 1557, 1566, 1570, 1575, 1579, - 1583, 1587, 1591, 1607, 1626, 1630, 1635, 1639, 1643, 1647, - 1651, 1667, 1683, 1704, 1708, 1713, 1717, 1733, 1752, 1758, - 1769, 1768, 1793, 1792, 1822, 1823, 1827, 1828, 1832, 1836, - 1840, 1844, 1848, 1852, 1856, 1860, 1864, 1871, 1879, 1883, - 1887, 1891, 1898, 1902, 1909, 1910, 1916, 1924, 1925, 1931, - 1940, 1947, 1951, 1955, 1963, 1962, 1984, 1988, 1994, 2003, - 2004, 2005, 2009, 2013, 2017, 2021, 2025, 2029, 2034, 2039, - 2044, 2049, 2054, 2058, 2063, 2072, 2077, 2085, 2089, 2094, - 2098, 2103, 2111, 2121, 2121, 2131, 2132, 2136, 2139, 2142, - 2145, 2148, 2151, 2154, 2157, 2160, 2160, 2160, 2161, 2161, - 2161, 2161, 2162, 2162, 2162, 2162, 2162, 2163, 2163, 2163, - 2164, 2164, 2164, 2164, 2164, 2165, 2165, 2165, 2165, 2165, - 2166, 2166, 2166, 2166, 2166, 2167, 2167, 2167, 2168, 2168, - 2168, 2168, 2168, 2169, 2169, 2169, 2170, 2170, 2170, 2170, - 2171, 2171, 2171, 2172, 2172, 2172, 2172, 2172, 2173, 2173, - 2173, 2173, 2174, 2174, 2174, 2174, 2174, 2175, 2175, 2175, - 2175, 2175, 2175, 2176, 2176, 2176, 2176, 2176, 2177, 2178, - 2181, 2181, 2181, 2181, 2181, 2181, 2181, 2181, 2181, 2181, - 2181, 2182, 2182, 2182, 2182, 2182, 2182, 2182, 2182, 2182, - 2182, 2183, 2183, 2187, 2191, 2198, 2202, 2209, 2213, 2220, - 2224, 2228, 2232, 2236, 2240, 2244, 2248, 2260, 2264, 2268, - 2272, 2276, 2280, 2284, 2288, 2292, 2296, 2300, 2304, 2308, - 2312, 2316, 2320, 2324, 2328, 2332, 2336, 2340, 2344, 2348, - 2352, 2356, 2364, 2368, 2372, 2376, 2380, 2387, 2393, 2399, - 2405, 2411, 2417, 2423, 2430, 2437, 2444, 2451, 2457, 2463, - 2467, 2471, 2475, 2479, 2483, 2495, 2499, 2503, 2507, 2511, - 2515, 2519, 2523, 2527, 2531, 2535, 2539, 2543, 2547, 2551, - 2555, 2559, 2563, 2567, 2571, 2575, 2579, 2583, 2587, 2591, - 2595, 2599, 2606, 2610, 2614, 2618, 2622, 2626, 2630, 2644, - 2648, 2652, 2656, 2660, 2664, 2668, 2672, 2676, 2680, 2692, - 2696, 2700, 2704, 2708, 2712, 2716, 2720, 2724, 2728, 2732, - 2736, 2740, 2744, 2748, 2752, 2756, 2760, 2764, 2768, 2772, - 2776, 2780, 2784, 2788, 2792, 2799, 2803, 2807, 2811, 2815, - 2819, 2826, 2834, 2842, 2865, 2869, 2876, 2880, 2886 + 1117, 1121, 1128, 1129, 1134, 1133, 1141, 1145, 1146, 1150, + 1156, 1165, 1169, 1173, 1177, 1181, 1187, 1197, 1201, 1206, + 1215, 1219, 1233, 1238, 1243, 1248, 1253, 1258, 1263, 1268, + 1273, 1279, 1278, 1300, 1304, 1309, 1313, 1318, 1326, 1331, + 1339, 1343, 1350, 1354, 1361, 1365, 1369, 1373, 1377, 1384, + 1385, 1386, 1390, 1393, 1394, 1395, 1399, 1404, 1412, 1418, + 1428, 1432, 1436, 1440, 1445, 1450, 1455, 1460, 1465, 1470, + 1478, 1482, 1486, 1490, 1495, 1500, 1505, 1510, 1515, 1520, + 1525, 1531, 1539, 1543, 1548, 1553, 1558, 1563, 1568, 1573, + 1578, 1587, 1591, 1596, 1600, 1604, 1608, 1612, 1628, 1647, + 1651, 1656, 1660, 1664, 1668, 1672, 1688, 1704, 1725, 1729, + 1734, 1738, 1754, 1773, 1779, 1790, 1789, 1814, 1813, 1843, + 1844, 1848, 1849, 1853, 1857, 1861, 1865, 1869, 1873, 1877, + 1881, 1885, 1892, 1900, 1904, 1908, 1912, 1919, 1923, 1930, + 1931, 1937, 1945, 1946, 1952, 1961, 1968, 1972, 1976, 1984, + 1983, 2005, 2009, 2015, 2024, 2025, 2026, 2030, 2034, 2038, + 2042, 2046, 2050, 2055, 2060, 2065, 2070, 2075, 2079, 2084, + 2093, 2098, 2106, 2110, 2115, 2119, 2124, 2132, 2142, 2142, + 2152, 2153, 2157, 2160, 2163, 2166, 2169, 2172, 2175, 2178, + 2181, 2181, 2181, 2182, 2182, 2182, 2182, 2183, 2183, 2183, + 2183, 2183, 2184, 2184, 2184, 2185, 2185, 2185, 2185, 2185, + 2186, 2186, 2186, 2186, 2186, 2187, 2187, 2187, 2187, 2187, + 2188, 2188, 2188, 2189, 2189, 2189, 2189, 2189, 2190, 2190, + 2190, 2191, 2191, 2191, 2191, 2192, 2192, 2192, 2193, 2193, + 2193, 2193, 2193, 2194, 2194, 2194, 2194, 2195, 2195, 2195, + 2195, 2195, 2196, 2196, 2196, 2196, 2196, 2196, 2197, 2197, + 2197, 2197, 2197, 2198, 2199, 2202, 2202, 2202, 2202, 2202, + 2202, 2202, 2202, 2202, 2202, 2202, 2203, 2203, 2203, 2203, + 2203, 2203, 2203, 2203, 2203, 2203, 2204, 2204, 2208, 2212, + 2219, 2223, 2230, 2234, 2241, 2245, 2249, 2253, 2257, 2261, + 2265, 2269, 2281, 2285, 2289, 2293, 2297, 2301, 2305, 2309, + 2313, 2317, 2321, 2325, 2329, 2333, 2337, 2341, 2345, 2349, + 2353, 2357, 2361, 2365, 2369, 2373, 2377, 2385, 2389, 2393, + 2397, 2401, 2408, 2414, 2420, 2426, 2432, 2438, 2444, 2451, + 2458, 2465, 2472, 2478, 2484, 2488, 2492, 2496, 2500, 2504, + 2516, 2520, 2524, 2528, 2532, 2536, 2540, 2544, 2548, 2552, + 2556, 2560, 2564, 2568, 2572, 2576, 2580, 2584, 2588, 2592, + 2596, 2600, 2604, 2608, 2612, 2616, 2620, 2627, 2631, 2635, + 2639, 2643, 2647, 2651, 2665, 2669, 2673, 2677, 2681, 2685, + 2689, 2693, 2697, 2701, 2713, 2717, 2721, 2725, 2729, 2733, + 2737, 2741, 2745, 2749, 2753, 2757, 2761, 2765, 2769, 2773, + 2777, 2781, 2785, 2789, 2793, 2797, 2801, 2805, 2809, 2813, + 2820, 2824, 2828, 2832, 2836, 2840, 2847, 2855, 2863, 2886, + 2890, 2897, 2901, 2907 }; #endif @@ -1227,24 +1231,25 @@ static const yytype_uint8 yyr1[] = 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 163, 163, 165, 164, 166, 166, 167, 167, - 168, 168, 168, 168, 168, 168, 169, 169, 169, 170, - 170, 170, 170, 170, 170, 170, 170, 170, 170, 171, - 170, 172, 172, 172, 172, 172, 173, 173, 174, 174, - 175, 175, 176, 176, 176, 176, 176, 177, 177, 177, - 178, 178, 178, 178, 179, 179, 179, 179, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 181, 181, 181, - 181, 181, 181, 181, 181, 181, 181, 181, 182, 182, - 182, 182, 182, 182, 182, 182, 183, 183, 183, 183, - 183, 183, 183, 183, 184, 184, 184, 184, 184, 184, - 184, 184, 184, 185, 185, 185, 185, 185, 186, 186, - 188, 187, 190, 189, 191, 191, 192, 192, 193, 193, - 193, 193, 193, 193, 193, 193, 193, 194, 195, 195, - 195, 195, 196, 196, 197, 197, 197, 198, 198, 198, - 199, 200, 200, 200, 202, 201, 201, 203, 203, 204, - 204, 204, 205, 205, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 205, 205, 205, 205, 206, 206, 206, - 206, 206, 207, 209, 208, 210, 210, 211, 211, 211, + 162, 162, 163, 163, 165, 164, 164, 166, 166, 167, + 167, 168, 168, 168, 168, 168, 168, 169, 169, 169, + 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, + 170, 171, 170, 172, 172, 172, 172, 172, 173, 173, + 174, 174, 175, 175, 176, 176, 176, 176, 176, 177, + 177, 177, 178, 178, 178, 178, 179, 179, 179, 179, + 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 183, 183, 183, 183, 183, 183, 183, 183, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 185, 185, + 185, 185, 185, 186, 186, 188, 187, 190, 189, 191, + 191, 192, 192, 193, 193, 193, 193, 193, 193, 193, + 193, 193, 194, 195, 195, 195, 195, 196, 196, 197, + 197, 197, 198, 198, 198, 199, 200, 200, 200, 202, + 201, 201, 203, 203, 204, 204, 204, 205, 205, 205, + 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, + 205, 205, 206, 206, 206, 206, 206, 207, 209, 208, + 210, 210, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, @@ -1254,22 +1259,22 @@ static const yytype_uint8 yyr1[] = 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 212, 212, 213, 213, 214, 214, 215, + 211, 211, 211, 211, 211, 211, 211, 211, 212, 212, + 213, 213, 214, 214, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 216, 216, 216, 216, 216, 216, 216, 216, + 215, 215, 215, 215, 215, 215, 215, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, - 216, 216, 217, 217, 217, 217, 217, 217, 217, 218, + 216, 216, 216, 216, 216, 216, 216, 217, 217, 217, + 217, 217, 217, 217, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 219, 219, 219, 219, 219, - 219, 220, 220, 220, 221, 221, 222, 222, 223 + 219, 219, 219, 219, 219, 219, 220, 220, 220, 221, + 221, 222, 222, 223 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1287,24 +1292,25 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, - 1, 1, 1, 1, 0, 6, 1, 1, 1, 3, - 2, 4, 2, 4, 3, 4, 1, 1, 1, 1, - 2, 2, 2, 2, 2, 3, 4, 3, 3, 0, - 6, 1, 1, 1, 3, 2, 1, 3, 1, 2, - 1, 2, 1, 3, 5, 3, 4, 1, 1, 2, - 1, 3, 3, 5, 3, 3, 4, 1, 1, 1, - 1, 2, 2, 2, 2, 3, 4, 1, 1, 1, - 2, 2, 2, 2, 3, 4, 7, 3, 1, 2, - 2, 2, 2, 3, 4, 7, 1, 1, 2, 1, - 1, 1, 2, 4, 1, 1, 2, 1, 1, 1, - 2, 4, 2, 1, 1, 2, 2, 2, 2, 3, - 0, 5, 0, 7, 1, 1, 2, 3, 2, 2, - 2, 3, 3, 3, 3, 3, 3, 4, 4, 2, - 3, 1, 1, 1, 1, 3, 5, 1, 2, 4, - 1, 1, 1, 1, 0, 6, 4, 2, 3, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 2, 2, 2, 1, 2, 1, - 3, 2, 1, 0, 2, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 0, 6, 2, 1, 1, 1, + 3, 2, 4, 2, 4, 3, 4, 1, 1, 1, + 1, 2, 2, 2, 2, 2, 2, 3, 4, 3, + 3, 0, 6, 1, 1, 1, 3, 2, 1, 3, + 1, 2, 1, 2, 1, 3, 5, 3, 4, 1, + 1, 2, 1, 3, 3, 5, 3, 3, 4, 1, + 1, 1, 1, 2, 2, 2, 2, 2, 3, 4, + 1, 1, 1, 2, 2, 2, 2, 2, 3, 4, + 7, 3, 1, 2, 2, 2, 2, 2, 3, 4, + 7, 1, 1, 2, 1, 1, 1, 2, 4, 1, + 1, 2, 1, 1, 1, 2, 4, 2, 1, 1, + 2, 2, 2, 2, 3, 0, 5, 0, 7, 1, + 1, 2, 3, 2, 2, 2, 3, 3, 3, 3, + 3, 3, 4, 4, 2, 3, 1, 1, 1, 1, + 3, 5, 1, 2, 4, 1, 1, 1, 1, 0, + 6, 4, 2, 3, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, + 2, 2, 1, 2, 1, 3, 2, 1, 0, 2, + 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1314,22 +1320,22 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 3, 1, 1, 1, 1, 1, 3, 1, - 4, 7, 7, 4, 2, 2, 2, 2, 2, 3, + 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, + 1, 1, 1, 3, 1, 4, 7, 7, 4, 2, + 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 5, 4, 4, 3, 3, - 3, 3, 1, 4, 7, 7, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 2, 5, 2, 2, 2, 2, 2, 3, 3, 3, + 5, 4, 4, 3, 3, 3, 3, 1, 4, 7, + 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 2, 5, 2, 2, 2, + 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 5, 4, 4, 3, 3, - 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, - 4, 7, 7, 4, 2, 5, 2, 2, 2, 2, + 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, + 1, 1, 1, 1, 1, 4, 7, 7, 4, 2, + 5, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, - 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, - 1, 1, 2, 2, 1, 1, 1, 2, 0 + 3, 3, 3, 5, 4, 4, 3, 3, 3, 3, + 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, + 1, 1, 2, 0 }; /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. @@ -1337,989 +1343,1003 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 548, 0, 0, 0, 548, 5, 496, 492, 495, - 546, 498, 0, 0, 0, 0, 0, 0, 0, 494, - 0, 0, 0, 0, 0, 0, 0, 0, 493, 0, - 0, 0, 0, 0, 0, 0, 0, 3, 442, 497, - 207, 272, 273, 275, 276, 261, 0, 289, 260, 287, - 282, 278, 279, 277, 281, 262, 0, 263, 280, 292, - 274, 548, 4, 209, 210, 211, 0, 251, 0, 206, - 269, 270, 271, 1, 20, 21, 0, 29, 0, 0, - 0, 0, 0, 0, 124, 548, 0, 6, 15, 7, - 18, 0, 13, 43, 14, 16, 17, 31, 548, 548, - 548, 548, 548, 548, 0, 548, 548, 548, 224, 0, - 460, 0, 0, 223, 548, 548, 0, 0, 548, 548, - 466, 464, 465, 463, 207, 272, 273, 275, 276, 289, - 287, 282, 278, 277, 281, 280, 274, 0, 0, 407, - 462, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 553, 0, 0, 0, 553, 5, 501, 497, 500, + 551, 503, 0, 0, 0, 0, 0, 0, 0, 499, + 0, 0, 0, 0, 0, 0, 0, 0, 498, 0, + 0, 0, 0, 0, 0, 0, 0, 3, 447, 502, + 212, 277, 278, 280, 281, 266, 0, 294, 265, 292, + 287, 283, 284, 282, 286, 267, 0, 268, 285, 297, + 279, 553, 4, 214, 215, 216, 0, 256, 0, 211, + 274, 275, 276, 1, 20, 21, 0, 29, 0, 0, + 0, 0, 0, 0, 553, 553, 0, 6, 15, 7, + 18, 0, 13, 43, 14, 16, 17, 31, 553, 553, + 553, 553, 553, 553, 0, 553, 553, 553, 229, 0, + 465, 0, 0, 228, 553, 553, 0, 0, 553, 553, + 471, 469, 470, 468, 212, 277, 278, 280, 281, 294, + 292, 287, 283, 282, 286, 285, 279, 0, 0, 412, + 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 547, 548, 291, 288, 278, 284, - 278, 283, 286, 544, 545, 208, 285, 0, 548, 548, - 548, 548, 548, 228, 198, 548, 0, 249, 230, 212, - 22, 548, 0, 0, 548, 0, 25, 24, 23, 0, - 0, 19, 0, 267, 77, 215, 41, 0, 42, 32, - 37, 35, 39, 0, 40, 34, 0, 36, 38, 11, - 0, 0, 46, 217, 218, 219, 251, 0, 214, 0, - 406, 405, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 225, 548, 227, 226, 0, 0, 0, 0, 0, - 0, 0, 0, 491, 475, 476, 477, 478, 479, 480, - 483, 484, 490, 0, 472, 473, 474, 481, 482, 470, - 471, 467, 468, 469, 489, 488, 0, 0, 229, 290, - 548, 202, 199, 201, 200, 0, 548, 257, 0, 254, - 253, 250, 252, 0, 548, 548, 30, 0, 0, 548, - 264, 548, 0, 0, 54, 268, 63, 65, 48, 33, - 0, 548, 216, 548, 0, 293, 162, 0, 0, 45, - 44, 0, 222, 220, 446, 452, 448, 450, 451, 458, - 0, 457, 447, 454, 0, 453, 456, 459, 0, 455, - 449, 443, 408, 0, 487, 486, 203, 0, 0, 404, - 403, 258, 247, 213, 548, 0, 0, 235, 234, 0, - 0, 266, 548, 137, 138, 0, 0, 0, 0, 127, - 128, 548, 136, 126, 56, 58, 0, 548, 0, 0, - 548, 0, 548, 179, 180, 0, 548, 548, 548, 548, - 0, 178, 548, 67, 0, 548, 0, 8, 0, 548, - 0, 0, 0, 0, 0, 0, 0, 0, 47, 548, - 139, 0, 0, 461, 0, 485, 548, 204, 255, 0, - 231, 0, 0, 0, 0, 236, 548, 0, 0, 0, - 548, 130, 548, 132, 548, 0, 188, 189, 0, 548, - 548, 548, 548, 548, 548, 187, 0, 55, 548, 539, - 535, 538, 548, 152, 0, 0, 537, 0, 0, 0, - 536, 0, 0, 0, 0, 0, 0, 153, 156, 548, - 177, 499, 540, 151, 0, 0, 0, 49, 548, 0, - 548, 184, 181, 183, 182, 73, 548, 12, 548, 163, - 294, 295, 293, 0, 548, 548, 0, 168, 170, 167, - 165, 0, 144, 141, 93, 94, 95, 96, 97, 98, - 101, 102, 117, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 121, 120, 104, 103, 90, - 92, 91, 99, 100, 88, 89, 85, 86, 87, 84, - 0, 0, 83, 140, 143, 142, 0, 0, 0, 149, - 548, 0, 50, 160, 221, 0, 0, 0, 259, 0, - 0, 0, 240, 541, 0, 239, 0, 238, 0, 0, - 0, 548, 237, 0, 0, 0, 265, 0, 548, 0, - 0, 122, 125, 123, 129, 548, 193, 190, 192, 191, - 0, 0, 548, 134, 158, 57, 548, 0, 59, 548, - 548, 0, 504, 0, 0, 509, 508, 507, 0, 0, - 506, 548, 155, 0, 548, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 552, 553, 296, 293, 283, 289, + 283, 288, 291, 549, 550, 213, 290, 0, 553, 553, + 553, 553, 553, 553, 233, 202, 553, 0, 254, 235, + 217, 22, 553, 0, 0, 553, 0, 25, 24, 23, + 0, 126, 0, 0, 19, 0, 272, 77, 220, 41, + 0, 42, 32, 37, 35, 39, 0, 40, 34, 0, + 36, 38, 11, 0, 0, 46, 222, 223, 224, 256, + 0, 219, 0, 411, 410, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 230, 553, 232, 231, 0, 0, + 0, 0, 0, 0, 0, 0, 496, 480, 481, 482, + 483, 484, 485, 488, 489, 495, 0, 477, 478, 479, + 486, 487, 475, 476, 472, 473, 474, 494, 493, 0, + 0, 234, 295, 553, 207, 203, 204, 206, 205, 0, + 553, 262, 0, 259, 258, 255, 257, 0, 553, 553, + 30, 0, 0, 553, 269, 553, 0, 0, 54, 273, + 63, 65, 48, 33, 0, 553, 221, 553, 0, 298, + 164, 0, 0, 45, 44, 0, 227, 225, 451, 457, + 453, 455, 456, 463, 0, 462, 452, 459, 0, 458, + 461, 464, 0, 460, 454, 448, 413, 0, 492, 491, + 208, 0, 0, 409, 408, 263, 252, 218, 553, 0, + 0, 240, 239, 0, 0, 271, 553, 138, 139, 0, + 0, 0, 0, 128, 129, 553, 137, 127, 56, 58, + 0, 553, 0, 0, 553, 0, 553, 181, 182, 0, + 553, 553, 553, 553, 553, 0, 180, 553, 67, 0, + 553, 0, 8, 0, 553, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 47, 553, 140, 0, 0, 466, + 0, 490, 553, 209, 260, 0, 236, 0, 0, 0, + 0, 241, 553, 0, 0, 0, 553, 131, 553, 133, + 553, 0, 191, 192, 0, 553, 553, 553, 553, 553, + 553, 553, 190, 0, 55, 553, 544, 540, 543, 553, + 154, 0, 0, 542, 0, 0, 0, 541, 0, 0, + 0, 0, 0, 0, 155, 158, 553, 179, 504, 545, + 153, 0, 0, 0, 49, 553, 0, 553, 187, 183, + 184, 186, 185, 73, 553, 12, 553, 165, 299, 300, + 298, 0, 553, 553, 0, 170, 172, 169, 167, 0, + 146, 142, 93, 94, 95, 96, 97, 98, 101, 102, + 117, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 121, 120, 104, 103, 90, 92, 91, + 99, 100, 88, 89, 85, 86, 87, 84, 0, 0, + 83, 141, 143, 145, 144, 0, 0, 0, 151, 553, + 0, 50, 162, 226, 0, 0, 0, 264, 0, 0, + 0, 245, 546, 0, 244, 0, 243, 0, 0, 0, + 553, 242, 0, 0, 0, 270, 0, 553, 0, 122, + 125, 123, 130, 553, 197, 193, 194, 196, 195, 0, + 0, 553, 135, 160, 57, 553, 0, 59, 553, 553, + 0, 509, 0, 0, 514, 513, 512, 0, 0, 511, + 553, 157, 0, 553, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 548, 0, 52, 75, 185, 548, 0, 0, 297, - 298, 300, 299, 304, 301, 302, 303, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 336, 337, 338, - 339, 340, 341, 342, 343, 344, 359, 345, 346, 347, - 348, 349, 350, 351, 352, 353, 354, 355, 379, 356, - 357, 358, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 335, 378, 548, 396, 397, 398, 389, 401, 385, 386, - 384, 391, 392, 380, 381, 382, 383, 390, 388, 395, - 393, 399, 394, 387, 400, 296, 0, 9, 0, 0, - 166, 169, 145, 119, 118, 148, 147, 161, 548, 0, - 0, 445, 444, 548, 256, 543, 246, 542, 245, 244, - 243, 242, 241, 233, 0, 26, 0, 131, 135, 133, - 194, 197, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 159, 409, 0, 0, 61, 0, 0, 175, 548, - 0, 548, 0, 0, 0, 534, 79, 64, 78, 154, - 157, 174, 518, 519, 520, 521, 522, 523, 526, 527, - 533, 0, 515, 516, 517, 524, 525, 513, 514, 510, - 511, 512, 532, 531, 0, 0, 0, 69, 66, 0, - 548, 0, 186, 548, 0, 164, 10, 171, 548, 172, - 0, 146, 51, 205, 0, 0, 548, 0, 0, 0, - 418, 416, 417, 415, 0, 0, 414, 0, 0, 0, + 553, 0, 52, 75, 188, 553, 0, 0, 302, 303, + 305, 304, 309, 306, 307, 308, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 364, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 384, 361, 362, + 363, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, 382, 340, + 383, 553, 401, 402, 403, 394, 406, 390, 391, 389, + 396, 397, 385, 386, 387, 388, 395, 393, 400, 398, + 404, 399, 392, 405, 301, 0, 9, 0, 0, 168, + 171, 147, 119, 118, 150, 149, 163, 553, 0, 0, + 450, 449, 553, 261, 548, 251, 547, 250, 249, 248, + 247, 246, 238, 0, 26, 0, 132, 136, 134, 198, + 201, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 161, 414, 0, 0, 61, 0, 0, 177, 553, 0, + 553, 0, 0, 0, 539, 79, 64, 78, 156, 159, + 176, 523, 524, 525, 526, 527, 528, 531, 532, 538, + 0, 520, 521, 522, 529, 530, 518, 519, 515, 516, + 517, 537, 536, 0, 0, 0, 69, 66, 0, 553, + 0, 189, 553, 0, 166, 10, 173, 553, 174, 0, + 148, 51, 210, 0, 0, 553, 0, 0, 0, 423, + 421, 422, 420, 0, 0, 419, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 195, 0, - 60, 161, 176, 0, 0, 503, 0, 500, 80, 0, - 0, 530, 529, 71, 548, 53, 0, 548, 68, 402, - 0, 548, 27, 28, 0, 0, 0, 0, 0, 441, - 427, 428, 429, 430, 431, 432, 433, 434, 440, 0, - 424, 425, 426, 422, 423, 419, 420, 421, 439, 438, - 0, 0, 62, 0, 505, 0, 0, 528, 548, 0, - 548, 74, 173, 150, 548, 0, 413, 0, 410, 0, - 437, 436, 0, 0, 81, 0, 0, 548, 76, 196, - 0, 0, 435, 502, 501, 82, 548, 70, 0, 0, - 72, 412, 411 + 0, 0, 0, 0, 0, 0, 0, 199, 0, 60, + 163, 178, 0, 0, 508, 0, 505, 80, 0, 0, + 535, 534, 71, 553, 53, 0, 553, 68, 407, 0, + 553, 27, 28, 0, 0, 0, 0, 0, 446, 432, + 433, 434, 435, 436, 437, 438, 439, 445, 0, 429, + 430, 431, 427, 428, 424, 425, 426, 444, 443, 0, + 0, 62, 0, 510, 0, 0, 533, 553, 0, 553, + 74, 175, 152, 553, 0, 418, 0, 415, 0, 442, + 441, 0, 0, 81, 0, 0, 553, 76, 200, 0, + 0, 440, 507, 506, 82, 553, 70, 0, 0, 72, + 417, 416 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 4, 5, 396, 397, 88, 313, 89, 90, 191, - 91, 92, 93, 321, 381, 408, 477, 201, 376, 446, - 447, 595, 221, 377, 380, 488, 914, 958, 646, 850, - 817, 543, 582, 94, 199, 368, 369, 370, 371, 409, - 768, 466, 467, 593, 551, 319, 496, 497, 468, 390, - 444, 183, 61, 222, 110, 62, 63, 294, 64, 295, - 356, 357, 425, 65, 66, 291, 287, 288, 67, 68, - 95, 362, 96, 69, 70, 71, 72, 394, 395, 490, - 755, 348, 229, 230, 801, 139, 38, 470, 471, 562, - 410, 39, 231 + -1, 4, 5, 401, 402, 88, 317, 89, 90, 192, + 91, 92, 93, 325, 385, 414, 484, 204, 380, 453, + 454, 604, 224, 381, 384, 496, 923, 967, 655, 859, + 826, 551, 590, 94, 202, 372, 373, 374, 375, 415, + 777, 473, 474, 602, 560, 323, 504, 505, 475, 395, + 451, 184, 61, 225, 110, 62, 63, 298, 64, 299, + 360, 361, 431, 65, 66, 295, 291, 292, 67, 68, + 95, 366, 96, 69, 70, 71, 72, 399, 400, 498, + 764, 352, 232, 233, 810, 139, 38, 477, 478, 571, + 416, 39, 234 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -491 +#define YYPACT_NINF -570 static const yytype_int16 yypact[] = { - 252, -491, 2070, 3145, 17, 3049, -491, -491, -491, -491, - -491, -491, -99, -95, -74, -54, -48, 12, -23, -491, - 14, 46, 57, 3257, 62, 75, 82, 94, -491, 105, - 115, 2070, 2070, 2070, 2070, 1230, 2070, 2712, -491, 208, - -491, -491, -491, -491, -491, -491, 3313, -491, -491, -491, - -491, 1681, -491, 1861, 1861, -491, 96, -491, 1861, -491, - -491, 184, -491, -491, -491, -491, 137, 11, 29, -491, - -491, -491, -491, -491, -491, -491, -47, -491, 131, 156, - 31, 173, 193, 198, -491, -491, 60, -491, -491, -491, - -491, 2407, -491, -491, -491, -491, -491, -491, 2070, 2070, - 2070, 2070, 2070, 2070, 3145, 2070, 2070, 2070, -491, 96, - 191, 96, 96, -491, 2070, 2070, 3145, 3145, 2070, 2070, - -6, -6, -6, -6, -99, -95, -74, -54, -48, 12, - 14, 46, 2041, 2334, 3302, 3506, 115, 192, -61, 2712, - -6, 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, - 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, - 2070, 2070, 1530, 2070, -491, 184, -491, -491, 1771, -491, - 1861, -491, -491, -491, -491, -491, -491, 201, 184, 184, - 184, 184, 184, 197, -491, -491, 3246, 236, -491, -85, - -491, 3538, 320, 96, -491, 241, -491, -491, -491, 244, - 2474, -491, 96, -491, 246, 249, -491, 3313, -491, 363, - -491, -491, -491, 3201, -491, -491, 96, -491, -491, -491, - 96, 167, 273, -491, -491, -491, 11, 29, -491, 268, - 292, -491, 274, 276, 277, 280, 283, 300, 291, 297, - 299, -491, 2070, -491, -491, 301, 305, 307, 310, 309, - 325, 2070, 2070, -491, 1247, 819, 556, 556, 1483, 1483, - 216, 216, -491, 2564, 2132, 2874, 2904, 1483, 1483, 406, - 406, -6, -6, -6, -491, -491, -55, 2162, 197, -491, - 184, 197, 197, 197, 197, -13, 2070, 96, 281, -491, - -491, -491, -491, 3246, -491, 345, -491, 350, 351, 3350, - -491, 3136, 3313, 167, -491, -491, -491, 3, -491, 208, - 3313, 282, -491, -491, 328, -491, -491, 96, 1620, -491, - -491, 224, -51, -85, -491, -491, -491, -491, -491, -491, - 335, -491, -491, -491, 337, -491, -491, -491, 341, -491, - -491, -6, 2712, 2070, -491, -491, 197, 342, 346, 2712, - -491, 54, -491, 365, 3377, 168, 366, 367, -491, 470, - 96, -491, -491, -491, -491, 96, 2325, 96, 364, 372, - -491, 207, -491, -491, -491, -491, 224, 1330, 370, 224, - 1330, 224, 282, -491, -491, 371, 282, 282, 282, 282, - 237, -491, 3404, -491, 356, -491, 89, -491, 368, 1710, - 2631, 378, 224, 224, 2324, 224, 224, 224, -491, 204, - -491, 3246, 2070, -491, 2070, 2712, 1330, -491, -491, 2070, - -491, 1199, 1348, 1448, 286, -491, -491, 168, -53, 393, - 3431, 391, 207, 392, 420, 3136, -491, -491, 398, 207, - 207, 207, 207, 207, 139, -491, 224, -491, 204, -491, - -491, -491, 207, -491, 3313, 403, -491, 3257, 395, 405, - -491, 2070, 2070, 2070, 1230, 2070, 396, -2, -491, 207, - 2745, -491, 208, -491, 224, 295, 407, -491, 204, 264, - 282, 399, 399, 399, 399, -491, 2070, -491, 1330, -491, - 1102, -491, -491, 96, 2070, 1710, 408, 425, 2712, -491, - -491, 224, 267, 267, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - 411, 409, -491, -491, 267, 267, 344, 343, 1620, -491, - 2070, 427, -491, -491, 365, -44, -32, 413, 2678, 96, - 123, 96, -491, -491, 123, -491, 123, -491, 123, 123, - 123, 3458, -491, 533, 433, 96, -491, 3145, 139, 3145, - 2541, -491, -491, -491, -491, 207, 418, 418, 418, 418, - 144, 651, 2070, -491, -491, -491, 204, 437, -491, 169, - 207, 3145, 421, 3145, 3145, -6, -6, -6, 426, 128, - -6, 496, -491, 1430, 169, 2070, 2070, 2070, 2070, 2070, - 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, 2070, - 2070, 2070, 2070, 2070, 2070, 2070, 1800, 2070, 389, 550, - 431, 496, 450, -491, -491, 399, 1330, 432, 439, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, -491, -491, 436, -491, 440, 453, - -491, 1890, 267, -491, -491, -491, -491, 2631, 1330, 452, - 224, -491, -491, 496, -491, -491, -491, -491, -491, -491, - -491, -491, -491, -491, 456, -491, 459, -491, -491, -491, - 418, 463, 478, 472, 484, 651, 651, 651, 651, 1230, - 651, 2859, -491, 473, 498, -491, 224, 2070, -491, 169, - 487, 2070, 480, 492, 2070, -491, -491, -10, -491, -491, - -491, -491, 1247, 819, 556, 556, 1483, 1483, 216, 216, - -491, 2695, 2132, 2874, 2904, 1483, 1483, 406, 406, -6, - -6, -6, -491, -491, 134, 2187, 489, -491, -10, 224, - 1330, 485, -491, 496, 974, -491, -491, -491, 1710, 2712, - 509, -491, -491, -10, 529, 530, 1330, 3145, 3145, 3145, - 138, 138, 138, 138, 515, 145, 138, 651, 651, 651, - 651, 651, 651, 651, 651, 651, 651, 651, 651, 651, - 651, 651, 651, 651, 651, 651, 1980, 2070, -491, 224, - -491, 2712, -491, 518, 519, -491, 522, -6, -491, 524, - 2070, -491, -491, -491, 1330, -491, 525, 496, -10, -491, - 523, 496, -491, -491, 526, 541, 535, 549, 651, -491, - 1447, 2889, 780, 780, 1522, 1522, 387, 387, -491, 2826, - 2938, 3016, 3050, 543, 543, 138, 138, 138, -491, -491, - 146, 2206, -491, 2070, -491, 2070, 7, 2712, 1330, 544, - 496, -10, -491, -10, 496, 554, -491, 558, 138, 651, - -491, -491, 174, 179, -491, 557, 559, 496, -10, -10, - 2070, 2070, 2859, -491, -491, -491, 496, -10, 180, 218, - -10, -491, -491 + 367, -570, 2114, 3257, 18, 3147, -570, -570, -570, -570, + -570, -570, -95, -89, -84, -68, -55, -17, -4, -570, + -2, 8, 40, 3369, 59, 105, 109, 41, -570, 135, + 138, 2114, 2114, 2114, 2114, 1274, 2114, 2756, -570, 182, + -570, -570, -570, -570, -570, -570, 3425, -570, -570, -570, + -570, 1725, -570, 1245, 1245, -570, 159, -570, 1245, -570, + -570, 449, -570, -570, -570, -570, 166, 24, 42, -570, + -570, -570, -570, -570, -570, -570, 171, -570, 168, 178, + 47, 181, 200, 203, 199, -570, 45, -570, -570, -570, + -570, 2451, -570, -570, -570, -570, -570, -570, 2114, 2114, + 2114, 2114, 2114, 2114, 3257, 2114, 2114, 2114, -570, 159, + 211, 159, 159, -570, 2114, 2114, 3257, 3257, 2114, 2114, + 6, 6, 6, 6, -95, -89, -84, -68, -55, -17, + -2, 8, 2085, 2378, 3067, 3246, 138, 157, -64, 2756, + 6, 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, + 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, + 2114, 2114, 1574, 2114, -570, 449, -570, -570, 1815, -570, + 1245, -570, -570, -570, -570, -570, -570, 221, 449, 449, + 449, 449, 449, 449, 216, -570, -570, 3075, 234, -570, + -12, -570, 3597, 341, 159, -570, 243, -570, -570, -570, + 2518, -570, 247, 2585, -570, 159, -570, 239, 244, -570, + 3425, -570, 364, -570, -570, -570, 3313, -570, -570, 159, + -570, -570, -570, 159, 346, 264, -570, -570, -570, 24, + 42, -570, 248, 269, -570, 254, 267, 270, 274, 275, + 288, 279, 286, 291, -570, 2114, -570, -570, 293, 295, + 296, 311, 302, 306, 2114, 2114, -570, 1291, 2176, 792, + 792, 1527, 1527, 644, 644, -570, 2608, 2918, 2933, 2982, + 1527, 1527, 154, 154, 6, 6, 6, -570, -570, -50, + 2206, 216, -570, 449, 216, 216, 216, 216, 216, 116, + 2114, 159, 256, -570, -570, -570, -570, 3075, -570, 326, + -570, 330, 332, 3462, -570, 3201, 3425, 346, -570, -570, + -570, -9, -570, 182, 3425, 623, -570, -570, 317, -570, + -570, 159, 1664, -570, -570, 416, -7, -12, -570, -570, + -570, -570, -570, -570, 318, -570, -570, -570, 335, -570, + -570, -570, 343, -570, -570, 6, 2756, 2114, -570, -570, + 216, 349, 347, 2756, -570, 17, -570, 373, 3489, 0, + 374, 377, -570, 480, 159, -570, -570, -570, -570, 159, + 2369, 159, 382, 383, -570, 456, -570, -570, -570, -570, + 416, 1374, 370, 416, 1374, 416, 623, -570, -570, 381, + 623, 623, 623, 623, 623, 125, -570, 3516, -570, 378, + -570, 180, -570, 384, 1754, 2675, 388, 416, 416, 2368, + 416, 416, 416, 416, -570, 122, -570, 3075, 2114, -570, + 2114, 2756, 1374, -570, -570, 2114, -570, 257, 259, 506, + -33, -570, -570, 0, -23, 403, 3543, 402, 456, 407, + 429, 3201, -570, -570, 401, 456, 456, 456, 456, 456, + 456, -29, -570, 416, -570, 122, -570, -570, -570, 456, + -570, 3425, 408, -570, 3369, 398, 412, -570, 2114, 2114, + 2114, 1274, 2114, 405, 16, -570, 456, 2789, -570, 182, + -570, 416, 235, 410, -570, 122, 174, 623, 404, 404, + 404, 404, 404, -570, 2114, -570, 1374, -570, 1146, -570, + -570, 159, 2114, 1754, 406, 427, 2756, -570, -570, 416, + 213, 213, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, 411, 409, + -570, -570, 213, 213, 213, 261, 188, 1664, -570, 2114, + 432, -570, -570, 373, -22, 21, 415, 2722, 159, 470, + 159, -570, -570, 470, -570, 470, -570, 470, 470, 470, + 3570, -570, 535, 435, 159, -570, 3257, -29, 3257, -570, + -570, -570, -570, 456, 420, 420, 420, 420, 420, 179, + 705, 2114, -570, -570, -570, 122, 441, -570, -24, 456, + 3257, 430, 3257, 3257, 6, 6, 6, 425, 32, 6, + 503, -570, 1474, -24, 2114, 2114, 2114, 2114, 2114, 2114, + 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, 2114, + 2114, 2114, 2114, 2114, 2114, 1844, 2114, 285, 557, 438, + 503, 459, -570, -570, 404, 1374, 440, 445, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, -570, -570, 447, -570, 446, 452, -570, + 1934, 213, -570, -570, -570, -570, 2675, 1374, 453, 416, + -570, -570, 503, -570, -570, -570, -570, -570, -570, -570, + -570, -570, -570, 450, -570, 457, -570, -570, -570, 420, + 443, 469, 463, 482, 705, 705, 705, 705, 1274, 705, + 2903, -570, 466, 491, -570, 416, 2114, -570, -24, 486, + 2114, 479, 492, 2114, -570, -570, 79, -570, -570, -570, + -570, 1291, 2176, 792, 792, 1527, 1527, 644, 644, -570, + 2739, 2918, 2933, 2982, 1527, 1527, 154, 154, 6, 6, + 6, -570, -570, 35, 2231, 485, -570, 79, 416, 1374, + 493, -570, 503, 1018, -570, -570, -570, 1754, 2756, 494, + -570, -570, 79, 504, 515, 1374, 3257, 3257, 3257, 49, + 49, 49, 49, 499, 63, 49, 705, 705, 705, 705, + 705, 705, 705, 705, 705, 705, 705, 705, 705, 705, + 705, 705, 705, 705, 705, 2024, 2114, -570, 416, -570, + 2756, -570, 487, 500, -570, 509, 6, -570, 510, 2114, + -570, -570, -570, 1374, -570, 501, 503, 79, -570, 508, + 503, -570, -570, 502, 522, 513, 526, 705, -570, 1491, + 2948, 3114, 3114, 1566, 1566, 830, 830, -570, 2870, 3060, + 3076, 877, 594, 594, 49, 49, 49, -570, -570, 68, + 2250, -570, 2114, -570, 2114, 14, 2756, 1374, 518, 503, + 79, -570, 79, 503, 525, -570, 527, 49, 705, -570, + -570, 117, 118, -570, 524, 529, 503, 79, 79, 2114, + 2114, 2903, -570, -570, -570, 503, 79, 144, 156, 79, + -570, -570 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -491, -491, -102, -491, 194, -491, -491, 469, -491, -491, - -79, 251, -491, -491, -491, -82, -159, -491, -491, -491, - -117, -208, 494, -491, -491, -491, -491, -491, -491, -491, - -316, -491, -491, 258, -491, -491, -491, 260, 330, -306, - -491, -362, -491, 119, -413, -279, -490, -491, 85, -160, - -354, -71, -5, 499, 243, -14, -88, -491, -84, -491, - -491, -491, 275, -83, -491, -284, -491, -491, -11, -9, - -491, -491, -491, -12, 71, -491, -491, 209, -491, -29, - -491, -459, -57, -34, -4, 0, -62, -491, -491, -394, - 157, -157, -1 + -570, -570, -179, -570, 152, -570, -570, 465, -570, -570, + -58, -74, -570, -570, -570, -119, -197, -570, -570, -570, + -153, -245, 464, -570, -570, -570, -570, -570, -570, -570, + -554, -570, -570, 232, -570, -570, -570, 236, 305, -346, + -570, -370, -570, 89, -384, -262, -500, -570, 56, -318, + -332, 76, -44, 476, 238, 5, -53, -570, -48, -570, + -570, -570, 272, -42, -570, -278, -570, -570, 19, 69, + -570, -570, -570, 46, 536, -570, -570, 207, -570, -19, + -570, -465, -94, -20, -51, 57, -569, -570, -570, -283, + 436, -195, -1 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -250 +#define YYTABLE_NINF -255 static const yytype_int16 yytable[] = { - 6, 138, 37, 223, 97, 759, 200, 224, 225, 353, - 612, 113, 111, 378, 112, 173, 174, 73, 476, 173, - 174, 137, -232, 149, 375, -232, 98, 647, 565, 567, - 99, 120, 121, 122, 123, 597, 140, 173, 174, 173, - 174, 165, 232, 233, 234, 235, 236, 252, 238, 239, - 240, 100, 309, 252, 557, 573, -249, 245, 246, 411, - 184, 249, 250, 190, 252, 642, 253, 908, 173, 174, - 448, 101, 344, 475, 574, 478, 252, 102, 578, 228, - 226, 909, 227, 771, 97, 586, 587, 588, 589, 590, - 237, 769, 299, 104, 278, 772, 502, 503, 599, 544, - 545, 546, 247, 248, 173, 174, 613, 281, 282, 283, - 284, 285, 223, 286, 347, 614, 224, 225, 161, 162, - 163, 186, 169, 379, 171, 172, 648, 554, 276, 176, - 552, 173, 174, 803, 974, 202, 188, 103, 194, 105, - 596, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 418, 277, 184, 419, 776, 885, 638, 598, - 778, 106, 779, 45, 780, 781, 782, 184, 184, 184, - 184, 184, 107, 804, 289, 334, 808, 114, 228, 226, - 97, 227, 354, 6, 177, 762, 492, 493, 178, 643, - 115, 821, 308, 169, 171, 172, 176, 116, 311, 346, - 117, 392, 55, 175, 164, 436, 437, 438, 559, 57, - 472, 439, 479, 472, 187, 189, 481, 482, 483, 484, - 118, 790, 173, 174, 401, 179, 252, 195, 402, 169, - 119, 169, 252, 203, 185, 149, 809, 421, 422, 423, - 591, 341, 342, 252, 252, 815, 192, 292, 440, 472, - 430, 911, 895, 896, 897, 592, 241, 424, 243, 244, - 592, 791, 929, 970, 315, 403, 316, 317, 318, 184, - 807, 193, 252, 196, 851, 350, 349, 252, 252, 372, - 383, 384, 385, 6, 358, 592, 386, 374, 97, 180, - 373, 983, 404, 197, 181, 382, 984, 991, 198, 182, - 391, 315, 6, 316, 547, 548, 242, 805, 400, 251, - 645, 280, 441, 286, 571, 848, 252, 442, 297, 549, - 550, 472, 443, 387, 156, 157, 158, 159, 160, 405, - 161, 162, 163, 415, 406, 992, 293, 766, 300, 407, - 298, 173, 174, 97, 372, 580, 1, 2, 3, 305, - 301, 6, 485, 486, 292, 568, 569, 570, 920, 10, - 445, 306, 469, 312, 307, 469, 473, 314, 555, 473, - 556, 391, 320, 322, 323, 391, 391, 391, 391, 644, - 486, 97, 549, 550, 491, 324, 902, 388, 499, 498, - 252, 325, 389, 326, 327, 639, 860, 328, 553, 352, - 329, 469, 561, 561, 561, 473, 885, 330, 331, 558, - 549, 550, 640, 372, 332, 6, 333, 338, 335, 97, - 609, 445, 336, 97, 337, 149, 339, 758, 445, 445, - 445, 445, 445, 594, 351, 113, 111, 553, 112, 600, - 608, 445, 340, 393, 639, 355, 472, 863, 359, 360, - 412, 605, 606, 607, 413, 610, 414, 416, 445, 549, - 550, 765, -248, 426, 398, 427, 417, 553, 428, 391, - 435, 434, 292, 469, 489, 350, 349, 473, 916, 472, - 474, 480, 223, 494, 499, 498, 224, 225, 501, 639, - 448, 575, 577, 579, 924, 890, 891, 892, 893, 894, - 84, 895, 896, 897, 549, 550, 846, 429, 585, 601, - 603, 604, 431, 611, 433, 486, 158, 159, 160, 802, - 161, 162, 163, 761, 641, 770, 760, 918, 763, 764, - 773, 784, 785, 478, 592, 806, 811, 816, 767, 350, - 349, 561, 959, 814, 766, 561, 847, 561, 849, 561, - 561, 561, 852, 787, 855, 789, 853, 856, 228, 226, - 97, 227, 885, 145, 146, 147, 148, 594, 563, 563, - 563, 857, 861, 864, 445, 149, 865, 810, 866, 812, - 813, 350, 349, 596, 867, 553, 976, 868, 553, 445, - 869, 961, 844, 898, 903, 963, 899, 905, 469, 906, - 818, 472, 917, 553, 913, 822, 823, 824, 825, 826, - 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, - 837, 838, 839, 840, 841, 842, 921, 845, 922, 923, - 818, 469, 928, 953, 978, 473, 954, 955, 979, 956, - 398, 962, 960, 964, 7, 8, 9, 10, 965, 11, - 296, 987, 966, 892, 893, 894, 967, 895, 896, 897, - 990, 977, 154, 155, 156, 157, 158, 159, 160, 980, - 161, 162, 163, 981, 985, 581, 986, 757, 862, 900, - 915, 952, 583, 472, 303, 584, 432, 788, 820, 304, - 602, 756, 572, 854, 398, 792, 0, 0, 0, 472, - 0, 0, 0, 19, 0, 0, 775, 563, 777, 0, - 0, 563, 0, 563, 0, 563, 563, 563, 0, 0, - 0, 491, 786, 802, 802, 802, 802, 793, 802, 794, - 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 904, 0, 0, 472, 0, 0, - 0, 859, 0, 469, 0, 875, 795, 473, 0, 0, - 796, 797, 818, 0, 798, 0, 799, 0, 0, 0, - 800, 0, 0, 0, 0, 874, 0, 0, 0, 0, - 0, 870, 871, 872, 873, 0, 876, 881, 882, 883, - 884, 472, 0, 0, 0, 0, 0, 901, 553, 885, - 0, 0, 0, 0, 907, 802, 802, 802, 802, 802, - 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, - 802, 802, 802, 802, 143, 144, 145, 146, 147, 148, - 0, 0, 0, 0, 0, 469, 0, 0, 149, 473, - 0, 0, 818, 925, 926, 927, 0, 499, 498, 0, - 0, 469, 950, 0, 0, 473, 802, 0, 0, 0, - 0, 0, 0, 930, 931, 932, 933, 934, 935, 936, - 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, - 947, 948, 0, 0, 0, 0, 0, 951, 890, 891, - 892, 893, 894, 0, 895, 896, 897, 802, 0, 469, - 957, 0, 0, 473, 0, 0, 818, 0, 0, 972, - 818, 973, 0, 0, 968, 0, 0, 0, 0, 0, - 0, 0, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 0, 161, 162, 163, 988, 989, 0, 0, - 0, 0, 0, 469, 0, 0, 0, 473, 0, 818, - 0, 0, 0, 818, 0, 982, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 818, 649, 650, 651, - 652, 653, 654, 655, 656, 818, 657, 658, 659, 660, - 661, 662, 663, 664, 665, 666, 667, 0, 0, 0, - 0, 0, 0, 668, 669, 670, 671, 672, 673, 674, - 675, 676, 677, 678, 679, 680, 681, 0, 0, 682, - 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, - 0, 693, 0, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 0, 0, 0, 706, 0, - 707, 0, 708, 709, 710, 711, 712, 713, 714, 715, - 716, 717, 718, 719, 0, 720, 721, 722, 723, 724, - 725, 726, 0, 727, 728, 729, 730, 731, 0, 0, - 0, 732, 733, 734, 735, 736, 737, 738, 739, 740, - 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, - 751, 752, 919, 753, 754, 649, 650, 651, 652, 653, - 654, 655, 656, 975, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 0, 0, 0, 0, 0, - 0, 668, 669, 670, 671, 672, 673, 674, 675, 676, - 677, 678, 679, 680, 681, 0, 0, 682, 683, 684, - 685, 686, 687, 688, 689, 690, 691, 692, 0, 693, - 0, 694, 695, 696, 697, 698, 699, 700, 701, 702, - 703, 704, 705, 0, 0, 0, 706, 0, 707, 0, - 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, - 718, 719, 0, 720, 721, 722, 723, 724, 725, 726, - 0, 727, 728, 729, 730, 731, 0, 173, 174, 732, - 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, - 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, - 0, 753, 754, 7, 8, 9, 10, 0, 11, 124, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 142, 143, 144, 145, 146, 147, 148, 0, 0, - 0, 0, 0, 0, 0, 125, 149, 126, 127, 128, - 45, 46, 0, 129, 18, 0, 0, 48, 55, 0, - 0, 0, 19, 130, 559, 57, 0, 0, 560, 131, - 132, 52, 0, 0, 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 133, 134, 26, 0, 27, 55, - 0, 0, 28, 0, 0, 56, 57, 135, 0, 0, - 59, 0, 136, 449, 450, 451, 10, 0, 452, 40, - 0, 0, 453, 0, 0, 31, 0, 0, 0, 32, - 33, 0, 0, 34, 0, 35, 173, 174, 0, 36, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 0, 161, 162, 163, 0, 41, 0, 42, 43, 44, - 45, 454, 0, 47, 455, 0, 0, 48, 0, 0, - 0, 0, 456, 49, 0, 0, 0, 0, 45, 50, - 51, 52, 0, 0, 0, 0, 457, 0, 0, 0, - 0, 0, 0, 0, 53, 54, 458, 0, 459, 55, - 0, 0, 460, 0, 0, 56, 57, 58, 0, 0, - 59, 0, 60, 449, 450, 451, 10, 55, 452, 40, - 0, 0, 819, 559, 57, 461, 0, 564, 0, 462, - 0, 0, 0, 463, 0, 464, 173, 174, 0, 465, - 0, 878, 879, 880, 881, 882, 883, 884, 0, 0, - 0, 0, 0, 0, 0, 41, 885, 42, 43, 44, - 45, 454, 0, 47, 455, 0, 0, 48, 0, 0, - 0, 0, 456, 49, 0, 0, 0, 0, 45, 50, - 51, 52, 147, 148, 0, 0, 457, 0, 0, 0, - 0, 0, 149, 0, 53, 54, 458, 0, 459, 55, - 0, 0, 460, 0, 0, 56, 57, 58, 0, 0, - 59, 0, 60, 7, 8, 9, 10, 55, 11, 12, - 0, 883, 884, 559, 57, 461, 0, 566, 0, 462, - 0, 885, 0, 463, 0, 464, 0, 0, 0, 465, - 887, 888, 889, 0, 0, 890, 891, 892, 893, 894, - 0, 895, 896, 897, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 0, 0, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 0, 21, - 22, 156, 157, 158, 159, 160, 23, 161, 162, 163, - 0, 0, 0, 0, 24, 25, 26, 0, 27, 0, - 0, 0, 28, 7, 8, 9, 10, 29, 11, 12, - 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, - 890, 891, 892, 893, 894, 31, 895, 896, 897, 32, - 33, 0, 0, 34, 0, 35, 0, 275, 0, 36, - 0, 0, 0, 0, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 0, 0, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 0, 21, - 22, 0, 0, 0, 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 24, 25, 26, 0, 27, 0, - 0, 0, 28, 7, 8, 9, 10, 29, 11, 12, - 0, 0, 30, 0, 0, 0, 41, 399, 42, 43, - 44, 0, 0, 0, 166, 31, 0, 0, 0, 32, - 33, 0, 0, 34, 167, 35, 0, 0, 0, 36, - 50, 168, 52, 0, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 53, 54, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 58, 21, - 22, 0, 0, 60, 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 24, 25, 26, 0, 27, 0, - 0, 0, 28, 7, 8, 9, 10, 29, 11, 12, - 0, 0, 30, 0, 0, 0, 41, 495, 42, 43, - 44, 0, 0, 0, 0, 31, 0, 0, 0, 32, - 33, 0, 0, 34, 279, 35, 0, 0, 0, 36, - 50, 170, 52, 0, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 53, 54, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 58, 21, - 22, 0, 0, 60, 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 24, 25, 26, 0, 27, 0, - 0, 0, 28, 7, 8, 9, 10, 29, 11, 12, - 0, 0, 30, 0, 0, 0, 41, 0, 42, 43, - 44, 0, 0, 0, 0, 31, 0, 0, 0, 32, - 33, 0, 0, 34, 0, 35, 0, 843, 0, 36, - 50, 170, 52, 0, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 53, 54, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 58, 21, - 22, 0, 0, 60, 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 24, 25, 26, 0, 27, 0, - 0, 0, 28, 7, 8, 9, 10, 29, 11, 12, - 0, 0, 30, 0, 0, 0, 0, 858, 0, 0, - 0, 0, 0, 0, 0, 31, 0, 0, 0, 32, - 33, 0, 0, 34, 0, 35, 0, 0, 0, 36, - 0, 0, 0, 0, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 0, 0, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 0, 21, - 22, 0, 0, 0, 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 24, 25, 26, 0, 27, 0, - 0, 0, 28, 7, 8, 9, 10, 29, 11, 12, - 0, 0, 30, 0, 0, 0, 41, 0, 42, 43, - 44, 0, 0, 0, 166, 31, 0, 0, 0, 32, - 33, 0, 0, 34, 167, 35, 0, 949, 0, 36, - 50, 168, 52, 0, 0, 13, 0, 14, 15, 16, - 0, 0, 0, 17, 18, 53, 54, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 58, 21, - 22, 0, 0, 60, 0, 0, 23, 143, 144, 145, - 146, 147, 148, 0, 24, 25, 26, 0, 27, 0, - 0, 149, 28, 0, 0, 0, 107, 29, 0, 0, - 0, 0, 30, 0, 0, 141, 142, 143, 144, 145, - 146, 147, 148, 0, 0, 31, 0, 0, 0, 32, - 33, 149, 0, 34, 0, 35, 0, 0, 0, 36, - 141, 142, 143, 144, 145, 146, 147, 148, 0, 0, - 0, 0, 0, 0, 0, 0, 149, 0, 0, 141, - 142, 143, 144, 145, 146, 147, 148, 0, 0, 0, - 0, 0, 0, 0, 0, 149, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 152, 153, 154, 155, + 6, 382, 165, 768, 97, 235, 236, 237, 238, 239, + 201, 241, 242, 243, 483, 138, 303, 313, 73, 357, + 248, 249, 173, 174, 252, 253, 200, 203, 621, 656, + 98, 811, 173, 174, 455, 149, 99, 482, 226, 485, + 137, 100, 111, 227, 255, 379, 577, 578, 579, 228, + 173, 174, 566, 173, 174, 173, 174, 101, 255, 37, + 185, 510, 511, 256, 552, 553, 554, 555, 486, 113, + 102, 606, 488, 489, 490, 491, 492, 348, 894, 427, + 428, 429, 600, 97, 97, 582, 255, 816, 120, 121, + 122, 123, 112, 140, 778, -237, 857, 601, -237, 430, + -254, 651, 601, 417, 583, 780, 587, 605, 103, 240, + 229, 383, 104, 594, 595, 596, 597, 598, 599, 358, + 205, 250, 251, 105, 622, 424, 657, 608, 425, 255, + 161, 162, 163, 106, 187, 647, 812, 231, 397, 563, + 255, 983, 279, 255, 623, 574, 576, 226, 781, 189, + 226, 338, 227, 561, 195, 227, 917, 117, 228, 824, + 230, 228, 920, 771, 185, 107, 312, 173, 174, 654, + 918, 255, 315, 904, 905, 906, 255, 185, 185, 185, + 185, 185, 185, 149, 114, 293, 479, 436, 164, 479, + 938, 97, 775, 607, 6, 979, 173, 174, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 229, + 280, 813, 229, 652, 817, 255, 255, 479, 872, 319, + 115, 320, 556, 557, 116, 811, 811, 811, 811, 830, + 811, 281, 290, 351, 992, 993, 231, 558, 559, 231, + 493, 494, 255, 580, 284, 285, 286, 287, 288, 289, + 118, 799, 378, 119, 255, 173, 174, 173, 174, 230, + 386, 1000, 230, 186, 158, 159, 160, 818, 161, 162, + 163, 191, 185, 1001, 254, 860, 785, 500, 501, 354, + 787, 197, 788, 193, 789, 790, 791, 6, 362, 653, + 494, 479, 97, 194, 377, 601, 800, 45, 927, 45, + 198, 345, 346, 199, 396, -124, 6, 811, 811, 811, + 811, 811, 811, 811, 811, 811, 811, 811, 811, 811, + 811, 811, 811, 811, 811, 811, 245, 476, 558, 559, + 476, 283, 290, 814, 297, 648, 55, 353, 55, 301, + 304, 376, 568, 57, 568, 57, 569, 97, 573, 350, + 558, 559, 649, 305, 310, 6, 589, 929, 811, 311, + 10, 648, 970, 324, 452, 328, 972, 255, 476, 405, + 480, 329, 200, 480, 356, 396, 558, 559, 774, 396, + 396, 396, 396, 396, 330, 648, 97, 331, 564, 499, + 565, 332, 333, 507, 421, 334, 335, 869, 767, 811, + 558, 559, 855, 336, 562, 987, 376, 609, 337, 988, + 339, 480, 340, 341, 173, 174, 406, 479, 342, 343, + 407, 6, 996, 344, 911, 97, 359, 452, 363, 97, + 364, 999, 398, 418, 452, 452, 452, 452, 452, 452, + 603, 618, 476, 319, 562, 320, 321, 322, 452, 177, + 479, 506, 419, 178, 442, 443, 444, 408, 420, 455, + 445, 1, 2, 3, 422, 452, 617, 423, 173, 174, + -253, 432, 567, 111, 562, 433, 396, 376, 434, 925, + 481, 441, 175, 354, 409, 480, 570, 570, 570, 440, + 179, 487, 507, 188, 190, 933, 497, 446, 509, 502, + 113, 584, 485, 586, 173, 174, 196, 410, 588, 84, + 45, 593, 206, 612, 610, 614, 615, 616, 613, 619, + 494, 411, 620, 112, 769, 770, 412, 650, 772, 773, + 779, 413, 782, 793, 794, 244, 601, 246, 247, 815, + 180, 353, 823, 968, 825, 820, 45, 447, 354, 55, + 506, 775, 605, 856, 181, 568, 57, 858, 875, 182, + 861, 448, 862, 865, 183, 864, 449, 873, 476, 97, + 866, 450, 479, 870, 874, 876, 603, 169, 877, 171, + 172, 796, 452, 798, 176, 55, 907, 985, 878, 908, + 354, 568, 57, 912, 562, 575, 914, 562, 452, 915, + 922, 476, 962, 931, 776, 819, 353, 821, 822, 827, + 926, 930, 562, 894, 932, 853, 937, 963, 969, 973, + 302, 387, 388, 389, 964, 965, 971, 390, 570, 974, + 975, 309, 570, 976, 570, 986, 570, 570, 570, 827, + 989, 994, 990, 766, 480, 316, 995, 300, 353, 318, + 871, 924, 909, 961, 479, 326, 327, 307, 169, 171, + 172, 176, 591, 149, 391, 438, 797, 592, 829, 308, + 479, 831, 832, 833, 834, 835, 836, 837, 838, 839, + 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, + 850, 851, 611, 854, 169, 581, 169, 765, 7, 8, + 9, 10, 0, 11, 901, 902, 903, 0, 904, 905, + 906, 0, 863, 296, 392, 0, 913, 355, 479, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 393, 0, + 499, 0, 0, 394, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 879, 880, 881, 882, 403, 885, 801, + 0, 0, 156, 157, 158, 159, 160, 19, 161, 162, + 163, 0, 479, 0, 0, 0, 480, 0, 0, 0, + 0, 827, 0, 0, 0, 0, 0, 0, 884, 0, + 0, 802, 0, 803, 0, 0, 0, 28, 0, 0, + 435, 0, 0, 0, 0, 437, 0, 439, 0, 145, + 146, 147, 148, 883, 0, 476, 0, 562, 0, 0, + 804, 149, 0, 0, 805, 806, 0, 868, 807, 0, + 808, 476, 0, 296, 809, 939, 940, 941, 942, 943, + 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, + 954, 955, 956, 957, 0, 0, 0, 0, 480, 894, + 0, 827, 0, 572, 572, 572, 507, 0, 0, 0, + 0, 0, 0, 910, 480, 0, 0, 0, 0, 476, + 916, 934, 935, 936, 0, 959, 977, 0, 0, 0, + 0, 0, 888, 889, 890, 891, 892, 893, 0, 0, + 0, 0, 0, 0, 0, 0, 894, 0, 154, 155, 156, 157, 158, 159, 160, 0, 161, 162, 163, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 0, 161, 162, 163, 0, - 0, 0, 345, 0, 0, 0, 0, 0, 0, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 0, 161, 162, 163, 0, 0, 0, 912, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 0, - 161, 162, 163, 363, 364, 0, 971, 504, 505, 506, - 507, 508, 509, 510, 511, 0, 0, 0, 0, 0, - 0, 0, 0, 512, 0, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 524, 0, 0, 0, - 41, 0, 42, 43, 44, 0, 525, 0, 47, 41, - 0, 42, 43, 44, 0, 0, 0, 0, 49, 0, - 0, 0, 0, 0, 50, 51, 52, 0, 0, 0, - 526, 0, 0, 50, 170, 52, 0, 0, 0, 53, - 54, 0, 0, 0, 0, 204, 205, 0, 53, 54, - 0, 0, 58, 0, 0, 59, 0, 60, 0, 0, - 0, 58, 527, 0, 0, 528, 60, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 0, 540, - 541, 206, 41, 542, 42, 43, 44, 45, 207, 114, - 47, 0, 0, 0, 48, 208, 209, 210, 0, 0, - 49, 0, 0, 0, 0, 211, 50, 51, 52, 0, - 0, 212, 204, 205, 0, 213, 0, 0, 0, 214, - 0, 53, 54, 0, 215, 0, 55, 0, 0, 0, - 0, 0, 216, 57, 58, 0, 217, 59, 218, 60, - 0, 0, 0, 0, 219, 0, 0, 0, 206, 41, - 0, 42, 43, 44, 45, 302, 0, 47, 0, 0, - 220, 48, 208, 209, 210, 0, 0, 49, 0, 0, - 0, 0, 211, 50, 51, 52, 0, 0, 212, 204, - 205, 0, 213, 0, 0, 0, 214, 0, 53, 54, - 0, 215, 0, 55, 0, 0, 0, 0, 0, 216, - 57, 58, 0, 217, 59, 218, 60, 141, 142, 143, - 144, 145, 146, 147, 148, 206, 41, 0, 42, 43, - 44, 45, 207, 149, 47, 0, 0, 220, 48, 208, - 209, 210, 0, 0, 49, 0, 0, 0, 0, 211, - 50, 51, 52, 0, 0, 212, 0, 0, 0, 213, - 0, 0, 0, 214, 0, 53, 54, 0, 215, 0, - 55, 0, 0, 0, 0, 0, 216, 57, 58, 0, - 217, 59, 218, 60, 141, 142, 143, 144, 145, 146, + 0, 0, 480, 476, 506, 827, 0, 991, 0, 827, + 0, 0, 0, 0, 0, 0, 0, 403, 0, 0, + 0, 0, 981, 0, 982, 0, 0, 0, 899, 900, + 901, 902, 903, 296, 904, 905, 906, 0, 0, 0, + 0, 0, 0, 960, 0, 0, 480, 0, 827, 997, + 998, 0, 827, 0, 0, 0, 966, 0, 0, 0, + 0, 0, 0, 0, 0, 827, 0, 0, 0, 0, + 0, 0, 403, 0, 827, 899, 900, 901, 902, 903, + 0, 904, 905, 906, 784, 572, 786, 0, 0, 572, + 0, 572, 0, 572, 572, 572, 0, 0, 0, 0, + 795, 658, 659, 660, 661, 662, 663, 664, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 676, 0, 0, 0, 0, 0, 0, 677, 678, 679, + 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, + 690, 0, 0, 691, 692, 693, 694, 695, 696, 697, + 698, 699, 700, 701, 0, 702, 0, 703, 704, 705, + 706, 707, 708, 709, 710, 711, 712, 713, 714, 0, + 0, 0, 715, 0, 716, 0, 717, 718, 719, 720, + 721, 722, 723, 724, 725, 726, 727, 728, 0, 729, + 730, 731, 732, 733, 734, 735, 0, 736, 737, 738, + 739, 740, 0, 0, 0, 741, 742, 743, 744, 745, + 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, + 756, 757, 758, 759, 760, 761, 928, 762, 763, 658, + 659, 660, 661, 662, 663, 664, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 676, 0, + 0, 0, 0, 0, 0, 677, 678, 679, 680, 681, + 682, 683, 684, 685, 686, 687, 688, 689, 690, 0, + 0, 691, 692, 693, 694, 695, 696, 697, 698, 699, + 700, 701, 0, 702, 0, 703, 704, 705, 706, 707, + 708, 709, 710, 711, 712, 713, 714, 0, 0, 0, + 715, 0, 716, 0, 717, 718, 719, 720, 721, 722, + 723, 724, 725, 726, 727, 728, 0, 729, 730, 731, + 732, 733, 734, 735, 0, 736, 737, 738, 739, 740, + 0, 0, 0, 741, 742, 743, 744, 745, 746, 747, + 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, + 758, 759, 760, 761, 0, 762, 763, 7, 8, 9, + 10, 0, 11, 124, 0, 0, 0, 0, 0, 0, + 41, 0, 42, 43, 44, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 142, 143, 144, 145, 146, + 147, 148, 0, 0, 50, 170, 52, 0, 0, 125, + 149, 126, 127, 128, 45, 46, 0, 129, 18, 53, + 54, 48, 0, 0, 0, 0, 19, 130, 0, 0, + 0, 0, 58, 131, 132, 52, 0, 60, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 133, 134, + 26, 0, 27, 55, 0, 0, 28, 0, 0, 56, + 57, 135, 0, 0, 59, 0, 136, 456, 457, 458, + 10, 0, 459, 40, 0, 0, 460, 0, 0, 31, + 0, 0, 0, 32, 33, 0, 0, 34, 0, 35, + 0, 984, 0, 36, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 0, 161, 162, 163, 0, 41, + 0, 42, 43, 44, 45, 461, 0, 47, 462, 0, + 0, 48, 0, 0, 0, 0, 463, 49, 0, 0, + 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, + 464, 0, 0, 0, 0, 0, 0, 0, 53, 54, + 465, 0, 466, 55, 0, 0, 467, 0, 0, 56, + 57, 58, 0, 0, 59, 0, 60, 456, 457, 458, + 10, 0, 459, 40, 0, 0, 828, 0, 0, 468, + 0, 0, 0, 469, 0, 0, 0, 470, 0, 471, + 0, 0, 0, 472, 0, 887, 888, 889, 890, 891, + 892, 893, 0, 0, 0, 0, 0, 0, 0, 41, + 894, 42, 43, 44, 45, 461, 0, 47, 462, 0, + 0, 48, 0, 0, 0, 0, 463, 49, 0, 0, + 0, 0, 0, 50, 51, 52, 147, 148, 0, 0, + 464, 0, 0, 0, 0, 0, 149, 0, 53, 54, + 465, 0, 466, 55, 0, 0, 467, 0, 0, 56, + 57, 58, 0, 0, 59, 0, 60, 7, 8, 9, + 10, 0, 11, 12, 0, 892, 893, 0, 0, 468, + 0, 0, 0, 469, 0, 894, 0, 470, 0, 471, + 0, 0, 0, 472, 896, 897, 898, 0, 0, 899, + 900, 901, 902, 903, 0, 904, 905, 906, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 0, + 0, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 0, 21, 22, 156, 157, 158, 159, 160, + 23, 161, 162, 163, 0, 0, 0, 0, 24, 25, + 26, 0, 27, 0, 0, 0, 28, 7, 8, 9, + 10, 29, 11, 12, 0, 0, 30, 0, 0, 0, + 0, 0, 0, 0, 899, 900, 901, 902, 903, 31, + 904, 905, 906, 32, 33, 0, 0, 34, 0, 35, + 0, 278, 0, 36, 0, 0, 0, 0, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 0, + 0, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 24, 25, + 26, 0, 27, 0, 0, 0, 28, 7, 8, 9, + 10, 29, 11, 12, 0, 0, 30, 0, 0, 0, + 41, 404, 42, 43, 44, 0, 0, 0, 166, 31, + 0, 0, 0, 32, 33, 0, 0, 34, 167, 35, + 0, 0, 0, 36, 50, 168, 52, 0, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 53, + 54, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 58, 21, 22, 0, 0, 60, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 24, 25, + 26, 0, 27, 0, 0, 0, 28, 7, 8, 9, + 10, 29, 11, 12, 0, 0, 30, 0, 0, 0, + 41, 503, 42, 43, 44, 0, 0, 0, 0, 31, + 0, 0, 0, 32, 33, 0, 0, 34, 282, 35, + 0, 0, 0, 36, 50, 170, 52, 0, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 53, + 54, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 58, 21, 22, 0, 0, 60, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 24, 25, + 26, 0, 27, 0, 0, 0, 28, 7, 8, 9, + 10, 29, 11, 12, 0, 0, 30, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, + 0, 0, 0, 32, 33, 0, 0, 34, 0, 35, + 0, 852, 0, 36, 0, 0, 0, 0, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 0, + 0, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 24, 25, + 26, 0, 27, 0, 0, 0, 28, 7, 8, 9, + 10, 29, 11, 12, 0, 0, 30, 0, 0, 0, + 0, 867, 0, 0, 0, 0, 0, 0, 0, 31, + 0, 0, 0, 32, 33, 0, 0, 34, 0, 35, + 0, 0, 0, 36, 0, 0, 0, 0, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 0, + 0, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 24, 25, + 26, 0, 27, 0, 0, 0, 28, 7, 8, 9, + 10, 29, 11, 12, 0, 0, 30, 0, 0, 0, + 41, 0, 42, 43, 44, 0, 0, 0, 166, 31, + 0, 0, 0, 32, 33, 0, 0, 34, 167, 35, + 0, 958, 0, 36, 50, 168, 52, 0, 0, 13, + 0, 14, 15, 16, 0, 0, 0, 17, 18, 53, + 54, 0, 0, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 58, 21, 22, 0, 0, 60, 0, 0, + 23, 143, 144, 145, 146, 147, 148, 0, 24, 25, + 26, 0, 27, 0, 0, 149, 28, 0, 0, 0, + 107, 29, 0, 0, 0, 0, 30, 0, 0, 141, + 142, 143, 144, 145, 146, 147, 148, 0, 0, 31, + 0, 0, 0, 32, 33, 149, 0, 34, 0, 35, + 0, 0, 0, 36, 141, 142, 143, 144, 145, 146, 147, 148, 0, 0, 0, 0, 0, 0, 0, 0, - 149, 0, 0, 0, 220, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 343, 0, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 0, 161, 162, - 163, 141, 142, 143, 144, 145, 146, 147, 148, 0, - 0, 0, 0, 0, 0, 0, 0, 149, 141, 142, + 149, 0, 0, 141, 142, 143, 144, 145, 146, 147, + 148, 0, 0, 0, 0, 0, 0, 0, 0, 149, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 0, + 161, 162, 163, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 0, + 161, 162, 163, 0, 0, 0, 349, 0, 0, 0, + 0, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 0, 161, 162, 163, 0, 0, + 0, 921, 150, 151, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 0, 161, 162, 163, 367, 368, 0, + 980, 512, 513, 514, 515, 516, 517, 518, 519, 0, + 0, 0, 0, 0, 0, 0, 0, 520, 0, 521, + 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 0, 0, 0, 41, 0, 42, 43, 44, 0, + 533, 0, 47, 41, 0, 42, 43, 44, 0, 0, + 0, 0, 49, 0, 0, 0, 0, 0, 50, 51, + 52, 0, 0, 0, 534, 0, 0, 50, 170, 52, + 0, 0, 0, 53, 54, 0, 0, 0, 0, 207, + 208, 0, 53, 54, 0, 0, 58, 0, 0, 59, + 0, 60, 0, 0, 0, 58, 535, 0, 0, 536, + 60, 537, 538, 539, 540, 541, 542, 543, 544, 545, + 546, 547, 0, 548, 549, 209, 41, 550, 42, 43, + 44, 45, 210, 114, 47, 0, 0, 0, 48, 211, + 212, 213, 0, 0, 49, 0, 0, 0, 0, 214, + 50, 51, 52, 0, 0, 215, 207, 208, 0, 216, + 0, 0, 0, 217, 0, 53, 54, 0, 218, 0, + 55, 0, 0, 0, 0, 0, 219, 57, 58, 0, + 220, 59, 221, 60, 0, 0, 0, 0, 222, 0, + 0, 0, 209, 41, 0, 42, 43, 44, 45, 210, + 0, 47, 0, 0, 223, 48, 211, 212, 213, 0, + 0, 49, 0, 0, 0, 0, 214, 50, 51, 52, + 0, 0, 215, 207, 208, 0, 216, 0, 0, 0, + 217, 0, 53, 54, 0, 218, 0, 55, 0, 0, + 0, 0, 0, 219, 57, 58, 0, 220, 59, 221, + 60, 141, 142, 143, 144, 145, 146, 147, 148, 209, + 41, 0, 42, 43, 44, 45, 306, 149, 47, 0, + 0, 223, 48, 211, 212, 213, 0, 0, 49, 0, + 0, 0, 0, 214, 50, 51, 52, 0, 0, 215, + 0, 0, 0, 216, 0, 0, 0, 217, 0, 53, + 54, 0, 218, 0, 55, 0, 0, 0, 0, 0, + 219, 57, 58, 0, 220, 59, 221, 60, 141, 142, 143, 144, 145, 146, 147, 148, 0, 0, 0, 0, - 0, 0, 0, 0, 149, 141, 142, 143, 144, 145, - 146, 147, 148, 0, 0, 0, 0, 0, 0, 0, - 500, 149, 0, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 0, 161, 162, 163, 615, 616, - 617, 618, 619, 620, 621, 622, 0, 0, 0, 0, - 0, 0, 0, 0, 623, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 774, 0, 0, 0, + 0, 0, 0, 0, 149, 0, 0, 0, 223, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 347, 0, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 0, 161, 162, 163, 910, 0, 150, 151, 152, + 160, 0, 161, 162, 163, 141, 142, 143, 144, 145, + 146, 147, 148, 0, 0, 0, 0, 0, 0, 0, + 0, 149, 141, 142, 143, 144, 145, 146, 147, 148, + 0, 0, 0, 0, 0, 0, 0, 0, 149, 141, + 142, 143, 144, 145, 146, 147, 148, 0, 0, 0, + 0, 0, 0, 0, 508, 149, 0, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 0, 161, - 162, 163, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 0, 161, 162, 163, 877, - 878, 879, 880, 881, 882, 883, 884, 0, 0, 0, - 0, 0, 0, 0, 0, 885, 0, 624, 625, 626, - 627, 628, 629, 630, 631, 632, 633, 634, 0, 635, - 636, 637, 877, 878, 879, 880, 881, 882, 883, 884, - 0, 0, 0, 0, 0, 0, 0, 0, 885, 143, - 144, 145, 146, 147, 148, 0, 0, 0, 0, 0, - 0, 0, 0, 149, 879, 880, 881, 882, 883, 884, - 0, 0, 0, 0, 0, 0, 0, 0, 885, 143, - 144, 145, 146, 147, 148, 0, 0, 0, 0, 0, - 0, 0, 0, 149, 0, 0, 969, 0, 886, 887, - 888, 889, 0, 0, 890, 891, 892, 893, 894, 0, - 895, 896, 897, 879, 880, 881, 882, 883, 884, 0, - 0, 0, 0, 0, 0, 0, 0, 885, 0, 0, - 0, 886, 887, 888, 889, 0, 0, 890, 891, 892, - 893, 894, 0, 895, 896, 897, 0, 0, 0, 153, - 154, 155, 156, 157, 158, 159, 160, 0, 161, 162, - 163, 0, 887, 888, 889, 0, 0, 890, 891, 892, - 893, 894, 0, 895, 896, 897, 0, 0, 0, 0, - 154, 155, 156, 157, 158, 159, 160, 0, 161, 162, - 163, 879, 880, 881, 882, 883, 884, 0, 0, 0, - 0, 0, 0, 0, 0, 885, 0, 0, 0, -2, - 0, 0, 888, 889, 0, 0, 890, 891, 892, 893, - 894, 0, 895, 896, 897, 879, 880, 881, 882, 883, - 884, 0, 0, 0, 0, 0, 0, 0, 0, 885, + 162, 163, 624, 625, 626, 627, 628, 629, 630, 631, + 0, 0, 0, 0, 0, 0, 0, 0, 632, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 75, 0, 0, 0, 0, - 76, 0, 0, 77, 0, 0, 0, 0, 0, 0, - 0, 78, 79, 0, 80, 0, 0, 0, 81, 82, - 83, 889, 0, 0, 890, 891, 892, 893, 894, 84, - 895, 896, 897, 85, 363, 364, 0, 86, 0, 0, - 0, 0, 0, 0, 40, 0, 0, 0, 87, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 890, 891, - 892, 893, 894, 0, 895, 896, 897, 0, 0, 0, - 0, 41, 0, 42, 43, 44, 365, 366, 0, 47, - 41, 0, 42, 43, 44, 45, 46, 0, 47, 49, - 0, 0, 48, 0, 0, 50, 51, 52, 49, 0, - 40, 0, 0, 0, 50, 51, 52, 0, 0, 0, - 53, 54, 0, 0, 0, 0, 0, 0, 0, 53, - 54, 367, 0, 58, 55, 0, 59, 0, 60, 0, - 56, 57, 58, 0, 0, 59, 41, 60, 42, 43, - 44, 45, 310, 0, 47, 290, 0, 0, 48, 0, - 0, 0, 0, 0, 49, 0, 108, 0, 0, 0, + 783, 0, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 0, 161, 162, 163, 919, + 0, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 0, 161, 162, 163, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 0, + 161, 162, 163, 886, 887, 888, 889, 890, 891, 892, + 893, 0, 0, 0, 0, 0, 0, 0, 0, 894, + 0, 633, 634, 635, 636, 637, 638, 639, 640, 641, + 642, 643, 0, 644, 645, 646, 886, 887, 888, 889, + 890, 891, 892, 893, 0, 0, 0, 0, 0, 0, + 0, 0, 894, 143, 144, 145, 146, 147, 148, 0, + 0, 0, 0, 0, 0, 0, 0, 149, 143, 144, + 145, 146, 147, 148, 0, 0, 0, 0, 0, 0, + 0, 0, 149, 888, 889, 890, 891, 892, 893, 0, + 0, 0, 0, 0, 0, 0, 0, 894, 0, 0, + 978, 0, 895, 896, 897, 898, 0, 0, 899, 900, + 901, 902, 903, 0, 904, 905, 906, 143, 144, 145, + 146, 147, 148, 0, 0, 0, 0, 0, 0, 0, + 0, 149, 0, 0, 0, 895, 896, 897, 898, 0, + 0, 899, 900, 901, 902, 903, 0, 904, 905, 906, + 0, 0, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 0, 161, 162, 163, 0, 0, 0, 153, 154, + 155, 156, 157, 158, 159, 160, 0, 161, 162, 163, + 0, 896, 897, 898, 0, 0, 899, 900, 901, 902, + 903, 0, 904, 905, 906, 888, 889, 890, 891, 892, + 893, 0, 0, 0, 294, 0, 0, 0, 0, 894, + 0, 888, 889, 890, 891, 892, 893, 0, 154, 155, + 156, 157, 158, 159, 160, 894, 161, 162, 163, 0, + 0, 0, 41, 0, 42, 43, 44, 0, 0, 0, + 41, 0, 42, 43, 44, 0, 0, 0, 0, 0, + 0, 890, 891, 892, 893, 0, 50, 170, 52, 0, + 0, 0, 0, 894, 50, 170, 52, -2, 0, 0, + 0, 53, 54, 0, 0, 0, 0, 0, 0, 53, + 54, 0, 0, 0, 58, 0, 0, 0, 0, 60, + 0, 0, 58, 0, 897, 898, 0, 60, 899, 900, + 901, 902, 903, 0, 904, 905, 906, 0, 0, 0, + 74, 898, 115, 0, 899, 900, 901, 902, 903, 0, + 904, 905, 906, 75, 0, 0, 0, 0, 76, 367, + 368, 77, 0, 0, 0, 0, 0, 0, 0, 78, + 79, 0, 80, 0, 0, 0, 81, 82, 83, 0, + 0, 0, 899, 900, 901, 902, 903, 84, 904, 905, + 906, 85, 0, 0, 0, 86, 41, 0, 42, 43, + 44, 369, 370, 0, 47, 0, 87, 0, 0, 0, + 0, 0, 0, 0, 49, 0, 40, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 54, 0, 0, 0, - 55, 41, 0, 42, 43, 44, 56, 57, 58, 0, - 0, 59, 41, 60, 42, 43, 44, 45, 0, 0, + 0, 41, 0, 42, 43, 44, 371, 0, 58, 0, + 0, 59, 41, 60, 42, 43, 44, 45, 46, 0, 47, 0, 0, 0, 48, 50, 170, 52, 0, 0, 49, 0, 40, 0, 0, 0, 50, 51, 52, 0, 53, 54, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 53, 54, 58, 0, 0, 55, 41, 60, 42, - 43, 44, 109, 57, 58, 0, 0, 59, 41, 60, - 42, 43, 44, 45, 0, 0, 47, 0, 0, 0, - 48, 50, 170, 52, 0, 0, 49, 0, 0, 0, - 0, 0, 50, 51, 52, 0, 53, 54, 0, 0, - 0, 0, 0, 74, 0, 0, 0, 53, 54, 58, - 0, 0, 55, 0, 60, 0, 75, 0, 56, 57, - 58, 76, 0, 59, 77, 60, 0, 0, 0, 0, - 74, 0, 78, 79, 0, 80, 0, 115, 0, 81, - 82, 83, 0, 75, 0, 0, 0, 0, 76, 0, - 84, 77, 0, 0, 85, 0, 0, 74, 86, 78, - 79, 0, 80, 0, 0, 0, 81, 82, 83, 87, - 75, 0, 0, 0, 0, 76, 0, 84, 77, 0, - 0, 85, 0, 0, 74, 86, 78, 79, 361, 80, - 0, 0, 0, 81, 82, 83, 87, 75, 0, 0, - 0, 0, 76, 0, 84, 77, 0, 0, 85, 0, - 0, 74, 86, 78, 79, 420, 80, 0, 0, 0, - 81, 82, 83, 87, 75, 0, 0, 0, 0, 76, - 0, 84, 77, 0, 0, 85, 0, 0, 0, 86, - 78, 79, 487, 80, 0, 0, 0, 81, 82, 83, - 87, 0, 0, 0, 0, 0, 0, 0, 84, 0, - 0, 41, 85, 42, 43, 44, 86, 0, 0, 576, - 0, 0, 0, 0, 0, 0, 0, 87, 0, 0, - 0, 0, 0, 0, 0, 50, 170, 52, 0, 0, - 0, 74, 0, 0, 0, 0, 783, 0, 0, 0, - 53, 54, 0, 0, 75, 0, 0, 0, 0, 76, - 0, 0, 77, 58, 0, 0, 0, 0, 60, 0, - 78, 79, 0, 80, 0, 0, 0, 81, 82, 83, - 0, 0, 0, 0, 0, 0, 0, 0, 84, 0, - 0, 118, 85, 0, 0, 0, 86 + 0, 53, 54, 58, 0, 0, 55, 0, 60, 0, + 0, 0, 56, 57, 58, 0, 0, 59, 41, 60, + 42, 43, 44, 45, 314, 0, 47, 0, 0, 0, + 48, 118, 0, 0, 0, 0, 49, 0, 108, 0, + 0, 0, 50, 51, 52, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 53, 54, 0, + 0, 0, 55, 0, 0, 0, 0, 0, 56, 57, + 58, 0, 0, 59, 41, 60, 42, 43, 44, 45, + 0, 0, 47, 0, 0, 0, 48, 0, 0, 0, + 0, 0, 49, 0, 40, 0, 0, 0, 50, 51, + 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 53, 54, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 109, 57, 58, 0, 0, 59, + 41, 60, 42, 43, 44, 45, 0, 0, 47, 0, + 0, 0, 48, 0, 0, 0, 0, 0, 49, 0, + 0, 0, 0, 0, 50, 51, 52, 0, 0, 0, + 0, 0, 0, 0, 0, 74, 0, 0, 0, 53, + 54, 0, 0, 0, 55, 0, 0, 0, 75, 0, + 56, 57, 58, 76, 0, 59, 77, 60, 0, 0, + 0, 0, 74, 0, 78, 79, 0, 80, 0, 0, + 0, 81, 82, 83, 0, 75, 0, 0, 0, 0, + 76, 0, 84, 77, 0, 0, 85, 0, 0, 74, + 86, 78, 79, 0, 80, 0, 0, 0, 81, 82, + 83, 87, 75, 0, 0, 0, 0, 76, 0, 84, + 77, 0, 0, 85, 0, 0, 74, 86, 78, 79, + 365, 80, 0, 0, 0, 81, 82, 83, 87, 75, + 0, 0, 0, 0, 76, 0, 84, 77, 0, 0, + 85, 0, 0, 74, 86, 78, 79, 426, 80, 0, + 0, 0, 81, 82, 83, 87, 75, 0, 0, 0, + 0, 76, 0, 84, 77, 0, 0, 85, 0, 0, + 74, 86, 78, 79, 495, 80, 0, 0, 0, 81, + 82, 83, 87, 75, 0, 0, 0, 0, 76, 0, + 84, 77, 0, 0, 85, 0, 0, 0, 86, 78, + 79, 585, 80, 0, 0, 0, 81, 82, 83, 87, + 0, 0, 0, 0, 0, 0, 0, 84, 0, 0, + 0, 85, 0, 0, 0, 86, 0, 0, 792 }; #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-491))) + (!!((Yystate) == (-570))) #define yytable_value_is_error(Yytable_value) \ YYID (0) static const yytype_int16 yycheck[] = { - 1, 35, 2, 91, 5, 495, 85, 91, 91, 293, - 12, 23, 23, 10, 23, 8, 9, 0, 380, 8, - 9, 35, 107, 29, 303, 110, 125, 486, 422, 423, - 125, 31, 32, 33, 34, 448, 36, 8, 9, 8, - 9, 46, 99, 100, 101, 102, 103, 108, 105, 106, - 107, 125, 209, 108, 416, 108, 107, 114, 115, 110, - 61, 118, 119, 110, 108, 478, 127, 77, 8, 9, - 376, 125, 127, 379, 127, 381, 108, 125, 432, 91, - 91, 91, 91, 127, 85, 439, 440, 441, 442, 443, - 104, 550, 194, 116, 165, 127, 402, 403, 452, 405, - 406, 407, 116, 117, 8, 9, 108, 178, 179, 180, - 181, 182, 200, 126, 127, 469, 200, 200, 124, 125, - 126, 110, 51, 120, 53, 54, 488, 411, 162, 58, - 409, 8, 9, 592, 127, 75, 107, 125, 107, 125, - 446, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 108, 163, 165, 111, 560, 29, 474, 448, - 564, 125, 566, 50, 568, 569, 570, 178, 179, 180, - 181, 182, 125, 596, 185, 242, 599, 125, 200, 200, - 191, 200, 294, 194, 10, 501, 107, 108, 14, 478, - 125, 614, 207, 132, 133, 134, 135, 125, 213, 280, - 116, 313, 89, 56, 6, 8, 9, 10, 95, 96, - 377, 14, 382, 380, 67, 68, 386, 387, 388, 389, - 125, 585, 8, 9, 10, 51, 108, 80, 14, 168, - 125, 170, 108, 86, 107, 29, 600, 79, 80, 81, - 111, 251, 252, 108, 108, 127, 125, 186, 51, 416, - 362, 127, 124, 125, 126, 126, 109, 99, 111, 112, - 126, 127, 127, 127, 107, 51, 109, 110, 111, 280, - 111, 125, 108, 110, 646, 286, 286, 108, 108, 301, - 8, 9, 10, 294, 295, 126, 14, 302, 299, 115, - 301, 127, 78, 110, 120, 310, 127, 127, 110, 125, - 311, 107, 313, 109, 110, 111, 125, 596, 318, 127, - 480, 120, 115, 126, 426, 641, 108, 120, 8, 125, - 126, 488, 125, 51, 118, 119, 120, 121, 122, 115, - 124, 125, 126, 343, 120, 127, 110, 4, 107, 125, - 193, 8, 9, 354, 366, 434, 104, 105, 106, 202, - 116, 362, 125, 126, 293, 79, 80, 81, 858, 6, - 371, 125, 377, 216, 125, 380, 377, 220, 412, 380, - 414, 382, 109, 226, 227, 386, 387, 388, 389, 125, - 126, 392, 125, 126, 395, 127, 809, 115, 399, 399, - 108, 127, 120, 127, 127, 110, 768, 127, 409, 128, - 127, 416, 421, 422, 423, 416, 29, 117, 127, 419, - 125, 126, 127, 435, 127, 426, 127, 117, 127, 430, - 464, 432, 127, 434, 127, 29, 127, 494, 439, 440, - 441, 442, 443, 444, 287, 457, 457, 448, 457, 454, - 464, 452, 127, 125, 110, 110, 613, 773, 108, 108, - 125, 461, 462, 463, 127, 465, 125, 125, 469, 125, - 126, 127, 107, 107, 317, 108, 130, 478, 8, 480, - 108, 117, 411, 488, 128, 486, 486, 488, 850, 646, - 120, 120, 580, 125, 495, 495, 580, 580, 120, 110, - 806, 108, 111, 111, 866, 118, 119, 120, 121, 122, - 90, 124, 125, 126, 125, 126, 127, 360, 120, 116, - 125, 116, 365, 127, 367, 126, 120, 121, 122, 591, - 124, 125, 126, 108, 127, 108, 128, 853, 127, 130, - 127, 8, 109, 849, 126, 108, 125, 51, 548, 550, - 550, 560, 914, 127, 4, 564, 125, 566, 108, 568, - 569, 570, 130, 577, 128, 579, 127, 127, 580, 580, - 571, 580, 29, 17, 18, 19, 20, 578, 421, 422, - 423, 128, 130, 127, 585, 29, 127, 601, 125, 603, - 604, 592, 592, 899, 116, 596, 958, 125, 599, 600, - 116, 917, 636, 130, 117, 921, 108, 127, 613, 117, - 611, 768, 127, 614, 125, 615, 616, 617, 618, 619, - 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 127, 637, 109, 109, - 641, 646, 127, 125, 960, 646, 127, 125, 964, 125, - 493, 128, 127, 127, 3, 4, 5, 6, 117, 8, - 191, 977, 127, 120, 121, 122, 117, 124, 125, 126, - 986, 127, 116, 117, 118, 119, 120, 121, 122, 125, - 124, 125, 126, 125, 127, 434, 127, 493, 770, 806, - 849, 899, 434, 850, 200, 435, 366, 578, 613, 200, - 457, 492, 427, 732, 547, 54, -1, -1, -1, 866, - -1, -1, -1, 62, -1, -1, 559, 560, 561, -1, - -1, 564, -1, 566, -1, 568, 569, 570, -1, -1, - -1, 732, 575, 795, 796, 797, 798, 86, 800, 88, - -1, -1, -1, 92, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 811, -1, -1, 914, -1, -1, - -1, 761, -1, 768, -1, 799, 115, 768, -1, -1, - 119, 120, 773, -1, 123, -1, 125, -1, -1, -1, - 129, -1, -1, -1, -1, 799, -1, -1, -1, -1, - -1, 795, 796, 797, 798, -1, 800, 17, 18, 19, - 20, 958, -1, -1, -1, -1, -1, 807, 809, 29, - -1, -1, -1, -1, 814, 877, 878, 879, 880, 881, - 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, - 892, 893, 894, 895, 15, 16, 17, 18, 19, 20, - -1, -1, -1, -1, -1, 850, -1, -1, 29, 850, - -1, -1, 853, 867, 868, 869, -1, 858, 858, -1, - -1, 866, 896, -1, -1, 866, 928, -1, -1, -1, - -1, -1, -1, 877, 878, 879, 880, 881, 882, 883, - 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, - 894, 895, -1, -1, -1, -1, -1, 897, 118, 119, - 120, 121, 122, -1, 124, 125, 126, 969, -1, 914, - 910, -1, -1, 914, -1, -1, 917, -1, -1, 953, - 921, 955, -1, -1, 928, -1, -1, -1, -1, -1, - -1, -1, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, -1, 124, 125, 126, 980, 981, -1, -1, - -1, -1, -1, 958, -1, -1, -1, 958, -1, 960, - -1, -1, -1, 964, -1, 969, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 977, 3, 4, 5, - 6, 7, 8, 9, 10, 986, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, -1, -1, -1, - -1, -1, -1, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, -1, -1, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - -1, 57, -1, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, -1, -1, -1, 74, -1, - 76, -1, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, -1, 91, 92, 93, 94, 95, - 96, 97, -1, 99, 100, 101, 102, 103, -1, -1, - -1, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 3, 4, 5, 6, 7, - 8, 9, 10, 956, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, -1, -1, -1, -1, -1, - -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, -1, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, -1, 57, - -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, -1, -1, -1, 74, -1, 76, -1, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, -1, 91, 92, 93, 94, 95, 96, 97, - -1, 99, 100, 101, 102, 103, -1, 8, 9, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - -1, 129, 130, 3, 4, 5, 6, -1, 8, 9, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 50, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 14, 15, 16, 17, 18, 19, 20, -1, -1, - -1, -1, -1, -1, -1, 45, 29, 47, 48, 49, - 50, 51, -1, 53, 54, -1, -1, 57, 89, -1, - -1, -1, 62, 63, 95, 96, -1, -1, 99, 69, - 70, 71, -1, -1, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, 89, - -1, -1, 92, -1, -1, 95, 96, 97, -1, -1, - 100, -1, 102, 3, 4, 5, 6, -1, 8, 9, - -1, -1, 12, -1, -1, 115, -1, -1, -1, 119, - 120, -1, -1, 123, -1, 125, 8, 9, -1, 129, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - -1, 124, 125, 126, -1, 45, -1, 47, 48, 49, - 50, 51, -1, 53, 54, -1, -1, 57, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, 50, 69, - 70, 71, -1, -1, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, 89, - -1, -1, 92, -1, -1, 95, 96, 97, -1, -1, - 100, -1, 102, 3, 4, 5, 6, 89, 8, 9, - -1, -1, 12, 95, 96, 115, -1, 99, -1, 119, - -1, -1, -1, 123, -1, 125, 8, 9, -1, 129, - -1, 14, 15, 16, 17, 18, 19, 20, -1, -1, - -1, -1, -1, -1, -1, 45, 29, 47, 48, 49, - 50, 51, -1, 53, 54, -1, -1, 57, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, 50, 69, - 70, 71, 19, 20, -1, -1, 76, -1, -1, -1, - -1, -1, 29, -1, 84, 85, 86, -1, 88, 89, - -1, -1, 92, -1, -1, 95, 96, 97, -1, -1, - 100, -1, 102, 3, 4, 5, 6, 89, 8, 9, - -1, 19, 20, 95, 96, 115, -1, 99, -1, 119, - -1, 29, -1, 123, -1, 125, -1, -1, -1, 129, - 113, 114, 115, -1, -1, 118, 119, 120, 121, 122, - -1, 124, 125, 126, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, -1, -1, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, -1, 69, - 70, 118, 119, 120, 121, 122, 76, 124, 125, 126, - -1, -1, -1, -1, 84, 85, 86, -1, 88, -1, - -1, -1, 92, 3, 4, 5, 6, 97, 8, 9, - -1, -1, 102, -1, -1, -1, -1, -1, -1, -1, - 118, 119, 120, 121, 122, 115, 124, 125, 126, 119, - 120, -1, -1, 123, -1, 125, -1, 127, -1, 129, - -1, -1, -1, -1, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, -1, -1, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, -1, 69, - 70, -1, -1, -1, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, -1, - -1, -1, 92, 3, 4, 5, 6, 97, 8, 9, - -1, -1, 102, -1, -1, -1, 45, 107, 47, 48, - 49, -1, -1, -1, 53, 115, -1, -1, -1, 119, - 120, -1, -1, 123, 63, 125, -1, -1, -1, 129, - 69, 70, 71, -1, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, 84, 85, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, 97, 69, - 70, -1, -1, 102, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, -1, - -1, -1, 92, 3, 4, 5, 6, 97, 8, 9, - -1, -1, 102, -1, -1, -1, 45, 107, 47, 48, - 49, -1, -1, -1, -1, 115, -1, -1, -1, 119, - 120, -1, -1, 123, 63, 125, -1, -1, -1, 129, - 69, 70, 71, -1, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, 84, 85, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, 97, 69, - 70, -1, -1, 102, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, -1, - -1, -1, 92, 3, 4, 5, 6, 97, 8, 9, - -1, -1, 102, -1, -1, -1, 45, -1, 47, 48, - 49, -1, -1, -1, -1, 115, -1, -1, -1, 119, - 120, -1, -1, 123, -1, 125, -1, 127, -1, 129, - 69, 70, 71, -1, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, 84, 85, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, 97, 69, - 70, -1, -1, 102, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, -1, - -1, -1, 92, 3, 4, 5, 6, 97, 8, 9, - -1, -1, 102, -1, -1, -1, -1, 107, -1, -1, - -1, -1, -1, -1, -1, 115, -1, -1, -1, 119, - 120, -1, -1, 123, -1, 125, -1, -1, -1, 129, - -1, -1, -1, -1, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, -1, -1, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, -1, 69, - 70, -1, -1, -1, -1, -1, 76, -1, -1, -1, - -1, -1, -1, -1, 84, 85, 86, -1, 88, -1, - -1, -1, 92, 3, 4, 5, 6, 97, 8, 9, - -1, -1, 102, -1, -1, -1, 45, -1, 47, 48, - 49, -1, -1, -1, 53, 115, -1, -1, -1, 119, - 120, -1, -1, 123, 63, 125, -1, 127, -1, 129, - 69, 70, 71, -1, -1, 45, -1, 47, 48, 49, - -1, -1, -1, 53, 54, 84, 85, -1, -1, -1, - -1, -1, 62, 63, -1, -1, -1, -1, 97, 69, - 70, -1, -1, 102, -1, -1, 76, 15, 16, 17, - 18, 19, 20, -1, 84, 85, 86, -1, 88, -1, - -1, 29, 92, -1, -1, -1, 125, 97, -1, -1, - -1, -1, 102, -1, -1, 13, 14, 15, 16, 17, - 18, 19, 20, -1, -1, 115, -1, -1, -1, 119, - 120, 29, -1, 123, -1, 125, -1, -1, -1, 129, - 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, - -1, -1, -1, -1, -1, -1, 29, -1, -1, 13, - 14, 15, 16, 17, 18, 19, 20, -1, -1, -1, - -1, -1, -1, -1, -1, 29, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 1, 10, 46, 503, 5, 99, 100, 101, 102, 103, + 84, 105, 106, 107, 384, 35, 195, 212, 0, 297, + 114, 115, 8, 9, 118, 119, 84, 85, 12, 494, + 125, 600, 8, 9, 380, 29, 125, 383, 91, 385, + 35, 125, 23, 91, 108, 307, 79, 80, 81, 91, + 8, 9, 422, 8, 9, 8, 9, 125, 108, 2, + 61, 407, 408, 127, 410, 411, 412, 413, 386, 23, + 125, 455, 390, 391, 392, 393, 394, 127, 29, 79, + 80, 81, 111, 84, 85, 108, 108, 111, 31, 32, + 33, 34, 23, 36, 559, 107, 650, 126, 110, 99, + 107, 485, 126, 110, 127, 127, 438, 453, 125, 104, + 91, 120, 116, 445, 446, 447, 448, 449, 450, 298, + 75, 116, 117, 125, 108, 108, 496, 459, 111, 108, + 124, 125, 126, 125, 110, 481, 601, 91, 317, 417, + 108, 127, 162, 108, 476, 428, 429, 200, 127, 107, + 203, 245, 200, 415, 107, 203, 77, 116, 200, 127, + 91, 203, 127, 509, 165, 125, 210, 8, 9, 487, + 91, 108, 216, 124, 125, 126, 108, 178, 179, 180, + 181, 182, 183, 29, 125, 186, 381, 366, 6, 384, + 127, 192, 4, 455, 195, 127, 8, 9, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 200, + 163, 605, 203, 485, 608, 108, 108, 422, 782, 107, + 125, 109, 110, 111, 125, 804, 805, 806, 807, 623, + 809, 165, 126, 127, 127, 127, 200, 125, 126, 203, + 125, 126, 108, 432, 178, 179, 180, 181, 182, 183, + 125, 593, 306, 125, 108, 8, 9, 8, 9, 200, + 314, 127, 203, 107, 120, 121, 122, 609, 124, 125, + 126, 110, 283, 127, 127, 655, 569, 107, 108, 290, + 573, 110, 575, 125, 577, 578, 579, 298, 299, 125, + 126, 496, 303, 125, 305, 126, 127, 50, 862, 50, + 110, 254, 255, 110, 315, 116, 317, 886, 887, 888, + 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, + 899, 900, 901, 902, 903, 904, 125, 381, 125, 126, + 384, 120, 126, 605, 110, 110, 89, 290, 89, 8, + 107, 305, 95, 96, 95, 96, 99, 358, 99, 283, + 125, 126, 127, 116, 125, 366, 440, 867, 937, 125, + 6, 110, 926, 109, 375, 127, 930, 108, 422, 322, + 381, 127, 440, 384, 128, 386, 125, 126, 127, 390, + 391, 392, 393, 394, 127, 110, 397, 127, 418, 400, + 420, 127, 127, 404, 347, 117, 127, 777, 502, 978, + 125, 126, 127, 127, 415, 969, 370, 461, 127, 973, + 127, 422, 127, 127, 8, 9, 10, 622, 117, 127, + 14, 432, 986, 127, 818, 436, 110, 438, 108, 440, + 108, 995, 125, 125, 445, 446, 447, 448, 449, 450, + 451, 471, 496, 107, 455, 109, 110, 111, 459, 10, + 655, 404, 127, 14, 8, 9, 10, 51, 125, 815, + 14, 104, 105, 106, 125, 476, 471, 130, 8, 9, + 107, 107, 425, 464, 485, 108, 487, 441, 8, 859, + 120, 108, 56, 494, 78, 496, 427, 428, 429, 117, + 51, 120, 503, 67, 68, 875, 128, 51, 120, 125, + 464, 108, 858, 111, 8, 9, 80, 101, 111, 90, + 50, 120, 86, 125, 116, 468, 469, 470, 116, 472, + 126, 115, 127, 464, 128, 108, 120, 127, 127, 130, + 108, 125, 127, 8, 109, 109, 126, 111, 112, 108, + 101, 494, 127, 923, 51, 125, 50, 101, 559, 89, + 503, 4, 908, 125, 115, 95, 96, 108, 125, 120, + 130, 115, 127, 127, 125, 128, 120, 127, 622, 580, + 128, 125, 777, 130, 127, 116, 587, 51, 125, 53, + 54, 586, 593, 588, 58, 89, 130, 967, 116, 108, + 601, 95, 96, 117, 605, 99, 127, 608, 609, 117, + 125, 655, 125, 109, 557, 610, 559, 612, 613, 620, + 127, 127, 623, 29, 109, 645, 127, 127, 127, 127, + 194, 8, 9, 10, 125, 125, 128, 14, 569, 117, + 127, 205, 573, 117, 575, 127, 577, 578, 579, 650, + 125, 127, 125, 501, 655, 219, 127, 192, 601, 223, + 779, 858, 815, 908, 859, 229, 230, 203, 132, 133, + 134, 135, 440, 29, 51, 370, 587, 441, 622, 203, + 875, 624, 625, 626, 627, 628, 629, 630, 631, 632, + 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, + 643, 644, 464, 646, 168, 433, 170, 500, 3, 4, + 5, 6, -1, 8, 120, 121, 122, -1, 124, 125, + 126, -1, 741, 187, 101, -1, 820, 291, 923, -1, + -1, -1, -1, 777, -1, -1, -1, -1, 115, -1, + 741, -1, -1, 120, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 804, 805, 806, 807, 321, 809, 54, + -1, -1, 118, 119, 120, 121, 122, 62, 124, 125, + 126, -1, 967, -1, -1, -1, 777, -1, -1, -1, + -1, 782, -1, -1, -1, -1, -1, -1, 808, -1, + -1, 86, -1, 88, -1, -1, -1, 92, -1, -1, + 364, -1, -1, -1, -1, 369, -1, 371, -1, 17, + 18, 19, 20, 808, -1, 859, -1, 818, -1, -1, + 115, 29, -1, -1, 119, 120, -1, 770, 123, -1, + 125, 875, -1, 297, 129, 886, 887, 888, 889, 890, + 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, + 901, 902, 903, 904, -1, -1, -1, -1, 859, 29, + -1, 862, -1, 427, 428, 429, 867, -1, -1, -1, + -1, -1, -1, 816, 875, -1, -1, -1, -1, 923, + 823, 876, 877, 878, -1, 905, 937, -1, -1, -1, + -1, -1, 15, 16, 17, 18, 19, 20, -1, -1, + -1, -1, -1, -1, -1, -1, 29, -1, 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, 126, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, -1, 124, 125, 126, -1, - -1, -1, 130, -1, -1, -1, -1, -1, -1, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - -1, 124, 125, 126, -1, -1, -1, 130, 112, 113, + -1, -1, 923, 967, 867, 926, -1, 978, -1, 930, + -1, -1, -1, -1, -1, -1, -1, 501, -1, -1, + -1, -1, 962, -1, 964, -1, -1, -1, 118, 119, + 120, 121, 122, 417, 124, 125, 126, -1, -1, -1, + -1, -1, -1, 906, -1, -1, 967, -1, 969, 989, + 990, -1, 973, -1, -1, -1, 919, -1, -1, -1, + -1, -1, -1, -1, -1, 986, -1, -1, -1, -1, + -1, -1, 556, -1, 995, 118, 119, 120, 121, 122, + -1, 124, 125, 126, 568, 569, 570, -1, -1, 573, + -1, 575, -1, 577, 578, 579, -1, -1, -1, -1, + 584, 3, 4, 5, 6, 7, 8, 9, 10, -1, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, -1, -1, -1, -1, -1, -1, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, -1, -1, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, -1, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, + -1, -1, 74, -1, 76, -1, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, -1, 91, + 92, 93, 94, 95, 96, 97, -1, 99, 100, 101, + 102, 103, -1, -1, -1, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 3, + 4, 5, 6, 7, 8, 9, 10, -1, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, + -1, -1, -1, -1, -1, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, -1, + -1, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, -1, 57, -1, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, -1, -1, -1, + 74, -1, 76, -1, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, -1, 91, 92, 93, + 94, 95, 96, 97, -1, 99, 100, 101, 102, 103, + -1, -1, -1, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, 129, 130, 3, 4, 5, + 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, + 45, -1, 47, 48, 49, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 14, 15, 16, 17, 18, + 19, 20, -1, -1, 69, 70, 71, -1, -1, 45, + 29, 47, 48, 49, 50, 51, -1, 53, 54, 84, + 85, 57, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, 97, 69, 70, 71, -1, 102, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, 89, -1, -1, 92, -1, -1, 95, + 96, 97, -1, -1, 100, -1, 102, 3, 4, 5, + 6, -1, 8, 9, -1, -1, 12, -1, -1, 115, + -1, -1, -1, 119, 120, -1, -1, 123, -1, 125, + -1, 965, -1, 129, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, -1, 124, 125, 126, -1, 45, + -1, 47, 48, 49, 50, 51, -1, 53, 54, -1, + -1, 57, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, -1, 69, 70, 71, -1, -1, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, 89, -1, -1, 92, -1, -1, 95, + 96, 97, -1, -1, 100, -1, 102, 3, 4, 5, + 6, -1, 8, 9, -1, -1, 12, -1, -1, 115, + -1, -1, -1, 119, -1, -1, -1, 123, -1, 125, + -1, -1, -1, 129, -1, 14, 15, 16, 17, 18, + 19, 20, -1, -1, -1, -1, -1, -1, -1, 45, + 29, 47, 48, 49, 50, 51, -1, 53, 54, -1, + -1, 57, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, -1, 69, 70, 71, 19, 20, -1, -1, + 76, -1, -1, -1, -1, -1, 29, -1, 84, 85, + 86, -1, 88, 89, -1, -1, 92, -1, -1, 95, + 96, 97, -1, -1, 100, -1, 102, 3, 4, 5, + 6, -1, 8, 9, -1, 19, 20, -1, -1, 115, + -1, -1, -1, 119, -1, 29, -1, 123, -1, 125, + -1, -1, -1, 129, 113, 114, 115, -1, -1, 118, + 119, 120, 121, 122, -1, 124, 125, 126, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, -1, + -1, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, -1, 69, 70, 118, 119, 120, 121, 122, + 76, 124, 125, 126, -1, -1, -1, -1, 84, 85, + 86, -1, 88, -1, -1, -1, 92, 3, 4, 5, + 6, 97, 8, 9, -1, -1, 102, -1, -1, -1, + -1, -1, -1, -1, 118, 119, 120, 121, 122, 115, + 124, 125, 126, 119, 120, -1, -1, 123, -1, 125, + -1, 127, -1, 129, -1, -1, -1, -1, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, -1, + -1, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, -1, 69, 70, -1, -1, -1, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, -1, -1, -1, 92, 3, 4, 5, + 6, 97, 8, 9, -1, -1, 102, -1, -1, -1, + 45, 107, 47, 48, 49, -1, -1, -1, 53, 115, + -1, -1, -1, 119, 120, -1, -1, 123, 63, 125, + -1, -1, -1, 129, 69, 70, 71, -1, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, 84, + 85, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, 97, 69, 70, -1, -1, 102, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, -1, -1, -1, 92, 3, 4, 5, + 6, 97, 8, 9, -1, -1, 102, -1, -1, -1, + 45, 107, 47, 48, 49, -1, -1, -1, -1, 115, + -1, -1, -1, 119, 120, -1, -1, 123, 63, 125, + -1, -1, -1, 129, 69, 70, 71, -1, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, 84, + 85, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, 97, 69, 70, -1, -1, 102, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, -1, -1, -1, 92, 3, 4, 5, + 6, 97, 8, 9, -1, -1, 102, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 115, + -1, -1, -1, 119, 120, -1, -1, 123, -1, 125, + -1, 127, -1, 129, -1, -1, -1, -1, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, -1, + -1, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, -1, 69, 70, -1, -1, -1, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, -1, -1, -1, 92, 3, 4, 5, + 6, 97, 8, 9, -1, -1, 102, -1, -1, -1, + -1, 107, -1, -1, -1, -1, -1, -1, -1, 115, + -1, -1, -1, 119, 120, -1, -1, 123, -1, 125, + -1, -1, -1, 129, -1, -1, -1, -1, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, -1, + -1, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, -1, 69, 70, -1, -1, -1, -1, -1, + 76, -1, -1, -1, -1, -1, -1, -1, 84, 85, + 86, -1, 88, -1, -1, -1, 92, 3, 4, 5, + 6, 97, 8, 9, -1, -1, 102, -1, -1, -1, + 45, -1, 47, 48, 49, -1, -1, -1, 53, 115, + -1, -1, -1, 119, 120, -1, -1, 123, 63, 125, + -1, 127, -1, 129, 69, 70, 71, -1, -1, 45, + -1, 47, 48, 49, -1, -1, -1, 53, 54, 84, + 85, -1, -1, -1, -1, -1, 62, 63, -1, -1, + -1, -1, 97, 69, 70, -1, -1, 102, -1, -1, + 76, 15, 16, 17, 18, 19, 20, -1, 84, 85, + 86, -1, 88, -1, -1, 29, 92, -1, -1, -1, + 125, 97, -1, -1, -1, -1, 102, -1, -1, 13, + 14, 15, 16, 17, 18, 19, 20, -1, -1, 115, + -1, -1, -1, 119, 120, 29, -1, 123, -1, 125, + -1, -1, -1, 129, 13, 14, 15, 16, 17, 18, + 19, 20, -1, -1, -1, -1, -1, -1, -1, -1, + 29, -1, -1, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, -1, -1, -1, -1, -1, -1, 29, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, - 124, 125, 126, 8, 9, -1, 130, 13, 14, 15, - 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, - -1, -1, -1, 29, -1, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, -1, -1, -1, - 45, -1, 47, 48, 49, -1, 52, -1, 53, 45, - -1, 47, 48, 49, -1, -1, -1, -1, 63, -1, - -1, -1, -1, -1, 69, 70, 71, -1, -1, -1, - 76, -1, -1, 69, 70, 71, -1, -1, -1, 84, - 85, -1, -1, -1, -1, 8, 9, -1, 84, 85, - -1, -1, 97, -1, -1, 100, -1, 102, -1, -1, - -1, 97, 108, -1, -1, 111, 102, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, -1, 125, - 126, 44, 45, 129, 47, 48, 49, 50, 51, 125, - 53, -1, -1, -1, 57, 58, 59, 60, -1, -1, - 63, -1, -1, -1, -1, 68, 69, 70, 71, -1, - -1, 74, 8, 9, -1, 78, -1, -1, -1, 82, - -1, 84, 85, -1, 87, -1, 89, -1, -1, -1, - -1, -1, 95, 96, 97, -1, 99, 100, 101, 102, - -1, -1, -1, -1, 107, -1, -1, -1, 44, 45, - -1, 47, 48, 49, 50, 51, -1, 53, -1, -1, - 123, 57, 58, 59, 60, -1, -1, 63, -1, -1, - -1, -1, 68, 69, 70, 71, -1, -1, 74, 8, - 9, -1, 78, -1, -1, -1, 82, -1, 84, 85, - -1, 87, -1, 89, -1, -1, -1, -1, -1, 95, - 96, 97, -1, 99, 100, 101, 102, 13, 14, 15, - 16, 17, 18, 19, 20, 44, 45, -1, 47, 48, - 49, 50, 51, 29, 53, -1, -1, 123, 57, 58, + 124, 125, 126, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, + 124, 125, 126, -1, -1, -1, 130, -1, -1, -1, + -1, -1, -1, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, -1, 124, 125, 126, -1, -1, + -1, 130, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, -1, 124, 125, 126, 8, 9, -1, + 130, 13, 14, 15, 16, 17, 18, 19, 20, -1, + -1, -1, -1, -1, -1, -1, -1, 29, -1, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, -1, -1, -1, 45, -1, 47, 48, 49, -1, + 52, -1, 53, 45, -1, 47, 48, 49, -1, -1, + -1, -1, 63, -1, -1, -1, -1, -1, 69, 70, + 71, -1, -1, -1, 76, -1, -1, 69, 70, 71, + -1, -1, -1, 84, 85, -1, -1, -1, -1, 8, + 9, -1, 84, 85, -1, -1, 97, -1, -1, 100, + -1, 102, -1, -1, -1, 97, 108, -1, -1, 111, + 102, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, -1, 125, 126, 44, 45, 129, 47, 48, + 49, 50, 51, 125, 53, -1, -1, -1, 57, 58, 59, 60, -1, -1, 63, -1, -1, -1, -1, 68, - 69, 70, 71, -1, -1, 74, -1, -1, -1, 78, + 69, 70, 71, -1, -1, 74, 8, 9, -1, 78, -1, -1, -1, 82, -1, 84, 85, -1, 87, -1, 89, -1, -1, -1, -1, -1, 95, 96, 97, -1, - 99, 100, 101, 102, 13, 14, 15, 16, 17, 18, - 19, 20, -1, -1, -1, -1, -1, -1, -1, -1, - 29, -1, -1, -1, 123, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 110, -1, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, - 126, 13, 14, 15, 16, 17, 18, 19, 20, -1, - -1, -1, -1, -1, -1, -1, -1, 29, 13, 14, + 99, 100, 101, 102, -1, -1, -1, -1, 107, -1, + -1, -1, 44, 45, -1, 47, 48, 49, 50, 51, + -1, 53, -1, -1, 123, 57, 58, 59, 60, -1, + -1, 63, -1, -1, -1, -1, 68, 69, 70, 71, + -1, -1, 74, 8, 9, -1, 78, -1, -1, -1, + 82, -1, 84, 85, -1, 87, -1, 89, -1, -1, + -1, -1, -1, 95, 96, 97, -1, 99, 100, 101, + 102, 13, 14, 15, 16, 17, 18, 19, 20, 44, + 45, -1, 47, 48, 49, 50, 51, 29, 53, -1, + -1, 123, 57, 58, 59, 60, -1, -1, 63, -1, + -1, -1, -1, 68, 69, 70, 71, -1, -1, 74, + -1, -1, -1, 78, -1, -1, -1, 82, -1, 84, + 85, -1, 87, -1, 89, -1, -1, -1, -1, -1, + 95, 96, 97, -1, 99, 100, 101, 102, 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, - -1, -1, -1, -1, 29, 13, 14, 15, 16, 17, - 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, - 109, 29, -1, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, -1, 124, 125, 126, 13, 14, - 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, - -1, -1, -1, -1, 29, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 108, -1, -1, -1, + -1, -1, -1, -1, 29, -1, -1, -1, 123, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 110, -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, -1, 124, 125, 126, 110, -1, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, -1, 124, - 125, 126, -1, -1, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, -1, 124, 125, 126, 13, + 122, -1, 124, 125, 126, 13, 14, 15, 16, 17, + 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, + -1, 29, 13, 14, 15, 16, 17, 18, 19, 20, + -1, -1, -1, -1, -1, -1, -1, -1, 29, 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, -1, - -1, -1, -1, -1, -1, 29, -1, 112, 113, 114, + -1, -1, -1, -1, 109, 29, -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, 126, 13, 14, 15, 16, 17, 18, 19, 20, - -1, -1, -1, -1, -1, -1, -1, -1, 29, 15, - 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, - -1, -1, -1, 29, 15, 16, 17, 18, 19, 20, - -1, -1, -1, -1, -1, -1, -1, -1, 29, 15, - 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, - -1, -1, -1, 29, -1, -1, 110, -1, 112, 113, - 114, 115, -1, -1, 118, 119, 120, 121, 122, -1, - 124, 125, 126, 15, 16, 17, 18, 19, 20, -1, - -1, -1, -1, -1, -1, -1, -1, 29, -1, -1, - -1, 112, 113, 114, 115, -1, -1, 118, 119, 120, - 121, 122, -1, 124, 125, 126, -1, -1, -1, 115, - 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, - 126, -1, 113, 114, 115, -1, -1, 118, 119, 120, - 121, 122, -1, 124, 125, 126, -1, -1, -1, -1, - 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, - 126, 15, 16, 17, 18, 19, 20, -1, -1, -1, - -1, -1, -1, -1, -1, 29, -1, -1, -1, 0, - -1, -1, 114, 115, -1, -1, 118, 119, 120, 121, - 122, -1, 124, 125, 126, 15, 16, 17, 18, 19, - 20, -1, -1, -1, -1, -1, -1, -1, -1, 29, + -1, -1, -1, -1, -1, -1, -1, -1, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 43, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 56, -1, -1, -1, -1, - 61, -1, -1, 64, -1, -1, -1, -1, -1, -1, - -1, 72, 73, -1, 75, -1, -1, -1, 79, 80, - 81, 115, -1, -1, 118, 119, 120, 121, 122, 90, - 124, 125, 126, 94, 8, 9, -1, 98, -1, -1, - -1, -1, -1, -1, 9, -1, -1, -1, 109, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, + 108, -1, -1, -1, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, -1, 124, 125, 126, 110, + -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, -1, 124, 125, 126, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, + 124, 125, 126, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, -1, -1, -1, -1, -1, -1, 29, + -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, -1, 124, 125, 126, 13, 14, 15, 16, + 17, 18, 19, 20, -1, -1, -1, -1, -1, -1, + -1, -1, 29, 15, 16, 17, 18, 19, 20, -1, + -1, -1, -1, -1, -1, -1, -1, 29, 15, 16, + 17, 18, 19, 20, -1, -1, -1, -1, -1, -1, + -1, -1, 29, 15, 16, 17, 18, 19, 20, -1, + -1, -1, -1, -1, -1, -1, -1, 29, -1, -1, + 110, -1, 112, 113, 114, 115, -1, -1, 118, 119, + 120, 121, 122, -1, 124, 125, 126, 15, 16, 17, + 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, + -1, 29, -1, -1, -1, 112, 113, 114, 115, -1, + -1, 118, 119, 120, 121, 122, -1, 124, 125, 126, + -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, -1, -1, -1, 115, 116, + 117, 118, 119, 120, 121, 122, -1, 124, 125, 126, + -1, 113, 114, 115, -1, -1, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 15, 16, 17, 18, 19, + 20, -1, -1, -1, 9, -1, -1, -1, -1, 29, + -1, 15, 16, 17, 18, 19, 20, -1, 116, 117, + 118, 119, 120, 121, 122, 29, 124, 125, 126, -1, + -1, -1, 45, -1, 47, 48, 49, -1, -1, -1, + 45, -1, 47, 48, 49, -1, -1, -1, -1, -1, + -1, 17, 18, 19, 20, -1, 69, 70, 71, -1, + -1, -1, -1, 29, 69, 70, 71, 0, -1, -1, + -1, 84, 85, -1, -1, -1, -1, -1, -1, 84, + 85, -1, -1, -1, 97, -1, -1, -1, -1, 102, + -1, -1, 97, -1, 114, 115, -1, 102, 118, 119, 120, 121, 122, -1, 124, 125, 126, -1, -1, -1, - -1, 45, -1, 47, 48, 49, 50, 51, -1, 53, - 45, -1, 47, 48, 49, 50, 51, -1, 53, 63, - -1, -1, 57, -1, -1, 69, 70, 71, 63, -1, - 9, -1, -1, -1, 69, 70, 71, -1, -1, -1, - 84, 85, -1, -1, -1, -1, -1, -1, -1, 84, - 85, 95, -1, 97, 89, -1, 100, -1, 102, -1, - 95, 96, 97, -1, -1, 100, 45, 102, 47, 48, - 49, 50, 51, -1, 53, 9, -1, -1, 57, -1, + 43, 115, 125, -1, 118, 119, 120, 121, 122, -1, + 124, 125, 126, 56, -1, -1, -1, -1, 61, 8, + 9, 64, -1, -1, -1, -1, -1, -1, -1, 72, + 73, -1, 75, -1, -1, -1, 79, 80, 81, -1, + -1, -1, 118, 119, 120, 121, 122, 90, 124, 125, + 126, 94, -1, -1, -1, 98, 45, -1, 47, 48, + 49, 50, 51, -1, 53, -1, 109, -1, -1, -1, -1, -1, -1, -1, 63, -1, 9, -1, -1, -1, 69, 70, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 84, 85, -1, -1, -1, - 89, 45, -1, 47, 48, 49, 95, 96, 97, -1, - -1, 100, 45, 102, 47, 48, 49, 50, -1, -1, + -1, 45, -1, 47, 48, 49, 95, -1, 97, -1, + -1, 100, 45, 102, 47, 48, 49, 50, 51, -1, 53, -1, -1, -1, 57, 69, 70, 71, -1, -1, 63, -1, 9, -1, -1, -1, 69, 70, 71, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 84, 85, 97, -1, -1, 89, 45, 102, 47, - 48, 49, 95, 96, 97, -1, -1, 100, 45, 102, - 47, 48, 49, 50, -1, -1, 53, -1, -1, -1, - 57, 69, 70, 71, -1, -1, 63, -1, -1, -1, - -1, -1, 69, 70, 71, -1, 84, 85, -1, -1, - -1, -1, -1, 43, -1, -1, -1, 84, 85, 97, - -1, -1, 89, -1, 102, -1, 56, -1, 95, 96, - 97, 61, -1, 100, 64, 102, -1, -1, -1, -1, - 43, -1, 72, 73, -1, 75, -1, 125, -1, 79, - 80, 81, -1, 56, -1, -1, -1, -1, 61, -1, - 90, 64, -1, -1, 94, -1, -1, 43, 98, 72, - 73, -1, 75, -1, -1, -1, 79, 80, 81, 109, - 56, -1, -1, -1, -1, 61, -1, 90, 64, -1, - -1, 94, -1, -1, 43, 98, 72, 73, 128, 75, - -1, -1, -1, 79, 80, 81, 109, 56, -1, -1, - -1, -1, 61, -1, 90, 64, -1, -1, 94, -1, - -1, 43, 98, 72, 73, 128, 75, -1, -1, -1, - 79, 80, 81, 109, 56, -1, -1, -1, -1, 61, - -1, 90, 64, -1, -1, 94, -1, -1, -1, 98, - 72, 73, 128, 75, -1, -1, -1, 79, 80, 81, - 109, -1, -1, -1, -1, -1, -1, -1, 90, -1, - -1, 45, 94, 47, 48, 49, 98, -1, -1, 128, - -1, -1, -1, -1, -1, -1, -1, 109, -1, -1, - -1, -1, -1, -1, -1, 69, 70, 71, -1, -1, - -1, 43, -1, -1, -1, -1, 128, -1, -1, -1, - 84, 85, -1, -1, 56, -1, -1, -1, -1, 61, - -1, -1, 64, 97, -1, -1, -1, -1, 102, -1, - 72, 73, -1, 75, -1, -1, -1, 79, 80, 81, - -1, -1, -1, -1, -1, -1, -1, -1, 90, -1, - -1, 125, 94, -1, -1, -1, 98 + -1, 84, 85, 97, -1, -1, 89, -1, 102, -1, + -1, -1, 95, 96, 97, -1, -1, 100, 45, 102, + 47, 48, 49, 50, 51, -1, 53, -1, -1, -1, + 57, 125, -1, -1, -1, -1, 63, -1, 9, -1, + -1, -1, 69, 70, 71, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 84, 85, -1, + -1, -1, 89, -1, -1, -1, -1, -1, 95, 96, + 97, -1, -1, 100, 45, 102, 47, 48, 49, 50, + -1, -1, 53, -1, -1, -1, 57, -1, -1, -1, + -1, -1, 63, -1, 9, -1, -1, -1, 69, 70, + 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 84, 85, -1, -1, -1, 89, -1, + -1, -1, -1, -1, 95, 96, 97, -1, -1, 100, + 45, 102, 47, 48, 49, 50, -1, -1, 53, -1, + -1, -1, 57, -1, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, 69, 70, 71, -1, -1, -1, + -1, -1, -1, -1, -1, 43, -1, -1, -1, 84, + 85, -1, -1, -1, 89, -1, -1, -1, 56, -1, + 95, 96, 97, 61, -1, 100, 64, 102, -1, -1, + -1, -1, 43, -1, 72, 73, -1, 75, -1, -1, + -1, 79, 80, 81, -1, 56, -1, -1, -1, -1, + 61, -1, 90, 64, -1, -1, 94, -1, -1, 43, + 98, 72, 73, -1, 75, -1, -1, -1, 79, 80, + 81, 109, 56, -1, -1, -1, -1, 61, -1, 90, + 64, -1, -1, 94, -1, -1, 43, 98, 72, 73, + 128, 75, -1, -1, -1, 79, 80, 81, 109, 56, + -1, -1, -1, -1, 61, -1, 90, 64, -1, -1, + 94, -1, -1, 43, 98, 72, 73, 128, 75, -1, + -1, -1, 79, 80, 81, 109, 56, -1, -1, -1, + -1, 61, -1, 90, 64, -1, -1, 94, -1, -1, + 43, 98, 72, 73, 128, 75, -1, -1, -1, 79, + 80, 81, 109, 56, -1, -1, -1, -1, 61, -1, + 90, 64, -1, -1, 94, -1, -1, -1, 98, 72, + 73, 128, 75, -1, -1, -1, 79, 80, 81, 109, + -1, -1, -1, -1, -1, -1, -1, 90, -1, -1, + -1, 94, -1, -1, -1, 98, -1, -1, 128 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -2344,88 +2364,89 @@ static const yytype_uint8 yystos[] = 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 6, 183, 53, 63, 70, 205, 70, 205, 205, 8, 9, 221, 205, 10, 14, 51, - 115, 120, 125, 182, 223, 107, 110, 221, 107, 221, - 110, 140, 125, 125, 107, 221, 110, 110, 110, 165, - 141, 148, 75, 221, 8, 9, 44, 51, 58, 59, - 60, 68, 74, 78, 82, 87, 95, 99, 101, 107, - 123, 153, 184, 187, 189, 194, 199, 200, 204, 213, - 214, 223, 213, 213, 213, 213, 213, 186, 213, 213, - 213, 221, 125, 221, 221, 213, 213, 186, 186, 213, - 213, 127, 108, 127, 216, 216, 216, 216, 216, 216, + 101, 115, 120, 125, 182, 223, 107, 110, 221, 107, + 221, 110, 140, 125, 125, 107, 221, 110, 110, 110, + 141, 142, 165, 141, 148, 75, 221, 8, 9, 44, + 51, 58, 59, 60, 68, 74, 78, 82, 87, 95, + 99, 101, 107, 123, 153, 184, 187, 189, 194, 199, + 200, 204, 213, 214, 223, 213, 213, 213, 213, 213, + 186, 213, 213, 213, 221, 125, 221, 221, 213, 213, + 186, 186, 213, 213, 127, 108, 127, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, - 216, 216, 216, 216, 216, 127, 214, 216, 182, 63, - 120, 182, 182, 182, 182, 182, 126, 197, 198, 223, - 9, 196, 205, 110, 188, 190, 138, 8, 221, 133, - 107, 116, 51, 153, 184, 221, 125, 125, 183, 222, - 51, 183, 221, 137, 221, 107, 109, 110, 111, 176, - 109, 144, 221, 221, 127, 127, 127, 127, 127, 127, - 117, 127, 127, 127, 213, 127, 127, 127, 117, 127, - 127, 216, 216, 110, 127, 130, 182, 127, 212, 216, - 223, 221, 128, 196, 133, 110, 191, 192, 223, 108, - 108, 128, 202, 8, 9, 50, 51, 95, 166, 167, - 168, 169, 204, 223, 183, 176, 149, 154, 10, 120, - 155, 145, 183, 8, 9, 10, 14, 51, 115, 120, - 180, 223, 133, 125, 208, 209, 134, 135, 221, 107, - 216, 10, 14, 51, 78, 115, 120, 125, 146, 170, - 221, 110, 125, 127, 125, 216, 125, 130, 108, 111, - 128, 79, 80, 81, 99, 193, 107, 108, 8, 221, - 133, 221, 169, 221, 117, 108, 8, 9, 10, 14, - 51, 115, 120, 125, 181, 223, 150, 151, 170, 3, - 4, 5, 8, 12, 51, 54, 62, 76, 86, 88, - 92, 115, 119, 123, 125, 129, 172, 173, 179, 183, - 218, 219, 222, 223, 120, 170, 172, 147, 170, 180, - 120, 180, 180, 180, 180, 125, 126, 128, 156, 128, - 210, 223, 107, 108, 125, 107, 177, 178, 216, 223, - 109, 120, 170, 170, 13, 14, 15, 16, 17, 18, - 19, 20, 29, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 52, 76, 108, 111, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 125, 126, 129, 162, 170, 170, 170, 110, 111, 125, - 126, 175, 176, 223, 196, 214, 214, 172, 216, 95, - 99, 200, 220, 221, 99, 220, 99, 220, 79, 80, - 81, 133, 193, 108, 127, 108, 128, 111, 181, 111, - 141, 142, 163, 164, 168, 120, 181, 181, 181, 181, - 181, 111, 126, 174, 223, 152, 170, 175, 176, 181, - 183, 116, 185, 125, 116, 216, 216, 216, 186, 214, - 216, 127, 12, 108, 181, 13, 14, 15, 16, 17, - 18, 19, 20, 29, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 124, 125, 126, 170, 110, - 127, 127, 175, 176, 125, 180, 159, 212, 172, 3, - 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 57, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 74, 76, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 91, 92, 93, 94, 95, 96, 97, 99, 100, 101, - 102, 103, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 129, 130, 211, 208, 135, 213, 177, - 128, 108, 170, 127, 130, 127, 4, 216, 171, 212, - 108, 127, 127, 127, 108, 221, 220, 221, 220, 220, - 220, 220, 220, 128, 8, 109, 221, 186, 174, 186, - 181, 127, 54, 86, 88, 115, 119, 120, 123, 125, - 129, 215, 217, 212, 175, 176, 108, 111, 175, 181, - 186, 125, 186, 186, 127, 127, 51, 161, 223, 12, - 179, 175, 216, 216, 216, 216, 216, 216, 216, 216, + 216, 216, 216, 216, 216, 216, 216, 216, 127, 214, + 216, 182, 63, 120, 182, 182, 182, 182, 182, 182, + 126, 197, 198, 223, 9, 196, 205, 110, 188, 190, + 138, 8, 221, 133, 107, 116, 51, 153, 184, 221, + 125, 125, 183, 222, 51, 183, 221, 137, 221, 107, + 109, 110, 111, 176, 109, 144, 221, 221, 127, 127, + 127, 127, 127, 127, 117, 127, 127, 127, 213, 127, + 127, 127, 117, 127, 127, 216, 216, 110, 127, 130, + 182, 127, 212, 216, 223, 221, 128, 196, 133, 110, + 191, 192, 223, 108, 108, 128, 202, 8, 9, 50, + 51, 95, 166, 167, 168, 169, 204, 223, 183, 176, + 149, 154, 10, 120, 155, 145, 183, 8, 9, 10, + 14, 51, 101, 115, 120, 180, 223, 133, 125, 208, + 209, 134, 135, 221, 107, 216, 10, 14, 51, 78, + 101, 115, 120, 125, 146, 170, 221, 110, 125, 127, + 125, 216, 125, 130, 108, 111, 128, 79, 80, 81, + 99, 193, 107, 108, 8, 221, 133, 221, 169, 221, + 117, 108, 8, 9, 10, 14, 51, 101, 115, 120, + 125, 181, 223, 150, 151, 170, 3, 4, 5, 8, + 12, 51, 54, 62, 76, 86, 88, 92, 115, 119, + 123, 125, 129, 172, 173, 179, 183, 218, 219, 222, + 223, 120, 170, 172, 147, 170, 180, 120, 180, 180, + 180, 180, 180, 125, 126, 128, 156, 128, 210, 223, + 107, 108, 125, 107, 177, 178, 216, 223, 109, 120, + 170, 170, 13, 14, 15, 16, 17, 18, 19, 20, + 29, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 52, 76, 108, 111, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, + 129, 162, 170, 170, 170, 170, 110, 111, 125, 126, + 175, 176, 223, 196, 214, 214, 172, 216, 95, 99, + 200, 220, 221, 99, 220, 99, 220, 79, 80, 81, + 133, 193, 108, 127, 108, 128, 111, 181, 111, 142, + 163, 164, 168, 120, 181, 181, 181, 181, 181, 181, + 111, 126, 174, 223, 152, 170, 175, 176, 181, 183, + 116, 185, 125, 116, 216, 216, 216, 186, 214, 216, + 127, 12, 108, 181, 13, 14, 15, 16, 17, 18, + 19, 20, 29, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 124, 125, 126, 170, 110, 127, + 127, 175, 176, 125, 180, 159, 212, 172, 3, 4, + 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 57, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 74, 76, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 91, + 92, 93, 94, 95, 96, 97, 99, 100, 101, 102, + 103, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 129, 130, 211, 208, 135, 213, 177, 128, + 108, 170, 127, 130, 127, 4, 216, 171, 212, 108, + 127, 127, 127, 108, 221, 220, 221, 220, 220, 220, + 220, 220, 128, 8, 109, 221, 186, 174, 186, 181, + 127, 54, 86, 88, 115, 119, 120, 123, 125, 129, + 215, 217, 212, 175, 176, 108, 111, 175, 181, 186, + 125, 186, 186, 127, 127, 51, 161, 223, 12, 179, + 175, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, - 216, 216, 216, 127, 214, 216, 127, 125, 161, 108, - 160, 172, 130, 127, 210, 128, 127, 128, 107, 216, - 172, 130, 146, 161, 127, 127, 125, 116, 125, 116, - 215, 215, 215, 215, 186, 214, 215, 13, 14, 15, - 16, 17, 18, 19, 20, 29, 112, 113, 114, 115, - 118, 119, 120, 121, 122, 124, 125, 126, 130, 108, - 151, 216, 175, 117, 213, 127, 117, 216, 77, 91, - 110, 127, 130, 125, 157, 147, 172, 127, 161, 128, - 177, 127, 109, 109, 172, 186, 186, 186, 127, 127, + 216, 216, 127, 214, 216, 127, 125, 161, 108, 160, + 172, 130, 127, 210, 128, 127, 128, 107, 216, 172, + 130, 146, 161, 127, 127, 125, 116, 125, 116, 215, + 215, 215, 215, 186, 214, 215, 13, 14, 15, 16, + 17, 18, 19, 20, 29, 112, 113, 114, 115, 118, + 119, 120, 121, 122, 124, 125, 126, 130, 108, 151, + 216, 175, 117, 213, 127, 117, 216, 77, 91, 110, + 127, 130, 125, 157, 147, 172, 127, 161, 128, 177, + 127, 109, 109, 172, 186, 186, 186, 127, 127, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 215, 215, 215, 215, 215, 215, 215, 127, - 214, 216, 152, 125, 127, 125, 125, 216, 158, 172, - 127, 161, 128, 161, 127, 117, 127, 117, 215, 110, - 127, 130, 214, 214, 127, 221, 172, 127, 161, 161, - 125, 125, 215, 127, 127, 127, 127, 161, 214, 214, - 161, 127, 127 + 215, 215, 215, 215, 215, 215, 215, 215, 127, 214, + 216, 152, 125, 127, 125, 125, 216, 158, 172, 127, + 161, 128, 161, 127, 117, 127, 117, 215, 110, 127, + 130, 214, 214, 127, 221, 172, 127, 161, 161, 125, + 125, 215, 127, 127, 127, 127, 161, 214, 214, 161, + 127, 127 }; #define yyerrok (yyerrstatus = 0) @@ -3801,7 +3822,7 @@ yyreduce: inst->_storage_class |= (current_storage_class | (yyvsp[(1) - (3)].u.integer)); current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[(2) - (3)])); CPPTypedefType *typedef_type = new CPPTypedefType(inst->_type, inst->_ident, current_scope); - current_scope->add_declaration(typedef_type, global_scope, current_lexer, (yylsp[(2) - (3)])); + current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[(2) - (3)])); } } } @@ -3813,7 +3834,7 @@ yyreduce: { CPPType *target_type = current_type; CPPTypedefType *typedef_type = new CPPTypedefType(target_type, (yyvsp[(1) - (2)].u.inst_ident), current_scope, (yylsp[(1) - (2)]).file); - current_scope->add_declaration(typedef_type, global_scope, current_lexer, (yylsp[(1) - (2)])); + current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[(1) - (2)])); } break; @@ -3823,7 +3844,7 @@ yyreduce: { CPPType *target_type = current_type; CPPTypedefType *typedef_type = new CPPTypedefType(target_type, (yyvsp[(1) - (4)].u.inst_ident), current_scope, (yylsp[(1) - (4)]).file); - current_scope->add_declaration(typedef_type, global_scope, current_lexer, (yylsp[(1) - (4)])); + current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[(1) - (4)])); } break; @@ -3834,7 +3855,7 @@ yyreduce: (yyvsp[(1) - (2)].u.inst_ident)->add_modifier(IIT_const); CPPType *target_type = current_type; CPPTypedefType *typedef_type = new CPPTypedefType(target_type, (yyvsp[(1) - (2)].u.inst_ident), current_scope, (yylsp[(1) - (2)]).file); - current_scope->add_declaration(typedef_type, global_scope, current_lexer, (yylsp[(1) - (2)])); + current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[(1) - (2)])); } break; @@ -3845,7 +3866,7 @@ yyreduce: (yyvsp[(1) - (4)].u.inst_ident)->add_modifier(IIT_const); CPPType *target_type = current_type; CPPTypedefType *typedef_type = new CPPTypedefType(target_type, (yyvsp[(1) - (4)].u.inst_ident), current_scope, (yylsp[(1) - (4)]).file); - current_scope->add_declaration(typedef_type, global_scope, current_lexer, (yylsp[(1) - (4)])); + current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[(1) - (4)])); } break; @@ -4437,9 +4458,9 @@ yyreduce: } break; - case 128: + case 129: /* Line 1792 of yacc.c */ -#line 1150 "dtool/src/cppparser/cppBison.yxx" +#line 1151 "dtool/src/cppparser/cppBison.yxx" { CPPTemplateScope *ts = current_scope->as_template_scope(); assert(ts != NULL); @@ -4447,9 +4468,9 @@ yyreduce: } break; - case 129: + case 130: /* Line 1792 of yacc.c */ -#line 1156 "dtool/src/cppparser/cppBison.yxx" +#line 1157 "dtool/src/cppparser/cppBison.yxx" { CPPTemplateScope *ts = current_scope->as_template_scope(); assert(ts != NULL); @@ -4457,41 +4478,41 @@ yyreduce: } break; - case 130: -/* Line 1792 of yacc.c */ -#line 1165 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (2)].u.identifier))); -} - break; - case 131: /* Line 1792 of yacc.c */ -#line 1169 "dtool/src/cppparser/cppBison.yxx" +#line 1166 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (4)].u.identifier), (yyvsp[(4) - (4)].u.type))); + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (2)].u.identifier))); } break; case 132: /* Line 1792 of yacc.c */ -#line 1173 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (2)].u.identifier))); -} - break; - - case 133: -/* Line 1792 of yacc.c */ -#line 1177 "dtool/src/cppparser/cppBison.yxx" +#line 1170 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (4)].u.identifier), (yyvsp[(4) - (4)].u.type))); } break; + case 133: +/* Line 1792 of yacc.c */ +#line 1174 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (2)].u.identifier))); +} + break; + case 134: /* Line 1792 of yacc.c */ -#line 1181 "dtool/src/cppparser/cppBison.yxx" +#line 1178 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (4)].u.identifier), (yyvsp[(4) - (4)].u.type))); +} + break; + + case 135: +/* Line 1792 of yacc.c */ +#line 1182 "dtool/src/cppparser/cppBison.yxx" { CPPInstance *inst = new CPPInstance((yyvsp[(1) - (3)].u.type), (yyvsp[(2) - (3)].u.inst_ident), 0, (yylsp[(2) - (3)]).file); inst->set_initializer((yyvsp[(3) - (3)].u.expr)); @@ -4499,9 +4520,9 @@ yyreduce: } break; - case 135: + case 136: /* Line 1792 of yacc.c */ -#line 1187 "dtool/src/cppparser/cppBison.yxx" +#line 1188 "dtool/src/cppparser/cppBison.yxx" { (yyvsp[(3) - (4)].u.inst_ident)->add_modifier(IIT_const); CPPInstance *inst = new CPPInstance((yyvsp[(2) - (4)].u.type), (yyvsp[(3) - (4)].u.inst_ident), 0, (yylsp[(3) - (4)]).file); @@ -4510,43 +4531,43 @@ yyreduce: } break; - case 136: + case 137: /* Line 1792 of yacc.c */ -#line 1197 "dtool/src/cppparser/cppBison.yxx" +#line 1198 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; - case 137: + case 138: /* Line 1792 of yacc.c */ -#line 1201 "dtool/src/cppparser/cppBison.yxx" +#line 1202 "dtool/src/cppparser/cppBison.yxx" { yywarning("Not a type: " + (yyvsp[(1) - (1)].u.identifier)->get_fully_scoped_name(), (yylsp[(1) - (1)])); (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_unknown)); } break; - case 138: + case 139: /* Line 1792 of yacc.c */ -#line 1206 "dtool/src/cppparser/cppBison.yxx" +#line 1207 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert((yyval.u.type) != NULL); } break; - case 139: + case 140: /* Line 1792 of yacc.c */ -#line 1215 "dtool/src/cppparser/cppBison.yxx" +#line 1216 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; - case 140: + case 141: /* Line 1792 of yacc.c */ -#line 1219 "dtool/src/cppparser/cppBison.yxx" +#line 1220 "dtool/src/cppparser/cppBison.yxx" { // For an operator function. We implement this simply by building a // ficticious name for the function; in other respects it's just @@ -4562,89 +4583,98 @@ yyreduce: } break; - case 141: + case 142: /* Line 1792 of yacc.c */ -#line 1233 "dtool/src/cppparser/cppBison.yxx" +#line 1234 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; - case 142: + case 143: /* Line 1792 of yacc.c */ -#line 1238 "dtool/src/cppparser/cppBison.yxx" +#line 1239 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); +} + break; + + case 144: +/* Line 1792 of yacc.c */ +#line 1244 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; - case 143: + case 145: /* Line 1792 of yacc.c */ -#line 1243 "dtool/src/cppparser/cppBison.yxx" +#line 1249 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; - case 144: + case 146: /* Line 1792 of yacc.c */ -#line 1248 "dtool/src/cppparser/cppBison.yxx" +#line 1254 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } break; - case 145: + case 147: /* Line 1792 of yacc.c */ -#line 1253 "dtool/src/cppparser/cppBison.yxx" +#line 1259 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; - case 146: + case 148: /* Line 1792 of yacc.c */ -#line 1258 "dtool/src/cppparser/cppBison.yxx" +#line 1264 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; - case 147: + case 149: /* Line 1792 of yacc.c */ -#line 1263 "dtool/src/cppparser/cppBison.yxx" +#line 1269 "dtool/src/cppparser/cppBison.yxx" { // bitfield definition. We ignore the bitfield for now. (yyval.u.inst_ident) = (yyvsp[(1) - (3)].u.inst_ident); } break; - case 148: + case 150: /* Line 1792 of yacc.c */ -#line 1268 "dtool/src/cppparser/cppBison.yxx" +#line 1274 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); } break; - case 149: + case 151: /* Line 1792 of yacc.c */ -#line 1273 "dtool/src/cppparser/cppBison.yxx" +#line 1279 "dtool/src/cppparser/cppBison.yxx" { push_scope((yyvsp[(1) - (2)].u.inst_ident)->get_scope(current_scope, global_scope)); } break; - case 150: + case 152: /* Line 1792 of yacc.c */ -#line 1277 "dtool/src/cppparser/cppBison.yxx" +#line 1283 "dtool/src/cppparser/cppBison.yxx" { pop_scope(); (yyval.u.inst_ident) = (yyvsp[(1) - (6)].u.inst_ident); @@ -4660,86 +4690,70 @@ yyreduce: } break; - case 151: -/* Line 1792 of yacc.c */ -#line 1295 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.param_list) = new CPPParameterList; -} - break; - - case 152: -/* Line 1792 of yacc.c */ -#line 1299 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.param_list) = new CPPParameterList; - (yyval.u.param_list)->_includes_ellipsis = true; -} - break; - case 153: /* Line 1792 of yacc.c */ -#line 1304 "dtool/src/cppparser/cppBison.yxx" +#line 1301 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.param_list) = (yyvsp[(1) - (1)].u.param_list); + (yyval.u.param_list) = new CPPParameterList; } break; case 154: /* Line 1792 of yacc.c */ -#line 1308 "dtool/src/cppparser/cppBison.yxx" +#line 1305 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.param_list) = (yyvsp[(1) - (3)].u.param_list); + (yyval.u.param_list) = new CPPParameterList; (yyval.u.param_list)->_includes_ellipsis = true; } break; case 155: /* Line 1792 of yacc.c */ -#line 1313 "dtool/src/cppparser/cppBison.yxx" +#line 1310 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.param_list) = (yyvsp[(1) - (1)].u.param_list); +} + break; + + case 156: +/* Line 1792 of yacc.c */ +#line 1314 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.param_list) = (yyvsp[(1) - (3)].u.param_list); + (yyval.u.param_list)->_includes_ellipsis = true; +} + break; + + case 157: +/* Line 1792 of yacc.c */ +#line 1319 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.param_list) = (yyvsp[(1) - (2)].u.param_list); (yyval.u.param_list)->_includes_ellipsis = true; } break; - case 156: + case 158: /* Line 1792 of yacc.c */ -#line 1321 "dtool/src/cppparser/cppBison.yxx" +#line 1327 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.param_list) = new CPPParameterList; (yyval.u.param_list)->_parameters.push_back((yyvsp[(1) - (1)].u.instance)); } break; - case 157: + case 159: /* Line 1792 of yacc.c */ -#line 1326 "dtool/src/cppparser/cppBison.yxx" +#line 1332 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.param_list) = (yyvsp[(1) - (3)].u.param_list); (yyval.u.param_list)->_parameters.push_back((yyvsp[(3) - (3)].u.instance)); } break; - case 158: -/* Line 1792 of yacc.c */ -#line 1334 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (CPPExpression *)NULL; -} - break; - - case 159: -/* Line 1792 of yacc.c */ -#line 1338 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); -} - break; - case 160: /* Line 1792 of yacc.c */ -#line 1345 "dtool/src/cppparser/cppBison.yxx" +#line 1340 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; } @@ -4747,7 +4761,7 @@ yyreduce: case 161: /* Line 1792 of yacc.c */ -#line 1349 "dtool/src/cppparser/cppBison.yxx" +#line 1344 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); } @@ -4755,7 +4769,7 @@ yyreduce: case 162: /* Line 1792 of yacc.c */ -#line 1356 "dtool/src/cppparser/cppBison.yxx" +#line 1351 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; } @@ -4763,15 +4777,15 @@ yyreduce: case 163: /* Line 1792 of yacc.c */ -#line 1360 "dtool/src/cppparser/cppBison.yxx" +#line 1355 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = (CPPExpression *)NULL; + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); } break; case 164: /* Line 1792 of yacc.c */ -#line 1364 "dtool/src/cppparser/cppBison.yxx" +#line 1362 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; } @@ -4779,39 +4793,55 @@ yyreduce: case 165: /* Line 1792 of yacc.c */ -#line 1368 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); -} - break; - - case 166: -/* Line 1792 of yacc.c */ -#line 1372 "dtool/src/cppparser/cppBison.yxx" +#line 1366 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; } break; - case 170: + case 166: /* Line 1792 of yacc.c */ -#line 1385 "dtool/src/cppparser/cppBison.yxx" +#line 1370 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = (CPPExpression *)NULL; +} + break; + + case 167: +/* Line 1792 of yacc.c */ +#line 1374 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); +} + break; + + case 168: +/* Line 1792 of yacc.c */ +#line 1378 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = (CPPExpression *)NULL; +} + break; + + case 172: +/* Line 1792 of yacc.c */ +#line 1391 "dtool/src/cppparser/cppBison.yxx" { } break; - case 174: + case 176: /* Line 1792 of yacc.c */ -#line 1394 "dtool/src/cppparser/cppBison.yxx" +#line 1400 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.instance) = new CPPInstance((yyvsp[(1) - (3)].u.type), (yyvsp[(2) - (3)].u.inst_ident), 0, (yylsp[(2) - (3)]).file); (yyval.u.instance)->set_initializer((yyvsp[(3) - (3)].u.expr)); } break; - case 175: + case 177: /* Line 1792 of yacc.c */ -#line 1399 "dtool/src/cppparser/cppBison.yxx" +#line 1405 "dtool/src/cppparser/cppBison.yxx" { yywarning("Not a type: " + (yyvsp[(1) - (3)].u.identifier)->get_fully_scoped_name(), (yylsp[(1) - (3)])); CPPType *type = @@ -4821,9 +4851,9 @@ yyreduce: } break; - case 176: + case 178: /* Line 1792 of yacc.c */ -#line 1407 "dtool/src/cppparser/cppBison.yxx" +#line 1413 "dtool/src/cppparser/cppBison.yxx" { (yyvsp[(3) - (4)].u.inst_ident)->add_modifier(IIT_const); (yyval.u.instance) = new CPPInstance((yyvsp[(2) - (4)].u.type), (yyvsp[(3) - (4)].u.inst_ident), 0, (yylsp[(3) - (4)]).file); @@ -4831,9 +4861,9 @@ yyreduce: } break; - case 177: + case 179: /* Line 1792 of yacc.c */ -#line 1413 "dtool/src/cppparser/cppBison.yxx" +#line 1419 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_parameter)); @@ -4842,165 +4872,183 @@ yyreduce: } break; - case 178: -/* Line 1792 of yacc.c */ -#line 1423 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); -} - break; - - case 179: -/* Line 1792 of yacc.c */ -#line 1427 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); -} - break; - case 180: /* Line 1792 of yacc.c */ -#line 1431 "dtool/src/cppparser/cppBison.yxx" +#line 1429 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); } break; case 181: /* Line 1792 of yacc.c */ -#line 1435 "dtool/src/cppparser/cppBison.yxx" +#line 1433 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_const); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 182: /* Line 1792 of yacc.c */ -#line 1440 "dtool/src/cppparser/cppBison.yxx" +#line 1437 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_pointer); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 183: /* Line 1792 of yacc.c */ -#line 1445 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_reference); -} - break; - - case 184: -/* Line 1792 of yacc.c */ -#line 1450 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); -} - break; - - case 185: -/* Line 1792 of yacc.c */ -#line 1455 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); -} - break; - - case 186: -/* Line 1792 of yacc.c */ -#line 1460 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); -} - break; - - case 187: -/* Line 1792 of yacc.c */ -#line 1468 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); -} - break; - - case 188: -/* Line 1792 of yacc.c */ -#line 1472 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); -} - break; - - case 189: -/* Line 1792 of yacc.c */ -#line 1476 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); -} - break; - - case 190: -/* Line 1792 of yacc.c */ -#line 1480 "dtool/src/cppparser/cppBison.yxx" +#line 1441 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; - case 191: + case 184: /* Line 1792 of yacc.c */ -#line 1485 "dtool/src/cppparser/cppBison.yxx" +#line 1446 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); +} + break; + + case 185: +/* Line 1792 of yacc.c */ +#line 1451 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; - case 192: + case 186: /* Line 1792 of yacc.c */ -#line 1490 "dtool/src/cppparser/cppBison.yxx" +#line 1456 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; - case 193: + case 187: /* Line 1792 of yacc.c */ -#line 1495 "dtool/src/cppparser/cppBison.yxx" +#line 1461 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } break; - case 194: + case 188: /* Line 1792 of yacc.c */ -#line 1500 "dtool/src/cppparser/cppBison.yxx" +#line 1466 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; - case 195: + case 189: /* Line 1792 of yacc.c */ -#line 1505 "dtool/src/cppparser/cppBison.yxx" +#line 1471 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; + case 190: +/* Line 1792 of yacc.c */ +#line 1479 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); +} + break; + + case 191: +/* Line 1792 of yacc.c */ +#line 1483 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); +} + break; + + case 192: +/* Line 1792 of yacc.c */ +#line 1487 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); +} + break; + + case 193: +/* Line 1792 of yacc.c */ +#line 1491 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_const); +} + break; + + case 194: +/* Line 1792 of yacc.c */ +#line 1496 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); +} + break; + + case 195: +/* Line 1792 of yacc.c */ +#line 1501 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_pointer); +} + break; + case 196: /* Line 1792 of yacc.c */ -#line 1510 "dtool/src/cppparser/cppBison.yxx" +#line 1506 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_reference); +} + break; + + case 197: +/* Line 1792 of yacc.c */ +#line 1511 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); +} + break; + + case 198: +/* Line 1792 of yacc.c */ +#line 1516 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); +} + break; + + case 199: +/* Line 1792 of yacc.c */ +#line 1521 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); +} + break; + + case 200: +/* Line 1792 of yacc.c */ +#line 1526 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (7)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); @@ -5008,80 +5056,89 @@ yyreduce: } break; - case 197: + case 201: /* Line 1792 of yacc.c */ -#line 1516 "dtool/src/cppparser/cppBison.yxx" +#line 1532 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); } break; - case 198: + case 202: /* Line 1792 of yacc.c */ -#line 1524 "dtool/src/cppparser/cppBison.yxx" +#line 1540 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); } break; - case 199: + case 203: /* Line 1792 of yacc.c */ -#line 1528 "dtool/src/cppparser/cppBison.yxx" +#line 1544 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; - case 200: + case 204: /* Line 1792 of yacc.c */ -#line 1533 "dtool/src/cppparser/cppBison.yxx" +#line 1549 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); +} + break; + + case 205: +/* Line 1792 of yacc.c */ +#line 1554 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; - case 201: + case 206: /* Line 1792 of yacc.c */ -#line 1538 "dtool/src/cppparser/cppBison.yxx" +#line 1559 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; - case 202: + case 207: /* Line 1792 of yacc.c */ -#line 1543 "dtool/src/cppparser/cppBison.yxx" +#line 1564 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } break; - case 203: + case 208: /* Line 1792 of yacc.c */ -#line 1548 "dtool/src/cppparser/cppBison.yxx" +#line 1569 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; - case 204: + case 209: /* Line 1792 of yacc.c */ -#line 1553 "dtool/src/cppparser/cppBison.yxx" +#line 1574 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; - case 205: + case 210: /* Line 1792 of yacc.c */ -#line 1558 "dtool/src/cppparser/cppBison.yxx" +#line 1579 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.inst_ident) = (yyvsp[(2) - (7)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); @@ -5089,52 +5146,11 @@ yyreduce: } break; - case 206: -/* Line 1792 of yacc.c */ -#line 1567 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); -} - break; - - case 207: -/* Line 1792 of yacc.c */ -#line 1571 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); - assert((yyval.u.type) != NULL); -} - break; - - case 208: -/* Line 1792 of yacc.c */ -#line 1576 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); -} - break; - - case 209: -/* Line 1792 of yacc.c */ -#line 1580 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); -} - break; - - case 210: -/* Line 1792 of yacc.c */ -#line 1584 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); -} - break; - case 211: /* Line 1792 of yacc.c */ #line 1588 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.enum_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; @@ -5142,6 +5158,47 @@ yyreduce: /* Line 1792 of yacc.c */ #line 1592 "dtool/src/cppparser/cppBison.yxx" { + (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + assert((yyval.u.type) != NULL); +} + break; + + case 213: +/* Line 1792 of yacc.c */ +#line 1597 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); +} + break; + + case 214: +/* Line 1792 of yacc.c */ +#line 1601 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); +} + break; + + case 215: +/* Line 1792 of yacc.c */ +#line 1605 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); +} + break; + + case 216: +/* Line 1792 of yacc.c */ +#line 1609 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.enum_type)); +} + break; + + case 217: +/* Line 1792 of yacc.c */ +#line 1613 "dtool/src/cppparser/cppBison.yxx" + { CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.type) = type; @@ -5158,9 +5215,9 @@ yyreduce: } break; - case 213: + case 218: /* Line 1792 of yacc.c */ -#line 1608 "dtool/src/cppparser/cppBison.yxx" +#line 1629 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = (yyvsp[(2) - (4)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -5178,52 +5235,11 @@ yyreduce: } break; - case 214: -/* Line 1792 of yacc.c */ -#line 1627 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); -} - break; - - case 215: -/* Line 1792 of yacc.c */ -#line 1631 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); - assert((yyval.u.decl) != NULL); -} - break; - - case 216: -/* Line 1792 of yacc.c */ -#line 1636 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); -} - break; - - case 217: -/* Line 1792 of yacc.c */ -#line 1640 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); -} - break; - - case 218: -/* Line 1792 of yacc.c */ -#line 1644 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[(1) - (1)].u.struct_type))); -} - break; - case 219: /* Line 1792 of yacc.c */ #line 1648 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[(1) - (1)].u.enum_type))); + (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; @@ -5231,6 +5247,47 @@ yyreduce: /* Line 1792 of yacc.c */ #line 1652 "dtool/src/cppparser/cppBison.yxx" { + (yyval.u.decl) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + assert((yyval.u.decl) != NULL); +} + break; + + case 221: +/* Line 1792 of yacc.c */ +#line 1657 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.decl) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); +} + break; + + case 222: +/* Line 1792 of yacc.c */ +#line 1661 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); +} + break; + + case 223: +/* Line 1792 of yacc.c */ +#line 1665 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[(1) - (1)].u.struct_type))); +} + break; + + case 224: +/* Line 1792 of yacc.c */ +#line 1669 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[(1) - (1)].u.enum_type))); +} + break; + + case 225: +/* Line 1792 of yacc.c */ +#line 1673 "dtool/src/cppparser/cppBison.yxx" + { CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.decl) = type; @@ -5247,9 +5304,9 @@ yyreduce: } break; - case 221: + case 226: /* Line 1792 of yacc.c */ -#line 1668 "dtool/src/cppparser/cppBison.yxx" +#line 1689 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = (yyvsp[(2) - (4)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -5267,9 +5324,9 @@ yyreduce: } break; - case 222: + case 227: /* Line 1792 of yacc.c */ -#line 1684 "dtool/src/cppparser/cppBison.yxx" +#line 1705 "dtool/src/cppparser/cppBison.yxx" { yywarning(string("C++ does not permit forward declaration of untyped enum ") + (yyvsp[(2) - (2)].u.identifier)->get_fully_scoped_name(), (yylsp[(1) - (2)])); @@ -5289,34 +5346,34 @@ yyreduce: } break; - case 223: + case 228: /* Line 1792 of yacc.c */ -#line 1705 "dtool/src/cppparser/cppBison.yxx" +#line 1726 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; - case 224: + case 229: /* Line 1792 of yacc.c */ -#line 1709 "dtool/src/cppparser/cppBison.yxx" +#line 1730 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert((yyval.u.type) != NULL); } break; - case 225: + case 230: /* Line 1792 of yacc.c */ -#line 1714 "dtool/src/cppparser/cppBison.yxx" +#line 1735 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; - case 226: + case 231: /* Line 1792 of yacc.c */ -#line 1718 "dtool/src/cppparser/cppBison.yxx" +#line 1739 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -5334,9 +5391,9 @@ yyreduce: } break; - case 227: + case 232: /* Line 1792 of yacc.c */ -#line 1734 "dtool/src/cppparser/cppBison.yxx" +#line 1755 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -5354,9 +5411,9 @@ yyreduce: } break; - case 228: + case 233: /* Line 1792 of yacc.c */ -#line 1753 "dtool/src/cppparser/cppBison.yxx" +#line 1774 "dtool/src/cppparser/cppBison.yxx" { CPPInstance *inst = new CPPInstance((yyvsp[(1) - (2)].u.type), (yyvsp[(2) - (2)].u.inst_ident), 0, (yylsp[(1) - (2)]).file); (yyval.u.type) = inst->_type; @@ -5364,9 +5421,9 @@ yyreduce: } break; - case 229: + case 234: /* Line 1792 of yacc.c */ -#line 1759 "dtool/src/cppparser/cppBison.yxx" +#line 1780 "dtool/src/cppparser/cppBison.yxx" { (yyvsp[(3) - (3)].u.inst_ident)->add_modifier(IIT_const); CPPInstance *inst = new CPPInstance((yyvsp[(2) - (3)].u.type), (yyvsp[(3) - (3)].u.inst_ident), 0, (yylsp[(1) - (3)]).file); @@ -5375,9 +5432,9 @@ yyreduce: } break; - case 230: + case 235: /* Line 1792 of yacc.c */ -#line 1769 "dtool/src/cppparser/cppBison.yxx" +#line 1790 "dtool/src/cppparser/cppBison.yxx" { CPPVisibility starting_vis = ((yyvsp[(1) - (2)].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; @@ -5393,9 +5450,9 @@ yyreduce: } break; - case 231: + case 236: /* Line 1792 of yacc.c */ -#line 1783 "dtool/src/cppparser/cppBison.yxx" +#line 1804 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.struct_type) = current_struct; current_struct->_incomplete = false; @@ -5404,9 +5461,9 @@ yyreduce: } break; - case 232: + case 237: /* Line 1792 of yacc.c */ -#line 1793 "dtool/src/cppparser/cppBison.yxx" +#line 1814 "dtool/src/cppparser/cppBison.yxx" { CPPVisibility starting_vis = ((yyvsp[(1) - (2)].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; @@ -5428,9 +5485,9 @@ yyreduce: } break; - case 233: + case 238: /* Line 1792 of yacc.c */ -#line 1813 "dtool/src/cppparser/cppBison.yxx" +#line 1834 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.struct_type) = current_struct; current_struct->_incomplete = false; @@ -5439,138 +5496,138 @@ yyreduce: } break; - case 238: + case 243: /* Line 1792 of yacc.c */ -#line 1833 "dtool/src/cppparser/cppBison.yxx" +#line 1854 "dtool/src/cppparser/cppBison.yxx" { current_struct->append_derivation((yyvsp[(2) - (2)].u.type), V_public, false); } break; - case 239: + case 244: /* Line 1792 of yacc.c */ -#line 1837 "dtool/src/cppparser/cppBison.yxx" +#line 1858 "dtool/src/cppparser/cppBison.yxx" { current_struct->append_derivation((yyvsp[(2) - (2)].u.type), V_protected, false); } break; - case 240: + case 245: /* Line 1792 of yacc.c */ -#line 1841 "dtool/src/cppparser/cppBison.yxx" +#line 1862 "dtool/src/cppparser/cppBison.yxx" { current_struct->append_derivation((yyvsp[(2) - (2)].u.type), V_private, false); } break; - case 241: -/* Line 1792 of yacc.c */ -#line 1845 "dtool/src/cppparser/cppBison.yxx" - { - current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_public, true); -} - break; - - case 242: -/* Line 1792 of yacc.c */ -#line 1849 "dtool/src/cppparser/cppBison.yxx" - { - current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_protected, true); -} - break; - - case 243: -/* Line 1792 of yacc.c */ -#line 1853 "dtool/src/cppparser/cppBison.yxx" - { - current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_private, true); -} - break; - - case 244: -/* Line 1792 of yacc.c */ -#line 1857 "dtool/src/cppparser/cppBison.yxx" - { - current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_public, true); -} - break; - - case 245: -/* Line 1792 of yacc.c */ -#line 1861 "dtool/src/cppparser/cppBison.yxx" - { - current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_protected, true); -} - break; - case 246: /* Line 1792 of yacc.c */ -#line 1865 "dtool/src/cppparser/cppBison.yxx" +#line 1866 "dtool/src/cppparser/cppBison.yxx" { - current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_private, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_public, true); } break; case 247: /* Line 1792 of yacc.c */ -#line 1872 "dtool/src/cppparser/cppBison.yxx" +#line 1870 "dtool/src/cppparser/cppBison.yxx" + { + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_protected, true); +} + break; + + case 248: +/* Line 1792 of yacc.c */ +#line 1874 "dtool/src/cppparser/cppBison.yxx" + { + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_private, true); +} + break; + + case 249: +/* Line 1792 of yacc.c */ +#line 1878 "dtool/src/cppparser/cppBison.yxx" + { + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_public, true); +} + break; + + case 250: +/* Line 1792 of yacc.c */ +#line 1882 "dtool/src/cppparser/cppBison.yxx" + { + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_protected, true); +} + break; + + case 251: +/* Line 1792 of yacc.c */ +#line 1886 "dtool/src/cppparser/cppBison.yxx" + { + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_private, true); +} + break; + + case 252: +/* Line 1792 of yacc.c */ +#line 1893 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.enum_type) = current_enum; current_enum = NULL; } break; - case 248: + case 253: /* Line 1792 of yacc.c */ -#line 1880 "dtool/src/cppparser/cppBison.yxx" +#line 1901 "dtool/src/cppparser/cppBison.yxx" { current_enum = new CPPEnumType((yyvsp[(2) - (4)].u.identifier), (yyvsp[(4) - (4)].u.type), current_scope, (yylsp[(1) - (4)]).file); } break; - case 249: + case 254: /* Line 1792 of yacc.c */ -#line 1884 "dtool/src/cppparser/cppBison.yxx" +#line 1905 "dtool/src/cppparser/cppBison.yxx" { current_enum = new CPPEnumType((yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file); } break; - case 250: + case 255: /* Line 1792 of yacc.c */ -#line 1888 "dtool/src/cppparser/cppBison.yxx" +#line 1909 "dtool/src/cppparser/cppBison.yxx" { current_enum = new CPPEnumType(NULL, (yyvsp[(3) - (3)].u.type), current_scope, (yylsp[(1) - (3)]).file); } break; - case 251: + case 256: /* Line 1792 of yacc.c */ -#line 1892 "dtool/src/cppparser/cppBison.yxx" +#line 1913 "dtool/src/cppparser/cppBison.yxx" { current_enum = new CPPEnumType(NULL, current_scope, (yylsp[(1) - (1)]).file); } break; - case 252: + case 257: /* Line 1792 of yacc.c */ -#line 1899 "dtool/src/cppparser/cppBison.yxx" +#line 1920 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; - case 253: + case 258: /* Line 1792 of yacc.c */ -#line 1903 "dtool/src/cppparser/cppBison.yxx" +#line 1924 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); } break; - case 255: + case 260: /* Line 1792 of yacc.c */ -#line 1911 "dtool/src/cppparser/cppBison.yxx" +#line 1932 "dtool/src/cppparser/cppBison.yxx" { assert(current_enum != NULL); CPPInstance *inst = current_enum->add_element((yyvsp[(2) - (3)].u.identifier)->get_simple_name()); @@ -5578,9 +5635,9 @@ yyreduce: } break; - case 256: + case 261: /* Line 1792 of yacc.c */ -#line 1917 "dtool/src/cppparser/cppBison.yxx" +#line 1938 "dtool/src/cppparser/cppBison.yxx" { assert(current_enum != NULL); CPPInstance *inst = current_enum->add_element((yyvsp[(2) - (5)].u.identifier)->get_simple_name(), (yyvsp[(4) - (5)].u.expr)); @@ -5588,9 +5645,9 @@ yyreduce: } break; - case 258: + case 263: /* Line 1792 of yacc.c */ -#line 1926 "dtool/src/cppparser/cppBison.yxx" +#line 1947 "dtool/src/cppparser/cppBison.yxx" { assert(current_enum != NULL); CPPInstance *inst = current_enum->add_element((yyvsp[(2) - (2)].u.identifier)->get_simple_name()); @@ -5598,9 +5655,9 @@ yyreduce: } break; - case 259: + case 264: /* Line 1792 of yacc.c */ -#line 1932 "dtool/src/cppparser/cppBison.yxx" +#line 1953 "dtool/src/cppparser/cppBison.yxx" { assert(current_enum != NULL); CPPInstance *inst = current_enum->add_element((yyvsp[(2) - (4)].u.identifier)->get_simple_name(), (yyvsp[(4) - (4)].u.expr)); @@ -5608,41 +5665,41 @@ yyreduce: } break; - case 260: + case 265: /* Line 1792 of yacc.c */ -#line 1941 "dtool/src/cppparser/cppBison.yxx" +#line 1962 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_enum; } break; - case 261: + case 266: /* Line 1792 of yacc.c */ -#line 1948 "dtool/src/cppparser/cppBison.yxx" +#line 1969 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_class; } break; - case 262: + case 267: /* Line 1792 of yacc.c */ -#line 1952 "dtool/src/cppparser/cppBison.yxx" +#line 1973 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_struct; } break; - case 263: + case 268: /* Line 1792 of yacc.c */ -#line 1956 "dtool/src/cppparser/cppBison.yxx" +#line 1977 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_union; } break; - case 264: + case 269: /* Line 1792 of yacc.c */ -#line 1963 "dtool/src/cppparser/cppBison.yxx" +#line 1984 "dtool/src/cppparser/cppBison.yxx" { CPPScope *scope = (yyvsp[(2) - (3)].u.identifier)->find_scope(current_scope, global_scope, current_lexer); if (scope == NULL) { @@ -5662,80 +5719,39 @@ yyreduce: } break; - case 265: + case 270: /* Line 1792 of yacc.c */ -#line 1981 "dtool/src/cppparser/cppBison.yxx" +#line 2002 "dtool/src/cppparser/cppBison.yxx" { pop_scope(); } break; - case 267: -/* Line 1792 of yacc.c */ -#line 1989 "dtool/src/cppparser/cppBison.yxx" - { - CPPUsing *using_decl = new CPPUsing((yyvsp[(2) - (2)].u.identifier), false, (yylsp[(1) - (2)]).file); - current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[(1) - (2)])); - current_scope->add_using(using_decl, global_scope, current_lexer); -} - break; - - case 268: -/* Line 1792 of yacc.c */ -#line 1995 "dtool/src/cppparser/cppBison.yxx" - { - CPPUsing *using_decl = new CPPUsing((yyvsp[(3) - (3)].u.identifier), true, (yylsp[(1) - (3)]).file); - current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[(1) - (3)])); - current_scope->add_using(using_decl, global_scope, current_lexer); -} - break; - case 272: /* Line 1792 of yacc.c */ #line 2010 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_bool); + CPPUsing *using_decl = new CPPUsing((yyvsp[(2) - (2)].u.identifier), false, (yylsp[(1) - (2)]).file); + current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[(1) - (2)])); + current_scope->add_using(using_decl, global_scope, current_lexer); } break; case 273: /* Line 1792 of yacc.c */ -#line 2014 "dtool/src/cppparser/cppBison.yxx" +#line 2016 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char); -} - break; - - case 274: -/* Line 1792 of yacc.c */ -#line 2018 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_wchar_t); -} - break; - - case 275: -/* Line 1792 of yacc.c */ -#line 2022 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char16_t); -} - break; - - case 276: -/* Line 1792 of yacc.c */ -#line 2026 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char32_t); + CPPUsing *using_decl = new CPPUsing((yyvsp[(3) - (3)].u.identifier), true, (yylsp[(1) - (3)]).file); + current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[(1) - (3)])); + current_scope->add_using(using_decl, global_scope, current_lexer); } break; case 277: /* Line 1792 of yacc.c */ -#line 2030 "dtool/src/cppparser/cppBison.yxx" +#line 2031 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, - CPPSimpleType::F_short); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_bool); } break; @@ -5743,58 +5759,99 @@ yyreduce: /* Line 1792 of yacc.c */ #line 2035 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, - CPPSimpleType::F_long); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char); } break; case 279: /* Line 1792 of yacc.c */ -#line 2040 "dtool/src/cppparser/cppBison.yxx" +#line 2039 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_wchar_t); +} + break; + + case 280: +/* Line 1792 of yacc.c */ +#line 2043 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char16_t); +} + break; + + case 281: +/* Line 1792 of yacc.c */ +#line 2047 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char32_t); +} + break; + + case 282: +/* Line 1792 of yacc.c */ +#line 2051 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, + CPPSimpleType::F_short); +} + break; + + case 283: +/* Line 1792 of yacc.c */ +#line 2056 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, + CPPSimpleType::F_long); +} + break; + + case 284: +/* Line 1792 of yacc.c */ +#line 2061 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_longlong); } break; - case 280: + case 285: /* Line 1792 of yacc.c */ -#line 2045 "dtool/src/cppparser/cppBison.yxx" +#line 2066 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_unsigned); } break; - case 281: + case 286: /* Line 1792 of yacc.c */ -#line 2050 "dtool/src/cppparser/cppBison.yxx" +#line 2071 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_signed); } break; - case 282: + case 287: /* Line 1792 of yacc.c */ -#line 2055 "dtool/src/cppparser/cppBison.yxx" +#line 2076 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int); } break; - case 283: + case 288: /* Line 1792 of yacc.c */ -#line 2059 "dtool/src/cppparser/cppBison.yxx" +#line 2080 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_short; } break; - case 284: + case 289: /* Line 1792 of yacc.c */ -#line 2064 "dtool/src/cppparser/cppBison.yxx" +#line 2085 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); if ((yyval.u.simple_type)->_flags & CPPSimpleType::F_long) { @@ -5805,205 +5862,165 @@ yyreduce: } break; - case 285: + case 290: /* Line 1792 of yacc.c */ -#line 2073 "dtool/src/cppparser/cppBison.yxx" +#line 2094 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_unsigned; } break; - case 286: + case 291: /* Line 1792 of yacc.c */ -#line 2078 "dtool/src/cppparser/cppBison.yxx" +#line 2099 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_signed; } break; - case 287: + case 292: /* Line 1792 of yacc.c */ -#line 2086 "dtool/src/cppparser/cppBison.yxx" +#line 2107 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float); } break; - case 288: + case 293: /* Line 1792 of yacc.c */ -#line 2090 "dtool/src/cppparser/cppBison.yxx" +#line 2111 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float, CPPSimpleType::F_long); } break; - case 289: + case 294: /* Line 1792 of yacc.c */ -#line 2095 "dtool/src/cppparser/cppBison.yxx" +#line 2116 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double); } break; - case 290: + case 295: /* Line 1792 of yacc.c */ -#line 2099 "dtool/src/cppparser/cppBison.yxx" +#line 2120 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float, CPPSimpleType::F_longlong); } break; - case 291: + case 296: /* Line 1792 of yacc.c */ -#line 2104 "dtool/src/cppparser/cppBison.yxx" +#line 2125 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double, CPPSimpleType::F_long); } break; - case 292: + case 297: /* Line 1792 of yacc.c */ -#line 2112 "dtool/src/cppparser/cppBison.yxx" +#line 2133 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_void); } break; - case 293: + case 298: /* Line 1792 of yacc.c */ -#line 2121 "dtool/src/cppparser/cppBison.yxx" +#line 2142 "dtool/src/cppparser/cppBison.yxx" { current_lexer->_resolve_identifiers = false; } break; - case 294: + case 299: /* Line 1792 of yacc.c */ -#line 2125 "dtool/src/cppparser/cppBison.yxx" +#line 2146 "dtool/src/cppparser/cppBison.yxx" { current_lexer->_resolve_identifiers = true; } break; - case 297: -/* Line 1792 of yacc.c */ -#line 2137 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - - case 298: -/* Line 1792 of yacc.c */ -#line 2140 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - - case 299: -/* Line 1792 of yacc.c */ -#line 2143 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - - case 300: -/* Line 1792 of yacc.c */ -#line 2146 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - - case 301: -/* Line 1792 of yacc.c */ -#line 2149 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - case 302: /* Line 1792 of yacc.c */ -#line 2152 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - - case 303: -/* Line 1792 of yacc.c */ -#line 2155 "dtool/src/cppparser/cppBison.yxx" - { -} - break; - - case 304: -/* Line 1792 of yacc.c */ #line 2158 "dtool/src/cppparser/cppBison.yxx" { } break; - case 379: + case 303: +/* Line 1792 of yacc.c */ +#line 2161 "dtool/src/cppparser/cppBison.yxx" + { +} + break; + + case 304: +/* Line 1792 of yacc.c */ +#line 2164 "dtool/src/cppparser/cppBison.yxx" + { +} + break; + + case 305: +/* Line 1792 of yacc.c */ +#line 2167 "dtool/src/cppparser/cppBison.yxx" + { +} + break; + + case 306: +/* Line 1792 of yacc.c */ +#line 2170 "dtool/src/cppparser/cppBison.yxx" + { +} + break; + + case 307: +/* Line 1792 of yacc.c */ +#line 2173 "dtool/src/cppparser/cppBison.yxx" + { +} + break; + + case 308: +/* Line 1792 of yacc.c */ +#line 2176 "dtool/src/cppparser/cppBison.yxx" + { +} + break; + + case 309: /* Line 1792 of yacc.c */ #line 2179 "dtool/src/cppparser/cppBison.yxx" { } break; - case 403: + case 384: /* Line 1792 of yacc.c */ -#line 2188 "dtool/src/cppparser/cppBison.yxx" +#line 2200 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = (CPPExpression *)NULL; -} - break; - - case 404: -/* Line 1792 of yacc.c */ -#line 2192 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); -} - break; - - case 405: -/* Line 1792 of yacc.c */ -#line 2199 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (CPPExpression *)NULL; -} - break; - - case 406: -/* Line 1792 of yacc.c */ -#line 2203 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); -} - break; - - case 407: -/* Line 1792 of yacc.c */ -#line 2210 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 408: /* Line 1792 of yacc.c */ -#line 2214 "dtool/src/cppparser/cppBison.yxx" +#line 2209 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(',', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); + (yyval.u.expr) = (CPPExpression *)NULL; } break; case 409: /* Line 1792 of yacc.c */ -#line 2221 "dtool/src/cppparser/cppBison.yxx" +#line 2213 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } @@ -6011,55 +6028,95 @@ yyreduce: case 410: /* Line 1792 of yacc.c */ -#line 2225 "dtool/src/cppparser/cppBison.yxx" +#line 2220 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); + (yyval.u.expr) = (CPPExpression *)NULL; } break; case 411: /* Line 1792 of yacc.c */ -#line 2229 "dtool/src/cppparser/cppBison.yxx" +#line 2224 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 412: /* Line 1792 of yacc.c */ -#line 2233 "dtool/src/cppparser/cppBison.yxx" +#line 2231 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 413: /* Line 1792 of yacc.c */ -#line 2237 "dtool/src/cppparser/cppBison.yxx" +#line 2235 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); + (yyval.u.expr) = new CPPExpression(',', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 414: /* Line 1792 of yacc.c */ -#line 2241 "dtool/src/cppparser/cppBison.yxx" +#line 2242 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 415: /* Line 1792 of yacc.c */ -#line 2245 "dtool/src/cppparser/cppBison.yxx" +#line 2246 "dtool/src/cppparser/cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); } break; case 416: /* Line 1792 of yacc.c */ -#line 2249 "dtool/src/cppparser/cppBison.yxx" +#line 2250 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); +} + break; + + case 417: +/* Line 1792 of yacc.c */ +#line 2254 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); +} + break; + + case 418: +/* Line 1792 of yacc.c */ +#line 2258 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); +} + break; + + case 419: +/* Line 1792 of yacc.c */ +#line 2262 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 420: +/* Line 1792 of yacc.c */ +#line 2266 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 421: +/* Line 1792 of yacc.c */ +#line 2270 "dtool/src/cppparser/cppBison.yxx" { if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); @@ -6073,241 +6130,241 @@ yyreduce: } break; - case 417: + case 422: /* Line 1792 of yacc.c */ -#line 2261 "dtool/src/cppparser/cppBison.yxx" +#line 2282 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[(2) - (2)].u.expr)); } break; - case 418: + case 423: /* Line 1792 of yacc.c */ -#line 2265 "dtool/src/cppparser/cppBison.yxx" +#line 2286 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); } break; - case 419: + case 424: /* Line 1792 of yacc.c */ -#line 2269 "dtool/src/cppparser/cppBison.yxx" +#line 2290 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 420: + case 425: /* Line 1792 of yacc.c */ -#line 2273 "dtool/src/cppparser/cppBison.yxx" +#line 2294 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 421: + case 426: /* Line 1792 of yacc.c */ -#line 2277 "dtool/src/cppparser/cppBison.yxx" +#line 2298 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 422: + case 427: /* Line 1792 of yacc.c */ -#line 2281 "dtool/src/cppparser/cppBison.yxx" +#line 2302 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 423: + case 428: /* Line 1792 of yacc.c */ -#line 2285 "dtool/src/cppparser/cppBison.yxx" +#line 2306 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 424: + case 429: /* Line 1792 of yacc.c */ -#line 2289 "dtool/src/cppparser/cppBison.yxx" +#line 2310 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 425: + case 430: /* Line 1792 of yacc.c */ -#line 2293 "dtool/src/cppparser/cppBison.yxx" +#line 2314 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 426: + case 431: /* Line 1792 of yacc.c */ -#line 2297 "dtool/src/cppparser/cppBison.yxx" +#line 2318 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 427: + case 432: /* Line 1792 of yacc.c */ -#line 2301 "dtool/src/cppparser/cppBison.yxx" +#line 2322 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 428: + case 433: /* Line 1792 of yacc.c */ -#line 2305 "dtool/src/cppparser/cppBison.yxx" +#line 2326 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 429: + case 434: /* Line 1792 of yacc.c */ -#line 2309 "dtool/src/cppparser/cppBison.yxx" +#line 2330 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 430: + case 435: /* Line 1792 of yacc.c */ -#line 2313 "dtool/src/cppparser/cppBison.yxx" +#line 2334 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 431: + case 436: /* Line 1792 of yacc.c */ -#line 2317 "dtool/src/cppparser/cppBison.yxx" +#line 2338 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 432: + case 437: /* Line 1792 of yacc.c */ -#line 2321 "dtool/src/cppparser/cppBison.yxx" +#line 2342 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 433: + case 438: /* Line 1792 of yacc.c */ -#line 2325 "dtool/src/cppparser/cppBison.yxx" +#line 2346 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 434: + case 439: /* Line 1792 of yacc.c */ -#line 2329 "dtool/src/cppparser/cppBison.yxx" +#line 2350 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 435: + case 440: /* Line 1792 of yacc.c */ -#line 2333 "dtool/src/cppparser/cppBison.yxx" +#line 2354 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); } break; - case 436: + case 441: /* Line 1792 of yacc.c */ -#line 2337 "dtool/src/cppparser/cppBison.yxx" +#line 2358 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; - case 437: + case 442: /* Line 1792 of yacc.c */ -#line 2341 "dtool/src/cppparser/cppBison.yxx" +#line 2362 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; - case 438: + case 443: /* Line 1792 of yacc.c */ -#line 2345 "dtool/src/cppparser/cppBison.yxx" +#line 2366 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); } break; - case 439: + case 444: /* Line 1792 of yacc.c */ -#line 2349 "dtool/src/cppparser/cppBison.yxx" +#line 2370 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 440: + case 445: /* Line 1792 of yacc.c */ -#line 2353 "dtool/src/cppparser/cppBison.yxx" +#line 2374 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 441: + case 446: /* Line 1792 of yacc.c */ -#line 2357 "dtool/src/cppparser/cppBison.yxx" +#line 2378 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); } break; - case 442: + case 447: /* Line 1792 of yacc.c */ -#line 2365 "dtool/src/cppparser/cppBison.yxx" +#line 2386 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; - case 443: + case 448: /* Line 1792 of yacc.c */ -#line 2369 "dtool/src/cppparser/cppBison.yxx" +#line 2390 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); } break; - case 444: + case 449: /* Line 1792 of yacc.c */ -#line 2373 "dtool/src/cppparser/cppBison.yxx" +#line 2394 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); } break; - case 445: + case 450: /* Line 1792 of yacc.c */ -#line 2377 "dtool/src/cppparser/cppBison.yxx" +#line 2398 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); } break; - case 446: + case 451: /* Line 1792 of yacc.c */ -#line 2381 "dtool/src/cppparser/cppBison.yxx" +#line 2402 "dtool/src/cppparser/cppBison.yxx" { // A constructor call. CPPType *type = (yyvsp[(1) - (4)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); @@ -6316,9 +6373,9 @@ yyreduce: } break; - case 447: + case 452: /* Line 1792 of yacc.c */ -#line 2388 "dtool/src/cppparser/cppBison.yxx" +#line 2409 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int)); @@ -6326,9 +6383,9 @@ yyreduce: } break; - case 448: + case 453: /* Line 1792 of yacc.c */ -#line 2394 "dtool/src/cppparser/cppBison.yxx" +#line 2415 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char)); @@ -6336,9 +6393,9 @@ yyreduce: } break; - case 449: + case 454: /* Line 1792 of yacc.c */ -#line 2400 "dtool/src/cppparser/cppBison.yxx" +#line 2421 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_wchar_t)); @@ -6346,9 +6403,9 @@ yyreduce: } break; - case 450: + case 455: /* Line 1792 of yacc.c */ -#line 2406 "dtool/src/cppparser/cppBison.yxx" +#line 2427 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char16_t)); @@ -6356,9 +6413,9 @@ yyreduce: } break; - case 451: + case 456: /* Line 1792 of yacc.c */ -#line 2412 "dtool/src/cppparser/cppBison.yxx" +#line 2433 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char32_t)); @@ -6366,9 +6423,9 @@ yyreduce: } break; - case 452: + case 457: /* Line 1792 of yacc.c */ -#line 2418 "dtool/src/cppparser/cppBison.yxx" +#line 2439 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_bool)); @@ -6376,9 +6433,9 @@ yyreduce: } break; - case 453: + case 458: /* Line 1792 of yacc.c */ -#line 2424 "dtool/src/cppparser/cppBison.yxx" +#line 2445 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, @@ -6387,9 +6444,9 @@ yyreduce: } break; - case 454: + case 459: /* Line 1792 of yacc.c */ -#line 2431 "dtool/src/cppparser/cppBison.yxx" +#line 2452 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, @@ -6398,9 +6455,9 @@ yyreduce: } break; - case 455: + case 460: /* Line 1792 of yacc.c */ -#line 2438 "dtool/src/cppparser/cppBison.yxx" +#line 2459 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, @@ -6409,9 +6466,9 @@ yyreduce: } break; - case 456: + case 461: /* Line 1792 of yacc.c */ -#line 2445 "dtool/src/cppparser/cppBison.yxx" +#line 2466 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, @@ -6420,9 +6477,9 @@ yyreduce: } break; - case 457: + case 462: /* Line 1792 of yacc.c */ -#line 2452 "dtool/src/cppparser/cppBison.yxx" +#line 2473 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_float)); @@ -6430,9 +6487,9 @@ yyreduce: } break; - case 458: + case 463: /* Line 1792 of yacc.c */ -#line 2458 "dtool/src/cppparser/cppBison.yxx" +#line 2479 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_double)); @@ -6440,409 +6497,49 @@ yyreduce: } break; - case 459: -/* Line 1792 of yacc.c */ -#line 2464 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); -} - break; - - case 460: -/* Line 1792 of yacc.c */ -#line 2468 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (2)].u.type))); -} - break; - - case 461: -/* Line 1792 of yacc.c */ -#line 2472 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (5)].u.type), (yyvsp[(4) - (5)].u.expr))); -} - break; - - case 462: -/* Line 1792 of yacc.c */ -#line 2476 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); -} - break; - - case 463: -/* Line 1792 of yacc.c */ -#line 2480 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); -} - break; - case 464: /* Line 1792 of yacc.c */ -#line 2484 "dtool/src/cppparser/cppBison.yxx" +#line 2485 "dtool/src/cppparser/cppBison.yxx" { - if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { - (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); - (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; - } else if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_real) { - (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); - (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; - } else { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[(2) - (2)].u.expr)); - } + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); } break; case 465: /* Line 1792 of yacc.c */ -#line 2496 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[(2) - (2)].u.expr)); -} - break; - - case 466: -/* Line 1792 of yacc.c */ -#line 2500 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); -} - break; - - case 467: -/* Line 1792 of yacc.c */ -#line 2504 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 468: -/* Line 1792 of yacc.c */ -#line 2508 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 469: -/* Line 1792 of yacc.c */ -#line 2512 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 470: -/* Line 1792 of yacc.c */ -#line 2516 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 471: -/* Line 1792 of yacc.c */ -#line 2520 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 472: -/* Line 1792 of yacc.c */ -#line 2524 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 473: -/* Line 1792 of yacc.c */ -#line 2528 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 474: -/* Line 1792 of yacc.c */ -#line 2532 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 475: -/* Line 1792 of yacc.c */ -#line 2536 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 476: -/* Line 1792 of yacc.c */ -#line 2540 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 477: -/* Line 1792 of yacc.c */ -#line 2544 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 478: -/* Line 1792 of yacc.c */ -#line 2548 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 479: -/* Line 1792 of yacc.c */ -#line 2552 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 480: -/* Line 1792 of yacc.c */ -#line 2556 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 481: -/* Line 1792 of yacc.c */ -#line 2560 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('<', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 482: -/* Line 1792 of yacc.c */ -#line 2564 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('>', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 483: -/* Line 1792 of yacc.c */ -#line 2568 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 484: -/* Line 1792 of yacc.c */ -#line 2572 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 485: -/* Line 1792 of yacc.c */ -#line 2576 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); -} - break; - - case 486: -/* Line 1792 of yacc.c */ -#line 2580 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); -} - break; - - case 487: -/* Line 1792 of yacc.c */ -#line 2584 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); -} - break; - - case 488: -/* Line 1792 of yacc.c */ -#line 2588 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); -} - break; - - case 489: -/* Line 1792 of yacc.c */ -#line 2592 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 490: -/* Line 1792 of yacc.c */ -#line 2596 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); -} - break; - - case 491: -/* Line 1792 of yacc.c */ -#line 2600 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); -} - break; - - case 492: -/* Line 1792 of yacc.c */ -#line 2607 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); -} - break; - - case 493: -/* Line 1792 of yacc.c */ -#line 2611 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(true); -} - break; - - case 494: -/* Line 1792 of yacc.c */ -#line 2615 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(false); -} - break; - - case 495: -/* Line 1792 of yacc.c */ -#line 2619 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); -} - break; - - case 496: -/* Line 1792 of yacc.c */ -#line 2623 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.real)); -} - break; - - case 497: -/* Line 1792 of yacc.c */ -#line 2627 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].str)); -} - break; - - case 498: -/* Line 1792 of yacc.c */ -#line 2631 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.identifier), current_scope, global_scope, current_lexer); -} - break; - - case 499: -/* Line 1792 of yacc.c */ -#line 2645 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); -} - break; - - case 500: -/* Line 1792 of yacc.c */ -#line 2649 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); -} - break; - - case 501: -/* Line 1792 of yacc.c */ -#line 2653 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); -} - break; - - case 502: -/* Line 1792 of yacc.c */ -#line 2657 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); -} - break; - - case 503: -/* Line 1792 of yacc.c */ -#line 2661 "dtool/src/cppparser/cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); -} - break; - - case 504: -/* Line 1792 of yacc.c */ -#line 2665 "dtool/src/cppparser/cppBison.yxx" +#line 2489 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (2)].u.type))); } break; - case 505: + case 466: /* Line 1792 of yacc.c */ -#line 2669 "dtool/src/cppparser/cppBison.yxx" +#line 2493 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (5)].u.type), (yyvsp[(4) - (5)].u.expr))); } break; - case 506: + case 467: /* Line 1792 of yacc.c */ -#line 2673 "dtool/src/cppparser/cppBison.yxx" +#line 2497 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); } break; - case 507: + case 468: /* Line 1792 of yacc.c */ -#line 2677 "dtool/src/cppparser/cppBison.yxx" +#line 2501 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); } break; - case 508: + case 469: /* Line 1792 of yacc.c */ -#line 2681 "dtool/src/cppparser/cppBison.yxx" +#line 2505 "dtool/src/cppparser/cppBison.yxx" { if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); @@ -6856,265 +6553,625 @@ yyreduce: } break; - case 509: + case 470: /* Line 1792 of yacc.c */ -#line 2693 "dtool/src/cppparser/cppBison.yxx" +#line 2517 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 471: +/* Line 1792 of yacc.c */ +#line 2521 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); } break; - case 510: + case 472: /* Line 1792 of yacc.c */ -#line 2697 "dtool/src/cppparser/cppBison.yxx" +#line 2525 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 511: + case 473: /* Line 1792 of yacc.c */ -#line 2701 "dtool/src/cppparser/cppBison.yxx" +#line 2529 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 512: + case 474: /* Line 1792 of yacc.c */ -#line 2705 "dtool/src/cppparser/cppBison.yxx" +#line 2533 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 513: + case 475: /* Line 1792 of yacc.c */ -#line 2709 "dtool/src/cppparser/cppBison.yxx" +#line 2537 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 514: + case 476: /* Line 1792 of yacc.c */ -#line 2713 "dtool/src/cppparser/cppBison.yxx" +#line 2541 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 515: + case 477: /* Line 1792 of yacc.c */ -#line 2717 "dtool/src/cppparser/cppBison.yxx" +#line 2545 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 516: + case 478: /* Line 1792 of yacc.c */ -#line 2721 "dtool/src/cppparser/cppBison.yxx" +#line 2549 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 517: + case 479: /* Line 1792 of yacc.c */ -#line 2725 "dtool/src/cppparser/cppBison.yxx" +#line 2553 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 518: + case 480: /* Line 1792 of yacc.c */ -#line 2729 "dtool/src/cppparser/cppBison.yxx" +#line 2557 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 519: + case 481: /* Line 1792 of yacc.c */ -#line 2733 "dtool/src/cppparser/cppBison.yxx" +#line 2561 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 520: + case 482: /* Line 1792 of yacc.c */ -#line 2737 "dtool/src/cppparser/cppBison.yxx" +#line 2565 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 521: + case 483: /* Line 1792 of yacc.c */ -#line 2741 "dtool/src/cppparser/cppBison.yxx" +#line 2569 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 522: + case 484: /* Line 1792 of yacc.c */ -#line 2745 "dtool/src/cppparser/cppBison.yxx" +#line 2573 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 523: + case 485: /* Line 1792 of yacc.c */ -#line 2749 "dtool/src/cppparser/cppBison.yxx" +#line 2577 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 524: + case 486: /* Line 1792 of yacc.c */ -#line 2753 "dtool/src/cppparser/cppBison.yxx" +#line 2581 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('<', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 525: + case 487: /* Line 1792 of yacc.c */ -#line 2757 "dtool/src/cppparser/cppBison.yxx" +#line 2585 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('>', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 526: + case 488: /* Line 1792 of yacc.c */ -#line 2761 "dtool/src/cppparser/cppBison.yxx" +#line 2589 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 527: + case 489: /* Line 1792 of yacc.c */ -#line 2765 "dtool/src/cppparser/cppBison.yxx" +#line 2593 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 528: + case 490: /* Line 1792 of yacc.c */ -#line 2769 "dtool/src/cppparser/cppBison.yxx" +#line 2597 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); } break; - case 529: + case 491: /* Line 1792 of yacc.c */ -#line 2773 "dtool/src/cppparser/cppBison.yxx" +#line 2601 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; - case 530: + case 492: /* Line 1792 of yacc.c */ -#line 2777 "dtool/src/cppparser/cppBison.yxx" +#line 2605 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; - case 531: + case 493: /* Line 1792 of yacc.c */ -#line 2781 "dtool/src/cppparser/cppBison.yxx" +#line 2609 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); } break; - case 532: + case 494: /* Line 1792 of yacc.c */ -#line 2785 "dtool/src/cppparser/cppBison.yxx" +#line 2613 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 533: + case 495: /* Line 1792 of yacc.c */ -#line 2789 "dtool/src/cppparser/cppBison.yxx" +#line 2617 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; - case 534: + case 496: /* Line 1792 of yacc.c */ -#line 2793 "dtool/src/cppparser/cppBison.yxx" +#line 2621 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); } break; - case 535: + case 497: /* Line 1792 of yacc.c */ -#line 2800 "dtool/src/cppparser/cppBison.yxx" +#line 2628 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); } break; - case 536: + case 498: /* Line 1792 of yacc.c */ -#line 2804 "dtool/src/cppparser/cppBison.yxx" +#line 2632 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(true); } break; - case 537: + case 499: /* Line 1792 of yacc.c */ -#line 2808 "dtool/src/cppparser/cppBison.yxx" +#line 2636 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression(false); } break; - case 538: + case 500: /* Line 1792 of yacc.c */ -#line 2812 "dtool/src/cppparser/cppBison.yxx" +#line 2640 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); } break; - case 539: + case 501: /* Line 1792 of yacc.c */ -#line 2816 "dtool/src/cppparser/cppBison.yxx" +#line 2644 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.real)); } break; - case 540: + case 502: /* Line 1792 of yacc.c */ -#line 2820 "dtool/src/cppparser/cppBison.yxx" +#line 2648 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].str)); } break; + case 503: +/* Line 1792 of yacc.c */ +#line 2652 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.identifier), current_scope, global_scope, current_lexer); +} + break; + + case 504: +/* Line 1792 of yacc.c */ +#line 2666 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); +} + break; + + case 505: +/* Line 1792 of yacc.c */ +#line 2670 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); +} + break; + + case 506: +/* Line 1792 of yacc.c */ +#line 2674 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); +} + break; + + case 507: +/* Line 1792 of yacc.c */ +#line 2678 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); +} + break; + + case 508: +/* Line 1792 of yacc.c */ +#line 2682 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); +} + break; + + case 509: +/* Line 1792 of yacc.c */ +#line 2686 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (2)].u.type))); +} + break; + + case 510: +/* Line 1792 of yacc.c */ +#line 2690 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (5)].u.type), (yyvsp[(4) - (5)].u.expr))); +} + break; + + case 511: +/* Line 1792 of yacc.c */ +#line 2694 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 512: +/* Line 1792 of yacc.c */ +#line 2698 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 513: +/* Line 1792 of yacc.c */ +#line 2702 "dtool/src/cppparser/cppBison.yxx" + { + if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); + (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; + } else if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_real) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); + (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; + } else { + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[(2) - (2)].u.expr)); + } +} + break; + + case 514: +/* Line 1792 of yacc.c */ +#line 2714 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 515: +/* Line 1792 of yacc.c */ +#line 2718 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 516: +/* Line 1792 of yacc.c */ +#line 2722 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 517: +/* Line 1792 of yacc.c */ +#line 2726 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 518: +/* Line 1792 of yacc.c */ +#line 2730 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 519: +/* Line 1792 of yacc.c */ +#line 2734 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 520: +/* Line 1792 of yacc.c */ +#line 2738 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 521: +/* Line 1792 of yacc.c */ +#line 2742 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 522: +/* Line 1792 of yacc.c */ +#line 2746 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 523: +/* Line 1792 of yacc.c */ +#line 2750 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 524: +/* Line 1792 of yacc.c */ +#line 2754 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 525: +/* Line 1792 of yacc.c */ +#line 2758 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 526: +/* Line 1792 of yacc.c */ +#line 2762 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 527: +/* Line 1792 of yacc.c */ +#line 2766 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 528: +/* Line 1792 of yacc.c */ +#line 2770 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 529: +/* Line 1792 of yacc.c */ +#line 2774 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('<', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 530: +/* Line 1792 of yacc.c */ +#line 2778 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('>', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 531: +/* Line 1792 of yacc.c */ +#line 2782 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 532: +/* Line 1792 of yacc.c */ +#line 2786 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 533: +/* Line 1792 of yacc.c */ +#line 2790 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); +} + break; + + case 534: +/* Line 1792 of yacc.c */ +#line 2794 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); +} + break; + + case 535: +/* Line 1792 of yacc.c */ +#line 2798 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); +} + break; + + case 536: +/* Line 1792 of yacc.c */ +#line 2802 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); +} + break; + + case 537: +/* Line 1792 of yacc.c */ +#line 2806 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 538: +/* Line 1792 of yacc.c */ +#line 2810 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 539: +/* Line 1792 of yacc.c */ +#line 2814 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); +} + break; + + case 540: +/* Line 1792 of yacc.c */ +#line 2821 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); +} + break; + case 541: /* Line 1792 of yacc.c */ -#line 2827 "dtool/src/cppparser/cppBison.yxx" +#line 2825 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(true); +} + break; + + case 542: +/* Line 1792 of yacc.c */ +#line 2829 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(false); +} + break; + + case 543: +/* Line 1792 of yacc.c */ +#line 2833 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); +} + break; + + case 544: +/* Line 1792 of yacc.c */ +#line 2837 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.real)); +} + break; + + case 545: +/* Line 1792 of yacc.c */ +#line 2841 "dtool/src/cppparser/cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].str)); +} + break; + + case 546: +/* Line 1792 of yacc.c */ +#line 2848 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, true); if (type == NULL) { @@ -7124,9 +7181,9 @@ yyreduce: } break; - case 542: + case 547: /* Line 1792 of yacc.c */ -#line 2835 "dtool/src/cppparser/cppBison.yxx" +#line 2856 "dtool/src/cppparser/cppBison.yxx" { CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, true, current_lexer); if (type == NULL) { @@ -7136,41 +7193,41 @@ yyreduce: } break; - case 543: + case 548: /* Line 1792 of yacc.c */ -#line 2843 "dtool/src/cppparser/cppBison.yxx" +#line 2864 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; - case 544: + case 549: /* Line 1792 of yacc.c */ -#line 2866 "dtool/src/cppparser/cppBison.yxx" +#line 2887 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.identifier) = (yyvsp[(1) - (1)].u.identifier); } break; - case 545: + case 550: /* Line 1792 of yacc.c */ -#line 2870 "dtool/src/cppparser/cppBison.yxx" +#line 2891 "dtool/src/cppparser/cppBison.yxx" { (yyval.u.identifier) = (yyvsp[(1) - (1)].u.identifier); } break; - case 546: + case 551: /* Line 1792 of yacc.c */ -#line 2877 "dtool/src/cppparser/cppBison.yxx" +#line 2898 "dtool/src/cppparser/cppBison.yxx" { (yyval.str) = (yyvsp[(1) - (1)].str); } break; - case 547: + case 552: /* Line 1792 of yacc.c */ -#line 2881 "dtool/src/cppparser/cppBison.yxx" +#line 2902 "dtool/src/cppparser/cppBison.yxx" { (yyval.str) = (yyvsp[(1) - (2)].str) + (yyvsp[(2) - (2)].str); } @@ -7178,7 +7235,7 @@ yyreduce: /* Line 1792 of yacc.c */ -#line 7182 "built/tmp/cppBison.yxx.c" +#line 7239 "built/tmp/cppBison.yxx.c" default: break; } /* User semantic actions sometimes alter yychar, and that requires diff --git a/dtool/src/cppparser/cppBison.yxx b/dtool/src/cppparser/cppBison.yxx index 7fd639d497..c6a704e516 100644 --- a/dtool/src/cppparser/cppBison.yxx +++ b/dtool/src/cppparser/cppBison.yxx @@ -1138,6 +1138,7 @@ template_declaration: { pop_scope(); } + | KW_TEMPLATE type_like_declaration ; template_formal_parameters: