From d6657baf299ec0b5dff29bf31f920cb98ee88c27 Mon Sep 17 00:00:00 2001 From: rdb Date: Thu, 25 May 2017 13:20:11 +0200 Subject: [PATCH] cppparser: fix scope bug in constructor inits This also fixes the Android build. --- dtool/src/cppparser/cppBison.cxx.prebuilt | 7747 +++++++++++---------- dtool/src/cppparser/cppBison.yxx | 13 +- 2 files changed, 3896 insertions(+), 3864 deletions(-) diff --git a/dtool/src/cppparser/cppBison.cxx.prebuilt b/dtool/src/cppparser/cppBison.cxx.prebuilt index f0cefb3526..692194fa8a 100644 --- a/dtool/src/cppparser/cppBison.cxx.prebuilt +++ b/dtool/src/cppparser/cppBison.cxx.prebuilt @@ -857,16 +857,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 104 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 6907 +#define YYLAST 6950 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 170 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 108 +#define YYNNTS 109 /* YYNRULES -- Number of rules. */ -#define YYNRULES 755 +#define YYNRULES 756 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 1537 +#define YYNSTATES 1538 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ @@ -933,76 +933,76 @@ static const yytype_uint16 yyrline[] = 613, 630, 658, 695, 717, 750, 772, 783, 797, 796, 811, 815, 820, 824, 835, 839, 843, 847, 851, 855, 859, 863, 867, 871, 875, 879, 884, 888, 895, 896, - 900, 901, 902, 907, 906, 922, 931, 939, 947, 955, - 966, 982, 981, 996, 1011, 1020, 1035, 1034, 1059, 1058, - 1086, 1085, 1116, 1115, 1134, 1133, 1154, 1153, 1185, 1184, - 1210, 1223, 1227, 1231, 1235, 1248, 1252, 1256, 1260, 1264, - 1269, 1274, 1278, 1282, 1286, 1293, 1297, 1301, 1305, 1309, - 1313, 1317, 1321, 1325, 1329, 1333, 1337, 1341, 1345, 1349, - 1353, 1357, 1361, 1365, 1369, 1373, 1377, 1381, 1385, 1389, - 1393, 1397, 1401, 1405, 1409, 1413, 1417, 1421, 1425, 1429, - 1433, 1437, 1441, 1445, 1452, 1453, 1454, 1458, 1460, 1459, - 1467, 1468, 1472, 1473, 1477, 1483, 1492, 1493, 1497, 1501, - 1505, 1509, 1515, 1521, 1527, 1534, 1539, 1548, 1552, 1557, - 1565, 1577, 1581, 1595, 1610, 1615, 1620, 1625, 1630, 1635, - 1640, 1645, 1651, 1650, 1681, 1691, 1701, 1705, 1709, 1718, - 1722, 1727, 1731, 1736, 1744, 1749, 1757, 1761, 1766, 1770, - 1775, 1783, 1788, 1796, 1800, 1807, 1811, 1818, 1822, 1826, - 1830, 1834, 1841, 1845, 1849, 1853, 1857, 1861, 1868, 1869, - 1870, 1874, 1877, 1878, 1879, 1883, 1888, 1894, 1900, 1905, - 1911, 1917, 1921, 1932, 1936, 1946, 1950, 1954, 1959, 1964, - 1969, 1974, 1979, 1984, 1992, 1996, 2000, 2005, 2010, 2015, - 2020, 2025, 2030, 2035, 2041, 2049, 2054, 2059, 2064, 2069, - 2074, 2079, 2084, 2089, 2094, 2100, 2108, 2112, 2117, 2122, - 2127, 2132, 2137, 2142, 2147, 2152, 2160, 2164, 2169, 2174, - 2179, 2184, 2189, 2194, 2199, 2204, 2209, 2215, 2222, 2229, - 2239, 2243, 2251, 2255, 2259, 2263, 2267, 2283, 2299, 2308, - 2312, 2322, 2329, 2340, 2344, 2352, 2356, 2360, 2364, 2368, - 2384, 2400, 2418, 2427, 2431, 2441, 2448, 2452, 2460, 2464, - 2480, 2496, 2505, 2515, 2522, 2526, 2534, 2538, 2543, 2547, - 2555, 2556, 2557, 2558, 2563, 2562, 2587, 2586, 2616, 2617, - 2624, 2625, 2629, 2630, 2634, 2638, 2642, 2646, 2650, 2654, - 2658, 2662, 2666, 2670, 2677, 2685, 2689, 2693, 2698, 2706, - 2710, 2717, 2718, 2723, 2730, 2731, 2736, 2744, 2748, 2752, - 2759, 2763, 2767, 2775, 2774, 2797, 2796, 2819, 2820, 2824, - 2830, 2837, 2846, 2847, 2848, 2852, 2856, 2860, 2864, 2868, - 2872, 2877, 2882, 2887, 2892, 2896, 2901, 2910, 2915, 2923, - 2927, 2931, 2939, 2949, 2949, 2959, 2960, 2964, 2965, 2966, - 2967, 2968, 2969, 2970, 2971, 2972, 2973, 2974, 2975, 2975, - 2975, 2976, 2976, 2976, 2976, 2977, 2977, 2977, 2977, 2977, - 2978, 2978, 2978, 2979, 2979, 2979, 2979, 2979, 2980, 2980, - 2980, 2980, 2980, 2981, 2981, 2982, 2982, 2982, 2982, 2982, - 2983, 2983, 2983, 2983, 2983, 2984, 2984, 2984, 2984, 2985, - 2985, 2985, 2985, 2985, 2986, 2986, 2986, 2986, 2986, 2987, - 2987, 2987, 2987, 2987, 2987, 2988, 2988, 2988, 2988, 2988, - 2989, 2989, 2989, 2989, 2990, 2990, 2990, 2990, 2991, 2991, - 2991, 2991, 2991, 2992, 2992, 2992, 2992, 2993, 2993, 2993, - 2993, 2993, 2994, 2994, 2994, 2994, 2995, 2995, 2995, 2995, - 2995, 2996, 2996, 2999, 2999, 2999, 2999, 2999, 2999, 2999, - 2999, 2999, 2999, 2999, 3000, 3000, 3000, 3000, 3000, 3000, - 3000, 3000, 3000, 3000, 3001, 3001, 3005, 3009, 3016, 3020, - 3027, 3031, 3038, 3042, 3046, 3050, 3054, 3058, 3062, 3066, - 3078, 3082, 3086, 3090, 3094, 3098, 3102, 3106, 3110, 3114, - 3118, 3122, 3126, 3130, 3134, 3138, 3142, 3146, 3150, 3154, - 3158, 3162, 3166, 3170, 3174, 3178, 3182, 3186, 3190, 3194, - 3198, 3206, 3210, 3214, 3218, 3222, 3226, 3230, 3240, 3250, - 3256, 3262, 3268, 3274, 3280, 3286, 3293, 3300, 3307, 3314, - 3320, 3326, 3330, 3342, 3346, 3350, 3354, 3358, 3369, 3380, - 3384, 3388, 3392, 3396, 3400, 3404, 3408, 3412, 3416, 3420, - 3424, 3428, 3432, 3436, 3440, 3444, 3448, 3452, 3456, 3460, - 3464, 3468, 3472, 3476, 3480, 3484, 3488, 3492, 3496, 3500, - 3507, 3511, 3515, 3519, 3523, 3527, 3531, 3535, 3539, 3545, - 3551, 3555, 3561, 3568, 3572, 3576, 3580, 3584, 3588, 3592, - 3596, 3600, 3604, 3608, 3612, 3616, 3620, 3624, 3628, 3632, - 3646, 3650, 3654, 3658, 3662, 3666, 3670, 3674, 3686, 3690, - 3694, 3698, 3702, 3713, 3724, 3728, 3732, 3736, 3740, 3744, - 3748, 3752, 3756, 3760, 3764, 3768, 3772, 3776, 3780, 3784, - 3788, 3792, 3796, 3800, 3804, 3808, 3812, 3816, 3820, 3824, - 3828, 3832, 3836, 3840, 3847, 3851, 3855, 3859, 3863, 3867, - 3871, 3875, 3879, 3885, 3891, 3899, 3903, 3907, 3911, 3918, - 3928, 3934, 3940, 3950, 3962, 3970, 3974, 4004, 4008, 4012, - 4016, 4020, 4024, 4030, 4034, 4038, 4042, 4053, 4057, 4061, - 4065, 4073, 4077, 4081, 4087, 4098 + 900, 901, 902, 907, 906, 922, 932, 931, 948, 956, + 964, 975, 991, 990, 1005, 1020, 1029, 1044, 1043, 1068, + 1067, 1095, 1094, 1125, 1124, 1143, 1142, 1163, 1162, 1194, + 1193, 1219, 1232, 1236, 1240, 1244, 1257, 1261, 1265, 1269, + 1273, 1278, 1283, 1287, 1291, 1295, 1302, 1306, 1310, 1314, + 1318, 1322, 1326, 1330, 1334, 1338, 1342, 1346, 1350, 1354, + 1358, 1362, 1366, 1370, 1374, 1378, 1382, 1386, 1390, 1394, + 1398, 1402, 1406, 1410, 1414, 1418, 1422, 1426, 1430, 1434, + 1438, 1442, 1446, 1450, 1454, 1461, 1462, 1463, 1467, 1469, + 1468, 1476, 1477, 1481, 1482, 1486, 1492, 1501, 1502, 1506, + 1510, 1514, 1518, 1524, 1530, 1536, 1543, 1548, 1557, 1561, + 1566, 1574, 1586, 1590, 1604, 1619, 1624, 1629, 1634, 1639, + 1644, 1649, 1654, 1660, 1659, 1690, 1700, 1710, 1714, 1718, + 1727, 1731, 1736, 1740, 1745, 1753, 1758, 1766, 1770, 1775, + 1779, 1784, 1792, 1797, 1805, 1809, 1816, 1820, 1827, 1831, + 1835, 1839, 1843, 1850, 1854, 1858, 1862, 1866, 1870, 1877, + 1878, 1879, 1883, 1886, 1887, 1888, 1892, 1897, 1903, 1909, + 1914, 1920, 1926, 1930, 1941, 1945, 1955, 1959, 1963, 1968, + 1973, 1978, 1983, 1988, 1993, 2001, 2005, 2009, 2014, 2019, + 2024, 2029, 2034, 2039, 2044, 2050, 2058, 2063, 2068, 2073, + 2078, 2083, 2088, 2093, 2098, 2103, 2109, 2117, 2121, 2126, + 2131, 2136, 2141, 2146, 2151, 2156, 2161, 2169, 2173, 2178, + 2183, 2188, 2193, 2198, 2203, 2208, 2213, 2218, 2224, 2231, + 2238, 2248, 2252, 2260, 2264, 2268, 2272, 2276, 2292, 2308, + 2317, 2321, 2331, 2338, 2349, 2353, 2361, 2365, 2369, 2373, + 2377, 2393, 2409, 2427, 2436, 2440, 2450, 2457, 2461, 2469, + 2473, 2489, 2505, 2514, 2524, 2531, 2535, 2543, 2547, 2552, + 2556, 2564, 2565, 2566, 2567, 2572, 2571, 2596, 2595, 2625, + 2626, 2633, 2634, 2638, 2639, 2643, 2647, 2651, 2655, 2659, + 2663, 2667, 2671, 2675, 2679, 2686, 2694, 2698, 2702, 2707, + 2715, 2719, 2726, 2727, 2732, 2739, 2740, 2745, 2753, 2757, + 2761, 2768, 2772, 2776, 2784, 2783, 2806, 2805, 2828, 2829, + 2833, 2839, 2846, 2855, 2856, 2857, 2861, 2865, 2869, 2873, + 2877, 2881, 2886, 2891, 2896, 2901, 2905, 2910, 2919, 2924, + 2932, 2936, 2940, 2948, 2958, 2958, 2968, 2969, 2973, 2974, + 2975, 2976, 2977, 2978, 2979, 2980, 2981, 2982, 2983, 2984, + 2984, 2984, 2985, 2985, 2985, 2985, 2986, 2986, 2986, 2986, + 2986, 2987, 2987, 2987, 2988, 2988, 2988, 2988, 2988, 2989, + 2989, 2989, 2989, 2989, 2990, 2990, 2991, 2991, 2991, 2991, + 2991, 2992, 2992, 2992, 2992, 2992, 2993, 2993, 2993, 2993, + 2994, 2994, 2994, 2994, 2994, 2995, 2995, 2995, 2995, 2995, + 2996, 2996, 2996, 2996, 2996, 2996, 2997, 2997, 2997, 2997, + 2997, 2998, 2998, 2998, 2998, 2999, 2999, 2999, 2999, 3000, + 3000, 3000, 3000, 3000, 3001, 3001, 3001, 3001, 3002, 3002, + 3002, 3002, 3002, 3003, 3003, 3003, 3003, 3004, 3004, 3004, + 3004, 3004, 3005, 3005, 3008, 3008, 3008, 3008, 3008, 3008, + 3008, 3008, 3008, 3008, 3008, 3009, 3009, 3009, 3009, 3009, + 3009, 3009, 3009, 3009, 3009, 3010, 3010, 3014, 3018, 3025, + 3029, 3036, 3040, 3047, 3051, 3055, 3059, 3063, 3067, 3071, + 3075, 3087, 3091, 3095, 3099, 3103, 3107, 3111, 3115, 3119, + 3123, 3127, 3131, 3135, 3139, 3143, 3147, 3151, 3155, 3159, + 3163, 3167, 3171, 3175, 3179, 3183, 3187, 3191, 3195, 3199, + 3203, 3207, 3215, 3219, 3223, 3227, 3231, 3235, 3239, 3249, + 3259, 3265, 3271, 3277, 3283, 3289, 3295, 3302, 3309, 3316, + 3323, 3329, 3335, 3339, 3351, 3355, 3359, 3363, 3367, 3378, + 3389, 3393, 3397, 3401, 3405, 3409, 3413, 3417, 3421, 3425, + 3429, 3433, 3437, 3441, 3445, 3449, 3453, 3457, 3461, 3465, + 3469, 3473, 3477, 3481, 3485, 3489, 3493, 3497, 3501, 3505, + 3509, 3516, 3520, 3524, 3528, 3532, 3536, 3540, 3544, 3548, + 3554, 3560, 3564, 3570, 3577, 3581, 3585, 3589, 3593, 3597, + 3601, 3605, 3609, 3613, 3617, 3621, 3625, 3629, 3633, 3637, + 3641, 3655, 3659, 3663, 3667, 3671, 3675, 3679, 3683, 3695, + 3699, 3703, 3707, 3711, 3722, 3733, 3737, 3741, 3745, 3749, + 3753, 3757, 3761, 3765, 3769, 3773, 3777, 3781, 3785, 3789, + 3793, 3797, 3801, 3805, 3809, 3813, 3817, 3821, 3825, 3829, + 3833, 3837, 3841, 3845, 3849, 3856, 3860, 3864, 3868, 3872, + 3876, 3880, 3884, 3888, 3894, 3900, 3908, 3912, 3916, 3920, + 3927, 3937, 3943, 3949, 3959, 3971, 3979, 3983, 4013, 4017, + 4021, 4025, 4029, 4033, 4039, 4043, 4047, 4051, 4062, 4066, + 4070, 4074, 4082, 4086, 4090, 4096, 4107 }; #endif @@ -1048,14 +1048,14 @@ static const char *const yytname[] = "constructor_inits", "constructor_init", "extern_c", "$@1", "declaration", "friend_declaration", "$@2", "storage_class", "attribute_specifiers", "attribute_specifier", "type_like_declaration", - "$@3", "multiple_instance_identifiers", "typedef_declaration", "$@4", - "typedef_instance_identifiers", "constructor_prototype", "$@5", "$@6", - "function_prototype", "$@7", "$@8", "$@9", "$@10", "$@11", + "$@3", "$@4", "multiple_instance_identifiers", "typedef_declaration", + "$@5", "typedef_instance_identifiers", "constructor_prototype", "$@6", + "$@7", "function_prototype", "$@8", "$@9", "$@10", "$@11", "$@12", "function_post", "function_operator", "more_template_declaration", - "template_declaration", "$@12", "template_formal_parameters", + "template_declaration", "$@13", "template_formal_parameters", "template_nonempty_formal_parameters", "typename_keyword", "template_formal_parameter", "template_formal_parameter_type", - "instance_identifier", "$@13", + "instance_identifier", "$@14", "instance_identifier_and_maybe_trailing_return_type", "maybe_trailing_return_type", "function_parameter_list", "function_parameters", "formal_parameter_list", "formal_parameters", @@ -1067,12 +1067,12 @@ static const char *const yytname[] = "parameter_pack_identifier", "not_paren_empty_instance_identifier", "empty_instance_identifier", "type", "type_pack", "type_decl", "predefined_type", "var_type_decl", "full_type", "struct_attributes", - "anonymous_struct", "$@14", "named_struct", "$@15", "maybe_final", + "anonymous_struct", "$@15", "named_struct", "$@16", "maybe_final", "maybe_class_derivation", "class_derivation", "base_specification", "enum", "enum_decl", "enum_element_type", "enum_body_trailing_comma", "enum_body", "enum_keyword", "struct_keyword", "namespace_declaration", - "$@16", "$@17", "using_declaration", "simple_type", "simple_int_type", - "simple_float_type", "simple_void_type", "code", "$@18", "code_block", + "$@17", "$@18", "using_declaration", "simple_type", "simple_int_type", + "simple_float_type", "simple_void_type", "code", "$@19", "code_block", "element", "optional_const_expr", "optional_const_expr_comma", "const_expr_comma", "no_angle_bracket_const_expr", "const_expr", "const_operand", "formal_const_expr", "formal_const_operand", @@ -1106,12 +1106,12 @@ static const yytype_uint16 yytoknum[] = }; # endif -#define YYPACT_NINF -922 +#define YYPACT_NINF -913 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-922))) + (!!((Yystate) == (-913))) -#define YYTABLE_NINF -751 +#define YYTABLE_NINF -752 #define yytable_value_is_error(Yytable_value) \ 0 @@ -1120,160 +1120,160 @@ static const yytype_uint16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - 135, -922, 3702, 5708, 37, 4828, -922, -922, -922, -922, - -922, -922, -922, -922, -125, -122, -95, -89, -85, -71, - -59, -41, -50, -922, -922, -38, 12, 28, 42, 55, - 75, 78, 130, 156, 185, 194, 203, 217, 224, 252, - 287, 294, 296, 303, 6019, -922, -922, -37, 307, 311, - 14, -20, -922, 313, 326, 332, 3702, 3702, 3702, 3702, - 3702, 1776, 1058, 3702, 4709, -922, 77, -922, -922, -922, - -922, -922, -922, -922, -922, 5818, 336, -922, -23, -922, - -922, 4057, 4449, 4449, -922, 3303, 344, -922, 4449, -922, - -922, 59, 59, -922, -922, -922, -922, 20, 48, -922, - -922, -922, -922, -922, -922, 468, 345, -922, 6767, 6767, - 6767, -922, 6767, 5186, 6767, 39, -922, 6758, 347, 348, - 352, 354, 6767, 1630, 52, 100, 186, 6767, 6767, 359, - 6638, 6767, 6767, 5704, 6767, 6767, -922, -922, -922, -922, - 4196, -922, -922, -922, -922, -922, 3702, 3702, 5708, 3702, - 3702, 3702, 3702, 5708, 3702, 5708, 3702, 5708, 3702, 5708, - 5708, 5708, 5708, 5708, 5708, 5708, 5708, 5708, 5708, 5708, - 5708, 5708, 5708, 5708, 3702, -922, -922, 362, 3303, 370, - 373, 3303, -922, -922, 5708, 3702, 3702, 374, 5304, 5708, - 1776, 3702, 3702, 51, 51, 51, 51, 51, -125, -95, - -89, -85, -71, -41, -38, 28, 4337, 4997, 5357, 5612, - 332, 87, -103, 4709, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, 3303, 3303, -98, 191, -922, - -922, 51, 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, - 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, - 3702, 3702, 3702, 2764, 3702, -922, -922, 59, 59, 2898, - -922, -922, -922, 4449, -922, -922, -922, -922, 5708, -922, - 262, 257, 162, 59, 59, 162, 162, 4941, 188, -922, - 367, -922, -922, -922, -922, -922, -922, 4431, 278, 5129, - -922, 3303, 491, 395, 379, 2486, 5213, 6767, -922, -922, - -922, -922, 6767, -922, -922, -922, -922, 6730, 2901, -922, - 3303, 3303, 3303, 3303, -922, -922, 402, -922, -922, -922, - -922, -922, 3702, -922, 4289, -922, 397, -922, 4375, -922, - 3303, 216, -922, -922, 385, 387, -922, 392, 5904, 3303, - 407, -922, 3303, -21, 324, 425, -922, -922, -922, -922, - 1115, -922, -922, 408, 427, -922, 412, 418, 428, 429, - 432, 433, 423, 434, 437, 441, 443, 444, 449, 456, - 462, -69, 482, 464, 467, 469, 470, 472, 473, 479, - 481, 483, 485, 492, 3702, -922, 5708, 3702, -922, 5260, - 501, 493, 494, 3303, 508, 509, 528, 520, 4060, 522, - 523, 3702, 3702, -922, 633, -922, 1031, 532, 3702, -922, - -922, 4026, 4994, 507, 507, 569, 569, 405, 405, -922, - 3054, 1798, 1271, 1600, 569, 569, 683, 683, 51, 51, - 51, -922, -922, -46, 2253, -922, -922, 533, 4444, 534, - 162, 536, 545, 3303, 162, 162, 162, 162, 162, 541, - -922, 188, -922, 188, -922, 541, 541, -922, 162, 468, - 5794, 5679, 162, 162, 543, 7, -922, 442, 396, -922, - 3702, 3303, 546, -922, -922, -922, -922, 4431, -12, -8, - 10, 468, 548, 71, -922, -922, -922, 561, 6767, 468, - 1917, -125, 549, 4501, -922, -922, -922, 578, 588, 590, - 591, 598, 6134, -922, 3855, 5453, 353, 582, 324, -922, - -922, 577, -922, 5708, -922, 21, 3032, 6043, 1099, -922, - 5708, -922, 583, -922, -922, 3303, 66, -922, -922, -922, - 2625, -922, -922, 413, -922, 599, 5129, -922, -922, -922, - -922, -922, -922, -922, 585, -922, 602, -922, -922, -922, - -922, 5708, -922, 5708, -922, 5708, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, 4522, 611, 612, - -922, 606, -922, -922, 614, -922, -922, 618, -922, -922, - -922, -922, 51, 4709, -922, 3303, 191, 5559, 1592, -922, - 4709, 3702, -922, -922, -922, -922, -922, 541, 162, -922, - 541, 541, 541, 541, 541, 3702, 63, 706, 5818, 442, - 396, -922, 98, 120, -922, -922, 5588, 625, 442, 442, - 442, 442, 442, 442, -70, -922, -922, 627, 3303, 396, - 396, 396, 396, 396, 396, -33, 623, 4709, -922, -58, - -922, 641, 747, 2486, -922, 720, 468, -922, -922, -922, - -922, -922, -922, -922, -922, 635, 647, 650, -922, -922, - 6019, -922, -922, 651, 38, 654, -922, 646, 3702, 3702, - 3702, 3702, 1776, 3702, 645, 25, -922, -922, 4763, -922, - 77, -922, 6767, 6767, 6206, -922, 803, 805, 806, 818, - -922, -922, 376, 682, -922, -922, -922, -922, 5521, -922, - 676, 688, 3169, -922, 1035, -922, -922, 21, -922, 413, - -922, 690, 5559, 680, 413, 5559, 679, 4540, 1099, 692, - 1099, 1099, 1099, 1099, 1099, 167, -922, -922, 686, 6278, - -922, 689, -922, 290, -922, -113, 701, 705, 691, 707, - 711, 3166, 3322, 708, 413, 413, 4129, 413, 413, 413, - 413, -922, 61, 411, -922, 4431, -922, 3702, 3702, 699, - 702, 703, -922, -922, -922, 3702, -922, 3702, -922, 709, - -922, 5933, 468, -922, -922, -922, -922, -922, -922, 712, - -922, -922, 725, -922, 4709, 541, 704, 715, 5679, 442, - 396, -70, -33, 729, 732, 1592, -922, -922, 442, 740, - 740, 740, 740, 740, 298, 3702, -922, 396, -922, 742, - 742, 742, 742, 742, 321, 3702, -922, 743, -922, 3702, - -922, 731, 4558, 6350, -922, 760, -922, -922, 5708, 5708, - 5708, 746, 5708, 749, 5333, 5708, 1776, 51, 51, 51, - 51, 750, -26, 51, -922, -922, 3836, 3702, 3702, 3702, - 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, - 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3702, 3300, 3702, - -922, -922, -922, -922, -14, 768, 771, 772, 6422, 17, - -922, 1035, 6647, 5453, 3303, 767, 763, 1035, 1035, 1035, - 1035, 1035, 1035, 85, 742, -922, 411, -922, 757, 413, - 209, 758, -922, -922, 329, 1099, 775, 775, 775, 775, - 775, -922, 3702, -922, -922, 5559, -922, 2319, -922, -922, - 3303, 3702, 3702, -922, -922, -922, -922, -922, 3166, 761, - 789, 4709, -922, -922, 413, 341, 341, 927, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, 776, 774, -922, -922, 341, 341, - 341, 267, 937, -922, 3702, -922, 2625, 797, -922, 641, - 58, 89, -922, -922, -922, 93, 94, -922, 6019, 59, - 898, 132, -922, -922, 5559, -922, -70, -33, -922, -922, - 5559, 5559, -922, 740, 783, 802, 742, 808, 804, 3590, - -922, -922, -922, 3919, 828, 829, -922, 812, 826, 831, - 3702, 832, 3303, 823, 825, 836, 827, 4595, 3702, -922, - -922, -922, 4026, 4994, 507, 507, 569, 569, 405, 405, - -922, 4613, 1798, 1271, 1600, 569, 569, 683, 683, 51, - 51, 51, -922, -922, 96, 2505, 6494, 984, 847, 987, - 990, 992, -922, 856, 85, 742, -922, -922, -922, -922, - -922, -922, 5708, 1035, 3975, -922, -922, 860, -922, -922, - 276, 844, -922, -922, 775, 5559, 843, 848, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, -922, -922, - -922, -922, -922, -922, -922, -922, -922, -922, 846, -922, - 850, 849, 851, -922, 3434, 341, -922, -922, -922, -922, - -922, 1917, 855, 3322, 413, -922, -922, -922, -922, 1592, - 59, -922, -922, -922, 2, 858, 861, -922, -922, 865, - 866, 5559, -922, 5559, -922, -922, 5778, 6003, 6052, 3303, - 368, -922, -922, 1011, -922, 3919, -922, 869, 872, 871, - 876, 878, -922, -922, 887, -922, -922, 51, 3702, -922, - -922, -922, 99, -922, 104, 895, 145, -922, -922, -922, - 899, 919, 920, 921, 40, 923, 3975, 3975, 3975, 3975, - 3975, 1776, 3975, 4211, -922, 413, 2679, 915, -922, 2679, - 5559, 914, -922, -922, 2094, -922, -922, 1066, -922, 3166, - 4709, 917, -922, -922, 938, -922, 926, -922, -922, -922, - -922, -922, 932, 933, 4191, -922, 4191, -922, 4191, -922, - -922, 4191, 4191, 4191, -922, 6566, -922, 3702, 3702, -922, - 3702, -922, 3702, 4709, 1075, 939, 1076, 941, 953, 1092, - 955, 5708, 5708, 5708, 5708, 940, 5424, 5708, 67, 67, - 67, 67, 67, 947, 149, 67, 3975, 3975, 3975, 3975, - 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, - 3975, 3975, 3975, 3975, 3975, 3568, 3702, -922, -922, 5559, - 948, -922, 2679, -922, -922, 954, -922, -922, -922, 1592, - 1592, 1592, -922, -922, -922, -922, -922, -922, -922, -922, - -922, 153, 171, 177, 181, 949, -922, 958, -922, -922, - 189, -922, 957, 950, 964, 972, 3303, 970, 971, 982, - 3975, -922, 4820, 5010, 1350, 1350, 604, 604, 662, 662, - -922, 1203, 5026, 5050, 5066, 770, 770, 67, 67, 67, - -922, -922, 193, 2782, 5559, 973, -922, 2679, -922, 2679, - 974, -922, -922, -922, 2679, 2679, -922, -922, -922, -922, - 994, 1130, 1135, 1000, -922, 985, 986, 988, 989, -922, - -922, 993, 67, 3975, -922, -922, 995, -922, 2679, -922, - -922, 996, 998, -922, 3702, 3702, 3702, -922, 3702, 4211, - -922, 1592, 1006, 1008, 205, 210, 214, 263, 1592, -922, - -922, -922, -922, -922, -922, -922, -922 + 152, -913, 3620, 5734, 47, 4886, -913, -913, -913, -913, + -913, -913, -913, -913, 85, -45, -38, 3, 36, 41, + -72, 45, 71, -913, -913, 58, 99, 122, 125, 127, + 134, 144, 169, 178, 187, 189, 195, 200, 204, 207, + 214, 218, 221, 223, 5219, -913, -913, 93, 225, 240, + 30, 244, -913, 243, 253, 255, 3620, 3620, 3620, 3620, + 3620, 1760, 474, 3620, 4671, -913, 150, -913, -913, -913, + -913, -913, -913, -913, -913, 5844, 262, -913, 27, -913, + -913, 4115, 4506, 4506, -913, 3087, 266, -913, 4506, -913, + -913, 403, 403, -913, -913, -913, -913, 123, 105, -913, + -913, -913, -913, -913, -913, 4249, 268, -913, 6810, 6810, + 6810, -913, 6810, 5208, 6810, -40, -913, 6801, 310, 316, + 323, 327, 6810, 1955, 347, 349, 350, 6810, 6810, 336, + 6637, 6810, 6810, 1562, 6810, 6810, -913, -913, -913, -913, + 4254, -913, -913, -913, -913, -913, 3620, 3620, 5734, 3620, + 3620, 3620, 3620, 5734, 3620, 5734, 3620, 5734, 3620, 5734, + 5734, 5734, 5734, 5734, 5734, 5734, 5734, 5734, 5734, 5734, + 5734, 5734, 5734, 5734, 3620, -913, -913, 337, 3087, 339, + 341, 3087, -913, -913, 5734, 3620, 3620, 342, 5330, 5734, + 1760, 3620, 3620, 80, 80, 80, 80, 80, 85, -38, + 3, 36, 41, 45, 58, 122, 6587, 5383, 5831, 5990, + 255, 163, -81, 4671, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, 3087, 3087, -92, 363, -913, + -913, 80, 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, + 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, + 3620, 3620, 3620, 2682, 3620, -913, -913, 403, 403, 2816, + -913, -913, -913, 4506, -913, -913, -913, -913, 5734, -913, + 355, 1016, 343, 403, 403, 343, 343, 4999, 351, -913, + 353, -913, -913, -913, -913, -913, -913, 1292, 359, 5187, + -913, 3087, 467, 372, 364, 2409, 5245, 6810, -913, -913, + -913, -913, 6810, -913, -913, -913, -913, 6729, 2685, -913, + 3087, 3087, 3087, 3087, -913, -913, 376, -913, -913, -913, + -913, -913, 3620, -913, 4347, -913, 368, -913, 4433, -913, + 3087, 135, -913, -913, -10, 366, -913, 369, 5930, 3087, + 370, -913, 3087, -913, 180, 379, -913, -913, -913, -913, + 1828, -913, -913, 375, 388, -913, 378, 380, 381, 382, + 386, 387, 402, 394, 405, 398, 399, 400, 407, 421, + 408, -73, 422, 410, 411, 412, 413, 418, 419, 424, + 425, 429, 433, 435, 3620, -913, 5734, 3620, -913, 5730, + 415, 436, 440, 3087, 441, 444, 455, 456, 4118, 457, + 459, 3620, 3620, -913, 530, -913, 1232, 465, 3620, -913, + -913, 1430, 1843, 960, 960, 878, 878, 277, 277, -913, + 2972, 4083, 4884, 2005, 878, 878, 142, 142, 80, 80, + 80, -913, -913, -59, 1639, -913, -913, 466, 4502, 468, + 343, 470, 462, 3087, 343, 343, 343, 343, 343, 471, + -913, 351, -913, 351, -913, 471, 471, -913, 343, 4249, + 5820, 5705, 343, 343, 472, 18, -913, 1096, 416, -913, + 3620, 3087, 477, -913, -913, -913, -913, 1292, -46, -44, + -28, 4249, 473, -12, -913, -913, -913, 496, 6810, 4249, + 3754, 85, 480, 4559, -913, -913, -913, 503, 504, 505, + 506, 509, 6122, -913, 3773, 5479, 188, 486, 180, -913, + -913, 511, -913, 5734, -913, 15, 2950, 6045, 662, -913, + 5734, -913, 493, 175, -913, -913, 2548, -913, -913, 1043, + -913, 512, 5187, -913, -913, -913, -913, -913, -913, -913, + 507, -913, 513, -913, -913, -913, -913, 5734, -913, 5734, + -913, 5734, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, 4580, 494, 501, -913, 514, -913, -913, + 516, -913, -913, 519, -913, -913, -913, -913, 80, 4671, + -913, 3087, 363, 5585, 4402, -913, 4671, 3620, -913, -913, + -913, -913, -913, 471, 343, -913, 471, 471, 471, 471, + 471, 3620, 174, 621, 5844, 1096, 416, -913, 210, 226, + -913, -913, 5614, 525, 1096, 1096, 1096, 1096, 1096, 1096, + -68, -913, -913, 526, 3087, 416, 416, 416, 416, 416, + 416, -66, 518, 4671, -913, 19, -913, 543, 642, 2409, + -913, 615, 4249, -913, -913, -913, -913, -913, -913, -913, + -913, 533, 546, 548, -913, -913, 5219, -913, -913, 549, + 34, 551, -913, 534, 3620, 3620, 3620, 3620, 1760, 3620, + 542, 29, -913, -913, 4767, -913, 150, -913, 6810, 6810, + 6194, -913, 702, 714, 715, 717, -913, -913, 162, 580, + -913, -913, -913, -913, 5547, -913, 573, 587, 2953, -913, + 1270, -913, -913, 15, -913, 1043, -913, 589, 5585, 579, + 1043, 5585, 574, 4598, 662, 583, 662, 662, 662, 662, + 662, -34, -913, -913, 577, 6266, -913, -913, -913, 3087, + 357, -913, 572, -913, 596, 597, 3084, 3240, 591, 1043, + 1043, 4187, 1043, 1043, 1043, 1043, -913, 54, 233, -913, + 1292, -913, 3620, 3620, 582, 598, 599, -913, -913, -913, + 3620, -913, 3620, -913, 603, -913, 5959, 4249, -913, -913, + -913, -913, -913, -913, 593, -913, -913, 609, -913, 4671, + 471, 601, 607, 5705, 1096, 416, -68, -66, 612, 613, + 4402, -913, -913, 1096, 608, 608, 608, 608, 608, 288, + 3620, -913, 416, -913, 614, 614, 614, 614, 614, 299, + 3620, -913, 617, -913, 3620, -913, 618, 4616, 6338, -913, + 629, -913, -913, 5734, 5734, 5734, 623, 5734, 624, 5359, + 5734, 1760, 80, 80, 80, 80, 625, -58, 80, -913, + -913, 3894, 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, + 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, 3620, + 3620, 3620, 3620, 3218, 3620, -913, -913, -913, -913, -55, + 646, 649, 651, 6410, 35, -913, 1270, 6689, 5479, 3087, + 650, 647, 1270, 1270, 1270, 1270, 1270, 1270, -30, 614, + -913, 233, -913, 635, 1043, 236, 639, -913, -913, 303, + 662, 643, 643, 643, 643, 643, -913, 3620, -913, -913, + 5585, 640, 331, -913, 116, 663, 664, -913, 2242, -913, + -913, -913, 3084, 648, 667, 4671, -913, -913, 1043, 329, + 329, 807, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, 673, 675, + -913, -913, 329, 329, 329, 286, 838, -913, 3620, -913, + 2548, 704, -913, 543, -41, -37, -913, -913, -913, -33, + -25, -913, 5219, 403, 802, 84, -913, -913, 5585, -913, + -68, -66, -913, -913, 5585, 5585, -913, 608, 688, 690, + 614, 696, 692, 3508, -913, -913, -913, 3955, 718, 716, + -913, 700, 712, 713, 3620, 720, 3087, 705, 706, 721, + 707, 4653, 3620, -913, -913, -913, 1430, 1843, 960, 960, + 878, 878, 277, 277, -913, 3828, 4083, 4884, 2005, 878, + 878, 142, 142, 80, 80, 80, -913, -913, -24, 1890, + 6482, 860, 730, 870, 881, 882, -913, 746, -30, 614, + -913, -913, -913, -913, -913, -913, 5734, 1270, 4033, -913, + -913, 748, -913, -913, 294, 732, -913, -913, 643, 5585, + 729, 736, -913, -913, 3087, 3620, 3620, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, -913, + -913, -913, -913, -913, -913, -913, -913, -913, -913, 737, + -913, 3352, 329, -913, -913, -913, -913, -913, 3754, 739, + 3240, 1043, -913, -913, -913, -913, 4402, 403, -913, -913, + -913, 20, 743, 749, -913, -913, 750, 751, 5585, -913, + 5585, -913, -913, 5069, 5804, 6029, 3087, 358, -913, -913, + 888, -913, 3955, -913, 754, 755, 756, 759, 758, -913, + -913, 762, -913, -913, 80, 3620, -913, -913, -913, -23, + -913, -3, 761, 66, -913, -913, -913, 765, 757, 775, + 776, 43, 777, 4033, 4033, 4033, 4033, 4033, 1760, 4033, + 4821, -913, 1043, 734, 770, -913, 734, 5585, 797, -913, + -913, 798, -913, 800, 803, 2075, -913, 3084, 4671, 805, + -913, -913, 818, -913, 806, -913, -913, -913, -913, -913, + 809, 810, 4428, -913, 4428, -913, 4428, -913, -913, 4428, + 4428, 4428, -913, 6554, -913, 3620, 3620, -913, 3620, -913, + 3620, 4671, 958, 825, 975, 843, 848, 976, 853, 5734, + 5734, 5734, 5734, 830, 5450, 5734, 114, 114, 114, 114, + 114, 836, 67, 114, 4033, 4033, 4033, 4033, 4033, 4033, + 4033, 4033, 4033, 4033, 4033, 4033, 4033, 4033, 4033, 4033, + 4033, 4033, 4033, 3486, 3620, -913, -913, 5585, 842, -913, + 734, -913, -913, 997, -913, 847, -913, -913, -913, 4402, + 4402, 4402, -913, -913, -913, -913, -913, -913, -913, -913, + -913, 69, 76, 89, 100, 854, -913, 866, -913, -913, + 104, -913, 855, 868, 873, 874, 3087, 856, 865, 876, + 4033, -913, 2700, 5052, 1489, 1489, 1366, 1366, 1320, 1320, + -913, 4269, 5068, 5084, 1341, 846, 846, 114, 114, 114, + -913, -913, 143, 2428, 5585, 867, -913, 734, -913, -913, + 734, 877, -913, -913, -913, 734, 734, -913, -913, -913, + -913, 886, 1030, 1035, 898, -913, 884, 885, 893, 892, + -913, -913, 897, 114, 4033, -913, -913, 899, -913, 734, + -913, -913, 904, 905, -913, 3620, 3620, 3620, -913, 3620, + 4821, -913, 4402, 902, 915, 147, 153, 165, 171, 4402, + -913, -913, -913, -913, -913, -913, -913, -913 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1281,192 +1281,192 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 755, 0, 0, 0, 755, 5, 644, 640, 643, - 751, 752, 646, 647, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 642, 648, 0, 0, 0, 0, 0, + 0, 756, 0, 0, 0, 756, 5, 645, 641, 644, + 752, 753, 647, 648, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 643, 649, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 650, 649, 0, 0, 0, - 0, 0, 641, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 755, 0, 3, 581, 645, 291, 302, 301, - 385, 386, 388, 389, 370, 0, 0, 400, 367, 399, - 394, 391, 390, 393, 371, 0, 0, 372, 392, 402, - 387, 755, 755, 4, 293, 294, 295, 0, 356, 755, - 290, 382, 383, 384, 1, 0, 0, 21, 755, 755, - 755, 22, 755, 755, 755, 0, 38, 755, 0, 0, - 0, 0, 755, 0, 0, 0, 0, 755, 755, 0, - 755, 755, 755, 0, 755, 755, 6, 17, 7, 19, - 0, 15, 16, 18, 68, 40, 755, 755, 0, 755, - 755, 755, 755, 0, 755, 0, 755, 0, 755, 0, + 0, 0, 0, 0, 0, 651, 650, 0, 0, 0, + 0, 0, 642, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 756, 0, 3, 582, 646, 292, 303, 302, + 386, 387, 389, 390, 371, 0, 0, 401, 368, 400, + 395, 392, 391, 394, 372, 0, 0, 373, 393, 403, + 388, 756, 756, 4, 294, 295, 296, 0, 357, 756, + 291, 383, 384, 385, 1, 0, 0, 21, 756, 756, + 756, 22, 756, 756, 756, 0, 38, 756, 0, 0, + 0, 0, 756, 0, 0, 0, 0, 756, 756, 0, + 756, 756, 756, 0, 756, 756, 6, 17, 7, 19, + 0, 15, 16, 18, 69, 40, 756, 756, 0, 756, + 756, 756, 756, 0, 756, 0, 756, 0, 756, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 755, 317, 323, 0, 0, 0, - 605, 0, 755, 316, 0, 755, 755, 0, 0, 0, - 0, 755, 755, 614, 612, 611, 613, 610, 291, 385, - 386, 388, 389, 400, 399, 394, 391, 390, 393, 392, - 387, 0, 0, 540, 737, 738, 739, 740, 743, 741, - 745, 744, 742, 746, 726, 727, 0, 0, 755, 732, - 725, 609, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 756, 318, 324, 0, 0, 0, + 606, 0, 756, 317, 0, 756, 756, 0, 0, 0, + 0, 756, 756, 615, 613, 612, 614, 611, 292, 386, + 387, 389, 390, 401, 400, 395, 392, 391, 394, 393, + 388, 0, 0, 541, 738, 739, 740, 741, 744, 742, + 746, 745, 743, 747, 727, 728, 0, 0, 756, 733, + 726, 610, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 753, 754, 755, 755, 0, - 368, 369, 401, 391, 396, 395, 398, 292, 0, 397, - 0, 277, 755, 755, 755, 755, 755, 755, 0, 326, - 276, 328, 755, 747, 748, 749, 750, 0, 358, 0, - 330, 0, 0, 58, 60, 0, 755, 755, 52, 41, - 51, 53, 755, 42, 147, 47, 23, 755, 0, 45, - 0, 0, 0, 0, 50, 755, 0, 26, 25, 24, - 48, 44, 0, 151, 0, 150, 0, 54, 0, 20, - 0, 0, 46, 49, 325, 304, 315, 0, 0, 0, - 0, 13, 0, 0, 0, 324, 63, 306, 307, 308, - 356, 755, 303, 0, 539, 538, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 754, 755, 756, 756, 0, + 369, 370, 402, 392, 397, 396, 399, 293, 0, 398, + 0, 278, 756, 756, 756, 756, 756, 756, 0, 327, + 277, 329, 756, 748, 749, 750, 751, 0, 359, 0, + 331, 0, 0, 58, 60, 0, 756, 756, 52, 41, + 51, 53, 756, 42, 148, 47, 23, 756, 0, 45, + 0, 0, 0, 0, 50, 756, 0, 26, 25, 24, + 48, 44, 0, 152, 0, 151, 0, 54, 0, 20, + 0, 0, 46, 49, 326, 305, 316, 0, 0, 0, + 0, 13, 0, 66, 0, 325, 63, 307, 308, 309, + 357, 756, 304, 0, 540, 539, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 318, 0, 755, 320, 0, + 0, 0, 0, 0, 0, 319, 0, 756, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 639, 730, 733, 0, 755, 0, 728, - 205, 623, 624, 625, 626, 627, 628, 631, 632, 638, - 0, 620, 621, 622, 629, 630, 618, 619, 615, 616, - 617, 637, 636, 0, 0, 327, 329, 0, 0, 0, - 755, 278, 0, 267, 755, 755, 755, 755, 755, 283, - 266, 0, 279, 0, 280, 282, 281, 190, 755, 0, - 0, 0, 755, 755, 0, 191, 194, 755, 0, 189, - 755, 364, 0, 361, 360, 355, 359, 0, 737, 738, - 739, 0, 0, 741, 334, 296, 336, 0, 755, 0, - 755, 304, 0, 0, 43, 39, 755, 0, 0, 0, - 0, 0, 755, 373, 0, 755, 325, 304, 0, 324, - 71, 0, 379, 0, 76, 78, 0, 0, 755, 305, - 0, 755, 0, 403, 207, 0, 0, 66, 403, 212, - 0, 67, 65, 0, 311, 358, 0, 588, 587, 604, - 594, 590, 592, 593, 0, 600, 0, 599, 653, 589, - 654, 0, 656, 0, 657, 0, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 596, 0, 0, 0, - 319, 0, 595, 598, 0, 602, 601, 0, 607, 608, - 597, 591, 582, 541, 731, 0, 755, 755, 755, 91, - 206, 0, 635, 634, 299, 298, 300, 284, 755, 268, - 273, 269, 270, 272, 271, 755, 0, 0, 0, 755, - 0, 231, 0, 0, 755, 193, 0, 0, 755, 755, - 755, 755, 755, 755, 755, 245, 244, 0, 255, 0, - 0, 0, 0, 0, 0, 755, 0, 537, 536, 365, - 354, 297, 0, 0, 755, 755, 0, 55, 59, 718, - 714, 717, 720, 721, 197, 0, 0, 0, 716, 722, - 0, 724, 723, 0, 0, 0, 715, 0, 0, 0, - 0, 0, 0, 0, 0, 198, 233, 201, 234, 670, - 719, 196, 755, 755, 755, 375, 0, 0, 0, 0, - 377, 755, 0, 0, 168, 169, 170, 156, 0, 157, - 0, 153, 158, 154, 755, 167, 152, 0, 73, 0, - 381, 0, 755, 0, 0, 755, 0, 0, 755, 0, - 755, 755, 755, 755, 755, 0, 236, 235, 0, 755, - 80, 0, 755, 0, 8, 0, 0, 0, 0, 0, - 0, 755, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 64, 755, 755, 171, 0, 309, 0, 0, 0, - 0, 0, 321, 322, 606, 0, 603, 0, 729, 0, - 98, 0, 0, 92, 100, 95, 99, 94, 96, 0, - 93, 97, 0, 186, 633, 274, 0, 0, 0, 755, - 0, 755, 755, 0, 0, 755, 192, 195, 755, 250, - 246, 247, 249, 248, 0, 755, 225, 0, 256, 261, - 257, 258, 260, 259, 0, 755, 228, 285, 362, 0, - 331, 0, 0, 755, 339, 755, 338, 62, 0, 0, - 0, 680, 0, 0, 0, 0, 0, 688, 687, 686, - 685, 0, 0, 684, 61, 200, 0, 0, 0, 0, + 0, 0, 0, 640, 731, 734, 0, 756, 0, 729, + 206, 624, 625, 626, 627, 628, 629, 632, 633, 639, + 0, 621, 622, 623, 630, 631, 619, 620, 616, 617, + 618, 638, 637, 0, 0, 328, 330, 0, 0, 0, + 756, 279, 0, 268, 756, 756, 756, 756, 756, 284, + 267, 0, 280, 0, 281, 283, 282, 191, 756, 0, + 0, 0, 756, 756, 0, 192, 195, 756, 0, 190, + 756, 365, 0, 362, 361, 356, 360, 0, 738, 739, + 740, 0, 0, 742, 335, 297, 337, 0, 756, 0, + 756, 305, 0, 0, 43, 39, 756, 0, 0, 0, + 0, 0, 756, 374, 0, 756, 326, 305, 0, 325, + 72, 0, 380, 0, 77, 79, 0, 0, 756, 306, + 0, 756, 0, 0, 404, 213, 0, 68, 65, 0, + 312, 359, 0, 589, 588, 605, 595, 591, 593, 594, + 0, 601, 0, 600, 654, 590, 655, 0, 657, 0, + 658, 0, 661, 662, 663, 664, 665, 666, 667, 668, + 669, 670, 597, 0, 0, 0, 320, 0, 596, 599, + 0, 603, 602, 0, 608, 609, 598, 592, 583, 542, + 732, 0, 756, 756, 756, 92, 207, 0, 636, 635, + 300, 299, 301, 285, 756, 269, 274, 270, 271, 273, + 272, 756, 0, 0, 0, 756, 0, 232, 0, 0, + 756, 194, 0, 0, 756, 756, 756, 756, 756, 756, + 756, 246, 245, 0, 256, 0, 0, 0, 0, 0, + 0, 756, 0, 538, 537, 366, 355, 298, 0, 0, + 756, 756, 0, 55, 59, 719, 715, 718, 721, 722, + 198, 0, 0, 0, 717, 723, 0, 725, 724, 0, + 0, 0, 716, 0, 0, 0, 0, 0, 0, 0, + 0, 199, 234, 202, 235, 671, 720, 197, 756, 756, + 756, 376, 0, 0, 0, 0, 378, 756, 0, 0, + 169, 170, 171, 157, 0, 158, 0, 154, 159, 155, + 756, 168, 153, 0, 74, 0, 382, 0, 756, 0, + 0, 756, 0, 0, 756, 0, 756, 756, 756, 756, + 756, 0, 237, 236, 0, 756, 81, 404, 208, 0, + 0, 67, 0, 756, 0, 0, 756, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 64, 756, 756, 172, + 0, 310, 0, 0, 0, 0, 0, 322, 323, 607, + 0, 604, 0, 730, 0, 99, 0, 0, 93, 101, + 96, 100, 95, 97, 0, 94, 98, 0, 187, 634, + 275, 0, 0, 0, 756, 0, 756, 756, 0, 0, + 756, 193, 196, 756, 251, 247, 248, 250, 249, 0, + 756, 226, 0, 257, 262, 258, 259, 261, 260, 0, + 756, 229, 286, 363, 0, 332, 0, 0, 756, 340, + 756, 339, 62, 0, 0, 0, 681, 0, 0, 0, + 0, 0, 689, 688, 687, 686, 0, 0, 685, 61, + 201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 57, 56, 378, 755, 0, 0, 0, 0, 755, 0, - 37, 755, 755, 0, 161, 159, 0, 755, 755, 755, - 755, 755, 755, 755, 165, 72, 755, 380, 0, 0, - 0, 0, 313, 312, 0, 755, 241, 237, 238, 240, - 239, 86, 755, 314, 14, 755, 208, 404, 405, 403, - 0, 755, 755, 210, 211, 213, 215, 216, 755, 0, - 219, 221, 218, 214, 0, 178, 174, 0, 115, 116, - 117, 118, 119, 120, 123, 124, 139, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 143, - 142, 126, 125, 112, 114, 113, 121, 122, 110, 111, - 107, 108, 109, 106, 0, 0, 105, 172, 175, 177, - 176, 0, 0, 182, 755, 184, 0, 0, 69, 310, - 0, 0, 655, 658, 659, 0, 0, 755, 0, 755, - 0, 0, 403, 275, 755, 232, 755, 755, 226, 229, - 755, 755, 286, 251, 254, 0, 262, 265, 0, 366, - 333, 332, 335, 0, 0, 341, 340, 0, 0, 0, - 755, 0, 0, 0, 0, 0, 0, 0, 0, 713, - 199, 202, 697, 698, 699, 700, 701, 702, 705, 706, - 712, 0, 694, 695, 696, 703, 704, 692, 693, 689, - 690, 691, 711, 710, 0, 0, 755, 0, 0, 0, - 0, 0, 374, 0, 755, 166, 146, 144, 149, 145, - 155, 162, 0, 755, 0, 163, 203, 0, 74, 755, - 0, 0, 755, 88, 242, 755, 0, 0, 407, 408, - 412, 409, 417, 410, 411, 413, 414, 415, 416, 418, + 0, 0, 0, 0, 0, 57, 56, 379, 756, 0, + 0, 0, 0, 756, 0, 37, 756, 756, 0, 162, + 160, 0, 756, 756, 756, 756, 756, 756, 756, 166, + 73, 756, 381, 0, 0, 0, 0, 314, 313, 0, + 756, 242, 238, 239, 241, 240, 87, 756, 315, 14, + 756, 0, 0, 8, 0, 0, 0, 214, 405, 406, + 216, 217, 756, 0, 220, 222, 219, 215, 0, 179, + 175, 0, 116, 117, 118, 119, 120, 121, 124, 125, + 140, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 144, 143, 127, 126, 113, 115, 114, + 122, 123, 111, 112, 108, 109, 110, 107, 0, 0, + 106, 173, 176, 178, 177, 0, 0, 183, 756, 185, + 0, 0, 70, 311, 0, 0, 656, 659, 660, 0, + 0, 756, 0, 756, 0, 0, 404, 276, 756, 233, + 756, 756, 227, 230, 756, 756, 287, 252, 255, 0, + 263, 266, 0, 367, 334, 333, 336, 0, 0, 342, + 341, 0, 0, 0, 756, 0, 0, 0, 0, 0, + 0, 0, 0, 714, 200, 203, 698, 699, 700, 701, + 702, 703, 706, 707, 713, 0, 695, 696, 697, 704, + 705, 693, 694, 690, 691, 692, 712, 711, 0, 0, + 756, 0, 0, 0, 0, 0, 375, 0, 756, 167, + 147, 145, 150, 146, 156, 163, 0, 756, 0, 164, + 204, 0, 75, 756, 0, 0, 756, 89, 243, 756, + 0, 0, 209, 404, 0, 756, 756, 211, 212, 408, + 409, 413, 410, 418, 411, 412, 414, 415, 416, 417, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464, 465, 485, 466, 467, + 459, 460, 461, 462, 463, 464, 465, 466, 486, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 482, 483, 484, 486, 487, 488, + 478, 479, 480, 481, 482, 483, 484, 485, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 755, 529, 530, 531, 522, 534, - 518, 519, 517, 524, 525, 513, 514, 515, 516, 523, - 521, 528, 526, 532, 527, 520, 533, 406, 0, 9, - 0, 0, 0, 217, 220, 179, 173, 141, 140, 181, - 185, 755, 0, 206, 0, 585, 584, 586, 583, 755, - 755, 187, 104, 101, 0, 0, 0, 227, 230, 0, - 0, 755, 252, 755, 263, 363, 745, 0, 744, 0, - 0, 342, 344, 734, 755, 0, 679, 0, 0, 0, - 0, 0, 677, 676, 0, 682, 683, 671, 0, 709, - 708, 376, 0, 27, 0, 0, 0, 36, 164, 160, + 509, 510, 511, 512, 513, 756, 530, 531, 532, 523, + 535, 519, 520, 518, 525, 526, 514, 515, 516, 517, + 524, 522, 529, 527, 533, 528, 521, 534, 407, 0, + 218, 221, 180, 174, 142, 141, 182, 186, 756, 0, + 207, 0, 586, 585, 587, 584, 756, 756, 188, 105, + 102, 0, 0, 0, 228, 231, 0, 0, 756, 253, + 756, 264, 364, 746, 0, 745, 0, 0, 343, 345, + 735, 756, 0, 680, 0, 0, 0, 0, 0, 678, + 677, 0, 683, 684, 672, 0, 710, 709, 377, 0, + 27, 0, 0, 0, 36, 165, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 204, 542, 0, 77, 0, 82, 79, - 755, 0, 243, 755, 0, 209, 12, 10, 222, 755, - 223, 0, 180, 70, 0, 188, 0, 102, 651, 755, - 755, 755, 0, 0, 0, 347, 0, 346, 0, 345, - 735, 0, 0, 0, 736, 755, 343, 0, 0, 681, - 0, 678, 0, 707, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 557, 555, - 554, 556, 553, 0, 0, 552, 0, 0, 0, 0, + 205, 543, 0, 78, 0, 83, 80, 756, 0, 244, + 756, 0, 9, 0, 0, 0, 223, 756, 224, 0, + 181, 71, 0, 189, 0, 103, 652, 756, 756, 756, + 0, 0, 0, 348, 0, 347, 0, 346, 736, 0, + 0, 0, 737, 756, 344, 0, 0, 682, 0, 679, + 0, 708, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 558, 556, 555, 557, + 554, 0, 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, 75, 84, 755, - 0, 755, 81, 535, 11, 0, 755, 403, 103, 755, - 755, 755, 755, 755, 353, 352, 351, 350, 349, 348, - 337, 0, 0, 0, 0, 0, 28, 0, 33, 35, + 0, 0, 0, 0, 0, 76, 85, 756, 0, 756, + 82, 210, 12, 10, 536, 0, 756, 404, 104, 756, + 756, 756, 756, 756, 354, 353, 352, 351, 350, 349, + 338, 0, 0, 0, 0, 0, 28, 0, 33, 35, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 580, 566, 567, 568, 569, 570, 571, 572, 573, - 579, 0, 563, 564, 565, 561, 562, 558, 559, 560, - 578, 577, 0, 0, 755, 0, 755, 87, 224, 183, - 0, 289, 288, 287, 253, 264, 674, 673, 675, 672, - 0, 0, 0, 0, 551, 0, 0, 0, 0, 549, - 548, 0, 543, 0, 576, 575, 0, 755, 89, 652, - 29, 0, 0, 31, 0, 0, 0, 550, 0, 574, - 755, 755, 0, 0, 0, 0, 0, 0, 755, 83, - 34, 32, 546, 545, 547, 544, 85 + 0, 581, 567, 568, 569, 570, 571, 572, 573, 574, + 580, 0, 564, 565, 566, 562, 563, 559, 560, 561, + 579, 578, 0, 0, 756, 0, 756, 88, 11, 225, + 184, 0, 290, 289, 288, 254, 265, 675, 674, 676, + 673, 0, 0, 0, 0, 552, 0, 0, 0, 0, + 550, 549, 0, 544, 0, 577, 576, 0, 756, 90, + 653, 29, 0, 0, 31, 0, 0, 0, 551, 0, + 575, 756, 756, 0, 0, 0, 0, 0, 0, 756, + 84, 34, 32, 547, 546, 548, 545, 86 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -922, -922, -284, -922, 238, -922, -922, 853, -127, -922, - 195, -424, 519, -126, -922, -78, -922, -922, -148, -922, - -922, -922, 840, -922, -922, -922, -922, -922, -582, -922, - -922, -111, -922, -922, -922, -922, 286, 474, -641, -922, - -691, -728, -576, -922, -64, -922, 108, -558, -922, -492, - -921, -922, -434, 337, -608, 241, 389, 609, -87, 24, - 86, -287, -647, 859, 230, -162, -130, -922, -128, -922, - -922, -922, -922, -91, -121, -922, -471, -922, -922, -18, - 18, -922, -922, -922, -922, -29, 81, -922, -922, -514, - -922, -16, -922, -567, -104, -60, 288, 716, 90, -922, - -922, -922, 787, -367, 1319, -68, -481, -1 + -913, -913, -313, -913, -42, -913, -913, 767, -123, -913, + 235, -421, 437, -121, -913, -913, -177, -913, -913, -237, + -913, -913, -913, 752, -913, -913, -913, -913, -913, -350, + -913, -913, -110, -913, -913, -913, -913, 203, 383, -664, + -913, -700, -725, -549, -913, -155, -913, 16, -519, -913, + -483, -912, -913, -448, 245, -647, -221, 389, -35, -86, + 137, 64, -266, -638, 763, 665, -162, -113, -913, -103, + -913, -913, -913, -913, -182, -100, -913, -451, -913, -913, + -36, -8, -913, -913, -913, -913, -13, -29, -913, -913, + -703, -913, -109, -913, -590, -135, -60, 328, 703, 309, + -913, -913, -913, 691, -88, 199, 861, -486, -1 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 4, 5, 733, 734, 137, 521, 138, 139, 307, - 140, 292, 293, 141, 533, 751, 329, 709, 895, 343, - 712, 715, 344, 915, 1409, 1474, 1095, 1320, 588, 977, - 1078, 142, 326, 700, 701, 702, 703, 704, 752, 1241, - 753, 782, 464, 465, 674, 675, 1085, 409, 527, 531, - 929, 930, 466, 677, 725, 799, 809, 278, 279, 91, - 92, 345, 180, 346, 93, 289, 94, 644, 95, 645, - 825, 1024, 1025, 1271, 96, 97, 475, 471, 472, 98, - 99, 143, 691, 873, 144, 100, 101, 102, 103, 731, - 732, 917, 1227, 636, 353, 354, 1313, 213, 65, 678, - 679, 227, 228, 1272, 1273, 625, 66, 145 + -1, 4, 5, 912, 913, 137, 521, 138, 139, 307, + 140, 292, 293, 141, 529, 523, 746, 329, 705, 890, + 343, 708, 711, 344, 910, 1407, 1474, 1089, 1317, 584, + 971, 1072, 142, 326, 696, 697, 698, 699, 700, 747, + 1238, 748, 777, 464, 465, 670, 671, 1079, 409, 731, + 527, 923, 924, 466, 673, 721, 794, 804, 278, 279, + 91, 92, 345, 180, 346, 93, 289, 94, 640, 95, + 641, 820, 1018, 1019, 1268, 96, 97, 475, 471, 472, + 98, 99, 143, 687, 868, 144, 100, 101, 102, 103, + 732, 733, 918, 1228, 632, 353, 354, 1310, 213, 65, + 674, 675, 227, 228, 1269, 1270, 621, 66, 145 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1474,342 +1474,307 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 6, 212, 304, 323, 325, 281, 641, 1232, 492, 680, - 347, 769, 348, 831, 738, 183, 708, 1336, 896, 349, - 389, 146, 615, 255, 985, 256, 181, 611, 768, 187, - 288, 502, 795, 921, 713, 607, 260, 104, 786, 147, - 845, 509, 148, 356, 402, 358, 359, 360, 361, 406, - 363, 922, 365, 833, 367, 1375, 676, 642, 283, 284, - 285, 230, 182, 403, -747, 648, 806, 1012, -748, 149, - 383, 407, 270, 900, 271, 150, 272, 816, 553, 151, - 408, 391, 392, 255, 240, 256, -749, 399, 400, 818, - 280, 280, 819, 152, 771, 805, 153, 554, 290, 257, - 1394, 402, 261, 935, 936, 155, 978, 979, 980, 981, - 904, 352, 906, 907, 908, 909, 910, 408, 184, 273, - 592, 402, 350, 154, 999, 523, 156, 524, 525, 526, - 736, 737, 815, 1067, -747, 189, 898, -747, -748, 901, - 1039, -748, 214, 215, 216, 355, 355, -750, 355, 355, - 355, 355, 1068, 355, 616, 355, -749, 355, 351, -749, - 286, 258, 264, 265, 266, 347, 282, 348, 1337, 269, - 435, 436, 846, 355, 349, 442, 157, 443, 188, 444, - 714, 290, 797, 1073, 355, 355, 452, 454, 306, 536, - 355, 355, 158, 433, 347, 987, 348, 287, 347, 274, - 348, 317, 834, 349, 1376, 402, 159, 349, 217, 218, - 982, 879, 684, 275, 252, 253, 254, -750, 276, 160, - -750, 486, 445, 277, 1245, 983, 984, 410, 605, 787, - 1404, 1405, 1406, 1008, 1009, 1084, 402, 729, 1015, 161, - 402, 402, 162, 402, 219, 220, 1364, 221, 1018, 318, - 805, 1366, 222, 401, 223, 1246, 280, 280, 1090, 1247, - 1248, 988, 1289, 605, 793, 1365, 352, 214, 215, 216, - 1367, 450, 280, 280, 450, 450, 469, 350, 1, 2, - 3, 473, 535, 569, 989, 605, 794, 264, 265, 266, - 269, 211, 1369, 1235, 163, 352, 402, 1094, 1253, 352, - 402, 467, 446, 298, 299, 300, 350, 301, 303, 305, - 350, 1370, 309, 351, 6, 1451, 447, 314, 402, 1486, - 164, 448, 320, 321, 402, 324, 327, 328, 402, 332, - 333, 911, 912, 217, 218, 319, 1492, 1487, 1087, 1097, - 402, 408, 351, 1488, 264, 1096, 351, 1489, 1000, 165, - 290, 1250, 402, 470, 1005, 1493, 821, 402, 166, 1504, - 823, 402, 518, 468, 512, 680, 513, 167, 476, 219, - 220, 1532, 221, 983, 984, 1091, 1533, 222, 357, 223, - 1534, 168, 10, 362, 11, 364, 355, 366, 169, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, 1088, 1228, 589, 878, 1415, 627, - 402, 628, 676, 629, 390, 1249, 170, 1242, 395, 396, - 397, 440, -267, 283, 284, 285, 743, 477, 1256, 1535, - 744, 983, 984, 1239, 1259, 1260, 919, 920, 240, 450, - 983, 984, 1317, 450, 450, 450, 450, 450, 1257, 1258, - 726, 171, 283, 284, 285, 617, 630, 450, 172, 618, - 173, 450, 450, 805, 1014, 754, 626, 174, 486, 638, - 528, 185, 529, 745, 530, 186, 705, 190, 214, 215, - 216, 1351, 1352, 1353, 609, 467, 815, 1017, 1255, 681, - 191, 303, 309, 1093, 912, 6, 192, 494, 439, -90, - 259, -90, 619, -90, 706, 983, 984, 1316, 268, 295, - 1319, 310, 311, 347, 467, 348, 312, 727, 313, 1321, - 6, 1334, 349, 322, 746, 286, 384, 236, 237, 238, - 239, -90, -266, -90, 386, -90, 631, 387, 393, 488, - 240, 718, 489, 490, 217, 218, 610, 468, 503, 514, - 632, 515, 505, 747, 286, 633, 516, 528, 476, 529, - 634, 986, 247, 248, 249, 250, 251, 748, 252, 253, - 254, 520, 749, 532, 402, 537, 468, 750, 538, 544, - 219, 220, 620, 221, 539, 410, 469, 783, 222, 1066, - 223, 238, 239, 546, 540, 541, 621, 450, 542, 543, - 545, 622, 240, 551, 638, 291, 623, 547, 626, 548, - 549, 467, 842, 589, 352, 550, 568, 626, 626, 626, - 626, 626, 626, 410, 896, 350, 1392, 1393, 552, 555, - 556, 183, 789, 557, 410, 558, 559, 1394, 560, 561, - 467, 754, 181, 6, 826, 562, 754, 563, 584, 564, - 726, 565, 726, 726, 726, 726, 726, 571, 566, 572, - 573, 351, 245, 246, 247, 248, 249, 250, 251, 705, - 252, 253, 254, 468, 575, 576, 754, 754, 182, 754, - 754, 754, 754, 647, 577, 1342, 578, 1343, 580, 581, - 6, 1481, 1482, 1483, 790, 1394, 587, 990, 991, 594, - 596, -268, 468, 626, 598, 995, 605, 996, 624, 614, - 646, 469, 643, 640, 469, 682, 240, 727, 64, 727, - 727, 727, 727, 727, 685, 710, 247, 248, 249, 250, - 251, 918, 252, 253, 254, 686, 467, 687, 688, 467, - 932, 1412, 183, 711, 1410, 689, 707, 730, 755, 757, - 728, 783, 410, 181, 788, 1076, 1077, 1419, 1420, 1421, - 680, 1399, 1400, 1401, 1402, 1403, 758, 1404, 1405, 1406, - 765, 1079, 193, 194, 195, 196, 197, 763, 764, 231, - 766, 759, 767, 760, 798, 761, 807, -357, 626, 182, - 410, 410, 817, 1529, 783, 820, 824, 626, 468, 828, - 1536, 468, 829, 1394, 638, 830, 832, 676, 1064, 835, - 836, 844, 467, 874, 638, 875, 876, 1230, 1231, 1399, - 1400, 1401, 1402, 1403, 1026, 1404, 1405, 1406, 877, 1477, - 880, 754, 882, 1475, 1479, 883, 476, 726, 897, 899, - 1484, 1485, 249, 250, 251, 902, 252, 253, 254, 923, - 791, 905, 913, 924, 705, 926, 916, 635, 925, 927, - 800, 801, 802, 803, 804, 992, 754, 934, 993, 994, - 467, 1002, 6, 1003, 468, 997, 1001, 870, 871, 1004, - 626, 449, 451, 453, 455, 456, 626, 626, 626, 626, - 626, 626, 1086, 1010, 1508, 410, 1011, 1020, 1506, 1345, - 1347, 1349, 841, 1480, 727, 805, 398, 815, -275, 1023, - 1030, 638, 1251, 1032, 469, 1069, 1038, 1082, 1070, 1071, - 355, 355, 1083, 1089, 1092, 1521, 1279, 932, 1233, 1401, - 1402, 1403, 468, 1404, 1405, 1406, 1234, 1236, 1528, 467, - 912, 1240, 1237, 1238, 1244, 893, 1252, 1261, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 430, 431, 183, - 434, 1262, 1263, 1264, 1274, 438, 1275, 1424, 1276, 1425, - 181, 1426, 1277, 638, 1427, 1428, 1429, 1278, 1280, 1282, - 1355, 1283, 1284, 1285, 1292, 1293, 589, 1294, 280, 792, - 1295, 468, 1296, 469, 1297, 410, 410, 1315, 1318, 469, - 469, 493, 1322, 1325, 1323, 1327, 182, 1326, 1328, 810, - 811, 812, 813, 814, 1332, 1338, 1354, 1339, 467, 355, - 1006, 1340, 1341, 1357, 467, 467, 1358, 1359, 504, 1013, - 1360, 214, 215, 216, 1361, 283, 284, 285, 886, 597, - 628, 1362, 887, 600, 601, 602, 603, 604, 1027, 1028, - 1029, 1368, 1031, 1371, 1034, 1035, 1036, 606, 214, 215, - 216, 612, 613, 1086, 1372, 1373, 1374, 324, 1377, 1408, - 1411, 1414, 626, 1416, 1417, 1435, 1437, 1436, 589, 1438, - 468, 589, 1418, 894, 469, 888, 468, 468, 1422, 1423, - 567, 1439, 1440, 1441, 1446, 1491, 1495, 217, 218, 283, - 284, 285, 719, 1450, 1476, 1490, 720, 582, 583, 467, - 1496, 1478, 1074, 1494, 590, 478, 479, 480, 1497, 800, - 801, 802, 803, 804, 217, 218, 1499, 1500, 1501, 1507, - 1511, 1509, 1510, 219, 220, 1512, 221, 286, 1513, 1514, - 1515, 222, 1516, 223, 1530, 1517, 1531, 1518, 1229, 721, - 495, 1520, 1522, 1335, 1523, 827, 1333, 1407, 508, 1080, - 219, 220, 881, 221, 1314, 889, 754, 1331, 222, 1007, - 223, 468, 1298, 1041, 1356, 585, 637, 510, 1324, 890, - 226, 217, 218, 586, 891, 0, 1016, 0, 0, 892, - 0, 0, 0, 918, 0, 0, 0, 785, 224, 0, - 0, 286, 225, 0, 0, 0, 0, 226, 0, 1386, - 1387, 1388, 1389, 1390, 1391, 1392, 1393, 483, 220, 0, - 221, 0, 717, 0, 0, 222, 1394, 223, 0, 722, - 681, 0, 0, 0, 0, 0, 742, 754, 783, 280, - 0, 1384, 0, 723, 0, 0, 0, 0, 724, 0, - 469, 0, 469, 0, 287, 467, 0, 0, 0, 0, - 1075, 0, 0, 6, 0, 0, 0, 810, 811, 812, - 813, 814, 0, 0, 0, 467, 0, 467, 0, 234, - 235, 236, 237, 238, 239, 0, 0, 1431, 1432, 0, - 1433, 0, 1434, 0, 240, 0, 0, 784, 0, 0, - 0, 0, 1299, 0, 0, 0, 0, 0, 0, 469, - 0, 637, 589, 0, 1013, 0, 0, 468, 932, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 589, 589, - 589, 0, 0, 0, 467, 1472, 0, 468, 0, 468, - 0, 0, 1503, 0, 1395, 1396, 1397, 1398, 0, 822, - 1399, 1400, 1401, 1402, 1403, 0, 1404, 1405, 1406, 0, - 1390, 1391, 1392, 1393, 0, 0, 0, 0, 0, 0, - 0, 229, 0, 1394, 837, 838, 839, 840, 0, 843, - 0, 0, 0, 0, 0, 0, 1314, 1314, 1314, 1314, - 1314, 0, 1314, 0, 267, 0, 468, 0, 469, 0, - 589, 0, 0, 0, 0, 589, 0, 0, 783, 783, - 783, 589, 589, 0, 294, 244, 245, 246, 247, 248, - 249, 250, 251, 467, 252, 253, 254, 0, 0, 0, - 0, 0, 316, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 331, 0, 1524, 1525, 1526, 931, 1527, 0, + 6, 212, 502, 304, 676, 891, 281, 323, 181, 325, + 1229, 781, 356, 607, 358, 359, 360, 361, 826, 363, + 389, 365, 979, 367, 911, 704, 637, 347, 709, 492, + -748, 183, -749, 611, 764, 1334, 182, 348, 603, 383, + 349, 255, 672, 256, 840, 187, 895, 104, -750, 828, + 391, 392, 264, 265, 266, 406, 399, 400, 1373, 269, + 638, 230, 509, 763, -751, 1006, 402, 899, 644, 901, + 902, 903, 904, 905, 549, 929, 930, 407, 972, 973, + 974, 975, 408, 153, 408, 403, 260, 766, 402, 402, + 280, 280, 1061, 550, 214, 215, 216, 800, 290, 810, + -748, 801, -749, -748, 350, -749, 402, 588, 1033, 306, + 402, 1062, 811, 240, 402, 283, 284, 285, -750, 148, + 1078, -750, 402, 402, 1362, 1242, 149, 352, 993, 1243, + 906, 907, 351, 1244, -751, 800, -91, -751, -91, 258, + -91, 1245, 1286, 1363, 1364, 355, 355, 1392, 355, 355, + 355, 355, 261, 355, 514, 355, 255, 355, 256, 893, + 217, 218, 896, 1365, 792, 612, 813, 150, 10, 814, + 11, 435, 436, 355, 710, 240, 841, 264, 265, 266, + 269, 290, 347, 680, 355, 355, 1335, 452, 454, 532, + 355, 355, 348, 433, 188, 349, 219, 220, 829, 221, + 151, 1067, 874, 976, 222, 152, 223, 1374, 725, 154, + 1009, 347, 257, 1367, 402, 347, 402, 286, 977, 978, + 1012, 348, 156, 402, 349, 348, 155, 410, 349, 981, + 1084, 146, 1368, 1451, 264, 1487, 402, 449, 451, 453, + 455, 456, 1488, 252, 253, 254, 620, 402, 184, 147, + 1250, 1493, 565, 1088, 287, 1489, 280, 280, 476, 350, + 790, 229, 1095, 157, 1232, 982, 1490, 1002, 1003, 282, + 1494, 450, 280, 280, 450, 450, 469, 1402, 1403, 1404, + 1096, 473, 352, 512, 267, 513, 158, 351, 350, 159, + 402, 160, 350, 1252, 402, 1, 2, 3, 161, 983, + 402, 249, 250, 251, 294, 252, 253, 254, 162, 1505, + 240, 352, 402, 1533, 6, 352, 351, 1090, 402, 1534, + 351, 727, 316, 728, 729, 730, 524, 818, 525, 401, + 526, 1535, 331, 163, -91, 999, -91, 1536, -91, 601, + 782, 468, 164, 298, 299, 300, 994, 301, 303, 305, + 290, 165, 309, 166, 1247, 676, 442, 314, 443, 167, + 444, 1091, 320, 321, 168, 324, 327, 328, 169, 332, + 333, 170, 1081, 816, 873, 601, 788, 385, 171, 524, + 388, 525, 172, 980, 786, 173, 355, 174, 1239, 185, + 1321, 601, 789, 672, 795, 796, 797, 798, 799, 189, + 977, 978, 1085, 445, 186, 593, 585, 190, 1082, 596, + 597, 598, 599, 600, 467, 1415, 270, 191, 271, 192, + 272, 915, 916, 602, 404, 405, 259, 608, 609, 623, + 268, 624, 295, 625, 247, 248, 249, 250, 251, 450, + 252, 253, 254, 450, 450, 450, 450, 450, 476, 1253, + 977, 978, 1236, 800, 1008, 1256, 1257, 450, 977, 978, + 1314, 450, 450, 273, 810, 1011, 622, 1087, 907, 634, + 441, 1349, 1350, 1351, 310, 518, 626, 1093, 1094, 888, + 311, 1254, 1255, 446, 214, 215, 216, 312, 485, 677, + 487, 313, 701, 977, 978, 6, 317, 447, 318, 319, + 322, 384, 448, 386, 702, 387, 393, 497, 477, 498, + 499, 500, 501, 408, 440, 488, 470, 723, -267, 489, + 6, 1332, 503, 505, 606, 468, 347, 528, 490, 511, + 515, 303, 309, 516, 520, 402, 348, 494, 519, 349, + 1318, 522, 533, 274, 534, 580, 535, 536, 537, 530, + 217, 218, 538, 539, 468, 1060, 627, 275, 540, 780, + 541, 542, 276, 1000, 543, 544, 545, 277, 547, 551, + 628, 567, 1007, 546, 548, 629, 552, 553, 554, 555, + 630, 410, 469, 778, 556, 557, 219, 220, 566, 221, + 558, 559, 570, 450, 222, 560, 223, 605, 467, 561, + 634, 562, 568, 350, 622, 229, 569, 571, 837, 585, + 572, 573, 891, 622, 622, 622, 622, 622, 622, 410, + 181, 594, 574, 576, 224, 577, 352, 467, 225, 583, + 410, 351, 590, 226, 592, -269, 601, 639, 610, 6, + 821, 1246, 595, 183, 636, 642, 678, 468, 182, 681, + 703, 682, 683, 684, 714, 1068, 685, 726, 294, 706, + 758, 750, 795, 796, 797, 798, 799, 759, 785, 783, + 635, 752, 283, 284, 285, 715, 468, 753, 760, 716, + 294, 701, 761, 762, 793, 802, 6, 812, 294, -358, + 815, 819, 984, 985, 1482, 1483, 1484, 823, 831, 622, + 989, 824, 990, 825, 827, 64, 830, 469, 839, 1340, + 469, 1341, 869, 723, 1481, 723, 723, 723, 723, 723, + 467, 476, 717, 643, 870, 871, 211, 872, 875, 877, + 181, 751, 919, 1313, 878, 926, 1316, 892, 894, 917, + 897, 784, 900, 908, 920, 921, 778, 410, 986, 467, + 928, 765, 676, 183, 1070, 996, 1071, 995, 182, 193, + 194, 195, 196, 197, 987, 988, 231, 1073, 1408, 991, + 997, 998, 468, 800, 286, 468, 1004, 1005, 1017, 810, + 404, 767, -276, 622, 1014, 410, 410, 1024, 1026, 778, + 672, 1032, 622, 1063, 768, 769, 1064, 1530, 1065, 634, + 1076, 1083, 718, 1058, 1537, 1086, 1077, 1092, 907, 634, + 770, 1097, 1098, 357, 1231, 1230, 719, 1233, 362, 1020, + 364, 720, 366, 803, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, 382, 1234, + 771, 294, 1237, 772, 1235, 467, 773, 468, 467, 390, + 1249, 1241, 1258, 395, 396, 397, 1007, 631, 1475, 1259, + 1260, 1261, 774, 1272, 1271, 701, 1273, 6, 1274, 1275, + 1289, 1279, 1280, 1282, 775, 622, 1277, 1281, 1290, 1392, + 1291, 622, 622, 622, 622, 622, 622, 1080, 776, 1276, + 410, 1292, 1293, 398, 1294, 1312, 1315, 880, 1319, 723, + 238, 239, 1320, 1352, 1326, 468, 634, 1248, 1330, 469, + 1336, 240, 1370, 865, 866, 1337, 1338, 1339, 1355, 1356, + 467, 926, 1357, 1358, 1359, 1507, 1360, 1366, 914, 1369, + 1371, 1372, 1375, 439, 1406, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 430, 431, 181, 434, 1353, 288, + 1323, 1324, 438, 1409, 1417, 1411, 294, 1412, 1435, 1413, + 1410, 1416, 1418, 1436, 468, 1422, 1423, 634, 467, 183, + 236, 237, 238, 239, 182, 1437, 1440, 1419, 1420, 1421, + 585, 1438, 280, 240, 1446, 787, 1439, 469, 493, 410, + 410, 1441, 1450, 469, 469, 1399, 1400, 1401, 1476, 1402, + 1403, 1404, 1478, 1492, 1479, 805, 806, 807, 808, 809, + 1491, 1495, 1500, 355, 1496, 504, 214, 215, 216, 1497, + 1498, 1501, 1502, 1508, 1511, 247, 248, 249, 250, 251, + 1512, 252, 253, 254, 1510, 1513, 1514, 467, 1515, 1516, + 1531, 564, 1322, 283, 284, 285, 738, 1517, 1518, 1477, + 739, 1519, 468, 1532, 1331, 1521, 1480, 1080, 468, 468, + 1523, 1524, 1485, 1486, 495, 1405, 622, 876, 1075, 822, + 508, 1074, 585, 1329, 1295, 585, 1035, 563, 469, 889, + 1354, 510, 217, 218, 355, 355, 1325, 582, 0, 0, + 0, 0, 0, 740, 578, 579, 283, 284, 285, 613, + 0, 586, 324, 614, 0, 245, 246, 247, 248, 249, + 250, 251, 0, 252, 253, 254, 1509, 0, 219, 220, + 0, 221, 0, 0, 0, 467, 222, 0, 223, 0, + 0, 467, 467, 0, 0, 0, 0, 0, 0, 0, + 486, 0, 0, 468, 741, 286, 615, 0, 1522, 0, + 0, 1333, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1529, 0, 633, 1001, 1343, 1345, 1347, 707, 0, + 0, -268, 0, 742, 0, 724, 0, 0, 0, 0, + 0, 1010, 0, 0, 1251, 0, 0, 743, 0, 0, + 0, 0, 744, 0, 919, 0, 0, 745, 286, 0, + 0, 531, 754, 0, 755, 0, 756, 0, 0, 713, + 0, 0, 0, 0, 0, 1278, 467, 0, 0, 737, + 0, 0, 0, 0, 0, 0, 616, 677, 0, 0, + 0, 0, 214, 215, 216, 778, 280, 0, 1382, 0, + 617, 0, 0, 0, 1424, 618, 1425, 469, 1426, 469, + 619, 1427, 1428, 1429, 0, 1069, 0, 0, 0, 0, + 6, 0, 805, 806, 807, 808, 809, 0, 0, 0, + 283, 284, 285, 881, 0, 624, 0, 882, 0, 0, + 779, 0, 0, 914, 0, 1431, 1432, 0, 1433, 0, + 1434, 0, 468, 474, 633, 0, 0, 0, 217, 218, + 0, 0, 0, 0, 0, 0, 469, 0, 0, 585, + 0, 0, 468, 0, 468, 0, 926, 0, 0, 0, + 883, 0, 0, 836, 0, 0, 585, 585, 585, 0, + 0, 0, 817, 1472, 219, 220, 70, 221, 71, 72, + 73, 0, 222, 1392, 223, 0, 0, 0, 0, 1386, + 1387, 1388, 1389, 1390, 1391, 0, 0, 832, 833, 834, + 835, 0, 838, 0, 1392, 467, 80, 0, 0, 722, + 0, 468, 286, 0, 0, 0, 581, 1311, 1390, 1391, + 749, 226, 263, 486, 0, 467, 0, 467, 0, 1392, + 0, 0, 0, 0, 0, 0, 469, 0, 585, 0, + 884, 82, 83, 0, 0, 585, 0, 0, 778, 778, + 778, 585, 585, 0, 885, 0, 0, 0, 88, 886, + 0, 0, 0, 90, 887, 0, 0, 0, 0, 925, + 0, 0, 0, 0, 0, 0, 0, 233, 234, 235, + 236, 237, 238, 239, 467, 1525, 1526, 1527, 0, 1528, + 0, 0, 0, 240, 0, 1348, 1010, 0, 0, 0, + 0, 468, 0, 469, 0, 585, 0, 1397, 1398, 1399, + 1400, 1401, 0, 1402, 1403, 1404, 0, 0, 1021, 1022, + 1023, 0, 1025, 0, 1028, 1029, 1030, 0, 1397, 1398, + 1399, 1400, 1401, 633, 1402, 1403, 1404, 585, 0, 1388, + 1389, 1390, 1391, 633, 0, 0, 0, 1013, 0, 0, + 585, 778, 1392, 1397, 1398, 1399, 1400, 1401, 778, 1402, + 1403, 1404, 0, 0, 1031, 0, 0, 0, 468, 0, + 0, 0, 0, 0, 467, 1036, 1037, 1038, 1039, 1040, + 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, + 1051, 1052, 1053, 1054, 1055, 1056, 749, 1059, 0, 0, + 0, 749, 214, 215, 216, 722, 0, 722, 722, 722, + 722, 722, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 0, 252, 253, 254, 0, 0, 0, 0, + 749, 749, 0, 749, 749, 749, 749, 0, 0, 0, + 633, 467, 1311, 1311, 1311, 1311, 1311, 0, 1311, 0, + 0, 0, 0, 0, 0, 925, 0, 0, 0, 0, + 0, 1376, 1377, 1378, 1379, 1380, 0, 1383, 217, 218, + 0, 0, 0, 0, 0, 1499, 1397, 1398, 1399, 1400, + 1401, 0, 1402, 1403, 1404, 232, 233, 234, 235, 236, + 237, 238, 239, 0, 0, 0, 0, 0, 0, 330, + 0, 0, 240, 0, 219, 220, 0, 221, 0, 0, + 0, 633, 222, 1240, 223, 0, 0, 0, 0, 0, + 0, 0, 0, 1311, 1311, 1311, 1311, 1311, 1311, 1311, + 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, + 1311, 1311, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459, + 1460, 1461, 1462, 1463, 1464, 1465, 1466, 1467, 1468, 1469, + 1470, 0, 0, 0, 0, 1284, 0, 0, 0, 0, + 0, 1296, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 749, 0, 0, 0, 1311, + 0, 722, 0, 7, 8, 9, 10, 0, 11, 12, + 13, 198, 68, 0, 0, 0, 0, 0, 1503, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 749, + 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 0, 252, 253, 254, 0, 0, 0, 589, 0, + 15, 69, 0, 1311, 199, 0, 200, 201, 202, 74, + 75, 0, 20, 76, 0, 0, 203, 22, 0, 0, + 78, 0, 1520, 0, 0, 23, 24, 204, 478, 479, + 480, 26, 0, 0, 205, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 206, 234, 235, 236, 237, 238, 239, 0, 44, 0, + 45, 0, 46, 0, 0, 0, 240, 47, 0, 207, + 208, 50, 0, 0, 51, 84, 0, 0, 0, 52, + 0, 0, 53, 85, 86, 87, 209, 0, 0, 89, + 0, 210, 0, 0, 217, 218, 232, 233, 234, 235, + 236, 237, 238, 239, 56, 0, 0, 57, 58, 59, + 0, 0, 60, 240, 61, 62, 0, 0, 63, 0, + 0, 0, 0, 0, 1328, 0, 0, 0, 0, 0, + 483, 220, 0, 221, 0, 0, 0, 0, 222, 0, + 223, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 214, 215, 216, 0, 0, + 0, 0, 0, 1381, 0, 0, 0, 287, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1361, 0, + 0, 0, 0, 0, 0, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 0, 252, 253, 254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1016, 469, 0, 589, 1314, 1314, 1314, 1314, - 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, - 1314, 1314, 1314, 1314, 1314, 468, 0, 385, 467, 0, - 388, 0, 0, 0, 0, 0, 589, 1399, 1400, 1401, - 1402, 1403, 0, 1404, 1405, 1406, 0, 0, 0, 589, - 783, 637, 0, 0, 0, 0, 0, 783, 0, 0, - 0, 637, 0, 0, 0, 1019, 0, 0, 0, 0, - 1314, 1383, 0, 0, 404, 405, 0, 0, 0, 0, - 0, 0, 1037, 0, 0, 0, 0, 0, 0, 0, - 468, 0, 0, 1042, 1043, 1044, 1045, 1046, 1047, 1048, - 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, - 1059, 1060, 1061, 1062, 0, 1065, 0, 0, 0, 0, - 441, 0, 0, 1314, 1378, 1379, 1380, 1381, 1382, 0, - 1385, 1442, 1443, 1444, 1445, 0, 1448, 1449, 485, 770, - 487, 0, 0, 0, 0, 0, 0, 0, 234, 235, - 236, 237, 238, 239, 0, 771, 0, 497, 637, 498, - 499, 500, 501, 240, 0, 0, 0, 0, 0, 772, - 214, 215, 216, 0, 931, 0, 0, 0, 0, 511, - 0, 0, 773, 774, 0, 0, 0, 0, 519, 0, - 0, 522, 0, 0, 0, 0, 0, 0, 775, 534, - 0, 0, 0, 0, 1452, 1453, 1454, 1455, 1456, 1457, - 1458, 1459, 1460, 1461, 1462, 1463, 1464, 1465, 1466, 1467, - 1468, 1469, 1470, 0, 0, 0, 0, 0, 776, 0, - 637, 777, 1243, 0, 778, 0, 217, 218, 570, 0, - 0, 0, 574, 0, 0, 0, 0, 0, 0, 0, - 779, 0, 0, 0, 0, 229, 0, 0, 0, 0, - 0, 0, 780, 0, 0, 0, 0, 0, 1502, 0, - 0, 0, 219, 220, 0, 221, 781, 0, 0, 0, - 222, 0, 223, 0, 1287, 245, 246, 247, 248, 249, - 250, 251, 599, 252, 253, 254, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 315, 0, 294, 7, - 8, 9, 10, 0, 11, 12, 13, 198, 68, 0, - 639, 1519, 0, 0, 0, 0, 0, 0, 0, 0, - 294, 0, 0, 0, 0, 0, 0, 0, 294, 0, - 0, 0, 0, 0, 0, 0, 234, 235, 236, 237, - 238, 239, 0, 0, 0, 0, 15, 69, 0, 0, - 199, 240, 200, 201, 202, 74, 75, 0, 20, 76, - 0, 0, 203, 22, 735, 0, 78, 0, 0, 0, - 0, 23, 24, 204, 0, 756, 0, 26, 0, 0, - 205, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 206, 0, 0, 0, - 0, 0, 0, 0, 44, 0, 45, 0, 46, 0, - 0, 0, 0, 47, 0, 207, 208, 50, 0, 0, - 51, 84, 0, 0, 404, 52, 0, 0, 53, 85, - 86, 87, 209, 0, 0, 89, 0, 210, 0, 0, - 649, 650, 651, 10, 0, 11, 652, 653, 67, 68, - 56, 0, 654, 57, 58, 59, 0, 0, 60, 0, - 61, 62, 0, 0, 63, 0, 0, 808, 0, 0, - 1330, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 0, 252, 253, 254, 459, 294, 0, 655, 69, 0, - 0, 70, 0, 71, 72, 73, 74, 460, 0, 656, - 76, 0, 0, 77, 657, 0, 0, 78, 0, 0, - 0, 0, 658, 659, 79, 0, 0, 0, 0, 0, - 0, 80, 0, 0, 1363, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, - 0, 885, 0, 0, 0, 660, 0, 661, 0, 662, - 0, 0, 0, 461, 663, 0, 82, 83, 664, 0, - 0, 665, 84, 0, 0, 931, 666, 0, 0, 667, - 85, 86, 87, 88, 0, 0, 89, 0, 90, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 668, 0, 0, 669, 670, 0, 0, 0, 671, - 0, 672, 0, 0, 0, 673, 0, 0, 0, 0, - 0, 294, 0, 0, 0, 0, 0, 1098, 1099, 1100, - 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 0, 1109, + 0, 0, 0, 234, 235, 236, 237, 238, 239, 0, + 925, 217, 218, 0, 1442, 1443, 1444, 1445, 240, 1448, + 1449, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 0, 252, 253, 254, 0, 0, 0, 1287, + 0, 0, 0, 0, 0, 0, 0, 219, 220, 0, + 221, 0, 0, 0, 0, 222, 0, 223, 1099, 1100, + 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 0, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, - 0, 0, 1473, 0, 0, 0, 0, 1120, 1121, 1122, + 1120, 315, 749, 0, 0, 0, 0, 1473, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, - 1133, 1134, 1135, 1136, 1137, 1138, 0, 0, 1139, 1140, + 1133, 1134, 1135, 1136, 1137, 1138, 1139, 0, 0, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, - 1151, 1152, 1153, 0, 1154, 0, 1155, 1156, 1157, 1158, - 1159, 1160, 1161, 1162, 1163, 0, 1164, 1165, 1166, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1167, 0, 0, 0, 0, 0, - 1168, 1169, 1170, 1081, 1171, 1172, 1173, 1174, 1175, 1176, + 1151, 1152, 1153, 1154, 0, 1155, 0, 1156, 1157, 1158, + 1159, 1160, 1161, 1162, 1163, 1164, 0, 1165, 1166, 1167, + 245, 246, 247, 248, 249, 250, 251, 0, 252, 253, + 254, 0, 0, 749, 0, 1168, 0, 0, 0, 0, + 0, 1169, 1170, 1171, 0, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, - 1197, 1198, 1199, 1200, 1201, 1202, 1203, 0, 0, 735, - 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, + 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 0, 0, + 0, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, - 1224, 1413, 1225, 1226, 0, 0, 0, 0, 0, 232, - 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 240, 0, 0, 0, + 1224, 1225, 1414, 1226, 1227, 1099, 1100, 1101, 1102, 1103, + 1104, 1105, 1106, 1107, 1108, 1109, 0, 1110, 1111, 1112, + 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 0, 0, + 0, 0, 0, 0, 0, 1121, 1122, 1123, 1124, 1125, + 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, + 1136, 1137, 1138, 1139, 0, 0, 1140, 1141, 1142, 1143, + 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, + 1154, 0, 1155, 0, 1156, 1157, 1158, 1159, 1160, 1161, + 1162, 1163, 1164, 0, 1165, 1166, 1167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1168, 0, 0, 0, 0, 0, 1169, 1170, + 1171, 0, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, + 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, + 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, + 1200, 1201, 1202, 1203, 1204, 0, 0, 0, 1205, 1206, + 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, + 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 0, + 1226, 1227, 7, 8, 9, 10, 0, 11, 12, 13, + 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1254, 0, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, - 1106, 1107, 1108, 0, 1109, 1110, 1111, 1112, 1113, 1114, - 1115, 1116, 1117, 1118, 1119, 0, 0, 0, 0, 0, - 0, 1281, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, - 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, - 1138, 0, 0, 1139, 1140, 1141, 1142, 1143, 1144, 1145, - 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 0, 1154, - 0, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, - 0, 1164, 1165, 1166, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 0, 252, 253, 254, 1167, - 0, 0, 593, 0, 0, 1168, 1169, 1170, 0, 1171, - 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, - 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, - 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, - 1202, 1203, 0, 0, 0, 1204, 1205, 1206, 1207, 1208, - 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, - 1219, 1220, 1221, 1222, 1223, 1224, 0, 1225, 1226, 7, - 8, 9, 10, 0, 11, 12, 13, 491, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 232, 233, 234, 235, 236, 237, 238, 239, 0, - 0, 0, 0, 0, 0, 0, 15, 336, 240, 0, - 199, 0, 200, 201, 202, 74, 0, 0, 20, 337, - 0, 0, 203, 22, 0, 0, 78, 0, 0, 0, - 0, 23, 24, 204, 0, 0, 0, 26, 0, 0, - 205, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 206, 0, 1350, 0, - 0, 0, 0, 0, 44, 0, 45, 0, 46, 0, - 0, 0, 0, 47, 0, 207, 208, 50, 0, 0, - 51, 84, 0, 0, 0, 52, 0, 0, 53, 339, - 340, 87, 209, 0, 0, 89, 0, 210, 7, 8, - 9, 10, 0, 11, 12, 13, 14, 0, 0, 0, - 56, 0, 0, 57, 58, 59, 0, 0, 60, 0, - 61, 62, 0, 0, 63, 0, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 0, 252, 253, - 254, 0, 0, 0, 1290, 15, 0, 0, 0, 16, - 0, 17, 18, 19, 0, 0, 0, 20, 0, 739, - 740, 21, 22, 0, 0, 0, 770, 0, 0, 0, - 23, 24, 25, 0, 0, 0, 26, 0, 0, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 772, 0, 0, 0, - 0, 0, 0, 44, 0, 45, 0, 46, 0, 773, - 774, 0, 47, 0, 48, 49, 50, 0, 0, 51, - 0, 0, 0, 0, 52, 775, 0, 53, 0, 0, - 0, 54, 0, 0, 0, 1498, 55, 7, 8, 9, - 10, 741, 11, 12, 13, 14, 0, 0, 0, 56, - 0, 0, 57, 58, 59, 776, 0, 60, 777, 61, - 62, 778, 0, 63, 0, 0, 0, 0, 232, 233, - 234, 235, 236, 237, 238, 239, 0, 779, 0, 0, - 0, 0, 0, 0, 15, 240, 0, 0, 16, 780, - 17, 18, 19, 0, 0, 0, 20, 0, 0, 0, - 21, 22, 0, 781, 0, 0, 0, 0, 0, 23, - 24, 25, 0, 0, 0, 26, 0, 0, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 0, 0, 0, 0, 0, - 0, 0, 44, 0, 45, 0, 46, 0, 0, 0, - 0, 47, 0, 48, 49, 50, 0, 0, 51, 0, - 0, 0, 0, 52, 0, 0, 53, 0, 0, 0, - 54, 7, 8, 9, 10, 55, 11, 12, 13, 14, - 0, 214, 215, 216, 0, 0, 0, 0, 56, 0, - 0, 57, 58, 59, 0, 0, 60, 0, 61, 62, - 432, 0, 63, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 0, 252, 253, 254, 15, 437, - 0, 1505, 16, 0, 17, 18, 19, 0, 0, 0, - 20, 0, 0, 0, 21, 22, 0, 0, 0, 0, - 0, 0, 0, 23, 24, 25, 0, 217, 218, 26, + 0, 0, 0, 0, 232, 233, 234, 235, 236, 237, + 238, 239, 0, 0, 0, 0, 0, 0, 0, 15, + 336, 240, 0, 199, 0, 200, 201, 202, 74, 0, + 0, 20, 337, 0, 0, 203, 22, 0, 0, 78, + 0, 0, 0, 0, 23, 24, 204, 0, 0, 0, + 26, 0, 0, 205, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 206, + 0, 0, 0, 0, 0, 0, 0, 44, 0, 45, + 0, 46, 0, 0, 0, 0, 47, 0, 207, 208, + 50, 0, 0, 51, 84, 0, 0, 0, 52, 0, + 0, 53, 339, 340, 87, 209, 0, 0, 89, 0, + 210, 7, 8, 9, 10, 0, 11, 12, 13, 14, + 0, 0, 0, 56, 0, 0, 57, 58, 59, 0, + 0, 60, 0, 61, 62, 0, 0, 63, 0, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 0, 252, 253, 254, 0, 0, 0, 1506, 15, 0, + 0, 0, 16, 0, 17, 18, 19, 0, 0, 0, + 20, 0, 734, 735, 21, 22, 0, 0, 0, 0, + 0, 0, 0, 23, 24, 25, 0, 0, 0, 26, 0, 0, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 0, 0, 0, 0, 0, 0, 0, 44, 0, 45, 0, - 46, 0, 0, 219, 220, 47, 221, 48, 49, 50, - 0, 222, 51, 223, 0, 0, 0, 52, 0, 0, + 46, 0, 0, 0, 0, 47, 0, 48, 49, 50, + 0, 0, 51, 0, 0, 0, 0, 52, 0, 0, 53, 0, 0, 0, 54, 7, 8, 9, 10, 55, - 11, 12, 13, 14, 0, 0, 0, 496, 0, 0, + 11, 12, 13, 14, 736, 214, 215, 216, 0, 0, 0, 0, 56, 0, 0, 57, 58, 59, 0, 0, - 60, 0, 61, 62, 0, 0, 63, 0, 0, 0, - 232, 233, 234, 235, 236, 237, 238, 239, 0, 0, - 0, 0, 15, 716, 0, 0, 16, 240, 17, 18, + 60, 0, 61, 62, 0, 0, 63, 1385, 1386, 1387, + 1388, 1389, 1390, 1391, 0, 0, 0, 0, 0, 0, + 0, 0, 15, 1392, 0, 0, 16, 0, 17, 18, 19, 0, 0, 0, 20, 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 23, 24, 25, - 0, 0, 0, 26, 0, 0, 27, 28, 29, 30, + 0, 217, 218, 26, 0, 0, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 0, 0, 0, 0, 0, 0, 0, - 44, 0, 45, 0, 46, 0, 0, 0, 0, 47, - 0, 48, 49, 50, 0, 0, 51, 0, 0, 0, + 44, 0, 45, 0, 46, 0, 0, 219, 220, 47, + 221, 48, 49, 50, 0, 222, 51, 223, 0, 0, 0, 52, 0, 0, 53, 0, 0, 0, 54, 7, - 8, 9, 10, 55, 11, 12, 13, 14, 0, 214, - 215, 216, 0, 0, 884, 0, 56, 0, 0, 57, - 58, 59, 0, 0, 60, 0, 61, 62, 0, 0, - 63, 0, 0, 591, 0, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 15, 252, 253, 254, + 8, 9, 10, 55, 11, 12, 13, 14, 0, 0, + 0, 496, 0, 0, 0, 0, 56, 0, 0, 57, + 58, 59, 0, 0, 60, 0, 61, 62, 432, 0, + 63, 0, 1394, 1395, 1396, 0, 0, 1397, 1398, 1399, + 1400, 1401, 0, 1402, 1403, 1404, 15, 437, 0, 0, 16, 0, 17, 18, 19, 0, 0, 0, 20, 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, - 0, 23, 24, 25, 0, 217, 218, 26, 0, 0, + 0, 23, 24, 25, 0, 0, 0, 26, 0, 0, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 0, 0, 0, 0, 0, 0, 0, 44, 0, 45, 0, 46, 0, - 0, 219, 220, 47, 221, 48, 49, 50, 0, 222, - 51, 223, 0, 0, 0, 52, 0, 0, 53, 0, + 0, 0, 0, 47, 0, 48, 49, 50, 0, 0, + 51, 0, 0, 0, 0, 52, 0, 0, 53, 0, 0, 0, 54, 7, 8, 9, 10, 55, 11, 12, - 13, 14, 928, 214, 215, 216, 0, 0, 0, 0, + 13, 14, 0, 214, 215, 216, 0, 0, 879, 0, 56, 0, 0, 57, 58, 59, 0, 0, 60, 0, 61, 62, 0, 0, 63, 0, 0, 0, 232, 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, 0, - 15, 0, 0, 0, 16, 240, 17, 18, 19, 0, + 15, 712, 0, 0, 16, 240, 17, 18, 19, 0, 0, 0, 20, 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 23, 24, 25, 0, 217, 218, 26, 0, 0, 27, 28, 29, 30, 31, 32, @@ -1818,21 +1783,21 @@ static const yytype_int16 yytable[] = 45, 0, 46, 0, 0, 219, 220, 47, 221, 48, 49, 50, 0, 222, 51, 223, 0, 0, 0, 52, 0, 0, 53, 0, 0, 0, 54, 7, 8, 9, - 10, 55, 11, 12, 13, 14, 0, 0, 0, 0, + 10, 55, 11, 12, 13, 14, 0, 214, 215, 216, 0, 0, 0, 0, 56, 0, 0, 57, 58, 59, - 0, 0, 60, 0, 61, 62, 1063, 0, 63, 0, - 933, 0, 0, 241, 242, 243, 244, 245, 246, 247, + 0, 0, 60, 0, 61, 62, 0, 0, 63, 0, + 0, 587, 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 15, 252, 253, 254, 16, 0, 17, 18, 19, 0, 0, 0, 20, 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 23, - 24, 25, 0, 0, 0, 26, 0, 0, 27, 28, + 24, 25, 0, 217, 218, 26, 0, 0, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 0, 0, 0, 0, 0, - 0, 0, 44, 0, 45, 0, 46, 0, 0, 0, - 0, 47, 0, 48, 49, 50, 0, 0, 51, 0, + 0, 0, 44, 0, 45, 0, 46, 0, 0, 219, + 220, 47, 221, 48, 49, 50, 0, 222, 51, 223, 0, 0, 0, 52, 0, 0, 53, 0, 0, 0, 54, 7, 8, 9, 10, 55, 11, 12, 13, 14, - 1329, 0, 0, 0, 0, 0, 0, 0, 56, 0, + 922, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 57, 58, 59, 0, 0, 60, 0, 61, 62, 0, 0, 63, 0, 0, 0, 232, 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, 0, 15, 0, @@ -1847,7 +1812,7 @@ static const yytype_int16 yytable[] = 53, 0, 0, 0, 54, 7, 8, 9, 10, 55, 11, 12, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 57, 58, 59, 0, 0, - 60, 0, 61, 62, 1471, 0, 63, 1265, 0, 0, + 60, 0, 61, 62, 1057, 0, 63, 0, 927, 0, 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 15, 252, 253, 254, 16, 0, 17, 18, 19, 0, 0, 0, 20, 0, 0, 0, 21, 22, @@ -1857,282 +1822,287 @@ static const yytype_int16 yytable[] = 41, 42, 43, 0, 0, 0, 0, 0, 0, 0, 44, 0, 45, 0, 46, 0, 0, 0, 0, 47, 0, 48, 49, 50, 0, 0, 51, 0, 0, 0, - 0, 52, 0, 0, 53, 0, 0, 0, 54, 649, - 650, 651, 10, 55, 11, 652, 653, 67, 68, 0, - 0, 1040, 0, 0, 0, 0, 56, 0, 0, 57, + 0, 52, 0, 0, 53, 0, 0, 0, 54, 7, + 8, 9, 10, 55, 11, 12, 13, 14, 1327, 0, + 0, 0, 0, 0, 0, 0, 56, 0, 0, 57, 58, 59, 0, 0, 60, 0, 61, 62, 0, 0, - 63, 232, 233, 234, 235, 236, 237, 238, 239, 0, - 0, 0, 0, 459, 0, 0, 655, 69, 240, 0, - 70, 0, 71, 72, 73, 74, 460, 0, 656, 76, - 0, 0, 77, 657, 0, 0, 78, 0, 0, 0, - 0, 658, 659, 79, 0, 0, 0, 0, 0, 0, - 80, 0, 0, 0, 0, 0, 0, 0, 0, 214, - 215, 216, 0, 0, 0, 0, 81, 0, 0, 0, - 0, 0, 0, 0, 660, 0, 661, 0, 662, 0, - 0, 0, 461, 663, 0, 82, 83, 664, 0, 0, - 665, 84, 0, 0, 0, 666, 0, 0, 667, 85, - 86, 87, 88, 0, 0, 89, 0, 90, 7, 8, - 9, 10, 0, 11, 12, 13, 0, 0, 0, 0, - 668, 0, 0, 669, 670, 217, 218, 0, 671, 0, - 672, 0, 692, 0, 673, 0, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 0, 252, 253, - 254, 693, 0, 0, 0, 1300, 0, 0, 0, 0, - 0, 219, 1266, 1267, 1268, 0, 0, 1301, 0, 222, - 0, 223, 1302, 233, 234, 235, 236, 237, 238, 239, - 23, 24, 1269, 0, 0, 0, 26, 1270, 0, 240, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 0, 232, 233, 234, 235, - 236, 237, 238, 239, 0, 45, 0, 46, 0, 0, - 0, 0, 1303, 240, 0, 0, 1304, 0, 0, 1305, - 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, - 0, 70, 0, 71, 72, 73, 0, 0, 0, 0, - 0, 0, 0, 262, 0, 0, 0, 0, 0, 1306, - 0, 0, 1307, 1308, 1309, 937, 0, 1310, 0, 1311, - 62, 80, 0, 1312, 0, 938, 939, 940, 941, 942, - 943, 944, 945, 0, 0, 0, 0, 263, 0, 0, - 0, 0, 946, 0, 947, 948, 949, 950, 951, 952, - 953, 954, 955, 956, 957, 958, 82, 83, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 0, 252, - 253, 254, 0, 88, 959, 0, 0, 0, 90, 0, - 0, 214, 215, 216, 0, 0, 334, 335, 0, 0, - 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 0, 252, 253, 254, 579, 1386, 1387, 1388, - 1389, 1390, 1391, 1392, 1393, 0, 0, 960, 0, 0, - 0, 0, 0, 0, 1394, 0, 0, 336, 0, 0, - 70, 0, 71, 72, 73, 74, 0, 0, 0, 337, - 0, 0, 77, 0, 0, 0, 78, 217, 218, 0, - 0, 0, 0, 79, 0, 0, 961, 0, 0, 962, - 80, 963, 964, 965, 966, 967, 968, 969, 970, 971, - 972, 973, 0, 974, 975, 0, 81, 976, 0, 334, - 335, 0, 0, 219, 220, 0, 221, 338, 0, 0, - 0, 222, 0, 223, 0, 82, 83, 0, 0, 0, - 0, 84, 0, 0, 1269, 0, 0, 0, 0, 339, - 340, 87, 88, 0, 0, 89, 0, 90, 0, 0, - 336, 0, 341, 70, 0, 71, 72, 73, 74, 0, - 0, 0, 337, 0, 0, 77, 0, 0, 342, 78, - 0, 0, 1395, 1396, 1397, 1398, 79, 0, 1399, 1400, - 1401, 1402, 1403, 80, 1404, 1405, 1406, 0, 0, 0, - 0, 0, 0, 0, 0, 506, 507, 0, 0, 81, - 0, 70, 0, 71, 72, 73, 0, 0, 0, 0, - 338, 0, 0, 262, 0, 0, 0, 0, 82, 83, - 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, - 0, 80, 339, 340, 87, 88, 336, 0, 89, 70, - 90, 71, 72, 73, 74, 0, 0, 263, 337, 0, - 0, 77, 474, 0, 0, 78, 0, 0, 0, 0, - 0, 342, 79, 0, 0, 0, 82, 83, 0, 80, - 232, 233, 234, 235, 236, 237, 238, 239, 0, 0, - 0, 0, 0, 88, 0, 81, 0, 240, 90, 0, - 0, 0, 0, 0, 0, 70, 338, 71, 72, 73, - 0, 0, 0, 0, 82, 83, 0, 0, 0, 0, - 84, 174, 0, 70, 0, 71, 72, 73, 339, 340, - 87, 88, 0, 0, 89, 80, 90, 232, 233, 234, - 235, 236, 237, 238, 239, 0, 0, 0, 0, 0, - 0, 263, 0, 80, 240, 0, 0, 342, 232, 233, - 234, 235, 236, 237, 238, 239, 0, 0, 0, 263, - 82, 83, 0, 0, 0, 240, 232, 233, 234, 235, - 236, 237, 238, 239, 0, 0, 0, 88, 82, 83, - 0, 0, 90, 240, 232, 233, 234, 235, 236, 237, - 238, 239, 0, 0, 0, 88, 0, 0, 0, 0, - 90, 240, 0, 0, 0, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 0, 252, 253, 254, - 595, 232, 233, 234, 235, 236, 237, 238, 239, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 240, 232, - 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 240, 0, 0, 0, - 0, 0, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 0, 252, 253, 254, 683, 0, 0, - 0, 0, 0, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 0, 252, 253, 254, 762, 0, - 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 0, 252, 253, 254, 903, 0, 0, 241, + 63, 0, 0, 0, 232, 233, 234, 235, 236, 237, + 238, 239, 0, 0, 0, 0, 15, 0, 0, 0, + 16, 240, 17, 18, 19, 0, 0, 0, 20, 0, + 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, + 0, 23, 24, 25, 0, 0, 0, 26, 0, 0, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 0, 0, 0, + 0, 0, 0, 0, 44, 0, 45, 0, 46, 0, + 0, 0, 0, 47, 0, 48, 49, 50, 0, 0, + 51, 0, 0, 0, 0, 52, 0, 0, 53, 0, + 0, 0, 54, 7, 8, 9, 10, 55, 11, 12, + 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, + 56, 0, 0, 57, 58, 59, 0, 0, 60, 0, + 61, 62, 1471, 0, 63, 1262, 0, 0, 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 0, 252, 253, 254, 1021, 232, 233, 234, 235, 236, + 15, 252, 253, 254, 16, 0, 17, 18, 19, 0, + 0, 0, 20, 0, 0, 0, 21, 22, 0, 0, + 0, 0, 0, 0, 0, 23, 24, 25, 0, 0, + 0, 26, 0, 0, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 0, 0, 0, 0, 0, 0, 0, 44, 0, + 45, 0, 46, 0, 0, 0, 0, 47, 0, 48, + 49, 50, 0, 0, 51, 0, 0, 0, 0, 52, + 0, 0, 53, 0, 0, 0, 54, 645, 646, 647, + 10, 55, 11, 648, 649, 67, 68, 0, 0, 650, + 0, 0, 0, 0, 56, 0, 0, 57, 58, 59, + 0, 0, 60, 0, 61, 62, 0, 0, 63, 232, + 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, + 0, 459, 0, 0, 651, 69, 240, 0, 70, 0, + 71, 72, 73, 74, 460, 0, 652, 76, 0, 0, + 77, 653, 0, 0, 78, 0, 0, 0, 0, 654, + 655, 79, 0, 0, 0, 0, 0, 0, 80, 0, + 0, 0, 0, 0, 232, 233, 234, 235, 236, 237, + 238, 239, 0, 0, 81, 0, 0, 0, 0, 0, + 0, 240, 656, 0, 657, 0, 658, 0, 0, 0, + 461, 659, 0, 82, 83, 660, 0, 0, 661, 84, + 0, 0, 0, 662, 0, 0, 663, 85, 86, 87, + 88, 0, 0, 89, 0, 90, 0, 645, 646, 647, + 10, 0, 11, 648, 649, 67, 68, 0, 664, 1034, + 0, 665, 666, 0, 0, 0, 667, 0, 668, 0, + 688, 0, 669, 0, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 0, 252, 253, 254, 689, + 0, 459, 0, 0, 651, 69, 0, 0, 70, 0, + 71, 72, 73, 74, 460, 0, 652, 76, 0, 0, + 77, 653, 0, 0, 78, 214, 215, 216, 0, 654, + 655, 79, 0, 0, 0, 0, 0, 1285, 80, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 0, 252, 253, 254, 81, 0, 0, 0, 0, 0, + 0, 0, 656, 0, 657, 0, 658, 0, 0, 0, + 461, 659, 0, 82, 83, 660, 0, 0, 661, 84, + 0, 0, 0, 662, 0, 0, 663, 85, 86, 87, + 88, 217, 218, 89, 0, 90, 7, 8, 9, 10, + 0, 11, 12, 13, 0, 0, 0, 0, 664, 0, + 0, 665, 666, 0, 0, 0, 667, 0, 668, 0, + 0, 0, 669, 0, 0, 0, 0, 219, 1263, 1264, + 1265, 0, 0, 0, 0, 222, 0, 223, 0, 0, + 0, 0, 0, 1297, 0, 0, 0, 0, 1266, 0, + 0, 0, 0, 1267, 0, 1298, 0, 0, 0, 0, + 1299, 234, 235, 236, 237, 238, 239, 0, 23, 24, + 0, 0, 0, 0, 26, 0, 240, 0, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 0, 232, 233, 234, 235, 236, 237, + 238, 239, 0, 45, 0, 46, 0, 0, 0, 0, + 1300, 240, 0, 0, 1301, 0, 0, 1302, 0, 0, + 0, 0, 52, 0, 0, 0, 0, 0, 0, 70, + 0, 71, 72, 73, 0, 0, 0, 0, 0, 0, + 0, 262, 0, 0, 0, 0, 0, 1303, 0, 0, + 1304, 1305, 1306, 931, 0, 1307, 0, 1308, 62, 80, + 0, 1309, 0, 932, 933, 934, 935, 936, 937, 938, + 939, 0, 0, 0, 0, 263, 0, 0, 0, 0, + 940, 0, 941, 942, 943, 944, 945, 946, 947, 948, + 949, 950, 951, 952, 82, 83, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 0, 252, 253, 254, 0, + 0, 88, 953, 0, 0, 0, 90, 0, 0, 214, + 215, 216, 0, 0, 334, 335, 0, 0, 0, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 0, 252, 253, 254, 575, 1384, 1385, 1386, 1387, 1388, + 1389, 1390, 1391, 0, 0, 954, 0, 0, 0, 0, + 0, 0, 1392, 0, 0, 336, 0, 0, 70, 0, + 71, 72, 73, 74, 0, 0, 0, 337, 0, 0, + 77, 0, 0, 0, 78, 217, 218, 0, 0, 0, + 0, 79, 0, 0, 955, 0, 0, 956, 80, 957, + 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, + 0, 968, 969, 0, 81, 970, 0, 334, 335, 0, + 0, 219, 220, 0, 221, 338, 0, 0, 0, 222, + 0, 223, 0, 82, 83, 0, 0, 0, 0, 84, + 0, 0, 0, 0, 0, 0, 291, 339, 340, 87, + 88, 0, 0, 89, 0, 90, 0, 0, 336, 0, + 341, 70, 0, 71, 72, 73, 74, 0, 0, 0, + 337, 0, 0, 77, 0, 0, 342, 78, 1504, 765, + 1393, 1394, 1395, 1396, 79, 0, 1397, 1398, 1399, 1400, + 1401, 80, 1402, 1403, 1404, 766, 0, 0, 214, 215, + 216, 0, 0, 506, 507, 0, 0, 81, 0, 767, + 0, 0, 0, 0, 0, 0, 0, 0, 338, 0, + 0, 0, 768, 769, 0, 0, 82, 83, 0, 0, + 0, 0, 84, 0, 0, 0, 0, 0, 770, 0, + 339, 340, 87, 88, 336, 0, 89, 70, 90, 71, + 72, 73, 74, 0, 0, 0, 337, 0, 0, 77, + 0, 0, 0, 78, 217, 218, 0, 0, 771, 342, + 79, 772, 0, 0, 773, 0, 0, 80, 232, 233, + 234, 235, 236, 237, 238, 239, 0, 0, 0, 0, + 774, 0, 0, 81, 0, 240, 0, 0, 0, 0, + 219, 220, 775, 221, 338, 0, 0, 0, 222, 0, + 223, 0, 82, 83, 0, 0, 776, 0, 84, 0, + 70, 1266, 71, 72, 73, 0, 339, 340, 87, 88, + 0, 0, 89, 0, 90, 232, 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 240, 0, 0, 0, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 0, 252, 253, - 254, 1286, 1288, 0, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 0, 252, 253, 254, 847, - 848, 849, 850, 851, 852, 853, 854, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 855, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -2, 0, - 0, 0, 0, 0, 0, 0, 0, 1387, 1388, 1389, - 1390, 1391, 1392, 1393, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1394, 0, 0, 0, 0, 0, 0, + 80, 0, 240, 0, 0, 342, 232, 233, 234, 235, + 236, 237, 238, 239, 0, 0, 263, 0, 0, 0, + 0, 0, 0, 240, 232, 233, 234, 235, 236, 237, + 238, 239, 0, 0, 0, 82, 83, 0, 0, 0, + 0, 240, 232, 233, 234, 235, 236, 237, 238, 239, + 0, 0, 88, 0, 0, 0, 0, 90, 0, 240, + 0, 0, 0, 241, 242, 243, 244, 245, 246, 247, + 248, 249, 250, 251, 0, 252, 253, 254, 591, 232, + 233, 234, 235, 236, 237, 238, 239, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 240, 232, 233, 234, + 235, 236, 237, 238, 239, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 240, 0, 0, 0, 0, 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 0, 252, 253, 254, 105, 0, 106, 0, 0, - 107, 108, 0, 0, 0, 0, 0, 0, 109, 110, - 0, 0, 0, 0, 0, 0, 0, 111, 0, 112, - 113, 114, 115, 0, 0, 0, 116, 0, 0, 0, - 0, 117, 0, 0, 856, 857, 858, 859, 860, 861, - 862, 863, 864, 865, 866, 0, 867, 868, 869, 0, - 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, - 0, 124, 125, 126, 127, 0, 0, 0, 0, 0, - 128, 129, 67, 68, 130, 131, 457, 0, 458, 132, - 0, 0, 0, 0, 0, 133, 134, 0, 135, 0, - 0, 0, 1396, 1397, 1398, 0, 136, 1399, 1400, 1401, - 1402, 1403, 0, 1404, 1405, 1406, 0, 0, 459, 0, - 0, 0, 69, 0, 0, 70, 0, 71, 72, 73, - 74, 460, 0, 0, 76, 0, 0, 77, 0, 0, - 0, 78, 234, 235, 236, 237, 238, 239, 79, 0, - 0, 0, 0, 0, 0, 80, 0, 240, 1388, 1389, - 1390, 1391, 1392, 1393, 0, 0, 0, 0, 0, 0, - 0, 81, 0, 1394, 1388, 1389, 1390, 1391, 1392, 1393, - 0, 70, 0, 71, 72, 73, 0, 461, 0, 1394, - 82, 83, 0, 0, 0, 0, 84, 0, 1388, 1389, - 1390, 1391, 1392, 1393, 85, 86, 87, 88, 0, 0, - 89, 80, 90, 1394, 1388, 1389, 1390, 1391, 1392, 1393, - 0, 0, 0, 0, 0, 462, 0, 263, 0, 1394, - 463, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 82, 83, 0, 0, + 251, 0, 252, 253, 254, 679, 0, 0, 0, 0, + 0, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 0, 252, 253, 254, 757, 0, 0, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 0, 252, 253, 254, 898, 0, 0, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 0, 252, + 253, 254, 1015, 842, 843, 844, 845, 846, 847, 848, + 849, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 850, 0, 0, 0, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 0, 252, 253, 254, 1283, + 0, 0, 241, 242, 243, 244, 245, 246, 247, 248, + 249, 250, 251, 0, 252, 253, 254, 1384, 1385, 1386, + 1387, 1388, 1389, 1390, 1391, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 88, 0, 0, 0, 0, 90, 478, - 479, 480, 0, 0, 0, 0, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 0, 252, 253, 254, - 0, 185, 1396, 1397, 1398, 0, 0, 1399, 1400, 1401, - 1402, 1403, 0, 1404, 1405, 1406, 481, 0, 482, 1397, - 1398, 0, 0, 1399, 1400, 1401, 1402, 1403, 0, 1404, - 1405, 1406, 302, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1398, 217, 218, 1399, 1400, 1401, - 1402, 1403, 0, 1404, 1405, 1406, 0, 0, 0, 302, - 0, 0, 0, 1399, 1400, 1401, 1402, 1403, 0, 1404, - 1405, 1406, 0, 105, 0, 106, 0, 0, 0, 108, - 0, 483, 220, 0, 221, 0, 109, 110, 0, 222, - 0, 223, 0, 0, 0, 0, 0, 112, 113, 114, - 105, 0, 106, 0, 0, 0, 108, 0, 0, 297, - 214, 215, 216, 109, 110, 484, 0, 0, 0, 0, - 0, 0, 0, 0, 112, 296, 114, 0, 0, 0, - 0, 0, 122, 0, 0, 0, 297, 0, 0, 0, - 0, 0, 127, 0, 0, 0, 0, 481, 128, 482, - 0, 0, 130, 131, 394, 67, 68, 0, 0, 122, - 0, 0, 0, 0, 134, 0, 135, 0, 0, 127, - 0, 0, 0, 0, 0, 128, 217, 218, 0, 0, - 131, 0, 0, 1033, 67, 68, 0, 0, 0, 0, - 0, 134, 0, 135, 0, 69, 0, 0, 70, 0, - 71, 72, 73, 74, 75, 0, 0, 76, 0, 0, - 77, 0, 219, 220, 78, 221, 0, 0, 0, 0, - 222, 79, 223, 0, 69, 0, 0, 70, 80, 71, - 72, 73, 74, 75, 0, 0, 76, 0, 0, 77, - 0, 0, 0, 78, 81, 0, 0, 0, 0, 0, - 79, 70, 0, 71, 72, 73, 0, 80, 0, 0, - 0, 0, 0, 82, 83, 0, 0, 0, 0, 84, - 0, 0, 0, 81, 1447, 67, 68, 85, 86, 87, - 88, 80, 0, 89, 0, 90, 0, 0, 0, 0, - 0, 0, 82, 83, 0, 0, 0, 263, 84, 0, - 0, 0, 0, 694, 695, 696, 85, 86, 87, 88, - 0, 0, 89, 0, 90, 69, 82, 83, 70, 0, - 71, 72, 73, 74, 75, 0, 0, 76, 0, 0, - 77, 0, 0, 88, 78, 0, 0, 0, 90, 0, - 0, 79, 0, 0, 0, 0, 0, 70, 80, 71, - 72, 73, 697, 698, 0, 0, 0, 0, 0, 77, - 0, 186, 0, 0, 81, 0, 0, 0, 0, 0, - 79, 694, 695, 696, 0, 0, 0, 80, 0, 0, - 0, 0, 0, 82, 83, 0, 0, 0, 0, 84, - 0, 0, 0, 81, 0, 0, 0, 85, 86, 87, - 88, 0, 0, 89, 0, 90, 0, 0, 0, 0, - 67, 68, 82, 83, 457, 70, 0, 71, 72, 73, - 0, 0, 0, 0, 0, 0, 699, 77, 0, 88, - 0, 0, 89, 0, 90, 0, 0, 0, 79, 67, - 68, 0, 0, 796, 0, 80, 459, 0, 0, 0, - 69, 0, 0, 70, 0, 71, 72, 73, 74, 460, - 0, 81, 76, 0, 0, 77, 0, 0, 0, 78, - 0, 0, 0, 0, 0, 459, 79, 0, 0, 69, - 82, 83, 70, 80, 71, 72, 73, 74, 460, 0, - 0, 76, 0, 0, 77, 0, 0, 88, 78, 81, - 89, 0, 90, 0, 0, 79, 70, 0, 71, 72, - 73, 0, 80, 0, 0, 461, 0, 0, 82, 83, - 0, 0, 0, 0, 84, 0, 0, 0, 81, 0, - 67, 68, 85, 86, 87, 88, 80, 0, 89, 0, - 90, 0, 0, 0, 461, 0, 0, 82, 83, 0, - 0, 0, 263, 84, 214, 215, 216, 0, 0, 67, - 68, 85, 86, 87, 88, 0, 459, 89, 0, 90, - 69, 82, 83, 70, 0, 71, 72, 73, 74, 460, - 0, 0, 76, 0, 0, 77, 0, 0, 88, 78, - 0, 0, 0, 90, 0, 0, 79, 0, 0, 69, - 0, 0, 70, 80, 71, 72, 73, 74, 75, 0, - 0, 76, 0, 0, 77, 0, 191, 0, 78, 81, - 217, 218, 0, 0, 0, 79, 0, 0, 214, 215, - 216, 0, 80, 0, 0, 461, 0, 0, 82, 83, - 0, 0, 0, 0, 84, 67, 68, 0, 81, 0, - 0, 330, 85, 86, 87, 88, 219, 220, 89, 221, - 90, 0, 0, 0, 222, 0, 223, 82, 83, 67, - 68, 0, 0, 84, 0, 0, 0, 0, 0, 0, - 0, 85, 86, 87, 88, 69, 0, 89, 70, 90, - 71, 72, 73, 74, 217, 218, 0, 76, 0, 0, - 77, 0, 0, 0, 78, 0, 0, 0, 0, 69, - 0, 79, 70, 0, 71, 72, 73, 74, 80, 0, - 0, 76, 0, 0, 77, 0, 0, 0, 78, 0, - 219, 220, 0, 221, 81, 79, 0, 0, 222, 0, - 223, 0, 80, 0, 0, 0, 0, 0, 0, 0, - 608, 1269, 0, 82, 83, 67, 1344, 0, 81, 84, - 0, 0, 0, 0, 0, 0, 0, 85, 86, 87, - 88, 0, 0, 89, 0, 90, 0, 82, 83, 0, - 0, 0, 0, 84, 175, 0, 0, 0, 0, 0, - 0, 85, 86, 87, 88, 69, 0, 89, 70, 90, - 71, 72, 73, 74, 517, 0, 0, 76, 0, 0, - 77, 0, 0, 0, 78, 0, 0, 0, 0, 0, - 0, 79, 0, 0, 176, 0, 0, 70, 80, 71, - 72, 73, 74, 998, 0, 0, 177, 0, 0, 77, - 0, 0, 0, 78, 81, 0, 0, 0, 0, 0, - 79, 0, 0, 214, 215, 216, 0, 80, 0, 0, - 0, 0, 0, 82, 83, 0, 0, 0, 0, 84, - 175, 0, 0, 81, 0, 0, 0, 85, 86, 87, - 88, 0, 0, 89, 0, 90, 0, 0, 0, 0, - 0, 0, 82, 83, 67, 0, 0, 0, 84, 0, - 0, 0, 214, 215, 216, 0, 178, 179, 87, 88, - 176, 0, 89, 70, 90, 71, 72, 73, 74, 217, - 218, 0, 177, 0, 0, 77, 0, 0, 0, 78, - 0, 0, 0, 0, 69, 0, 79, 70, 0, 71, - 72, 73, 74, 80, 0, 0, 76, 0, 0, 77, - 0, 0, 0, 78, 0, 219, 220, 0, 221, 81, - 79, 0, 0, 222, 0, 223, 0, 80, 217, 218, - 0, 0, 0, 0, 0, 0, 1269, 0, 82, 83, - 0, 1346, 0, 81, 84, 0, 0, 0, 0, 0, - 0, 0, 178, 179, 87, 88, 0, 0, 89, 0, - 90, 0, 82, 83, 219, 220, 0, 221, 84, 0, - 0, 0, 222, 0, 223, 0, 85, 86, 87, 88, - 0, 105, 89, 106, 90, 1269, 107, 108, 0, 0, - 1348, 0, 0, 0, 109, 110, 0, 0, 0, 0, - 0, 0, 0, 111, 0, 112, 113, 114, 115, 0, - 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, - 122, 123, 0, 0, 0, 0, 0, 124, 125, 126, - 127, 0, 0, 105, 0, 106, 128, 129, 107, 108, - 130, 131, 0, 0, 0, 132, 109, 110, 0, 0, - 0, 133, 134, 0, 135, 111, 0, 112, 113, 114, - 115, 0, 136, 0, 116, 0, 0, 0, 0, 117, + 0, 0, 0, 0, 0, 0, -2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 690, 0, 0, 0, 0, 0, 0, 118, 119, + 0, 0, 234, 235, 236, 237, 238, 239, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 240, 851, 852, + 853, 854, 855, 856, 857, 858, 859, 860, 861, 0, + 862, 863, 864, 105, 0, 106, 0, 0, 107, 108, + 0, 0, 0, 0, 0, 0, 109, 110, 0, 0, + 0, 0, 0, 0, 0, 111, 0, 112, 113, 114, + 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, + 0, 0, 1393, 1394, 1395, 1396, 0, 0, 1397, 1398, + 1399, 1400, 1401, 0, 1402, 1403, 1404, 0, 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, 0, 124, - 125, 126, 127, 0, 0, 105, 0, 106, 128, 129, - 107, 108, 130, 131, 0, 0, 0, 132, 109, 110, - 0, 0, 0, 133, 134, 0, 135, 111, 0, 112, - 113, 114, 115, 0, 136, 0, 116, 0, 0, 0, - 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 872, 0, 0, 0, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, - 0, 124, 125, 126, 127, 0, 0, 105, 0, 106, - 128, 129, 107, 108, 130, 131, 0, 0, 0, 132, - 109, 110, 0, 0, 0, 133, 134, 0, 135, 111, - 0, 112, 113, 114, 115, 0, 136, 0, 116, 0, - 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 914, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 0, 0, - 0, 0, 0, 124, 125, 126, 127, 0, 0, 105, - 0, 106, 128, 129, 107, 108, 130, 131, 0, 0, - 0, 132, 109, 110, 0, 0, 0, 133, 134, 0, - 135, 111, 0, 112, 113, 114, 115, 0, 136, 0, + 125, 126, 127, 0, 0, 0, 0, 0, 128, 129, + 67, 68, 130, 131, 457, 0, 458, 132, 0, 0, + 0, 0, 0, 133, 134, 0, 135, 0, 0, 0, + 0, 0, 0, 0, 136, 0, 0, 0, 244, 245, + 246, 247, 248, 249, 250, 251, 459, 252, 253, 254, + 69, 0, 0, 70, 0, 71, 72, 73, 74, 460, + 0, 0, 76, 0, 0, 77, 0, 0, 0, 78, + 1386, 1387, 1388, 1389, 1390, 1391, 79, 0, 0, 214, + 215, 216, 0, 80, 0, 1392, 1386, 1387, 1388, 1389, + 1390, 1391, 0, 0, 0, 0, 0, 0, 0, 81, + 0, 1392, 1386, 1387, 1388, 1389, 1390, 1391, 0, 0, + 0, 0, 0, 0, 0, 461, 0, 1392, 82, 83, + 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, + 0, 0, 85, 86, 87, 88, 0, 0, 89, 0, + 90, 0, 0, 0, 0, 217, 218, 0, 0, 0, + 0, 0, 0, 462, 0, 0, 0, 0, 463, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 219, 220, 0, 221, 0, 0, 0, 0, 222, + 0, 223, 0, 0, 0, 0, 0, 478, 479, 480, + 0, 0, 1266, 0, 1394, 1395, 1396, 1342, 0, 1397, + 1398, 1399, 1400, 1401, 302, 1402, 1403, 1404, 0, 0, + 0, 1395, 1396, 0, 0, 1397, 1398, 1399, 1400, 1401, + 175, 1402, 1403, 1404, 481, 0, 482, 0, 1396, 0, + 0, 1397, 1398, 1399, 1400, 1401, 0, 1402, 1403, 1404, + 0, 302, 0, 0, 0, 105, 0, 106, 0, 0, + 0, 108, 0, 217, 218, 0, 0, 0, 109, 110, + 176, 0, 0, 70, 0, 71, 72, 73, 74, 112, + 113, 114, 177, 0, 0, 77, 0, 0, 0, 78, + 0, 297, 105, 0, 106, 0, 79, 0, 108, 483, + 220, 0, 221, 80, 0, 109, 110, 222, 0, 223, + 0, 0, 0, 0, 122, 0, 112, 296, 114, 81, + 0, 0, 0, 0, 127, 0, 0, 0, 297, 0, + 128, 0, 0, 484, 130, 131, 0, 0, 82, 83, + 394, 67, 68, 0, 84, 0, 134, 0, 135, 0, + 0, 122, 178, 179, 87, 88, 0, 0, 89, 0, + 90, 127, 0, 0, 0, 0, 0, 128, 0, 1027, + 67, 68, 131, 0, 0, 0, 0, 0, 0, 0, + 0, 69, 0, 134, 70, 135, 71, 72, 73, 74, + 75, 0, 0, 76, 0, 0, 77, 0, 0, 0, + 78, 0, 0, 0, 0, 0, 0, 79, 0, 0, + 69, 0, 0, 70, 80, 71, 72, 73, 74, 75, + 0, 0, 76, 0, 0, 77, 0, 0, 0, 78, + 81, 0, 0, 0, 0, 0, 79, 70, 0, 71, + 72, 73, 0, 80, 0, 0, 0, 0, 0, 82, + 83, 0, 0, 0, 0, 84, 0, 0, 0, 81, + 1447, 67, 68, 85, 86, 87, 88, 80, 0, 89, + 0, 90, 0, 0, 0, 0, 0, 0, 82, 83, + 0, 0, 0, 263, 84, 0, 0, 0, 0, 690, + 691, 692, 85, 86, 87, 88, 0, 0, 89, 0, + 90, 69, 82, 83, 70, 0, 71, 72, 73, 74, + 75, 0, 0, 76, 0, 0, 77, 0, 0, 88, + 78, 0, 0, 0, 90, 0, 0, 79, 0, 0, + 0, 0, 0, 70, 80, 71, 72, 73, 693, 694, + 0, 0, 0, 0, 0, 77, 0, 185, 0, 0, + 81, 0, 0, 0, 0, 0, 79, 690, 691, 692, + 0, 0, 0, 80, 0, 0, 0, 0, 0, 82, + 83, 0, 0, 0, 0, 84, 0, 0, 0, 81, + 0, 0, 0, 85, 86, 87, 88, 0, 0, 89, + 0, 90, 0, 0, 0, 0, 67, 68, 82, 83, + 457, 70, 0, 71, 72, 73, 0, 0, 0, 0, + 0, 0, 695, 77, 0, 88, 0, 0, 89, 0, + 90, 0, 0, 0, 79, 67, 68, 0, 0, 791, + 0, 80, 459, 0, 0, 0, 69, 0, 0, 70, + 0, 71, 72, 73, 74, 460, 0, 81, 76, 0, + 0, 77, 0, 0, 0, 78, 0, 0, 0, 0, + 0, 459, 79, 0, 0, 69, 82, 83, 70, 80, + 71, 72, 73, 74, 460, 0, 0, 76, 0, 0, + 77, 0, 0, 88, 78, 81, 89, 0, 90, 0, + 0, 79, 0, 0, 0, 0, 0, 0, 80, 0, + 0, 461, 0, 0, 82, 83, 0, 0, 0, 0, + 84, 0, 0, 0, 81, 0, 67, 68, 85, 86, + 87, 88, 0, 0, 89, 0, 90, 0, 0, 0, + 461, 0, 0, 82, 83, 0, 0, 0, 0, 84, + 214, 215, 216, 0, 0, 67, 68, 85, 86, 87, + 88, 0, 459, 89, 0, 90, 69, 0, 0, 70, + 0, 71, 72, 73, 74, 460, 0, 0, 76, 0, + 0, 77, 0, 0, 0, 78, 0, 481, 0, 482, + 0, 0, 79, 0, 0, 69, 0, 0, 70, 80, + 71, 72, 73, 74, 75, 0, 0, 76, 0, 0, + 77, 0, 0, 0, 78, 81, 217, 218, 0, 0, + 0, 79, 0, 0, 214, 215, 216, 0, 80, 0, + 0, 461, 0, 0, 82, 83, 0, 0, 0, 0, + 84, 67, 68, 0, 81, 0, 0, 0, 85, 86, + 87, 88, 219, 220, 89, 221, 90, 0, 0, 0, + 222, 0, 223, 82, 83, 67, 68, 0, 0, 84, + 0, 0, 0, 0, 0, 0, 0, 85, 86, 87, + 88, 69, 0, 89, 70, 90, 71, 72, 73, 74, + 217, 218, 0, 76, 0, 70, 77, 71, 72, 73, + 78, 0, 0, 0, 0, 69, 0, 79, 70, 0, + 71, 72, 73, 74, 80, 0, 0, 76, 0, 0, + 77, 0, 0, 0, 78, 80, 219, 220, 0, 221, + 81, 79, 0, 0, 222, 0, 223, 0, 80, 0, + 0, 263, 0, 0, 0, 0, 604, 1266, 0, 82, + 83, 67, 1344, 0, 81, 84, 0, 0, 0, 0, + 82, 83, 0, 85, 86, 87, 88, 0, 0, 89, + 0, 90, 0, 82, 83, 0, 0, 88, 0, 84, + 175, 0, 90, 0, 0, 0, 0, 85, 86, 87, + 88, 69, 0, 89, 70, 90, 71, 72, 73, 74, + 517, 0, 0, 76, 0, 186, 77, 0, 0, 0, + 78, 0, 0, 0, 0, 0, 0, 79, 0, 0, + 176, 0, 0, 70, 80, 71, 72, 73, 74, 992, + 0, 0, 177, 0, 0, 77, 0, 0, 0, 78, + 81, 0, 0, 0, 0, 0, 79, 0, 0, 214, + 215, 216, 0, 80, 70, 0, 71, 72, 73, 82, + 83, 0, 0, 0, 0, 84, 67, 0, 0, 81, + 0, 0, 0, 85, 86, 87, 88, 0, 0, 89, + 0, 90, 0, 0, 80, 0, 0, 0, 82, 83, + 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, + 263, 0, 178, 179, 87, 88, 69, 0, 89, 70, + 90, 71, 72, 73, 74, 217, 218, 0, 76, 82, + 83, 77, 0, 0, 0, 78, 0, 0, 0, 0, + 0, 0, 79, 0, 0, 0, 88, 0, 0, 80, + 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 219, 220, 0, 221, 81, 0, 0, 0, 222, + 0, 223, 0, 0, 191, 0, 0, 0, 0, 0, + 0, 0, 1266, 0, 82, 83, 0, 1346, 0, 105, + 84, 106, 0, 0, 107, 108, 0, 0, 85, 86, + 87, 88, 109, 110, 89, 0, 90, 0, 0, 0, + 0, 111, 0, 112, 113, 114, 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1022, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, 0, 124, 125, 126, 127, 0, 0, 105, 0, 106, 128, 129, 107, 108, 130, 131, 0, 0, 0, 132, 109, 110, 0, 0, 0, 133, 134, 0, 135, 111, 0, 112, 113, 114, 115, 0, 136, 0, 116, 0, 0, 0, 0, 117, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1072, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 686, 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, 0, 124, 125, 126, 127, 0, 0, 105, 0, 106, 128, 129, 107, 108, @@ -2140,371 +2110,371 @@ static const yytype_int16 yytable[] = 0, 133, 134, 0, 135, 111, 0, 112, 113, 114, 115, 0, 136, 0, 116, 0, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1291, 0, 0, 0, 0, 0, 0, 118, 119, + 0, 867, 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, 0, 124, 125, 126, 127, 0, 0, 105, 0, 106, 128, 129, - 0, 108, 130, 131, 105, 0, 106, 132, 109, 110, - 108, 0, 0, 133, 134, 0, 135, 109, 110, 112, - 296, 114, 0, 0, 136, 0, 116, 0, 112, 113, - 114, 297, 0, 0, 0, 116, 0, 0, 0, 0, - 297, 0, 0, 1430, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 122, 0, 0, 0, 0, 0, - 0, 0, 0, 122, 127, 0, 0, 0, 0, 0, - 128, 0, 0, 127, 0, 131, 0, 0, 0, 128, - 0, 0, 0, 130, 131, 133, 134, 105, 135, 106, - 0, 0, 107, 108, 133, 134, 0, 135, 0, 0, - 109, 110, 0, -148, 0, 0, 0, 0, 0, 111, - 0, 112, 113, 114, 115, 105, 0, 106, 116, 0, - 0, 108, 0, 117, 105, 0, 106, 0, 109, 110, - 108, 0, 0, 0, 0, 0, 0, 109, 110, 112, - 296, 114, 118, 119, 120, 121, 122, 123, 112, 296, - 114, 297, 0, 124, 125, 126, 127, 0, 0, 0, - 297, 0, 128, 129, 0, 0, 130, 131, 0, 0, - 0, 132, 0, 0, 122, 308, 0, 133, 134, 0, - 135, 0, 0, 122, 127, 0, 0, 0, 0, 0, - 128, 0, 0, 127, 0, 131, 0, 0, 0, 128, - 0, 0, 0, 0, 131, 0, 134, 0, 135, 0, - 0, 0, 0, 0, 0, 134, 0, 135 + 107, 108, 130, 131, 0, 0, 0, 132, 109, 110, + 0, 0, 0, 133, 134, 0, 135, 111, 0, 112, + 113, 114, 115, 0, 136, 0, 116, 0, 0, 0, + 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 909, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 0, 0, 0, 0, + 0, 124, 125, 126, 127, 0, 0, 105, 0, 106, + 128, 129, 107, 108, 130, 131, 0, 0, 0, 132, + 109, 110, 0, 0, 0, 133, 134, 0, 135, 111, + 0, 112, 113, 114, 115, 0, 136, 0, 116, 0, + 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1016, 0, 0, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 0, 0, + 0, 0, 0, 124, 125, 126, 127, 0, 0, 105, + 0, 106, 128, 129, 107, 108, 130, 131, 0, 0, + 0, 132, 109, 110, 0, 0, 0, 133, 134, 0, + 135, 111, 0, 112, 113, 114, 115, 0, 136, 0, + 116, 0, 0, 0, 0, 117, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1066, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 0, 0, 0, 0, 0, 124, 125, 126, 127, 0, + 0, 105, 0, 106, 128, 129, 107, 108, 130, 131, + 0, 0, 0, 132, 109, 110, 0, 0, 0, 133, + 134, 0, 135, 111, 0, 112, 113, 114, 115, 0, + 136, 0, 116, 0, 0, 0, 0, 117, 0, 0, + 0, 70, 0, 71, 72, 73, 0, 0, 0, 1288, + 0, 0, 0, 262, 0, 0, 118, 119, 120, 121, + 122, 123, 0, 0, 0, 0, 0, 124, 125, 126, + 127, 80, 0, 0, 0, 0, 128, 129, 0, 0, + 130, 131, 0, 0, 105, 132, 106, 263, 0, 0, + 108, 133, 134, 0, 135, 0, 0, 109, 110, 0, + 0, 0, 136, 0, 0, 0, 82, 83, 112, 296, + 114, 0, 0, 0, 0, 116, 0, 0, 0, 0, + 297, 1430, 0, 88, 0, 0, 0, 0, 90, 0, + 0, 0, 0, 0, 0, 0, 105, 0, 106, 0, + 0, 0, 108, 122, 0, 0, 0, 0, 0, 109, + 110, 174, 0, 127, 0, 0, 0, 0, 0, 128, + 112, 113, 114, 0, 131, 0, 0, 116, 0, 0, + 0, 0, 297, 0, 133, 134, 105, 135, 106, 0, + 0, 107, 108, 0, 0, 0, 0, 0, 0, 109, + 110, 0, -149, 0, 0, 122, 0, 0, 111, 0, + 112, 113, 114, 115, 0, 127, 0, 116, 0, 0, + 0, 128, 117, 0, 0, 130, 131, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 133, 134, 0, 135, + 0, 118, 119, 120, 121, 122, 123, 0, 0, 0, + 0, 0, 124, 125, 126, 127, 0, 0, 105, 0, + 106, 128, 129, 0, 108, 130, 131, 105, 0, 106, + 132, 109, 110, 108, 0, 0, 133, 134, 0, 135, + 109, 110, 112, 296, 114, 0, 0, 0, 0, 0, + 0, 112, 296, 114, 297, 0, 0, 0, 0, 0, + 0, 0, 0, 297, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 122, 308, 0, + 0, 0, 0, 0, 0, 0, 122, 127, 0, 0, + 0, 0, 0, 128, 0, 0, 127, 0, 131, 0, + 0, 0, 128, 0, 0, 0, 0, 131, 0, 134, + 0, 135, 0, 0, 0, 0, 0, 0, 134, 0, + 135 }; static const yytype_int16 yycheck[] = { - 1, 61, 113, 130, 130, 92, 477, 928, 295, 490, - 140, 587, 140, 660, 528, 44, 508, 15, 709, 140, - 182, 146, 15, 6, 752, 8, 44, 461, 586, 15, - 98, 315, 614, 146, 13, 459, 59, 0, 605, 164, - 15, 328, 164, 147, 147, 149, 150, 151, 152, 147, - 154, 164, 156, 15, 158, 15, 490, 481, 10, 11, - 12, 62, 44, 166, 76, 489, 624, 795, 76, 164, - 174, 169, 13, 714, 15, 164, 17, 635, 147, 164, - 150, 185, 186, 6, 33, 8, 76, 191, 192, 147, - 91, 92, 150, 164, 33, 165, 155, 166, 99, 75, - 33, 147, 125, 744, 745, 155, 747, 748, 749, 750, - 718, 140, 720, 721, 722, 723, 724, 150, 155, 60, - 166, 147, 140, 164, 771, 146, 164, 148, 149, 150, - 64, 65, 165, 147, 146, 155, 712, 149, 146, 715, - 166, 149, 10, 11, 12, 146, 147, 76, 149, 150, - 151, 152, 166, 154, 147, 156, 146, 158, 140, 149, - 112, 75, 81, 82, 83, 295, 146, 295, 166, 88, - 257, 258, 147, 174, 295, 13, 164, 15, 164, 17, - 159, 182, 616, 166, 185, 186, 273, 274, 149, 351, - 191, 192, 164, 253, 324, 753, 324, 149, 328, 140, - 328, 149, 164, 324, 164, 147, 164, 328, 76, 77, - 149, 692, 496, 154, 163, 164, 165, 146, 159, 164, - 149, 289, 60, 164, 166, 164, 165, 228, 165, 166, - 163, 164, 165, 791, 792, 150, 147, 521, 805, 164, - 147, 147, 164, 147, 112, 113, 147, 115, 815, 149, - 165, 147, 120, 166, 122, 166, 257, 258, 899, 166, - 166, 753, 166, 165, 166, 166, 295, 10, 11, 12, - 166, 272, 273, 274, 275, 276, 277, 295, 143, 144, - 145, 282, 350, 387, 755, 165, 166, 206, 207, 208, - 209, 61, 147, 934, 164, 324, 147, 905, 166, 328, - 147, 277, 140, 108, 109, 110, 324, 112, 113, 114, - 328, 166, 117, 295, 315, 166, 154, 122, 147, 166, - 164, 159, 127, 128, 147, 130, 131, 132, 147, 134, - 135, 164, 165, 76, 77, 149, 147, 166, 896, 915, - 147, 150, 324, 166, 263, 912, 328, 166, 772, 164, - 351, 998, 147, 165, 788, 166, 643, 147, 164, 166, - 644, 147, 338, 277, 148, 846, 150, 164, 287, 112, - 113, 166, 115, 164, 165, 166, 166, 120, 148, 122, - 166, 164, 6, 153, 8, 155, 387, 157, 164, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 173, 896, 919, 407, 691, 1329, 13, - 147, 15, 846, 17, 184, 997, 164, 984, 188, 189, - 190, 159, 165, 10, 11, 12, 13, 149, 1004, 166, - 17, 164, 165, 166, 1010, 1011, 146, 147, 33, 440, - 164, 165, 166, 444, 445, 446, 447, 448, 1006, 1007, - 518, 164, 10, 11, 12, 13, 60, 458, 164, 17, - 164, 462, 463, 165, 166, 533, 467, 164, 536, 470, - 146, 164, 148, 60, 150, 164, 505, 164, 10, 11, - 12, 113, 114, 115, 460, 461, 165, 166, 1002, 490, - 164, 296, 297, 164, 165, 496, 164, 302, 268, 146, - 164, 148, 60, 150, 505, 164, 165, 1089, 164, 164, - 1092, 164, 164, 643, 490, 643, 164, 518, 164, 1095, - 521, 1249, 643, 164, 111, 112, 164, 20, 21, 22, - 23, 146, 165, 148, 164, 150, 140, 164, 164, 48, - 33, 517, 147, 164, 76, 77, 460, 461, 146, 164, - 154, 164, 155, 140, 112, 159, 164, 146, 477, 148, - 164, 150, 157, 158, 159, 160, 161, 154, 163, 164, - 165, 164, 159, 148, 147, 167, 490, 164, 166, 156, - 112, 113, 140, 115, 166, 586, 587, 588, 120, 873, - 122, 22, 23, 156, 166, 166, 154, 598, 166, 166, - 166, 159, 33, 147, 605, 137, 164, 166, 609, 166, - 166, 587, 672, 614, 643, 166, 386, 618, 619, 620, - 621, 622, 623, 624, 1315, 643, 22, 23, 166, 147, - 166, 660, 608, 166, 635, 166, 166, 33, 166, 166, - 616, 709, 660, 644, 645, 166, 714, 166, 15, 166, - 718, 166, 720, 721, 722, 723, 724, 156, 166, 166, - 166, 643, 155, 156, 157, 158, 159, 160, 161, 698, - 163, 164, 165, 587, 166, 166, 744, 745, 660, 747, - 748, 749, 750, 488, 156, 1261, 166, 1263, 166, 166, - 691, 1419, 1420, 1421, 608, 33, 164, 757, 758, 166, - 166, 165, 616, 704, 159, 765, 165, 767, 467, 166, - 149, 712, 164, 167, 715, 166, 33, 718, 2, 720, - 721, 722, 723, 724, 146, 148, 157, 158, 159, 160, - 161, 732, 163, 164, 165, 147, 712, 147, 147, 715, - 741, 1323, 771, 513, 1320, 147, 164, 164, 149, 164, - 520, 752, 753, 771, 48, 882, 882, 1339, 1340, 1341, - 1241, 157, 158, 159, 160, 161, 164, 163, 164, 165, - 164, 882, 56, 57, 58, 59, 60, 166, 166, 63, - 166, 551, 164, 553, 159, 555, 159, 146, 789, 771, - 791, 792, 169, 1521, 795, 48, 76, 798, 712, 164, - 1528, 715, 155, 33, 805, 155, 155, 1241, 868, 155, - 164, 166, 788, 10, 815, 10, 10, 921, 922, 157, - 158, 159, 160, 161, 825, 163, 164, 165, 10, 1411, - 148, 899, 156, 1409, 1416, 147, 755, 905, 148, 159, - 1422, 1423, 159, 160, 161, 166, 163, 164, 165, 148, - 609, 159, 166, 148, 883, 148, 167, 468, 167, 148, - 619, 620, 621, 622, 623, 166, 934, 159, 166, 166, - 846, 146, 873, 169, 788, 166, 164, 682, 683, 164, - 881, 272, 273, 274, 275, 276, 887, 888, 889, 890, - 891, 892, 893, 164, 1476, 896, 164, 166, 1474, 1266, - 1267, 1268, 672, 1417, 905, 165, 190, 165, 165, 149, - 164, 912, 999, 164, 915, 147, 166, 150, 147, 147, - 921, 922, 159, 166, 166, 1507, 1030, 928, 167, 159, - 160, 161, 846, 163, 164, 165, 147, 10, 1520, 915, - 165, 4, 166, 169, 147, 704, 48, 164, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 998, - 254, 169, 164, 169, 146, 259, 147, 1344, 166, 1346, - 998, 1348, 156, 984, 1351, 1352, 1353, 156, 156, 166, - 1274, 166, 156, 166, 10, 148, 997, 10, 999, 610, - 10, 915, 10, 1004, 148, 1006, 1007, 147, 164, 1010, - 1011, 295, 169, 167, 166, 166, 998, 167, 167, 630, - 631, 632, 633, 634, 169, 167, 15, 166, 1004, 1030, - 789, 166, 166, 164, 1010, 1011, 164, 166, 322, 798, - 164, 10, 11, 12, 166, 10, 11, 12, 13, 440, - 15, 164, 17, 444, 445, 446, 447, 448, 828, 829, - 830, 166, 832, 164, 834, 835, 836, 458, 10, 11, - 12, 462, 463, 1074, 155, 155, 155, 882, 155, 164, - 166, 15, 1083, 166, 146, 10, 10, 148, 1089, 148, - 1004, 1092, 166, 704, 1095, 60, 1010, 1011, 166, 166, - 384, 148, 10, 148, 164, 147, 156, 76, 77, 10, - 11, 12, 13, 166, 166, 166, 17, 401, 402, 1095, - 156, 167, 881, 166, 408, 10, 11, 12, 156, 888, - 889, 890, 891, 892, 76, 77, 166, 166, 156, 166, - 10, 167, 148, 112, 113, 10, 115, 112, 148, 164, - 164, 120, 164, 122, 148, 166, 148, 164, 920, 60, - 307, 166, 166, 1250, 166, 646, 1244, 1315, 328, 883, - 112, 113, 698, 115, 1084, 140, 1244, 1241, 120, 790, - 122, 1095, 1074, 846, 1275, 154, 470, 328, 1204, 154, - 159, 76, 77, 406, 159, -1, 807, -1, -1, 164, - -1, -1, -1, 1204, -1, -1, -1, 598, 150, -1, - -1, 112, 154, -1, -1, -1, -1, 159, -1, 16, - 17, 18, 19, 20, 21, 22, 23, 112, 113, -1, - 115, -1, 516, -1, -1, 120, 33, 122, -1, 140, - 1241, -1, -1, -1, -1, -1, 530, 1315, 1249, 1250, - -1, 1311, -1, 154, -1, -1, -1, -1, 159, -1, - 1261, -1, 1263, -1, 149, 1241, -1, -1, -1, -1, - 881, -1, -1, 1274, -1, -1, -1, 888, 889, 890, - 891, 892, -1, -1, -1, 1261, -1, 1263, -1, 18, - 19, 20, 21, 22, 23, -1, -1, 1357, 1358, -1, - 1360, -1, 1362, -1, 33, -1, -1, 591, -1, -1, - -1, -1, 1082, -1, -1, -1, -1, -1, -1, 1320, - -1, 605, 1323, -1, 1083, -1, -1, 1241, 1329, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1339, 1340, - 1341, -1, -1, -1, 1320, 1405, -1, 1261, -1, 1263, - -1, -1, 149, -1, 151, 152, 153, 154, -1, 643, - 157, 158, 159, 160, 161, -1, 163, 164, 165, -1, - 20, 21, 22, 23, -1, -1, -1, -1, -1, -1, - -1, 62, -1, 33, 668, 669, 670, 671, -1, 673, - -1, -1, -1, -1, -1, -1, 1306, 1307, 1308, 1309, - 1310, -1, 1312, -1, 85, -1, 1320, -1, 1409, -1, - 1411, -1, -1, -1, -1, 1416, -1, -1, 1419, 1420, - 1421, 1422, 1423, -1, 105, 154, 155, 156, 157, 158, - 159, 160, 161, 1409, 163, 164, 165, -1, -1, -1, - -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 133, -1, 1514, 1515, 1516, 741, 1518, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1083, 1474, -1, 1476, 1386, 1387, 1388, 1389, - 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, - 1400, 1401, 1402, 1403, 1404, 1409, -1, 178, 1474, -1, - 181, -1, -1, -1, -1, -1, 1507, 157, 158, 159, - 160, 161, -1, 163, 164, 165, -1, -1, -1, 1520, - 1521, 805, -1, -1, -1, -1, -1, 1528, -1, -1, - -1, 815, -1, -1, -1, 819, -1, -1, -1, -1, - 1450, 1311, -1, -1, 225, 226, -1, -1, -1, -1, - -1, -1, 836, -1, -1, -1, -1, -1, -1, -1, - 1474, -1, -1, 847, 848, 849, 850, 851, 852, 853, - 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, - 864, 865, 866, 867, -1, 869, -1, -1, -1, -1, - 271, -1, -1, 1503, 1306, 1307, 1308, 1309, 1310, -1, - 1312, 1371, 1372, 1373, 1374, -1, 1376, 1377, 289, 17, - 291, -1, -1, -1, -1, -1, -1, -1, 18, 19, - 20, 21, 22, 23, -1, 33, -1, 308, 912, 310, - 311, 312, 313, 33, -1, -1, -1, -1, -1, 47, - 10, 11, 12, -1, 928, -1, -1, -1, -1, 330, - -1, -1, 60, 61, -1, -1, -1, -1, 339, -1, - -1, 342, -1, -1, -1, -1, -1, -1, 76, 350, - -1, -1, -1, -1, 1386, 1387, 1388, 1389, 1390, 1391, + 1, 61, 315, 113, 490, 705, 92, 130, 44, 130, + 922, 601, 147, 461, 149, 150, 151, 152, 656, 154, + 182, 156, 747, 158, 727, 508, 477, 140, 13, 295, + 76, 44, 76, 15, 583, 15, 44, 140, 459, 174, + 140, 6, 490, 8, 15, 15, 710, 0, 76, 15, + 185, 186, 81, 82, 83, 147, 191, 192, 15, 88, + 481, 62, 328, 582, 76, 790, 147, 714, 489, 716, + 717, 718, 719, 720, 147, 739, 740, 169, 742, 743, + 744, 745, 150, 155, 150, 166, 59, 33, 147, 147, + 91, 92, 147, 166, 10, 11, 12, 165, 99, 165, + 146, 620, 146, 149, 140, 149, 147, 166, 166, 149, + 147, 166, 631, 33, 147, 10, 11, 12, 146, 164, + 150, 149, 147, 147, 147, 166, 164, 140, 766, 166, + 164, 165, 140, 166, 146, 165, 146, 149, 148, 75, + 150, 166, 166, 166, 147, 146, 147, 33, 149, 150, + 151, 152, 125, 154, 164, 156, 6, 158, 8, 708, + 76, 77, 711, 166, 612, 147, 147, 164, 6, 150, + 8, 257, 258, 174, 159, 33, 147, 206, 207, 208, + 209, 182, 295, 496, 185, 186, 166, 273, 274, 351, + 191, 192, 295, 253, 164, 295, 112, 113, 164, 115, + 164, 166, 688, 149, 120, 164, 122, 164, 521, 164, + 800, 324, 75, 147, 147, 328, 147, 112, 164, 165, + 810, 324, 164, 147, 324, 328, 155, 228, 328, 748, + 894, 146, 166, 166, 263, 166, 147, 272, 273, 274, + 275, 276, 166, 163, 164, 165, 467, 147, 155, 164, + 166, 147, 387, 900, 149, 166, 257, 258, 287, 295, + 610, 62, 146, 164, 928, 748, 166, 786, 787, 146, + 166, 272, 273, 274, 275, 276, 277, 163, 164, 165, + 164, 282, 295, 148, 85, 150, 164, 295, 324, 164, + 147, 164, 328, 996, 147, 143, 144, 145, 164, 750, + 147, 159, 160, 161, 105, 163, 164, 165, 164, 166, + 33, 324, 147, 166, 315, 328, 324, 907, 147, 166, + 328, 146, 123, 148, 149, 150, 146, 640, 148, 166, + 150, 166, 133, 164, 146, 783, 148, 166, 150, 165, + 166, 277, 164, 108, 109, 110, 767, 112, 113, 114, + 351, 164, 117, 164, 992, 841, 13, 122, 15, 164, + 17, 910, 127, 128, 164, 130, 131, 132, 164, 134, + 135, 164, 891, 639, 687, 165, 166, 178, 164, 146, + 181, 148, 164, 150, 605, 164, 387, 164, 978, 164, + 1093, 165, 166, 841, 615, 616, 617, 618, 619, 155, + 164, 165, 166, 60, 164, 440, 407, 164, 891, 444, + 445, 446, 447, 448, 277, 1327, 13, 164, 15, 164, + 17, 64, 65, 458, 225, 226, 164, 462, 463, 13, + 164, 15, 164, 17, 157, 158, 159, 160, 161, 440, + 163, 164, 165, 444, 445, 446, 447, 448, 477, 998, + 164, 165, 166, 165, 166, 1004, 1005, 458, 164, 165, + 166, 462, 463, 60, 165, 166, 467, 164, 165, 470, + 271, 113, 114, 115, 164, 338, 60, 146, 147, 700, + 164, 1000, 1001, 140, 10, 11, 12, 164, 289, 490, + 291, 164, 505, 164, 165, 496, 149, 154, 149, 149, + 164, 164, 159, 164, 505, 164, 164, 308, 149, 310, + 311, 312, 313, 150, 159, 48, 165, 518, 165, 147, + 521, 1246, 146, 155, 460, 461, 639, 148, 164, 330, + 164, 296, 297, 164, 164, 147, 639, 302, 339, 639, + 1089, 342, 167, 140, 166, 15, 166, 166, 166, 350, + 76, 77, 166, 166, 490, 868, 140, 154, 156, 594, + 166, 156, 159, 784, 166, 166, 166, 164, 147, 147, + 154, 156, 793, 166, 166, 159, 166, 166, 166, 166, + 164, 582, 583, 584, 166, 166, 112, 113, 389, 115, + 166, 166, 393, 594, 120, 166, 122, 460, 461, 166, + 601, 166, 166, 639, 605, 406, 166, 166, 668, 610, + 166, 156, 1312, 614, 615, 616, 617, 618, 619, 620, + 656, 159, 166, 166, 150, 166, 639, 490, 154, 164, + 631, 639, 166, 159, 166, 165, 165, 164, 166, 640, + 641, 991, 443, 656, 167, 149, 166, 583, 656, 146, + 164, 147, 147, 147, 517, 876, 147, 164, 459, 148, + 166, 149, 883, 884, 885, 886, 887, 166, 604, 48, + 471, 164, 10, 11, 12, 13, 612, 164, 164, 17, + 481, 694, 166, 164, 159, 159, 687, 169, 489, 146, + 48, 76, 752, 753, 1419, 1420, 1421, 164, 164, 700, + 760, 155, 762, 155, 155, 2, 155, 708, 166, 1258, + 711, 1260, 10, 714, 1417, 716, 717, 718, 719, 720, + 583, 750, 60, 488, 10, 10, 61, 10, 148, 156, + 766, 532, 733, 1083, 147, 736, 1086, 148, 159, 167, + 166, 604, 159, 166, 148, 148, 747, 748, 166, 612, + 159, 17, 1238, 766, 877, 146, 877, 164, 766, 56, + 57, 58, 59, 60, 166, 166, 63, 877, 1317, 166, + 169, 164, 708, 165, 112, 711, 164, 164, 149, 165, + 581, 47, 165, 784, 166, 786, 787, 164, 164, 790, + 1238, 166, 793, 147, 60, 61, 147, 1522, 147, 800, + 150, 166, 140, 863, 1529, 166, 159, 167, 165, 810, + 76, 148, 148, 148, 147, 167, 154, 10, 153, 820, + 155, 159, 157, 624, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 166, + 106, 642, 4, 109, 169, 708, 112, 783, 711, 184, + 48, 147, 164, 188, 189, 190, 1077, 468, 1407, 169, + 164, 169, 128, 147, 146, 878, 166, 868, 156, 156, + 10, 166, 166, 166, 140, 876, 156, 156, 148, 33, + 10, 882, 883, 884, 885, 886, 887, 888, 154, 1024, + 891, 10, 10, 190, 148, 147, 164, 698, 169, 900, + 22, 23, 166, 15, 167, 841, 907, 993, 169, 910, + 167, 33, 155, 678, 679, 166, 166, 166, 164, 164, + 783, 922, 166, 164, 166, 1474, 164, 166, 729, 164, + 155, 155, 155, 268, 164, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 992, 254, 1271, 98, + 1095, 1096, 259, 166, 146, 167, 767, 167, 10, 166, + 1320, 166, 166, 148, 910, 166, 166, 978, 841, 992, + 20, 21, 22, 23, 992, 10, 10, 1337, 1338, 1339, + 991, 148, 993, 33, 164, 606, 148, 998, 295, 1000, + 1001, 148, 166, 1004, 1005, 159, 160, 161, 166, 163, + 164, 165, 15, 147, 167, 626, 627, 628, 629, 630, + 166, 166, 166, 1024, 156, 322, 10, 11, 12, 156, + 156, 166, 156, 166, 148, 157, 158, 159, 160, 161, + 10, 163, 164, 165, 167, 10, 148, 910, 164, 164, + 148, 386, 1094, 10, 11, 12, 13, 164, 166, 1409, + 17, 164, 998, 148, 1241, 166, 1416, 1068, 1004, 1005, + 166, 166, 1422, 1423, 307, 1312, 1077, 694, 879, 642, + 328, 878, 1083, 1238, 1068, 1086, 841, 384, 1089, 700, + 1272, 328, 76, 77, 1095, 1096, 1205, 406, -1, -1, + -1, -1, -1, 60, 401, 402, 10, 11, 12, 13, + -1, 408, 877, 17, -1, 155, 156, 157, 158, 159, + 160, 161, -1, 163, 164, 165, 1476, -1, 112, 113, + -1, 115, -1, -1, -1, 998, 120, -1, 122, -1, + -1, 1004, 1005, -1, -1, -1, -1, -1, -1, -1, + 289, -1, -1, 1089, 111, 112, 60, -1, 1508, -1, + -1, 1247, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1521, -1, 470, 785, 1263, 1264, 1265, 513, -1, + -1, 165, -1, 140, -1, 520, -1, -1, -1, -1, + -1, 802, -1, -1, 995, -1, -1, 154, -1, -1, + -1, -1, 159, -1, 1205, -1, -1, 164, 112, -1, + -1, 350, 547, -1, 549, -1, 551, -1, -1, 516, + -1, -1, -1, -1, -1, 1026, 1089, -1, -1, 526, + -1, -1, -1, -1, -1, -1, 140, 1238, -1, -1, + -1, -1, 10, 11, 12, 1246, 1247, -1, 1308, -1, + 154, -1, -1, -1, 1342, 159, 1344, 1258, 1346, 1260, + 164, 1349, 1350, 1351, -1, 876, -1, -1, -1, -1, + 1271, -1, 883, 884, 885, 886, 887, -1, -1, -1, + 10, 11, 12, 13, -1, 15, -1, 17, -1, -1, + 587, -1, -1, 1094, -1, 1355, 1356, -1, 1358, -1, + 1360, -1, 1238, 11, 601, -1, -1, -1, 76, 77, + -1, -1, -1, -1, -1, -1, 1317, -1, -1, 1320, + -1, -1, 1258, -1, 1260, -1, 1327, -1, -1, -1, + 60, -1, -1, 668, -1, -1, 1337, 1338, 1339, -1, + -1, -1, 639, 1403, 112, 113, 54, 115, 56, 57, + 58, -1, 120, 33, 122, -1, -1, -1, -1, 18, + 19, 20, 21, 22, 23, -1, -1, 664, 665, 666, + 667, -1, 669, -1, 33, 1238, 84, -1, -1, 518, + -1, 1317, 112, -1, -1, -1, 154, 1078, 22, 23, + 529, 159, 100, 532, -1, 1258, -1, 1260, -1, 33, + -1, -1, -1, -1, -1, -1, 1407, -1, 1409, -1, + 140, 119, 120, -1, -1, 1416, -1, -1, 1419, 1420, + 1421, 1422, 1423, -1, 154, -1, -1, -1, 136, 159, + -1, -1, -1, 141, 164, -1, -1, -1, -1, 736, + -1, -1, -1, -1, -1, -1, -1, 17, 18, 19, + 20, 21, 22, 23, 1317, 1515, 1516, 1517, -1, 1519, + -1, -1, -1, 33, -1, 1266, 1077, -1, -1, -1, + -1, 1407, -1, 1474, -1, 1476, -1, 157, 158, 159, + 160, 161, -1, 163, 164, 165, -1, -1, 823, 824, + 825, -1, 827, -1, 829, 830, 831, -1, 157, 158, + 159, 160, 161, 800, 163, 164, 165, 1508, -1, 20, + 21, 22, 23, 810, -1, -1, -1, 814, -1, -1, + 1521, 1522, 33, 157, 158, 159, 160, 161, 1529, 163, + 164, 165, -1, -1, 831, -1, -1, -1, 1474, -1, + -1, -1, -1, -1, 1407, 842, 843, 844, 845, 846, + 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, + 857, 858, 859, 860, 861, 862, 705, 864, -1, -1, + -1, 710, 10, 11, 12, 714, -1, 716, 717, 718, + 719, 720, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, 163, 164, 165, -1, -1, -1, -1, + 739, 740, -1, 742, 743, 744, 745, -1, -1, -1, + 907, 1474, 1303, 1304, 1305, 1306, 1307, -1, 1309, -1, + -1, -1, -1, -1, -1, 922, -1, -1, -1, -1, + -1, 1303, 1304, 1305, 1306, 1307, -1, 1309, 76, 77, + -1, -1, -1, -1, -1, 1446, 157, 158, 159, 160, + 161, -1, 163, 164, 165, 16, 17, 18, 19, 20, + 21, 22, 23, -1, -1, -1, -1, -1, -1, 107, + -1, -1, 33, -1, 112, 113, -1, 115, -1, -1, + -1, 978, 120, 980, 122, -1, -1, -1, -1, -1, + -1, -1, -1, 1384, 1385, 1386, 1387, 1388, 1389, 1390, + 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, + 1401, 1402, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, 1401, - 1402, 1403, 1404, -1, -1, -1, -1, -1, 106, -1, - 984, 109, 986, -1, 112, -1, 76, 77, 389, -1, - -1, -1, 393, -1, -1, -1, -1, -1, -1, -1, - 128, -1, -1, -1, -1, 406, -1, -1, -1, -1, - -1, -1, 140, -1, -1, -1, -1, -1, 1450, -1, - -1, -1, 112, 113, -1, 115, 154, -1, -1, -1, - 120, -1, 122, -1, 1038, 155, 156, 157, 158, 159, - 160, 161, 443, 163, 164, 165, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 146, -1, 459, 3, - 4, 5, 6, -1, 8, 9, 10, 11, 12, -1, - 471, 1503, -1, -1, -1, -1, -1, -1, -1, -1, - 481, -1, -1, -1, -1, -1, -1, -1, 489, -1, - -1, -1, -1, -1, -1, -1, 18, 19, 20, 21, - 22, 23, -1, -1, -1, -1, 50, 51, -1, -1, - 54, 33, 56, 57, 58, 59, 60, -1, 62, 63, - -1, -1, 66, 67, 525, -1, 70, -1, -1, -1, - -1, 75, 76, 77, -1, 536, -1, 81, -1, -1, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, -1, -1, -1, - -1, -1, -1, -1, 108, -1, 110, -1, 112, -1, - -1, -1, -1, 117, -1, 119, 120, 121, -1, -1, - 124, 125, -1, -1, 585, 129, -1, -1, 132, 133, - 134, 135, 136, -1, -1, 139, -1, 141, -1, -1, - 3, 4, 5, 6, -1, 8, 9, 10, 11, 12, - 154, -1, 15, 157, 158, 159, -1, -1, 162, -1, - 164, 165, -1, -1, 168, -1, -1, 628, -1, -1, - 1234, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, 163, 164, 165, 47, 646, -1, 50, 51, -1, - -1, 54, -1, 56, 57, 58, 59, 60, -1, 62, - 63, -1, -1, 66, 67, -1, -1, 70, -1, -1, - -1, -1, 75, 76, 77, -1, -1, -1, -1, -1, - -1, 84, -1, -1, 1288, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, - -1, 702, -1, -1, -1, 108, -1, 110, -1, 112, - -1, -1, -1, 116, 117, -1, 119, 120, 121, -1, - -1, 124, 125, -1, -1, 1329, 129, -1, -1, 132, - 133, 134, 135, 136, -1, -1, 139, -1, 141, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 154, -1, -1, 157, 158, -1, -1, -1, 162, - -1, 164, -1, -1, -1, 168, -1, -1, -1, -1, - -1, 772, -1, -1, -1, -1, -1, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, -1, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - -1, -1, 1406, -1, -1, -1, -1, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, -1, -1, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, -1, 70, -1, 72, 73, 74, 75, - 76, 77, 78, 79, 80, -1, 82, 83, 84, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, - 106, 107, 108, 884, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, -1, -1, 920, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, -1, -1, -1, -1, -1, 16, - 17, 18, 19, 20, 21, 22, 23, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 33, -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, - 1001, -1, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, -1, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, - -1, 1032, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, -1, -1, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, -1, 70, - -1, 72, 73, 74, 75, 76, 77, 78, 79, 80, - -1, 82, 83, 84, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, 163, 164, 165, 100, - -1, -1, 169, -1, -1, 106, 107, 108, -1, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, -1, -1, -1, 146, 147, 148, 149, 150, + 1402, -1, -1, -1, -1, 1032, -1, -1, -1, -1, + -1, 1076, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 894, -1, -1, -1, 1450, + -1, 900, -1, 3, 4, 5, 6, -1, 8, 9, + 10, 11, 12, -1, -1, -1, -1, -1, 1450, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 928, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, 168, 169, 3, - 4, 5, 6, -1, 8, 9, 10, 11, -1, -1, + 161, -1, 163, 164, 165, -1, -1, -1, 169, -1, + 50, 51, -1, 1504, 54, -1, 56, 57, 58, 59, + 60, -1, 62, 63, -1, -1, 66, 67, -1, -1, + 70, -1, 1504, -1, -1, 75, 76, 77, 10, 11, + 12, 81, -1, -1, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 18, 19, 20, 21, 22, 23, -1, 108, -1, + 110, -1, 112, -1, -1, -1, 33, 117, -1, 119, + 120, 121, -1, -1, 124, 125, -1, -1, -1, 129, + -1, -1, 132, 133, 134, 135, 136, -1, -1, 139, + -1, 141, -1, -1, 76, 77, 16, 17, 18, 19, + 20, 21, 22, 23, 154, -1, -1, 157, 158, 159, + -1, -1, 162, 33, 164, 165, -1, -1, 168, -1, + -1, -1, -1, -1, 1231, -1, -1, -1, -1, -1, + 112, 113, -1, 115, -1, -1, -1, -1, 120, -1, + 122, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 10, 11, 12, -1, -1, + -1, -1, -1, 1308, -1, -1, -1, 149, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1285, -1, + -1, -1, -1, -1, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 16, 17, 18, 19, 20, 21, 22, 23, -1, - -1, -1, -1, -1, -1, -1, 50, 51, 33, -1, - 54, -1, 56, 57, 58, 59, -1, -1, 62, 63, - -1, -1, 66, 67, -1, -1, 70, -1, -1, -1, - -1, 75, 76, 77, -1, -1, -1, 81, -1, -1, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, -1, 1269, -1, - -1, -1, -1, -1, 108, -1, 110, -1, 112, -1, - -1, -1, -1, 117, -1, 119, 120, 121, -1, -1, - 124, 125, -1, -1, -1, 129, -1, -1, 132, 133, - 134, 135, 136, -1, -1, 139, -1, 141, 3, 4, - 5, 6, -1, 8, 9, 10, 11, -1, -1, -1, - 154, -1, -1, 157, 158, 159, -1, -1, 162, -1, - 164, 165, -1, -1, 168, -1, 151, 152, 153, 154, + -1, -1, -1, 18, 19, 20, 21, 22, 23, -1, + 1327, 76, 77, -1, 1369, 1370, 1371, 1372, 33, 1374, + 1375, 151, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, 163, 164, 165, -1, -1, -1, 169, + -1, -1, -1, -1, -1, -1, -1, 112, 113, -1, + 115, -1, -1, -1, -1, 120, -1, 122, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 146, 1241, -1, -1, -1, -1, 1404, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, -1, -1, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, -1, 70, -1, 72, 73, 74, + 75, 76, 77, 78, 79, 80, -1, 82, 83, 84, 155, 156, 157, 158, 159, 160, 161, -1, 163, 164, - 165, -1, -1, -1, 169, 50, -1, -1, -1, 54, - -1, 56, 57, 58, -1, -1, -1, 62, -1, 64, - 65, 66, 67, -1, -1, -1, 17, -1, -1, -1, - 75, 76, 77, -1, -1, -1, 81, -1, -1, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 47, -1, -1, -1, - -1, -1, -1, 108, -1, 110, -1, 112, -1, 60, - 61, -1, 117, -1, 119, 120, 121, -1, -1, 124, - -1, -1, -1, -1, 129, 76, -1, 132, -1, -1, - -1, 136, -1, -1, -1, 1446, 141, 3, 4, 5, - 6, 146, 8, 9, 10, 11, -1, -1, -1, 154, - -1, -1, 157, 158, 159, 106, -1, 162, 109, 164, - 165, 112, -1, 168, -1, -1, -1, -1, 16, 17, - 18, 19, 20, 21, 22, 23, -1, 128, -1, -1, - -1, -1, -1, -1, 50, 33, -1, -1, 54, 140, - 56, 57, 58, -1, -1, -1, 62, -1, -1, -1, - 66, 67, -1, 154, -1, -1, -1, -1, -1, 75, - 76, 77, -1, -1, -1, 81, -1, -1, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, -1, -1, -1, -1, -1, - -1, -1, 108, -1, 110, -1, 112, -1, -1, -1, - -1, 117, -1, 119, 120, 121, -1, -1, 124, -1, - -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, - 136, 3, 4, 5, 6, 141, 8, 9, 10, 11, - -1, 10, 11, 12, -1, -1, -1, -1, 154, -1, - -1, 157, 158, 159, -1, -1, 162, -1, 164, 165, - 166, -1, 168, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, 163, 164, 165, 50, 51, - -1, 169, 54, -1, 56, 57, 58, -1, -1, -1, - 62, -1, -1, -1, 66, 67, -1, -1, -1, -1, - -1, -1, -1, 75, 76, 77, -1, 76, 77, 81, + 165, -1, -1, 1312, -1, 100, -1, -1, -1, -1, + -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, + -1, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, -1, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, + -1, -1, -1, -1, -1, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, -1, -1, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, -1, 70, -1, 72, 73, 74, 75, 76, 77, + 78, 79, 80, -1, 82, 83, 84, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 100, -1, -1, -1, -1, -1, 106, 107, + 108, -1, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, -1, -1, -1, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, + 168, 169, 3, 4, 5, 6, -1, 8, 9, 10, + 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 16, 17, 18, 19, 20, 21, + 22, 23, -1, -1, -1, -1, -1, -1, -1, 50, + 51, 33, -1, 54, -1, 56, 57, 58, 59, -1, + -1, 62, 63, -1, -1, 66, 67, -1, -1, 70, + -1, -1, -1, -1, 75, 76, 77, -1, -1, -1, + 81, -1, -1, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + -1, -1, -1, -1, -1, -1, -1, 108, -1, 110, + -1, 112, -1, -1, -1, -1, 117, -1, 119, 120, + 121, -1, -1, 124, 125, -1, -1, -1, 129, -1, + -1, 132, 133, 134, 135, 136, -1, -1, 139, -1, + 141, 3, 4, 5, 6, -1, 8, 9, 10, 11, + -1, -1, -1, 154, -1, -1, 157, 158, 159, -1, + -1, 162, -1, 164, 165, -1, -1, 168, -1, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, -1, -1, -1, 169, 50, -1, + -1, -1, 54, -1, 56, 57, 58, -1, -1, -1, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + -1, -1, -1, 75, 76, 77, -1, -1, -1, 81, -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, 108, -1, 110, -1, - 112, -1, -1, 112, 113, 117, 115, 119, 120, 121, - -1, 120, 124, 122, -1, -1, -1, 129, -1, -1, + 112, -1, -1, -1, -1, 117, -1, 119, 120, 121, + -1, -1, 124, -1, -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, 136, 3, 4, 5, 6, 141, - 8, 9, 10, 11, -1, -1, -1, 146, -1, -1, + 8, 9, 10, 11, 146, 10, 11, 12, -1, -1, -1, -1, 154, -1, -1, 157, 158, 159, -1, -1, - 162, -1, 164, 165, -1, -1, 168, -1, -1, -1, - 16, 17, 18, 19, 20, 21, 22, 23, -1, -1, - -1, -1, 50, 51, -1, -1, 54, 33, 56, 57, + 162, -1, 164, 165, -1, -1, 168, 17, 18, 19, + 20, 21, 22, 23, -1, -1, -1, -1, -1, -1, + -1, -1, 50, 33, -1, -1, 54, -1, 56, 57, 58, -1, -1, -1, 62, -1, -1, -1, 66, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, - -1, -1, -1, 81, -1, -1, 84, 85, 86, 87, + -1, 76, 77, 81, -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, - 108, -1, 110, -1, 112, -1, -1, -1, -1, 117, - -1, 119, 120, 121, -1, -1, 124, -1, -1, -1, + 108, -1, 110, -1, 112, -1, -1, 112, 113, 117, + 115, 119, 120, 121, -1, 120, 124, 122, -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, 136, 3, - 4, 5, 6, 141, 8, 9, 10, 11, -1, 10, - 11, 12, -1, -1, 15, -1, 154, -1, -1, 157, - 158, 159, -1, -1, 162, -1, 164, 165, -1, -1, - 168, -1, -1, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 50, 163, 164, 165, + 4, 5, 6, 141, 8, 9, 10, 11, -1, -1, + -1, 146, -1, -1, -1, -1, 154, -1, -1, 157, + 158, 159, -1, -1, 162, -1, 164, 165, 166, -1, + 168, -1, 152, 153, 154, -1, -1, 157, 158, 159, + 160, 161, -1, 163, 164, 165, 50, 51, -1, -1, 54, -1, 56, 57, 58, -1, -1, -1, 62, -1, -1, -1, 66, 67, -1, -1, -1, -1, -1, -1, - -1, 75, 76, 77, -1, 76, 77, 81, -1, -1, + -1, 75, 76, 77, -1, -1, -1, 81, -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, 108, -1, 110, -1, 112, -1, - -1, 112, 113, 117, 115, 119, 120, 121, -1, 120, - 124, 122, -1, -1, -1, 129, -1, -1, 132, -1, + -1, -1, -1, 117, -1, 119, 120, 121, -1, -1, + 124, -1, -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, 136, 3, 4, 5, 6, 141, 8, 9, - 10, 11, 146, 10, 11, 12, -1, -1, -1, -1, + 10, 11, -1, 10, 11, 12, -1, -1, 15, -1, 154, -1, -1, 157, 158, 159, -1, -1, 162, -1, 164, 165, -1, -1, 168, -1, -1, -1, 16, 17, 18, 19, 20, 21, 22, 23, -1, -1, -1, -1, - 50, -1, -1, -1, 54, 33, 56, 57, 58, -1, + 50, 51, -1, -1, 54, 33, 56, 57, 58, -1, -1, -1, 62, -1, -1, -1, 66, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, -1, 76, 77, 81, -1, -1, 84, 85, 86, 87, 88, 89, @@ -2513,18 +2483,18 @@ static const yytype_int16 yycheck[] = 110, -1, 112, -1, -1, 112, 113, 117, 115, 119, 120, 121, -1, 120, 124, 122, -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, 136, 3, 4, 5, - 6, 141, 8, 9, 10, 11, -1, -1, -1, -1, + 6, 141, 8, 9, 10, 11, -1, 10, 11, 12, -1, -1, -1, -1, 154, -1, -1, 157, 158, 159, - -1, -1, 162, -1, 164, 165, 166, -1, 168, -1, - 148, -1, -1, 151, 152, 153, 154, 155, 156, 157, + -1, -1, 162, -1, 164, 165, -1, -1, 168, -1, + -1, 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 50, 163, 164, 165, 54, -1, 56, 57, 58, -1, -1, -1, 62, -1, -1, -1, 66, 67, -1, -1, -1, -1, -1, -1, -1, 75, - 76, 77, -1, -1, -1, 81, -1, -1, 84, 85, + 76, 77, -1, 76, 77, 81, -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, -1, -1, -1, -1, -1, - -1, -1, 108, -1, 110, -1, 112, -1, -1, -1, - -1, 117, -1, 119, 120, 121, -1, -1, 124, -1, + -1, -1, 108, -1, 110, -1, 112, -1, -1, 112, + 113, 117, 115, 119, 120, 121, -1, 120, 124, 122, -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, 136, 3, 4, 5, 6, 141, 8, 9, 10, 11, 146, -1, -1, -1, -1, -1, -1, -1, 154, -1, @@ -2542,7 +2512,7 @@ static const yytype_int16 yycheck[] = 132, -1, -1, -1, 136, 3, 4, 5, 6, 141, 8, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, 154, -1, -1, 157, 158, 159, -1, -1, - 162, -1, 164, 165, 166, -1, 168, 147, -1, -1, + 162, -1, 164, 165, 166, -1, 168, -1, 148, -1, -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 50, 163, 164, 165, 54, -1, 56, 57, 58, -1, -1, -1, 62, -1, -1, -1, 66, 67, @@ -2553,245 +2523,286 @@ static const yytype_int16 yycheck[] = 108, -1, 110, -1, 112, -1, -1, -1, -1, 117, -1, 119, 120, 121, -1, -1, 124, -1, -1, -1, -1, 129, -1, -1, 132, -1, -1, -1, 136, 3, - 4, 5, 6, 141, 8, 9, 10, 11, 12, -1, - -1, 15, -1, -1, -1, -1, 154, -1, -1, 157, + 4, 5, 6, 141, 8, 9, 10, 11, 146, -1, + -1, -1, -1, -1, -1, -1, 154, -1, -1, 157, 158, 159, -1, -1, 162, -1, 164, 165, -1, -1, - 168, 16, 17, 18, 19, 20, 21, 22, 23, -1, - -1, -1, -1, 47, -1, -1, 50, 51, 33, -1, - 54, -1, 56, 57, 58, 59, 60, -1, 62, 63, - -1, -1, 66, 67, -1, -1, 70, -1, -1, -1, - -1, 75, 76, 77, -1, -1, -1, -1, -1, -1, - 84, -1, -1, -1, -1, -1, -1, -1, -1, 10, - 11, 12, -1, -1, -1, -1, 100, -1, -1, -1, + 168, -1, -1, -1, 16, 17, 18, 19, 20, 21, + 22, 23, -1, -1, -1, -1, 50, -1, -1, -1, + 54, 33, 56, 57, 58, -1, -1, -1, 62, -1, + -1, -1, 66, 67, -1, -1, -1, -1, -1, -1, + -1, 75, 76, 77, -1, -1, -1, 81, -1, -1, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, 108, -1, 110, -1, 112, -1, - -1, -1, 116, 117, -1, 119, 120, 121, -1, -1, - 124, 125, -1, -1, -1, 129, -1, -1, 132, 133, - 134, 135, 136, -1, -1, 139, -1, 141, 3, 4, - 5, 6, -1, 8, 9, 10, -1, -1, -1, -1, - 154, -1, -1, 157, 158, 76, 77, -1, 162, -1, - 164, -1, 147, -1, 168, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, 163, 164, - 165, 166, -1, -1, -1, 50, -1, -1, -1, -1, - -1, 112, 113, 114, 115, -1, -1, 62, -1, 120, - -1, 122, 67, 17, 18, 19, 20, 21, 22, 23, - 75, 76, 133, -1, -1, -1, 81, 138, -1, 33, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, -1, 16, 17, 18, 19, - 20, 21, 22, 23, -1, 110, -1, 112, -1, -1, - -1, -1, 117, 33, -1, -1, 121, -1, -1, 124, - -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, - -1, 54, -1, 56, 57, 58, -1, -1, -1, -1, - -1, -1, -1, 66, -1, -1, -1, -1, -1, 154, - -1, -1, 157, 158, 159, 6, -1, 162, -1, 164, - 165, 84, -1, 168, -1, 16, 17, 18, 19, 20, - 21, 22, 23, -1, -1, -1, -1, 100, -1, -1, - -1, -1, 33, -1, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 119, 120, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, -1, 136, 65, -1, -1, -1, 141, -1, - -1, 10, 11, 12, -1, -1, 10, 11, -1, -1, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, 163, 164, 165, 166, 16, 17, 18, - 19, 20, 21, 22, 23, -1, -1, 108, -1, -1, - -1, -1, -1, -1, 33, -1, -1, 51, -1, -1, - 54, -1, 56, 57, 58, 59, -1, -1, -1, 63, - -1, -1, 66, -1, -1, -1, 70, 76, 77, -1, - -1, -1, -1, 77, -1, -1, 147, -1, -1, 150, - 84, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, -1, 164, 165, -1, 100, 168, -1, 10, - 11, -1, -1, 112, 113, -1, 115, 111, -1, -1, - -1, 120, -1, 122, -1, 119, 120, -1, -1, -1, - -1, 125, -1, -1, 133, -1, -1, -1, -1, 133, - 134, 135, 136, -1, -1, 139, -1, 141, -1, -1, - 51, -1, 146, 54, -1, 56, 57, 58, 59, -1, - -1, -1, 63, -1, -1, 66, -1, -1, 162, 70, - -1, -1, 151, 152, 153, 154, 77, -1, 157, 158, - 159, 160, 161, 84, 163, 164, 165, -1, -1, -1, - -1, -1, -1, -1, -1, 10, 11, -1, -1, 100, - -1, 54, -1, 56, 57, 58, -1, -1, -1, -1, - 111, -1, -1, 66, -1, -1, -1, -1, 119, 120, - -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, - -1, 84, 133, 134, 135, 136, 51, -1, 139, 54, - 141, 56, 57, 58, 59, -1, -1, 100, 63, -1, - -1, 66, 11, -1, -1, 70, -1, -1, -1, -1, - -1, 162, 77, -1, -1, -1, 119, 120, -1, 84, - 16, 17, 18, 19, 20, 21, 22, 23, -1, -1, - -1, -1, -1, 136, -1, 100, -1, 33, 141, -1, - -1, -1, -1, -1, -1, 54, 111, 56, 57, 58, - -1, -1, -1, -1, 119, 120, -1, -1, -1, -1, - 125, 164, -1, 54, -1, 56, 57, 58, 133, 134, - 135, 136, -1, -1, 139, 84, 141, 16, 17, 18, - 19, 20, 21, 22, 23, -1, -1, -1, -1, -1, - -1, 100, -1, 84, 33, -1, -1, 162, 16, 17, - 18, 19, 20, 21, 22, 23, -1, -1, -1, 100, - 119, 120, -1, -1, -1, 33, 16, 17, 18, 19, - 20, 21, 22, 23, -1, -1, -1, 136, 119, 120, - -1, -1, 141, 33, 16, 17, 18, 19, 20, 21, - 22, 23, -1, -1, -1, 136, -1, -1, -1, -1, - 141, 33, -1, -1, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, 163, 164, 165, - 166, 16, 17, 18, 19, 20, 21, 22, 23, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 33, 16, + -1, -1, -1, 117, -1, 119, 120, 121, -1, -1, + 124, -1, -1, -1, -1, 129, -1, -1, 132, -1, + -1, -1, 136, 3, 4, 5, 6, 141, 8, 9, + 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, + 154, -1, -1, 157, 158, 159, -1, -1, 162, -1, + 164, 165, 166, -1, 168, 147, -1, -1, -1, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 50, 163, 164, 165, 54, -1, 56, 57, 58, -1, + -1, -1, 62, -1, -1, -1, 66, 67, -1, -1, + -1, -1, -1, -1, -1, 75, 76, 77, -1, -1, + -1, 81, -1, -1, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, -1, -1, -1, -1, -1, -1, -1, 108, -1, + 110, -1, 112, -1, -1, -1, -1, 117, -1, 119, + 120, 121, -1, -1, 124, -1, -1, -1, -1, 129, + -1, -1, 132, -1, -1, -1, 136, 3, 4, 5, + 6, 141, 8, 9, 10, 11, 12, -1, -1, 15, + -1, -1, -1, -1, 154, -1, -1, 157, 158, 159, + -1, -1, 162, -1, 164, 165, -1, -1, 168, 16, 17, 18, 19, 20, 21, 22, 23, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 33, -1, -1, -1, - -1, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, -1, + -1, 47, -1, -1, 50, 51, 33, -1, 54, -1, + 56, 57, 58, 59, 60, -1, 62, 63, -1, -1, + 66, 67, -1, -1, 70, -1, -1, -1, -1, 75, + 76, 77, -1, -1, -1, -1, -1, -1, 84, -1, + -1, -1, -1, -1, 16, 17, 18, 19, 20, 21, + 22, 23, -1, -1, 100, -1, -1, -1, -1, -1, + -1, 33, 108, -1, 110, -1, 112, -1, -1, -1, + 116, 117, -1, 119, 120, 121, -1, -1, 124, 125, + -1, -1, -1, 129, -1, -1, 132, 133, 134, 135, + 136, -1, -1, 139, -1, 141, -1, 3, 4, 5, + 6, -1, 8, 9, 10, 11, 12, -1, 154, 15, + -1, 157, 158, -1, -1, -1, 162, -1, 164, -1, + 147, -1, 168, -1, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 47, -1, -1, 50, 51, -1, -1, 54, -1, + 56, 57, 58, 59, 60, -1, 62, 63, -1, -1, + 66, 67, -1, -1, 70, 10, 11, 12, -1, 75, + 76, 77, -1, -1, -1, -1, -1, 149, 84, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 100, -1, -1, -1, -1, -1, + -1, -1, 108, -1, 110, -1, 112, -1, -1, -1, + 116, 117, -1, 119, 120, 121, -1, -1, 124, 125, + -1, -1, -1, 129, -1, -1, 132, 133, 134, 135, + 136, 76, 77, 139, -1, 141, 3, 4, 5, 6, + -1, 8, 9, 10, -1, -1, -1, -1, 154, -1, + -1, 157, 158, -1, -1, -1, 162, -1, 164, -1, + -1, -1, 168, -1, -1, -1, -1, 112, 113, 114, + 115, -1, -1, -1, -1, 120, -1, 122, -1, -1, + -1, -1, -1, 50, -1, -1, -1, -1, 133, -1, + -1, -1, -1, 138, -1, 62, -1, -1, -1, -1, + 67, 18, 19, 20, 21, 22, 23, -1, 75, 76, + -1, -1, -1, -1, 81, -1, 33, -1, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, -1, 16, 17, 18, 19, 20, 21, + 22, 23, -1, 110, -1, 112, -1, -1, -1, -1, + 117, 33, -1, -1, 121, -1, -1, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 54, + -1, 56, 57, 58, -1, -1, -1, -1, -1, -1, + -1, 66, -1, -1, -1, -1, -1, 154, -1, -1, + 157, 158, 159, 6, -1, 162, -1, 164, 165, 84, + -1, 168, -1, 16, 17, 18, 19, 20, 21, 22, + 23, -1, -1, -1, -1, 100, -1, -1, -1, -1, + 33, -1, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 119, 120, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, -1, + -1, 136, 65, -1, -1, -1, 141, -1, -1, 10, + 11, 12, -1, -1, 10, 11, -1, -1, -1, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, 16, 17, 18, 19, 20, + 21, 22, 23, -1, -1, 108, -1, -1, -1, -1, + -1, -1, 33, -1, -1, 51, -1, -1, 54, -1, + 56, 57, 58, 59, -1, -1, -1, 63, -1, -1, + 66, -1, -1, -1, 70, 76, 77, -1, -1, -1, + -1, 77, -1, -1, 147, -1, -1, 150, 84, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + -1, 164, 165, -1, 100, 168, -1, 10, 11, -1, + -1, 112, 113, -1, 115, 111, -1, -1, -1, 120, + -1, 122, -1, 119, 120, -1, -1, -1, -1, 125, + -1, -1, -1, -1, -1, -1, 137, 133, 134, 135, + 136, -1, -1, 139, -1, 141, -1, -1, 51, -1, + 146, 54, -1, 56, 57, 58, 59, -1, -1, -1, + 63, -1, -1, 66, -1, -1, 162, 70, 149, 17, + 151, 152, 153, 154, 77, -1, 157, 158, 159, 160, + 161, 84, 163, 164, 165, 33, -1, -1, 10, 11, + 12, -1, -1, 10, 11, -1, -1, 100, -1, 47, + -1, -1, -1, -1, -1, -1, -1, -1, 111, -1, + -1, -1, 60, 61, -1, -1, 119, 120, -1, -1, + -1, -1, 125, -1, -1, -1, -1, -1, 76, -1, + 133, 134, 135, 136, 51, -1, 139, 54, 141, 56, + 57, 58, 59, -1, -1, -1, 63, -1, -1, 66, + -1, -1, -1, 70, 76, 77, -1, -1, 106, 162, + 77, 109, -1, -1, 112, -1, -1, 84, 16, 17, + 18, 19, 20, 21, 22, 23, -1, -1, -1, -1, + 128, -1, -1, 100, -1, 33, -1, -1, -1, -1, + 112, 113, 140, 115, 111, -1, -1, -1, 120, -1, + 122, -1, 119, 120, -1, -1, 154, -1, 125, -1, + 54, 133, 56, 57, 58, -1, 133, 134, 135, 136, + -1, -1, 139, -1, 141, 16, 17, 18, 19, 20, + 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, + 84, -1, 33, -1, -1, 162, 16, 17, 18, 19, + 20, 21, 22, 23, -1, -1, 100, -1, -1, -1, + -1, -1, -1, 33, 16, 17, 18, 19, 20, 21, + 22, 23, -1, -1, -1, 119, 120, -1, -1, -1, + -1, 33, 16, 17, 18, 19, 20, 21, 22, 23, + -1, -1, 136, -1, -1, -1, -1, 141, -1, 33, -1, -1, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, 163, 164, 165, 166, -1, + 158, 159, 160, 161, -1, 163, 164, 165, 166, 16, + 17, 18, 19, 20, 21, 22, 23, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 33, 16, 17, 18, + 19, 20, 21, 22, 23, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33, -1, -1, -1, -1, -1, + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, 163, 164, 165, 166, -1, -1, -1, -1, -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, -1, -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, 163, 164, 165, 166, 16, 17, 18, 19, 20, - 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 33, -1, -1, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, 163, 164, - 165, 166, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, 163, 164, 165, 16, - 17, 18, 19, 20, 21, 22, 23, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 33, -1, -1, -1, + -1, 163, 164, 165, 166, -1, -1, 151, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, + 164, 165, 166, 16, 17, 18, 19, 20, 21, 22, + 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 33, -1, -1, -1, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, -1, 151, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, 163, 164, 165, 16, 17, 18, + 19, 20, 21, 22, 23, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33, -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, 0, -1, - -1, -1, -1, -1, -1, -1, -1, 17, 18, 19, - 20, 21, 22, 23, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 33, -1, -1, -1, -1, -1, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, 163, 164, 165, 47, -1, 49, -1, -1, - 52, 53, -1, -1, -1, -1, -1, -1, 60, 61, - -1, -1, -1, -1, -1, -1, -1, 69, -1, 71, - 72, 73, 74, -1, -1, -1, 78, -1, -1, -1, - -1, 83, -1, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, 163, 164, 165, -1, - 102, 103, 104, 105, 106, 107, -1, -1, -1, -1, - -1, 113, 114, 115, 116, -1, -1, -1, -1, -1, - 122, 123, 11, 12, 126, 127, 15, -1, 17, 131, - -1, -1, -1, -1, -1, 137, 138, -1, 140, -1, - -1, -1, 152, 153, 154, -1, 148, 157, 158, 159, - 160, 161, -1, 163, 164, 165, -1, -1, 47, -1, - -1, -1, 51, -1, -1, 54, -1, 56, 57, 58, - 59, 60, -1, -1, 63, -1, -1, 66, -1, -1, - -1, 70, 18, 19, 20, 21, 22, 23, 77, -1, - -1, -1, -1, -1, -1, 84, -1, 33, 18, 19, - 20, 21, 22, 23, -1, -1, -1, -1, -1, -1, - -1, 100, -1, 33, 18, 19, 20, 21, 22, 23, - -1, 54, -1, 56, 57, 58, -1, 116, -1, 33, - 119, 120, -1, -1, -1, -1, 125, -1, 18, 19, - 20, 21, 22, 23, 133, 134, 135, 136, -1, -1, - 139, 84, 141, 33, 18, 19, 20, 21, 22, 23, - -1, -1, -1, -1, -1, 154, -1, 100, -1, 33, - 159, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 119, 120, -1, -1, + -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 136, -1, -1, -1, -1, 141, 10, - 11, 12, -1, -1, -1, -1, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, 163, 164, 165, - -1, 164, 152, 153, 154, -1, -1, 157, 158, 159, - 160, 161, -1, 163, 164, 165, 47, -1, 49, 153, - 154, -1, -1, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 6, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 154, 76, 77, 157, 158, 159, - 160, 161, -1, 163, 164, 165, -1, -1, -1, 6, - -1, -1, -1, 157, 158, 159, 160, 161, -1, 163, - 164, 165, -1, 47, -1, 49, -1, -1, -1, 53, - -1, 112, 113, -1, 115, -1, 60, 61, -1, 120, - -1, 122, -1, -1, -1, -1, -1, 71, 72, 73, - 47, -1, 49, -1, -1, -1, 53, -1, -1, 83, - 10, 11, 12, 60, 61, 146, -1, -1, -1, -1, - -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, - -1, -1, 106, -1, -1, -1, 83, -1, -1, -1, - -1, -1, 116, -1, -1, -1, -1, 47, 122, 49, - -1, -1, 126, 127, 10, 11, 12, -1, -1, 106, - -1, -1, -1, -1, 138, -1, 140, -1, -1, 116, - -1, -1, -1, -1, -1, 122, 76, 77, -1, -1, - 127, -1, -1, 10, 11, 12, -1, -1, -1, -1, - -1, 138, -1, 140, -1, 51, -1, -1, 54, -1, - 56, 57, 58, 59, 60, -1, -1, 63, -1, -1, - 66, -1, 112, 113, 70, 115, -1, -1, -1, -1, - 120, 77, 122, -1, 51, -1, -1, 54, 84, 56, - 57, 58, 59, 60, -1, -1, 63, -1, -1, 66, - -1, -1, -1, 70, 100, -1, -1, -1, -1, -1, - 77, 54, -1, 56, 57, 58, -1, 84, -1, -1, - -1, -1, -1, 119, 120, -1, -1, -1, -1, 125, - -1, -1, -1, 100, 10, 11, 12, 133, 134, 135, - 136, 84, -1, 139, -1, 141, -1, -1, -1, -1, - -1, -1, 119, 120, -1, -1, -1, 100, 125, -1, - -1, -1, -1, 10, 11, 12, 133, 134, 135, 136, - -1, -1, 139, -1, 141, 51, 119, 120, 54, -1, - 56, 57, 58, 59, 60, -1, -1, 63, -1, -1, - 66, -1, -1, 136, 70, -1, -1, -1, 141, -1, - -1, 77, -1, -1, -1, -1, -1, 54, 84, 56, - 57, 58, 59, 60, -1, -1, -1, -1, -1, 66, - -1, 164, -1, -1, 100, -1, -1, -1, -1, -1, - 77, 10, 11, 12, -1, -1, -1, 84, -1, -1, - -1, -1, -1, 119, 120, -1, -1, -1, -1, 125, - -1, -1, -1, 100, -1, -1, -1, 133, 134, 135, - 136, -1, -1, 139, -1, 141, -1, -1, -1, -1, - 11, 12, 119, 120, 15, 54, -1, 56, 57, 58, - -1, -1, -1, -1, -1, -1, 133, 66, -1, 136, - -1, -1, 139, -1, 141, -1, -1, -1, 77, 11, - 12, -1, -1, 15, -1, 84, 47, -1, -1, -1, + -1, -1, 18, 19, 20, 21, 22, 23, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 33, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + 163, 164, 165, 47, -1, 49, -1, -1, 52, 53, + -1, -1, -1, -1, -1, -1, 60, 61, -1, -1, + -1, -1, -1, -1, -1, 69, -1, 71, 72, 73, + 74, -1, -1, -1, 78, -1, -1, -1, -1, 83, + -1, -1, 151, 152, 153, 154, -1, -1, 157, 158, + 159, 160, 161, -1, 163, 164, 165, -1, 102, 103, + 104, 105, 106, 107, -1, -1, -1, -1, -1, 113, + 114, 115, 116, -1, -1, -1, -1, -1, 122, 123, + 11, 12, 126, 127, 15, -1, 17, 131, -1, -1, + -1, -1, -1, 137, 138, -1, 140, -1, -1, -1, + -1, -1, -1, -1, 148, -1, -1, -1, 154, 155, + 156, 157, 158, 159, 160, 161, 47, 163, 164, 165, 51, -1, -1, 54, -1, 56, 57, 58, 59, 60, - -1, 100, 63, -1, -1, 66, -1, -1, -1, 70, - -1, -1, -1, -1, -1, 47, 77, -1, -1, 51, - 119, 120, 54, 84, 56, 57, 58, 59, 60, -1, - -1, 63, -1, -1, 66, -1, -1, 136, 70, 100, - 139, -1, 141, -1, -1, 77, 54, -1, 56, 57, - 58, -1, 84, -1, -1, 116, -1, -1, 119, 120, - -1, -1, -1, -1, 125, -1, -1, -1, 100, -1, - 11, 12, 133, 134, 135, 136, 84, -1, 139, -1, - 141, -1, -1, -1, 116, -1, -1, 119, 120, -1, - -1, -1, 100, 125, 10, 11, 12, -1, -1, 11, - 12, 133, 134, 135, 136, -1, 47, 139, -1, 141, - 51, 119, 120, 54, -1, 56, 57, 58, 59, 60, - -1, -1, 63, -1, -1, 66, -1, -1, 136, 70, - -1, -1, -1, 141, -1, -1, 77, -1, -1, 51, - -1, -1, 54, 84, 56, 57, 58, 59, 60, -1, - -1, 63, -1, -1, 66, -1, 164, -1, 70, 100, - 76, 77, -1, -1, -1, 77, -1, -1, 10, 11, - 12, -1, 84, -1, -1, 116, -1, -1, 119, 120, - -1, -1, -1, -1, 125, 11, 12, -1, 100, -1, - -1, 107, 133, 134, 135, 136, 112, 113, 139, 115, - 141, -1, -1, -1, 120, -1, 122, 119, 120, 11, - 12, -1, -1, 125, -1, -1, -1, -1, -1, -1, - -1, 133, 134, 135, 136, 51, -1, 139, 54, 141, - 56, 57, 58, 59, 76, 77, -1, 63, -1, -1, - 66, -1, -1, -1, 70, -1, -1, -1, -1, 51, - -1, 77, 54, -1, 56, 57, 58, 59, 84, -1, - -1, 63, -1, -1, 66, -1, -1, -1, 70, -1, - 112, 113, -1, 115, 100, 77, -1, -1, 120, -1, - 122, -1, 84, -1, -1, -1, -1, -1, -1, -1, - 116, 133, -1, 119, 120, 11, 138, -1, 100, 125, - -1, -1, -1, -1, -1, -1, -1, 133, 134, 135, - 136, -1, -1, 139, -1, 141, -1, 119, 120, -1, - -1, -1, -1, 125, 11, -1, -1, -1, -1, -1, - -1, 133, 134, 135, 136, 51, -1, 139, 54, 141, - 56, 57, 58, 59, 60, -1, -1, 63, -1, -1, - 66, -1, -1, -1, 70, -1, -1, -1, -1, -1, - -1, 77, -1, -1, 51, -1, -1, 54, 84, 56, - 57, 58, 59, 60, -1, -1, 63, -1, -1, 66, - -1, -1, -1, 70, 100, -1, -1, -1, -1, -1, - 77, -1, -1, 10, 11, 12, -1, 84, -1, -1, - -1, -1, -1, 119, 120, -1, -1, -1, -1, 125, - 11, -1, -1, 100, -1, -1, -1, 133, 134, 135, - 136, -1, -1, 139, -1, 141, -1, -1, -1, -1, - -1, -1, 119, 120, 11, -1, -1, -1, 125, -1, - -1, -1, 10, 11, 12, -1, 133, 134, 135, 136, - 51, -1, 139, 54, 141, 56, 57, 58, 59, 76, - 77, -1, 63, -1, -1, 66, -1, -1, -1, 70, - -1, -1, -1, -1, 51, -1, 77, 54, -1, 56, - 57, 58, 59, 84, -1, -1, 63, -1, -1, 66, - -1, -1, -1, 70, -1, 112, 113, -1, 115, 100, - 77, -1, -1, 120, -1, 122, -1, 84, 76, 77, - -1, -1, -1, -1, -1, -1, 133, -1, 119, 120, - -1, 138, -1, 100, 125, -1, -1, -1, -1, -1, + -1, -1, 63, -1, -1, 66, -1, -1, -1, 70, + 18, 19, 20, 21, 22, 23, 77, -1, -1, 10, + 11, 12, -1, 84, -1, 33, 18, 19, 20, 21, + 22, 23, -1, -1, -1, -1, -1, -1, -1, 100, + -1, 33, 18, 19, 20, 21, 22, 23, -1, -1, + -1, -1, -1, -1, -1, 116, -1, 33, 119, 120, + -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, 133, 134, 135, 136, -1, -1, 139, -1, - 141, -1, 119, 120, 112, 113, -1, 115, 125, -1, - -1, -1, 120, -1, 122, -1, 133, 134, 135, 136, - -1, 47, 139, 49, 141, 133, 52, 53, -1, -1, - 138, -1, -1, -1, 60, 61, -1, -1, -1, -1, - -1, -1, -1, 69, -1, 71, 72, 73, 74, -1, - -1, -1, 78, -1, -1, -1, -1, 83, -1, -1, + 141, -1, -1, -1, -1, 76, 77, -1, -1, -1, + -1, -1, -1, 154, -1, -1, -1, -1, 159, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 112, 113, -1, 115, -1, -1, -1, -1, 120, + -1, 122, -1, -1, -1, -1, -1, 10, 11, 12, + -1, -1, 133, -1, 152, 153, 154, 138, -1, 157, + 158, 159, 160, 161, 6, 163, 164, 165, -1, -1, + -1, 153, 154, -1, -1, 157, 158, 159, 160, 161, + 11, 163, 164, 165, 47, -1, 49, -1, 154, -1, + -1, 157, 158, 159, 160, 161, -1, 163, 164, 165, + -1, 6, -1, -1, -1, 47, -1, 49, -1, -1, + -1, 53, -1, 76, 77, -1, -1, -1, 60, 61, + 51, -1, -1, 54, -1, 56, 57, 58, 59, 71, + 72, 73, 63, -1, -1, 66, -1, -1, -1, 70, + -1, 83, 47, -1, 49, -1, 77, -1, 53, 112, + 113, -1, 115, 84, -1, 60, 61, 120, -1, 122, + -1, -1, -1, -1, 106, -1, 71, 72, 73, 100, + -1, -1, -1, -1, 116, -1, -1, -1, 83, -1, + 122, -1, -1, 146, 126, 127, -1, -1, 119, 120, + 10, 11, 12, -1, 125, -1, 138, -1, 140, -1, + -1, 106, 133, 134, 135, 136, -1, -1, 139, -1, + 141, 116, -1, -1, -1, -1, -1, 122, -1, 10, + 11, 12, 127, -1, -1, -1, -1, -1, -1, -1, + -1, 51, -1, 138, 54, 140, 56, 57, 58, 59, + 60, -1, -1, 63, -1, -1, 66, -1, -1, -1, + 70, -1, -1, -1, -1, -1, -1, 77, -1, -1, + 51, -1, -1, 54, 84, 56, 57, 58, 59, 60, + -1, -1, 63, -1, -1, 66, -1, -1, -1, 70, + 100, -1, -1, -1, -1, -1, 77, 54, -1, 56, + 57, 58, -1, 84, -1, -1, -1, -1, -1, 119, + 120, -1, -1, -1, -1, 125, -1, -1, -1, 100, + 10, 11, 12, 133, 134, 135, 136, 84, -1, 139, + -1, 141, -1, -1, -1, -1, -1, -1, 119, 120, + -1, -1, -1, 100, 125, -1, -1, -1, -1, 10, + 11, 12, 133, 134, 135, 136, -1, -1, 139, -1, + 141, 51, 119, 120, 54, -1, 56, 57, 58, 59, + 60, -1, -1, 63, -1, -1, 66, -1, -1, 136, + 70, -1, -1, -1, 141, -1, -1, 77, -1, -1, + -1, -1, -1, 54, 84, 56, 57, 58, 59, 60, + -1, -1, -1, -1, -1, 66, -1, 164, -1, -1, + 100, -1, -1, -1, -1, -1, 77, 10, 11, 12, + -1, -1, -1, 84, -1, -1, -1, -1, -1, 119, + 120, -1, -1, -1, -1, 125, -1, -1, -1, 100, + -1, -1, -1, 133, 134, 135, 136, -1, -1, 139, + -1, 141, -1, -1, -1, -1, 11, 12, 119, 120, + 15, 54, -1, 56, 57, 58, -1, -1, -1, -1, + -1, -1, 133, 66, -1, 136, -1, -1, 139, -1, + 141, -1, -1, -1, 77, 11, 12, -1, -1, 15, + -1, 84, 47, -1, -1, -1, 51, -1, -1, 54, + -1, 56, 57, 58, 59, 60, -1, 100, 63, -1, + -1, 66, -1, -1, -1, 70, -1, -1, -1, -1, + -1, 47, 77, -1, -1, 51, 119, 120, 54, 84, + 56, 57, 58, 59, 60, -1, -1, 63, -1, -1, + 66, -1, -1, 136, 70, 100, 139, -1, 141, -1, + -1, 77, -1, -1, -1, -1, -1, -1, 84, -1, + -1, 116, -1, -1, 119, 120, -1, -1, -1, -1, + 125, -1, -1, -1, 100, -1, 11, 12, 133, 134, + 135, 136, -1, -1, 139, -1, 141, -1, -1, -1, + 116, -1, -1, 119, 120, -1, -1, -1, -1, 125, + 10, 11, 12, -1, -1, 11, 12, 133, 134, 135, + 136, -1, 47, 139, -1, 141, 51, -1, -1, 54, + -1, 56, 57, 58, 59, 60, -1, -1, 63, -1, + -1, 66, -1, -1, -1, 70, -1, 47, -1, 49, + -1, -1, 77, -1, -1, 51, -1, -1, 54, 84, + 56, 57, 58, 59, 60, -1, -1, 63, -1, -1, + 66, -1, -1, -1, 70, 100, 76, 77, -1, -1, + -1, 77, -1, -1, 10, 11, 12, -1, 84, -1, + -1, 116, -1, -1, 119, 120, -1, -1, -1, -1, + 125, 11, 12, -1, 100, -1, -1, -1, 133, 134, + 135, 136, 112, 113, 139, 115, 141, -1, -1, -1, + 120, -1, 122, 119, 120, 11, 12, -1, -1, 125, + -1, -1, -1, -1, -1, -1, -1, 133, 134, 135, + 136, 51, -1, 139, 54, 141, 56, 57, 58, 59, + 76, 77, -1, 63, -1, 54, 66, 56, 57, 58, + 70, -1, -1, -1, -1, 51, -1, 77, 54, -1, + 56, 57, 58, 59, 84, -1, -1, 63, -1, -1, + 66, -1, -1, -1, 70, 84, 112, 113, -1, 115, + 100, 77, -1, -1, 120, -1, 122, -1, 84, -1, + -1, 100, -1, -1, -1, -1, 116, 133, -1, 119, + 120, 11, 138, -1, 100, 125, -1, -1, -1, -1, + 119, 120, -1, 133, 134, 135, 136, -1, -1, 139, + -1, 141, -1, 119, 120, -1, -1, 136, -1, 125, + 11, -1, 141, -1, -1, -1, -1, 133, 134, 135, + 136, 51, -1, 139, 54, 141, 56, 57, 58, 59, + 60, -1, -1, 63, -1, 164, 66, -1, -1, -1, + 70, -1, -1, -1, -1, -1, -1, 77, -1, -1, + 51, -1, -1, 54, 84, 56, 57, 58, 59, 60, + -1, -1, 63, -1, -1, 66, -1, -1, -1, 70, + 100, -1, -1, -1, -1, -1, 77, -1, -1, 10, + 11, 12, -1, 84, 54, -1, 56, 57, 58, 119, + 120, -1, -1, -1, -1, 125, 11, -1, -1, 100, + -1, -1, -1, 133, 134, 135, 136, -1, -1, 139, + -1, 141, -1, -1, 84, -1, -1, -1, 119, 120, + -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, + 100, -1, 133, 134, 135, 136, 51, -1, 139, 54, + 141, 56, 57, 58, 59, 76, 77, -1, 63, 119, + 120, 66, -1, -1, -1, 70, -1, -1, -1, -1, + -1, -1, 77, -1, -1, -1, 136, -1, -1, 84, + -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 112, 113, -1, 115, 100, -1, -1, -1, 120, + -1, 122, -1, -1, 164, -1, -1, -1, -1, -1, + -1, -1, 133, -1, 119, 120, -1, 138, -1, 47, + 125, 49, -1, -1, 52, 53, -1, -1, 133, 134, + 135, 136, 60, 61, 139, -1, 141, -1, -1, -1, + -1, 69, -1, 71, 72, 73, 74, -1, -1, -1, + 78, -1, -1, -1, -1, 83, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 102, 103, 104, 105, 106, 107, + -1, -1, -1, -1, -1, 113, 114, 115, 116, -1, + -1, 47, -1, 49, 122, 123, 52, 53, 126, 127, + -1, -1, -1, 131, 60, 61, -1, -1, -1, 137, + 138, -1, 140, 69, -1, 71, 72, 73, 74, -1, + 148, -1, 78, -1, -1, -1, -1, 83, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 167, -1, -1, -1, -1, -1, -1, 102, 103, 104, 105, 106, 107, -1, -1, -1, -1, -1, 113, 114, 115, 116, -1, -1, 47, -1, 49, 122, 123, 52, 53, @@ -2827,199 +2838,198 @@ static const yytype_int16 yycheck[] = -1, -1, -1, 131, 60, 61, -1, -1, -1, 137, 138, -1, 140, 69, -1, 71, 72, 73, 74, -1, 148, -1, 78, -1, -1, -1, -1, 83, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 167, - -1, -1, -1, -1, -1, -1, 102, 103, 104, 105, + -1, 54, -1, 56, 57, 58, -1, -1, -1, 167, + -1, -1, -1, 66, -1, -1, 102, 103, 104, 105, 106, 107, -1, -1, -1, -1, -1, 113, 114, 115, - 116, -1, -1, 47, -1, 49, 122, 123, 52, 53, - 126, 127, -1, -1, -1, 131, 60, 61, -1, -1, - -1, 137, 138, -1, 140, 69, -1, 71, 72, 73, - 74, -1, 148, -1, 78, -1, -1, -1, -1, 83, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 167, -1, -1, -1, -1, -1, -1, 102, 103, - 104, 105, 106, 107, -1, -1, -1, -1, -1, 113, - 114, 115, 116, -1, -1, 47, -1, 49, 122, 123, - -1, 53, 126, 127, 47, -1, 49, 131, 60, 61, - 53, -1, -1, 137, 138, -1, 140, 60, 61, 71, - 72, 73, -1, -1, 148, -1, 78, -1, 71, 72, - 73, 83, -1, -1, -1, 78, -1, -1, -1, -1, - 83, -1, -1, 167, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 106, -1, -1, -1, -1, -1, - -1, -1, -1, 106, 116, -1, -1, -1, -1, -1, - 122, -1, -1, 116, -1, 127, -1, -1, -1, 122, - -1, -1, -1, 126, 127, 137, 138, 47, 140, 49, - -1, -1, 52, 53, 137, 138, -1, 140, -1, -1, - 60, 61, -1, 155, -1, -1, -1, -1, -1, 69, - -1, 71, 72, 73, 74, 47, -1, 49, 78, -1, - -1, 53, -1, 83, 47, -1, 49, -1, 60, 61, - 53, -1, -1, -1, -1, -1, -1, 60, 61, 71, - 72, 73, 102, 103, 104, 105, 106, 107, 71, 72, - 73, 83, -1, 113, 114, 115, 116, -1, -1, -1, - 83, -1, 122, 123, -1, -1, 126, 127, -1, -1, - -1, 131, -1, -1, 106, 107, -1, 137, 138, -1, - 140, -1, -1, 106, 116, -1, -1, -1, -1, -1, - 122, -1, -1, 116, -1, 127, -1, -1, -1, 122, - -1, -1, -1, -1, 127, -1, 138, -1, 140, -1, - -1, -1, -1, -1, -1, 138, -1, 140 + 116, 84, -1, -1, -1, -1, 122, 123, -1, -1, + 126, 127, -1, -1, 47, 131, 49, 100, -1, -1, + 53, 137, 138, -1, 140, -1, -1, 60, 61, -1, + -1, -1, 148, -1, -1, -1, 119, 120, 71, 72, + 73, -1, -1, -1, -1, 78, -1, -1, -1, -1, + 83, 167, -1, 136, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, 47, -1, 49, -1, + -1, -1, 53, 106, -1, -1, -1, -1, -1, 60, + 61, 164, -1, 116, -1, -1, -1, -1, -1, 122, + 71, 72, 73, -1, 127, -1, -1, 78, -1, -1, + -1, -1, 83, -1, 137, 138, 47, 140, 49, -1, + -1, 52, 53, -1, -1, -1, -1, -1, -1, 60, + 61, -1, 155, -1, -1, 106, -1, -1, 69, -1, + 71, 72, 73, 74, -1, 116, -1, 78, -1, -1, + -1, 122, 83, -1, -1, 126, 127, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 137, 138, -1, 140, + -1, 102, 103, 104, 105, 106, 107, -1, -1, -1, + -1, -1, 113, 114, 115, 116, -1, -1, 47, -1, + 49, 122, 123, -1, 53, 126, 127, 47, -1, 49, + 131, 60, 61, 53, -1, -1, 137, 138, -1, 140, + 60, 61, 71, 72, 73, -1, -1, -1, -1, -1, + -1, 71, 72, 73, 83, -1, -1, -1, -1, -1, + -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 106, 107, -1, + -1, -1, -1, -1, -1, -1, 106, 116, -1, -1, + -1, -1, -1, 122, -1, -1, 116, -1, 127, -1, + -1, -1, 122, -1, -1, -1, -1, 127, -1, 138, + -1, 140, -1, -1, -1, -1, -1, -1, 138, -1, + 140 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 143, 144, 145, 171, 172, 277, 3, 4, 5, + 0, 143, 144, 145, 171, 172, 278, 3, 4, 5, 6, 8, 9, 10, 11, 50, 54, 56, 57, 58, 62, 66, 67, 75, 76, 77, 81, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 108, 110, 112, 117, 119, 120, 121, 124, 129, 132, 136, 141, 154, 157, 158, 159, - 162, 164, 165, 168, 267, 268, 276, 11, 12, 51, + 162, 164, 165, 168, 268, 269, 277, 11, 12, 51, 54, 56, 57, 58, 59, 60, 63, 66, 70, 77, 84, 100, 119, 120, 125, 133, 134, 135, 136, 139, - 141, 229, 230, 234, 236, 238, 244, 245, 249, 250, - 255, 256, 257, 258, 0, 47, 49, 52, 53, 60, + 141, 230, 231, 235, 237, 239, 245, 246, 250, 251, + 256, 257, 258, 259, 0, 47, 49, 52, 53, 60, 61, 69, 71, 72, 73, 74, 78, 83, 102, 103, 104, 105, 106, 107, 113, 114, 115, 116, 122, 123, 126, 127, 131, 137, 138, 140, 148, 175, 177, 178, - 180, 183, 201, 251, 254, 277, 146, 164, 164, 164, + 180, 183, 202, 252, 255, 278, 146, 164, 164, 164, 164, 164, 164, 155, 164, 155, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 11, 51, 63, 133, 134, - 232, 249, 250, 255, 155, 164, 164, 15, 164, 155, - 164, 164, 164, 267, 267, 267, 267, 267, 11, 54, + 233, 250, 251, 256, 155, 164, 164, 15, 164, 155, + 164, 164, 164, 268, 268, 268, 268, 268, 11, 54, 56, 57, 58, 66, 77, 84, 100, 119, 120, 136, - 141, 234, 265, 267, 10, 11, 12, 76, 77, 112, - 113, 115, 120, 122, 150, 154, 159, 271, 272, 274, - 277, 267, 16, 17, 18, 19, 20, 21, 22, 23, + 141, 235, 266, 268, 10, 11, 12, 76, 77, 112, + 113, 115, 120, 122, 150, 154, 159, 272, 273, 275, + 278, 268, 16, 17, 18, 19, 20, 21, 22, 23, 33, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 163, 164, 165, 6, 8, 229, 230, 164, - 59, 125, 66, 100, 256, 256, 256, 274, 164, 256, - 13, 15, 17, 60, 140, 154, 159, 164, 227, 228, - 277, 228, 146, 10, 11, 12, 112, 149, 275, 235, - 277, 137, 181, 182, 274, 164, 72, 83, 180, 180, - 180, 180, 6, 180, 201, 180, 149, 179, 107, 180, - 164, 164, 164, 164, 180, 146, 274, 149, 149, 149, - 180, 180, 164, 178, 180, 183, 202, 180, 180, 186, - 107, 274, 180, 180, 10, 11, 51, 63, 111, 133, - 134, 146, 162, 189, 192, 231, 233, 236, 238, 244, - 249, 250, 255, 264, 265, 277, 264, 234, 264, 264, - 264, 264, 234, 264, 234, 264, 234, 264, 234, 234, - 234, 234, 234, 234, 234, 234, 234, 234, 234, 234, - 234, 234, 234, 264, 164, 274, 164, 164, 274, 235, - 234, 264, 264, 164, 10, 234, 234, 234, 267, 264, - 264, 166, 147, 166, 274, 274, 147, 169, 150, 217, - 277, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 160, 161, 163, 164, 165, 6, 8, 230, 231, 164, + 59, 125, 66, 100, 257, 257, 257, 275, 164, 257, + 13, 15, 17, 60, 140, 154, 159, 164, 228, 229, + 278, 229, 146, 10, 11, 12, 112, 149, 276, 236, + 278, 137, 181, 182, 275, 164, 72, 83, 180, 180, + 180, 180, 6, 180, 202, 180, 149, 179, 107, 180, + 164, 164, 164, 164, 180, 146, 275, 149, 149, 149, + 180, 180, 164, 178, 180, 183, 203, 180, 180, 187, + 107, 275, 180, 180, 10, 11, 51, 63, 111, 133, + 134, 146, 162, 190, 193, 232, 234, 237, 239, 245, + 250, 251, 256, 265, 266, 278, 265, 235, 265, 265, + 265, 265, 235, 265, 235, 265, 235, 265, 235, 235, + 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, + 235, 235, 235, 265, 164, 275, 164, 164, 275, 236, + 235, 265, 265, 164, 10, 235, 235, 235, 268, 265, + 265, 166, 147, 166, 275, 275, 147, 169, 150, 218, + 278, 268, 268, 268, 268, 268, 268, 268, 268, 268, + 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, + 268, 268, 166, 266, 268, 229, 229, 51, 268, 235, + 159, 275, 13, 15, 17, 60, 140, 154, 159, 228, + 278, 228, 229, 228, 229, 228, 228, 15, 17, 47, + 60, 116, 154, 159, 213, 214, 223, 230, 231, 278, + 165, 248, 249, 278, 11, 247, 257, 149, 10, 11, + 12, 47, 49, 112, 146, 275, 276, 275, 48, 147, + 164, 11, 232, 268, 180, 177, 146, 275, 275, 275, + 275, 275, 172, 146, 268, 155, 10, 11, 193, 232, + 234, 275, 148, 150, 164, 164, 164, 60, 230, 275, + 164, 176, 275, 185, 146, 148, 150, 220, 148, 184, + 275, 276, 236, 167, 166, 166, 166, 166, 166, 166, + 156, 166, 156, 166, 166, 166, 166, 147, 166, 147, + 166, 147, 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 268, 235, 265, 275, 156, 166, 166, + 275, 166, 166, 156, 166, 166, 166, 166, 268, 268, + 15, 154, 273, 164, 199, 278, 268, 149, 166, 169, + 166, 166, 166, 228, 159, 275, 228, 228, 228, 228, + 228, 165, 228, 181, 116, 230, 231, 223, 228, 228, + 166, 15, 147, 13, 17, 60, 140, 154, 159, 164, + 226, 276, 278, 13, 15, 17, 60, 140, 154, 159, + 164, 227, 264, 268, 278, 275, 167, 247, 181, 164, + 238, 240, 149, 180, 181, 3, 4, 5, 9, 10, + 15, 50, 62, 67, 75, 76, 108, 110, 112, 117, + 121, 124, 129, 132, 154, 157, 158, 162, 164, 168, + 215, 216, 223, 224, 270, 271, 277, 278, 166, 166, + 172, 146, 147, 147, 147, 147, 167, 253, 147, 166, + 10, 11, 12, 59, 60, 133, 204, 205, 206, 207, + 208, 256, 278, 164, 220, 188, 148, 235, 191, 13, + 159, 192, 51, 268, 230, 13, 17, 60, 140, 154, + 159, 225, 276, 278, 235, 172, 164, 146, 148, 149, + 150, 219, 260, 261, 64, 65, 146, 268, 13, 17, + 60, 111, 140, 154, 159, 164, 186, 209, 211, 276, + 149, 275, 164, 164, 235, 235, 235, 166, 166, 166, + 164, 166, 164, 218, 213, 17, 33, 47, 60, 61, + 76, 106, 109, 112, 128, 140, 154, 212, 278, 268, + 228, 264, 166, 48, 230, 231, 226, 227, 166, 166, + 199, 15, 223, 159, 226, 226, 226, 226, 226, 226, + 165, 218, 159, 275, 227, 227, 227, 227, 227, 227, + 165, 218, 169, 147, 150, 48, 232, 268, 172, 76, + 241, 278, 182, 164, 155, 155, 233, 155, 15, 164, + 155, 164, 268, 268, 268, 268, 235, 266, 268, 166, + 15, 147, 16, 17, 18, 19, 20, 21, 22, 23, + 33, 151, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 163, 164, 165, 180, 180, 167, 254, 10, + 10, 10, 10, 172, 277, 148, 208, 156, 147, 15, + 275, 13, 17, 60, 140, 154, 159, 164, 226, 227, + 189, 211, 148, 213, 159, 209, 213, 166, 166, 225, + 159, 225, 225, 225, 225, 225, 164, 165, 166, 167, + 194, 260, 173, 174, 275, 64, 65, 167, 262, 278, + 148, 148, 146, 221, 222, 268, 278, 148, 159, 209, + 209, 6, 16, 17, 18, 19, 20, 21, 22, 23, + 33, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 65, 108, 147, 150, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 164, 165, + 168, 200, 209, 209, 209, 209, 149, 164, 165, 212, + 150, 218, 220, 247, 266, 266, 166, 166, 166, 266, + 266, 166, 60, 233, 181, 164, 146, 169, 164, 223, + 226, 227, 218, 218, 164, 164, 212, 226, 166, 264, + 227, 166, 264, 268, 166, 166, 167, 149, 242, 243, + 278, 235, 235, 235, 164, 235, 164, 10, 235, 235, + 235, 268, 166, 166, 15, 224, 268, 268, 268, 268, + 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, + 268, 268, 268, 268, 268, 268, 268, 166, 266, 268, + 172, 147, 166, 147, 147, 147, 167, 166, 226, 227, + 178, 183, 201, 202, 207, 275, 150, 159, 150, 217, + 278, 218, 220, 166, 209, 166, 166, 164, 225, 197, + 264, 213, 167, 146, 147, 146, 164, 148, 148, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 82, 83, 84, 100, 106, + 107, 108, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 168, 169, 263, 221, + 167, 147, 209, 10, 166, 169, 166, 4, 210, 264, + 268, 147, 166, 166, 166, 166, 199, 233, 229, 48, + 166, 275, 260, 213, 218, 218, 213, 213, 164, 169, + 164, 169, 147, 113, 114, 115, 133, 138, 244, 274, + 275, 146, 147, 166, 156, 156, 265, 156, 275, 166, + 166, 156, 166, 166, 268, 149, 166, 169, 167, 10, + 148, 10, 10, 10, 148, 217, 235, 50, 62, 67, + 117, 121, 124, 154, 157, 158, 159, 162, 164, 168, + 267, 269, 147, 199, 166, 164, 199, 198, 213, 169, + 166, 260, 174, 265, 265, 262, 167, 146, 268, 215, + 169, 186, 212, 229, 15, 166, 167, 166, 166, 166, + 213, 213, 138, 274, 138, 274, 138, 274, 275, 113, + 114, 115, 15, 172, 244, 164, 164, 166, 164, 166, + 164, 268, 147, 166, 147, 166, 166, 147, 166, 164, + 155, 155, 155, 15, 164, 155, 267, 267, 267, 267, + 267, 235, 266, 267, 16, 17, 18, 19, 20, 21, + 22, 23, 33, 151, 152, 153, 154, 157, 158, 159, + 160, 161, 163, 164, 165, 189, 164, 195, 213, 166, + 199, 167, 167, 166, 167, 221, 166, 146, 166, 199, + 199, 199, 166, 166, 274, 274, 274, 274, 274, 274, + 167, 266, 266, 266, 266, 10, 148, 10, 148, 148, + 10, 148, 235, 235, 235, 235, 164, 10, 235, 235, + 166, 166, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 166, 265, 267, 228, 228, 51, 267, 234, - 159, 274, 13, 15, 17, 60, 140, 154, 159, 227, - 277, 227, 228, 227, 228, 227, 227, 15, 17, 47, - 60, 116, 154, 159, 212, 213, 222, 229, 230, 277, - 165, 247, 248, 277, 11, 246, 256, 149, 10, 11, - 12, 47, 49, 112, 146, 274, 275, 274, 48, 147, - 164, 11, 231, 267, 180, 177, 146, 274, 274, 274, - 274, 274, 172, 146, 267, 155, 10, 11, 192, 231, - 233, 274, 148, 150, 164, 164, 164, 60, 229, 274, - 164, 176, 274, 146, 148, 149, 150, 218, 146, 148, - 150, 219, 148, 184, 274, 275, 235, 167, 166, 166, - 166, 166, 166, 166, 156, 166, 156, 166, 166, 166, - 166, 147, 166, 147, 166, 147, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 267, 234, 264, - 274, 156, 166, 166, 274, 166, 166, 156, 166, 166, - 166, 166, 267, 267, 15, 154, 272, 164, 198, 277, - 267, 149, 166, 169, 166, 166, 166, 227, 159, 274, - 227, 227, 227, 227, 227, 165, 227, 181, 116, 229, - 230, 222, 227, 227, 166, 15, 147, 13, 17, 60, - 140, 154, 159, 164, 225, 275, 277, 13, 15, 17, - 60, 140, 154, 159, 164, 226, 263, 267, 277, 274, - 167, 246, 181, 164, 237, 239, 149, 180, 181, 3, - 4, 5, 9, 10, 15, 50, 62, 67, 75, 76, - 108, 110, 112, 117, 121, 124, 129, 132, 154, 157, - 158, 162, 164, 168, 214, 215, 222, 223, 269, 270, - 276, 277, 166, 166, 172, 146, 147, 147, 147, 147, - 167, 252, 147, 166, 10, 11, 12, 59, 60, 133, - 203, 204, 205, 206, 207, 255, 277, 164, 219, 187, - 148, 234, 190, 13, 159, 191, 51, 267, 229, 13, - 17, 60, 140, 154, 159, 224, 275, 277, 234, 172, - 164, 259, 260, 173, 174, 274, 64, 65, 259, 64, - 65, 146, 267, 13, 17, 60, 111, 140, 154, 159, - 164, 185, 208, 210, 275, 149, 274, 164, 164, 234, - 234, 234, 166, 166, 166, 164, 166, 164, 217, 212, - 17, 33, 47, 60, 61, 76, 106, 109, 112, 128, - 140, 154, 211, 277, 267, 227, 263, 166, 48, 229, - 230, 225, 226, 166, 166, 198, 15, 222, 159, 225, - 225, 225, 225, 225, 225, 165, 217, 159, 274, 226, - 226, 226, 226, 226, 226, 165, 217, 169, 147, 150, - 48, 231, 267, 172, 76, 240, 277, 182, 164, 155, - 155, 232, 155, 15, 164, 155, 164, 267, 267, 267, - 267, 234, 265, 267, 166, 15, 147, 16, 17, 18, - 19, 20, 21, 22, 23, 33, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 163, 164, 165, - 180, 180, 167, 253, 10, 10, 10, 10, 172, 276, - 148, 207, 156, 147, 15, 274, 13, 17, 60, 140, - 154, 159, 164, 225, 226, 188, 210, 148, 212, 159, - 208, 212, 166, 166, 224, 159, 224, 224, 224, 224, - 224, 164, 165, 166, 167, 193, 167, 261, 277, 146, - 147, 146, 164, 148, 148, 167, 148, 148, 146, 220, - 221, 267, 277, 148, 159, 208, 208, 6, 16, 17, - 18, 19, 20, 21, 22, 23, 33, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 65, - 108, 147, 150, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 164, 165, 168, 199, 208, 208, - 208, 208, 149, 164, 165, 211, 150, 217, 219, 246, - 265, 265, 166, 166, 166, 265, 265, 166, 60, 232, - 181, 164, 146, 169, 164, 222, 225, 226, 217, 217, - 164, 164, 211, 225, 166, 263, 226, 166, 263, 267, - 166, 166, 167, 149, 241, 242, 277, 234, 234, 234, - 164, 234, 164, 10, 234, 234, 234, 267, 166, 166, - 15, 223, 267, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 166, 265, 267, 172, 147, 166, 147, - 147, 147, 167, 166, 225, 226, 178, 183, 200, 201, - 206, 274, 150, 159, 150, 216, 277, 217, 219, 166, - 208, 166, 166, 164, 224, 196, 263, 212, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 82, 83, 84, 100, 106, 107, - 108, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 168, 169, 262, 259, 174, - 264, 264, 220, 167, 147, 208, 10, 166, 169, 166, - 4, 209, 263, 267, 147, 166, 166, 166, 166, 198, - 232, 228, 48, 166, 274, 259, 212, 217, 217, 212, - 212, 164, 169, 164, 169, 147, 113, 114, 115, 133, - 138, 243, 273, 274, 146, 147, 166, 156, 156, 264, - 156, 274, 166, 166, 156, 166, 166, 267, 149, 166, - 169, 167, 10, 148, 10, 10, 10, 148, 216, 234, - 50, 62, 67, 117, 121, 124, 154, 157, 158, 159, - 162, 164, 168, 266, 268, 147, 198, 166, 164, 198, - 197, 212, 169, 166, 261, 167, 167, 166, 167, 146, - 267, 214, 169, 185, 211, 228, 15, 166, 167, 166, - 166, 166, 212, 212, 138, 273, 138, 273, 138, 273, - 274, 113, 114, 115, 15, 172, 243, 164, 164, 166, - 164, 166, 164, 267, 147, 166, 147, 166, 166, 147, - 166, 164, 155, 155, 155, 15, 164, 155, 266, 266, - 266, 266, 266, 234, 265, 266, 16, 17, 18, 19, - 20, 21, 22, 23, 33, 151, 152, 153, 154, 157, - 158, 159, 160, 161, 163, 164, 165, 188, 164, 194, - 212, 166, 198, 167, 15, 220, 166, 146, 166, 198, - 198, 198, 166, 166, 273, 273, 273, 273, 273, 273, - 167, 265, 265, 265, 265, 10, 148, 10, 148, 148, - 10, 148, 234, 234, 234, 234, 164, 10, 234, 234, - 166, 166, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 166, 265, 267, 195, 212, 166, 198, 167, 198, - 259, 211, 211, 211, 198, 198, 166, 166, 166, 166, - 166, 147, 147, 166, 166, 156, 156, 156, 274, 166, - 166, 156, 266, 149, 166, 169, 212, 166, 198, 167, - 148, 10, 10, 148, 164, 164, 164, 166, 164, 266, - 166, 198, 166, 166, 265, 265, 265, 265, 198, 211, - 148, 148, 166, 166, 166, 166, 211 + 267, 166, 266, 268, 196, 213, 166, 199, 15, 167, + 199, 260, 212, 212, 212, 199, 199, 166, 166, 166, + 166, 166, 147, 147, 166, 166, 156, 156, 156, 275, + 166, 166, 156, 267, 149, 166, 169, 213, 166, 199, + 167, 148, 10, 10, 148, 164, 164, 164, 166, 164, + 267, 166, 199, 166, 166, 266, 266, 266, 266, 199, + 212, 148, 148, 166, 166, 166, 166, 212 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ @@ -3031,76 +3041,76 @@ static const yytype_uint16 yyr1[] = 177, 177, 177, 177, 177, 177, 177, 177, 179, 178, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 181, 181, - 182, 182, 182, 184, 183, 183, 183, 183, 183, 185, - 185, 187, 186, 186, 188, 188, 190, 189, 191, 189, - 193, 192, 194, 192, 195, 192, 196, 192, 197, 192, - 192, 198, 198, 198, 198, 198, 198, 198, 198, 198, - 198, 198, 198, 198, 198, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 200, 200, 200, 201, 202, 201, - 201, 201, 203, 203, 204, 204, 205, 205, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 207, 207, 207, - 207, 208, 208, 208, 208, 208, 208, 208, 208, 208, - 208, 208, 209, 208, 210, 210, 211, 211, 211, 212, - 212, 212, 212, 212, 213, 213, 214, 214, 214, 214, - 214, 215, 215, 216, 216, 217, 217, 218, 218, 218, - 218, 218, 219, 219, 219, 219, 219, 219, 220, 220, - 220, 221, 221, 221, 221, 222, 222, 222, 222, 222, - 222, 222, 222, 223, 223, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 225, 225, 225, 225, 225, 225, + 182, 182, 182, 184, 183, 183, 185, 183, 183, 183, + 186, 186, 188, 187, 187, 189, 189, 191, 190, 192, + 190, 194, 193, 195, 193, 196, 193, 197, 193, 198, + 193, 193, 199, 199, 199, 199, 199, 199, 199, 199, + 199, 199, 199, 199, 199, 199, 200, 200, 200, 200, + 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, + 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, + 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, + 200, 200, 200, 200, 200, 201, 201, 201, 202, 203, + 202, 202, 202, 204, 204, 205, 205, 206, 206, 207, + 207, 207, 207, 207, 207, 207, 207, 207, 208, 208, + 208, 208, 209, 209, 209, 209, 209, 209, 209, 209, + 209, 209, 209, 210, 209, 211, 211, 212, 212, 212, + 213, 213, 213, 213, 213, 214, 214, 215, 215, 215, + 215, 215, 216, 216, 217, 217, 218, 218, 219, 219, + 219, 219, 219, 220, 220, 220, 220, 220, 220, 221, + 221, 221, 222, 222, 222, 222, 223, 223, 223, 223, + 223, 223, 223, 223, 224, 224, 225, 225, 225, 225, 225, 225, 225, 225, 225, 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 228, 228, 228, 228, - 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 227, 227, 227, 227, 227, 227, 227, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 229, 229, 229, 229, 229, 229, 229, 229, 229, 229, 229, 229, 229, - 229, 229, 230, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 232, 232, 232, 232, - 232, 232, 232, 232, 233, 233, 234, 234, 234, 234, - 235, 235, 235, 235, 237, 236, 239, 238, 240, 240, - 241, 241, 242, 242, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 244, 245, 245, 245, 245, 246, - 246, 247, 247, 247, 248, 248, 248, 249, 249, 249, - 250, 250, 250, 252, 251, 253, 251, 251, 251, 254, - 254, 254, 255, 255, 255, 256, 256, 256, 256, 256, - 256, 256, 256, 256, 256, 256, 256, 256, 256, 257, - 257, 257, 258, 260, 259, 261, 261, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 263, 263, 264, 264, - 265, 265, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 267, 267, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 229, 230, 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 231, 232, 232, 232, 232, 232, 232, + 232, 232, 232, 232, 232, 232, 232, 233, 233, 233, + 233, 233, 233, 233, 233, 234, 234, 235, 235, 235, + 235, 236, 236, 236, 236, 238, 237, 240, 239, 241, + 241, 242, 242, 243, 243, 244, 244, 244, 244, 244, + 244, 244, 244, 244, 244, 245, 246, 246, 246, 246, + 247, 247, 248, 248, 248, 249, 249, 249, 250, 250, + 250, 251, 251, 251, 253, 252, 254, 252, 252, 252, + 255, 255, 255, 256, 256, 256, 257, 257, 257, 257, + 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, + 258, 258, 258, 259, 261, 260, 262, 262, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, + 263, 263, 263, 263, 263, 263, 263, 264, 264, 265, + 265, 266, 266, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 267, 267, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, + 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, + 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, + 268, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, - 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, - 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, - 269, 269, 269, 269, 270, 270, 270, 270, 270, 270, + 269, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 271, 271, 271, 271, 271, - 272, 272, 272, 272, 273, 273, 273, 274, 274, 274, - 274, 274, 274, 274, 274, 274, 274, 275, 275, 275, - 275, 276, 276, 276, 276, 277 + 271, 271, 271, 271, 271, 271, 272, 272, 272, 272, + 272, 273, 273, 273, 273, 274, 274, 274, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 276, 276, + 276, 276, 277, 277, 277, 277, 278 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -3112,41 +3122,41 @@ static const yytype_uint8 yyr2[] = 9, 11, 13, 9, 13, 9, 7, 5, 0, 3, 1, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, 5, 5, 1, 3, - 1, 4, 4, 0, 4, 3, 3, 3, 1, 2, - 4, 0, 4, 3, 2, 4, 0, 6, 0, 6, - 0, 7, 0, 11, 0, 12, 0, 8, 0, 9, - 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 4, 5, 6, 4, 1, 1, 1, 1, 1, + 1, 4, 4, 0, 4, 3, 0, 4, 3, 1, + 2, 4, 0, 4, 3, 2, 4, 0, 6, 0, + 6, 0, 7, 0, 11, 0, 12, 0, 8, 0, + 9, 1, 1, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 4, 5, 6, 4, 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, - 2, 2, 1, 1, 1, 1, 1, 2, 0, 6, - 2, 2, 1, 1, 1, 3, 1, 1, 1, 2, - 4, 2, 3, 3, 4, 2, 3, 1, 1, 1, - 1, 1, 2, 3, 2, 2, 2, 2, 2, 3, - 4, 3, 0, 6, 2, 3, 1, 3, 4, 1, - 1, 1, 3, 2, 1, 3, 1, 1, 1, 3, - 2, 1, 3, 1, 2, 1, 2, 1, 3, 5, - 3, 3, 1, 3, 3, 3, 3, 4, 1, 1, - 2, 1, 3, 3, 5, 3, 4, 5, 3, 4, - 5, 2, 4, 1, 1, 1, 1, 2, 2, 2, - 2, 2, 3, 4, 1, 1, 2, 2, 2, 2, - 2, 3, 4, 7, 3, 1, 2, 2, 2, 2, - 2, 2, 3, 4, 7, 3, 1, 1, 2, 2, - 2, 2, 2, 2, 3, 4, 1, 1, 2, 2, - 2, 2, 2, 2, 3, 4, 5, 9, 9, 9, - 1, 1, 2, 1, 1, 1, 3, 4, 4, 4, - 4, 1, 1, 1, 1, 2, 1, 1, 1, 3, - 4, 2, 4, 4, 4, 1, 1, 1, 2, 3, - 2, 4, 4, 1, 1, 1, 2, 3, 2, 3, - 1, 4, 5, 5, 0, 6, 0, 9, 1, 1, - 1, 1, 2, 3, 1, 2, 2, 2, 3, 3, - 3, 3, 3, 3, 4, 3, 1, 4, 2, 1, - 1, 1, 3, 5, 1, 2, 4, 1, 2, 2, - 1, 1, 1, 0, 6, 0, 7, 4, 5, 3, - 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, - 1, 2, 1, 0, 2, 1, 2, 1, 1, 1, + 1, 2, 2, 1, 1, 1, 1, 1, 2, 0, + 6, 2, 2, 1, 1, 1, 3, 1, 1, 1, + 2, 4, 2, 3, 3, 4, 2, 3, 1, 1, + 1, 1, 1, 2, 3, 2, 2, 2, 2, 2, + 3, 4, 3, 0, 6, 2, 3, 1, 3, 4, + 1, 1, 1, 3, 2, 1, 3, 1, 1, 1, + 3, 2, 1, 3, 1, 2, 1, 2, 1, 3, + 5, 3, 3, 1, 3, 3, 3, 3, 4, 1, + 1, 2, 1, 3, 3, 5, 3, 4, 5, 3, + 4, 5, 2, 4, 1, 1, 1, 1, 2, 2, + 2, 2, 2, 3, 4, 1, 1, 2, 2, 2, + 2, 2, 3, 4, 7, 3, 1, 2, 2, 2, + 2, 2, 2, 3, 4, 7, 3, 1, 1, 2, + 2, 2, 2, 2, 2, 3, 4, 1, 1, 2, + 2, 2, 2, 2, 2, 3, 4, 5, 9, 9, + 9, 1, 1, 2, 1, 1, 1, 3, 4, 4, + 4, 4, 1, 1, 1, 1, 2, 1, 1, 1, + 3, 4, 2, 4, 4, 4, 1, 1, 1, 2, + 3, 2, 4, 4, 1, 1, 1, 2, 3, 2, + 3, 1, 4, 5, 5, 0, 6, 0, 9, 1, + 1, 1, 1, 2, 3, 1, 2, 2, 2, 3, + 3, 3, 3, 3, 3, 4, 3, 1, 4, 2, + 1, 1, 1, 3, 5, 1, 2, 4, 1, 2, + 2, 1, 1, 1, 0, 6, 0, 7, 4, 5, + 3, 5, 4, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, + 1, 1, 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, @@ -3159,29 +3169,29 @@ 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, 3, 1, 1, 1, 1, - 1, 3, 1, 4, 7, 7, 7, 7, 4, 4, - 5, 4, 2, 2, 2, 2, 2, 2, 3, 3, + 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, + 1, 1, 3, 1, 4, 7, 7, 7, 7, 4, + 4, 5, 4, 2, 2, 2, 2, 2, 2, 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, 7, 7, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 5, 4, 2, 5, 4, 4, + 2, 2, 2, 2, 2, 2, 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, 7, 7, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 5, 4, 2, 5, 4, 4, 2, - 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 8, 11, 4, 4, 6, 4, 4, 6, + 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 1, 4, 7, 7, 7, 7, 4, 4, 5, + 4, 2, 5, 4, 4, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 5, 4, 4, 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, 1, 1, 1, 1, 1, 1, 2, + 4, 2, 3, 1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 8, 11, 4, 4, 6, 4, 4, 6, 6, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 1, 4, 7, 7, 7, 7, 4, 4, 5, 4, - 2, 5, 4, 4, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 2, 4, - 2, 3, 1, 2, 1, 2, 2, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 2, 0 + 1, 1, 1, 1, 2, 2, 0 }; @@ -3961,7 +3971,7 @@ yyreduce: { current_expr = (yyvsp[0].u.expr); } -#line 3965 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 3975 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 4: @@ -3969,7 +3979,7 @@ yyreduce: { current_type = (yyvsp[0].u.type); } -#line 3973 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 3983 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 10: @@ -3977,7 +3987,7 @@ yyreduce: { delete (yyvsp[-1].u.expr); } -#line 3981 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 3991 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 11: @@ -3985,7 +3995,7 @@ yyreduce: { delete (yyvsp[-2].u.expr); } -#line 3989 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 3999 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 12: @@ -3993,7 +4003,7 @@ yyreduce: { delete (yyvsp[-1].u.expr); } -#line 3997 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4007 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 13: @@ -4002,7 +4012,7 @@ yyreduce: push_storage_class((current_storage_class & ~CPPInstance::SC_c_binding) | ((yyvsp[-1].u.integer) & CPPInstance::SC_c_binding)); } -#line 4006 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4016 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 14: @@ -4010,7 +4020,7 @@ yyreduce: { pop_storage_class(); } -#line 4014 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4024 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 21: @@ -4027,7 +4037,7 @@ yyreduce: publish_nest_level++; current_scope->set_current_vis(V_published); } -#line 4031 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4041 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 22: @@ -4040,7 +4050,7 @@ yyreduce: } publish_nest_level = 0; } -#line 4044 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4054 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 23: @@ -4048,7 +4058,7 @@ yyreduce: { current_scope->set_current_vis(V_published); } -#line 4052 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4062 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 24: @@ -4060,7 +4070,7 @@ yyreduce: current_scope->set_current_vis(V_public); } } -#line 4064 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4074 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 25: @@ -4068,7 +4078,7 @@ yyreduce: { current_scope->set_current_vis(V_protected); } -#line 4072 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4082 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 26: @@ -4076,7 +4086,7 @@ yyreduce: { current_scope->set_current_vis(V_private); } -#line 4080 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4090 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 27: @@ -4091,7 +4101,7 @@ yyreduce: CPPMakeProperty *make_property = new CPPMakeProperty((yyvsp[-4].u.identifier), getter->as_function_group(), NULL, current_scope, (yylsp[-6]).file); current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-6])); } -#line 4095 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4105 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 28: @@ -4116,7 +4126,7 @@ yyreduce: current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-8])); } } -#line 4120 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4130 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 29: @@ -4150,7 +4160,7 @@ yyreduce: current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-10])); } } -#line 4154 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4164 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 30: @@ -4171,7 +4181,7 @@ yyreduce: make_property->_length_function = length_getter->as_function_group(); current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-8])); } -#line 4175 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4185 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 31: @@ -4203,7 +4213,7 @@ yyreduce: current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-10])); } } -#line 4207 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4217 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 32: @@ -4244,7 +4254,7 @@ yyreduce: current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-12])); } } -#line 4248 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4258 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 33: @@ -4270,7 +4280,7 @@ yyreduce: current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-8])); } } -#line 4274 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4284 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 34: @@ -4307,7 +4317,7 @@ yyreduce: current_scope->add_declaration(make_property, global_scope, current_lexer, (yylsp[-12])); } } -#line 4311 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4321 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 35: @@ -4333,7 +4343,7 @@ yyreduce: current_scope->add_declaration(make_seq, global_scope, current_lexer, (yylsp[-8])); } } -#line 4337 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4347 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 36: @@ -4348,7 +4358,7 @@ yyreduce: yywarning("static_assert failed: " + str.str(), (yylsp[-4])); } } -#line 4352 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4362 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 37: @@ -4362,7 +4372,7 @@ yyreduce: yywarning("static_assert failed", (yylsp[-2])); } } -#line 4366 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4376 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 38: @@ -4372,7 +4382,7 @@ yyreduce: V_public); push_scope(new_scope); } -#line 4376 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4386 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 39: @@ -4381,7 +4391,7 @@ yyreduce: delete current_scope; pop_scope(); } -#line 4385 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4395 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 40: @@ -4389,7 +4399,7 @@ yyreduce: { (yyval.u.integer) = 0; } -#line 4393 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4403 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 41: @@ -4398,7 +4408,7 @@ yyreduce: // This isn't really a storage class, but it helps with parsing. (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_const; } -#line 4402 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4412 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 42: @@ -4406,7 +4416,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_extern; } -#line 4410 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4420 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 43: @@ -4421,7 +4431,7 @@ yyreduce: yywarning("Ignoring unknown linkage type \"" + (yyvsp[-1].str) + "\"", (yylsp[-1])); } } -#line 4425 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4435 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 44: @@ -4429,7 +4439,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_static; } -#line 4433 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4443 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 45: @@ -4437,7 +4447,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_inline; } -#line 4441 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4451 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 46: @@ -4445,7 +4455,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_virtual; } -#line 4449 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4459 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 47: @@ -4453,7 +4463,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_explicit; } -#line 4457 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4467 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 48: @@ -4461,7 +4471,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_register; } -#line 4465 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4475 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 49: @@ -4469,7 +4479,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_volatile; } -#line 4473 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4483 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 50: @@ -4477,7 +4487,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_mutable; } -#line 4481 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4491 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 51: @@ -4485,7 +4495,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_constexpr; } -#line 4489 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4499 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 52: @@ -4493,7 +4503,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_blocking; } -#line 4497 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4507 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 53: @@ -4501,7 +4511,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_extension; } -#line 4505 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4515 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 54: @@ -4509,7 +4519,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer) | (int)CPPInstance::SC_thread_local; } -#line 4513 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4523 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 55: @@ -4518,7 +4528,7 @@ yyreduce: // Ignore attribute specifiers for now. (yyval.u.integer) = (yyvsp[0].u.integer); } -#line 4522 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4532 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 56: @@ -4526,7 +4536,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer); } -#line 4530 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4540 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 57: @@ -4534,7 +4544,7 @@ yyreduce: { (yyval.u.integer) = (yyvsp[0].u.integer); } -#line 4538 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4548 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 63: @@ -4549,7 +4559,7 @@ yyreduce: } push_storage_class((yyvsp[-1].u.integer)); } -#line 4553 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4563 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 64: @@ -4557,7 +4567,7 @@ yyreduce: { pop_storage_class(); } -#line 4561 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4571 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 65: @@ -4570,23 +4580,36 @@ yyreduce: current_scope->add_declaration((yyvsp[-1].u.decl), global_scope, current_lexer, (yylsp[-1])); } -#line 4574 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4584 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 66: #line 932 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - if ((yyvsp[-1].u.instance) != (CPPInstance *)NULL) { - (yyvsp[-1].u.instance)->_storage_class |= (current_storage_class | (yyvsp[-2].u.integer)); - current_scope->add_declaration((yyvsp[-1].u.instance), global_scope, current_lexer, (yylsp[-1])); - (yyvsp[-1].u.instance)->set_initializer((yyvsp[0].u.expr)); + if ((yyvsp[0].u.instance) != (CPPInstance *)NULL) { + // Push the scope so that the initializers can make use of things defined + // in the class body. + push_scope((yyvsp[0].u.instance)->get_scope(current_scope, global_scope)); + (yyvsp[0].u.instance)->_storage_class |= (current_storage_class | (yyvsp[-1].u.integer)); } } -#line 4586 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4597 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 67: -#line 940 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 941 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + if ((yyvsp[-2].u.instance) != (CPPInstance *)NULL) { + pop_scope(); + current_scope->add_declaration((yyvsp[-2].u.instance), global_scope, current_lexer, (yylsp[-2])); + (yyvsp[-2].u.instance)->set_initializer((yyvsp[0].u.expr)); + } +} +#line 4609 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 68: +#line 949 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if ((yyvsp[-1].u.instance) != (CPPInstance *)NULL) { (yyvsp[-1].u.instance)->_storage_class |= (current_storage_class | (yyvsp[-2].u.integer)); @@ -4594,11 +4617,11 @@ yyreduce: (yyvsp[-1].u.instance)->set_initializer((yyvsp[0].u.expr)); } } -#line 4598 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4621 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 69: -#line 956 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 70: +#line 965 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if (current_storage_class & CPPInstance::SC_const) { (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); @@ -4609,11 +4632,11 @@ yyreduce: inst->set_initializer((yyvsp[0].u.expr)); current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-1])); } -#line 4613 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4636 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 70: -#line 967 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 71: +#line 976 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if (current_storage_class & CPPInstance::SC_const) { (yyvsp[-3].u.inst_ident)->add_modifier(IIT_const); @@ -4624,11 +4647,11 @@ yyreduce: inst->set_initializer((yyvsp[-2].u.expr)); current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-3])); } -#line 4628 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4651 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 71: -#line 982 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 72: +#line 991 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // We don't need to push/pop type, because we can't nest // multiple_var_declarations. @@ -4639,19 +4662,19 @@ yyreduce: } push_storage_class((yyvsp[-1].u.integer)); } -#line 4643 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 72: -#line 993 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - pop_storage_class(); -} -#line 4651 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4666 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 73: -#line 997 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1002 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + pop_storage_class(); +} +#line 4674 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 74: +#line 1006 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if ((yyvsp[-1].u.instance) != (CPPDeclaration *)NULL) { CPPInstance *inst = (yyvsp[-1].u.instance)->as_instance(); @@ -4663,11 +4686,11 @@ yyreduce: } } } -#line 4667 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4690 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 74: -#line 1012 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 75: +#line 1021 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if (current_storage_class & CPPInstance::SC_const) { (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); @@ -4676,11 +4699,11 @@ yyreduce: CPPTypedefType *typedef_type = new CPPTypedefType(target_type, (yyvsp[-1].u.inst_ident), current_scope, (yylsp[-1]).file); current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[-1])); } -#line 4680 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4703 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 75: -#line 1021 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 76: +#line 1030 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if (current_storage_class & CPPInstance::SC_const) { (yyvsp[-3].u.inst_ident)->add_modifier(IIT_const); @@ -4689,19 +4712,19 @@ yyreduce: CPPTypedefType *typedef_type = new CPPTypedefType(target_type, (yyvsp[-3].u.inst_ident), current_scope, (yylsp[-3]).file); current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[-3])); } -#line 4693 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 76: -#line 1035 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); -} -#line 4701 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4716 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 77: -#line 1039 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1044 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); +} +#line 4724 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 78: +#line 1048 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type; if ((yyvsp[-5].u.identifier)->get_simple_name() == current_scope->get_simple_name() || @@ -4721,19 +4744,19 @@ yyreduce: (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-5]).file); } -#line 4725 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 78: -#line 1059 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); -} -#line 4733 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4748 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 79: -#line 1063 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1068 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); +} +#line 4756 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 80: +#line 1072 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); CPPType *type; @@ -4751,19 +4774,19 @@ yyreduce: (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-5]).file); } -#line 4755 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 80: -#line 1086 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); -} -#line 4763 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4778 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 81: -#line 1090 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1095 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); +} +#line 4786 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 82: +#line 1099 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); if ((yyvsp[-5].u.identifier)->is_scoped()) { @@ -4782,19 +4805,19 @@ yyreduce: (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-5]).file); } } -#line 4786 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 82: -#line 1116 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - push_scope((yyvsp[-2].u.inst_ident)->get_scope(current_scope, global_scope)); -} -#line 4794 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4809 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 83: -#line 1120 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1125 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + push_scope((yyvsp[-2].u.inst_ident)->get_scope(current_scope, global_scope)); +} +#line 4817 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 84: +#line 1129 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); CPPType *type = (yyvsp[-10].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); @@ -4808,19 +4831,19 @@ yyreduce: ii->add_func_modifier((yyvsp[-3].u.param_list), (yyvsp[-1].u.integer)); (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-10]).file); } -#line 4812 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 84: -#line 1134 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - push_scope((yyvsp[-2].u.inst_ident)->get_scope(current_scope, global_scope)); -} -#line 4820 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4835 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 85: -#line 1138 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1143 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + push_scope((yyvsp[-2].u.inst_ident)->get_scope(current_scope, global_scope)); +} +#line 4843 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 86: +#line 1147 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); CPPType *type = (yyvsp[-11].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); @@ -4834,21 +4857,21 @@ yyreduce: ii->add_func_modifier((yyvsp[-3].u.param_list), (yyvsp[-1].u.integer)); (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-11]).file); } -#line 4838 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4861 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 86: -#line 1154 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 87: +#line 1163 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if ((yyvsp[-3].u.identifier) != NULL) { push_scope((yyvsp[-3].u.identifier)->get_scope(current_scope, global_scope)); } } -#line 4848 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4871 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 87: -#line 1160 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 88: +#line 1169 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if ((yyvsp[-7].u.identifier) != NULL) { pop_scope(); @@ -4873,21 +4896,21 @@ yyreduce: (yyval.u.instance) = CPPInstance::make_typecast_function (new CPPInstance((yyvsp[-6].u.type), (yyvsp[-5].u.inst_ident), 0, (yylsp[-5]).file), ident, (yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); } -#line 4877 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4900 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 88: -#line 1185 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 89: +#line 1194 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if ((yyvsp[-4].u.identifier) != NULL) { push_scope((yyvsp[-4].u.identifier)->get_scope(current_scope, global_scope)); } } -#line 4887 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4910 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 89: -#line 1191 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 90: +#line 1200 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { if ((yyvsp[-8].u.identifier) != NULL) { pop_scope(); @@ -4903,11 +4926,11 @@ yyreduce: (yyval.u.instance) = CPPInstance::make_typecast_function (new CPPInstance((yyvsp[-6].u.type), (yyvsp[-5].u.inst_ident), 0, (yylsp[-5]).file), ident, (yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); } -#line 4907 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4930 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 90: -#line 1211 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 91: +#line 1220 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPDeclaration *decl = (yyvsp[0].u.identifier)->find_symbol(current_scope, global_scope, current_lexer); @@ -4917,586 +4940,574 @@ yyreduce: (yyval.u.instance) = (CPPInstance *)NULL; } } -#line 4921 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 91: -#line 1224 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.integer) = 0; -} -#line 4929 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4944 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 92: -#line 1228 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1233 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_const_method; + (yyval.u.integer) = 0; } -#line 4937 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4952 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 93: -#line 1232 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1237 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_volatile_method; + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_const_method; } -#line 4945 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4960 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 94: -#line 1236 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1241 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_noexcept; + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_volatile_method; } -#line 4953 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4968 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 95: -#line 1249 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1245 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_final; + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_noexcept; } -#line 4961 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4976 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 96: -#line 1253 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1258 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_override; + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_final; } -#line 4969 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4984 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 97: -#line 1257 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1262 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_lvalue_method; + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_override; } -#line 4977 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 4992 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 98: -#line 1261 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1266 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_rvalue_method; + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_lvalue_method; } -#line 4985 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5000 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 99: -#line 1265 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1270 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPFunctionType::F_rvalue_method; +} +#line 5008 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 100: +#line 1274 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // Used for lambdas, currently ignored. (yyval.u.integer) = (yyvsp[-1].u.integer); } -#line 4994 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5017 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 100: -#line 1270 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 101: +#line 1279 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // Used for lambdas in C++17, currently ignored. (yyval.u.integer) = (yyvsp[-1].u.integer); } -#line 5003 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 101: -#line 1275 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.integer) = (yyvsp[-3].u.integer); -} -#line 5011 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5026 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 102: -#line 1279 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.integer) = (yyvsp[-4].u.integer); -} -#line 5019 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 103: -#line 1283 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.integer) = (yyvsp[-5].u.integer); -} -#line 5027 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 104: -#line 1287 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1284 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.integer) = (yyvsp[-3].u.integer); } -#line 5035 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5034 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 103: +#line 1288 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.integer) = (yyvsp[-4].u.integer); +} +#line 5042 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 104: +#line 1292 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.integer) = (yyvsp[-5].u.integer); +} +#line 5050 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 105: -#line 1294 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1296 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "!"; + (yyval.u.integer) = (yyvsp[-3].u.integer); } -#line 5043 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5058 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 106: -#line 1298 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1303 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "~"; + (yyval.str) = "!"; } -#line 5051 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5066 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 107: -#line 1302 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1307 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "*"; + (yyval.str) = "~"; } -#line 5059 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5074 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 108: -#line 1306 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1311 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "/"; + (yyval.str) = "*"; } -#line 5067 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5082 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 109: -#line 1310 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1315 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "%"; + (yyval.str) = "/"; } -#line 5075 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5090 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 110: -#line 1314 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1319 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "+"; + (yyval.str) = "%"; } -#line 5083 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5098 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 111: -#line 1318 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1323 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "-"; + (yyval.str) = "+"; } -#line 5091 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5106 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 112: -#line 1322 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1327 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "|"; + (yyval.str) = "-"; } -#line 5099 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5114 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 113: -#line 1326 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1331 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "&"; + (yyval.str) = "|"; } -#line 5107 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5122 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 114: -#line 1330 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1335 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "^"; + (yyval.str) = "&"; } -#line 5115 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5130 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 115: -#line 1334 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1339 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "||"; + (yyval.str) = "^"; } -#line 5123 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5138 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 116: -#line 1338 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1343 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "&&"; + (yyval.str) = "||"; } -#line 5131 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5146 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 117: -#line 1342 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1347 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "=="; + (yyval.str) = "&&"; } -#line 5139 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5154 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 118: -#line 1346 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1351 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "!="; + (yyval.str) = "=="; } -#line 5147 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5162 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 119: -#line 1350 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1355 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "<="; + (yyval.str) = "!="; } -#line 5155 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5170 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 120: -#line 1354 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1359 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = ">="; + (yyval.str) = "<="; } -#line 5163 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5178 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 121: -#line 1358 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1363 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "<"; + (yyval.str) = ">="; } -#line 5171 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5186 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 122: -#line 1362 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1367 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = ">"; + (yyval.str) = "<"; } -#line 5179 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5194 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 123: -#line 1366 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1371 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "<<"; + (yyval.str) = ">"; } -#line 5187 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5202 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 124: -#line 1370 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1375 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = ">>"; + (yyval.str) = "<<"; } -#line 5195 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5210 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 125: -#line 1374 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1379 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "="; + (yyval.str) = ">>"; } -#line 5203 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5218 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 126: -#line 1378 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1383 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = ","; + (yyval.str) = "="; } -#line 5211 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5226 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 127: -#line 1382 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1387 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "++"; + (yyval.str) = ","; } -#line 5219 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5234 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 128: -#line 1386 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1391 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "--"; + (yyval.str) = "++"; } -#line 5227 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5242 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 129: -#line 1390 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1395 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "*="; + (yyval.str) = "--"; } -#line 5235 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5250 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 130: -#line 1394 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1399 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "/="; + (yyval.str) = "*="; } -#line 5243 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5258 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 131: -#line 1398 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1403 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "%="; + (yyval.str) = "/="; } -#line 5251 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5266 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 132: -#line 1402 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1407 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "+="; + (yyval.str) = "%="; } -#line 5259 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5274 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 133: -#line 1406 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1411 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "-="; + (yyval.str) = "+="; } -#line 5267 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5282 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 134: -#line 1410 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1415 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "|="; + (yyval.str) = "-="; } -#line 5275 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5290 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 135: -#line 1414 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1419 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "&="; + (yyval.str) = "|="; } -#line 5283 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5298 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 136: -#line 1418 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1423 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "^="; + (yyval.str) = "&="; } -#line 5291 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5306 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 137: -#line 1422 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1427 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "<<="; + (yyval.str) = "^="; } -#line 5299 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5314 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 138: -#line 1426 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1431 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = ">>="; + (yyval.str) = "<<="; } -#line 5307 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5322 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 139: -#line 1430 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1435 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "->"; + (yyval.str) = ">>="; } -#line 5315 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5330 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 140: -#line 1434 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1439 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "[]"; + (yyval.str) = "->"; } -#line 5323 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5338 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 141: -#line 1438 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1443 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "()"; + (yyval.str) = "[]"; } -#line 5331 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5346 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 142: -#line 1442 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1447 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.str) = "new"; + (yyval.str) = "()"; } -#line 5339 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5354 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 143: -#line 1446 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1451 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.str) = "new"; +} +#line 5362 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 144: +#line 1455 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.str) = "delete"; } -#line 5347 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 148: -#line 1460 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - push_scope(new CPPTemplateScope(current_scope)); -} -#line 5355 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5370 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 149: -#line 1464 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1469 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + push_scope(new CPPTemplateScope(current_scope)); +} +#line 5378 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 150: +#line 1473 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); } -#line 5363 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 154: -#line 1478 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - CPPTemplateScope *ts = current_scope->as_template_scope(); - assert(ts != NULL); - ts->add_template_parameter((yyvsp[0].u.decl)); -} -#line 5373 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5386 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 155: -#line 1484 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1487 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPTemplateScope *ts = current_scope->as_template_scope(); assert(ts != NULL); ts->add_template_parameter((yyvsp[0].u.decl)); } -#line 5383 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5396 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 158: -#line 1498 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 156: +#line 1493 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((CPPIdentifier *)NULL)); + CPPTemplateScope *ts = current_scope->as_template_scope(); + assert(ts != NULL); + ts->add_template_parameter((yyvsp[0].u.decl)); } -#line 5391 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5406 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 159: -#line 1502 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1507 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[0].u.identifier))); + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((CPPIdentifier *)NULL)); } -#line 5399 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5414 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 160: -#line 1506 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1511 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[-2].u.identifier), (yyvsp[0].u.type))); + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[0].u.identifier))); } -#line 5407 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5422 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 161: -#line 1510 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1515 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[-2].u.identifier), (yyvsp[0].u.type))); +} +#line 5430 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 162: +#line 1519 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPClassTemplateParameter *ctp = new CPPClassTemplateParameter((CPPIdentifier *)NULL); ctp->_packed = true; (yyval.u.decl) = CPPType::new_type(ctp); } -#line 5417 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5440 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 162: -#line 1516 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 163: +#line 1525 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPClassTemplateParameter *ctp = new CPPClassTemplateParameter((yyvsp[0].u.identifier)); ctp->_packed = true; (yyval.u.decl) = CPPType::new_type(ctp); } -#line 5427 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5450 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 163: -#line 1522 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 164: +#line 1531 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPInstance *inst = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); inst->set_initializer((yyvsp[0].u.expr)); (yyval.u.decl) = inst; } -#line 5437 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5460 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 164: -#line 1528 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 165: +#line 1537 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); CPPInstance *inst = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); inst->set_initializer((yyvsp[0].u.expr)); (yyval.u.decl) = inst; } -#line 5448 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 165: -#line 1535 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - CPPInstance *inst = new CPPInstance((yyvsp[-1].u.type), (yyvsp[0].u.inst_ident), 0, (yylsp[0]).file); - (yyval.u.decl) = inst; -} -#line 5457 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5471 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 166: -#line 1540 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1544 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); CPPInstance *inst = new CPPInstance((yyvsp[-1].u.type), (yyvsp[0].u.inst_ident), 0, (yylsp[0]).file); (yyval.u.decl) = inst; } -#line 5467 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5480 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 167: #line 1549 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); + (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance((yyvsp[-1].u.type), (yyvsp[0].u.inst_ident), 0, (yylsp[0]).file); + (yyval.u.decl) = inst; } -#line 5475 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5490 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 168: -#line 1553 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1558 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); +} +#line 5498 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 169: +#line 1562 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { yywarning("Not a type: " + (yyvsp[0].u.identifier)->get_fully_scoped_name(), (yylsp[0])); (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_unknown)); } -#line 5484 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 169: -#line 1558 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); - if ((yyval.u.type) == NULL) { - yyerror(string("internal error resolving type ") + (yyvsp[0].u.identifier)->get_fully_scoped_name(), (yylsp[0])); - } - assert((yyval.u.type) != NULL); -} -#line 5496 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5507 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 170: -#line 1566 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1567 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if ((yyval.u.type) == NULL) { @@ -5504,19 +5515,31 @@ yyreduce: } assert((yyval.u.type) != NULL); } -#line 5508 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5519 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 171: -#line 1578 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1575 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + if ((yyval.u.type) == NULL) { + yyerror(string("internal error resolving type ") + (yyvsp[0].u.identifier)->get_fully_scoped_name(), (yylsp[0])); + } + assert((yyval.u.type) != NULL); } -#line 5516 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5531 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 172: -#line 1582 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1587 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); +} +#line 5539 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 173: +#line 1591 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // For an operator function. We implement this simply by building a // ficticious name for the function; in other respects it's just @@ -5530,11 +5553,11 @@ yyreduce: (yyval.u.inst_ident) = new CPPInstanceIdentifier(ident); } -#line 5534 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5557 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 173: -#line 1596 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 174: +#line 1605 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // A C++11 literal operator. if (!(yyvsp[-1].str).empty()) { @@ -5549,83 +5572,83 @@ yyreduce: (yyval.u.inst_ident) = new CPPInstanceIdentifier(ident); } -#line 5553 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5576 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 174: -#line 1611 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 175: +#line 1620 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } -#line 5562 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5585 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 175: -#line 1616 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 176: +#line 1625 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_volatile); } -#line 5571 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5594 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 176: -#line 1621 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 177: +#line 1630 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } -#line 5580 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5603 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 177: -#line 1626 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 178: +#line 1635 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } -#line 5589 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5612 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 178: -#line 1631 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 179: +#line 1640 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } -#line 5598 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5621 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 179: -#line 1636 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 180: +#line 1645 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); } -#line 5607 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5630 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 180: -#line 1641 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 181: +#line 1650 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); } -#line 5616 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5639 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 181: -#line 1646 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 182: +#line 1655 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); } -#line 5625 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5648 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 182: -#line 1651 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 183: +#line 1660 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // Create a scope for this function (in case it is a function) CPPScope *scope = new CPPScope((yyvsp[-1].u.inst_ident)->get_scope(current_scope, global_scope), @@ -5638,11 +5661,11 @@ yyreduce: push_scope(scope); } -#line 5642 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5665 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 183: -#line 1664 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 184: +#line 1673 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); @@ -5656,11 +5679,11 @@ yyreduce: (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); } } -#line 5660 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5683 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 184: -#line 1682 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 185: +#line 1691 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // This is handled a bit awkwardly right now. Ideally it'd be wrapped // up in the instance_identifier rule, but then more needs to happen in @@ -5670,894 +5693,894 @@ yyreduce: } (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); } -#line 5674 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5697 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 185: -#line 1692 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 186: +#line 1701 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // Bitfield definition. (yyvsp[-2].u.inst_ident)->_bit_width = (yyvsp[0].u.integer); (yyval.u.inst_ident) = (yyvsp[-2].u.inst_ident); } -#line 5684 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 186: -#line 1702 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = NULL; -} -#line 5692 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5707 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 187: -#line 1706 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1711 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); + (yyval.u.type) = NULL; } -#line 5700 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5715 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 188: -#line 1710 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1715 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); } -#line 5709 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5723 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 189: #line 1719 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.param_list) = new CPPParameterList; + (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); + (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); } -#line 5717 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5732 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 190: -#line 1723 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1728 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.param_list) = new CPPParameterList; - (yyval.u.param_list)->_includes_ellipsis = true; } -#line 5726 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5740 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 191: -#line 1728 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1732 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.param_list) = (yyvsp[0].u.param_list); + (yyval.u.param_list) = new CPPParameterList; + (yyval.u.param_list)->_includes_ellipsis = true; } -#line 5734 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5749 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 192: -#line 1732 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.param_list) = (yyvsp[-2].u.param_list); - (yyval.u.param_list)->_includes_ellipsis = true; -} -#line 5743 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 193: #line 1737 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.param_list) = (yyvsp[-1].u.param_list); - (yyval.u.param_list)->_includes_ellipsis = true; -} -#line 5752 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 194: -#line 1745 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.param_list) = new CPPParameterList; - (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); -} -#line 5761 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 195: -#line 1750 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.param_list) = (yyvsp[-2].u.param_list); - (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); -} -#line 5770 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 196: -#line 1758 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.param_list) = new CPPParameterList; -} -#line 5778 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 197: -#line 1762 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.param_list) = new CPPParameterList; - (yyval.u.param_list)->_includes_ellipsis = true; -} -#line 5787 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 198: -#line 1767 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { (yyval.u.param_list) = (yyvsp[0].u.param_list); } -#line 5795 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5757 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 199: -#line 1771 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 193: +#line 1741 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.param_list) = (yyvsp[-2].u.param_list); (yyval.u.param_list)->_includes_ellipsis = true; } -#line 5804 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5766 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 200: -#line 1776 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 194: +#line 1746 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.param_list) = (yyvsp[-1].u.param_list); (yyval.u.param_list)->_includes_ellipsis = true; } -#line 5813 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5775 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 201: -#line 1784 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 195: +#line 1754 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.param_list) = new CPPParameterList; (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); } -#line 5822 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5784 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 202: -#line 1789 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 196: +#line 1759 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.param_list) = (yyvsp[-2].u.param_list); (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); } -#line 5831 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5793 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 197: +#line 1767 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.param_list) = new CPPParameterList; +} +#line 5801 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 198: +#line 1771 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.param_list) = new CPPParameterList; + (yyval.u.param_list)->_includes_ellipsis = true; +} +#line 5810 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 199: +#line 1776 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.param_list) = (yyvsp[0].u.param_list); +} +#line 5818 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 200: +#line 1780 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.param_list) = (yyvsp[-2].u.param_list); + (yyval.u.param_list)->_includes_ellipsis = true; +} +#line 5827 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 201: +#line 1785 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.param_list) = (yyvsp[-1].u.param_list); + (yyval.u.param_list)->_includes_ellipsis = true; +} +#line 5836 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 202: +#line 1793 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.param_list) = new CPPParameterList; + (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); +} +#line 5845 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 203: -#line 1797 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1798 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (CPPExpression *)NULL; + (yyval.u.param_list) = (yyvsp[-2].u.param_list); + (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); } -#line 5839 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5854 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 204: -#line 1801 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1806 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (CPPExpression *)NULL; } -#line 5847 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5862 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 205: -#line 1808 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = (CPPExpression *)NULL; -} -#line 5855 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 206: -#line 1812 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1810 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 5863 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5870 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 206: +#line 1817 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = (CPPExpression *)NULL; +} +#line 5878 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 207: -#line 1819 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1821 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (CPPExpression *)NULL; + (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 5871 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5886 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 208: -#line 1823 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1828 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (CPPExpression *)NULL; } -#line 5879 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5894 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 209: -#line 1827 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1832 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (CPPExpression *)NULL; } -#line 5887 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5902 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 210: -#line 1831 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1836 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::get_default()); + (yyval.u.expr) = (CPPExpression *)NULL; } -#line 5895 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5910 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 211: -#line 1835 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::get_delete()); -} -#line 5903 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 212: -#line 1842 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = (CPPExpression *)NULL; -} -#line 5911 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 213: -#line 1846 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = (CPPExpression *)NULL; -} -#line 5919 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 214: -#line 1850 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = (yyvsp[-1].u.expr); -} -#line 5927 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 215: -#line 1854 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1840 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = new CPPExpression(CPPExpression::get_default()); } -#line 5935 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5918 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 216: -#line 1858 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 212: +#line 1844 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = new CPPExpression(CPPExpression::get_delete()); } -#line 5943 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5926 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 217: -#line 1862 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 213: +#line 1851 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (CPPExpression *)NULL; } -#line 5951 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5934 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 221: -#line 1875 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 214: +#line 1855 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { + (yyval.u.expr) = (CPPExpression *)NULL; +} +#line 5942 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 215: +#line 1859 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = (yyvsp[-1].u.expr); +} +#line 5950 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 216: +#line 1863 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::get_default()); } #line 5958 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 225: + case 217: +#line 1867 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::get_delete()); +} +#line 5966 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 218: +#line 1871 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = (CPPExpression *)NULL; +} +#line 5974 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 222: #line 1884 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); } -#line 5967 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5981 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 226: -#line 1889 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1893 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); } -#line 5977 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 5990 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 227: -#line 1895 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1898 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); - (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-2]).file); + (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); } -#line 5987 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6000 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 228: -#line 1901 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); -} -#line 5996 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 229: -#line 1906 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); - (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); -} -#line 6006 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 230: -#line 1912 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1904 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-2]).file); (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); } -#line 6016 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6010 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 229: +#line 1910 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); + (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); +} +#line 6019 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 230: +#line 1915 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); + (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); + (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); +} +#line 6029 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 231: -#line 1918 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1921 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.instance) = (yyvsp[0].u.instance); + (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); + (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-2]).file); + (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); } -#line 6024 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6039 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 232: -#line 1922 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1927 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.instance) = (yyvsp[0].u.instance); } -#line 6032 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6047 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 233: -#line 1933 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1931 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.instance) = (yyvsp[0].u.instance); } -#line 6040 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6055 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 234: -#line 1937 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1942 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.instance) = (yyvsp[0].u.instance); +} +#line 6063 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 235: +#line 1946 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_parameter)); (yyval.u.instance) = new CPPInstance(type, "expr"); (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); } -#line 6051 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 235: -#line 1947 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); -} -#line 6059 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6074 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 236: -#line 1951 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1956 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); } -#line 6067 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6082 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 237: -#line 1955 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1960 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_const); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); } -#line 6076 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6090 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 238: -#line 1960 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1964 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_volatile); + (yyval.u.inst_ident)->add_modifier(IIT_const); } -#line 6085 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6099 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 239: -#line 1965 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1969 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_pointer); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); } -#line 6094 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6108 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 240: -#line 1970 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1974 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_reference); + (yyval.u.inst_ident)->add_modifier(IIT_pointer); } -#line 6103 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6117 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 241: -#line 1975 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1979 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); + (yyval.u.inst_ident)->add_modifier(IIT_reference); } -#line 6112 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6126 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 242: -#line 1980 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1984 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); + (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } -#line 6121 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6135 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 243: -#line 1985 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1989 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); } -#line 6130 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6144 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 244: -#line 1993 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 1994 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); + (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); } -#line 6138 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6153 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 245: -#line 1997 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2002 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); } -#line 6146 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6161 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 246: -#line 2001 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2006 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_const); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); } -#line 6155 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6169 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 247: -#line 2006 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2010 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_volatile); + (yyval.u.inst_ident)->add_modifier(IIT_const); } -#line 6164 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6178 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 248: -#line 2011 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2015 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_pointer); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); } -#line 6173 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6187 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 249: -#line 2016 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2020 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_reference); + (yyval.u.inst_ident)->add_modifier(IIT_pointer); } -#line 6182 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6196 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 250: -#line 2021 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2025 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); + (yyval.u.inst_ident)->add_modifier(IIT_reference); } -#line 6191 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6205 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 251: -#line 2026 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2030 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); + (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } -#line 6200 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6214 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 252: -#line 2031 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2035 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); } -#line 6209 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6223 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 253: -#line 2036 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2040 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_paren); - (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); } -#line 6219 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6232 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 254: -#line 2042 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_paren); -} -#line 6228 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 255: -#line 2050 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); - (yyval.u.inst_ident)->_packed = true; -} -#line 6237 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 256: -#line 2055 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); - (yyval.u.inst_ident)->_packed = true; -} -#line 6246 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 257: -#line 2060 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_const); -} -#line 6255 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 258: -#line 2065 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_volatile); -} -#line 6264 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 259: -#line 2070 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_pointer); -} -#line 6273 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 260: -#line 2075 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_reference); -} -#line 6282 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 261: -#line 2080 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); -} -#line 6291 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 262: -#line 2085 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); -} -#line 6300 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 263: -#line 2090 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); -} -#line 6309 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 264: -#line 2095 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2045 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); } -#line 6319 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6242 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 265: -#line 2101 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 255: +#line 2051 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); } -#line 6328 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6251 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 256: +#line 2059 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); + (yyval.u.inst_ident)->_packed = true; +} +#line 6260 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 257: +#line 2064 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident)->_packed = true; +} +#line 6269 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 258: +#line 2069 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_const); +} +#line 6278 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 259: +#line 2074 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); +} +#line 6287 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 260: +#line 2079 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_pointer); +} +#line 6296 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 261: +#line 2084 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_reference); +} +#line 6305 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 262: +#line 2089 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); +} +#line 6314 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 263: +#line 2094 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); +} +#line 6323 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 264: +#line 2099 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); +} +#line 6332 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 265: +#line 2104 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_paren); + (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); +} +#line 6342 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 266: -#line 2109 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2110 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); + (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_paren); } -#line 6336 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6351 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 267: -#line 2113 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2118 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); - (yyval.u.inst_ident)->_packed = true; } -#line 6345 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6359 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 268: -#line 2118 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2122 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); (yyval.u.inst_ident)->_packed = true; } -#line 6354 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6368 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 269: -#line 2123 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_const); -} -#line 6363 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 270: -#line 2128 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_volatile); -} -#line 6372 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 271: -#line 2133 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_pointer); -} -#line 6381 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 272: -#line 2138 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_reference); -} -#line 6390 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 273: -#line 2143 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); -} -#line 6399 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 274: -#line 2148 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); -} -#line 6408 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 275: -#line 2153 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); -} -#line 6417 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 276: -#line 2161 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); -} -#line 6425 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 277: -#line 2165 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); - (yyval.u.inst_ident)->_packed = true; -} -#line 6434 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 278: -#line 2170 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2127 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); (yyval.u.inst_ident)->_packed = true; } -#line 6443 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6377 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 279: -#line 2175 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 270: +#line 2132 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } -#line 6452 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6386 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 280: -#line 2180 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 271: +#line 2137 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_volatile); } -#line 6461 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6395 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 281: -#line 2185 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 272: +#line 2142 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } -#line 6470 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6404 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 282: -#line 2190 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 273: +#line 2147 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } -#line 6479 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6413 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 283: -#line 2195 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 274: +#line 2152 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); } -#line 6488 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6422 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 284: -#line 2200 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 275: +#line 2157 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); } -#line 6497 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6431 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 285: -#line 2205 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 276: +#line 2162 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); } -#line 6506 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6440 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 277: +#line 2170 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); +} +#line 6448 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 278: +#line 2174 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); + (yyval.u.inst_ident)->_packed = true; +} +#line 6457 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 279: +#line 2179 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident)->_packed = true; +} +#line 6466 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 280: +#line 2184 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_const); +} +#line 6475 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 281: +#line 2189 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_volatile); +} +#line 6484 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 282: +#line 2194 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_pointer); +} +#line 6493 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 283: +#line 2199 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_reference); +} +#line 6502 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 284: +#line 2204 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); +} +#line 6511 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 285: +#line 2209 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); +} +#line 6520 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 286: -#line 2210 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2214 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); +} +#line 6529 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 287: +#line 2219 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); (yyval.u.inst_ident)->add_modifier(IIT_paren); (yyval.u.inst_ident)->add_func_modifier((yyvsp[-3].u.param_list), (yyvsp[-1].u.integer), (yyvsp[0].u.type)); } -#line 6516 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6539 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 287: -#line 2216 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 288: +#line 2225 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-6].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); (yyval.u.inst_ident)->add_modifier(IIT_paren); (yyval.u.inst_ident)->add_func_modifier((yyvsp[-3].u.param_list), (yyvsp[-1].u.integer), (yyvsp[0].u.type)); } -#line 6527 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6550 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 288: -#line 2223 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 289: +#line 2232 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-6].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); (yyval.u.inst_ident)->add_modifier(IIT_paren); (yyval.u.inst_ident)->add_func_modifier((yyvsp[-3].u.param_list), (yyvsp[-1].u.integer), (yyvsp[0].u.type)); } -#line 6538 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6561 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 289: -#line 2230 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 290: +#line 2239 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.inst_ident) = (yyvsp[-6].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_rvalue_reference); (yyval.u.inst_ident)->add_modifier(IIT_paren); (yyval.u.inst_ident)->add_func_modifier((yyvsp[-3].u.param_list), (yyvsp[-1].u.integer), (yyvsp[0].u.type)); } -#line 6549 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 290: -#line 2240 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); -} -#line 6557 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6572 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 291: -#line 2244 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2249 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); +} +#line 6580 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 292: +#line 2253 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if ((yyval.u.type) == NULL) { @@ -6565,43 +6588,43 @@ yyreduce: } assert((yyval.u.type) != NULL); } -#line 6569 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 292: -#line 2252 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); -} -#line 6577 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6592 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 293: -#line 2256 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2261 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.struct_type)); + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); } -#line 6585 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6600 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 294: -#line 2260 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2265 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = CPPType::new_type((yyvsp[0].u.struct_type)); } -#line 6593 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6608 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 295: -#line 2264 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2269 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.enum_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[0].u.struct_type)); } -#line 6601 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6616 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 296: -#line 2268 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2273 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type((yyvsp[0].u.enum_type)); +} +#line 6624 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 297: +#line 2277 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -6617,11 +6640,11 @@ yyreduce: (yyval.u.type) = et; } } -#line 6621 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6644 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 297: -#line 2284 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 298: +#line 2293 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[-2].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -6637,11 +6660,11 @@ yyreduce: (yyval.u.type) = et; } } -#line 6641 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6664 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 298: -#line 2300 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 299: +#line 2309 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[-1].u.expr)->determine_type(); if ((yyval.u.type) == (CPPType *)NULL) { @@ -6650,19 +6673,19 @@ yyreduce: yyerror("could not determine type of " + str.str(), (yylsp[-1])); } } -#line 6654 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 299: -#line 2309 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); -} -#line 6662 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6677 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 300: -#line 2313 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2318 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); +} +#line 6685 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 301: +#line 2322 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPEnumType *enum_type = (yyvsp[-1].u.type)->as_enum_type(); if (enum_type == NULL) { @@ -6672,19 +6695,19 @@ yyreduce: (yyval.u.type) = enum_type->get_underlying_type(); } } -#line 6676 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 301: -#line 2323 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); -} -#line 6684 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6699 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 302: -#line 2330 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2332 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); +} +#line 6707 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 303: +#line 2339 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if ((yyval.u.type) == NULL) { @@ -6692,19 +6715,19 @@ yyreduce: } assert((yyval.u.type) != NULL); } -#line 6696 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 303: -#line 2341 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.simple_type)); -} -#line 6704 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6719 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 304: -#line 2345 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2350 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.simple_type)); +} +#line 6727 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 305: +#line 2354 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.decl) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if ((yyval.u.decl) == NULL) { @@ -6712,43 +6735,43 @@ yyreduce: } assert((yyval.u.decl) != NULL); } -#line 6716 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 305: -#line 2353 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.decl) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); -} -#line 6724 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6739 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 306: -#line 2357 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2362 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.struct_type)); + (yyval.u.decl) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); } -#line 6732 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6747 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 307: -#line 2361 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2366 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[0].u.struct_type))); + (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.struct_type)); } -#line 6740 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6755 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 308: -#line 2365 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2370 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[0].u.enum_type))); + (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[0].u.struct_type))); } -#line 6748 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6763 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 309: -#line 2369 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2374 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[0].u.enum_type))); +} +#line 6771 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 310: +#line 2378 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -6764,11 +6787,11 @@ yyreduce: (yyval.u.decl) = et; } } -#line 6768 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6791 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 310: -#line 2385 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 311: +#line 2394 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[-2].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -6784,11 +6807,11 @@ yyreduce: (yyval.u.decl) = et; } } -#line 6788 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6811 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 311: -#line 2401 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 312: +#line 2410 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { yywarning(string("C++ does not permit forward declaration of untyped enum ") + (yyvsp[0].u.identifier)->get_fully_scoped_name(), (yylsp[-1])); @@ -6806,11 +6829,11 @@ yyreduce: (yyval.u.decl) = et; } } -#line 6810 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6833 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 312: -#line 2419 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 313: +#line 2428 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.decl) = (yyvsp[-1].u.expr)->determine_type(); if ((yyval.u.decl) == (CPPType *)NULL) { @@ -6819,19 +6842,19 @@ yyreduce: yyerror("could not determine type of " + str.str(), (yylsp[-1])); } } -#line 6823 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 313: -#line 2428 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.decl) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); -} -#line 6831 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6846 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 314: -#line 2432 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2437 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.decl) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); +} +#line 6854 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 315: +#line 2441 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPEnumType *enum_type = (yyvsp[-1].u.type)->as_enum_type(); if (enum_type == NULL) { @@ -6841,27 +6864,27 @@ yyreduce: (yyval.u.decl) = enum_type->get_underlying_type(); } } -#line 6845 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 315: -#line 2442 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.decl) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); -} -#line 6853 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6868 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 316: -#line 2449 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2451 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); + (yyval.u.decl) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); } -#line 6861 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6876 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 317: -#line 2453 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2458 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); +} +#line 6884 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 318: +#line 2462 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if ((yyval.u.type) == NULL) { @@ -6869,19 +6892,19 @@ yyreduce: } assert((yyval.u.type) != NULL); } -#line 6873 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 318: -#line 2461 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); -} -#line 6881 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6896 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 319: -#line 2465 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2470 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); +} +#line 6904 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 320: +#line 2474 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -6897,11 +6920,11 @@ yyreduce: (yyval.u.type) = et; } } -#line 6901 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6924 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 320: -#line 2481 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 321: +#line 2490 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { @@ -6917,11 +6940,11 @@ yyreduce: (yyval.u.type) = et; } } -#line 6921 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6944 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 321: -#line 2497 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 322: +#line 2506 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[-1].u.expr)->determine_type(); if ((yyval.u.type) == (CPPType *)NULL) { @@ -6930,11 +6953,11 @@ yyreduce: yyerror("could not determine type of " + str.str(), (yylsp[-1])); } } -#line 6934 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6957 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 322: -#line 2506 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 323: +#line 2515 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPEnumType *enum_type = (yyvsp[-1].u.type)->as_enum_type(); if (enum_type == NULL) { @@ -6944,71 +6967,71 @@ yyreduce: (yyval.u.type) = enum_type->get_underlying_type(); } } -#line 6948 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 323: -#line 2516 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); -} -#line 6956 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6971 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 324: -#line 2523 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2525 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.decl) = (yyvsp[0].u.decl); + (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_auto)); } -#line 6964 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6979 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 325: -#line 2527 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2532 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.decl) = (yyvsp[0].u.decl); +} +#line 6987 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 326: +#line 2536 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { yyerror(string("unknown type '") + (yyvsp[0].u.identifier)->get_fully_scoped_name() + "'", (yylsp[0])); (yyval.u.decl) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_unknown)); } -#line 6974 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 326: -#line 2535 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); -} -#line 6982 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 6997 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 327: -#line 2539 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); - (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); -} -#line 6991 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 328: #line 2544 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); } -#line 6999 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7005 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 329: + case 328: #line 2548 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); } -#line 7008 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7014 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 334: -#line 2563 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 329: +#line 2553 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); +} +#line 7022 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 330: +#line 2557 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); + (yyval.u.type) = (yyvsp[0].u.inst_ident)->unroll_type((yyvsp[-1].u.type)); +} +#line 7031 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 335: +#line 2572 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPVisibility starting_vis = ((yyvsp[-2].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; @@ -7022,22 +7045,22 @@ yyreduce: push_scope(new_scope); push_struct(st); } -#line 7026 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7049 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 335: -#line 2577 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 336: +#line 2586 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.struct_type) = current_struct; current_struct->_incomplete = false; pop_struct(); pop_scope(); } -#line 7037 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7060 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 336: -#line 2587 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 337: +#line 2596 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPVisibility starting_vis = ((yyvsp[-2].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; @@ -7057,253 +7080,253 @@ yyreduce: push_scope(new_scope); push_struct(st); } -#line 7061 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7084 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 337: -#line 2607 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 338: +#line 2616 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.struct_type) = current_struct; current_struct->_incomplete = false; pop_struct(); pop_scope(); } -#line 7072 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7095 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 339: -#line 2618 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 340: +#line 2627 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { current_struct->_final = true; } -#line 7080 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 344: -#line 2635 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - current_struct->append_derivation((yyvsp[0].u.type), V_unknown, false); -} -#line 7088 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7103 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 345: -#line 2639 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2644 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - current_struct->append_derivation((yyvsp[0].u.type), V_public, false); + current_struct->append_derivation((yyvsp[0].u.type), V_unknown, false); } -#line 7096 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7111 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 346: -#line 2643 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2648 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - current_struct->append_derivation((yyvsp[0].u.type), V_protected, false); + current_struct->append_derivation((yyvsp[0].u.type), V_public, false); } -#line 7104 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7119 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 347: -#line 2647 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2652 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - current_struct->append_derivation((yyvsp[0].u.type), V_private, false); + current_struct->append_derivation((yyvsp[0].u.type), V_protected, false); } -#line 7112 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7127 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 348: -#line 2651 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2656 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - current_struct->append_derivation((yyvsp[0].u.type), V_public, true); + current_struct->append_derivation((yyvsp[0].u.type), V_private, false); } -#line 7120 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7135 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 349: -#line 2655 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - current_struct->append_derivation((yyvsp[0].u.type), V_protected, true); -} -#line 7128 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 350: -#line 2659 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - current_struct->append_derivation((yyvsp[0].u.type), V_private, true); -} -#line 7136 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 351: -#line 2663 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2660 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { current_struct->append_derivation((yyvsp[0].u.type), V_public, true); } -#line 7144 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7143 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 352: -#line 2667 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 350: +#line 2664 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { current_struct->append_derivation((yyvsp[0].u.type), V_protected, true); } -#line 7152 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7151 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 353: -#line 2671 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 351: +#line 2668 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { current_struct->append_derivation((yyvsp[0].u.type), V_private, true); } -#line 7160 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7159 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 352: +#line 2672 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + current_struct->append_derivation((yyvsp[0].u.type), V_public, true); +} +#line 7167 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 353: +#line 2676 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + current_struct->append_derivation((yyvsp[0].u.type), V_protected, true); +} +#line 7175 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 354: -#line 2678 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2680 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + current_struct->append_derivation((yyvsp[0].u.type), V_private, true); +} +#line 7183 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 355: +#line 2687 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.enum_type) = current_enum; current_enum = NULL; } -#line 7169 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 355: -#line 2686 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - current_enum = new CPPEnumType((yyvsp[-2].u.extension_enum), NULL, (yyvsp[0].u.type), current_scope, NULL, (yylsp[-2]).file); -} -#line 7177 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7192 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 356: -#line 2690 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2695 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - current_enum = new CPPEnumType((yyvsp[0].u.extension_enum), NULL, current_scope, NULL, (yylsp[0]).file); + current_enum = new CPPEnumType((yyvsp[-2].u.extension_enum), NULL, (yyvsp[0].u.type), current_scope, NULL, (yylsp[-2]).file); } -#line 7185 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7200 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 357: -#line 2694 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2699 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + current_enum = new CPPEnumType((yyvsp[0].u.extension_enum), NULL, current_scope, NULL, (yylsp[0]).file); +} +#line 7208 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 358: +#line 2703 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPScope *new_scope = new CPPScope(current_scope, (yyvsp[-2].u.identifier)->_names.back(), V_public); current_enum = new CPPEnumType((yyvsp[-3].u.extension_enum), (yyvsp[-2].u.identifier), (yyvsp[0].u.type), current_scope, new_scope, (yylsp[-3]).file); } -#line 7194 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7217 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 358: -#line 2699 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 359: +#line 2708 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPScope *new_scope = new CPPScope(current_scope, (yyvsp[0].u.identifier)->_names.back(), V_public); current_enum = new CPPEnumType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, new_scope, (yylsp[-1]).file); } -#line 7203 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 359: -#line 2707 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); -} -#line 7211 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7226 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 360: -#line 2711 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2716 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); +} +#line 7234 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 361: +#line 2720 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); } -#line 7219 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7242 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 362: -#line 2719 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 363: +#line 2728 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { assert(current_enum != NULL); current_enum->add_element((yyvsp[-1].u.identifier)->get_simple_name(), NULL, current_lexer, (yylsp[-1])); } -#line 7228 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7251 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 363: -#line 2724 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 364: +#line 2733 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { assert(current_enum != NULL); current_enum->add_element((yyvsp[-3].u.identifier)->get_simple_name(), (yyvsp[-1].u.expr), current_lexer, (yylsp[-3])); } -#line 7237 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7260 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 365: -#line 2732 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 366: +#line 2741 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { assert(current_enum != NULL); current_enum->add_element((yyvsp[0].u.identifier)->get_simple_name(), NULL, current_lexer, (yylsp[0])); } -#line 7246 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7269 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 366: -#line 2737 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 367: +#line 2746 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { assert(current_enum != NULL); current_enum->add_element((yyvsp[-2].u.identifier)->get_simple_name(), (yyvsp[0].u.expr), current_lexer, (yylsp[-2])); } -#line 7255 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 367: -#line 2745 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.extension_enum) = CPPExtensionType::T_enum; -} -#line 7263 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7278 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 368: -#line 2749 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2754 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.extension_enum) = CPPExtensionType::T_enum_class; + (yyval.u.extension_enum) = CPPExtensionType::T_enum; } -#line 7271 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7286 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 369: -#line 2753 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2758 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.extension_enum) = CPPExtensionType::T_enum_struct; + (yyval.u.extension_enum) = CPPExtensionType::T_enum_class; } -#line 7279 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7294 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 370: -#line 2760 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2762 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.extension_enum) = CPPExtensionType::T_class; + (yyval.u.extension_enum) = CPPExtensionType::T_enum_struct; } -#line 7287 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7302 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 371: -#line 2764 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2769 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.extension_enum) = CPPExtensionType::T_struct; + (yyval.u.extension_enum) = CPPExtensionType::T_class; } -#line 7295 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7310 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 372: -#line 2768 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2773 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.extension_enum) = CPPExtensionType::T_union; + (yyval.u.extension_enum) = CPPExtensionType::T_struct; } -#line 7303 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7318 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 373: -#line 2775 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2777 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.extension_enum) = CPPExtensionType::T_union; +} +#line 7326 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 374: +#line 2784 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPScope *scope = (yyvsp[-1].u.identifier)->find_scope(current_scope, global_scope, current_lexer); if (scope == NULL) { @@ -7321,19 +7344,19 @@ yyreduce: current_scope->define_namespace(nspace); push_scope(scope); } -#line 7325 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 374: -#line 2793 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - pop_scope(); -} -#line 7333 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7348 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 375: -#line 2797 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2802 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + pop_scope(); +} +#line 7356 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 376: +#line 2806 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPScope *scope = (yyvsp[-1].u.identifier)->find_scope(current_scope, global_scope, current_lexer); if (scope == NULL) { @@ -7352,143 +7375,143 @@ yyreduce: current_scope->define_namespace(nspace); push_scope(scope); } -#line 7356 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7379 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 376: -#line 2816 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 377: +#line 2825 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { pop_scope(); } -#line 7364 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7387 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 379: -#line 2825 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 380: +#line 2834 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPUsing *using_decl = new CPPUsing((yyvsp[-1].u.identifier), false, (yylsp[-2]).file); current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[-2])); current_scope->add_using(using_decl, global_scope, current_lexer); } -#line 7374 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7397 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 380: -#line 2831 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 381: +#line 2840 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // This is really just an alternative way to declare a typedef. CPPTypedefType *typedef_type = new CPPTypedefType((yyvsp[-1].u.type), (yyvsp[-3].u.identifier), current_scope); typedef_type->_using = true; current_scope->add_declaration(CPPType::new_type(typedef_type), global_scope, current_lexer, (yylsp[-4])); } -#line 7385 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7408 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 381: -#line 2838 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 382: +#line 2847 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPUsing *using_decl = new CPPUsing((yyvsp[-1].u.identifier), true, (yylsp[-3]).file); current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[-3])); current_scope->add_using(using_decl, global_scope, current_lexer); } -#line 7395 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 385: -#line 2853 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_bool); -} -#line 7403 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7418 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 386: -#line 2857 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2862 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_bool); } -#line 7411 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7426 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 387: -#line 2861 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2866 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_wchar_t); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char); } -#line 7419 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7434 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 388: -#line 2865 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2870 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char16_t); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_wchar_t); } -#line 7427 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7442 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 389: -#line 2869 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2874 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char32_t); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char16_t); } -#line 7435 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7450 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 390: -#line 2873 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2878 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char32_t); +} +#line 7458 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 391: +#line 2882 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_short); } -#line 7444 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7467 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 391: -#line 2878 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 392: +#line 2887 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_long); } -#line 7453 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7476 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 392: -#line 2883 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 393: +#line 2892 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_unsigned); } -#line 7462 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7485 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 393: -#line 2888 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 394: +#line 2897 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_signed); } -#line 7471 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 394: -#line 2893 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int); -} -#line 7479 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7494 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 395: -#line 2897 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2902 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int); +} +#line 7502 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 396: +#line 2906 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = (yyvsp[0].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_short; } -#line 7488 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7511 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 396: -#line 2902 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 397: +#line 2911 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = (yyvsp[0].u.simple_type); if ((yyval.u.simple_type)->_flags & CPPSimpleType::F_long) { @@ -7497,189 +7520,189 @@ yyreduce: (yyval.u.simple_type)->_flags |= CPPSimpleType::F_long; } } -#line 7501 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7524 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 397: -#line 2911 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 398: +#line 2920 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = (yyvsp[0].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_unsigned; } -#line 7510 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7533 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 398: -#line 2916 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 399: +#line 2925 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = (yyvsp[0].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_signed; } -#line 7519 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 399: -#line 2924 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float); -} -#line 7527 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7542 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 400: -#line 2928 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2933 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double); + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float); } -#line 7535 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7550 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 401: -#line 2932 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 2937 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double); +} +#line 7558 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 402: +#line 2941 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double, CPPSimpleType::F_long); } -#line 7544 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 402: -#line 2940 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_void); -} -#line 7552 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7567 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 403: #line 2949 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - current_lexer->_resolve_identifiers = false; -} -#line 7560 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 404: -#line 2953 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - current_lexer->_resolve_identifiers = true; -} -#line 7568 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 512: -#line 2997 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { + (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_void); } #line 7575 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 536: -#line 3006 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 404: +#line 2958 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (CPPExpression *)NULL; + current_lexer->_resolve_identifiers = false; } #line 7583 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 537: -#line 3010 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 405: +#line 2962 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + current_lexer->_resolve_identifiers = true; } #line 7591 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 538: -#line 3017 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 513: +#line 3006 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { +} +#line 7598 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 537: +#line 3015 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (CPPExpression *)NULL; } -#line 7599 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7606 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 538: +#line 3019 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = (yyvsp[0].u.expr); +} +#line 7614 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 539: -#line 3021 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3026 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (CPPExpression *)NULL; } -#line 7607 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7622 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 540: -#line 3028 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3030 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 7615 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7630 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 541: -#line 3032 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(',', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} -#line 7623 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 542: -#line 3039 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3037 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 7631 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7638 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 542: +#line 3041 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(',', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); +} +#line 7646 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 543: -#line 3043 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3048 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); + (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 7639 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7654 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 544: -#line 3047 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3052 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_static_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); } -#line 7647 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7662 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 545: -#line 3051 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3056 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_dynamic_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_static_cast)); } -#line 7655 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7670 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 546: -#line 3055 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3060 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_const_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_dynamic_cast)); } -#line 7663 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7678 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 547: -#line 3059 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3064 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_reinterpret_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_const_cast)); } -#line 7671 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7686 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 548: -#line 3063 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3068 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_reinterpret_cast)); } -#line 7679 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7694 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 549: -#line 3067 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3072 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); +} +#line 7702 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 550: +#line 3076 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPDeclaration *arg = (yyvsp[-1].u.identifier)->find_symbol(current_scope, global_scope, current_lexer); if (arg == (CPPDeclaration *)NULL) { @@ -7691,307 +7714,307 @@ yyreduce: (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func(arg->as_type())); } } -#line 7695 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 550: -#line 3079 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_ellipsis_func((yyvsp[-1].u.identifier))); -} -#line 7703 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7718 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 551: -#line 3083 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3088 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::alignof_func((yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_ellipsis_func((yyvsp[-1].u.identifier))); } -#line 7711 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7726 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 552: -#line 3087 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3092 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(CPPExpression::alignof_func((yyvsp[-1].u.type))); } -#line 7719 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7734 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 553: -#line 3091 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3096 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); } -#line 7727 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7742 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 554: -#line 3095 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3100 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); } -#line 7735 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7750 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 555: -#line 3099 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3104 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_PLUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); } -#line 7743 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7758 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 556: -#line 3103 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3108 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_PLUS, (yyvsp[0].u.expr)); } -#line 7751 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7766 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 557: -#line 3107 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3112 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[0].u.expr)); } -#line 7759 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7774 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 558: -#line 3111 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3116 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); } -#line 7767 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7782 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 559: -#line 3115 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3120 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7775 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7790 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 560: -#line 3119 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3124 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7783 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7798 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 561: -#line 3123 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3128 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7791 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7806 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 562: -#line 3127 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3132 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7799 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7814 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 563: -#line 3131 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3136 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7807 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7822 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 564: -#line 3135 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3140 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('^', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7815 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7830 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 565: -#line 3139 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3144 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('^', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7823 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7838 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 566: -#line 3143 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3148 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7831 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7846 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 567: -#line 3147 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3152 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7839 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7854 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 568: -#line 3151 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3156 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7847 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7862 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 569: -#line 3155 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3160 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7855 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7870 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 570: -#line 3159 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3164 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7863 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7878 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 571: -#line 3163 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3168 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7871 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7886 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 572: -#line 3167 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3172 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7879 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7894 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 573: -#line 3171 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3176 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7887 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7902 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 574: -#line 3175 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3180 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7895 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7910 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 575: -#line 3179 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3184 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7903 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7918 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 576: -#line 3183 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3188 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); } -#line 7911 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7926 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 577: -#line 3187 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3192 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); } -#line 7919 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7934 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 578: -#line 3191 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3196 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); } -#line 7927 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7942 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 579: -#line 3195 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3200 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7935 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7950 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 580: -#line 3199 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3204 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[-1].u.expr); + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 7943 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7958 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 581: -#line 3207 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3208 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[-1].u.expr); } -#line 7951 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7966 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 582: -#line 3211 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3216 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); + (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 7959 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7974 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 583: -#line 3215 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3220 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_static_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); } -#line 7967 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7982 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 584: -#line 3219 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3224 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_dynamic_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_static_cast)); } -#line 7975 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7990 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 585: -#line 3223 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3228 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_const_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_dynamic_cast)); } -#line 7983 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 7998 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 586: -#line 3227 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3232 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_reinterpret_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_const_cast)); } -#line 7991 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8006 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 587: -#line 3231 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3236 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_reinterpret_cast)); +} +#line 8014 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 588: +#line 3240 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // A constructor call. CPPType *type = (yyvsp[-3].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); @@ -8001,11 +8024,11 @@ yyreduce: assert(type != NULL); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8005 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8028 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 588: -#line 3241 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 589: +#line 3250 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // Aggregate initialization. CPPType *type = (yyvsp[-3].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); @@ -8015,143 +8038,143 @@ yyreduce: assert(type != NULL); (yyval.u.expr) = new CPPExpression(CPPExpression::aggregate_init_op(type, (yyvsp[-1].u.expr))); } -#line 8019 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8042 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 589: -#line 3251 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 590: +#line 3260 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8029 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8052 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 590: -#line 3257 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 591: +#line 3266 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8039 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8062 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 591: -#line 3263 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 592: +#line 3272 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_wchar_t)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8049 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8072 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 592: -#line 3269 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 593: +#line 3278 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char16_t)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8059 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8082 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 593: -#line 3275 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 594: +#line 3284 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char32_t)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8069 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8092 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 594: -#line 3281 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 595: +#line 3290 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_bool)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8079 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8102 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 595: -#line 3287 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 596: +#line 3296 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_short)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8090 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8113 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 596: -#line 3294 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 597: +#line 3303 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_long)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8101 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8124 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 597: -#line 3301 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 598: +#line 3310 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_unsigned)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8112 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8135 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 598: -#line 3308 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 599: +#line 3317 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, CPPSimpleType::F_signed)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8123 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8146 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 599: -#line 3315 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 600: +#line 3324 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_float)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8133 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8156 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 600: -#line 3321 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 601: +#line 3330 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_double)); (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); } -#line 8143 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 601: -#line 3327 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); -} -#line 8151 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8166 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 602: -#line 3331 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3336 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); +} +#line 8174 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 603: +#line 3340 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPDeclaration *arg = (yyvsp[-1].u.identifier)->find_symbol(current_scope, global_scope, current_lexer); if (arg == (CPPDeclaration *)NULL) { @@ -8163,43 +8186,43 @@ yyreduce: (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func(arg->as_type())); } } -#line 8167 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 603: -#line 3343 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_ellipsis_func((yyvsp[-1].u.identifier))); -} -#line 8175 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8190 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 604: -#line 3347 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3352 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::alignof_func((yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_ellipsis_func((yyvsp[-1].u.identifier))); } -#line 8183 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8198 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 605: -#line 3351 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3356 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[0].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::alignof_func((yyvsp[-1].u.type))); } -#line 8191 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8206 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 606: -#line 3355 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3360 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[-3].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[0].u.type))); } -#line 8199 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8214 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 607: -#line 3359 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3364 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[-3].u.type), (yyvsp[-1].u.expr))); +} +#line 8222 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 608: +#line 3368 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPIdentifier ident(""); ident.add_name("std"); @@ -8210,11 +8233,11 @@ yyreduce: } (yyval.u.expr) = new CPPExpression(CPPExpression::typeid_op((yyvsp[-1].u.type), std_type_info)); } -#line 8214 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8237 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 608: -#line 3370 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 609: +#line 3379 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPIdentifier ident(""); ident.add_name("std"); @@ -8225,564 +8248,564 @@ yyreduce: } (yyval.u.expr) = new CPPExpression(CPPExpression::typeid_op((yyvsp[-1].u.expr), std_type_info)); } -#line 8229 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 609: -#line 3381 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); -} -#line 8237 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8252 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 610: -#line 3385 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3390 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); } -#line 8245 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8260 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 611: -#line 3389 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3394 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); } -#line 8253 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8268 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 612: -#line 3393 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3398 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_PLUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); } -#line 8261 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8276 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 613: -#line 3397 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3402 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_PLUS, (yyvsp[0].u.expr)); } -#line 8269 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8284 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 614: -#line 3401 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3406 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[0].u.expr)); } -#line 8277 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8292 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 615: -#line 3405 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3410 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); } -#line 8285 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8300 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 616: -#line 3409 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3414 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8293 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8308 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 617: -#line 3413 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3418 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8301 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8316 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 618: -#line 3417 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3422 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8309 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8324 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 619: -#line 3421 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3426 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8317 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8332 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 620: -#line 3425 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3430 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8325 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8340 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 621: -#line 3429 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3434 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('^', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8333 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8348 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 622: -#line 3433 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3438 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('^', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8341 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8356 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 623: -#line 3437 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3442 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8349 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8364 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 624: -#line 3441 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3446 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8357 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8372 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 625: -#line 3445 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3450 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8365 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8380 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 626: -#line 3449 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3454 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8373 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8388 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 627: -#line 3453 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3458 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8381 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8396 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 628: -#line 3457 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3462 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8389 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8404 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 629: -#line 3461 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3466 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('<', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8397 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8412 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 630: -#line 3465 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3470 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('>', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('<', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8405 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8420 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 631: -#line 3469 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3474 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('>', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8413 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8428 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 632: -#line 3473 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3478 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8421 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8436 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 633: -#line 3477 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3482 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8429 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8444 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 634: -#line 3481 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3486 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8437 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8452 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 635: -#line 3485 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3490 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); } -#line 8445 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8460 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 636: -#line 3489 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3494 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); } -#line 8453 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8468 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 637: -#line 3493 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3498 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); } -#line 8461 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8476 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 638: -#line 3497 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3502 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8469 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8484 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 639: -#line 3501 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3506 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[-1].u.expr); + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8477 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8492 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 640: -#line 3508 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3510 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); + (yyval.u.expr) = (yyvsp[-1].u.expr); } -#line 8485 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8500 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 641: -#line 3512 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(true); -} -#line 8493 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 642: -#line 3516 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(false); -} -#line 8501 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 643: -#line 3520 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3517 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); } -#line 8509 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8508 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 642: +#line 3521 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(true); +} +#line 8516 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 643: +#line 3525 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(false); +} +#line 8524 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 644: -#line 3524 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3529 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.real)); + (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); } -#line 8517 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8532 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 645: -#line 3528 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3533 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = new CPPExpression((yyvsp[0].u.real)); } -#line 8525 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8540 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 646: -#line 3532 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3537 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 8533 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8548 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 647: -#line 3536 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3541 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.identifier), current_scope, global_scope, current_lexer); + (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 8541 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8556 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 648: -#line 3540 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3545 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression((yyvsp[0].u.identifier), current_scope, global_scope, current_lexer); +} +#line 8564 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 649: +#line 3549 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // A variable named "final". C++11 explicitly permits this. CPPIdentifier *ident = new CPPIdentifier("final", (yylsp[0])); (yyval.u.expr) = new CPPExpression(ident, current_scope, global_scope, current_lexer); } -#line 8551 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8574 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 649: -#line 3546 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 650: +#line 3555 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // A variable named "override". C++11 explicitly permits this. CPPIdentifier *ident = new CPPIdentifier("override", (yylsp[0])); (yyval.u.expr) = new CPPExpression(ident, current_scope, global_scope, current_lexer); } -#line 8561 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 650: -#line 3552 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::get_nullptr()); -} -#line 8569 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8584 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 651: -#line 3556 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3561 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::get_nullptr()); +} +#line 8592 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 652: +#line 3565 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyvsp[-6].u.closure_type)->_flags = (yyvsp[-4].u.integer); (yyvsp[-6].u.closure_type)->_return_type = (yyvsp[-3].u.type); (yyval.u.expr) = new CPPExpression(CPPExpression::lambda((yyvsp[-6].u.closure_type))); } -#line 8579 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8602 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 652: -#line 3562 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 653: +#line 3571 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyvsp[-9].u.closure_type)->_parameters = (yyvsp[-6].u.param_list); (yyvsp[-9].u.closure_type)->_flags = (yyvsp[-4].u.integer); (yyvsp[-9].u.closure_type)->_return_type = (yyvsp[-3].u.type); (yyval.u.expr) = new CPPExpression(CPPExpression::lambda((yyvsp[-9].u.closure_type))); } -#line 8590 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 653: -#line 3569 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_HAS_VIRTUAL_DESTRUCTOR, (yyvsp[-1].u.type))); -} -#line 8598 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8613 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 654: -#line 3573 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3578 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_ABSTRACT, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_HAS_VIRTUAL_DESTRUCTOR, (yyvsp[-1].u.type))); } -#line 8606 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8621 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 655: -#line 3577 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3582 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CLASS, (yyvsp[-3].u.type), (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_ABSTRACT, (yyvsp[-1].u.type))); } -#line 8614 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8629 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 656: -#line 3581 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3586 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CLASS, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CLASS, (yyvsp[-3].u.type), (yyvsp[-1].u.type))); } -#line 8622 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8637 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 657: -#line 3585 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3590 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CONSTRUCTIBLE, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CLASS, (yyvsp[-1].u.type))); } -#line 8630 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8645 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 658: -#line 3589 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3594 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CONSTRUCTIBLE, (yyvsp[-3].u.type), (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CONSTRUCTIBLE, (yyvsp[-1].u.type))); } -#line 8638 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8653 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 659: -#line 3593 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3598 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CONVERTIBLE_TO, (yyvsp[-3].u.type), (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CONSTRUCTIBLE, (yyvsp[-3].u.type), (yyvsp[-1].u.type))); } -#line 8646 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8661 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 660: -#line 3597 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3602 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_DESTRUCTIBLE, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_CONVERTIBLE_TO, (yyvsp[-3].u.type), (yyvsp[-1].u.type))); } -#line 8654 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8669 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 661: -#line 3601 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3606 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_EMPTY, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_DESTRUCTIBLE, (yyvsp[-1].u.type))); } -#line 8662 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8677 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 662: -#line 3605 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3610 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_ENUM, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_EMPTY, (yyvsp[-1].u.type))); } -#line 8670 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8685 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 663: -#line 3609 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3614 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_FINAL, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_ENUM, (yyvsp[-1].u.type))); } -#line 8678 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8693 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 664: -#line 3613 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3618 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_FUNDAMENTAL, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_FINAL, (yyvsp[-1].u.type))); } -#line 8686 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8701 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 665: -#line 3617 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3622 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_POD, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_FUNDAMENTAL, (yyvsp[-1].u.type))); } -#line 8694 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8709 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 666: -#line 3621 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3626 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_POLYMORPHIC, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_POD, (yyvsp[-1].u.type))); } -#line 8702 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8717 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 667: -#line 3625 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3630 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_STANDARD_LAYOUT, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_POLYMORPHIC, (yyvsp[-1].u.type))); } -#line 8710 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8725 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 668: -#line 3629 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3634 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_TRIVIAL, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_STANDARD_LAYOUT, (yyvsp[-1].u.type))); } -#line 8718 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8733 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 669: -#line 3633 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3638 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_UNION, (yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_TRIVIAL, (yyvsp[-1].u.type))); } -#line 8726 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8741 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 670: -#line 3647 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3642 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = new CPPExpression(CPPExpression::type_trait(KW_IS_UNION, (yyvsp[-1].u.type))); } -#line 8734 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8749 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 671: -#line 3651 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3656 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); + (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 8742 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8757 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 672: -#line 3655 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3660 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_static_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); } -#line 8750 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8765 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 673: -#line 3659 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3664 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_dynamic_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_static_cast)); } -#line 8758 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8773 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 674: -#line 3663 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3668 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_const_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_dynamic_cast)); } -#line 8766 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8781 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 675: -#line 3667 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3672 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_reinterpret_cast)); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_const_cast)); } -#line 8774 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8789 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 676: -#line 3671 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3676 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr), CPPExpression::T_reinterpret_cast)); } -#line 8782 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8797 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 677: -#line 3675 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3680 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); +} +#line 8805 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 678: +#line 3684 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPDeclaration *arg = (yyvsp[-1].u.identifier)->find_symbol(current_scope, global_scope, current_lexer); if (arg == (CPPDeclaration *)NULL) { @@ -8794,43 +8817,43 @@ yyreduce: (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func(arg->as_type())); } } -#line 8798 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 678: -#line 3687 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_ellipsis_func((yyvsp[-1].u.identifier))); -} -#line 8806 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8821 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 679: -#line 3691 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3696 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::alignof_func((yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_ellipsis_func((yyvsp[-1].u.identifier))); } -#line 8814 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8829 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 680: -#line 3695 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3700 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[0].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::alignof_func((yyvsp[-1].u.type))); } -#line 8822 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8837 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 681: -#line 3699 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3704 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[-3].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[0].u.type))); } -#line 8830 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8845 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 682: -#line 3703 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3708 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[-3].u.type), (yyvsp[-1].u.expr))); +} +#line 8853 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 683: +#line 3712 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPIdentifier ident(""); ident.add_name("std"); @@ -8841,11 +8864,11 @@ yyreduce: } (yyval.u.expr) = new CPPExpression(CPPExpression::typeid_op((yyvsp[-1].u.type), std_type_info)); } -#line 8845 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8868 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 683: -#line 3714 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 684: +#line 3723 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPIdentifier ident(""); ident.add_name("std"); @@ -8856,409 +8879,409 @@ yyreduce: } (yyval.u.expr) = new CPPExpression(CPPExpression::typeid_op((yyvsp[-1].u.expr), std_type_info)); } -#line 8860 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 684: -#line 3725 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); -} -#line 8868 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8883 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 685: -#line 3729 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3734 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); } -#line 8876 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8891 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 686: -#line 3733 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3738 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); } -#line 8884 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8899 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 687: -#line 3737 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3742 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_PLUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); } -#line 8892 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8907 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 688: -#line 3741 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3746 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_PLUS, (yyvsp[0].u.expr)); } -#line 8900 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8915 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 689: -#line 3745 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3750 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); } -#line 8908 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8923 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 690: -#line 3749 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3754 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8916 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8931 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 691: -#line 3753 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3758 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8924 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8939 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 692: -#line 3757 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3762 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8932 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8947 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 693: -#line 3761 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3766 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8940 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8955 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 694: -#line 3765 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3770 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8948 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8963 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 695: -#line 3769 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3774 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('^', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8956 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8971 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 696: -#line 3773 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3778 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('^', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8964 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8979 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 697: -#line 3777 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3782 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8972 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8987 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 698: -#line 3781 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3786 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8980 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 8995 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 699: -#line 3785 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3790 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8988 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9003 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 700: -#line 3789 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3794 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 8996 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9011 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 701: -#line 3793 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3798 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9004 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9019 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 702: -#line 3797 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3802 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9012 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9027 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 703: -#line 3801 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3806 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('<', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9020 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9035 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 704: -#line 3805 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3810 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('>', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('<', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9028 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9043 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 705: -#line 3809 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3814 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('>', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9036 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9051 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 706: -#line 3813 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3818 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9044 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9059 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 707: -#line 3817 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3822 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9052 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9067 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 708: -#line 3821 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3826 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9060 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9075 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 709: -#line 3825 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3830 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); } -#line 9068 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9083 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 710: -#line 3829 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3834 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); } -#line 9076 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9091 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 711: -#line 3833 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3838 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); } -#line 9084 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9099 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 712: -#line 3837 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3842 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9092 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9107 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 713: -#line 3841 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3846 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[-1].u.expr); + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); } -#line 9100 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9115 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 714: -#line 3848 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3850 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); + (yyval.u.expr) = (yyvsp[-1].u.expr); } -#line 9108 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9123 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 715: -#line 3852 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(true); -} -#line 9116 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 716: -#line 3856 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(false); -} -#line 9124 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 717: -#line 3860 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3857 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); } -#line 9132 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9131 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 716: +#line 3861 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(true); +} +#line 9139 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 717: +#line 3865 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression(false); +} +#line 9147 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 718: -#line 3864 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3869 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.real)); + (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); } -#line 9140 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9155 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 719: -#line 3868 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3873 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = new CPPExpression((yyvsp[0].u.real)); } -#line 9148 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9163 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 720: -#line 3872 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3877 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 9156 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9171 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 721: -#line 3876 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3881 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.identifier), current_scope, global_scope, current_lexer); + (yyval.u.expr) = (yyvsp[0].u.expr); } -#line 9164 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9179 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 722: -#line 3880 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3885 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = new CPPExpression((yyvsp[0].u.identifier), current_scope, global_scope, current_lexer); +} +#line 9187 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 723: +#line 3889 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // A variable named "final". C++11 explicitly permits this. CPPIdentifier *ident = new CPPIdentifier("final", (yylsp[0])); (yyval.u.expr) = new CPPExpression(ident, current_scope, global_scope, current_lexer); } -#line 9174 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9197 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 723: -#line 3886 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 724: +#line 3895 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // A variable named "override". C++11 explicitly permits this. CPPIdentifier *ident = new CPPIdentifier("override", (yylsp[0])); (yyval.u.expr) = new CPPExpression(ident, current_scope, global_scope, current_lexer); } -#line 9184 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 724: -#line 3892 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.expr) = new CPPExpression(CPPExpression::get_nullptr()); -} -#line 9192 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9207 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 725: -#line 3900 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3901 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.closure_type) = new CPPClosureType(); + (yyval.u.expr) = new CPPExpression(CPPExpression::get_nullptr()); } -#line 9200 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9215 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 726: -#line 3904 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3909 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.closure_type) = new CPPClosureType(CPPClosureType::CT_by_value); + (yyval.u.closure_type) = new CPPClosureType(); } -#line 9208 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9223 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 727: -#line 3908 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3913 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.closure_type) = new CPPClosureType(CPPClosureType::CT_by_reference); + (yyval.u.closure_type) = new CPPClosureType(CPPClosureType::CT_by_value); } -#line 9216 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9231 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 728: -#line 3912 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3917 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.closure_type) = new CPPClosureType(CPPClosureType::CT_by_reference); +} +#line 9239 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 729: +#line 3921 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.closure_type) = new CPPClosureType(); (yyvsp[-1].u.capture)->_initializer = (yyvsp[0].u.expr); (yyval.u.closure_type)->_captures.push_back(*(yyvsp[-1].u.capture)); delete (yyvsp[-1].u.capture); } -#line 9227 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9250 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 729: -#line 3919 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 730: +#line 3928 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.closure_type) = (yyvsp[-3].u.closure_type); (yyvsp[-1].u.capture)->_initializer = (yyvsp[0].u.expr); (yyval.u.closure_type)->_captures.push_back(*(yyvsp[-1].u.capture)); delete (yyvsp[-1].u.capture); } -#line 9238 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9261 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 730: -#line 3929 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 731: +#line 3938 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.capture) = new CPPClosureType::Capture; (yyval.u.capture)->_name = (yyvsp[0].u.identifier)->get_simple_name(); (yyval.u.capture)->_type = CPPClosureType::CT_by_reference; } -#line 9248 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9271 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 731: -#line 3935 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 732: +#line 3944 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.capture) = new CPPClosureType::Capture; (yyval.u.capture)->_name = (yyvsp[-1].u.identifier)->get_simple_name(); (yyval.u.capture)->_type = CPPClosureType::CT_by_reference; } -#line 9258 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9281 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 732: -#line 3941 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 733: +#line 3950 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.capture) = new CPPClosureType::Capture; (yyval.u.capture)->_name = (yyvsp[0].u.identifier)->get_simple_name(); @@ -9268,11 +9291,11 @@ yyreduce: (yyval.u.capture)->_type = CPPClosureType::CT_by_value; } } -#line 9272 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9295 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 733: -#line 3951 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 734: +#line 3960 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.capture) = new CPPClosureType::Capture; (yyval.u.capture)->_name = (yyvsp[0].u.identifier)->get_simple_name(); @@ -9281,11 +9304,11 @@ yyreduce: yywarning("only capture name 'this' may be preceded by an asterisk", (yylsp[0])); } } -#line 9285 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9308 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 734: -#line 3963 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 735: +#line 3972 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, true); if (type == NULL) { @@ -9293,169 +9316,169 @@ yyreduce: } (yyval.u.type) = type; } -#line 9297 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 735: -#line 3971 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); -} -#line 9305 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9320 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 736: -#line 3975 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 3980 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); +} +#line 9328 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 737: +#line 3984 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { CPPClassTemplateParameter *ctp = new CPPClassTemplateParameter((yyvsp[-1].u.identifier)); ctp->_packed = true; (yyval.u.type) = CPPType::new_type(ctp); } -#line 9315 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 737: -#line 4005 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.identifier) = (yyvsp[0].u.identifier); -} -#line 9323 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9338 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 738: -#line 4009 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4014 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.identifier) = (yyvsp[0].u.identifier); } -#line 9331 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9346 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 739: -#line 4013 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4018 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.identifier) = (yyvsp[0].u.identifier); } -#line 9339 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9354 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 740: -#line 4017 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4022 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = new CPPIdentifier("final", (yylsp[0])); + (yyval.u.identifier) = (yyvsp[0].u.identifier); } -#line 9347 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9362 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 741: -#line 4021 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4026 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = new CPPIdentifier("override", (yylsp[0])); + (yyval.u.identifier) = new CPPIdentifier("final", (yylsp[0])); } -#line 9355 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9370 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 742: -#line 4025 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4030 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.identifier) = new CPPIdentifier("override", (yylsp[0])); +} +#line 9378 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 743: +#line 4034 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // This is not a keyword in Python, so it is useful to be able to use this // in MAKE_PROPERTY definitions, etc. (yyval.u.identifier) = new CPPIdentifier("signed", (yylsp[0])); } -#line 9365 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ - break; - - case 743: -#line 4031 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ - { - (yyval.u.identifier) = new CPPIdentifier("float", (yylsp[0])); -} -#line 9373 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9388 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 744: -#line 4035 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4040 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = new CPPIdentifier("public", (yylsp[0])); + (yyval.u.identifier) = new CPPIdentifier("float", (yylsp[0])); } -#line 9381 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9396 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 745: -#line 4039 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4044 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = new CPPIdentifier("private", (yylsp[0])); + (yyval.u.identifier) = new CPPIdentifier("public", (yylsp[0])); } -#line 9389 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9404 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 746: -#line 4043 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4048 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = new CPPIdentifier("static", (yylsp[0])); + (yyval.u.identifier) = new CPPIdentifier("private", (yylsp[0])); } -#line 9397 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9412 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 747: -#line 4054 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4052 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = (yyvsp[0].u.identifier); + (yyval.u.identifier) = new CPPIdentifier("static", (yylsp[0])); } -#line 9405 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9420 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 748: -#line 4058 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4063 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.identifier) = (yyvsp[0].u.identifier); } -#line 9413 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9428 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 749: -#line 4062 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4067 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { (yyval.u.identifier) = (yyvsp[0].u.identifier); } -#line 9421 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9436 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 750: -#line 4066 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4071 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.identifier) = new CPPIdentifier("override", (yylsp[0])); + (yyval.u.identifier) = (yyvsp[0].u.identifier); } -#line 9429 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9444 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 751: -#line 4074 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4075 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = new CPPExpression((yyvsp[0].str)); + (yyval.u.identifier) = new CPPIdentifier("override", (yylsp[0])); } -#line 9437 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9452 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 752: -#line 4078 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4083 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = new CPPExpression((yyvsp[0].str)); } -#line 9445 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9460 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; case 753: -#line 4082 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ +#line 4087 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + { + (yyval.u.expr) = (yyvsp[0].u.expr); +} +#line 9468 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ + break; + + case 754: +#line 4091 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // The right string takes on the literal type of the left. (yyval.u.expr) = (yyvsp[-1].u.expr); (yyval.u.expr)->_str += (yyvsp[0].str); } -#line 9455 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9478 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; - case 754: -#line 4088 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ + case 755: +#line 4097 "dtool/src/cppparser/cppBison.yxx" /* yacc.c:1646 */ { // We have to check that the two literal types match up. (yyval.u.expr) = (yyvsp[-1].u.expr); @@ -9464,11 +9487,11 @@ yyreduce: } (yyval.u.expr)->_str += (yyvsp[0].u.expr)->_str; } -#line 9468 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9491 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ break; -#line 9472 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ +#line 9495 "built/tmp/cppBison.yxx.c" /* yacc.c:1646 */ 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 752bbbfecd..305b5a005c 100644 --- a/dtool/src/cppparser/cppBison.yxx +++ b/dtool/src/cppparser/cppBison.yxx @@ -928,12 +928,21 @@ type_like_declaration: current_scope->add_declaration($2, global_scope, current_lexer, @2); } - | storage_class constructor_prototype maybe_initialize_or_constructor_body + | storage_class constructor_prototype { if ($2 != (CPPInstance *)NULL) { + // Push the scope so that the initializers can make use of things defined + // in the class body. + push_scope($2->get_scope(current_scope, global_scope)); $2->_storage_class |= (current_storage_class | $1); + } +} + maybe_initialize_or_constructor_body +{ + if ($2 != (CPPInstance *)NULL) { + pop_scope(); current_scope->add_declaration($2, global_scope, current_lexer, @2); - $2->set_initializer($3); + $2->set_initializer($4); } } | storage_class function_prototype maybe_initialize_or_function_body