Changeset 44a81853 for src/Parser
- Timestamp:
- Jan 18, 2017, 4:57:52 PM (8 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- 5ded739
- Parents:
- 1267fb1
- Location:
- src/Parser
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified src/Parser/DeclarationNode.cc ¶
r1267fb1 r44a81853 10 10 // Created On : Sat May 16 12:34:05 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 13 14:43:38 201613 // Update Count : 66 012 // Last Modified On : Sat Jan 14 14:36:23 2017 13 // Update Count : 669 14 14 // 15 15 … … 22 22 #include "TypeData.h" 23 23 24 #include "SynTree/Attribute.h" 24 25 #include "SynTree/Declaration.h" 25 26 #include "SynTree/Expression.h" … … 397 398 } 398 399 400 DeclarationNode * DeclarationNode::newAttribute( string * name, ExpressionNode * expr ) { 401 DeclarationNode * newnode = new DeclarationNode; 402 newnode->type = nullptr; 403 std::list< Expression * > exprs; 404 buildList( expr, exprs ); 405 newnode->attributes.push_back( new Attribute( *name, exprs ) ); 406 delete name; 407 return newnode; 408 } 409 399 410 void appendError( string & dst, const string & src ) { 400 411 if ( src.empty() ) return; … … 435 446 storageClass = q->storageClass; 436 447 } // if 448 attributes.splice( attributes.end(), q->attributes ); 437 449 return this; 438 450 } // DeclarationNode::copyStorageClasses … … 958 970 959 971 if ( type ) { 960 return buildDecl( type, name ? *name : string( "" ), storageClass, maybeBuild< Expression >( bitfieldWidth ), isInline, isNoreturn, linkage, asmName, maybeBuild< Initializer >(initializer) )->set_extension( extension );972 return buildDecl( type, name ? *name : string( "" ), storageClass, maybeBuild< Expression >( bitfieldWidth ), isInline, isNoreturn, linkage, asmName, maybeBuild< Initializer >(initializer), attributes )->set_extension( extension ); 961 973 } // if 962 974 -
TabularUnified src/Parser/ParseNode.h ¶
r1267fb1 r44a81853 10 10 // Created On : Sat May 16 13:28:16 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 13 15:37:33 201613 // Update Count : 6 4312 // Last Modified On : Wed Jan 18 16:20:43 2017 13 // Update Count : 650 14 14 // 15 15 … … 35 35 class ExpressionNode; 36 36 class InitializerNode; 37 class Attribute; 37 38 38 39 //############################################################################## … … 242 243 static DeclarationNode * newTuple( DeclarationNode * members ); 243 244 static DeclarationNode * newTypeof( ExpressionNode * expr ); 244 static DeclarationNode * newAttr( std::string *, ExpressionNode * expr ); 245 static DeclarationNode * newAttr( std::string *, DeclarationNode * type ); 245 static DeclarationNode * newAttr( std::string *, ExpressionNode * expr ); // @ attributes 246 static DeclarationNode * newAttr( std::string *, DeclarationNode * type ); // @ attributes 247 static DeclarationNode * newAttribute( std::string *, ExpressionNode * expr = nullptr ); // gcc attributes 246 248 247 249 DeclarationNode(); … … 316 318 LinkageSpec::Spec linkage; 317 319 ConstantExpr *asmName; 318 std::list< std::string> attributes;320 std::list< Attribute * > attributes; 319 321 InitializerNode * initializer; 320 322 bool extension = false; … … 344 346 Statement * build() const { return const_cast<StatementNode*>(this)->stmt.release(); } 345 347 346 virtual StatementNode * add_label( const std::string * name ) { 347 stmt->get_labels().emplace_back( * name ); 348 virtual StatementNode * add_label( const std::string * name, DeclarationNode * attr = nullptr ) { 349 stmt->get_labels().emplace_back( * name, nullptr, attr ? std::move( attr->attributes ) : std::list< Attribute * > {} ); 350 delete attr; 348 351 delete name; 349 352 return this; -
TabularUnified src/Parser/TypeData.cc ¶
r1267fb1 r44a81853 10 10 // Created On : Sat May 16 15:12:51 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 13 13:40:33 201613 // Update Count : 42 012 // Last Modified On : Fri Jan 13 15:47:37 2017 13 // Update Count : 423 14 14 // 15 15 … … 721 721 } // buildTypeof 722 722 723 Declaration * buildDecl( const TypeData * td, const string &name, DeclarationNode::StorageClass sc, Expression * bitfieldWidth, bool isInline, bool isNoreturn, LinkageSpec::Spec linkage, ConstantExpr *asmName, Initializer * init ) {723 Declaration * buildDecl( const TypeData * td, const string &name, DeclarationNode::StorageClass sc, Expression * bitfieldWidth, bool isInline, bool isNoreturn, LinkageSpec::Spec linkage, ConstantExpr *asmName, Initializer * init, std::list< Attribute * > attributes ) { 724 724 if ( td->kind == TypeData::Function ) { 725 725 FunctionDecl * decl; … … 729 729 CompoundStmt * body = dynamic_cast< CompoundStmt* >( stmt ); 730 730 assert( body ); 731 decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), body, isInline, isNoreturn );731 decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), body, isInline, isNoreturn, attributes ); 732 732 } else { 733 733 // list< Label > ls; 734 decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), new CompoundStmt( list< Label >() ), isInline, isNoreturn );734 decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), new CompoundStmt( list< Label >() ), isInline, isNoreturn, attributes ); 735 735 } // if 736 736 } else { 737 decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), nullptr, isInline, isNoreturn );737 decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), nullptr, isInline, isNoreturn, attributes ); 738 738 } // if 739 739 for ( DeclarationNode * cur = td->function.idList; cur != nullptr; cur = dynamic_cast< DeclarationNode* >( cur->get_next() ) ) { -
TabularUnified src/Parser/TypeData.h ¶
r1267fb1 r44a81853 10 10 // Created On : Sat May 16 15:18:36 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 13 13:39:39 201613 // Update Count : 14 312 // Last Modified On : Fri Jan 13 16:11:23 2017 13 // Update Count : 144 14 14 // 15 15 … … 111 111 TupleType * buildTuple( const TypeData * ); 112 112 TypeofType * buildTypeof( const TypeData * ); 113 Declaration * buildDecl( const TypeData *, const std::string &, DeclarationNode::StorageClass, Expression *, bool isInline, bool isNoreturn, LinkageSpec::Spec, ConstantExpr *asmName, Initializer * init = nullptr );113 Declaration * buildDecl( const TypeData *, const std::string &, DeclarationNode::StorageClass, Expression *, bool isInline, bool isNoreturn, LinkageSpec::Spec, ConstantExpr *asmName, Initializer * init = nullptr, std::list< class Attribute * > attributes = std::list< class Attribute * >() ); 114 114 FunctionType * buildFunction( const TypeData * ); 115 115 -
TabularUnified src/Parser/parser.cc ¶
r1267fb1 r44a81853 67 67 68 68 /* Line 268 of yacc.c */ 69 #line 4 2"parser.yy"69 #line 41 "parser.yy" 70 70 71 71 #define YYDEBUG_LEXER_TEXT (yylval) // lexer loads this up each time … … 358 358 359 359 /* Line 293 of yacc.c */ 360 #line 1 20"parser.yy"360 #line 119 "parser.yy" 361 361 362 362 Token tok; … … 609 609 #define YYFINAL 251 610 610 /* YYLAST -- Last index in YYTABLE. */ 611 #define YYLAST 104 66611 #define YYLAST 10498 612 612 613 613 /* YYNTOKENS -- Number of terminals. */ … … 618 618 #define YYNRULES 758 619 619 /* YYNRULES -- Number of states. */ 620 #define YYNSTATES 154 1620 #define YYNSTATES 1546 621 621 622 622 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ … … 799 799 -1, 177, -1, 180, -1, 181, -1, 185, -1, 186, 800 800 -1, 198, -1, 200, -1, 201, -1, 206, -1, 132, 801 149, 119, 150, 120, 137, -1, 75, 135, 319, 179,801 149, 119, 150, 120, 137, -1, 279, 135, 319, 179, 802 802 -1, 119, 120, -1, 119, 139, 139, 217, 182, 140, 803 803 120, -1, 183, -1, 182, 139, 183, -1, 220, -1, … … 818 818 137, -1, 51, 114, 139, 199, 115, 179, -1, 178, 819 819 140, 137, 178, 137, 178, -1, 220, 178, 137, 178, 820 -1, 54, 75, 137, -1, 54, 122, 177, 137, -1,821 53, 137, -1, 53, 75, 137, -1, 52, 137, -1,822 52, 75, 137, -1, 55, 178, 137, -1, 64, 173,820 -1, 54, 279, 137, -1, 54, 122, 177, 137, -1, 821 53, 137, -1, 53, 279, 137, -1, 52, 137, -1, 822 52, 279, 137, -1, 55, 178, 137, -1, 64, 173, 823 823 137, -1, 65, 173, 137, -1, 65, 173, 66, 172, 824 824 137, -1, 60, 181, 202, -1, 60, 181, 204, -1, … … 949 949 320, 321, -1, 42, 114, 114, 322, 115, 115, -1, 950 950 323, -1, 322, 121, 323, -1, -1, 324, -1, 324, 951 114, 1 78, 115, -1, 279, -1, 241, -1, 242, -1,952 236, -1, 326, 319, -1, 327, -1, 328, 319, -1,951 114, 150, 115, -1, 75, -1, 77, -1, 78, -1, 952 10, -1, 326, 319, -1, 327, -1, 328, 319, -1, 953 953 329, 319, -1, 142, -1, 114, 326, 115, -1, 157, 954 954 325, -1, 157, 235, 325, -1, 114, 327, 115, -1, … … 1032 1032 static const yytype_uint16 yyrline[] = 1033 1033 { 1034 0, 30 6, 306, 310, 317, 318, 319, 320, 321, 325,1035 32 6, 327, 331, 332, 336, 337, 341, 342, 346, 350,1036 35 1, 362, 364, 366, 367, 369, 374, 375, 381, 383,1037 38 5, 387, 389, 391, 393, 395, 397, 399, 408, 409,1038 41 5, 416, 420, 421, 425, 426, 428, 430, 432, 434,1039 43 6, 441, 443, 445, 457, 458, 466, 469, 471, 473,1040 47 8, 491, 493, 495, 497, 499, 501, 503, 505, 507,1041 50 9, 511, 518, 519, 525, 526, 527, 528, 532, 533,1042 5 40, 541, 543, 545, 550, 551, 553, 558, 559, 561,1043 56 6, 567, 569, 571, 573, 578, 579, 581, 586, 587,1044 59 2, 593, 598, 599, 604, 605, 610, 611, 616, 617,1045 6 20, 627, 632, 633, 641, 642, 646, 647, 648, 649,1046 6 50, 651, 652, 653, 654, 655, 656, 657, 667, 669,1047 67 4, 675, 680, 681, 687, 688, 694, 695, 696, 697,1048 69 8, 699, 700, 701, 702, 712, 719, 721, 731, 732,1049 73 7, 739, 745, 747, 751, 752, 757, 762, 765, 767,1050 76 9, 779, 781, 792, 793, 795, 799, 801, 805, 806,1051 81 1, 812, 816, 821, 822, 826, 828, 834, 835, 839,1052 84 1, 843, 845, 851, 852, 856, 858, 863, 865, 867,1053 87 2, 874, 879, 881, 885, 888, 892, 895, 899, 901,1054 90 3, 905, 910, 912, 914, 919, 921, 923, 925, 927,1055 93 2, 934, 936, 938, 943, 955, 956, 961, 963, 968,1056 97 2, 974, 976, 978, 980, 986, 987, 993, 994, 998,1057 99 9, 1004, 1006, 1012, 1013, 1015, 1021, 1026, 1036, 1038,1058 104 2, 1043, 1048, 1050, 1054, 1055, 1059, 1061, 1065, 1066,1059 10 70, 1071, 1075, 1076, 1091, 1092, 1093, 1094, 1095, 1099,1060 110 4, 1111, 1121, 1126, 1131, 1139, 1144, 1149, 1154, 1159,1061 118 9, 1194, 1201, 1203, 1210, 1215, 1220, 1231, 1236, 1241,1062 124 6, 1251, 1260, 1265, 1273, 1274, 1275, 1276, 1282, 1287,1063 129 5, 1296, 1297, 1298, 1302, 1303, 1304, 1305, 1310, 1311,1064 13 20, 1321, 1326, 1327, 1332, 1334, 1336, 1338, 1340, 1343,1065 134 2, 1354, 1355, 1357, 1367, 1368, 1373, 1375, 1377, 1379,1066 13 81, 1384, 1386, 1389, 1394, 1396, 1398, 1400, 1402, 1404,1067 140 6, 1408, 1410, 1412, 1414, 1416, 1418, 1420, 1422, 1428,1068 142 9, 1431, 1433, 1435, 1440, 1441, 1447, 1448, 1450, 1452,1069 145 7, 1459, 1461, 1463, 1468, 1469, 1471, 1473, 1478, 1479,1070 14 81, 1486, 1487, 1489, 1491, 1496, 1498, 1500, 1505, 1506,1071 15 10, 1512, 1518, 1517, 1521, 1523, 1528, 1530, 1536, 1537,1072 154 2, 1543, 1545, 1546, 1555, 1556, 1558, 1560, 1565, 1567,1073 157 3, 1574, 1576, 1579, 1582, 1587, 1588, 1593, 1598, 1602,1074 160 4, 1610, 1609, 1616, 1618, 1624, 1625, 1633, 1634, 1638,1075 163 9, 1640, 1642, 1644, 1651, 1652, 1654, 1656, 1661, 1662,1076 166 8, 1669, 1673, 1674, 1679, 1680, 1681, 1683, 1691, 1692,1077 169 4, 1697, 1699, 1703, 1704, 1705, 1707, 1709, 1713, 1718,1078 172 6, 1727, 1736, 1738, 1743, 1744, 1745, 1749, 1750, 1751,1079 175 5, 1756, 1757, 1761, 1762, 1763, 1768, 1769, 1770, 1771,1080 177 7, 1778, 1780, 1785, 1786, 1791, 1792, 1793, 1794, 1795,1081 18 10, 1811, 1816, 1817, 1823, 1825, 1828, 1830, 1832, 1855,1082 185 6, 1858, 1860, 1865, 1866, 1868, 1873, 1878, 1879, 1885,1083 188 4, 1888, 1892, 1894, 1896, 1898, 1904, 1905, 1910, 1915,1084 191 7, 1922, 1924, 1925, 1927, 1932, 1934, 1936, 1941, 1943,1085 194 8, 1953, 1961, 1967, 1966, 1980, 1981, 1986, 1987, 1991,1086 199 6, 2001, 2009, 2014, 2025, 2026, 2031, 2032, 2038, 2039,1087 204 3, 2044, 2045, 2048, 2047, 2058, 2067, 2073, 2079, 2088,1088 209 4, 2100, 2106, 2112, 2120, 2126, 2134, 2140, 2149, 2150,1089 21 51, 2155, 2161, 2162, 2168, 2169, 2173, 2174, 2179, 2185,1090 218 6, 2189, 2191, 2192, 2196, 2197, 2198, 2199, 2233, 2235,1091 223 6, 2238, 2243, 2248, 2253, 2255, 2257, 2262, 2264, 2266,1092 22 68, 2273, 2275, 2284, 2286, 2287, 2292, 2294, 2296, 2301,1093 230 3, 2305, 2310, 2312, 2314, 2323, 2324, 2325, 2329, 2331,1094 233 3, 2338, 2340, 2342, 2347, 2349, 2351, 2366, 2368, 2369,1095 237 1, 2376, 2377, 2382, 2384, 2386, 2391, 2393, 2395, 2397,1096 240 2, 2404, 2406, 2416, 2418, 2419, 2421, 2426, 2428, 2430,1097 243 5, 2437, 2439, 2441, 2446, 2448, 2450, 2481, 2483, 2484,1098 248 6, 2491, 2496, 2504, 2506, 2508, 2513, 2515, 2520, 2522,1099 253 6, 2537, 2539, 2544, 2546, 2548, 2550, 2552, 2557, 2558,1100 256 0, 2562, 2567, 2569, 2571, 2577, 2579, 2581, 2585, 2587,1101 25 89, 2591, 2605, 2606, 2608, 2613, 2615, 2617, 2619, 2621,1102 262 6, 2627, 2629, 2631, 2636, 2638, 2640, 2646, 2647, 2649,1103 26 58, 2661, 2663, 2666, 2668, 2670, 2683, 2684, 2686, 2691,1104 269 3, 2695, 2697, 2699, 2704, 2705, 2707, 2709, 2714, 2716,1105 272 4, 2725, 2726, 2731, 2732, 2736, 2738, 2740, 2742, 2744,1106 274 6, 2753, 2755, 2757, 2759, 2761, 2764, 2766, 2768, 2770,1107 277 2, 2777, 2779, 2781, 2786, 2812, 2813, 2815, 2819, 2820,1108 282 4, 2826, 2828, 2830, 2832, 2834, 2841, 2843, 2845, 2847,1109 28 49, 2851, 2856, 2863, 2865, 2883, 2885, 2890, 28911034 0, 305, 305, 309, 316, 317, 318, 319, 320, 324, 1035 325, 326, 330, 331, 335, 336, 340, 341, 345, 349, 1036 350, 361, 363, 365, 366, 368, 373, 374, 380, 382, 1037 384, 386, 388, 390, 392, 394, 396, 398, 407, 408, 1038 414, 415, 419, 420, 424, 425, 427, 429, 431, 433, 1039 435, 440, 442, 444, 456, 457, 465, 468, 470, 472, 1040 477, 490, 492, 494, 496, 498, 500, 502, 504, 506, 1041 508, 510, 517, 518, 524, 525, 526, 527, 531, 532, 1042 539, 540, 542, 544, 549, 550, 552, 557, 558, 560, 1043 565, 566, 568, 570, 572, 577, 578, 580, 585, 586, 1044 591, 592, 597, 598, 603, 604, 609, 610, 615, 616, 1045 619, 626, 631, 632, 640, 641, 645, 646, 647, 648, 1046 649, 650, 651, 652, 653, 654, 655, 656, 666, 668, 1047 673, 674, 679, 680, 686, 687, 693, 694, 695, 696, 1048 697, 698, 699, 700, 701, 711, 718, 720, 730, 731, 1049 736, 738, 744, 746, 750, 751, 756, 761, 764, 766, 1050 768, 778, 780, 791, 792, 794, 798, 800, 804, 805, 1051 810, 811, 815, 820, 821, 825, 827, 833, 834, 838, 1052 840, 842, 844, 850, 851, 855, 857, 862, 864, 866, 1053 871, 873, 878, 880, 884, 887, 891, 894, 898, 900, 1054 902, 904, 909, 911, 913, 918, 920, 922, 924, 926, 1055 931, 933, 935, 937, 942, 954, 955, 960, 962, 967, 1056 971, 973, 975, 977, 979, 985, 986, 992, 993, 997, 1057 998, 1003, 1005, 1011, 1012, 1014, 1020, 1025, 1035, 1037, 1058 1041, 1042, 1047, 1049, 1053, 1054, 1058, 1060, 1064, 1065, 1059 1069, 1070, 1074, 1075, 1090, 1091, 1092, 1093, 1094, 1098, 1060 1103, 1110, 1120, 1125, 1130, 1138, 1143, 1148, 1153, 1158, 1061 1188, 1193, 1200, 1202, 1209, 1214, 1219, 1230, 1235, 1240, 1062 1245, 1250, 1259, 1264, 1272, 1273, 1274, 1275, 1281, 1286, 1063 1294, 1295, 1296, 1297, 1301, 1302, 1303, 1304, 1309, 1310, 1064 1319, 1320, 1325, 1326, 1330, 1332, 1334, 1336, 1338, 1341, 1065 1340, 1352, 1353, 1355, 1365, 1366, 1371, 1373, 1375, 1377, 1066 1379, 1382, 1384, 1387, 1392, 1394, 1396, 1398, 1400, 1402, 1067 1404, 1406, 1408, 1410, 1412, 1414, 1416, 1418, 1420, 1426, 1068 1427, 1429, 1431, 1433, 1438, 1439, 1445, 1446, 1448, 1450, 1069 1455, 1457, 1459, 1461, 1466, 1467, 1469, 1471, 1476, 1477, 1070 1479, 1484, 1485, 1487, 1489, 1494, 1496, 1498, 1503, 1504, 1071 1508, 1510, 1516, 1515, 1519, 1521, 1526, 1528, 1534, 1535, 1072 1540, 1541, 1543, 1544, 1553, 1554, 1556, 1558, 1563, 1565, 1073 1571, 1572, 1574, 1577, 1580, 1585, 1586, 1591, 1596, 1600, 1074 1602, 1608, 1607, 1614, 1616, 1622, 1623, 1631, 1632, 1636, 1075 1637, 1638, 1640, 1642, 1649, 1650, 1652, 1654, 1659, 1660, 1076 1666, 1667, 1671, 1672, 1677, 1678, 1679, 1681, 1689, 1690, 1077 1692, 1695, 1697, 1701, 1702, 1703, 1705, 1707, 1711, 1716, 1078 1724, 1725, 1734, 1736, 1741, 1742, 1743, 1747, 1748, 1749, 1079 1753, 1754, 1755, 1759, 1760, 1761, 1766, 1767, 1768, 1769, 1080 1775, 1776, 1778, 1783, 1784, 1789, 1790, 1791, 1792, 1793, 1081 1808, 1809, 1814, 1815, 1821, 1823, 1826, 1828, 1830, 1853, 1082 1854, 1856, 1858, 1863, 1864, 1866, 1871, 1876, 1877, 1883, 1083 1882, 1886, 1890, 1892, 1894, 1896, 1902, 1903, 1908, 1913, 1084 1915, 1920, 1922, 1923, 1925, 1930, 1932, 1934, 1939, 1941, 1085 1946, 1951, 1959, 1965, 1964, 1978, 1979, 1984, 1985, 1989, 1086 1994, 1999, 2007, 2012, 2023, 2024, 2029, 2030, 2036, 2037, 1087 2041, 2042, 2043, 2046, 2045, 2056, 2065, 2071, 2077, 2086, 1088 2092, 2098, 2104, 2110, 2118, 2124, 2132, 2138, 2147, 2148, 1089 2149, 2153, 2159, 2160, 2166, 2167, 2171, 2172, 2177, 2182, 1090 2183, 2189, 2190, 2192, 2197, 2198, 2199, 2200, 2235, 2237, 1091 2238, 2240, 2245, 2250, 2255, 2257, 2259, 2264, 2266, 2268, 1092 2270, 2275, 2277, 2286, 2288, 2289, 2294, 2296, 2298, 2303, 1093 2305, 2307, 2312, 2314, 2316, 2325, 2326, 2327, 2331, 2333, 1094 2335, 2340, 2342, 2344, 2349, 2351, 2353, 2368, 2370, 2371, 1095 2373, 2378, 2379, 2384, 2386, 2388, 2393, 2395, 2397, 2399, 1096 2404, 2406, 2408, 2418, 2420, 2421, 2423, 2428, 2430, 2432, 1097 2437, 2439, 2441, 2443, 2448, 2450, 2452, 2483, 2485, 2486, 1098 2488, 2493, 2498, 2506, 2508, 2510, 2515, 2517, 2522, 2524, 1099 2538, 2539, 2541, 2546, 2548, 2550, 2552, 2554, 2559, 2560, 1100 2562, 2564, 2569, 2571, 2573, 2579, 2581, 2583, 2587, 2589, 1101 2591, 2593, 2607, 2608, 2610, 2615, 2617, 2619, 2621, 2623, 1102 2628, 2629, 2631, 2633, 2638, 2640, 2642, 2648, 2649, 2651, 1103 2660, 2663, 2665, 2668, 2670, 2672, 2685, 2686, 2688, 2693, 1104 2695, 2697, 2699, 2701, 2706, 2707, 2709, 2711, 2716, 2718, 1105 2726, 2727, 2728, 2733, 2734, 2738, 2740, 2742, 2744, 2746, 1106 2748, 2755, 2757, 2759, 2761, 2763, 2766, 2768, 2770, 2772, 1107 2774, 2779, 2781, 2783, 2788, 2814, 2815, 2817, 2821, 2822, 1108 2826, 2828, 2830, 2832, 2834, 2836, 2843, 2845, 2847, 2849, 1109 2851, 2853, 2858, 2865, 2867, 2885, 2887, 2892, 2893 1110 1110 }; 1111 1111 #endif … … 1198 1198 "function_definition", "declarator", "subrange", "asm_name_opt", 1199 1199 "attribute_list_opt", "attribute_list", "attribute", 1200 "attribute_ parameter_list", "attrib", "any_word", "variable_declarator",1201 " paren_identifier", "variable_ptr", "variable_array",1202 "variable_ function", "function_declarator", "function_no_ptr",1203 "function_ ptr", "function_array", "old_function_declarator",1204 "old_function_ no_ptr", "old_function_ptr", "old_function_array",1205 " variable_type_redeclarator", "paren_type", "type_ptr", "type_array",1206 "type_ function", "identifier_parameter_declarator",1207 "identifier_parameter_ ptr", "identifier_parameter_array",1208 "identifier_parameter_ function", "type_parameter_redeclarator",1209 "type def", "type_parameter_ptr", "type_parameter_array",1210 "type_parameter_ function", "abstract_declarator", "abstract_ptr",1211 "abstract_ array", "abstract_function", "array_dimension",1200 "attribute_name_list", "attribute_name", "attr_name", 1201 "variable_declarator", "paren_identifier", "variable_ptr", 1202 "variable_array", "variable_function", "function_declarator", 1203 "function_no_ptr", "function_ptr", "function_array", 1204 "old_function_declarator", "old_function_no_ptr", "old_function_ptr", 1205 "old_function_array", "variable_type_redeclarator", "paren_type", 1206 "type_ptr", "type_array", "type_function", 1207 "identifier_parameter_declarator", "identifier_parameter_ptr", 1208 "identifier_parameter_array", "identifier_parameter_function", 1209 "type_parameter_redeclarator", "typedef", "type_parameter_ptr", 1210 "type_parameter_array", "type_parameter_function", "abstract_declarator", 1211 "abstract_ptr", "abstract_array", "abstract_function", "array_dimension", 1212 1212 "multi_array_dimension", "abstract_parameter_declarator", 1213 1213 "abstract_parameter_ptr", "abstract_parameter_array", … … 1464 1464 0, 299, 0, 262, 2, 263, 282, 0, 0, 2, 1465 1465 298, 552, 298, 492, 494, 493, 495, 0, 0, 757, 1466 0, 298, 0, 298, 497, 298, 567, 56 5, 566, 564,1466 0, 298, 0, 298, 497, 298, 567, 564, 565, 566, 1467 1467 0, 559, 562, 0, 0, 298, 64, 298, 78, 59, 1468 1468 298, 66, 298, 298, 62, 63, 2, 132, 0, 0, … … 1487 1487 538, 298, 72, 3, 298, 440, 299, 3, 434, 435, 1488 1488 2, 0, 0, 0, 491, 310, 298, 0, 487, 489, 1489 3, 2, 2, 0, 509, 3, 0, 561, 134, 0,1489 3, 2, 2, 0, 509, 3, 0, 561, 40, 0, 1490 1490 0, 227, 0, 0, 0, 0, 41, 0, 0, 298, 1491 1491 24, 0, 25, 0, 699, 704, 455, 696, 554, 554, … … 1508 1508 111, 406, 755, 0, 0, 443, 245, 0, 0, 3, 1509 1509 2, 675, 436, 0, 534, 0, 757, 758, 496, 0, 1510 298, 298, 298, 0, 558, 560, 135, 0, 0, 220,1511 0, 0, 0, 228, 229, 65, 0, 67, 70, 71,1512 0, 133, 0, 0, 0, 700, 701, 697, 698, 465,1513 79, 115, 130, 3, 114, 0, 28, 40, 3, 0,1514 37, 110, 0, 3, 657, 661, 664, 656, 3, 599,1515 72 3, 728, 2, 72, 298, 3, 3, 299, 0, 3,1516 6 29, 633, 636, 645, 679, 683, 686, 298, 3, 628,1517 6 44, 678, 298, 298, 431, 298, 298, 0, 0, 0,1518 0, 261, 111, 0, 3, 3, 0, 468, 0, 464,1519 0, 0, 250, 298, 0, 0, 134, 0, 0, 0,1520 0, 0, 134, 0, 0, 114, 114, 21, 0, 0,1521 3, 136, 137, 2, 148, 138, 139, 140, 141, 142,1522 1 43, 150, 152, 0, 0, 0, 289, 298, 298, 554,1523 0, 547, 298, 381, 383, 0, 397, 700, 392, 396,1524 393, 386, 390, 373, 404, 0, 586, 2, 671, 670,1525 0, 676, 2, 488, 490, 511, 3, 519, 520,0,1526 2, 515, 3, 3, 0, 0, 563, 227, 0, 0,1527 0, 227, 0, 0, 703, 707, 709, 702, 755, 114,1528 0, 3, 54, 0, 54, 54, 3, 42, 44, 39,1529 0, 3, 109, 0, 2, 659, 660, 0, 298, 0,1530 0, 0, 3, 645, 0, 2, 631, 632, 2, 647,1531 2, 6 81, 682, 0, 0, 72, 0, 3, 3, 3,1532 3, 416, 415, 419, 754, 2, 2, 753, 0, 0,1533 0, 0, 3, 469, 3, 0, 248, 151, 3, 299,1534 298, 0, 0, 0, 0, 2, 0, 196, 0, 194,1535 0, 0, 0, 0, 0, 0, 0, 554, 0, 156,1536 153, 298, 0, 0, 271, 283, 3, 3, 553, 620,1537 374, 389, 402, 298, 270, 298, 0, 522, 499, 298,1538 0, 0, 498, 513, 0, 0, 0, 221, 0, 230,1539 68, 2, 705, 706, 0, 131, 128, 0, 51, 2,1540 45, 52, 53, 0, 0, 0, 0, 27, 0, 662,1541 298, 587, 731, 732, 733, 0, 684, 298, 298, 298,1542 3, 3, 0, 692, 0, 0, 0, 0, 298, 298,1543 3, 551, 475, 476, 0, 251, 299, 0, 0, 0,1544 0, 298, 197, 195, 192, 0, 198, 0, 0, 0,1545 0, 202, 205, 203, 199, 0, 200, 134, 40, 149,1546 147, 249, 0, 0, 423, 427, 426, 0, 516, 2,1547 517, 2, 518, 512, 298, 233, 0, 231, 0, 233,1548 2 98, 36, 129, 55, 0, 43, 33, 2, 49, 2,1549 4 7, 30, 3, 734, 3, 3, 3, 0, 0, 691,1550 693, 634, 648, 273, 2, 413, 3, 412, 0, 478,1551 134, 0, 0, 134, 3, 0, 134, 193, 0, 2,1552 2, 214, 204, 0, 0, 0, 145, 0, 581, 621,1553 2, 0, 0, 2, 234, 0, 0, 222, 0, 3,1554 3, 0, 0, 0, 0, 0, 0, 694, 695, 298,1555 0, 477, 157, 0, 0, 2, 170, 134, 159, 0,1556 187, 0, 134, 0, 2, 161, 0, 2, 0, 2,1557 2, 2, 201, 37, 298, 521, 523, 514, 0, 0,1558 0, 0, 0, 0, 3, 3, 663, 635, 649, 685,1559 417, 134, 163, 166, 0, 165, 169, 3, 172, 171,1560 0, 134, 189, 134, 3, 0, 298, 0, 298, 0,1561 2, 0, 2, 144, 2, 235, 236, 0, 232, 223,1562 708, 46, 0, 0, 158, 0, 0, 168, 238, 173,1563 2, 240, 188, 0, 191, 177, 206, 3, 215, 219,1564 208, 3, 0, 298, 0, 298, 0, 0, 0, 50,1565 48, 164, 167, 134, 0, 174, 298, 134, 134, 0,1566 17 8, 0, 0, 699, 216, 217, 218, 0, 207, 3,1567 2 09, 3, 298, 224, 237, 154, 175, 160, 134, 241,1568 1 90, 185, 183, 179, 162, 134, 0, 700, 0, 0,1569 0, 0, 155, 176, 186, 180, 184, 183, 181, 3,1570 3, 0, 0, 500, 182, 210, 212, 3, 3, 211,1571 21 31510 298, 298, 298, 0, 558, 560, 0, 0, 220, 0, 1511 0, 0, 228, 229, 65, 0, 67, 70, 71, 0, 1512 133, 0, 0, 0, 700, 701, 697, 698, 465, 79, 1513 115, 130, 3, 114, 0, 28, 40, 3, 0, 37, 1514 110, 0, 3, 657, 661, 664, 656, 3, 599, 723, 1515 728, 2, 72, 298, 3, 3, 299, 0, 3, 629, 1516 633, 636, 645, 679, 683, 686, 298, 3, 628, 644, 1517 678, 298, 298, 431, 298, 298, 0, 0, 0, 0, 1518 261, 111, 0, 3, 3, 0, 468, 0, 464, 0, 1519 0, 250, 298, 0, 0, 134, 0, 0, 0, 0, 1520 0, 134, 0, 0, 114, 114, 21, 365, 446, 69, 1521 0, 22, 135, 0, 3, 136, 137, 2, 148, 138, 1522 139, 140, 141, 142, 143, 150, 0, 152, 0, 0, 1523 0, 289, 298, 298, 554, 0, 547, 298, 381, 383, 1524 0, 397, 700, 392, 396, 393, 386, 390, 373, 404, 1525 0, 586, 2, 671, 670, 0, 676, 2, 488, 490, 1526 511, 3, 519, 520, 0, 2, 515, 3, 3, 0, 1527 0, 563, 227, 0, 0, 0, 227, 0, 0, 703, 1528 707, 709, 702, 755, 114, 0, 3, 54, 0, 54, 1529 54, 3, 42, 44, 39, 0, 3, 109, 0, 2, 1530 659, 660, 0, 298, 0, 0, 0, 3, 645, 0, 1531 2, 631, 632, 2, 647, 2, 681, 682, 0, 0, 1532 72, 0, 3, 3, 3, 3, 416, 415, 419, 754, 1533 2, 2, 753, 0, 0, 0, 0, 3, 469, 3, 1534 0, 248, 151, 3, 299, 298, 0, 0, 0, 0, 1535 2, 196, 0, 194, 0, 0, 0, 0, 0, 0, 1536 0, 0, 0, 156, 153, 298, 0, 554, 0, 271, 1537 283, 3, 3, 553, 620, 374, 389, 402, 298, 270, 1538 298, 0, 522, 499, 298, 0, 0, 498, 513, 0, 1539 0, 0, 221, 0, 230, 68, 2, 705, 706, 0, 1540 131, 128, 0, 51, 2, 45, 52, 53, 0, 0, 1541 0, 0, 27, 0, 662, 298, 587, 731, 732, 733, 1542 0, 684, 298, 298, 298, 3, 3, 0, 692, 0, 1543 0, 0, 0, 298, 298, 3, 551, 475, 476, 0, 1544 251, 299, 0, 0, 0, 0, 298, 197, 195, 0, 1545 192, 198, 0, 0, 0, 0, 202, 205, 203, 199, 1546 0, 200, 40, 149, 147, 134, 249, 0, 0, 423, 1547 427, 426, 0, 516, 2, 517, 2, 518, 512, 298, 1548 233, 0, 231, 0, 233, 298, 36, 129, 55, 0, 1549 43, 33, 2, 49, 2, 47, 30, 3, 734, 3, 1550 3, 3, 0, 0, 691, 693, 634, 648, 273, 2, 1551 413, 3, 412, 0, 478, 134, 0, 0, 134, 3, 1552 0, 134, 193, 0, 2, 2, 214, 204, 0, 0, 1553 0, 0, 145, 581, 621, 2, 0, 0, 2, 234, 1554 0, 0, 222, 0, 3, 3, 0, 0, 0, 0, 1555 0, 0, 694, 695, 298, 0, 477, 157, 0, 0, 1556 2, 170, 134, 159, 0, 187, 0, 134, 0, 2, 1557 161, 0, 2, 0, 2, 2, 2, 201, 37, 298, 1558 521, 523, 514, 0, 0, 0, 0, 0, 0, 3, 1559 3, 663, 635, 649, 685, 417, 134, 163, 166, 0, 1560 165, 169, 3, 172, 171, 0, 134, 189, 134, 3, 1561 0, 298, 0, 298, 0, 2, 0, 2, 144, 2, 1562 235, 236, 0, 232, 223, 708, 46, 0, 0, 158, 1563 0, 0, 168, 238, 173, 2, 240, 188, 0, 191, 1564 177, 206, 3, 215, 219, 208, 3, 0, 298, 0, 1565 298, 0, 0, 0, 50, 48, 164, 167, 134, 0, 1566 174, 298, 134, 134, 0, 178, 0, 0, 699, 216, 1567 217, 218, 0, 207, 3, 209, 3, 298, 224, 237, 1568 154, 175, 160, 134, 241, 190, 185, 183, 179, 162, 1569 134, 0, 700, 0, 0, 0, 0, 155, 176, 186, 1570 180, 184, 183, 181, 3, 3, 0, 0, 500, 182, 1571 210, 212, 3, 3, 211, 213 1572 1572 }; 1573 1573 … … 1576 1576 { 1577 1577 -1, 803, 466, 303, 49, 135, 136, 304, 305, 306, 1578 307, 308, 755, 756, 11 16, 1117, 1118, 1228, 309, 380,1578 307, 308, 755, 756, 1121, 1122, 1123, 1233, 309, 380, 1579 1579 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 1580 321, 322, 323, 101 3, 517, 962, 546, 325, 963, 936,1581 10 39, 1505, 1041, 1042, 1043, 1044, 1506, 1045, 1046, 1423,1582 142 4, 1386, 1387, 1388, 1484, 1485, 1489, 1490, 1525, 1526,1583 10 47, 1345, 1048, 1049, 1281, 1282, 1283, 1467, 1050, 147,1584 94 2, 943, 944, 1365, 1447, 1459, 1460, 467, 468, 863,1585 864, 102 1, 53, 54, 55, 56, 57, 347, 159, 60,1580 321, 322, 323, 1012, 517, 961, 546, 325, 962, 1042, 1581 1043, 1510, 1045, 1046, 1047, 1048, 1511, 1049, 1050, 1428, 1582 1429, 1391, 1392, 1393, 1489, 1490, 1494, 1495, 1530, 1531, 1583 1051, 1350, 1052, 1053, 1286, 1287, 1288, 1472, 1054, 147, 1584 941, 942, 943, 1370, 1452, 1464, 1465, 467, 468, 863, 1585 864, 1020, 53, 54, 55, 56, 57, 347, 159, 60, 1586 1586 61, 62, 63, 64, 349, 66, 67, 265, 69, 70, 1587 1587 275, 351, 352, 73, 74, 75, 120, 77, 205, 354, 1588 1588 121, 80, 122, 82, 83, 453, 84, 452, 682, 683, 1589 684, 896, 10 68, 897, 85, 86, 456, 454, 690, 845,1589 684, 896, 1073, 897, 85, 86, 456, 454, 690, 845, 1590 1590 846, 357, 358, 693, 694, 695, 359, 360, 361, 362, 1591 464, 178, 137, 138, 521, 327, 171, 639, 640, 641,1591 464, 1056, 137, 138, 521, 327, 171, 639, 640, 641, 1592 1592 642, 643, 87, 123, 89, 488, 489, 928, 490, 278, 1593 494, 328, 90, 139, 140, 91, 130 4, 1090, 1091, 1092,1594 109 3, 92, 93, 711, 94, 274, 95, 96, 188, 1015,1593 494, 328, 90, 139, 140, 91, 1309, 1095, 1096, 1097, 1594 1098, 92, 93, 711, 94, 274, 95, 96, 188, 1014, 1595 1595 673, 411, 127, 97, 500, 501, 502, 189, 269, 191, 1596 1596 192, 193, 270, 100, 101, 102, 103, 104, 105, 106, 1597 1597 196, 197, 198, 199, 200, 815, 601, 602, 603, 604, 1598 1598 201, 606, 607, 608, 570, 571, 572, 573, 745, 107, 1599 610, 611, 612, 613, 614, 615, 95 6, 747, 748, 749,1599 610, 611, 612, 613, 614, 615, 955, 747, 748, 749, 1600 1600 591, 365, 366, 367, 368, 329, 165, 109, 110, 111, 1601 1601 370, 688, 718 … … 1604 1604 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 1605 1605 STATE-NUM. */ 1606 #define YYPACT_NINF -1 2631606 #define YYPACT_NINF -1328 1607 1607 static const yytype_int16 yypact[] = 1608 1608 { 1609 6864, 4432, -1263, 10, -1263, -1263, -1263, -1263, -1263, -1263,1610 -1 263, -12, -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263,1611 -1 263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, 67, 67,1612 67, 564, 950, 20, 6985, 166, -1263, -1263, -1263, -1263,1613 -1 263, 71, -1263, -1263, -1263, 1431, 111, -1263, -1263, -1263,1614 -1 263, 3253, -1263, -1263, -1263, -1263, 83, 193, -1263, 1119,1615 -1 263, -1263, -1263, -1263, 213, 1691, 349, 98, 7106, -1263,1616 -1 263, 3253, 817, -1263, -1263, 596, 492, 5210, 1011, 1044,1617 596, 1122, -1263, -1263, 838, 957, -1263, 596, 1203, -1263,1618 236, -1263, 406, 508, -1263, -1263, -1263, -1263, 429, 193,1619 67, -1263, 67, -1263, -1263, -1263, -1263, 4697, 1119, -1263,1620 -1 263, 1119, -1263, 434, -1263, 7806, -1263, -1263, 2149, 8896,1621 -1 263, 644, 644, 644, -1263, -1263, -1263, 67, -1263, -1263,1622 -1 263, 436, 458, 468, -1263, -1263, -1263, 480, -1263, -1263,1623 -1 263, -1263, -1263, 498, 503, -1263, -1263, 77, 8347, 2436,1624 255, 519, 522, 535, 547, 585, 603, 8929, 6488, 597,1625 -1 263, 4574, -1263, -1263, -1263, -1263, 608, -1263, -37, 5487,1626 5487, -1263, 539, 241, -1263, -1263, -1263, -1263, 624, 287,1627 3 13, 327, 67, 621, -1263, -1263, 1691, 2813, 734, -1263,1628 120, -1263, 67, 67, 193, -1263, -1263, 204, -1263, 67,1629 67, -1263, 2931, 664, 675, 644, 6274, -1263, -1263, -1263,1630 3253, -1263, -1263, 596, -1263, -1263, -1263, 193, -1263, 1119,1631 83, -1263, 7457, -1263, 644, 644, 644, 193, -1263, 564,1632 -1 263, 3379, -1263, -1263, 671, 644, -1263, 644, -1263, 71,1633 8 347, -1263, 715, -1263, 950, 724, 644, -1263, 564, 704,1634 714, -1263, 6985, 544, -1263, -1263, -1263, 8708, -1263, -1263,1635 8 263, -1263, 734, 123, 9697, 8896, 2149, 2931, -1263, 205,1636 -1 263, -1263, 7806, 1119, 738, 5343, -1263, -1263, 211, -1263,1637 10116, 739, 650, 9756, 757, 9697, 9815, -1263, 763, -1263,1638 -1 263, -1263, -1263, -1263, -1263, 9874, 9874, 8111, 111, -1263,1639 -1 263, -1263, -1263, -1263, -1263, -1263, 795, -1263, 1259, 2219,1640 8 347, 9697, -1263, 496, 315, 375, 430, 719, 760, 770,1641 7 71, 807, 114, -1263, -1263, -1263, 814, -1263, 402, -1263,1642 -1 263, 2436, -1263, -1263, 104, 792, -1263, 372, 792, -1263,1643 -1 263, 4697, -1263, 802, 812, 8465, -1263, -1263, 721, 1811,1644 7892, 6274, 596, -1263, 596, 644, 644, -1263, -1263, -1263,1645 -1 263, -1263, -1263, 644, 4697, 1119, -1263, -1263, 8929, 1749,1646 -1 263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, 4858,1647 9697, -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263,1648 -1 263, -1263, -1263, -1263, -1263, 2149, -1263, 677, 823, 827,1649 8 29, 862, 831, 834, 836, 2813, -1263, -1263, 842, 83,1650 841, -1263, -1263, 837, -1263, -1263, -1263, 8708, -1263, -1263,1651 -1 263, -1263, -1263, 2931, -1263, 8347, 8347, -1263, 644, 2149,1652 6 398, 7967, -1263, -1263, -1263, -1263, 8708, 123, -1263, -1263,1653 596, 193, -1263, -1263, 8708, -1263, 5038, -1263, -1263, 644,1654 644, 474, 8741, 848, 849, 824, 850, 644, -1263, -1263,1655 -1 263, -1263, 9167, -1263, 507, 10150, -1263, 193, 853, -1263,1656 2 149, 10237, 9933, -1263, -1263, -1263, -1263, 898, 2931, -1263,1657 7967, 734, 5424, -1263, -1263, -1263, -1263, 1676, 514, 844,1658 950, 5343, 1027, 7806, -1263, 5343, -1263, -1263, -1263, -1263,1659 545, -1263, 859, 650, 244, 8111, -1263, 9014, -1263, -1263,1660 8 111, -1263, 8229, 8111, -1263, -1263, 111, -1263, 548, 867,1661 926, 872, -1263, -1263, 6240, -1263, -1263, 387, -1263, -1263,1662 9697, -1263, 467, 9697, -1263, -1263, -1263, -1263, -1263, -1263,1663 -1 263, -1263, -1263, -1263, -1263, -1263, 9697, -1263, -1263, 9697,1664 9697, 9697, 9697, 9697, 9697, 9697, 9697, 9697, 9697, 9697,1665 9697, 9697, 9697, 9697, 9697, 9697, 9697, 4047, 814, 1636,1666 -1 263, -1263, 67, 67, -1263, -1263, 8347, -1263, -1263, 837,1667 544, -1263, 837, 9992, -1263, -1263, 8929, 6240, 873, -1263,1668 8896, -1263, -1263, 608, -1263, 880, 787, 882, 2301, 259,1669 844, -1263, 67, 67, 844, 286, -1263, 67, 67, 837,1670 -1 263, -1263, 67, 67, -1263, 792, 9047, 1119, 10388, 450,1671 493, 9047, -1263, 8263, -1263, 844, -1263, 4697, -1263, -35,1672 7577, 7577, 1119, 5632, 869, -1263, 326, 874, 889, -1263,1673 881, 5487, 342, -1263, 977, 1119, 7577, 544, 2149, 544,1674 734, 382, 792, -1263, -1263, 405, 792, -1263, -1263, -1263,1675 650, -1263, 792, 193, 9167, -1263, 570, 918, 602, 921,1676 -1 263, 802, 193, -1263, -1263, 8708, 193, 940, 9014, 111,1677 -1 263, 1310, -1263, 353, 395, 950, -1263, 950, 941, 9697,1678 -1 263, 950, 10388, -1263, -1263, 948, -1263, -1263, -1263, 544,1679 -1 263, 10313, 812, -1263, 7577, 987, 7892, -1263, -1263, 608,1680 9 55, 960, 1676, 3085, -1263, -1263, 5343, 9697, -1263, -1263,1681 9 47, -1263, -1263, 956, -1263, 947, 967, 10116, 9697, 949,1682 9 54, 180, 972, 975, 984, 993, -1263, 1002, 1005, 6240,1683 -1 263, 9697, -1263, 926, 1965, -1263, -1263, -1263, 67, 67,1684 9638, 9697, 992, -1263, -1263, 615, -1263, 9697, -1263, -1263,1685 7 11, -1263, -1263, -1263, -1263, 496, 496, 315, 315, 375,1686 375, 375, 375, 430, 430, 719, 760, 770, 771, 807,1687 9697, 330, 9167, 1006, 1007, 1008, 1636, -1263, -1263, -1263,1688 -1 263, -1263, 9167, 620, -1263, 4697, -1263, 6612, 8583, -1263,1689 -1 263, -1263, 787, 9167, 937, 1012, 1014, 1022, 1023, 1024,1690 10 29, 1036, -1263, 3424, 2301, -1263, -1263, -1263, -1263, -1263,1691 -1 263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263,1692 -1 263, -1263, 837, -1263, -1263, -1263, 844, -1263, -1263, -1263,1693 -1 263, -1263, -1263, -1263, -1263, -1263, -1263, 1039, 1043, -1263,1694 83, 992, 5632, -1263, -1263, -1263, 4858, 1042, -1263, -1263,1695 -1 263, -1263, 950, 5809, 1095, -1263, -1263, -1263, -1263, 1030,1696 83, -1263, -1263, 837, -1263, -1263, 837, 1048, 837, -1263,1697 -1 263, -1263, -1263, -1263, -1263, 6488, -1263, 193, -1263, -1263,1698 4 07, 410, 6488, 2038, 9697, 2697, -1263, -1263, 1037, 53,1699 10 37, -1263, 950, -1263, 67, -1263, -1263, 8781, 824, -1263,1700 -1 263, -1263, 849, 1059, 1021, -1263, -1263, 1062, 1063, -1263,1701 987, 2296, -1263, 528, -1263, 3085, 844, -1263, -1263, 1071,1702 5343, 7806, 8347, 1073, -1263, -1263, 1074, 1084, 1066, -1263,1703 9697, 1088, 282, 1083, -1263, 1091, 544, 1091, -1263, -1263,1704 1091, -1263, 1097, 1105, 1115, 1965, -1263, -1263, -1263, 4858,1705 -1 263, -1263, -1263, 1113, 9697, 605, -1263, 9697, -1263, 605,1706 -1 263, -1263, 9697, -1263, 424, 792, -1263, -1263, -1263, -1263,1707 -1 263, -1263, -1263, 812, 8465, -1263, -1263, 6736, 1120, -1263,1708 568, 792, -1263, 594, 631, 792, -1263, 644, 3969, -1263,1709 -1 263, -1263, 9167, 9167, -1263, 7967, 7967, 1123, 1118, 1127,1710 1125, -1263, 558, 212, 992, -1263, 605, -1263, 5487, -1263,1711 9697, 420, -1263, 6116, 1129, 1135, 9579, 1136, 1137, 146,1712 206, 181, 9697, 1140, 193, 9697, 9697, 1106, 305, 1124,1713 -1263, -1263, -1263, 1143, -1263, -1263, -1263, -1263, -1263, -1263,1714 -1 263, -1263, -1263, 950, 1141, 9697, -1263, 9167, 9167, 67,1715 1150, -1263, 8856, -1263, -1263, 722, -1263, 2697, -1263, -1263,1716 -1263, -1263, 1310, -1263, -1263, 1148, -1263, -1263, -1263, -1263,1717 11 54, 2296, -1263, -1263, 1139, -1263, 947, -1263, -1263, 2149,1718 1158, -1263, -1263, -1263, 627, 1151, -1263, 180, 1138, 9697,1719 114 6, 180, 180, 1165, 653, 792, -1263, -1263, 881, 9697,1720 1164, 1113, -1263, 1068, -1263, -1263, 1163, -1263, 219, -1263,1721 1168, 1163, -1263, 1171, -1263, -1263, 837, 1173, 6364, 1172,1722 1175, 1177, -1263, -1263, 1180, -1263, -1263, 837, -1263, -1263,1723 -1 263, -1263, 837, 9697, 9697, 812, 1179, -1263, -1263, -1263,1724 -1263, -1263, -1263, -1263, -1263, -1263, -1263, -1263, 9697, 9697,1725 1182, 1184, 1163, -1263, -1263, 950, -1263, -1263, -1263, 7382,1726 7806, 9697, 9697, 1240, 9697, -1263, 1160, -1263, 1170, -1263,1727 1174, 9697, 1178, 9697, 1032, 1185, 59, 67, 1380, -1263,1728 -1263, 5809, 1189, 442, -1263, -1263, -1263, -1263, -1263, -1263,1729 -1 263, -1263, -1263, 9395, -1263, 7967, 1190, -1263, -1263, 7806,1730 454, 456, -1263, 1197, 1193, 650, 1210, -1263, 295, -1263,1731 -1263, -1263, -1263, 837, 1213, -1263, -1263, 1220, 1252, -1263,1732 -1 263, 1252, 1252, 605, 1222, 1144, 1570, -1263, 1237, -1263,1733 9167, -1263, -1263, -1263, -1263, 1238, -1263, 9167, 9167, 9167,1734 -1263, -1263, 1239, -1263, 1241, 1242, 1245, 586, 7652, 7772,1735 -1263, -1263, -1263, -1263, 1244, -1263, 8042, 635, 640, 1249,1736 662, 5981, -1263, -1263, -1263, 460, -1263, 666, 1250, 1251,1737 193, 1306, 785, -1263, -1263, 9697, -1263, 9579, 9697, -1263,1738 -1263, -1263, 1255, 1257, -1263, -1263, -1263, 1262, -1263, -1263,1739 -1 263, -1263, -1263, -1263, 7806, 650, 1270, -1263, 1254, 650,1740 9167, -1263, -1263, -1263, 605, -1263, -1263, -1263, -1263, -1263,1741 -1 263, -1263, -1263, -1263, -1263, -1263, -1263, 1278, 1279, -1263,1742 -1 263, -1263, -1263, -1263, -1263, -1263, 1282, -1263, 1284, -1263,1743 9579, 89, 9697, 9579, -1263, 1287, 9697, -1263, 136, 1302,1744 1 311, -1263, -1263, 1297, 1299, 1280, -1263, 753, -1263, -1263,1745 -1263, 1119, 2149, 1300, -1263, 338, 9697, -1263, 667, -1263,1746 1163, 605, 605, 1314, 1315, 1320, 1328, -1263, -1263, 7967,1747 13 04, -1263, 1376, 9697, 1309, -1263, -1263, 9489, -1263, 690,1748 -1 263, 1313, 9579, 1321, -1263, -1263, 1331, -1263, 1333, -1263,1749 1351, 1361, -1263, 1337, 7806, -1263, -1263, -1263, 650, 544,1750 1362, 1339, 1365, 1364, 1163, 1163, -1263, -1263, -1263, -1263,1751 -1263, 9579, 234, -1263, 427, -1263, -1263, 7227, -1263, -1263,1752 1346, 9697, -1263, 9697, 7227, 193, 9014, 193, 9014, 1369,1753 -1263, 1370, -1263, -1263, 1367, -1263, -1263, 697, -1263, -1263,1754 -1 263, -1263, 1371, 1373, -1263, 9697, 9697, -1263, -1263, 839,1755 85, -1263, -1263, 1358, -1263, 839, -1263, -1263, 2097, 544,1756 -1263, -1263, 193, 9014, 193, 9014, 1387, 1366, 544, -1263,1757 -1263, -1263, -1263, 9489, 1384, 839, 7306, 9697, 9399, 1388,1758 8 39, 1392, 2097, 3030, -1263, -1263, -1263, 1399, -1263, -1263,1759 -1 263, -1263, 8347, -1263, -1263, -1263, 9261, -1263, 9489, -1263,1760 -1 263, 1378, 9171, -1263, -1263, 9399, 193, 3030, 193, 1401,1761 1403, 712, -1263, 9261, -1263, -1263, -1263, 9171, -1263, -1263,1762 -1 263, 193, 193, -1263, -1263, -1263, -1263, -1263, -1263, -1263,1763 -1 2631609 7094, 5192, -1328, 47, -1328, -1328, -1328, -1328, -1328, -1328, 1610 -1328, 41, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 1611 -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 209, 209, 1612 209, 1263, 1027, 118, 7336, 312, -1328, -1328, -1328, -1328, 1613 -1328, 248, -1328, -1328, -1328, 1020, 187, -1328, -1328, -1328, 1614 -1328, 8977, -1328, -1328, -1328, -1328, 126, 266, -1328, 1653, 1615 -1328, -1328, -1328, -1328, 285, 1985, 410, 77, 7457, -1328, 1616 -1328, 8977, 983, -1328, -1328, 602, 416, 4937, 741, 1118, 1617 602, 1546, -1328, -1328, 1203, 473, -1328, 602, 1860, -1328, 1618 325, -1328, 471, 476, -1328, -1328, -1328, -1328, 367, 266, 1619 209, -1328, 209, -1328, -1328, -1328, -1328, 7962, 1653, -1328, 1620 -1328, 1653, -1328, 375, -1328, 8082, -1328, -1328, 2291, 9246, 1621 -1328, 847, 847, 847, -1328, -1328, -1328, 209, -1328, -1328, 1622 -1328, 408, 426, 461, -1328, -1328, -1328, 472, -1328, -1328, 1623 -1328, -1328, -1328, 508, 512, -1328, -1328, 103, 8623, 1598, 1624 500, 443, 518, 536, 544, 548, 556, 9286, 6718, 568, 1625 -1328, 9017, -1328, -1328, -1328, -1328, 575, -1328, 190, 3423, 1626 3423, -1328, 577, 294, -1328, -1328, -1328, -1328, 578, 352, 1627 387, 393, 209, 564, -1328, -1328, 1985, 3980, 641, -1328, 1628 84, -1328, 209, 209, 266, -1328, -1328, 214, -1328, 209, 1629 209, -1328, 4262, 597, 616, 847, 6752, -1328, -1328, -1328, 1630 8977, -1328, -1328, 602, -1328, -1328, -1328, 266, -1328, 1653, 1631 126, -1328, 7808, -1328, 847, 847, 847, 266, -1328, 1263, 1632 -1328, 6380, -1328, -1328, 600, 847, -1328, 847, -1328, 248, 1633 8623, -1328, 625, -1328, 1027, 697, 847, -1328, 1263, 667, 1634 675, -1328, 7336, 663, -1328, -1328, -1328, 3551, -1328, -1328, 1635 8539, -1328, 641, 128, 5841, 9246, 2291, 4262, -1328, 236, 1636 -1328, -1328, 8082, 1653, 700, 10420, -1328, -1328, 221, -1328, 1637 493, 710, 742, 6026, 753, 5841, 9865, -1328, 766, -1328, 1638 -1328, -1328, -1328, -1328, -1328, 9924, 9924, 8387, 187, -1328, 1639 -1328, -1328, -1328, -1328, -1328, -1328, 808, -1328, 2340, 2114, 1640 8623, 5841, -1328, 633, 22, 547, 447, 693, 771, 758, 1641 785, 800, 32, -1328, -1328, -1328, 572, -1328, 268, -1328, 1642 -1328, 1598, -1328, -1328, 329, 827, -1328, 417, 827, -1328, 1643 -1328, 7962, -1328, 807, 834, 8741, -1328, -1328, 1437, 2015, 1644 8168, 6752, 602, -1328, 602, 847, 847, -1328, -1328, -1328, 1645 -1328, -1328, -1328, 847, 7962, 1653, -1328, -1328, 9286, 1675, 1646 -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 4621, 1647 5841, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 1648 -1328, -1328, -1328, -1328, -1328, 2291, -1328, 818, 832, 839, 1649 851, 857, 865, 870, 881, 3980, -1328, -1328, 888, 126, 1650 903, -1328, -1328, 889, -1328, -1328, -1328, 3551, -1328, -1328, 1651 -1328, -1328, -1328, 4262, -1328, 8623, 8623, -1328, 847, 2291, 1652 6876, 8243, -1328, -1328, -1328, -1328, 3551, 128, -1328, -1328, 1653 602, 266, -1328, -1328, 3551, -1328, 6628, -1328, -1328, 847, 1654 847, 552, 5831, 902, 906, 897, 905, 847, -1328, -1328, 1655 -1328, -1328, 9444, -1328, 569, 10160, -1328, 266, 913, -1328, 1656 2291, 10200, 9983, -1328, -1328, -1328, -1328, 896, 4262, -1328, 1657 8243, 641, 7215, -1328, -1328, -1328, -1328, 1315, 613, 907, 1658 1027, 10420, 1475, 8082, -1328, 10420, -1328, -1328, -1328, -1328, 1659 654, -1328, 931, 742, 246, 8387, -1328, 9319, -1328, -1328, 1660 8387, -1328, 8505, 8387, -1328, -1328, 187, -1328, 666, 933, 1661 695, 936, -1328, -1328, 6470, -1328, -1328, 345, -1328, -1328, 1662 5841, -1328, 431, 5841, -1328, -1328, -1328, -1328, -1328, -1328, 1663 -1328, -1328, -1328, -1328, -1328, -1328, 5841, -1328, -1328, 5841, 1664 5841, 5841, 5841, 5841, 5841, 5841, 5841, 5841, 5841, 5841, 1665 5841, 5841, 5841, 5841, 5841, 5841, 5841, 4496, 572, 830, 1666 -1328, -1328, 209, 209, -1328, -1328, 8623, -1328, -1328, 889, 1667 663, -1328, 889, 10042, -1328, -1328, 9286, 6470, 929, -1328, 1668 9246, -1328, -1328, 575, -1328, 937, 947, 939, 3082, 257, 1669 907, -1328, 209, 209, 907, 260, -1328, 209, 209, 889, 1670 -1328, -1328, 209, 209, -1328, 827, 9404, 1653, 10351, 176, 1671 238, 9404, -1328, 8539, -1328, 907, -1328, 7962, -1328, 8, 1672 5680, 5680, 1653, 5204, 927, -1328, 546, 943, 945, -1328, 1673 950, 3423, 381, -1328, 1033, 1653, 5680, 663, 2291, 663, 1674 641, 477, 827, -1328, -1328, 604, 827, -1328, -1328, -1328, 1675 742, -1328, 827, 266, 9444, -1328, 678, 967, 680, 968, 1676 -1328, 807, 266, -1328, -1328, 3551, 266, 965, 9319, 187, 1677 -1328, 1893, -1328, 436, 439, 1027, -1328, 1027, 966, 5841, 1678 -1328, 1027, 10351, -1328, -1328, 972, -1328, -1328, -1328, 663, 1679 -1328, 10276, 834, -1328, 5680, 707, 8168, -1328, -1328, 575, 1680 973, 976, 1315, 1837, -1328, -1328, 10420, 5841, -1328, -1328, 1681 979, -1328, -1328, 993, -1328, 979, 982, 493, 5841, 977, 1682 974, 26, 1002, 998, 1007, 1008, -1328, 1011, 1012, 6470, 1683 -1328, 5841, -1328, 695, 1078, -1328, -1328, -1328, 209, 209, 1684 5376, 5841, 1015, -1328, -1328, 718, -1328, 5841, -1328, -1328, 1685 733, -1328, -1328, -1328, -1328, 633, 633, 22, 22, 547, 1686 547, 547, 547, 447, 447, 693, 771, 758, 785, 800, 1687 5841, 106, 9444, 1023, 1035, 1036, 830, -1328, -1328, -1328, 1688 -1328, -1328, 9444, 730, -1328, 7962, -1328, 6842, 8859, -1328, 1689 -1328, -1328, 947, 9444, 952, 1039, 1040, 1041, 1042, 1044, 1690 1046, 1047, -1328, 4747, 3082, -1328, -1328, -1328, -1328, -1328, 1691 -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 1692 -1328, -1328, 889, -1328, -1328, -1328, 907, -1328, -1328, -1328, 1693 -1328, -1328, -1328, -1328, -1328, -1328, -1328, 1053, 1054, -1328, 1694 126, 1015, 5204, -1328, -1328, -1328, 4621, 1051, -1328, -1328, 1695 -1328, -1328, 1027, 6163, 1143, -1328, -1328, -1328, -1328, 1049, 1696 126, -1328, -1328, 889, -1328, -1328, 889, 1060, 889, -1328, 1697 -1328, -1328, -1328, -1328, -1328, 6718, -1328, 266, -1328, -1328, 1698 444, 451, 6718, 2036, 5841, 3709, -1328, -1328, 1045, 40, 1699 1045, -1328, 1027, -1328, 209, -1328, -1328, 9131, 897, -1328, 1700 -1328, -1328, 906, 1061, 1056, -1328, -1328, 1069, 1072, -1328, 1701 707, 1770, -1328, 275, -1328, 1837, 907, -1328, -1328, 1076, 1702 10420, 8082, 8623, 1081, -1328, -1328, 734, 1058, -1328, 5841, 1703 1084, 279, 1082, -1328, 1080, 663, 1080, -1328, -1328, 1080, 1704 -1328, 1087, 1089, 1091, 1078, -1328, -1328, -1328, 4621, -1328, 1705 -1328, -1328, 1088, 5841, 919, -1328, 5841, -1328, 919, -1328, 1706 -1328, 5841, -1328, 611, 827, -1328, -1328, -1328, -1328, -1328, 1707 -1328, -1328, 834, 8741, -1328, -1328, 6966, 1093, -1328, 640, 1708 827, -1328, 652, 657, 827, -1328, 847, 4999, -1328, -1328, 1709 -1328, 9444, 9444, -1328, 8243, 8243, 1096, 1094, 1095, 1099, 1710 -1328, 347, 89, 1015, -1328, 919, -1328, 3423, -1328, 5841, 1711 464, -1328, 6346, 1103, 1105, 9806, 1107, 1112, 627, 759, 1712 1566, 5841, 1115, 266, 5841, 5841, 1092, 1104, 248, 228, 1713 302, 1108, 1123, 1097, -1328, -1328, -1328, 1128, -1328, -1328, 1714 -1328, -1328, -1328, -1328, -1328, -1328, 1119, -1328, 1027, 1138, 1715 5841, -1328, 9444, 9444, 209, 1140, -1328, 9171, -1328, -1328, 1716 806, -1328, 3709, -1328, -1328, -1328, -1328, 1893, -1328, -1328, 1717 1136, -1328, -1328, -1328, -1328, 1144, 1770, -1328, -1328, 1127, 1718 -1328, 979, -1328, -1328, 2291, 1145, -1328, -1328, -1328, 749, 1719 1149, -1328, 26, 1146, 5841, 1132, 26, 26, 1157, 672, 1720 827, -1328, -1328, 950, 5841, 1159, 1088, -1328, 1148, -1328, 1721 -1328, 1158, -1328, 81, -1328, 1166, 1158, -1328, 1169, -1328, 1722 -1328, 889, 1171, 6594, 1173, 1184, 1185, -1328, -1328, 1189, 1723 -1328, -1328, 889, -1328, -1328, -1328, -1328, 889, 5841, 5841, 1724 834, 1188, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 1725 -1328, -1328, -1328, 5841, 5841, 1190, 1194, 1158, -1328, -1328, 1726 1027, -1328, -1328, -1328, 7733, 8082, 5841, 5841, 1274, 5841, 1727 -1328, -1328, 1191, -1328, 1192, 5841, 1199, 1206, 5841, 1013, 1728 1207, 37, 2395, -1328, -1328, 6163, 1211, 209, 482, -1328, 1729 -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 9622, -1328, 1730 8243, 1231, -1328, -1328, 8082, 492, 506, -1328, 1227, 1219, 1731 742, 1242, -1328, 293, -1328, -1328, -1328, -1328, 889, 1238, 1732 -1328, -1328, 1243, 1273, -1328, -1328, 1273, 1273, 919, 1245, 1733 1200, 1221, -1328, 1247, -1328, 9444, -1328, -1328, -1328, -1328, 1734 1251, -1328, 9444, 9444, 9444, -1328, -1328, 1252, -1328, 1254, 1735 1257, 1259, 446, 7928, 8048, -1328, -1328, -1328, -1328, 1258, 1736 -1328, 8318, 754, 762, 1267, 767, 3351, -1328, -1328, 507, 1737 -1328, -1328, 782, 1269, 1270, 266, 1323, 868, -1328, -1328, 1738 5841, -1328, 5841, -1328, -1328, 9806, -1328, 1272, 1280, -1328, 1739 -1328, -1328, 1277, -1328, -1328, -1328, -1328, -1328, -1328, 8082, 1740 742, 1284, -1328, 1264, 742, 9444, -1328, -1328, -1328, 919, 1741 -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, 1742 -1328, -1328, 1285, 1288, -1328, -1328, -1328, -1328, -1328, -1328, 1743 -1328, 1292, -1328, 1294, -1328, 9806, 292, 5841, 9806, -1328, 1744 1297, 5841, -1328, 298, 1308, 1314, -1328, -1328, 1302, 1303, 1745 1282, 817, -1328, -1328, -1328, -1328, 1653, 2291, 1300, -1328, 1746 139, 5841, -1328, 792, -1328, 1158, 919, 919, 1310, 1312, 1747 1313, 1317, -1328, -1328, 8243, 1309, -1328, 1388, 5841, 1299, 1748 -1328, -1328, 9716, -1328, 793, -1328, 1298, 9806, 1304, -1328, 1749 -1328, 1325, -1328, 1327, -1328, 1342, 1344, -1328, 1316, 8082, 1750 -1328, -1328, -1328, 742, 663, 1334, 1318, 1337, 1343, 1158, 1751 1158, -1328, -1328, -1328, -1328, -1328, 9806, 149, -1328, 165, 1752 -1328, -1328, 7578, -1328, -1328, 1322, 5841, -1328, 5841, 7578, 1753 266, 9319, 266, 9319, 1351, -1328, 1352, -1328, -1328, 1348, 1754 -1328, -1328, 794, -1328, -1328, -1328, -1328, 1347, 1355, -1328, 1755 5841, 5841, -1328, -1328, 893, 117, -1328, -1328, 1338, -1328, 1756 893, -1328, -1328, 2215, 663, -1328, -1328, 266, 9319, 266, 1757 9319, 1362, 1341, 663, -1328, -1328, -1328, -1328, 9716, 1365, 1758 893, 7657, 5841, 9626, 1366, 893, 1367, 2215, 3729, -1328, 1759 -1328, -1328, 1372, -1328, -1328, -1328, -1328, 8623, -1328, -1328, 1760 -1328, 9488, -1328, 9716, -1328, -1328, 1353, 5938, -1328, -1328, 1761 9626, 266, 3729, 266, 1376, 1377, 795, -1328, 9488, -1328, 1762 -1328, -1328, 5938, -1328, -1328, -1328, 266, 266, -1328, -1328, 1763 -1328, -1328, -1328, -1328, -1328, -1328 1764 1764 }; 1765 1765 … … 1767 1767 static const yytype_int16 yypgoto[] = 1768 1768 { 1769 -1 263, 3947, 2776, -1263, 44, -1263, 887, 695, -232, -1263,1770 -1 263, 487, -523, -501, -842, -960, -1263, -216, 4593, 0,1771 -1 263, 122, 359, 368, 437, 403, 964, 965, 963, 966,1772 9 69, -1263, 998, -607, 4667, -955, -1263, -1263, 569, -183,1773 - 658, 414, -1263, 1406, -1263, 347, -1148, -1263, -1263, 84,1774 -1 263, -949, -1074, 191, -1263, -1263, -1263, -1263, 17, -1186,1775 -1 263, -1263, -1263, -1263, -1263, -1263, 265, -1262, 33, -1263,1776 - 866, -1263, 445, 246, -1263, 124, -1263, -320, -1263, -1263,1777 -1 263, 506, -835, -1263, -1263, 19, -980, 55, 606, -1263,1778 -1 263, -1263, -220, -1263, 129, 1096, -190, 1478, 3486, -1263,1779 -1 263, 96, 144, 1103, 1793, -1263, 1550, -1263, -1263, 27,1780 19 89, -1263, 2286, 1081, -1263, -1263, -1263, -632, -1263, 884,1781 8 86, 488, 668, -575, -1263, -1263, -1263, 875, 659, -511,1782 -1 263, -466, -248, 801, -1263, -1263, -959, -944, -218, 636,1783 98 9, 92, -1263, 209, 354, -244, -203, -140, 611, 717,1784 -1 263, 932, -1263, 2427, 1924, -447, 860, -1263, -1263, 647,1785 -1 263, -235, -1263, 189, -1263, -1263, -1263, -1245, 370, -1263,1786 -1 263, -1263, 1098, -1263, 2, -1263, -1263, -849, -115, -1223,1787 -1 50, 2775, -1263, 2462, -1263, 854, -1263, -127, 40, -178,1788 -17 4, -173, 7, -43, -41, -36, 1803, 12, 18, 21,1789 -101, -168, -162, -160, -144, -317, -520, -513, -497, -545,1790 -3 00, -486, -1263, -1263, -547, 1009, 1026, 1028, 1598, 4212,1791 -5 63, -557, -544, -532, -458, -1263, -514, -722, -720, -718,1792 -5 85, -194, -291, -1263, -1263, 769, 138, -88, -1263, 3371,1793 239, -624, -4831769 -1328, 4218, 2910, -1328, 2669, -1328, 454, 0, -147, -1328, 1770 -1328, 463, -522, -472, -935, -1037, -1328, -158, 4217, 1113, 1771 -1328, 115, 430, 459, 419, 456, 932, 938, 935, 940, 1772 941, -1328, -236, -629, 5014, -930, -1328, -1328, 543, -135, 1773 -872, -345, -1328, 1349, -1328, 324, -967, -1328, -1328, 49, 1774 -1328, -1273, -818, 170, -1328, -1328, -1328, -1328, -5, -1312, 1775 -1328, -1328, -1328, -1328, -1328, -1328, 244, -1175, 35, -1328, 1776 -502, -1328, 424, 219, -1328, 95, -1328, -308, -1328, -1328, 1777 -1328, 479, -837, -1328, -1328, 4, -995, 175, 1139, -1328, 1778 -1328, -1328, -119, -1328, 57, 315, -193, 1470, 3860, -1328, 1779 -1328, 63, 160, 685, 1861, -1328, 1798, -1328, -1328, 18, 1780 1913, -1328, 2277, 2037, -1328, -1328, -1328, -545, -1328, 862, 1781 867, 458, 646, -93, -1328, -1328, -1328, 856, 647, -449, 1782 -1328, -478, -351, -615, -1328, -1328, -928, -975, -3, 985, 1783 981, 776, -1328, 107, 366, -24, -195, -132, 609, 706, 1784 -1328, 926, -1328, 2605, 1917, -447, 855, -1328, -1328, 645, 1785 -1328, -234, -1328, -136, -1328, -1328, -1328, -1230, 360, -1328, 1786 -1328, -1328, 1098, -1328, 12, -1328, -1328, -835, -110, -1327, 1787 -138, 2640, -1328, 3073, -1328, 848, -1328, -166, 72, -183, 1788 -179, -176, 2, -41, -36, -32, 62, 10, 19, 21, 1789 -98, -172, -171, -170, -167, -307, -494, -481, -476, -551, 1790 -310, -510, -1328, -1328, -515, 1010, 1014, 1017, 1772, 4826, 1791 -557, -496, -482, -480, -543, -1328, -503, -723, -721, -720, 1792 -573, -287, -290, -1328, -1328, 226, 457, -9, -1328, 3666, 1793 -27, -611, -257 1794 1794 }; 1795 1795 … … 1800 1800 static const yytype_int16 yytable[] = 1801 1801 { 1802 51, 115, 151, 268, 152, 451, 746, 99, 398, 153, 1803 760, 735, 399, 400, 1052, 427, 857, 438, 401, 261, 1804 116, 952, 787, 953, 402, 954, 403, 78, 1051, 382, 1805 383, 834, 600, 52, 51, 817, 145, 469, 409, 809, 1806 98, 99, 404, 1168, 720, 149, 1151, 1152, 725, 605, 1807 504, 51, 810, 816, 907, 58, 117, 154, 162, 1363, 1808 406, 78, 1153, 155, 811, 187, 156, 52, 210, 342, 1809 937, 51, 194, 624, 98, 217, 805, 628, 227, 474, 1810 1185, 1186, 911, 806, 376, 150, 407, 424, 398, 58, 1811 220, 98, 399, 400, 124, 33, 71, 663, 401, 807, 1812 377, 717, 125, 177, 402, 190, 403, 115, 98, 33, 1813 808, 98, 473, 475, 518, 115, 672, 821, 267, 272, 1814 849, 824, 404, 211, 676, 1285, 221, 1121, 203, 65, 1815 71, 281, -239, -239, 144, 866, 1383, 1384, 108, 108, 1816 406, 820, 841, 151, 72, 152, 844, 827, 310, 149, 1817 153, 592, 177, 1230, 1225, 177, 162, 115, 345, 1444, 1818 1425, 210, 33, 65, 847, 847, 407, 901, 372, 410, 1819 714, 952, 108, 953, 1162, 954, 1471, 146, 72, 204, 1820 847, 667, 669, 1383, 1384, 148, 187, 187, 1167, 98, 1821 408, 282, 805, 919, 162, 169, 1286, 469, 154, 806, 1822 262, 98, 267, 263, 155, -239, 661, 156, 1385, 108, 1823 51, 1499, 213, 1501, 566, 807, 469, 162, 577, 170, 1824 410, 1176, 210, 151, 469, 152, 397, 190, 157, 441, 1825 153, 1214, 707, 1425, 253, 1218, 410, 474, 847, 977, 1826 310, 143, 666, 668, 696, 809, 33, 33, 567, 724, 1827 98, 1001, 51, 585, 461, 1394, 1180, 1062, 810, 99, 1828 272, 1153, 98, 177, 291, 272, 267, 267, 737, 1000, 1829 811, 729, 115, 1315, 162, 1318, 1320, 439, 658, 78, 1830 650, 1178, 805, 1177, 78, 52, 708, 1066, 1075, 806, 1831 167, 1168, 98, 242, 245, 796, 940, 310, 605, 1151, 1832 1152, 33, 1513, 1181, 659, 807, 477, 58, 665, 1235, 1833 310, 437, 172, 1158, 670, 1153, 988, 177, 418, 479, 1834 410, 410, 518, 1069, 177, 1069, 569, 518, 33, 1528, 1835 518, 149, 791, 1098, 182, 1455, 843, 1236, 372, 1159, 1836 1512, 115, 1052, 1179, 492, 345, 820, 493, 71, 598, 1837 616, 658, 202, 1004, 167, 887, 1051, 248, 817, 730, 1838 1523, 1159, 386, 809, 621, 481, 440, 1527, 621, 253, 1839 332, 98, 499, 818, 1182, 597, 810, 659, 387, 731, 1840 287, 65, 848, 848, 781, 1483, 470, 330, 811, 599, 1841 108, 1488, 177, 43, 44, 267, 72, 1100, 848, 834, 1842 825, 112, 597, 141, 142, 187, 251, 509, 389, 177, 1843 1308, 1508, 372, 177, 43, 44, 1515, 1101, 445, 513, 1844 1420, 378, 592, 267, 390, 310, 310, 592, 877, 267, 1845 1309, 621, 547, 548, 391, 1153, 1346, 458, 1429, 552, 1846 553, 1107, 853, 1083, 78, 190, 696, 1168, 393, 434, 1847 392, 741, 115, 455, 1168, 469, 848, 625, 859, 1408, 1848 636, 629, 112, 78, 394, 972, 1119, 547, 554, 555, 1849 267, 78, 1370, 1409, 902, 43, 44, 860, 267, 330, 1850 621, 916, 51, 1086, 1224, 372, 580, 713, 410, 99, 1851 903, 707, 1216, 115, 213, -294, 871, 999, 410, 941, 1852 870, 858, 547, 753, 981, 310, 1168, 115, -525, 78, 1853 310, 434, 310, 310, 605, 52, 904, 575, 1001, 874, 1854 744, 410, 98, 576, 345, 556, 557, 599, 902, 1414, 1855 1415, 904, 905, 868, 1429, 1139, 1141, 58, 1124, 1429, 1856 410, 1165, 112, 253, 1063, 708, 470, 1064, 1456, 167, 1857 -12, 1260, 1261, 1107, 898, 43, 44, 1166, 901, 1429, 1858 558, 559, 1457, 1165, 696, 470, 1429, 837, 569, 569, 1859 264, 838, -448, 470, 696, 1299, 310, 1301, 71, 1291, 1860 900, 741, -449, 758, 594, 696, 621, 345, 638, 677, 1861 616, 1300, 1461, 1302, 277, 576, 598, 1347, 598, 1461, 1862 2, 207, 4, 5, 6, 7, 59, 59, 999, 705, 1863 839, 65, 279, 1344, 840, 213, 621, 280, 549, 112, 1864 108, 621, 698, 616, 550, 551, 72, 621, 699, 715, 1865 621, 621, 43, 44, 333, 716, 804, 334, 599, 131, 1866 59, 132, 133, 134, 707, 839, 621, 1011, 267, 1082, 1867 335, 1509, 43, 44, 8, 9, 10, 11, 12, 384, 1868 726, 177, 336, 740, 330, 330, 727, 1056, 37, 741, 1869 38, 762, 763, 764, 59, -112, 177, 59, 115, -112, 1870 112, 895, 1135, 798, 410, 881, 33, 1112, 1393, 177, 1871 1113, 741, 1114, 43, 44, 50, 114, 1094, 708, 719, 1872 337, 723, 78, 1333, 621, 921, 616, 1334, 1138, 836, 1873 597, 371, 713, 713, 36, 398, 1017, 883, 338, 399, 1874 400, 899, 375, 741, 850, 401, 114, 114, 78, 50, 1875 966, 402, 330, 403, 291, 979, 967, 865, 388, 345, 1876 50, 699, 1212, 744, 744, 1140, 50, 597, 576, 404, 1877 1340, 330, 804, 599, 50, 1341, 741, 1150, 396, 1410, 1878 50, 741, 440, 50, 348, 1357, 50, 1221, 406, 410, 1879 952, 177, 953, 1463, 954, 1464, 1422, 1343, 425, 114, 1880 114, 1348, 1411, 741, 696, 696, 569, 741, 1408, 426, 1881 592, 253, 332, 410, 407, 621, 39, 984, 175, 176, 1882 42, 408, 598, 50, 470, 1430, 50, 1143, 448, 43, 1883 44, 741, 1477, 50, 598, 330, 560, 561, 1478, 499, 1884 164, 2, 207, 4, 5, 6, 7, 1533, 59, 1510, 1885 470, 970, 967, 576, -372, 371, 213, 332, 410, 696, 1886 696, 459, 804, -401, 50, 854, 1353, 1354, 1481, 1422, 1887 213, 460, 229, 503, 599, 835, 50, 482, 59, 732, 1888 594, 733, 39, 310, 734, 941, 42, 738, 705, 941, 1889 941, 507, 960, 1403, 967, 43, 44, 512, 1163, 525, 1890 707, 50, 50, 562, 164, 345, 1383, 1384, 113, 37, 1891 78, 38, 345, 895, 906, 895, 908, 50, 1231, 1232, 1892 455, 802, 563, 597, 564, 50, 565, 115, 339, 47, 1893 48, 765, 766, 112, 50, 141, 239, 50, 58, 586, 1894 921, 921, 767, 768, 114, 713, 43, 44, 568, -3, 1895 410, 115, 310, 1065, 708, 899, 47, 48, 651, 114, 1896 658, 213, 652, 114, 653, 898, 655, 50, 114, 656, 1897 1087, 657, 240, 258, 1495, 744, 660, 241, 662, 71, 1898 689, 50, 50, 773, 774, 599, 659, 686, 50, 691, 1899 687, 900, -243, 728, 1207, 50, 418, 654, 410, 433, 1900 717, 798, 742, 1306, 345, 1295, 1088, 750, 1267, 1268, 1901 799, 1270, 65, 769, 770, 771, 772, 801, 1275, 812, 1902 1277, 108, 856, 1107, -14, 621, 621, 72, 862, -15, 1903 1336, 708, 479, 332, 410, 2, 207, 4, 5, 6, 1904 7, 705, 696, 310, 855, 112, 50, 141, 142, 696, 1905 696, 696, 112, 882, 141, 142, 884, 348, 43, 44, 1906 743, 433, 410, 50, 50, 43, 44, -295, 47, 48, 1907 78, 818, 332, 597, 8, 9, 10, 11, 12, 889, 1908 50, 909, 115, -422, 50, 638, 522, 895, 716, 108, 1909 932, 1022, 895, 1364, 637, -529, 244, 1364, 58, 164, 1910 924, 921, 934, 37, 938, 38, 33, 945, 59, 267, 1911 50, 939, 696, 1278, 1279, 1280, 946, 118, 697, 947, 1912 50, 920, 112, 597, 141, 142, 547, 899, 948, 47, 1913 48, 1071, 899, 964, 36, 43, 44, 949, 50, 1170, 1914 950, 974, 975, 976, 50, -296, 1053, 990, 345, 991, 1915 348, 440, 8, 9, 10, 11, 12, 992, 993, 994, 1916 463, 721, 1077, 112, 995, 509, 722, 160, -3, 215, 1917 1112, 996, 470, 1113, -410, 1114, 43, 44, -409, 1389, 1918 114, 108, 1019, 1059, 33, 50, 1055, 72, 638, 272, 1919 115, 330, 894, 50, 1076, 230, 1445, 50, 231, 1078, 1920 1079, 235, 50, 237, 1229, 114, 1085, 114, 1095, 220, 1921 246, 310, 36, 348, 39, 741, 175, 176, 42, 1096, 1922 215, 1097, 1099, 259, 1102, 621, -297, 43, 44, 115, 1923 959, 160, 1104, 8, 9, 10, 11, 12, 78, 112, 1924 1105, 685, 114, 835, 211, 221, 1112, 114, 1087, 1113, 1925 1106, 1114, 43, 44, 1109, 1133, 348, 348, 1154, 1155, 1926 1157, 1187, 215, 1171, 326, 33, 58, 1406, 1156, 1172, 1927 1174, 1175, 348, 340, 1183, 1215, 1194, 705, 621, 621, 1928 1317, 1189, 1022, -3, 1088, 1199, 272, 1521, 1202, 1204, 1929 1213, 310, 492, 36, 522, 114, 522, 1040, 1208, 522, 1930 1220, 1226, 522, 1217, 1233, 1237, 1239, 71, 1241, 1242, 1931 1269, 50, 1243, 50, 1244, 1246, 1253, 1272, 78, 1262, 1932 697, 1263, 429, 215, 115, 1297, 432, 1273, 108, 1290, 1933 348, 1274, 50, 213, 398, 1276, 230, 1303, 399, 400, 1934 65, 439, 1284, 1087, 401, 1307, 58, 50, 1305, 108, 1935 402, 114, 403, 1311, 705, 72, 326, 1312, 1313, 1316, 1936 50, 215, 114, 50, 114, 526, 215, 108, 404, 527, 1937 528, 529, 113, 1494, 1321, 1323, 1329, 1331, 1330, 1088, 1938 1332, 1339, 267, 1342, 1349, 1350, 406, 1170, 432, 1280, 1939 1358, 487, 1359, 530, 1265, 531, 50, 532, 533, 621, 1940 114, 1360, 114, 497, 1366, 39, 114, 184, 185, 42, 1941 658, 1367, 407, 520, 114, 1377, 1378, -411, 43, 44, 1942 470, 1381, 1392, 1396, 115, 177, 160, 50, 50, 108, 1943 440, 1400, 1398, 1401, 754, 72, 659, 1402, 697, 759, 1944 1407, 1421, 50, 1087, 893, 1334, 410, 115, 697, 1416, 1945 1417, 215, 47, 48, 115, 1418, 115, 584, 115, 697, 1946 1173, 589, 108, 1419, 1426, 894, 1435, 685, 1437, 151, 1947 1431, 152, 1439, 1405, 78, 230, 153, 235, 1433, 1088, 1948 622, 78, 1441, 174, 626, 880, 526, 463, 1493, 59, 1949 527, 528, 529, 115, 1443, 115, 1449, 1448, 68, 119, 1950 1450, 1451, 58, 1462, 1472, 1474, 115, 1476, 1479, 58, 1951 1480, 348, 1493, 1493, 530, 1487, 531, 50, 532, 1288, 1952 162, 1502, 310, 1503, 1507, 254, 39, 1516, 1514, 50, 1953 42, 215, 68, 78, 1518, 1524, 1531, 1493, 1532, 43, 1954 44, 326, 326, 1170, 372, 1188, 775, 777, 776, 161, 1955 1170, 778, 477, 1111, 867, 779, 869, 59, 1289, 1395, 1956 1482, 58, 108, 230, 1534, 45, 1352, 1219, 681, 222, 1957 76, 637, 215, 47, 48, 1368, 470, 114, 1465, 1193, 1958 1201, 118, 890, 470, 891, 108, 912, 1074, 1070, 793, 1959 1108, 72, 108, 1018, 861, 1084, 926, 783, 72, 1298, 1960 710, 935, 1170, 973, 76, 260, 915, 487, 50, 326, 1961 50, 487, 0, 978, 784, 0, 785, 114, 0, 0, 1962 416, 520, 0, 520, 989, 1040, 520, 0, 326, 520, 1963 0, 348, 348, 0, 0, 470, 0, 0, 0, 0, 1964 50, 223, 0, 435, 108, 0, 0, 331, 0, 59, 1965 72, 0, 0, 443, 0, 260, 350, 0, 697, 697, 1966 0, 114, 0, 0, 0, 112, 8, 9, 10, 11, 1967 12, 0, 1112, 0, 637, 1113, 0, 1114, 43, 44, 1968 114, 0, 0, 0, 114, 405, 0, 0, 0, 0, 1969 0, 215, 326, 0, 0, 0, 685, 0, 33, 0, 1970 423, 0, 794, 428, 430, 0, 1319, 910, 161, 0, 1971 0, 0, 0, 697, 697, 0, 0, 0, 0, 215, 1972 0, 1356, 0, 519, 215, 0, 36, 0, 353, 446, 1973 0, 114, 833, 449, 0, 450, 0, 589, 0, 0, 1974 0, 0, 0, 842, 457, 0, 0, 0, 0, 0, 1975 68, 0, 0, 0, 0, 471, 0, 0, 0, 0, 1976 0, 330, 0, 0, 0, 478, 0, 0, 114, 0, 1977 568, 39, 410, 430, 1382, 42, 0, 1390, 47, 48, 1978 0, 0, 50, 0, 43, 44, 39, 50, 184, 185, 1979 42, 0, 0, 215, 681, 59, 59, 0, 971, 43, 1980 44, 447, 0, 0, 50, 0, 0, 215, 412, 0, 1981 712, 0, 0, 0, 0, 420, 0, 59, 47, 48, 1982 0, 1428, 76, 1148, 1149, 186, 1432, 76, 114, 0, 1983 0, 0, 487, 47, 48, 59, 0, 0, 0, 260, 1984 0, 0, 0, 590, 39, 0, 175, 176, 42, 618, 1985 497, 685, 0, 1103, 0, 1454, 0, 43, 44, 1296, 1986 0, 0, 623, 0, 0, 0, 623, 674, 0, 0, 1987 1012, 0, 1115, 0, 163, 0, 1115, 0, 1196, 1197, 1988 114, 214, 0, 375, 348, 348, 0, 412, 195, 0, 1989 233, 218, 59, 700, 228, 0, 697, 59, 215, 0, 1990 0, 0, 0, 697, 697, 697, 39, 0, 184, 185, 1991 42, 980, 910, 0, 0, 471, 0, 0, 0, 43, 1992 44, 223, 0, 1115, 0, 0, 0, 0, 0, 350, 1993 59, 519, 214, 0, 471, 0, 519, 0, 0, 519, 1994 1522, 0, 471, 0, 574, 596, 1522, 597, 114, 0, 1995 114, 114, 578, 47, 48, 581, 0, 1522, 910, 0, 1996 692, 1522, 0, 430, 0, 0, 697, 0, 0, 0, 1997 0, 0, 163, 0, 214, 0, 0, 0, 706, 0, 1998 68, 0, 0, 0, 373, 0, 0, 76, 0, 430, 1999 1122, 0, 0, 430, 0, 8, 9, 10, 11, 12, 2000 0, 353, 0, 0, 0, 348, 76, 0, 0, 79, 2001 163, 0, 216, 0, 76, 412, 0, 0, 0, 420, 2002 1115, 0, 350, 681, 0, 0, 0, 33, 243, 114, 2003 59, 0, 353, 163, 0, 214, 0, 0, 1012, 0, 2004 0, 0, 0, 79, 0, 442, 487, 1089, 326, 0, 2005 353, 0, 76, 59, 0, 36, 0, 0, 0, 0, 2006 59, 1322, 0, 216, 0, 0, 0, 786, 1324, 1325, 2007 1326, 0, 0, 214, 0, 0, 50, 50, 214, 0, 2008 224, 0, 0, 0, 623, 797, 114, 114, 215, 879, 2009 0, 0, 0, 498, 353, 412, 814, 0, 886, 743, 2010 833, 410, 888, 0, 0, 216, 0, 47, 48, 0, 2011 0, 0, 59, 0, 590, 0, 0, 910, 0, 590, 2012 0, 0, 0, 0, 114, 623, 0, 0, 350, 350, 2013 0, 1369, 0, 39, 0, 184, 185, 42, 0, 0, 2014 1115, 0, 1115, 1115, 350, 0, 43, 44, 0, 0, 2015 0, 0, 0, 0, 373, 0, 0, 353, 0, 0, 2016 0, 0, 692, 214, 0, 0, 216, 355, 0, 0, 2017 0, 0, 893, 471, 410, 0, 910, 910, 681, 0, 2018 47, 48, 0, 50, 114, 0, 574, 574, 0, 0, 2019 0, 0, 39, 114, 184, 185, 42, 0, 0, 471, 2020 353, 353, 350, 0, 216, 43, 44, 50, 50, 216, 2021 0, 925, 0, 0, 430, 0, 353, 0, 0, 0, 2022 0, 1115, 0, 0, 0, 1469, 0, 1469, 373, 0, 2023 0, 1492, 50, 410, 353, 0, 0, 706, 0, 47, 2024 48, 0, 955, 214, 39, 76, 184, 185, 42, 0, 2025 0, 0, 0, 0, 0, 0, 0, 43, 44, 214, 2026 0, 79, 1469, 0, 1469, 0, 79, 0, 0, 872, 2027 215, 76, 0, 875, 353, 0, 0, 0, 1115, 1115, 2028 692, 0, 0, 266, 214, 0, 0, 0, 0, 0, 2029 692, 47, 48, 623, 216, 0, 987, 0, 0, 0, 2030 0, 692, 0, 0, 0, 0, 81, 0, 0, 353, 2031 0, 998, 0, 1061, 0, 0, 1446, 0, 0, 0, 2032 0, 0, 0, 0, 0, 1089, 8, 9, 10, 11, 2033 12, 8, 9, 10, 11, 12, 0, 0, 0, 0, 2034 81, 534, 535, 536, 537, 538, 539, 540, 541, 542, 2035 543, 544, 353, 0, 0, 0, 0, 0, 33, 0, 2036 224, 68, 353, 33, 0, 0, 0, 215, 223, 0, 2037 0, 0, 0, 353, 216, 545, 1496, 225, 0, 0, 2038 0, 0, 0, 797, 910, 1504, 36, 0, 0, 0, 2039 706, 36, 0, 1067, 0, 0, 39, 0, 184, 185, 2040 42, 910, 0, 214, 574, 0, 0, 0, 0, 43, 2041 44, 0, 0, 0, 0, 216, 0, 0, 0, 1081, 2042 1089, 0, 0, 0, 0, 0, 79, 0, 430, 119, 2043 920, 214, 597, 76, 0, 596, 214, 597, 47, 48, 2044 355, 0, 0, 47, 48, 79, 0, 88, 0, 0, 2045 0, 0, 0, 79, 0, 353, 0, 0, 0, 0, 2046 1184, 0, 353, 0, 356, 0, 8, 9, 10, 11, 2047 12, 355, 0, 910, 910, 0, 0, 0, 0, 0, 2048 0, 88, 590, 0, 0, 0, 0, 0, 0, 355, 2049 0, 79, 0, 0, 0, 428, 0, 0, 33, 0, 2050 692, 692, 0, 350, 350, 214, 0, 0, 0, 0, 2051 128, 128, 128, 0, 0, 0, 0, 412, 226, 214, 2052 1089, 1169, 0, 0, 0, 0, 36, 0, 0, 0, 2053 0, 39, 0, 355, 216, 42, 0, 0, 0, 0, 2054 498, 0, 0, 0, 43, 44, 0, 0, 0, 0, 2055 0, 0, 1468, 0, 1468, 692, 692, 0, 81, 0, 2056 0, 0, 216, 81, 0, 0, 0, 216, 0, 0, 2057 45, 0, 353, 353, 0, 353, 353, 0, 47, 48, 2058 0, 0, 128, 0, 128, 0, 0, 0, 0, 1468, 2059 0, 1468, 1125, 76, 0, 0, 355, 0, 0, 0, 2060 0, 0, 0, 0, 0, 363, 0, 0, 1136, 276, 2061 214, 0, 0, 0, 0, 0, 0, 0, 326, 0, 2062 0, 0, 0, 0, 0, 0, 706, 353, 353, 0, 2063 0, 0, 0, 0, 0, 0, 216, 0, 0, 355, 2064 355, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2065 216, 0, 0, 0, 0, 355, 0, 225, 0, 0, 2066 0, 0, 0, 0, 128, 0, 0, 0, 1266, 0, 2067 0, 0, 128, 355, 128, 128, 0, 0, 0, 128, 2068 0, 128, 128, 412, 79, 0, 0, 0, 0, 68, 2069 0, 0, 0, 0, 0, 0, 0, 0, 353, 88, 2070 0, 692, 0, 706, 88, 0, 1351, 119, 0, 0, 2071 79, 0, 0, 355, 0, 0, 0, 0, 0, 0, 2072 0, 0, 1222, 81, 0, 0, 0, 8, 9, 10, 2073 11, 12, 0, 0, 0, 0, 0, 356, 692, 0, 2074 223, 216, 81, 0, 0, 692, 692, 692, 355, 0, 2075 81, 128, 0, 0, 0, 0, 350, 350, 0, 33, 2076 0, 76, 0, 0, 0, 0, 0, 0, 356, 1169, 2077 0, 0, 0, 353, 0, 353, 0, 0, 0, 0, 2078 0, 0, 0, 0, 0, 0, 356, 36, 81, 0, 2079 0, 355, 39, 0, 184, 185, 42, 0, 226, 0, 2080 214, 355, 119, 0, 0, 43, 44, 224, 692, 0, 2081 353, 0, 355, 0, 0, 0, 0, 353, 353, 353, 2082 0, 0, 0, 126, 129, 130, 0, 0, 353, 353, 2083 356, 893, 0, 410, 0, 0, 0, 0, 0, 47, 2084 48, 76, 0, 8, 9, 10, 11, 12, 0, 0, 2085 0, 168, 0, 173, 0, 0, 179, 180, 181, 0, 2086 183, 1466, 0, 1470, 88, 0, 0, 0, 0, 0, 2087 0, 0, 79, 0, 234, 33, 0, 350, 363, 0, 2088 353, 0, 0, 88, 0, 0, 249, 250, 0, 0, 2089 0, 88, 0, 356, 355, 255, 0, 256, 1498, 0, 2090 1500, 355, 119, 36, 0, 0, 0, 0, 39, 363, 2091 184, 185, 42, 0, 0, 0, 0, 0, 0, 0, 2092 0, 43, 44, 0, 0, 1169, 0, 363, 0, 88, 2093 0, 216, 1169, 0, 0, 0, 356, 356, 0, 0, 2094 0, 0, 1529, 0, 1530, 0, 0, 186, 0, 353, 2095 0, 0, 356, 0, 0, 47, 48, 1537, 1538, 0, 2096 0, 8, 9, 10, 11, 12, 0, 0, 0, 0, 2097 356, 363, 0, 0, 0, 0, 0, 395, 0, 0, 2098 0, 81, 214, 0, 1169, 0, 0, 414, 415, 0, 2099 0, 1517, 419, 33, 421, 422, 0, 76, 0, 0, 2100 0, 0, 0, 0, 76, 0, 0, 81, 0, 0, 2101 356, 355, 355, 0, 355, 355, 0, 0, 0, 0, 2102 0, 36, 0, 0, 0, 0, 39, 0, 184, 185, 2103 42, 0, 79, 0, 363, 0, 0, 0, 0, 43, 2104 44, 0, 0, 0, 0, 356, 0, 0, 0, 0, 2105 0, 0, 0, 0, 128, 128, 76, 0, 0, 0, 2106 8, 9, 10, 11, 12, 266, 355, 355, 0, 0, 2107 0, 0, 0, 47, 48, 0, 0, 363, 363, 214, 2108 0, 128, 0, 0, 128, 128, 0, 128, 356, 128, 2109 128, 0, 33, 363, 128, 128, 0, 0, 356, 0, 2110 0, 0, 0, 0, 225, 0, 0, 0, 0, 356, 2111 0, 363, 0, 216, 0, 8, 9, 10, 11, 12, 2112 36, 0, 88, 0, 0, 39, 0, 184, 185, 42, 2113 0, 0, 0, 0, 0, 0, 0, 355, 43, 44, 2114 588, 0, 595, 0, 0, 0, 0, 33, 88, 0, 2115 0, 363, 0, 619, 620, 0, 0, 0, 0, 0, 2116 0, 0, 0, 0, 1492, 0, 410, 0, 0, 81, 2117 0, 0, 47, 48, 0, 36, 0, 0, 0, 224, 2118 39, 0, 0, 0, 42, 0, 363, 0, 0, 0, 2119 0, 356, 0, 43, 44, 0, 0, 0, 356, 0, 2120 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2121 216, 0, 355, 0, 355, 0, 0, 0, 0, 712, 2122 0, 0, 0, 0, 0, 0, 0, 47, 48, 363, 2123 128, 128, 0, 0, 0, 0, 0, 0, 0, 363, 2124 0, 0, 0, 0, 0, 226, 0, 0, 0, 355, 2125 363, 0, 0, 0, 0, 0, 355, 355, 355, 0, 2126 0, 0, 0, 0, 0, 0, 0, 355, 355, 0, 1802 50, 114, 99, 398, 151, 116, 451, 399, 268, 152, 1803 400, 760, 427, 153, 401, 402, 403, 746, 78, 404, 1804 951, 406, 952, 953, 167, 438, 1055, 1173, 1057, 857, 1805 1158, 114, 114, 1126, 50, 52, 99, 382, 383, 605, 1806 735, 817, 600, 834, 720, 50, 145, 816, 725, 880, 1807 409, 50, 78, 162, 787, 154, 820, 65, 592, 50, 1808 911, 1430, 827, 71, 155, 50, 156, 194, 50, 52, 1809 217, 50, 98, 227, 624, 220, 1156, 1157, 628, 1368, 1810 1167, 1235, 33, 398, 114, 114, 808, 399, 167, 407, 1811 400, 65, 424, 445, 401, 402, 403, 71, 261, 404, 1812 809, 406, 805, 1290, 1190, 1191, 98, 203, 50, 663, 1813 291, 50, 458, 163, 810, 806, 811, 150, 50, 1434, 1814 807, 330, 474, 98, 473, 475, 33, 195, 672, 707, 1815 218, 124, 566, 228, 1430, 504, 676, 190, 469, 143, 1816 98, 907, 939, 98, 717, 151, 552, 553, 342, 50, 1817 152, 162, 847, 847, 153, 125, 410, 281, 204, 1187, 1818 72, 50, 518, 372, -239, -239, 567, 972, 847, 407, 1819 951, 1240, 952, 953, 1291, 58, 117, 977, 901, 1449, 1820 714, 1518, 849, 434, 1230, 1172, 50, 50, 988, 162, 1821 1163, 242, 245, 708, 72, 408, 154, 866, 253, 1241, 1822 410, 1320, 50, 1323, 1325, 155, 936, 156, 1533, 58, 1823 50, 163, 162, 330, 661, 1434, 1164, 282, 805, 50, 1824 1434, 98, 50, 373, 441, 151, 847, 741, 213, 114, 1825 152, 806, 144, 98, 153, 1158, 807, -239, 169, 658, 1826 1434, 971, 474, 211, 114, 434, 221, 1434, 114, 163, 1827 1460, 33, 50, 114, 99, 919, 33, 1000, 397, 190, 1828 1413, 820, 170, 999, 461, 1071, 50, 50, 1476, 162, 1829 78, 976, 163, 50, 1414, 78, 1164, 164, 33, 848, 1830 848, 1173, 98, 167, 442, 650, 1461, 52, 605, 1158, 1831 666, 668, 987, 837, 98, 848, 796, 838, 469, 33, 1832 1462, 1080, 33, 1504, 157, 1506, 809, 659, 805, 65, 1833 1103, 376, 658, 665, 470, 71, 118, 469, 594, 670, 1834 810, 806, 811, 146, 98, 469, 807, 377, 418, 592, 1835 410, 50, 585, 372, 592, 1156, 1157, 843, 477, 1388, 1836 1389, 164, 512, 821, 1067, 1388, 1389, 824, 50, 50, 1837 479, 455, 410, 848, 492, 839, 729, 493, 1055, 840, 1838 1057, 730, 148, -10, 817, 50, 160, 887, 841, 50, 1839 518, 818, 844, 597, 825, 518, 597, 287, 518, 637, 1840 659, 731, 440, 575, 1375, 172, 1153, 1154, 707, 576, 1841 43, 44, 839, 373, 1105, 50, 1087, 439, 330, 330, 1842 509, 667, 669, 98, 1349, 50, 182, 372, 1313, 1158, 1843 834, 1390, 72, 202, 1106, 386, 513, 1399, 378, -294, 1844 112, 599, 259, 50, 809, 547, 548, 58, 1314, 50, 1845 160, 387, 781, 43, 44, 78, 433, 1173, 810, 1351, 1846 811, 1419, 1420, 577, 1173, 410, 248, 1201, 1202, 1144, 1847 1146, 1112, 708, 910, 78, 113, 1425, 108, 108, 696, 1848 547, 753, 78, 326, -112, 114, 330, 373, -112, 724, 1849 50, 251, 340, 389, 470, 1221, -525, 190, 50, 1398, 1850 372, 253, 50, 1091, 99, 330, 638, 50, 737, 390, 1851 114, 108, 114, 470, 1124, 547, 1173, 859, 433, 636, 1852 78, 470, 1229, 496, 605, 980, 112, 998, 391, 858, 1853 213, 264, 870, 877, 393, 898, 860, 52, 1044, 43, 1854 44, 429, -12, 522, 392, 432, 1517, 114, 108, 1000, 1855 394, 580, 114, 410, 1265, 1266, 164, 705, 868, 65, 1856 -448, 707, 556, 557, 970, 71, 1528, 758, 112, 330, 1857 141, 142, 791, 1532, 98, 326, 469, 902, 333, 599, 1858 904, 43, 44, 1338, 1468, 902, 1469, 1339, 497, 1112, 1859 498, 499, 904, 903, 901, -449, 905, 558, 559, 1003, 1860 114, 1068, 916, 900, 940, 1170, 277, 432, 1069, 835, 1861 487, 871, 244, 410, 594, 1466, 50, 719, 50, 723, 1862 1219, 1171, 1466, 1170, 1223, 708, 2, 207, 4, 5, 1863 6, 7, 520, 1304, 253, 332, 1011, 50, 998, 1296, 1864 1515, 112, 279, 141, 142, 160, 280, 1306, 741, 1305, 1865 1327, 213, 50, 334, 43, 44, 114, 1329, 1330, 1331, 1866 554, 555, 72, 1307, 1352, 50, 1488, 114, 50, 114, 1867 798, 335, 1493, 1155, 1514, 1010, 584, 58, 910, 336, 1868 589, 696, 853, 337, 762, 763, 764, 677, 804, 1088, 1869 599, 338, 1513, 576, 37, 1061, 38, 1520, 685, 622, 1870 1178, 50, 371, 626, 698, 114, 568, 114, 410, 375, 1871 699, 114, 388, 78, 47, 48, 592, 384, 1099, 114, 1872 1374, 396, 39, 910, 175, 176, 42, 463, 408, 108, 1873 398, 425, 50, 50, 399, 43, 44, 400, 874, 78, 1874 410, 401, 402, 403, 1016, 1129, 404, 410, 715, 406, 1875 426, 522, 470, 522, 716, 1127, 522, 448, 112, 522, 1876 326, 326, 1415, 854, -372, 2, 207, 4, 5, 6, 1877 7, 43, 44, 899, 1140, 549, 410, 230, 470, 1427, 1878 231, 550, 551, 235, 1181, 237, 1143, 681, 597, 726, 1879 1361, 1145, 246, 597, 951, 727, 952, 953, 440, 696, 1880 118, 740, 707, 1011, 804, 599, 1226, 741, 410, 696, 1881 560, 561, 906, 881, 908, 883, 705, 407, 455, 741, 1882 696, 741, 50, 1148, 459, 1074, 487, 1074, 326, 743, 1883 487, 410, 460, 37, 50, 38, -401, 47, 48, 482, 1884 520, 920, 520, 597, 503, 520, 291, 326, 520, 47, 1885 48, 1486, 1427, 965, 39, 178, 175, 176, 42, 966, 1886 8, 9, 10, 11, 12, 978, 708, 43, 44, 1101, 1887 1044, 699, 213, 969, 966, 966, 637, 8, 9, 10, 1888 11, 12, 114, 1041, 1217, 959, 213, 507, 910, 1345, 1889 576, 732, 33, 733, 804, 741, 734, 1346, -3, 738, 1890 512, 78, 1348, 741, 262, 1168, 599, 263, 741, 33, 1891 563, 326, 525, 50, 562, 50, 1183, 1353, 230, 565, 1892 36, 794, 114, 741, 685, 330, 658, 1416, 1435, 1482, 1893 1538, 898, 1341, 1413, 741, 1483, 576, 36, 564, 113, 1894 65, 332, 410, 708, 586, 50, 71, 910, 910, 1358, 1895 1359, 833, 253, 332, 410, 1092, 589, 1408, 966, 108, 1896 1388, 1389, 842, 339, 568, 114, 410, 651, 798, 705, 1897 1362, -3, 47, 48, 652, 940, 835, 213, 637, 940, 1898 940, 1236, 1237, 638, 114, 1070, 653, 899, 114, 1021, 1899 1500, 418, 654, 410, 659, 769, 770, 771, 772, 900, 1900 655, 754, 765, 766, 1212, 656, 759, 2, 207, 4, 1901 5, 6, 7, 681, 112, 437, 657, 599, 696, 696, 1902 1387, 1117, 660, 1395, 1118, 258, 1119, 43, 44, 1076, 1903 479, 332, 410, 767, 768, 114, 773, 774, 229, 1112, 1904 662, 686, 39, 72, 691, 1041, 42, 687, 50, 50, 1905 50, 487, -243, 689, 463, 43, 44, 230, 58, 235, 1906 78, 1272, 1273, 717, 1275, 728, 799, 1433, 742, 481, 1907 1279, 750, 1437, 1282, 801, 37, 812, 38, 114, 696, 1908 696, 802, -14, 597, 862, 638, 818, 332, 597, 47, 1909 48, 856, 50, 1311, 1283, 1284, 1285, 50, -15, 470, 1910 855, 1459, 882, 884, 889, 1175, 909, -422, 8, 9, 1911 10, 11, 12, -529, 50, 39, 924, 934, 547, 42, 1912 716, 867, 112, 869, 141, 142, 1093, 932, 43, 44, 1913 979, 938, 937, 51, 115, 43, 44, 944, 114, 945, 1914 33, -295, 946, 947, 178, 230, 948, 949, 8, 9, 1915 10, 11, 12, 685, 45, 910, 963, 509, 973, 59, 1916 59, 625, 47, 48, 899, 629, 440, 51, 36, 899, 1917 974, 975, 910, 915, 989, 990, 991, 992, 149, 993, 1918 33, 994, 995, 1369, 51, 1021, 1527, 1369, -410, -409, 1919 114, 1018, 1527, 59, 1058, 1064, 1081, 1082, 187, 220, 1920 894, 210, 72, 1527, 51, 1060, 1083, 1527, 36, 1084, 1921 705, 1090, 743, 1102, 410, 1041, 1100, 58, 1104, 958, 1922 47, 48, 1109, 1107, 1110, 1300, 1111, 59, 1138, 1114, 1923 59, 1159, 1394, 78, 1162, 1160, 1161, 1176, 1092, 1177, 1924 115, 1179, 681, 112, 910, 910, 1180, -9, 115, 1188, 1925 1117, 267, 272, 1118, 1193, 1119, 43, 44, 114, -445, 1926 114, 114, 696, -11, 741, 487, 1094, 326, -3, 696, 1927 696, 696, 65, 1199, 1197, 1204, 1207, 1411, 71, 1209, 1928 492, 310, 149, 1220, 1234, 1213, 1450, 705, 1218, 1222, 1929 115, 345, 1225, 1526, 210, 112, 1231, 1270, 112, 1238, 1930 141, 239, 1117, 1242, 1244, 1118, 1246, 1119, 43, 44, 1931 1247, 43, 44, 685, 78, 1041, 112, 348, 833, 187, 1932 187, 1248, 1249, 1117, 1251, 1258, 1118, 1267, 1119, 43, 1933 44, 1268, 696, 1092, 398, 267, 1322, 240, 399, 114, 1934 108, 400, 241, 51, 1274, 401, 402, 403, 1277, 1278, 1935 404, 1294, 406, 470, 213, 210, 1280, 1324, 131, 1175, 1936 132, 133, 134, 1281, 1289, 1041, 1302, 1308, 1041, 211, 1937 221, 43, 44, 310, 1310, 72, 658, 1312, 1316, 1318, 1938 1317, 59, 1321, 1499, 1326, 51, 50, 50, 1328, 1334, 1939 58, 1335, 1336, 272, 1337, 1344, 114, 114, 272, 267, 1940 267, 1347, 681, 1354, 1355, 115, 1285, 1363, 108, 1093, 1941 39, 59, 1041, 836, 42, 1364, 1365, 1041, 1371, 1108, 1942 407, 1372, 1382, 43, 44, 1383, 174, -411, 850, 1401, 1943 310, 1386, 1397, 1092, 114, 1403, 1405, 1406, 1120, 1407, 1944 1412, 865, 1120, 310, 659, 1421, 1041, 1422, 1423, 712, 1945 1339, 440, 1424, 1426, 1431, 1436, 72, 47, 48, 569, 1946 1440, 1438, 1442, 1444, 149, 1446, 439, 697, 254, 1453, 1947 78, 58, 1455, 1448, 115, 1454, 151, 78, 345, 1467, 1948 1456, 152, 598, 616, 1484, 153, 1477, 1479, 1481, 1120, 1949 68, 119, 1485, 50, 114, 1492, 1507, 621, 1508, 108, 1950 330, 621, 1521, 114, 1093, 1512, 1519, 1523, 1041, 470, 1951 1529, 1536, 1537, 1041, 775, 1175, 470, 50, 50, 777, 1952 162, 776, 1175, 1192, 68, 778, 1116, 779, 267, 78, 1953 1487, 1041, 39, 1041, 175, 176, 42, 1041, 187, 1293, 1954 1041, 161, 50, 1400, 372, 43, 44, 1539, 1041, 1094, 1955 1357, 1224, 1041, 1373, 1470, 1206, 267, 1198, 310, 310, 1956 890, 222, 267, 416, 621, 891, 1075, 912, 470, -296, 1957 112, 371, 141, 142, 1175, 1079, 8, 9, 10, 11, 1958 12, 793, 1017, 43, 44, 115, 435, 1113, 861, 477, 1959 348, 926, 1120, 1089, 1303, 935, 443, 260, 783, 0, 1960 710, 0, 784, 267, 1093, 785, 0, 0, 33, 721, 1961 0, 267, 72, 621, 722, 51, 0, 0, 0, 72, 1962 713, 0, 0, 0, 0, 0, 115, 58, 8, 9, 1963 10, 11, 12, 0, 58, 0, 36, 0, 310, 331, 1964 115, 59, 0, 310, 1094, 310, 310, 260, 350, 0, 1965 0, 0, 108, 744, 0, 0, 0, 345, 0, 0, 1966 33, 39, 0, 175, 176, 42, 519, 0, 0, 697, 1967 0, 72, 108, 0, 43, 44, 0, 405, 0, 0, 1968 0, 0, 0, 348, 0, 0, 58, 1474, 36, 1474, 1969 0, 108, 423, 39, 0, 428, 430, 42, 0, 0, 1970 161, 569, 569, 0, 0, 0, 43, 44, 1185, 310, 1971 0, 0, 1120, 0, 1120, 1120, 0, 0, 0, 621, 1972 345, 446, 0, 616, 1474, 449, 1474, 450, 0, 598, 1973 0, 598, 45, 0, 0, 0, 457, 0, 0, 0, 1974 47, 48, 68, 0, 1094, 0, 348, 471, 39, 621, 1975 175, 176, 42, 108, 621, 0, 616, 478, 0, 0, 1976 621, 43, 44, 621, 621, 430, 0, 0, 0, 0, 1977 39, 0, 175, 176, 42, 0, 1473, 0, 1473, 621, 1978 0, 267, 0, 43, 44, 0, 108, 697, 0, 348, 1979 348, 0, 0, 1120, 0, 0, 0, 697, 0, 0, 1980 8, 9, 10, 11, 12, 348, 0, 0, 697, 375, 1981 674, 115, 0, 1473, 895, 1473, 0, 0, 76, 0, 1982 0, 0, 0, 0, 1182, 1184, 1186, 0, 0, 0, 1983 0, 260, 33, 0, 0, 590, 700, 621, 921, 616, 1984 0, 618, 326, 0, 0, 713, 713, 0, 0, 0, 1985 1120, 1120, 76, 0, 623, 0, 0, 0, 623, 0, 1986 36, 0, 0, 348, 0, 0, 0, 8, 9, 10, 1987 11, 12, 345, 0, 519, 0, 744, 744, 0, 519, 1988 0, 0, 519, -297, 0, 0, 108, 0, 1451, 223, 1989 8, 9, 10, 11, 12, 0, 0, 0, 0, 33, 1990 0, 0, 0, 0, 920, 0, 597, 471, 0, 108, 1991 0, 0, 47, 48, 0, 0, 108, 0, 0, 569, 1992 0, 350, 33, 0, 0, 0, 471, 36, 621, 0, 1993 983, 0, 39, 79, 471, 598, 42, 0, 0, 0, 1994 0, 0, 0, 0, 0, 43, 44, 598, 1501, 214, 1995 36, 0, 692, 0, 0, 430, 0, 1509, 233, 0, 1996 0, 0, 0, 0, 0, 0, 0, 79, 108, 0, 1997 706, 712, 68, 0, 0, 0, 353, 0, 0, 47, 1998 48, 430, 412, 0, 0, 430, 0, 0, 39, 420, 1999 184, 185, 42, 0, 0, 0, 310, 0, 0, 0, 2000 214, 43, 44, 0, 224, 216, 697, 697, 0, 0, 2001 0, 0, 0, 0, 350, 0, 0, 0, 345, 0, 2002 0, 243, 59, 0, 0, 345, 895, 893, 895, 410, 2003 0, 0, 879, 0, 0, 47, 48, 0, 0, 0, 2004 115, 886, 214, 0, 348, 888, 0, 0, 894, 447, 2005 0, 0, 0, 921, 921, 0, 216, 0, 713, 786, 2006 0, 412, 0, 0, 115, 310, 0, 697, 697, 0, 2007 76, 0, 0, 0, 0, 76, 623, 797, 0, 0, 2008 39, 0, 184, 185, 42, 0, 0, 744, 814, 0, 2009 59, 355, 0, 43, 44, 0, 0, 0, 216, 0, 2010 0, 0, 0, 214, 0, 0, 590, 0, 0, 0, 2011 39, 590, 184, 185, 42, 0, 345, 623, 574, 186, 2012 350, 350, 0, 43, 44, 215, 578, 47, 48, 581, 2013 0, 39, 0, 184, 185, 42, 350, 621, 621, 0, 2014 0, 214, 0, 0, 43, 44, 214, 0, 0, 596, 2015 0, 597, 0, 0, 692, 310, 0, 47, 48, 216, 2016 0, 0, 1410, 348, 348, 471, 0, 0, 0, 223, 2017 893, 0, 410, 0, 0, 0, 215, 0, 47, 48, 2018 0, 59, 0, 0, 0, 79, 0, 0, 0, 412, 2019 79, 471, 0, 420, 350, 0, 0, 216, 0, 0, 2020 115, 0, 216, 925, 0, 895, 430, 0, 0, 0, 2021 895, 0, 0, 1301, 0, 0, 0, 0, 215, 921, 2022 0, 0, 0, 0, 0, 0, 0, 267, 0, 706, 2023 0, 214, 0, 0, 954, 76, 534, 535, 536, 537, 2024 538, 539, 540, 541, 542, 543, 544, 0, 0, 353, 2025 697, 0, 0, 0, 76, 0, 1066, 697, 697, 697, 2026 0, 0, 76, 0, 0, 0, 345, 0, 0, 412, 2027 545, 0, 692, 0, 0, 0, 0, 0, 0, 215, 2028 353, 0, 692, 0, 224, 623, 0, 216, 986, 0, 2029 0, 0, 0, 692, 0, 0, 0, 81, 353, 0, 2030 76, 0, 0, 997, 0, 0, 0, 272, 115, 0, 2031 39, 214, 184, 185, 42, 0, 0, 215, 0, 0, 2032 697, 0, 215, 43, 44, 0, 0, 214, 310, 0, 2033 0, 81, 0, 59, 59, 0, 0, 0, 0, 0, 2034 0, 0, 353, 621, 0, 0, 0, 115, 0, 1497, 2035 79, 410, 214, 68, 59, 0, 0, 47, 48, 0, 2036 574, 574, 0, 0, 355, 0, 0, 216, 225, 79, 2037 0, 0, 0, 59, 0, 797, 0, 79, 0, 0, 2038 0, 0, 706, 0, 0, 1072, 39, 0, 184, 185, 2039 42, 0, 0, 0, 0, 355, 621, 621, 0, 43, 2040 44, 0, 1189, 0, 272, 353, 0, 215, 216, 310, 2041 0, 1086, 0, 355, 0, 79, 0, 0, 0, 0, 2042 430, 119, 348, 348, 0, 266, 0, 0, 0, 0, 2043 59, 0, 0, 47, 48, 59, 0, 0, 0, 0, 2044 0, 0, 115, 872, 0, 0, 526, 875, 353, 353, 2045 527, 528, 529, 0, 0, 356, 0, 355, 0, 0, 2046 0, 0, 0, 0, 353, 0, 0, 0, 59, 0, 2047 0, 214, 0, 590, 530, 0, 531, 0, 532, 533, 2048 0, 0, 353, 0, 0, 0, 428, 215, 0, 0, 2049 0, 692, 692, 76, 350, 350, 0, 0, 0, 214, 2050 267, 526, 0, 0, 214, 527, 528, 529, 0, 0, 2051 0, 0, 1174, 0, 0, 0, 0, 621, 0, 76, 2052 355, 0, 353, 0, 0, 0, 0, 216, 215, 530, 2053 0, 531, 0, 532, 1292, 0, 0, 0, 0, 0, 2054 0, 0, 115, 348, 0, 0, 0, 0, 0, 81, 2055 0, 0, 692, 692, 81, 216, 0, 353, 0, 0, 2056 216, 0, 0, 355, 355, 115, 0, 0, 59, 0, 2057 0, 0, 115, 214, 115, 0, 115, 0, 574, 355, 2058 0, 0, 0, 0, 0, 0, 0, 214, 0, 0, 2059 0, 59, 0, 0, 0, 0, 0, 355, 59, 0, 2060 353, 0, 0, 0, 0, 0, 1498, 0, 79, 0, 2061 353, 115, 0, 115, 0, 0, 223, 0, 0, 0, 2062 0, 353, 0, 706, 115, 88, 0, 0, 0, 216, 2063 1498, 1498, 0, 0, 79, 0, 0, 355, 0, 0, 2064 310, 0, 0, 216, 0, 0, 0, 215, 225, 0, 2065 59, 0, 0, 0, 1356, 1498, 0, 0, 0, 88, 2066 0, 0, 0, 0, 0, 1271, 0, 0, 0, 0, 2067 0, 0, 355, 0, 0, 215, 0, 0, 214, 0, 2068 215, 76, 0, 0, 0, 68, 0, 0, 126, 129, 2069 130, 412, 0, 0, 0, 0, 226, 0, 692, 0, 2070 706, 0, 0, 353, 119, 0, 0, 0, 0, 0, 2071 353, 0, 0, 0, 81, 355, 0, 0, 0, 0, 2072 0, 0, 0, 0, 0, 355, 0, 0, 356, 0, 2073 0, 224, 0, 81, 216, 692, 355, 0, 0, 0, 2074 0, 81, 692, 692, 692, 0, 0, 0, 177, 215, 2075 0, 0, 0, 350, 350, 0, 0, 0, 0, 356, 2076 255, 0, 256, 215, 0, 1130, 1174, 0, 0, 0, 2077 0, 0, 0, 0, 0, 0, 0, 356, 0, 81, 2078 0, 1141, 0, 363, 0, 0, 0, 0, 0, 0, 2079 0, 0, 0, 0, 0, 0, 79, 177, 0, 119, 2080 177, 0, 0, 0, 0, 692, 0, 0, 0, 1471, 2081 0, 1475, 0, 0, 0, 0, 0, 0, 355, 353, 2082 353, 356, 353, 353, 0, 355, 0, 0, 0, 0, 2127 2083 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2128 79, 0, 0, 8, 9, 10, 11, 12, 13, 14, 2129 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2130 25, 26, 27, 0, 0, 28, 29, 30, 356, 356, 2131 88, 356, 356, 0, 0, 33, 0, 0, 0, 355, 2132 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 2133 0, 0, 363, 0, 0, 0, 0, 0, 0, 363, 2134 0, 0, 0, 36, 0, 0, 0, 0, 39, 0, 2135 40, 41, 42, 0, 0, 0, 0, 0, 0, 0, 2136 0, 43, 44, 356, 356, 0, 0, 788, 789, 0, 2084 76, 0, 395, 0, 0, 0, 1503, 0, 1505, 0, 2085 0, 0, 414, 415, 215, 0, 0, 419, 0, 421, 2086 422, 0, 412, 0, 0, 0, 0, 214, 0, 0, 2087 0, 0, 0, 0, 350, 0, 0, 88, 0, 0, 2088 353, 353, 88, 0, 356, 0, 0, 0, 0, 0, 2089 1534, 0, 1535, 0, 0, 0, 0, 0, 0, 119, 2090 0, 1227, 0, 0, 0, 1542, 1543, 0, 177, 0, 2137 2091 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2138 0, 128, 0, 0, 0, 0, 128, 45, 355, 46,2139 0, 0, 0, 0, 819, 47, 48, 822, 823, 0,2140 826, 0, 828, 829, 0, 0, 0, 830, 831, 8,2141 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,2142 19, 20, 21, 22, 23, 24, 25, 26, 27, -298,2143 0, 0, 0, 0, 356, 0, 79, 0, 0, 0,2144 0, 33, 166, 79, 0, 0, 0, 0, 0, 363,2145 363, 997, 363, 363, 8, 9, 10, 11, 12, 219,2146 0, 0, 0, 0, 0, 0, 0, 0, 0, 36,2147 88, 0, 0, 0, 0, 0, 225, 0, 0, 0,2148 -298, 0, 0, 0, 283, 284, 33, 285, 0, 913,2149 0, 914, 0, 0, 0, 79, 0, 81, 917, 918,2150 0, 0, 0, 923, 363, 363, 166, 0, 0, 356,2151 273, 356, 0, 286, 36, 0, 929, 0, 0, 287,2152 0, 933, 0, 288, 0, 0, 289, 290, 291, 292,2153 293, 294, 43, 44, 0, 295, 296, 0, 0, 166,2154 0, 128, 0, 957, 958, 0, 356, 0, 595, 369,2155 0, 0, 374, 356, 356, 356, 0, 0, 297, 0,2156 3 78, 0, 0, 0, 356, 356, 344, 48, 299, 300,2157 301, 302, 0, 0, 212, 363, 0, 81, 0, 0,2158 0, 0, 0, 232, 0, 236, 0, 238, 0, 0,2159 0, 0, 0, 0, 247, 0, 0, 0, 0, 0,2160 0, 166, 0, 0, 0, 0, 0, 0, 0, 0,2161 0, 0, 0, 219, 0, 0, 356, 226, 0, 0,2162 0, 0, 0, 0, 0, 212, 0, 236, 238, 247,2163 0, 166, 0, 0, 0, 0, 0, 0, 88, 0,2164 0, 1007, 0, 1008, 1009, 1010, 0, 0, 0, 0,2165 363, 0, 363, 0, 0, 0, 374, 0, 0, 0,2166 0, 0, 1054, 166, 0, 0, 0, 212, 0, 128,2167 0, 0, 0, 0, 0, 0, 1060, 0, 0, 0,2168 0, 0, 0, 0, 0, 356, 0, 363, 523, 0,2169 0, 0, 0, 0, 363, 363, 363, 0, 0, 1072,2170 0, 166, 0, 0, 0, 363, 363, 0, 0, 0,2171 0, 0, 0, 0, 0, 1080, 0, 0, 88, 0,2172 0, 0, 0, 0, 0, 0, 0, 0, 212, 0,2173 236, 238, 247, 81, 0, 0, 593, 0, 0, 0,2174 81, 617, 0, 0, 0, 0, 0, 0, 0, 0,2175 0, 0, 0, 0, 0, 0, 0, 363, 0, 1110,2176 0, 0, 0, 0, 1120, 0, 212, 0, 0, 1123,2177 0, 212, 0, 0, 1127, 0, 0, 0, 0, 1129,2178 0, 1130, 1131, 0, 0, 1134, 496, 0, 0, 0,2179 0, 0, 81, 0, 1146, 0, 0, 0, 0, 0,2092 0, 0, 1174, 216, 0, 0, 0, 356, 356, 1174, 2093 0, 0, 0, 0, 355, 355, 0, 355, 355, 0, 2094 0, 0, 0, 356, 0, 0, 0, 0, 0, 0, 2095 0, 353, 0, 0, 0, 79, 0, 0, 0, 0, 2096 0, 356, 177, 0, 0, 0, 0, 0, 0, 0, 2097 0, 0, 81, 0, 0, 0, 226, 0, 0, 0, 2098 0, 1174, 0, 0, 0, 168, 0, 173, 1522, 0, 2099 179, 180, 181, 223, 183, 355, 355, 0, 81, 0, 2100 0, 356, 0, 0, 0, 0, 0, 0, 234, 0, 2101 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 2102 249, 250, 0, 0, 0, 0, 353, 0, 353, 0, 2103 0, 0, 0, 0, 0, 0, 356, 177, 0, 0, 2104 0, 0, 88, 215, 0, 0, 0, 0, 0, 0, 2105 0, 0, 0, 0, 177, 214, 363, 0, 177, 0, 2106 0, 88, 0, 353, 0, 0, 355, 0, 0, 88, 2107 353, 353, 353, 0, 0, 0, 0, 0, 0, 356, 2108 0, 353, 353, 0, 0, 0, 0, 363, 0, 356, 2109 0, 0, 0, 0, 76, 225, 0, 0, 0, 0, 2110 356, 0, 0, 0, 0, 363, 0, 88, 224, 0, 2111 0, 216, 8, 9, 10, 11, 12, 0, 0, 0, 2112 0, 128, 128, 128, 0, 0, 0, 0, 79, 0, 2113 0, 0, 0, 353, 0, 0, 0, 0, 0, 0, 2114 0, 355, 0, 355, 33, 0, 0, 0, 0, 363, 2115 0, 0, 214, 0, 0, 0, 0, 0, 0, 0, 2116 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2117 0, 0, 36, 0, 0, 0, 0, 39, 355, 184, 2118 185, 42, 356, 0, 0, 355, 355, 355, 0, 356, 2119 43, 44, 0, 128, 0, 128, 355, 355, 0, 0, 2120 0, 0, 353, 0, 0, 0, 0, 0, 216, 79, 2121 0, 0, 363, 0, 0, 0, 596, 0, 597, 0, 2122 276, 0, 0, 0, 47, 48, 0, 0, 0, 0, 2123 0, 215, 788, 789, 0, 0, 0, 0, 0, 0, 2124 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 2125 76, 0, 0, 0, 0, 363, 363, 76, 0, 819, 2126 0, 0, 822, 823, 0, 826, 0, 828, 829, 0, 2127 0, 363, 830, 831, 588, 128, 595, 0, 0, 0, 2128 0, 0, 0, 128, 0, 128, 128, 619, 620, 363, 2129 128, 0, 128, 128, 0, 0, 0, 0, 356, 356, 2130 88, 356, 356, 0, 0, 0, 177, 0, 0, 76, 2131 0, 0, 0, 0, 0, 0, 0, 355, 0, 81, 2132 0, 177, 0, 0, 0, 0, 88, 0, 215, 363, 2133 0, 0, 0, 0, 177, 0, 0, 0, 0, 0, 2180 2134 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2181 1160, 1161, 0, 0, 0, 0, 166, 166, 0, 0, 2182 0, 0, 369, 0, 0, 0, 363, 0, 0, 0, 2183 0, 0, 0, 0, 0, 0, 1190, 212, 0, 1192, 2184 0, 0, 0, 523, 0, 0, 0, 0, 0, 0, 2185 0, 0, 0, 0, 1198, 0, 212, 0, 0, 0, 2186 0, 236, 238, 0, 0, 0, 0, 0, 0, 247, 2187 0, 709, 0, 0, 88, 0, 0, 0, 0, 0, 2188 0, 88, 1206, 0, 166, 0, 0, 0, 1210, 1211, 2189 0, 0, 0, 0, 0, 0, 523, 0, 523, 0, 2190 0, 523, 0, 166, 523, 0, 0, 1227, 0, 0, 2191 0, 212, 1234, 0, 0, 369, 0, 1238, 0, 0, 2192 0, 0, 0, 0, 0, 0, 0, 0, 1245, 212, 2193 0, 0, 0, 88, 212, 0, 212, 0, 0, 0, 2194 0, 1252, 0, 1254, 1255, 1256, 1257, 0, 0, 0, 2195 0, 0, 212, 0, 0, 212, 212, 0, 1264, 0, 2196 1160, 0, 0, 212, 173, 0, 0, 166, 0, 0, 2197 0, 0, 0, 0, 0, 0, 0, 212, 369, 0, 2198 0, 800, 1287, 0, 212, 0, 0, 0, 0, 0, 2199 0, 0, 1292, 1293, 0, 0, 1144, 0, 0, 8, 2200 9, 10, 11, 12, 0, 0, 0, 593, 0, 0, 2201 0, 0, 593, 158, 0, 0, 0, 0, 0, 0, 2202 0, 369, 369, 0, 0, 0, 0, 0, 0, 283, 2203 284, 33, 285, 0, 0, 0, 0, 369, 0, 0, 2204 0, 0, 0, 0, 0, 0, 1327, 1328, 0, 0, 2205 0, 0, 0, 0, 0, 0, 1338, 0, 286, 36, 2206 252, 0, 0, 0, 287, 0, 0, 0, 288, 523, 2207 257, 289, 290, 291, 292, 293, 294, 43, 44, 0, 2208 295, 296, 0, 0, 0, 0, 0, 0, 0, 0, 2209 0, 0, 0, 0, 0, 369, 212, 922, 0, 0, 2210 0, 0, 0, 297, 0, 378, 0, 283, 284, 0, 2211 285, 1145, 48, 299, 300, 301, 302, 0, 1373, 0, 2212 1374, 1375, 1376, 0, 212, 0, 0, 0, 0, 212, 2213 709, 0, 1380, 0, 0, 0, 286, 0, 0, 385, 2214 1391, 0, 287, 0, 0, 0, 288, 0, 0, 289, 2215 290, 291, 292, 293, 294, 43, 44, 0, 295, 296, 2216 0, 0, 417, 0, 0, 1412, 1413, 0, 0, 0, 2217 0, 0, 0, 0, 0, 0, 431, 0, 0, 0, 2218 0, 297, 0, 378, 0, 436, 0, 0, 617, 47, 2219 48, 299, 300, 301, 302, 444, 0, 0, 212, 0, 2220 0, 0, 780, 0, 0, 0, 0, 0, 0, 0, 2221 1452, 1453, 212, 0, 0, 0, 0, 0, 0, 0, 2222 462, 0, 0, 1458, 0, 472, 0, 0, 0, 0, 2223 1458, 0, 0, 496, 0, 0, 0, 0, 480, 0, 2224 0, 0, 0, 0, 491, 0, 495, 0, 0, 0, 2225 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2226 0, 0, 0, 1491, 0, 524, 0, 1497, 0, 0, 2227 0, 0, 0, 0, 0, 0, 369, 0, 0, 0, 2228 0, 0, 0, 709, 0, 0, 0, 0, 0, 0, 2229 0, 0, 212, 0, 0, 1519, 0, 1520, 523, 0, 2230 0, 0, 0, 212, 0, 0, 583, 0, 0, 0, 2231 587, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2232 212, 0, 0, 166, 0, 1535, 1536, 0, 0, 0, 2233 0, 0, 0, 1539, 1540, 0, 0, 0, 630, 0, 2234 0, 0, 631, 632, 0, 633, 0, 0, 0, 0, 2235 0, 0, 644, 645, 0, 646, 647, 0, 648, 0, 2236 649, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2237 0, 0, 0, 0, 0, 593, 0, 583, 0, 0, 2238 0, 0, 0, 0, 0, 664, 0, 0, 0, 341, 2239 364, 0, 0, 0, 0, 0, 369, 369, 0, 0, 2240 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, 2241 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2242 0, 0, 413, 0, 0, 0, 0, 0, 0, 413, 2243 0, 212, 0, 0, 0, 701, 0, 0, 0, 0, 2244 0, 704, 0, 0, 0, 0, 462, 0, 0, 0, 2245 0, 0, 0, 523, 0, 0, 0, 0, 0, 0, 2246 0, 212, 8, 9, 10, 11, 12, 13, 14, 15, 2247 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2248 26, 27, 0, 739, 28, 29, 30, 0, 0, 0, 2249 0, 0, 0, 212, 33, 0, 0, 0, 757, 0, 2250 0, 413, 0, 0, 212, 0, 0, 0, 0, 0, 2251 0, 0, 0, 0, 0, 0, 0, 0, 0, 709, 2252 0, 0, 36, 0, 0, 0, 0, 112, 0, 40, 2253 41, 0, 0, 0, 0, 782, 0, 0, 0, 0, 2254 43, 44, 0, 0, 792, 0, 0, 0, 0, 0, 2255 0, 0, 0, 0, 0, 0, 0, 0, 413, 0, 2256 219, 0, 0, 0, 813, 0, 413, 579, 46, 413, 2257 582, 0, 0, 212, 47, 48, 0, 364, 0, 0, 2258 0, 609, 0, 0, 0, 0, 0, 212, 0, 0, 2259 0, 0, 0, 0, 0, 0, 709, 0, 0, 0, 2260 627, 0, 852, 0, 8, 9, 10, 11, 12, 13, 2261 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 2262 24, 25, 26, 27, 0, 0, 28, 29, 30, 413, 2263 0, 0, 0, 413, 0, 0, 33, 0, 885, 0, 2264 0, 0, 0, 0, 0, 0, 892, 0, 0, 369, 2265 369, 0, 0, 0, 0, 0, 0, 219, 0, 0, 2266 0, 0, 0, 364, 36, 0, 0, 0, 0, 39, 2267 0, 208, 41, 42, 0, 212, 0, 252, 0, 0, 2268 0, 0, 43, 44, 0, 0, 0, 0, 930, 931, 2269 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2270 0, 0, 0, 0, 0, 0, 0, 0, 45, 413, 2271 271, 0, 364, 0, 0, 0, 47, 48, 0, 0, 2272 965, 0, 0, 0, 0, 969, 0, 8, 9, 10, 2273 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2274 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2275 29, 30, 413, 0, 0, 0, 364, 0, 0, 33, 2276 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2277 369, 0, 212, 0, 0, 0, 0, 0, 0, 0, 2278 0, 0, 0, 0, 0, 1002, 0, 36, 0, 0, 2279 0, 0, 1003, 0, 40, 41, 0, 0, 0, 0, 2280 413, 413, 0, 0, 0, 1005, 0, 1006, 0, 0, 2281 0, 0, 0, 0, 0, 0, 0, 0, 795, 364, 2282 1016, 0, 0, 0, 0, 0, 1020, 523, 609, 523, 2283 609, 609, 0, 258, 0, 324, 0, 609, 1057, 47, 2284 48, 1058, 0, 0, 0, 346, 0, 832, 364, 0, 2285 0, 0, 0, 364, 0, 0, 381, 381, 0, 0, 2286 0, 0, 364, 364, 523, 0, 523, 0, 0, 0, 2287 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 2288 0, 0, 0, 413, 873, 0, 0, 413, 876, 0, 2289 0, 0, 0, 166, 878, 0, 506, 0, 508, 511, 2290 0, 0, 0, 0, 0, 0, 0, 0, 514, 515, 2291 0, 0, 0, 413, 0, 0, 0, 0, 283, 284, 2292 0, 285, 0, 508, 508, 0, 0, 324, 0, 0, 2293 0, 0, 0, 0, 0, 0, 364, 609, 0, 0, 2294 0, 0, 0, 0, 0, 0, 0, 286, 0, 1128, 2295 0, 476, 0, 634, 0, 141, 142, 288, 508, 0, 2296 289, 290, 291, 292, 293, 294, 43, 44, 0, 295, 2297 296, 364, 0, 0, 0, 413, 413, 0, 0, 0, 2298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2299 0, 0, 297, 508, 635, 0, 636, 379, 0, 0, 2300 47, 48, 299, 300, 301, 302, 0, 0, 0, 0, 2301 1191, 0, 0, 0, 0, 0, 0, 0, 413, 0, 2302 0, 0, 0, 212, 0, 0, 0, 0, 0, 0, 2303 0, 0, 0, 0, 609, 0, 609, 0, 0, 0, 2304 0, 0, 0, 0, 1203, 0, 609, 0, 0, 1205, 2305 0, 0, 0, 0, 0, 0, 0, 1209, 0, 0, 2306 0, 0, 0, 0, 0, 0, 381, 0, 8, 9, 2307 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2308 20, 21, 22, 23, 24, 25, 26, 27, -299, 0, 2309 0, 1240, 0, 0, 0, 0, 0, 0, 0, 0, 2310 33, 0, 1247, 0, 0, 1248, 0, 1249, 0, 0, 2311 0, 0, 0, 0, 0, 0, 0, 364, 0, 0, 2312 0, 0, 1258, 1259, 364, 413, 0, 413, 36, 0, 2313 0, 413, 0, 0, 0, 0, 0, 0, 0, -299, 2314 0, 0, 1271, 0, 0, 0, 0, 0, 0, 0, 2315 0, 0, 609, 609, 0, 0, 0, 0, 0, 703, 2316 0, 0, 508, 508, 508, 508, 508, 508, 508, 508, 2317 508, 508, 508, 508, 508, 508, 508, 508, 508, 508, 2318 0, 0, 0, 0, 0, 0, 0, 413, 1310, 0, 2319 0, 0, 0, 0, 0, 0, 1314, 0, 0, 736, 2320 0, 0, 0, 0, 0, 0, 413, 1126, 0, 0, 2321 0, 752, 0, 0, 0, 0, 364, 736, 0, 0, 2322 736, 0, 413, 1137, 0, 609, 609, 1142, 0, 0, 2323 0, 0, 0, 761, 0, 0, 0, 364, 364, 0, 2324 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2325 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2326 0, 0, 0, 790, 0, 0, 1361, 0, 1362, 0, 2327 346, 0, 33, 0, 752, 0, 0, 0, 0, 0, 2328 0, 0, 0, 0, 1371, 0, 1372, 0, 0, 0, 2329 0, 0, 0, 0, 0, 0, 0, 413, 0, 413, 2330 36, 1379, 508, 0, 413, 0, 0, 0, 0, 0, 2331 0, 0, 0, 609, 0, 0, 1397, 1399, 0, 0, 2332 851, 0, 0, 0, 0, 0, 0, 1404, 381, 0, 2333 1209, 0, 0, 0, 0, 0, 413, 1223, 0, 0, 2334 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2335 0, 0, 1427, 0, 0, 0, 0, 0, 0, 0, 2336 364, 1434, 0, 508, 1436, 0, 1438, 1440, 1442, 0, 2337 0, 0, 0, 8, 9, 10, 11, 12, 13, 14, 2338 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2339 25, 26, 27, 508, 0, 28, 29, 30, 483, 484, 2340 485, 486, 0, 0, 927, 33, 0, 1473, 0, 1475, 2341 0, 1209, 0, 0, 0, 0, 0, 0, 0, 0, 2342 0, 0, 0, 0, 0, 0, 752, 1486, 951, 0, 2343 0, 0, 0, 36, 0, 0, 0, 364, 961, 0, 2344 40, 41, 0, 0, 968, 0, 0, 1, 2, 3, 2345 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 2346 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 2347 24, 25, 26, 27, 0, 0, 28, 29, 30, 31, 2348 0, 0, 0, 32, 985, 986, 33, 34, 0, 0, 2349 364, 364, 0, 0, 0, 0, 0, 0, 0, 0, 2350 346, 0, 0, 0, 0, 0, 0, 508, 0, 0, 2351 0, 35, 0, 0, 36, 0, 37, 0, 38, 39, 2352 0, 40, 41, 42, 0, 0, 0, 0, 0, 0, 2353 0, 0, 43, 44, 0, 0, 0, 0, 0, 1014, 2354 0, 0, 0, 381, 0, 0, 0, 283, 284, 0, 2355 285, 0, 0, 508, 0, 0, 0, 0, 45, 0, 2356 46, 0, 0, 0, -528, 0, 47, 48, 0, 0, 2357 0, 0, 346, 0, 0, 0, 286, 0, 0, 346, 2358 0, 0, 287, 0, 0, 508, 288, 0, 0, 289, 2359 290, 291, 292, 293, 294, 43, 44, 508, 295, 296, 2360 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2361 0, 364, 0, 0, 0, 0, 0, 0, 0, 324, 2362 0, 297, 0, 378, 0, 0, 379, 0, 0, 47, 2363 48, 299, 300, 301, 302, 0, 508, 0, 0, 0, 2364 0, 0, 0, 0, 0, 0, 381, 0, 0, 0, 2365 0, 961, 0, 0, 736, 0, 0, 0, 0, 0, 2366 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2367 0, 0, 0, 0, 1132, 0, 0, 0, 0, 0, 2368 0, 0, 0, 0, 0, 1147, 0, 0, 0, 0, 2369 0, 0, 283, 284, 0, 285, 0, 0, 0, 0, 2370 413, 0, 0, 0, 0, 381, 0, 1164, 0, 0, 2371 0, 0, 508, 0, 0, 0, 0, 0, 0, 0, 2372 0, 286, 961, 961, 413, 413, 0, 287, 0, 0, 2373 0, 288, 0, 0, 289, 290, 291, 292, 293, 294, 2374 43, 44, 1195, 295, 296, 0, 0, 0, 0, 413, 2375 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2376 0, 0, 0, 0, 0, 0, 297, 0, 378, 0, 2377 0, 508, 508, 751, 47, 48, 299, 300, 301, 302, 2378 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2379 0, 0, 0, 0, 0, 0, 961, 0, 0, 0, 2380 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2381 0, 0, 0, 0, 0, 851, 0, 0, 0, 0, 2382 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2383 1250, 1251, 1, 2, 207, 4, 5, 6, 7, 8, 2384 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 2385 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 2386 0, 28, 29, 30, 31, 0, 0, 0, 32, 283, 2387 284, 33, 1023, 1024, 0, 1025, 0, 0, 1026, 1027, 2388 1028, 1029, 1030, 1031, 1032, 1033, 0, 0, 0, 1034, 2389 0, 0, 0, 1035, 1036, 0, 35, 0, 286, 36, 2390 0, 37, 0, 38, 1037, 0, 40, 41, 288, 0, 2391 0, 289, 290, 291, 292, 293, 294, 43, 44, 0, 2392 295, 296, 0, 0, 0, 0, 0, 0, 0, 0, 2393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2394 0, 0, 0, 297, 0, 298, 0, 0, 172, 0, 2395 0, 47, 48, 299, 300, 301, 302, 0, 0, 0, 2396 0, 1038, 0, 0, 0, 0, -134, 0, 0, 0, 2397 0, 0, 1355, 0, 0, 736, 0, 0, 0, 508, 2398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2399 0, 0, 0, 0, 0, 0, 508, 0, 0, 0, 2400 0, 0, 0, 0, 1, 2, 207, 4, 5, 6, 2135 0, 0, 0, 0, 0, 0, 0, 0, 0, 356, 2136 356, 0, 128, 0, 363, 79, 0, 0, 0, 0, 2137 0, 0, 79, 0, 1, 2, 207, 4, 5, 6, 2401 2138 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2402 2139 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2403 27, 0, 0, 28, 29, 30, 31, 0, 0, 0,2404 32, 283, 284, 33, 285, 0, 0, 0, 0, 0,2405 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2406 0, 0, 0, 0, 0, 0, 0, 0, 508, 508,2140 27, 0, 0, 28, 29, 30, 31, 363, 956, 957, 2141 32, 283, 284, 33, 285, 0, 0, 363, 0, 0, 2142 0, 0, 0, 226, 79, 0, 0, 0, 363, 0, 2143 356, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2407 2144 286, 36, 0, 37, 0, 38, 287, 0, 40, 41, 2408 2145 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2409 2146 44, 0, 295, 296, 0, 0, 0, 0, 0, 0, 2147 0, 0, 225, 0, 0, 0, 0, 0, 0, 0, 2148 0, 0, 0, 283, 284, 297, 285, 298, 88, 0, 2149 0, 0, 81, 47, 48, 299, 300, 301, 302, 0, 2150 0, 0, 0, 0, 0, 356, 0, 356, -134, 0, 2151 363, 0, 286, 0, 0, 0, 0, 363, 287, 0, 2152 0, 0, 288, 0, 0, 289, 290, 291, 292, 293, 2153 294, 43, 44, 0, 295, 296, 0, 0, 0, 0, 2154 0, 0, 356, 0, 0, 0, 0, 0, 0, 356, 2155 356, 356, 177, 0, 0, 0, 0, 297, 0, 378, 2156 356, 356, 379, 0, 1077, 47, 48, 299, 300, 301, 2157 302, 0, 0, 81, 465, 2, 207, 4, 5, 6, 2158 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2159 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2160 27, 0, 0, 28, 29, 30, 0, 0, 0, 0, 2161 0, 0, 356, 33, 0, 0, 0, 0, 0, 0, 2162 0, 0, 0, 913, 0, 914, 363, 363, 0, 363, 2163 363, 0, 917, 918, 0, 0, 0, 923, 0, 0, 2164 0, 36, 0, 37, 0, 38, 0, 88, 40, 41, 2165 929, 0, 0, 0, 0, 933, 0, 0, 0, 0, 2166 0, 0, 0, 0, 0, 128, 128, 0, 0, 0, 2410 2167 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2411 0, 0, 0, 0, 0, 297, 0, 298, 0, 0, 2168 0, 356, 595, 0, 0, 0, 0, 363, 363, 0, 2169 -3, 0, 128, 0, 0, 128, 128, 0, 128, 0, 2170 128, 128, 0, 0, 0, 128, 128, 0, 0, 0, 2171 0, 0, 0, 0, 177, 0, 0, 177, 177, 177, 2172 0, 0, 0, 0, 1203, 0, 0, 0, 0, 81, 2173 0, 0, 0, 0, 0, 0, 81, 166, 0, 8, 2174 9, 10, 11, 12, 0, 0, 0, 0, 0, 0, 2175 0, 0, 0, 0, 219, 0, 0, 0, 363, 8, 2176 9, 10, 11, 12, 0, 0, 0, 0, 0, 0, 2177 0, 33, 0, 0, 0, 1006, 0, 1007, 1008, 1009, 2178 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 2179 0, 33, 0, 0, 0, 0, 1059, 0, 0, 36, 2180 226, 166, 0, 0, 39, 273, 184, 185, 42, 0, 2181 1065, 0, 0, 0, 0, 0, 0, 43, 44, 36, 2182 88, 0, 0, 0, 39, 0, 184, 185, 42, 0, 2183 0, 0, 0, 363, 166, 363, 0, 43, 44, 0, 2184 0, 128, 128, 893, 369, 410, 0, 374, 0, 1085, 2185 0, 47, 48, 0, 0, 0, 0, 1295, 0, 0, 2186 0, 0, 0, 1497, 0, 410, 0, 0, 0, 0, 2187 363, 47, 48, 0, 0, 0, 0, 363, 363, 363, 2188 0, 0, 0, 0, 177, 0, 0, 0, 363, 363, 2189 0, 0, 1115, 0, 0, 0, 166, 1125, 0, 0, 2190 0, 88, 1128, 0, 0, 0, 0, 1132, 219, 0, 2191 0, 0, 1134, 0, 1135, 1136, 0, 0, 1139, 0, 2192 0, 0, 0, 0, 0, 0, 166, 1151, 0, 0, 2193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2194 363, 0, 0, 1165, 1166, 0, 0, 0, 212, 0, 2195 0, 374, 0, 0, 0, 0, 0, 232, 166, 236, 2196 0, 238, 0, 0, 0, 0, 0, 0, 247, 0, 2197 0, 0, 0, 0, 1194, 0, 0, 1196, 0, 0, 2198 0, 0, 0, 523, 177, 0, 0, 0, 0, 0, 2199 0, 0, 128, 0, 0, 0, 166, 128, 0, 212, 2200 0, 236, 238, 247, 0, 0, 0, 0, 0, 363, 2201 8, 9, 10, 11, 12, 0, 0, 0, 0, 0, 2202 0, 1211, 0, 0, 0, 0, 0, 1215, 1216, 0, 2203 0, 593, 0, 0, 177, 0, 617, 177, 0, 0, 2204 0, 212, 33, 0, 0, 0, 1232, 0, 0, 0, 2205 0, 1239, 0, 0, 0, 177, 1243, 88, 0, 0, 2206 0, 0, 0, 0, 88, 0, 0, 1250, 0, 0, 2207 36, 0, 0, 0, 0, 39, 0, 184, 185, 42, 2208 1257, 177, 1259, 1260, 1261, 1262, 177, 0, 43, 44, 2209 0, 0, 0, 0, 0, 0, 0, 1269, 0, 1165, 2210 0, 0, 212, 173, 236, 238, 247, 0, 0, 0, 2211 0, 166, 166, 0, 186, 177, 88, 369, 0, 0, 2212 0, 0, 47, 48, 0, 0, 0, 0, 0, 0, 2213 0, 1297, 1298, 0, 0, 0, 0, 0, 523, 0, 2214 212, 0, 0, 0, 0, 212, 0, 0, 0, 0, 2215 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 2216 0, 0, 0, 0, 0, 0, 709, 0, 0, 0, 2217 0, 0, 0, 0, 0, 0, 0, 177, 0, 166, 2218 0, 0, 177, 0, 0, 1332, 1333, 0, 0, 0, 2219 0, 523, 0, 523, 0, 1343, 523, 0, 166, 523, 2220 177, 0, 177, 0, 0, 0, 177, 0, 0, 177, 2221 369, 212, 0, 0, 0, 0, 0, 177, 0, 0, 2222 0, 177, 0, 0, 0, 0, 0, 0, 0, 0, 2223 212, 0, 0, 0, 0, 236, 238, 0, 0, 0, 2224 0, 0, 0, 247, 0, 0, 0, 0, 0, 0, 2225 0, 0, 0, 0, 0, 0, 0, 1378, 0, 1379, 2226 1380, 1381, 166, 0, 0, 0, 0, 0, 0, 0, 2227 0, 1385, 0, 369, 0, 0, 800, 0, 0, 1396, 2228 0, 0, 0, 0, 158, 212, 0, 0, 0, 0, 2229 128, 0, 8, 9, 10, 11, 12, 0, 0, 0, 2230 0, 0, 593, 212, 1417, 1418, 0, 593, 212, 0, 2231 212, 0, 0, 0, 0, 0, 369, 369, 0, 0, 2232 0, 0, 0, 0, 33, 0, 212, 0, 0, 212, 2233 212, 252, 369, 0, 0, 0, 0, 212, 0, 0, 2234 0, 257, 0, 0, 0, 0, 0, 0, 0, 1457, 2235 1458, 212, 36, 0, 0, 0, 0, 39, 212, 184, 2236 185, 42, 1463, 0, 523, 0, 0, 0, 0, 1463, 2237 43, 44, 0, 0, 0, 0, 0, 0, 0, 0, 2238 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2239 369, 0, 922, 0, 0, 0, 266, 0, 0, 0, 2240 0, 0, 1496, 0, 47, 48, 1502, 0, 0, 0, 2241 385, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2242 0, 0, 0, 0, 0, 709, 0, 0, 0, 0, 2243 0, 0, 0, 417, 1524, 0, 1525, 0, 0, 0, 2244 0, 0, 0, 0, 0, 0, 0, 431, 0, 0, 2245 0, 0, 0, 0, 0, 0, 436, 0, 0, 0, 2246 0, 0, 0, 0, 1540, 1541, 444, 0, 0, 0, 2247 212, 0, 1544, 1545, 0, 0, 0, 0, 0, 0, 2248 0, 0, 0, 617, 0, 0, 0, 0, 0, 0, 2249 0, 462, 0, 0, 0, 0, 472, 0, 212, 0, 2250 0, 0, 0, 212, 0, 0, 0, 0, 0, 480, 2251 0, 0, 0, 0, 0, 491, 0, 495, 0, 0, 2252 506, 0, 508, 511, 0, 0, 0, 0, 0, 0, 2253 0, 0, 514, 515, 0, 0, 524, 0, 0, 0, 2254 0, 0, 0, 0, 0, 0, 0, 508, 508, 0, 2255 0, 0, 0, 0, 0, 0, 283, 284, 0, 285, 2256 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2257 0, 369, 212, 0, 0, 0, 0, 583, 709, 0, 2258 0, 587, 508, 0, 0, 286, 212, 0, 0, 0, 2259 0, 287, 0, 523, 0, 288, 0, 0, 289, 290, 2260 291, 292, 293, 294, 43, 44, 0, 295, 296, 630, 2261 0, 0, 0, 631, 632, 0, 633, 508, 166, 0, 2262 0, 0, 0, 644, 645, 0, 646, 647, 0, 648, 2263 297, 649, 378, 0, 0, 0, 0, 0, 47, 48, 2264 299, 300, 301, 302, 0, 0, 0, 0, 583, 0, 2265 0, 780, 0, 0, 0, 0, 664, 0, 0, 0, 2266 0, 0, 0, 0, 0, 0, 212, 0, 0, 593, 2267 0, 0, 0, 0, 0, 0, 0, 212, 0, 0, 2268 675, 283, 284, 0, 285, 0, 0, 0, 0, 0, 2269 369, 369, 0, 0, 212, 0, 0, 0, 0, 0, 2270 0, 0, 0, 0, 0, 0, 701, 0, 0, 0, 2271 286, 0, 704, 0, 0, 0, 634, 462, 141, 142, 2272 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2273 44, 0, 295, 296, 0, 0, 0, 0, 0, 0, 2274 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2275 0, 0, 0, 523, 739, 297, 0, 635, 0, 636, 2276 379, 0, 0, 47, 48, 299, 300, 301, 302, 757, 2277 0, 0, 0, 0, 996, 0, 0, 8, 9, 10, 2278 11, 12, 0, 0, 0, 0, 508, 508, 508, 508, 2279 508, 508, 508, 508, 508, 508, 508, 508, 508, 508, 2280 508, 508, 508, 508, 0, 212, 782, 283, 284, 33, 2281 285, 0, 0, 0, 0, 792, 0, 0, 0, 709, 2282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2283 0, 0, 0, 0, 212, 813, 286, 36, 0, 0, 2284 0, 0, 287, 0, 0, 0, 288, 0, 0, 289, 2285 290, 291, 292, 293, 294, 43, 44, 0, 295, 296, 2286 219, 0, 0, 0, 0, 0, 212, 0, 0, 0, 2287 0, 0, 0, 852, 0, 0, 0, 212, 0, 0, 2288 0, 297, 0, 378, 0, 0, 0, 0, 0, 344, 2289 48, 299, 300, 301, 302, 0, 709, 0, 0, 0, 2290 0, 0, 0, 0, 0, 0, 0, 0, 0, 885, 2291 0, 0, 0, 0, 0, 0, 0, 892, 0, 0, 2292 0, 0, 0, 0, 0, 0, 508, 0, 0, 0, 2293 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2294 0, 0, 0, 0, 0, 0, 0, 0, 252, 369, 2295 369, 0, 212, 0, 0, 0, 0, 219, 0, 930, 2296 931, 0, 0, 0, 0, 0, 212, 8, 9, 10, 2297 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2298 21, 22, 23, 24, 25, 26, 27, 508, 0, 0, 2299 0, 964, 0, 0, 0, 0, 968, 0, 0, 33, 2300 0, 0, 0, 341, 364, 0, 0, 0, 0, 0, 2301 0, 0, 0, 0, 0, 0, 0, 508, 0, 0, 2302 0, 0, 0, 0, 0, 0, 1149, 36, 0, 8, 2303 9, 10, 11, 12, 0, 0, 413, 0, 0, 0, 2304 0, 0, 0, 413, 0, 0, 0, 0, 0, 0, 2305 0, 0, 0, 0, 212, 0, 1001, 0, 0, 283, 2306 284, 33, 285, 1002, 0, 0, 0, 0, 0, 0, 2307 369, 0, 0, 0, 0, 0, 1004, 0, 1005, 0, 2308 0, 0, 0, 0, 0, 0, 0, 0, 286, 36, 2309 0, 1015, 0, 0, 287, 0, 0, 1019, 288, 0, 2310 0, 289, 290, 291, 292, 293, 294, 43, 44, 1062, 2311 295, 296, 1063, 0, 0, 413, 0, 0, 0, 0, 2312 0, 0, 0, 0, 0, 0, 0, 523, 0, 523, 2313 0, 508, 0, 297, 0, 378, 0, 0, 0, 0, 2314 0, 1150, 48, 299, 300, 301, 302, 0, 0, 0, 2315 0, 212, 0, 0, 0, 0, 0, 0, 0, 0, 2316 0, 0, 0, 0, 523, 0, 523, 0, 0, 0, 2317 0, 0, 413, 0, 0, 0, 508, 0, 0, 0, 2318 413, 579, 324, 413, 582, 0, 0, 0, 0, 0, 2319 0, 364, 346, 166, 0, 609, 0, 0, 0, 0, 2320 0, 0, 0, 381, 381, 0, 0, 0, 508, 0, 2321 0, 0, 0, 0, 627, 0, 0, 0, 0, 1133, 2322 508, 0, 8, 9, 10, 11, 12, 13, 14, 15, 2323 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2324 26, 27, 0, 413, 28, 29, 30, 413, 0, 0, 2325 0, 0, 0, 0, 33, 0, 0, 0, 0, 508, 2326 0, 0, 0, 0, 283, 284, 0, 285, 0, 0, 2327 0, 0, 0, 0, 324, 0, 0, 364, 0, 0, 2328 0, 0, 36, 0, 0, 1195, 0, 112, 0, 40, 2329 41, 0, 0, 286, 0, 0, 0, 0, 476, 287, 2330 43, 44, 0, 288, 0, 0, 289, 290, 291, 292, 2331 293, 294, 43, 44, 0, 295, 296, 0, 0, 0, 2332 1208, 0, 0, 413, 0, 1210, 364, 0, 46, 0, 2333 0, 0, 0, 1214, 47, 48, 0, 0, 297, 0, 2334 378, 508, 0, 0, 0, 751, 47, 48, 299, 300, 2335 301, 302, 0, 0, 0, 0, 0, 0, 0, 0, 2336 0, 0, 0, 0, 0, 0, 413, 1245, 0, 0, 2337 364, 0, 0, 0, 0, 0, 0, 0, 1252, 0, 2338 0, 1253, 0, 1254, 0, 0, 0, 0, 0, 0, 2339 0, 0, 0, 0, 0, 0, 0, 0, 1263, 1264, 2340 508, 508, 212, 0, 0, 0, 0, 0, 0, 0, 2341 0, 0, 0, 381, 413, 413, 0, 0, 1276, 0, 2342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2343 0, 0, 795, 364, 0, 0, 283, 284, 0, 285, 2344 0, 0, 609, 0, 609, 609, 0, 0, 0, 0, 2345 0, 609, 0, 0, 0, 0, 0, 0, 0, 0, 2346 0, 832, 364, 0, 1315, 286, 0, 364, 0, 0, 2347 0, 287, 1319, 0, 0, 288, 364, 364, 289, 290, 2348 291, 292, 293, 294, 43, 44, 0, 295, 296, 0, 2349 0, 0, 364, 0, 0, 0, 0, 413, 873, 0, 2350 0, 413, 876, 0, 0, 0, 703, 0, 878, 0, 2351 297, 0, 378, 0, 0, 958, 0, 0, 47, 48, 2352 299, 300, 301, 302, 0, 0, 0, 413, 0, 0, 2353 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2354 0, 0, 1366, 0, 1367, 0, 736, 0, 0, 0, 2355 364, 609, 0, 0, 0, 0, 0, 0, 752, 0, 2356 1376, 0, 1377, 0, 736, 0, 0, 736, 0, 0, 2357 0, 0, 0, 0, 0, 0, 0, 1384, 0, 0, 2358 761, 0, 0, 0, 0, 364, 0, 0, 0, 413, 2359 413, 0, 1402, 1404, 0, 0, 0, 0, 0, 0, 2360 0, 0, 0, 1409, 0, 0, 1214, 0, 508, 0, 2361 790, 0, 0, 0, 0, 0, 0, 346, 0, 0, 2362 0, 752, 0, 0, 0, 508, 0, 0, 1432, 0, 2363 0, 0, 413, 0, 0, 0, 0, 1439, 0, 0, 2364 1441, 0, 1443, 1445, 1447, 0, 0, 0, 609, 0, 2365 609, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2366 609, 0, 0, 0, 0, 0, 0, 851, 0, 0, 2367 0, 0, 0, 0, 0, 381, 0, 0, 0, 0, 2368 0, 0, 0, 1478, 0, 1480, 0, 1214, 0, 0, 2369 0, 0, 0, 0, 0, 0, 0, 508, 508, 0, 2370 0, 0, 0, 1491, 2, 207, 4, 5, 6, 7, 2371 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2372 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2373 0, 364, 28, 29, 30, 0, 0, 0, 364, 413, 2374 0, 413, 33, 0, 0, 413, 0, 0, 0, 0, 2375 0, 927, 0, 0, 0, 0, 0, 0, 0, 0, 2376 0, 0, 736, 0, 0, 0, 609, 609, 0, 0, 2377 36, 0, 37, 752, 38, 950, 0, 40, 41, 0, 2378 0, 0, 0, 0, 0, 960, 0, 0, 0, 0, 2379 0, 967, 0, 0, 0, 0, 0, 0, 0, 0, 2380 413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2381 0, 0, 0, 0, 0, -407, 671, 0, 0, 413, 2382 1131, 0, 47, 48, 0, 0, 0, 0, 0, 364, 2383 0, 984, 985, 0, 0, 413, 1142, 0, 609, 609, 2384 1147, 0, 0, 0, 0, 0, 0, 346, 0, 0, 2385 364, 364, 0, 0, 0, 0, 0, 0, 0, 0, 2386 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2387 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2388 27, 0, 0, 28, 29, 30, 1013, 0, 0, 0, 2389 381, 0, 0, 33, 678, 0, 0, 0, 0, 0, 2390 0, 283, 284, 0, 285, 0, 0, 0, 0, 0, 2391 0, 0, 0, 0, 0, 0, 413, 0, 413, 346, 2392 0, 36, 0, 413, 0, 0, 346, 0, 40, 41, 2393 286, 0, 609, 0, 0, 0, 287, 0, 0, 0, 2394 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2395 44, 0, 295, 296, 0, 413, 1228, 0, 0, 0, 2396 0, 0, 0, 0, 0, 0, 324, 679, 0, 0, 2397 0, 680, 0, 47, 48, 297, 0, 378, 0, 364, 2412 2398 0, 0, 0, 47, 48, 299, 300, 301, 302, 0, 2413 0, 0, 0, 0, 0, 0, 0, 0, -134, 1, 2399 0, 0, 381, 0, 0, 0, 0, 960, 283, 284, 2400 736, 285, 1023, 0, 1024, 0, 0, 1025, 1026, 1027, 2401 1028, 1029, 1030, 1031, 1032, 0, 0, 1516, 1033, 0, 2402 1137, 0, 1034, 1035, 0, 35, 0, 286, 0, 0, 2403 0, 1152, 0, 1036, 0, 175, 176, 1039, 0, 0, 2404 289, 290, 291, 292, 293, 294, 43, 44, 0, 295, 2405 296, 381, 0, 1169, 0, 0, 364, 0, 0, 0, 2406 0, 0, 0, 0, 0, 0, 0, 0, 960, 960, 2407 0, 0, 297, 0, 378, 0, 0, 172, 0, 0, 2408 47, 48, 299, 300, 301, 302, 283, 284, 0, 285, 2409 1040, 0, 0, 0, 1200, -134, 0, 0, 0, 0, 2410 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 2411 364, 0, 0, 0, 0, 286, 0, 0, 0, 0, 2412 0, 287, 0, 0, 0, 288, 0, 0, 289, 290, 2413 291, 292, 293, 294, 43, 44, 0, 295, 296, 0, 2414 0, 0, 0, 0, 0, 0, 0, 0, 960, 0, 2415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2416 505, 0, 378, 0, 0, 0, 0, 851, 47, 48, 2417 299, 300, 301, 302, 0, 0, 0, 0, 0, 0, 2418 0, 0, 1255, 1256, 0, 0, 1, 2, 207, 4, 2419 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 2420 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2421 25, 26, 27, 0, 0, 28, 29, 30, 31, 0, 2422 0, 0, 32, 283, 284, 33, 1022, 1023, 0, 1024, 2423 364, 0, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 2424 0, 0, 0, 1033, 0, 0, 0, 1034, 1035, 0, 2425 35, 0, 286, 36, 0, 37, 0, 38, 1036, 0, 2426 1037, 1038, 1039, 0, 0, 289, 290, 291, 292, 293, 2427 294, 43, 44, 0, 295, 296, 0, 0, 0, 0, 2428 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2429 0, 0, 0, 0, 0, 0, 0, 297, 0, 298, 2430 0, 0, 172, 0, 0, 47, 48, 299, 300, 301, 2431 302, 0, 0, 0, 0, 1040, 0, 0, 0, 413, 2432 -134, 0, 0, 0, 1360, 0, 736, 0, 0, 0, 2433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2434 0, 0, 0, 413, 413, 0, 0, 0, 0, 0, 2435 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2436 0, 0, 0, 0, 0, 0, 0, 0, 413, 1, 2414 2437 2, 207, 4, 5, 6, 7, 8, 9, 10, 11, 2415 2438 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2416 2439 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2417 2440 30, 31, 0, 0, 0, 32, 283, 284, 33, 285, 2418 0, 0, 0, 0, 0, 0, 0, 0, 0, 324,2419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2420 0, 0, 0, 0, 0, 286, 36, 0, 37, 0,2421 38, 287, 0, 40, 41, 288, 0, 0, 289, 290,2441 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2442 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2443 -298, 0, 0, 0, 0, 286, 36, 0, 37, 0, 2444 38, 287, 33, 40, 41, 288, 0, 0, 289, 290, 2422 2445 291, 292, 293, 294, 43, 44, 0, 295, 296, 0, 2423 2446 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2425 297, 0, 298, 0, 0, 0, 0, 0, 47, 48,2447 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2448 297, -298, 298, 0, 0, 0, 0, 0, 47, 48, 2426 2449 299, 300, 301, 302, 2, 207, 4, 5, 6, 7, 2427 2450 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2428 2451 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2429 2452 0, 0, 28, 29, 30, 0, 0, 0, 0, 0, 2430 283, 284, 33, 285, 8, 9, 10, 11, 12, 13,2431 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,2432 24, 25, 26, 27, 0, 0, 28, 29, 30, 286,2433 36, 0, 37, 0, 38, 287, 33, 40, 41, 288,2453 283, 284, 33, 285, 0, 0, 0, 0, 0, 0, 2454 0, 324, 0, 0, 0, 0, 0, 0, 0, 0, 2455 0, 0, 0, 0, 0, 0, 0, 0, 0, 286, 2456 36, 0, 37, 0, 38, 287, 0, 40, 41, 288, 2434 2457 0, 0, 289, 290, 291, 292, 293, 294, 43, 44, 2435 2458 0, 295, 296, 0, 0, 0, 0, 0, 0, 0, 2436 0, 0, 0, 0, 36, 0, 0, 0, 0, 0,2437 0, 40, 41, 0, 297, 0, 343, 0, 0, 0,2459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2460 0, 0, 0, 0, 297, 0, 343, 0, 0, 0, 2438 2461 0, 751, 344, 48, 299, 300, 301, 302, 2, 207, 2439 2462 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, … … 2442 2465 0, 0, 0, 0, 283, 284, 33, 285, 8, 9, 2443 2466 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2444 20, 21, 22, 23, 24, 25, 26, 27, 0, 0,2445 28, 29, 30, 286, 36, 0, 37, 0, 38, 287,2467 20, 21, 22, 23, 24, 25, 26, 27, -299, 0, 2468 0, 0, 0, 286, 36, 0, 37, 0, 38, 287, 2446 2469 33, 40, 41, 288, 0, 0, 289, 290, 291, 292, 2447 2470 293, 294, 43, 44, 0, 295, 296, 0, 0, 0, 2448 2471 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 2449 0, 0, 0, 0, 0, 208, 41, 0, 297, 0,2472 0, 0, 0, 0, 0, 0, 0, 0, 297, -299, 2450 2473 343, 0, 0, 0, 0, 751, 47, 48, 299, 300, 2451 2474 301, 302, 2, 207, 4, 5, 6, 7, 8, 9, … … 2453 2476 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 2454 2477 28, 29, 30, 0, 0, 0, 0, 0, 283, 284, 2455 33, 285, 0, 0, 0, 0, 0, 0, 0, 0,2456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2457 0, 0, 0, 0, 0, 0,0, 286, 36, 0,2458 37, 0, 38, 287, 0, 40, 41, 288, 0, 0,2478 33, 285, 8, 9, 10, 11, 12, 13, 14, 15, 2479 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2480 26, 27, 0, 0, 28, 29, 30, 286, 36, 0, 2481 37, 0, 38, 287, 33, 40, 41, 288, 0, 0, 2459 2482 289, 290, 291, 292, 293, 294, 43, 44, 0, 295, 2460 2483 296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2461 0, 0, 0, 0, 0, 0, 0, 0, 0,0,2462 0, 0, 297, 0, 343, 0, 0, 0, 0, 0,2484 0, 0, 36, 0, 0, 0, 0, 0, 0, 40, 2485 41, 0, 297, 0, 343, 0, 0, 0, 0, 0, 2463 2486 344, 48, 299, 300, 301, 302, 2, 207, 4, 5, 2464 2487 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 2465 2488 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2466 2489 26, 27, 0, 0, 28, 29, 30, 0, 0, 0, 2467 0, 0, 283, 284, 33, 285, 0, 0, 0, 0,2468 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2470 0, 286, 36, 0, 37, 0, 38, 287, 0, 208,2490 0, 0, 283, 284, 33, 285, 8, 9, 10, 11, 2491 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2492 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2493 30, 286, 36, 0, 37, 0, 38, 287, 33, 208, 2471 2494 41, 288, 0, 0, 289, 290, 291, 292, 293, 294, 2472 2495 43, 44, 0, 295, 296, 0, 0, 0, 0, 0, 2473 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2474 0, 0, 0, 0, 0, 0, 297, 0, 982, 0,2475 0, 0, 0, 0, 98 3, 48, 299, 300, 301, 302,2496 0, 0, 0, 0, 0, 0, 36, 0, 0, 0, 2497 0, 0, 0, 208, 41, 0, 297, 0, 981, 0, 2498 0, 0, 0, 0, 982, 48, 299, 300, 301, 302, 2476 2499 2, 207, 4, 5, 6, 7, 8, 9, 10, 11, 2477 2500 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, … … 2510 2533 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2511 2534 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 2512 0, 46, 0, 0, 0, 0, 0, 47, 48, 206,2513 2, 207, 4, 5, 6, 7, 8, 9, 10, 11,2535 0, 46, 0, 0, 0, -528, 0, 47, 48, 1, 2536 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 2514 2537 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2515 2538 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2516 30, 0, 0, 0, 0, 0, 0, 0, 33, 0,2539 30, 31, 0, 0, 0, 32, 0, 0, 33, 34, 2517 2540 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2518 2541 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2519 0, 0, 0, 0, 0, 0, 36, 0, 37, 0,2520 38, 39, 0, 208, 41, 42, 0, 0, 0, 0,2542 0, 0, 0, 35, 0, 0, 36, 0, 37, 0, 2543 38, 39, 0, 40, 41, 42, 0, 0, 0, 0, 2521 2544 0, 0, 0, 0, 43, 44, 0, 0, 0, 0, 2522 2545 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2523 2546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2524 45, 0, 209, 0, 0, 0, 0, 0, 47, 48, 2525 1, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2526 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2527 21, 22, 23, 24, 25, 26, 27, -298, 0, 28, 2528 29, 30, 31, 0, 0, 0, 32, 0, 0, 33, 2529 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2530 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2531 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, 2532 0, 38, 0, 0, 40, 41, 0, 0, -298, 1, 2533 2, 207, 4, 5, 6, 7, 8, 9, 10, 11, 2534 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2535 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2536 30, 31, 0, 46, 0, 32, 0, 0, 33, 47, 2537 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2538 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2539 0, 0, 0, 0, 0, 0, 36, 0, 37, 0, 2540 38, 0, 0, 40, 41, 206, 2, 207, 4, 5, 2541 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 2542 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2543 26, 27, 0, 0, 28, 29, 30, 0, 0, 0, 2544 0, 0, 46, 0, 33, 0, 0, 0, 47, 48, 2545 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2547 0, 0, 36, 0, 37, 0, 38, 0, 0, 208, 2548 41, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2547 45, 0, 46, 0, 0, 0, 0, 0, 47, 48, 2548 206, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2549 2549 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2550 2550 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2551 29, 30, 0, 0, 0, 0, 0, 0, 209, 33,2552 0, 0, 0, 0, 47, 48, 0, 0, 0, 0,2551 29, 30, 0, 0, 0, 0, 0, 0, 0, 33, 2552 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2553 2553 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2554 2554 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, … … 2558 2558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2559 2559 0, 45, 0, 209, 0, 0, 0, 0, 0, 47, 2560 48, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2560 48, 1, 2, 207, 4, 5, 6, 7, 8, 9, 2561 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2562 20, 21, 22, 23, 24, 25, 26, 27, -298, 0, 2563 28, 29, 30, 31, 0, 0, 0, 32, 0, 0, 2564 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2565 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2566 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 2567 37, 0, 38, 0, 0, 40, 41, 0, 0, -298, 2568 1, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2561 2569 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2562 2570 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2563 29, 30, 0, 0, 0, 0, 0, 0, 0, 33, 2571 29, 30, 31, 0, 46, 0, 32, 0, 0, 33, 2572 47, 48, 0, 0, 0, 0, 0, 0, 0, 0, 2573 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2574 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, 2575 0, 38, 0, 0, 40, 41, 206, 2, 207, 4, 2576 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 2577 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2578 25, 26, 27, 0, 0, 28, 29, 30, 0, 0, 2579 0, 0, 0, 46, 0, 33, 0, 0, 0, 47, 2580 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2581 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2582 0, 0, 0, 36, 0, 37, 0, 38, 0, 0, 2583 208, 41, 2, 207, 4, 5, 6, 7, 8, 9, 2584 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2585 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 2586 28, 29, 30, 0, 0, 0, 0, 0, 0, 209, 2587 33, 0, 0, 0, 0, 47, 48, 0, 0, 0, 2588 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2589 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 2590 37, 0, 38, 39, 0, 208, 41, 42, 0, 0, 2591 0, 0, 0, 0, 0, 0, 43, 44, 0, 0, 2564 2592 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2565 2593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2566 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, 2567 0, 38, 0, 0, 40, 41, 2, 207, 4, 5, 2568 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 2594 0, 0, 45, 0, 209, 0, 0, 0, 0, 0, 2595 47, 48, 2, 207, 4, 5, 6, 7, 8, 9, 2596 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2597 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 2598 28, 29, 30, 0, 0, 0, 0, 0, 0, 0, 2599 33, 0, 8, 9, 10, 11, 12, 13, 14, 15, 2569 2600 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2570 26, 27, 0, 0, 28, 29, 30, 0, 0, 0, 2571 0, 0, -407, 671, 33, 0, 0, 0, 0, 47, 2572 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2601 26, 27, 0, 0, 28, 29, 30, 0, 36, 0, 2602 37, 0, 38, 0, 33, 40, 41, 0, 0, 0, 2573 2603 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2574 0, 0, 36, 0, 37, 0, 38, 0, 0, 40, 2575 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2604 0, 0, 0, 0, 0, 0, 0, 0, 0, 1340, 2605 0, 0, 36, 0, 0, 0, 0, 0, 0, 40, 2606 41, 0, 0, 0, 671, 0, 0, 0, 0, 0, 2607 47, 48, 2, 207, 4, 5, 6, 7, 8, 9, 2608 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2609 20, 21, 22, 23, 24, 25, 26, 27, 258, 0, 2610 28, 29, 30, 0, 47, 48, 0, 0, 0, 0, 2611 33, 0, 8, 9, 10, 11, 12, 13, 14, 15, 2612 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2613 26, 27, 0, 0, 28, 29, 30, 0, 36, 0, 2614 37, 0, 38, 0, 33, 40, 41, 0, 0, 0, 2576 2615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2577 0, 0, 0, 1335, 0, 0, 0, 0, 0, 0, 2578 0, 0, 0, 0, 0, 0, 0, 0, 671, 0, 2579 0, 0, 0, 0, 47, 48, 2, 207, 4, 5, 2580 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 2581 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2582 26, 27, 0, 0, 28, 29, 30, 0, 0, 0, 2583 0, 0, 0, 0, 33, 0, 8, 9, 10, 11, 2584 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2585 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2586 30, 0, 36, 0, 37, 0, 38, 0, 33, 40, 2587 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2616 0, 0, 0, 0, 0, 0, 0, 0, 0, 1342, 2617 0, 0, 36, 0, 0, 0, 0, 0, 0, 40, 2618 41, 0, 0, 0, 671, 0, 0, 0, 0, 0, 2619 47, 48, 2, 207, 4, 5, 6, 7, 8, 9, 2620 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2621 20, 21, 22, 23, 24, 25, 26, 27, 46, 0, 2622 28, 29, 30, 0, 47, 48, 0, 0, 0, 0, 2623 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2588 2624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2589 0, 0, 0, 1337, 0, 0, 36, 0, 0, 0,2590 0, 0, 0, 40, 41, 0, 0, 0, 671, 0,2591 0, 0, 0, 0, 47, 48, 2, 207, 4, 5,2592 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,2593 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,2594 26, 27, 46, 0, 28, 29, 30, 0, 47, 48,2595 0, 0, 0, 0, 33, 0, 0, 0, 0, 0,2625 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 2626 37, 0, 38, 0, 0, 208, 41, 2, 207, 4, 2627 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 2628 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2629 25, 26, 27, 0, 0, 28, 29, 30, 0, 0, 2630 0, 0, 0, 0, 271, 33, 0, 0, 0, 0, 2631 47, 48, 0, 0, 0, 0, 0, 0, 0, 0, 2596 2632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2633 0, 0, 0, 36, 0, 37, 0, 38, 0, 0, 2634 40, 41, 2, 207, 4, 5, 6, 7, 8, 9, 2635 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2636 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 2637 28, 29, 30, 0, 0, 0, 0, 0, 0, 671, 2638 33, 0, 0, 0, 0, 47, 48, 0, 0, 0, 2597 2639 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2598 0, 0, 36, 0, 37, 0, 38, 0, 0, 208,2599 41, 2, 207, 4, 5, 6, 7, 8, 9, 10,2640 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 2641 37, 0, 38, 0, 0, 208, 41, 8, 9, 10, 2600 2642 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2601 2643 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2602 29, 30, 0, 0, 0, 0, 0, 0, 271, 33, 2603 0, 0, 0, 0, 47, 48, 0, 0, 0, 0, 2604 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2605 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, 2606 0, 38, 0, 0, 40, 41, 2, 207, 4, 5, 2607 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 2608 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2609 26, 27, 0, 0, 28, 29, 30, 0, 0, 0, 2610 0, 0, 0, 671, 33, 0, 0, 0, 0, 47, 2611 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2612 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2613 0, 0, 36, 0, 37, 0, 38, 0, 0, 208, 2614 41, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2615 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2616 27, 0, 0, 28, 29, 30, 0, 0, 0, 0, 2617 0, 283, 284, 33, 285, 0, 0, 0, 209, 0, 2618 0, 0, 0, 0, 47, 48, 0, 0, 0, 0, 2619 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2620 286, 36, 0, 0, 0, 0, 287, 0, 40, 41, 2621 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2622 44, 0, 295, 296, 0, 0, 0, 0, 0, 0, 2623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2624 0, 0, 0, 0, 0, 297, 0, 516, 0, 0, 2625 172, 0, 0, 47, 48, 299, 300, 301, 302, 8, 2626 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 2627 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 2628 0, 28, 29, 30, 0, 0, 0, 0, 0, 283, 2629 284, 33, 285, 8, 9, 10, 11, 12, 13, 14, 2630 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2631 25, 26, 27, 0, 0, 28, 29, 30, 286, 36, 2632 0, 0, 0, 0, 287, 33, 40, 41, 288, 0, 2633 0, 289, 290, 291, 292, 293, 294, 43, 44, 0, 2634 295, 296, 0, 0, 0, 0, 0, 0, 0, 0, 2635 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 2636 208, 41, 0, 297, -40, 298, 0, 0, 0, 0, 2637 0, 47, 48, 299, 300, 301, 302, 8, 9, 10, 2638 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2639 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2640 29, 30, 0, 0, 0, 47, 48, 283, 284, 33, 2641 285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2642 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2644 29, 30, 0, 0, 0, 0, 0, 283, 284, 33, 2645 285, 0, 0, 0, 209, 0, 0, 0, 0, 0, 2646 47, 48, 0, 0, 0, 0, 0, 0, 0, 0, 2643 2647 0, 0, 0, 0, 0, 0, 286, 36, 0, 0, 2644 2648 0, 0, 287, 0, 40, 41, 288, 0, 0, 289, … … 2646 2650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2647 2651 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2648 0, 297, 0, 298, 0, 0, 0, 0, 0, 47,2652 0, 297, 0, 516, 0, 0, 172, 0, 0, 47, 2649 2653 48, 299, 300, 301, 302, 8, 9, 10, 11, 12, 2650 2654 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 2651 2655 23, 24, 25, 26, 27, 0, 0, 28, 29, 30, 2652 0, 0, 0, 0, 0, 283, 284, 33, 285, 0,2653 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2654 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2655 0, 0, 0,0, 286, 36, 0, 0, 0, 0,2656 287, 0, 40, 41, 288, 0, 0, 289, 290, 291,2656 0, 0, 0, 0, 0, 283, 284, 33, 285, 8, 2657 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 2658 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 2659 0, 28, 29, 30, 286, 36, 0, 0, 0, 0, 2660 287, 33, 40, 41, 288, 0, 0, 289, 290, 291, 2657 2661 292, 293, 294, 43, 44, 0, 295, 296, 0, 0, 2658 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,2659 0, 0, 0, 0, 0, 0, 0, 0, 0, 297,2660 0, 343, 0, 0, 0, 0, 0, 47, 48, 299,2662 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 2663 0, 0, 0, 0, 0, 0, 208, 41, 0, 297, 2664 -40, 298, 0, 0, 0, 0, 0, 47, 48, 299, 2661 2665 300, 301, 302, 8, 9, 10, 11, 12, 13, 14, 2662 2666 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2663 2667 25, 26, 27, 0, 0, 28, 29, 30, 0, 0, 2664 0, 0, 0, 283, 284, 33, 285, 0, 0, 0,2668 0, 47, 48, 283, 284, 33, 285, 0, 0, 0, 2665 2669 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2666 2670 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, … … 2669 2673 294, 43, 44, 0, 295, 296, 0, 0, 0, 0, 2670 2674 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2671 0, 0, 0, 0, 0, 0, 0, 297, 0, 378,2675 0, 0, 0, 0, 0, 0, 0, 297, 0, 298, 2672 2676 0, 0, 0, 0, 0, 47, 48, 299, 300, 301, 2673 302, 465, 2, 207, 4, 5, 6, 7, 8, 9, 2674 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2675 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 2676 28, 29, 30, 0, 0, 0, 0, 0, 0, 0, 2677 33, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2677 302, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2678 2678 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2679 27, 0, 0, 28, 29, 30, 0, 0, 36, 0, 2680 37, 0, 38, 33, 678, 40, 41, 0, 0, 0, 2679 27, 0, 0, 28, 29, 30, 0, 0, 0, 0, 2680 0, 283, 284, 33, 285, 0, 0, 0, 0, 0, 2681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2682 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2683 286, 36, 0, 0, 0, 0, 287, 0, 40, 41, 2684 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2685 44, 0, 295, 296, 0, 0, 0, 0, 0, 0, 2686 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2687 0, 0, 0, 0, 0, 297, 0, 343, 0, 0, 2688 0, 0, 0, 47, 48, 299, 300, 301, 302, 8, 2689 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 2690 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 2691 0, 28, 29, 30, 0, 0, 0, 0, 0, 283, 2692 284, 33, 285, 0, 0, 0, 0, 0, 0, 0, 2693 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2694 0, 0, 0, 0, 0, 0, 0, 0, 286, 36, 2695 0, 0, 0, 0, 287, 0, 40, 41, 288, 0, 2696 0, 289, 290, 291, 292, 293, 294, 43, 44, 0, 2697 295, 296, 0, 0, 0, 0, 0, 0, 0, 0, 2698 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2699 0, 0, 0, 297, 0, 378, 0, 0, 0, 0, 2700 0, 47, 48, 299, 300, 301, 302, 8, 9, 10, 2701 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2702 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2703 29, 30, 0, 0, 0, 0, 0, 0, 0, 33, 2704 0, 0, 0, 0, 0, 0, 0, 8, 9, 10, 2705 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2706 21, 22, 23, 24, 25, 26, 27, 36, 0, 28, 2707 29, 30, 39, 0, 40, 41, 42, 0, 0, 33, 2708 0, 0, 0, 0, 0, 43, 44, 0, 0, 0, 2709 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2710 0, 0, 0, 0, 0, 0, 0, 36, 0, 0, 2711 0, 45, 39, 46, 208, 41, 42, 0, 0, 47, 2712 48, 0, 0, 0, 0, 43, 44, 0, 0, 0, 2713 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2714 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2715 0, 45, 0, 271, 0, 0, 0, 0, 0, 47, 2716 48, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2717 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2718 27, 0, 0, 28, 29, 30, 0, 0, 0, 0, 2719 0, 0, 0, 33, 678, 0, 0, 0, 0, 0, 2681 2720 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2682 2721 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2683 2722 27, 36, 0, 28, 29, 30, 0, 0, 40, 41, 2684 0, 0, 0, 33, 678, 0, 0, -3, 0, 0,2723 0, 0, 0, 33, 678, 0, 0, 0, 0, 0, 2685 2724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2686 2725 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2687 2726 0, 36, 0, 0, 0, 0, 0, 679, 40, 41, 2688 0, 680, 0, 47, 48, 0, 8, 9, 10, 11,2727 0, 1078, 0, 47, 48, 0, 8, 9, 10, 11, 2689 2728 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2690 2729 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2691 30, 0, 0, 0, 0, 0, 0, 679, 33, 678,2692 0, 1 073, 0, 47, 48, 0, 8, 9, 10, 11,2730 30, 0, 0, 0, 0, 0, 0, 679, 33, 0, 2731 0, 1205, 0, 47, 48, 0, 8, 9, 10, 11, 2693 2732 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2694 2733 22, 23, 24, 25, 26, 27, 36, 0, 28, 29, 2695 30, 0, 0, 40, 41, 0, 0, 0, 33, 8,2734 30, 0, 0, 208, 41, 0, 0, 0, 33, 8, 2696 2735 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 2697 2736 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 2698 2737 0, 28, 29, 30, 0, 0, 36, 0, 0, 0, 2699 0, 33, 679, 208, 41, 0, 1200, 0, 47, 48,2738 0, 33, 271, 40, 41, 0, 0, 0, 47, 48, 2700 2739 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2701 2740 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 2702 2741 0, 0, 0, 0, 0, 0, 40, 41, 0, 0, 2703 0, 0, 271, 0, 0, 0, 0, 0, 47, 48,2742 0, 0, 339, 0, 0, 0, 0, 0, 47, 48, 2704 2743 0, 0, 0, 0, 8, 9, 10, 11, 12, 13, 2705 2744 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 2706 24, 25, 26, 27, 0, 339, 28, 29, 30, 0, 2707 0, 47, 48, 0, 0, 0, 33, 8, 9, 10, 2708 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2709 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2710 29, 30, 0, 0, 36, 0, 0, 0, 0, 33, 2711 0, 40, 41, 0, 0, 0, 0, 0, 0, 0, 2712 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2713 0, 0, 0, 0, 0, 0, 0, 36, 0, 0, 2714 0, 0, 0, 0, 40, 41, 0, 0, 0, 0, 2715 679, 0, 0, 0, 0, 0, 47, 48, 0, 0, 2745 24, 25, 26, 27, 0, 679, 28, 29, 30, 0, 2746 0, 47, 48, 0, 0, 0, 33, 0, 2, 207, 2747 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 2748 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 2749 24, 25, 26, 27, 36, 0, 28, 29, 30, 0, 2750 0, 40, 41, 0, 0, 0, 33, 0, 0, 0, 2716 2751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2717 2752 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2718 0, 0, 0, 671, 0, 0, 0, 0, 0, 47, 2719 48, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2720 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2721 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2722 29, 30, 0, 0, 0, 0, 0, 0, 0, 33, 2723 0, 283, 284, 0, 285, 1024, 0, 1025, 0, 0, 2724 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 0, 0, 2725 1511, 1034, 0, 0, 0, 1035, 1036, 36, 35, 37, 2726 286, 38, 0, 0, 40, 41, 1037, 0, 0, 0, 2727 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2728 44, 0, 295, 296, 0, 0, 0, 0, 0, 0, 2753 0, 0, 0, 0, 36, 0, 37, 0, 38, 0, 2754 671, 40, 41, 0, 0, 0, 47, 48, 283, 284, 2755 0, 285, 1023, 0, 1024, 0, 0, 1025, 1026, 1027, 2756 1028, 1029, 1030, 1031, 1032, 0, 0, 0, 1033, 0, 2757 0, 0, 1034, 1035, 0, 35, 0, 286, 0, -420, 2758 0, 0, 0, 1036, 0, 175, 176, 1039, 0, 0, 2759 289, 290, 291, 292, 293, 294, 43, 44, 0, 295, 2760 296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2729 2761 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2730 0, 0, -420, 0, 0, 297, 0, 378, 0, 0, 2731 172, 0, 0, 47, 48, 299, 300, 301, 302, 0, 2732 0, 283, 284, 1038, 285, 1024, 0, 1025, -134, 0, 2733 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 0, 0, 2734 0, 1034, 0, 0, 0, 1035, 1036, 0, 35, 0, 2735 286, 0, 0, 0, 0, 0, 1037, 0, 0, 0, 2736 288, 0, 0, 289, 290, 291, 292, 293, 294, 43, 2737 44, 0, 295, 296, 0, 0, 0, 0, 0, 0, 2762 0, 0, 297, 0, 378, 0, 0, 172, 0, 0, 2763 47, 48, 299, 300, 301, 302, 0, 0, 0, 0, 2764 1040, 0, 0, 0, 0, -134, 2, 207, 4, 5, 2765 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 2766 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 2767 26, 27, 0, 0, 28, 29, 30, 0, 0, 0, 2768 0, 0, 0, 0, 33, 0, 283, 284, 0, 285, 2769 1023, 0, 1024, 1388, 1389, 1025, 1026, 1027, 1028, 1029, 2770 1030, 1031, 1032, 0, 0, 1516, 1033, 0, 0, 0, 2771 1034, 1035, 36, 35, 37, 286, 38, 0, 0, 40, 2772 41, 1036, 0, 175, 176, 1039, 0, 0, 289, 290, 2773 291, 292, 293, 294, 43, 44, 0, 295, 296, 0, 2774 0, 0, 0, 1299, 0, 0, 0, 0, 0, 0, 2738 2775 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2739 0, 0, 0, 0, 0, 297, 0, 378, 0, 0, 2740 172, 0, 0, 47, 48, 299, 300, 301, 302, 0, 2741 0, 0, 0, 1038, 0, 0, 0, 0, -134, 2, 2742 207, 4, 5, 6, 7, 8, 9, 10, 11, 12, 2743 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 2744 23, 24, 25, 26, 27, 0, 0, 28, 29, 30, 2745 0, 0, 0, 0, 0, 0, 0, 33, 0, 283, 2746 284, 0, 285, 1024, 0, 1025, 1383, 1384, 1026, 1027, 2747 1028, 1029, 1030, 1031, 1032, 1033, 0, 0, 1511, 1034, 2748 0, 0, 0, 1035, 1036, 36, 35, 37, 286, 38, 2749 0, 0, 40, 41, 1037, 0, 0, 0, 288, 0, 2750 0, 289, 290, 291, 292, 293, 294, 43, 44, 0, 2751 295, 296, 0, 0, 0, 0, 1294, 0, 0, 0, 2776 297, 0, 378, 0, 0, 172, 0, 0, 47, 48, 2777 299, 300, 301, 302, 0, 0, 283, 284, 1040, 285, 2778 1023, 0, 1024, 1388, 1389, 1025, 1026, 1027, 1028, 1029, 2779 1030, 1031, 1032, 0, 0, 0, 1033, 0, 0, 0, 2780 1034, 1035, 0, 35, 0, 286, 0, 0, 0, 0, 2781 0, 1036, 0, 175, 176, 1039, 0, 0, 289, 290, 2782 291, 292, 293, 294, 43, 44, 0, 295, 296, 0, 2752 2783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2753 0, 0, 0, 297, 0, 378, 0, 0, 172, 0,2754 0, 47, 48, 299, 300, 301, 302, 0, 0, 283,2755 284, 1038, 285, 1024, 0, 1025, 1383, 1384, 1026, 1027,2756 1028, 1029, 1030, 1031, 1032, 1033, 0, 0, 0, 1034,2757 0, 0, 0, 1035, 1036, 0, 35, 0, 286, 0,2758 0, 0, 0, 0, 1037, 0, 0, 0, 288, 0,2759 0, 289, 290, 291, 292, 293, 294, 43, 44, 0,2760 295, 296, 0, 0, 0, 0, 0, 0, 0, 0,2761 2784 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2762 0, 0, 0, 297, 0, 378, 0, 0, 172, 0, 2763 0, 47, 48, 299, 300, 301, 302, 0, 0, 283, 2764 284, 1038, 285, 1024, 0, 1025, 0, 0, 1026, 1027, 2765 1028, 1029, 1030, 1031, 1032, 1033, 0, 0, 0, 1034, 2766 0, 0, 0, 1035, 1036, 0, 35, 0, 286, 0, 2767 0, 0, 0, 0, 1037, 0, 0, 0, 288, 0, 2768 0, 289, 290, 291, 292, 293, 294, 43, 44, 0, 2769 295, 296, 0, 0, 0, 0, 0, 0, 283, 284, 2770 0, 285, 0, 0, 0, 0, 0, 0, 0, 0, 2771 0, 0, 0, 297, 0, 378, 0, 0, 172, 0, 2772 0, 47, 48, 299, 300, 301, 302, 286, 0, 0, 2773 0, 1038, 0, 287, 0, 0, 0, 288, 0, 0, 2774 289, 290, 291, 292, 293, 294, 43, 44, 0, 295, 2775 296, 0, 0, 0, 0, 0, 0, 283, 284, 0, 2776 285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2777 0, 0, 297, 0, 378, 0, 0, 959, 0, 0, 2778 47, 48, 299, 300, 301, 302, 286, 0, 0, 0, 2779 0, 0, 287, 0, 0, 0, 288, 0, 0, 289, 2780 290, 291, 292, 293, 294, 43, 44, 0, 295, 296, 2781 0, 0, 0, 0, 0, 0, 283, 284, 0, 285, 2782 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2783 0, 297, 0, 378, 0, 0, 0, 0, 0, 47, 2784 48, 299, 300, 301, 302, 286, 0, 0, 0, 0, 2785 0, 287, 0, 0, 0, 288, 0, 0, 289, 290, 2785 297, 0, 378, 0, 0, 172, 0, 0, 47, 48, 2786 299, 300, 301, 302, 0, 0, 283, 284, 1040, 285, 2787 1023, 0, 1024, 0, 0, 1025, 1026, 1027, 1028, 1029, 2788 1030, 1031, 1032, 0, 0, 0, 1033, 0, 0, 0, 2789 1034, 1035, 0, 35, 0, 286, 0, 0, 0, 0, 2790 0, 1036, 0, 175, 176, 1039, 0, 0, 289, 290, 2786 2791 291, 292, 293, 294, 43, 44, 0, 295, 296, 0, 2787 2792 0, 0, 0, 0, 0, 283, 284, 0, 285, 0, 2788 2793 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2789 505, 0, 378, 0, 0, 0, 0, 0, 47, 48,2790 299, 300, 301, 302, 286, 0, 0, 0, 2794 297, 0, 378, 0, 0, 172, 0, 0, 47, 48, 2795 299, 300, 301, 302, 286, 0, 0, 0, 1040, 0, 2791 2796 287, 0, 0, 0, 288, 0, 0, 289, 290, 291, 2792 2797 292, 293, 294, 43, 44, 0, 295, 296, 0, 0, … … 2812 2817 0, 0, 0, 0, 0, 0, 297, 0, 378, 0, 2813 2818 0, 0, 0, 0, 344, 48, 299, 300, 301, 302, 2819 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2820 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2821 0, 0, 28, 29, 30, 0, 0, 0, 0, 0, 2822 0, 0, 33, 206, 2, 207, 4, 5, 6, 7, 2823 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2824 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2825 36, 0, 28, 29, 30, 112, 0, 40, 41, 0, 2826 0, 0, 33, 0, 0, 0, 0, 0, 43, 44, 2827 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2828 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2829 36, 0, 37, 0, 38, 0, 0, 208, 41, 465, 2814 2830 2, 207, 4, 5, 6, 7, 8, 9, 10, 11, 2815 2831 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 2816 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, 2817 0, 0, 0, 0, 0, 0, 0, 0, 33, 0, 2832 22, 23, 24, 25, 26, 27, 0, 0, 28, 29, 2833 30, 0, 0, 0, 0, 0, 0, 0, 33, 0, 2834 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2835 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2836 0, 0, 0, 0, 0, 0, 36, 0, 37, 0, 2837 38, 0, 0, 40, 41, 2, 207, 4, 5, 6, 2838 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 2839 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 2840 27, 0, 0, 28, 29, 30, 0, 0, 0, 0, 2841 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 2842 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2844 0, 36, 0, 37, 0, 38, 0, 0, 208, 41, 2818 2845 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 2819 2846 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 2820 0, 0, 28, 29, 30, 0, 36, 0, 37, 0, 2821 38, 39, 33, 175, 176, 42, 0, 0, 0, 0, 2822 0, 0, 0, 0, 43, 44, 0, 0, 0, 0, 2823 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2824 36, 0, 0, 0, 0, 112, 0, 40, 41, 0, 2825 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 2826 206, 2, 207, 4, 5, 6, 7, 8, 9, 10, 2827 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 2828 21, 22, 23, 24, 25, 26, 27, 0, 0, 28, 2829 29, 30, 0, 0, 0, 0, 0, 0, 0, 33, 2847 0, 0, 28, 29, 30, 483, 484, 485, 486, 0, 2848 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 2830 2849 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2831 2850 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2832 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, 2833 0, 38, 0, 0, 208, 41, 465, 2, 207, 4, 2834 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 2835 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 2836 25, 26, 27, 0, 0, 28, 29, 30, 0, 0, 2837 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 2838 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2839 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2840 0, 0, 0, 36, 0, 37, 0, 38, 0, 0, 2841 40, 41, 2, 207, 4, 5, 6, 7, 8, 9, 2842 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2843 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 2844 28, 29, 30, 0, 0, 0, 0, 0, 0, 0, 2845 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2846 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2847 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 2848 37, 0, 38, 0, 0, 208, 41 2851 36, 0, 0, 0, 0, 0, 0, 40, 41 2849 2852 }; 2850 2853 2851 2854 #define yypact_value_is_default(yystate) \ 2852 ((yystate) == (-1 263))2855 ((yystate) == (-1328)) 2853 2856 2854 2857 #define yytable_value_is_error(yytable_value) \ … … 2857 2860 static const yytype_int16 yycheck[] = 2858 2861 { 2859 0, 1, 45, 118, 45, 240, 520, 0, 186, 45, 2860 533, 512, 186, 186, 863, 205, 640, 220, 186, 107, 2861 1, 743, 569, 743, 186, 743, 186, 0, 863, 169, 2862 170, 616, 349, 0, 34, 598, 34, 257, 188, 596, 2863 0, 34, 186, 1023, 491, 45, 1005, 1006, 495, 349, 2864 282, 51, 596, 598, 686, 0, 1, 45, 51, 1304, 2865 187, 34, 1006, 45, 596, 65, 45, 34, 68, 157, 2866 728, 71, 65, 364, 34, 68, 596, 368, 71, 114, 2867 1035, 1036, 689, 596, 121, 45, 187, 202, 266, 34, 2868 71, 51, 266, 266, 84, 42, 0, 417, 266, 596, 2869 137, 136, 114, 59, 266, 65, 266, 107, 68, 42, 2870 596, 71, 262, 263, 297, 115, 436, 600, 118, 119, 2871 631, 604, 266, 68, 444, 66, 71, 969, 30, 0, 2872 34, 54, 47, 48, 114, 646, 47, 48, 0, 1, 2873 267, 599, 625, 186, 0, 186, 629, 605, 148, 149, 2874 186, 345, 108, 1113, 1109, 111, 149, 157, 158, 1404, 2875 1383, 161, 42, 34, 630, 631, 267, 681, 161, 116, 2876 487, 893, 34, 893, 1016, 893, 1438, 11, 34, 81, 2877 646, 425, 426, 47, 48, 114, 186, 187, 1023, 149, 2878 67, 114, 712, 704, 187, 112, 137, 417, 186, 712, 2879 108, 161, 202, 111, 186, 120, 409, 186, 119, 71, 2880 210, 1473, 68, 1475, 100, 712, 436, 210, 114, 136, 2881 116, 75, 222, 266, 444, 266, 186, 187, 117, 222, 2882 266, 1097, 480, 1456, 114, 1101, 116, 114, 704, 786, 2883 240, 32, 425, 426, 462, 802, 42, 42, 134, 493, 2884 210, 814, 252, 341, 252, 119, 75, 889, 802, 252, 2885 260, 1205, 222, 219, 84, 265, 266, 267, 512, 814, 2886 802, 503, 272, 1233, 267, 1235, 1236, 222, 405, 252, 2887 395, 75, 802, 137, 257, 252, 480, 894, 912, 802, 2888 51, 1271, 252, 84, 85, 586, 116, 297, 598, 1258, 2889 1259, 42, 1488, 122, 405, 802, 266, 252, 423, 90, 2890 310, 219, 119, 101, 429, 1259, 802, 273, 114, 114, 2891 116, 116, 505, 898, 280, 900, 326, 510, 42, 1515, 2892 513, 331, 576, 940, 121, 101, 627, 118, 331, 127, 2893 1488, 341, 1191, 137, 133, 345, 804, 136, 252, 349, 2894 350, 478, 3, 836, 115, 675, 1191, 121, 921, 115, 2895 1508, 127, 121, 920, 364, 273, 222, 1515, 368, 114, 2896 115, 331, 280, 114, 1032, 116, 920, 478, 137, 135, 2897 75, 252, 630, 631, 567, 1459, 257, 148, 920, 349, 2898 252, 1465, 348, 88, 89, 395, 252, 115, 646, 984, 2899 114, 75, 116, 77, 78, 405, 0, 285, 121, 365, 2900 115, 1485, 405, 369, 88, 89, 1490, 135, 229, 114, 2901 1379, 116, 616, 423, 137, 425, 426, 621, 660, 429, 2902 135, 431, 310, 311, 121, 1379, 1271, 248, 1387, 124, 2903 125, 955, 116, 926, 417, 405, 664, 1427, 121, 210, 2904 137, 121, 452, 244, 1434, 675, 704, 365, 116, 121, 2905 118, 369, 75, 436, 137, 135, 967, 345, 93, 94, 2906 470, 444, 1314, 135, 121, 88, 89, 135, 478, 240, 2907 480, 701, 482, 930, 1108, 478, 114, 487, 116, 482, 2908 137, 739, 1099, 493, 350, 3, 114, 814, 116, 731, 2909 650, 641, 380, 116, 795, 505, 1486, 507, 0, 482, 2910 510, 272, 512, 513, 814, 482, 121, 115, 1081, 114, 2911 520, 116, 482, 121, 524, 95, 96, 487, 121, 1371, 2912 1372, 121, 137, 648, 1483, 993, 994, 482, 114, 1488, 2913 116, 121, 75, 114, 137, 739, 417, 137, 121, 310, 2914 114, 1158, 1159, 1067, 681, 88, 89, 137, 1072, 1508, 2915 130, 131, 135, 121, 782, 436, 1515, 117, 568, 569, 2916 136, 121, 114, 444, 792, 121, 576, 121, 482, 137, 2917 681, 121, 114, 116, 345, 803, 586, 587, 379, 115, 2918 590, 137, 1427, 137, 114, 121, 596, 137, 598, 1434, 2919 4, 5, 6, 7, 8, 9, 0, 1, 925, 480, 2920 117, 482, 114, 1271, 121, 471, 616, 114, 122, 75, 2921 482, 621, 115, 623, 128, 129, 482, 627, 121, 115, 2922 630, 631, 88, 89, 115, 121, 596, 115, 598, 75, 2923 34, 77, 78, 79, 892, 117, 646, 850, 648, 121, 2924 115, 1486, 88, 89, 10, 11, 12, 13, 14, 120, 2925 115, 617, 115, 115, 425, 426, 121, 870, 72, 121, 2926 74, 549, 550, 551, 68, 117, 632, 71, 678, 121, 2927 75, 681, 114, 587, 116, 115, 42, 82, 1346, 645, 2928 85, 121, 87, 88, 89, 0, 1, 932, 892, 490, 2929 115, 492, 675, 117, 704, 705, 706, 121, 114, 617, 2930 116, 114, 712, 713, 70, 893, 856, 115, 115, 893, 2931 893, 681, 114, 121, 632, 893, 31, 32, 701, 34, 2932 115, 893, 493, 893, 84, 115, 121, 645, 114, 739, 2933 45, 121, 115, 743, 744, 114, 51, 116, 121, 893, 2934 115, 512, 712, 713, 59, 115, 121, 1005, 137, 1366, 2935 65, 121, 618, 68, 158, 1288, 71, 114, 895, 116, 2936 1492, 727, 1492, 1431, 1492, 1433, 1383, 115, 114, 84, 2937 85, 115, 115, 121, 1002, 1003, 786, 121, 121, 114, 2938 984, 114, 115, 116, 895, 795, 75, 797, 77, 78, 2939 79, 67, 802, 108, 675, 115, 111, 997, 137, 88, 2940 89, 121, 115, 118, 814, 576, 97, 98, 121, 727, 2941 51, 4, 5, 6, 7, 8, 9, 115, 222, 1487, 2942 701, 120, 121, 121, 119, 114, 692, 115, 116, 1057, 2943 1058, 137, 802, 119, 149, 636, 61, 62, 1455, 1456, 2944 706, 137, 35, 114, 814, 616, 161, 119, 252, 505, 2945 621, 507, 75, 863, 510, 1097, 79, 513, 739, 1101, 2946 1102, 114, 750, 120, 121, 88, 89, 114, 1018, 84, 2947 1128, 186, 187, 123, 115, 885, 47, 48, 1, 72, 2948 863, 74, 892, 893, 685, 895, 687, 202, 1114, 1115, 2949 691, 114, 132, 116, 133, 210, 99, 907, 116, 122, 2950 123, 552, 553, 75, 219, 77, 78, 222, 863, 117, 2951 920, 921, 554, 555, 229, 925, 88, 89, 114, 117, 2952 116, 931, 932, 893, 1128, 895, 122, 123, 115, 244, 2953 1067, 797, 115, 248, 115, 1072, 115, 252, 253, 115, 2954 931, 115, 114, 116, 1468, 955, 114, 119, 117, 863, 2955 136, 266, 267, 560, 561, 925, 1067, 119, 273, 119, 2956 121, 1072, 119, 114, 1089, 280, 114, 115, 116, 210, 2957 136, 885, 115, 1215, 984, 1203, 931, 115, 1171, 1172, 2958 117, 1174, 863, 556, 557, 558, 559, 117, 1181, 117, 2959 1183, 863, 121, 1517, 135, 1005, 1006, 863, 31, 135, 2960 1258, 1205, 114, 115, 116, 4, 5, 6, 7, 8, 2961 9, 892, 1240, 1023, 135, 75, 331, 77, 78, 1247, 2962 1248, 1249, 75, 115, 77, 78, 115, 431, 88, 89, 2963 114, 272, 116, 348, 349, 88, 89, 3, 122, 123, 2964 1023, 114, 115, 116, 10, 11, 12, 13, 14, 119, 2965 365, 120, 1062, 115, 369, 856, 297, 1067, 121, 931, 2966 114, 862, 1072, 1305, 379, 120, 119, 1309, 1023, 310, 2967 120, 1081, 115, 72, 135, 74, 42, 115, 482, 1089, 2968 395, 137, 1310, 61, 62, 63, 121, 1, 462, 115, 2969 405, 114, 75, 116, 77, 78, 984, 1067, 115, 122, 2970 123, 902, 1072, 121, 70, 88, 89, 115, 423, 1023, 2971 115, 115, 115, 115, 429, 3, 31, 115, 1128, 115, 2972 524, 987, 10, 11, 12, 13, 14, 115, 115, 115, 2973 253, 114, 121, 75, 115, 1023, 119, 51, 137, 68, 2974 82, 115, 1023, 85, 115, 87, 88, 89, 115, 1342, 2975 465, 1023, 120, 115, 42, 470, 136, 1023, 959, 1169, 2976 1170, 932, 135, 478, 115, 72, 1408, 482, 75, 117, 2977 117, 78, 487, 80, 116, 490, 115, 492, 115, 1170, 2978 87, 1191, 70, 587, 75, 121, 77, 78, 79, 115, 2979 119, 135, 114, 107, 121, 1205, 3, 88, 89, 1209, 2980 119, 115, 115, 10, 11, 12, 13, 14, 1191, 75, 2981 115, 452, 527, 984, 1169, 1170, 82, 532, 1209, 85, 2982 115, 87, 88, 89, 121, 115, 630, 631, 115, 121, 2983 115, 135, 161, 114, 148, 42, 1191, 1362, 121, 114, 2984 114, 114, 646, 157, 114, 117, 115, 1128, 1258, 1259, 2985 116, 137, 1053, 120, 1209, 115, 1266, 1502, 120, 115, 2986 119, 1271, 133, 70, 505, 580, 507, 863, 120, 510, 2987 115, 117, 513, 137, 121, 117, 115, 1191, 115, 117, 2988 50, 596, 117, 598, 117, 115, 117, 137, 1271, 117, 2989 664, 117, 206, 222, 1304, 115, 210, 137, 1170, 120, 2990 704, 137, 617, 1169, 1492, 137, 213, 120, 1492, 1492, 2991 1191, 1266, 137, 1304, 1492, 115, 1271, 632, 135, 1191, 2992 1492, 636, 1492, 120, 1205, 1191, 240, 117, 86, 117, 2993 645, 260, 647, 648, 649, 86, 265, 1209, 1492, 90, 2994 91, 92, 465, 1468, 117, 117, 117, 115, 117, 1304, 2995 115, 117, 1362, 114, 114, 114, 1493, 1271, 272, 63, 2996 115, 275, 115, 114, 1165, 116, 681, 118, 119, 1379, 2997 685, 119, 687, 280, 114, 75, 691, 77, 78, 79, 2998 1517, 137, 1493, 297, 699, 117, 117, 115, 88, 89, 2999 1271, 117, 115, 101, 1404, 1361, 310, 712, 713, 1271, 3000 1266, 114, 101, 114, 527, 1271, 1517, 137, 782, 532, 3001 120, 45, 727, 1404, 114, 121, 116, 1427, 792, 115, 3002 115, 350, 122, 123, 1434, 115, 1436, 341, 1438, 803, 3003 1026, 345, 1304, 115, 135, 135, 115, 678, 115, 1492, 3004 137, 1492, 101, 1361, 1427, 352, 1492, 354, 137, 1404, 3005 364, 1434, 101, 57, 368, 664, 86, 580, 1468, 863, 3006 90, 91, 92, 1473, 137, 1475, 137, 115, 0, 1, 3007 115, 117, 1427, 137, 115, 115, 1486, 120, 117, 1434, 3008 117, 885, 1492, 1493, 114, 137, 116, 802, 118, 119, 3009 1493, 114, 1502, 137, 120, 99, 75, 115, 120, 814, 3010 79, 430, 34, 1486, 115, 137, 115, 1517, 115, 88, 3011 89, 425, 426, 1427, 1517, 1038, 562, 564, 563, 51, 3012 1434, 565, 1492, 964, 647, 566, 649, 931, 1191, 1348, 3013 1456, 1486, 1404, 440, 1527, 114, 1281, 1102, 452, 71, 3014 0, 856, 471, 122, 123, 1309, 1427, 862, 1434, 1053, 3015 1072, 465, 678, 1434, 678, 1427, 691, 908, 900, 580, 3016 959, 1427, 1434, 856, 642, 928, 716, 568, 1434, 1209, 3017 482, 727, 1486, 782, 34, 107, 699, 491, 893, 493, 3018 895, 495, -1, 792, 568, -1, 568, 902, -1, -1, 3019 194, 505, -1, 507, 803, 1191, 510, -1, 512, 513, 3020 -1, 1005, 1006, -1, -1, 1486, -1, -1, -1, -1, 3021 925, 71, -1, 217, 1486, -1, -1, 149, -1, 1023, 3022 1486, -1, -1, 227, -1, 157, 158, -1, 1002, 1003, 3023 -1, 946, -1, -1, -1, 75, 10, 11, 12, 13, 3024 14, -1, 82, -1, 959, 85, -1, 87, 88, 89, 3025 965, -1, -1, -1, 969, 187, -1, -1, -1, -1, 3026 -1, 590, 576, -1, -1, -1, 907, -1, 42, -1, 3027 202, -1, 586, 205, 206, -1, 116, 689, 210, -1, 3028 -1, -1, -1, 1057, 1058, -1, -1, -1, -1, 618, 3029 -1, 1287, -1, 297, 623, -1, 70, -1, 158, 231, 3030 -1, 1016, 616, 235, -1, 237, -1, 621, -1, -1, 3031 -1, -1, -1, 627, 246, -1, -1, -1, -1, -1, 3032 252, -1, -1, -1, -1, 257, -1, -1, -1, -1, 3033 -1, 1502, -1, -1, -1, 267, -1, -1, 1053, -1, 3034 114, 75, 116, 275, 1340, 79, -1, 1343, 122, 123, 3035 -1, -1, 1067, -1, 88, 89, 75, 1072, 77, 78, 3036 79, -1, -1, 692, 678, 1169, 1170, -1, 780, 88, 3037 89, 231, -1, -1, 1089, -1, -1, 706, 190, -1, 3038 114, -1, -1, -1, -1, 197, -1, 1191, 122, 123, 3039 -1, 1387, 252, 1002, 1003, 114, 1392, 257, 1113, -1, 3040 -1, -1, 716, 122, 123, 1209, -1, -1, -1, 341, 3041 -1, -1, -1, 345, 75, -1, 77, 78, 79, 351, 3042 727, 1062, -1, 946, -1, 1421, -1, 88, 89, 1203, 3043 -1, -1, 364, -1, -1, -1, 368, 441, -1, -1, 3044 852, -1, 965, -1, 51, -1, 969, -1, 1057, 1058, 3045 1165, 68, -1, 114, 1258, 1259, -1, 269, 65, -1, 3046 77, 68, 1266, 467, 71, -1, 1240, 1271, 797, -1, 3047 -1, -1, -1, 1247, 1248, 1249, 75, -1, 77, 78, 3048 79, 795, 894, -1, -1, 417, -1, -1, -1, 88, 3049 89, 351, -1, 1016, -1, -1, -1, -1, -1, 431, 3050 1304, 505, 119, -1, 436, -1, 510, -1, -1, 513, 3051 1506, -1, 444, -1, 326, 114, 1512, 116, 1233, -1, 3052 1235, 1236, 334, 122, 123, 337, -1, 1523, 940, -1, 3053 462, 1527, -1, 465, -1, -1, 1310, -1, -1, -1, 3054 -1, -1, 149, -1, 161, -1, -1, -1, 480, -1, 3055 482, -1, -1, -1, 161, -1, -1, 417, -1, 491, 3056 972, -1, -1, 495, -1, 10, 11, 12, 13, 14, 3057 -1, 431, -1, -1, -1, 1379, 436, -1, -1, 0, 3058 187, -1, 68, -1, 444, 397, -1, -1, -1, 401, 3059 1113, -1, 524, 907, -1, -1, -1, 42, 84, 1314, 3060 1404, -1, 462, 210, -1, 222, -1, -1, 1020, -1, 3061 -1, -1, -1, 34, -1, 222, 930, 931, 932, -1, 3062 480, -1, 482, 1427, -1, 70, -1, -1, -1, -1, 3063 1434, 1240, -1, 119, -1, -1, -1, 569, 1247, 1248, 3064 1249, -1, -1, 260, -1, -1, 1361, 1362, 265, -1, 3065 71, -1, -1, -1, 586, 587, 1371, 1372, 987, 663, 3066 -1, -1, -1, 280, 524, 477, 598, -1, 672, 114, 3067 984, 116, 676, -1, -1, 161, -1, 122, 123, -1, 3068 -1, -1, 1486, -1, 616, -1, -1, 1099, -1, 621, 3069 -1, -1, -1, -1, 1409, 627, -1, -1, 630, 631, 3070 -1, 1310, -1, 75, -1, 77, 78, 79, -1, -1, 3071 1233, -1, 1235, 1236, 646, -1, 88, 89, -1, -1, 3072 -1, -1, -1, -1, 331, -1, -1, 587, -1, -1, 3073 -1, -1, 664, 350, -1, -1, 222, 158, -1, -1, 3074 -1, -1, 114, 675, 116, -1, 1158, 1159, 1062, -1, 3075 122, 123, -1, 1468, 1469, -1, 568, 569, -1, -1, 3076 -1, -1, 75, 1478, 77, 78, 79, -1, -1, 701, 3077 630, 631, 704, -1, 260, 88, 89, 1492, 1493, 265, 3078 -1, 713, -1, -1, 716, -1, 646, -1, -1, -1, 3079 -1, 1314, -1, -1, -1, 1436, -1, 1438, 405, -1, 3080 -1, 114, 1517, 116, 664, -1, -1, 739, -1, 122, 3081 123, -1, 744, 430, 75, 675, 77, 78, 79, -1, 3082 -1, -1, -1, -1, -1, -1, -1, 88, 89, 446, 3083 -1, 252, 1473, -1, 1475, -1, 257, -1, -1, 651, 3084 1169, 701, -1, 655, 704, -1, -1, -1, 1371, 1372, 3085 782, -1, -1, 114, 471, -1, -1, -1, -1, -1, 3086 792, 122, 123, 795, 350, -1, 798, -1, -1, -1, 3087 -1, 803, -1, -1, -1, -1, 0, -1, -1, 739, 3088 -1, 813, -1, 887, -1, -1, 1409, -1, -1, -1, 3089 -1, -1, -1, -1, -1, 1209, 10, 11, 12, 13, 3090 14, 10, 11, 12, 13, 14, -1, -1, -1, -1, 3091 34, 102, 103, 104, 105, 106, 107, 108, 109, 110, 3092 111, 112, 782, -1, -1, -1, -1, -1, 42, -1, 3093 351, 863, 792, 42, -1, -1, -1, 1266, 798, -1, 3094 -1, -1, -1, 803, 430, 136, 1469, 71, -1, -1, 3095 -1, -1, -1, 885, 1366, 1478, 70, -1, -1, -1, 3096 892, 70, -1, 895, -1, -1, 75, -1, 77, 78, 3097 79, 1383, -1, 590, 786, -1, -1, -1, -1, 88, 3098 89, -1, -1, -1, -1, 471, -1, -1, -1, 921, 3099 1304, -1, -1, -1, -1, -1, 417, -1, 930, 931, 3100 114, 618, 116, 863, -1, 114, 623, 116, 122, 123, 3101 431, -1, -1, 122, 123, 436, -1, 0, -1, -1, 3102 -1, -1, -1, 444, -1, 885, -1, -1, -1, -1, 3103 1034, -1, 892, -1, 158, -1, 10, 11, 12, 13, 3104 14, 462, -1, 1455, 1456, -1, -1, -1, -1, -1, 3105 -1, 34, 984, -1, -1, -1, -1, -1, -1, 480, 3106 -1, 482, -1, -1, -1, 997, -1, -1, 42, -1, 3107 1002, 1003, -1, 1005, 1006, 692, -1, -1, -1, -1, 3108 28, 29, 30, -1, -1, -1, -1, 899, 71, 706, 3109 1404, 1023, -1, -1, -1, -1, 70, -1, -1, -1, 3110 -1, 75, -1, 524, 590, 79, -1, -1, -1, -1, 3111 727, -1, -1, -1, 88, 89, -1, -1, -1, -1, 3112 -1, -1, 1436, -1, 1438, 1057, 1058, -1, 252, -1, 3113 -1, -1, 618, 257, -1, -1, -1, 623, -1, -1, 3114 114, -1, 1002, 1003, -1, 1005, 1006, -1, 122, 123, 3115 -1, -1, 100, -1, 102, -1, -1, -1, -1, 1473, 3116 -1, 1475, 974, 1023, -1, -1, 587, -1, -1, -1, 3117 -1, -1, -1, -1, -1, 158, -1, -1, 990, 127, 3118 797, -1, -1, -1, -1, -1, -1, -1, 1502, -1, 3119 -1, -1, -1, -1, -1, -1, 1128, 1057, 1058, -1, 3120 -1, -1, -1, -1, -1, -1, 692, -1, -1, 630, 3121 631, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3122 706, -1, -1, -1, -1, 646, -1, 351, -1, -1, 3123 -1, -1, -1, -1, 182, -1, -1, -1, 1170, -1, 3124 -1, -1, 190, 664, 192, 193, -1, -1, -1, 197, 3125 -1, 199, 200, 1065, 675, -1, -1, -1, -1, 1191, 3126 -1, -1, -1, -1, -1, -1, -1, -1, 1128, 252, 3127 -1, 1203, -1, 1205, 257, -1, 1280, 1209, -1, -1, 3128 701, -1, -1, 704, -1, -1, -1, -1, -1, -1, 3129 -1, -1, 1104, 417, -1, -1, -1, 10, 11, 12, 3130 13, 14, -1, -1, -1, -1, -1, 431, 1240, -1, 3131 1170, 797, 436, -1, -1, 1247, 1248, 1249, 739, -1, 3132 444, 269, -1, -1, -1, -1, 1258, 1259, -1, 42, 3133 -1, 1191, -1, -1, -1, -1, -1, -1, 462, 1271, 3134 -1, -1, -1, 1203, -1, 1205, -1, -1, -1, -1, 3135 -1, -1, -1, -1, -1, -1, 480, 70, 482, -1, 3136 -1, 782, 75, -1, 77, 78, 79, -1, 351, -1, 3137 987, 792, 1304, -1, -1, 88, 89, 798, 1310, -1, 3138 1240, -1, 803, -1, -1, -1, -1, 1247, 1248, 1249, 3139 -1, -1, -1, 28, 29, 30, -1, -1, 1258, 1259, 3140 524, 114, -1, 116, -1, -1, -1, -1, -1, 122, 3141 123, 1271, -1, 10, 11, 12, 13, 14, -1, -1, 3142 -1, 55, -1, 57, -1, -1, 60, 61, 62, -1, 3143 64, 1435, -1, 1437, 417, -1, -1, -1, -1, -1, 3144 -1, -1, 863, -1, 78, 42, -1, 1379, 431, -1, 3145 1310, -1, -1, 436, -1, -1, 90, 91, -1, -1, 3146 -1, 444, -1, 587, 885, 100, -1, 102, 1472, -1, 3147 1474, 892, 1404, 70, -1, -1, -1, -1, 75, 462, 3148 77, 78, 79, -1, -1, -1, -1, -1, -1, -1, 3149 -1, 88, 89, -1, -1, 1427, -1, 480, -1, 482, 3150 -1, 987, 1434, -1, -1, -1, 630, 631, -1, -1, 3151 -1, -1, 1516, -1, 1518, -1, -1, 114, -1, 1379, 3152 -1, -1, 646, -1, -1, 122, 123, 1531, 1532, -1, 3153 -1, 10, 11, 12, 13, 14, -1, -1, -1, -1, 3154 664, 524, -1, -1, -1, -1, -1, 182, -1, -1, 3155 -1, 675, 1169, -1, 1486, -1, -1, 192, 193, -1, 3156 -1, 1493, 197, 42, 199, 200, -1, 1427, -1, -1, 3157 -1, -1, -1, -1, 1434, -1, -1, 701, -1, -1, 3158 704, 1002, 1003, -1, 1005, 1006, -1, -1, -1, -1, 3159 -1, 70, -1, -1, -1, -1, 75, -1, 77, 78, 3160 79, -1, 1023, -1, 587, -1, -1, -1, -1, 88, 3161 89, -1, -1, -1, -1, 739, -1, -1, -1, -1, 3162 -1, -1, -1, -1, 572, 573, 1486, -1, -1, -1, 3163 10, 11, 12, 13, 14, 114, 1057, 1058, -1, -1, 3164 -1, -1, -1, 122, 123, -1, -1, 630, 631, 1266, 3165 -1, 599, -1, -1, 602, 603, -1, 605, 782, 607, 3166 608, -1, 42, 646, 612, 613, -1, -1, 792, -1, 3167 -1, -1, -1, -1, 798, -1, -1, -1, -1, 803, 3168 -1, 664, -1, 1169, -1, 10, 11, 12, 13, 14, 3169 70, -1, 675, -1, -1, 75, -1, 77, 78, 79, 3170 -1, -1, -1, -1, -1, -1, -1, 1128, 88, 89, 3171 344, -1, 346, -1, -1, -1, -1, 42, 701, -1, 3172 -1, 704, -1, 357, 358, -1, -1, -1, -1, -1, 3173 -1, -1, -1, -1, 114, -1, 116, -1, -1, 863, 3174 -1, -1, 122, 123, -1, 70, -1, -1, -1, 1170, 3175 75, -1, -1, -1, 79, -1, 739, -1, -1, -1, 3176 -1, 885, -1, 88, 89, -1, -1, -1, 892, -1, 3177 1191, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3178 1266, -1, 1203, -1, 1205, -1, -1, -1, -1, 114, 3179 -1, -1, -1, -1, -1, -1, -1, 122, 123, 782, 3180 748, 749, -1, -1, -1, -1, -1, -1, -1, 792, 3181 -1, -1, -1, -1, -1, 798, -1, -1, -1, 1240, 3182 803, -1, -1, -1, -1, -1, 1247, 1248, 1249, -1, 3183 -1, -1, -1, -1, -1, -1, -1, 1258, 1259, -1, 2862 0, 1, 0, 186, 45, 1, 240, 186, 118, 45, 2863 186, 533, 205, 45, 186, 186, 186, 520, 0, 186, 2864 743, 187, 743, 743, 51, 220, 863, 1022, 863, 640, 2865 1005, 31, 32, 968, 34, 0, 34, 169, 170, 349, 2866 512, 598, 349, 616, 491, 45, 34, 598, 495, 664, 2867 188, 51, 34, 51, 569, 45, 599, 0, 345, 59, 2868 689, 1388, 605, 0, 45, 65, 45, 65, 68, 34, 2869 68, 71, 0, 71, 364, 71, 1004, 1005, 368, 1309, 2870 1015, 1118, 42, 266, 84, 85, 596, 266, 115, 187, 2871 266, 34, 202, 229, 266, 266, 266, 34, 107, 266, 2872 596, 267, 596, 66, 1034, 1035, 34, 30, 108, 417, 2873 84, 111, 248, 51, 596, 596, 596, 45, 118, 1392, 2874 596, 148, 114, 51, 262, 263, 42, 65, 436, 480, 2875 68, 84, 100, 71, 1461, 282, 444, 65, 257, 32, 2876 68, 686, 116, 71, 136, 186, 124, 125, 157, 149, 2877 186, 149, 630, 631, 186, 114, 116, 54, 81, 1031, 2878 0, 161, 297, 161, 47, 48, 134, 782, 646, 267, 2879 893, 90, 893, 893, 137, 0, 1, 792, 681, 1409, 2880 487, 1493, 631, 210, 1114, 1022, 186, 187, 803, 187, 2881 101, 84, 85, 480, 34, 67, 186, 646, 114, 118, 2882 116, 1238, 202, 1240, 1241, 186, 728, 186, 1520, 34, 2883 210, 149, 210, 240, 409, 1488, 127, 114, 712, 219, 2884 1493, 149, 222, 161, 222, 266, 704, 121, 68, 229, 2885 266, 712, 114, 161, 266, 1210, 712, 120, 112, 405, 2886 1513, 135, 114, 68, 244, 272, 71, 1520, 248, 187, 2887 101, 42, 252, 253, 252, 704, 42, 814, 186, 187, 2888 121, 804, 136, 814, 252, 894, 266, 267, 1443, 267, 2889 252, 786, 210, 273, 135, 257, 127, 51, 42, 630, 2890 631, 1276, 210, 310, 222, 395, 121, 252, 598, 1264, 2891 425, 426, 802, 117, 222, 646, 586, 121, 417, 42, 2892 135, 912, 42, 1478, 117, 1480, 802, 405, 802, 252, 2893 939, 121, 478, 423, 257, 252, 1, 436, 345, 429, 2894 802, 802, 802, 11, 252, 444, 802, 137, 114, 616, 2895 116, 331, 341, 331, 621, 1263, 1264, 627, 266, 47, 2896 48, 115, 114, 600, 889, 47, 48, 604, 348, 349, 2897 114, 244, 116, 704, 133, 117, 503, 136, 1195, 121, 2898 1195, 115, 114, 135, 921, 365, 51, 675, 625, 369, 2899 505, 114, 629, 116, 114, 510, 116, 75, 513, 379, 2900 478, 135, 222, 115, 1319, 119, 1001, 1002, 739, 121, 2901 88, 89, 117, 331, 115, 395, 121, 222, 425, 426, 2902 285, 425, 426, 331, 1276, 405, 121, 405, 115, 1384, 2903 983, 119, 252, 3, 135, 121, 114, 119, 116, 3, 2904 75, 349, 107, 423, 920, 310, 311, 252, 135, 429, 2905 115, 137, 567, 88, 89, 417, 210, 1432, 920, 1276, 2906 920, 1376, 1377, 114, 1439, 116, 121, 1062, 1063, 992, 2907 993, 954, 739, 689, 436, 1, 1384, 0, 1, 462, 2908 345, 116, 444, 148, 117, 465, 493, 405, 121, 493, 2909 470, 0, 157, 121, 417, 1104, 0, 405, 478, 1351, 2910 478, 114, 482, 930, 482, 512, 379, 487, 512, 137, 2911 490, 34, 492, 436, 966, 380, 1491, 116, 272, 118, 2912 482, 444, 1113, 10, 814, 795, 75, 814, 121, 641, 2913 350, 136, 650, 660, 121, 681, 135, 482, 863, 88, 2914 89, 206, 114, 297, 137, 210, 1493, 527, 71, 1086, 2915 137, 114, 532, 116, 1163, 1164, 310, 480, 648, 482, 2916 114, 892, 95, 96, 780, 482, 1513, 116, 75, 576, 2917 77, 78, 576, 1520, 482, 240, 675, 121, 115, 487, 2918 121, 88, 89, 117, 1436, 121, 1438, 121, 75, 1072, 2919 77, 78, 121, 137, 1077, 114, 137, 130, 131, 836, 2920 580, 137, 701, 681, 731, 121, 114, 272, 137, 616, 2921 275, 114, 119, 116, 621, 1432, 596, 490, 598, 492, 2922 1102, 137, 1439, 121, 1106, 892, 4, 5, 6, 7, 2923 8, 9, 297, 121, 114, 115, 852, 617, 925, 137, 2924 1492, 75, 114, 77, 78, 310, 114, 121, 121, 137, 2925 1245, 471, 632, 115, 88, 89, 636, 1252, 1253, 1254, 2926 93, 94, 482, 137, 137, 645, 1464, 647, 648, 649, 2927 587, 115, 1470, 1004, 1491, 850, 341, 482, 894, 115, 2928 345, 664, 116, 115, 549, 550, 551, 115, 596, 926, 2929 598, 115, 1490, 121, 72, 870, 74, 1495, 452, 364, 2930 1025, 681, 114, 368, 115, 685, 114, 687, 116, 114, 2931 121, 691, 114, 675, 122, 123, 983, 120, 932, 699, 2932 1315, 137, 75, 939, 77, 78, 79, 253, 67, 252, 2933 893, 114, 712, 713, 893, 88, 89, 893, 114, 701, 2934 116, 893, 893, 893, 856, 114, 893, 116, 115, 895, 2935 114, 505, 675, 507, 121, 971, 510, 137, 75, 513, 2936 425, 426, 1371, 636, 119, 4, 5, 6, 7, 8, 2937 9, 88, 89, 681, 114, 122, 116, 72, 701, 1388, 2938 75, 128, 129, 78, 137, 80, 114, 452, 116, 115, 2939 1292, 114, 87, 116, 1497, 121, 1497, 1497, 618, 782, 2940 465, 115, 1133, 1019, 712, 713, 114, 121, 116, 792, 2941 97, 98, 685, 115, 687, 115, 739, 895, 691, 121, 2942 803, 121, 802, 996, 137, 898, 491, 900, 493, 114, 2943 495, 116, 137, 72, 814, 74, 119, 122, 123, 119, 2944 505, 114, 507, 116, 114, 510, 84, 512, 513, 122, 2945 123, 1460, 1461, 115, 75, 59, 77, 78, 79, 121, 2946 10, 11, 12, 13, 14, 115, 1133, 88, 89, 115, 2947 1195, 121, 692, 120, 121, 121, 856, 10, 11, 12, 2948 13, 14, 862, 863, 115, 750, 706, 114, 1104, 115, 2949 121, 505, 42, 507, 802, 121, 510, 115, 137, 513, 2950 114, 863, 115, 121, 108, 1017, 814, 111, 121, 42, 2951 132, 576, 84, 893, 123, 895, 137, 115, 213, 99, 2952 70, 586, 902, 121, 678, 932, 1072, 115, 115, 115, 2953 115, 1077, 1263, 121, 121, 121, 121, 70, 133, 465, 2954 863, 115, 116, 1210, 117, 925, 863, 1163, 1164, 61, 2955 62, 616, 114, 115, 116, 931, 621, 120, 121, 482, 2956 47, 48, 627, 116, 114, 945, 116, 115, 885, 892, 2957 1295, 117, 122, 123, 115, 1102, 983, 797, 958, 1106, 2958 1107, 1119, 1120, 856, 964, 893, 115, 895, 968, 862, 2959 1473, 114, 115, 116, 1072, 556, 557, 558, 559, 1077, 2960 115, 527, 552, 553, 1094, 115, 532, 4, 5, 6, 2961 7, 8, 9, 678, 75, 219, 115, 925, 1001, 1002, 2962 1345, 82, 114, 1348, 85, 116, 87, 88, 89, 902, 2963 114, 115, 116, 554, 555, 1015, 560, 561, 35, 1522, 2964 117, 119, 75, 863, 119, 1025, 79, 121, 1028, 1029, 2965 1030, 716, 119, 136, 580, 88, 89, 352, 863, 354, 2966 1022, 1176, 1177, 136, 1179, 114, 117, 1392, 115, 273, 2967 1185, 115, 1397, 1188, 117, 72, 117, 74, 1058, 1062, 2968 1063, 114, 135, 116, 31, 958, 114, 115, 116, 122, 2969 123, 121, 1072, 1220, 61, 62, 63, 1077, 135, 1022, 2970 135, 1426, 115, 115, 119, 1022, 120, 115, 10, 11, 2971 12, 13, 14, 120, 1094, 75, 120, 115, 983, 79, 2972 121, 647, 75, 649, 77, 78, 931, 114, 88, 89, 2973 795, 137, 135, 0, 1, 88, 89, 115, 1118, 121, 2974 42, 3, 115, 115, 348, 440, 115, 115, 10, 11, 2975 12, 13, 14, 907, 114, 1371, 121, 1022, 115, 0, 2976 1, 365, 122, 123, 1072, 369, 986, 34, 70, 1077, 2977 115, 115, 1388, 699, 115, 115, 115, 115, 45, 115, 2978 42, 115, 115, 1310, 51, 1058, 1511, 1314, 115, 115, 2979 1170, 120, 1517, 34, 31, 115, 115, 121, 65, 1175, 2980 135, 68, 1022, 1528, 71, 136, 117, 1532, 70, 117, 2981 1133, 115, 114, 135, 116, 1195, 115, 1022, 114, 119, 2982 122, 123, 115, 121, 115, 1208, 115, 68, 115, 121, 2983 71, 115, 1347, 1195, 115, 121, 121, 114, 1214, 114, 2984 107, 114, 907, 75, 1460, 1461, 114, 135, 115, 114, 2985 82, 118, 119, 85, 137, 87, 88, 89, 1238, 135, 2986 1240, 1241, 1245, 135, 121, 930, 931, 932, 120, 1252, 2987 1253, 1254, 1195, 115, 135, 115, 120, 1367, 1195, 115, 2988 133, 148, 149, 117, 116, 120, 1413, 1210, 119, 137, 2989 157, 158, 115, 1507, 161, 75, 117, 1170, 75, 121, 2990 77, 78, 82, 117, 115, 85, 115, 87, 88, 89, 2991 117, 88, 89, 1067, 1276, 1295, 75, 158, 983, 186, 2992 187, 117, 117, 82, 115, 117, 85, 117, 87, 88, 2993 89, 117, 1315, 1309, 1497, 202, 116, 114, 1497, 1319, 2994 863, 1497, 119, 210, 50, 1497, 1497, 1497, 137, 137, 2995 1497, 120, 1498, 1276, 1174, 222, 137, 116, 75, 1276, 2996 77, 78, 79, 137, 137, 1345, 115, 120, 1348, 1174, 2997 1175, 88, 89, 240, 135, 1195, 1522, 115, 120, 86, 2998 117, 222, 117, 1473, 117, 252, 1366, 1367, 117, 117, 2999 1195, 117, 115, 260, 115, 117, 1376, 1377, 265, 266, 3000 267, 114, 1067, 114, 114, 272, 63, 115, 931, 1214, 3001 75, 252, 1392, 617, 79, 115, 119, 1397, 114, 945, 3002 1498, 137, 117, 88, 89, 117, 57, 115, 632, 101, 3003 297, 117, 115, 1409, 1414, 101, 114, 114, 964, 137, 3004 120, 645, 968, 310, 1522, 115, 1426, 115, 115, 114, 3005 121, 1271, 115, 45, 135, 137, 1276, 122, 123, 326, 3006 115, 137, 115, 101, 331, 101, 1271, 462, 99, 115, 3007 1432, 1276, 115, 137, 341, 137, 1497, 1439, 345, 137, 3008 117, 1497, 349, 350, 117, 1497, 115, 115, 120, 1015, 3009 0, 1, 117, 1473, 1474, 137, 114, 364, 137, 1022, 3010 1507, 368, 115, 1483, 1309, 120, 120, 115, 1488, 1432, 3011 137, 115, 115, 1493, 562, 1432, 1439, 1497, 1498, 564, 3012 1498, 563, 1439, 1040, 34, 565, 963, 566, 395, 1491, 3013 1461, 1511, 75, 1513, 77, 78, 79, 1517, 405, 1195, 3014 1520, 51, 1522, 1353, 1522, 88, 89, 1532, 1528, 1214, 3015 1286, 1107, 1532, 1314, 1439, 1077, 423, 1058, 425, 426, 3016 678, 71, 429, 194, 431, 678, 900, 691, 1491, 3, 3017 75, 114, 77, 78, 1491, 908, 10, 11, 12, 13, 3018 14, 580, 856, 88, 89, 452, 217, 958, 642, 1497, 3019 431, 716, 1118, 928, 1214, 727, 227, 107, 568, -1, 3020 482, -1, 568, 470, 1409, 568, -1, -1, 42, 114, 3021 -1, 478, 1432, 480, 119, 482, -1, -1, -1, 1439, 3022 487, -1, -1, -1, -1, -1, 493, 1432, 10, 11, 3023 12, 13, 14, -1, 1439, -1, 70, -1, 505, 149, 3024 507, 482, -1, 510, 1309, 512, 513, 157, 158, -1, 3025 -1, -1, 1175, 520, -1, -1, -1, 524, -1, -1, 3026 42, 75, -1, 77, 78, 79, 297, -1, -1, 664, 3027 -1, 1491, 1195, -1, 88, 89, -1, 187, -1, -1, 3028 -1, -1, -1, 524, -1, -1, 1491, 1441, 70, 1443, 3029 -1, 1214, 202, 75, -1, 205, 206, 79, -1, -1, 3030 210, 568, 569, -1, -1, -1, 88, 89, 122, 576, 3031 -1, -1, 1238, -1, 1240, 1241, -1, -1, -1, 586, 3032 587, 231, -1, 590, 1478, 235, 1480, 237, -1, 596, 3033 -1, 598, 114, -1, -1, -1, 246, -1, -1, -1, 3034 122, 123, 252, -1, 1409, -1, 587, 257, 75, 616, 3035 77, 78, 79, 1276, 621, -1, 623, 267, -1, -1, 3036 627, 88, 89, 630, 631, 275, -1, -1, -1, -1, 3037 75, -1, 77, 78, 79, -1, 1441, -1, 1443, 646, 3038 -1, 648, -1, 88, 89, -1, 1309, 782, -1, 630, 3039 631, -1, -1, 1319, -1, -1, -1, 792, -1, -1, 3040 10, 11, 12, 13, 14, 646, -1, -1, 803, 114, 3041 441, 678, -1, 1478, 681, 1480, -1, -1, 0, -1, 3042 -1, -1, -1, -1, 1028, 1029, 1030, -1, -1, -1, 3043 -1, 341, 42, -1, -1, 345, 467, 704, 705, 706, 3044 -1, 351, 1507, -1, -1, 712, 713, -1, -1, -1, 3045 1376, 1377, 34, -1, 364, -1, -1, -1, 368, -1, 3046 70, -1, -1, 704, -1, -1, -1, 10, 11, 12, 3047 13, 14, 739, -1, 505, -1, 743, 744, -1, 510, 3048 -1, -1, 513, 3, -1, -1, 1409, -1, 1414, 71, 3049 10, 11, 12, 13, 14, -1, -1, -1, -1, 42, 3050 -1, -1, -1, -1, 114, -1, 116, 417, -1, 1432, 3051 -1, -1, 122, 123, -1, -1, 1439, -1, -1, 786, 3052 -1, 431, 42, -1, -1, -1, 436, 70, 795, -1, 3053 797, -1, 75, 0, 444, 802, 79, -1, -1, -1, 3054 -1, -1, -1, -1, -1, 88, 89, 814, 1474, 68, 3055 70, -1, 462, -1, -1, 465, -1, 1483, 77, -1, 3056 -1, -1, -1, -1, -1, -1, -1, 34, 1491, -1, 3057 480, 114, 482, -1, -1, -1, 158, -1, -1, 122, 3058 123, 491, 190, -1, -1, 495, -1, -1, 75, 197, 3059 77, 78, 79, -1, -1, -1, 863, -1, -1, -1, 3060 119, 88, 89, -1, 71, 68, 1001, 1002, -1, -1, 3061 -1, -1, -1, -1, 524, -1, -1, -1, 885, -1, 3062 -1, 84, 863, -1, -1, 892, 893, 114, 895, 116, 3063 -1, -1, 663, -1, -1, 122, 123, -1, -1, -1, 3064 907, 672, 161, -1, 885, 676, -1, -1, 135, 231, 3065 -1, -1, -1, 920, 921, -1, 119, -1, 925, 569, 3066 -1, 269, -1, -1, 931, 932, -1, 1062, 1063, -1, 3067 252, -1, -1, -1, -1, 257, 586, 587, -1, -1, 3068 75, -1, 77, 78, 79, -1, -1, 954, 598, -1, 3069 931, 158, -1, 88, 89, -1, -1, -1, 161, -1, 3070 -1, -1, -1, 222, -1, -1, 616, -1, -1, -1, 3071 75, 621, 77, 78, 79, -1, 983, 627, 326, 114, 3072 630, 631, -1, 88, 89, 68, 334, 122, 123, 337, 3073 -1, 75, -1, 77, 78, 79, 646, 1004, 1005, -1, 3074 -1, 260, -1, -1, 88, 89, 265, -1, -1, 114, 3075 -1, 116, -1, -1, 664, 1022, -1, 122, 123, 222, 3076 -1, -1, 1366, 1004, 1005, 675, -1, -1, -1, 351, 3077 114, -1, 116, -1, -1, -1, 119, -1, 122, 123, 3078 -1, 1022, -1, -1, -1, 252, -1, -1, -1, 397, 3079 257, 701, -1, 401, 704, -1, -1, 260, -1, -1, 3080 1067, -1, 265, 713, -1, 1072, 716, -1, -1, -1, 3081 1077, -1, -1, 1208, -1, -1, -1, -1, 161, 1086, 3082 -1, -1, -1, -1, -1, -1, -1, 1094, -1, 739, 3083 -1, 350, -1, -1, 744, 417, 102, 103, 104, 105, 3084 106, 107, 108, 109, 110, 111, 112, -1, -1, 431, 3085 1245, -1, -1, -1, 436, -1, 887, 1252, 1253, 1254, 3086 -1, -1, 444, -1, -1, -1, 1133, -1, -1, 477, 3087 136, -1, 782, -1, -1, -1, -1, -1, -1, 222, 3088 462, -1, 792, -1, 351, 795, -1, 350, 798, -1, 3089 -1, -1, -1, 803, -1, -1, -1, 0, 480, -1, 3090 482, -1, -1, 813, -1, -1, -1, 1174, 1175, -1, 3091 75, 430, 77, 78, 79, -1, -1, 260, -1, -1, 3092 1315, -1, 265, 88, 89, -1, -1, 446, 1195, -1, 3093 -1, 34, -1, 1174, 1175, -1, -1, -1, -1, -1, 3094 -1, -1, 524, 1210, -1, -1, -1, 1214, -1, 114, 3095 417, 116, 471, 863, 1195, -1, -1, 122, 123, -1, 3096 568, 569, -1, -1, 431, -1, -1, 430, 71, 436, 3097 -1, -1, -1, 1214, -1, 885, -1, 444, -1, -1, 3098 -1, -1, 892, -1, -1, 895, 75, -1, 77, 78, 3099 79, -1, -1, -1, -1, 462, 1263, 1264, -1, 88, 3100 89, -1, 1033, -1, 1271, 587, -1, 350, 471, 1276, 3101 -1, 921, -1, 480, -1, 482, -1, -1, -1, -1, 3102 930, 931, 1263, 1264, -1, 114, -1, -1, -1, -1, 3103 1271, -1, -1, 122, 123, 1276, -1, -1, -1, -1, 3104 -1, -1, 1309, 651, -1, -1, 86, 655, 630, 631, 3105 90, 91, 92, -1, -1, 158, -1, 524, -1, -1, 3106 -1, -1, -1, -1, 646, -1, -1, -1, 1309, -1, 3107 -1, 590, -1, 983, 114, -1, 116, -1, 118, 119, 3108 -1, -1, 664, -1, -1, -1, 996, 430, -1, -1, 3109 -1, 1001, 1002, 675, 1004, 1005, -1, -1, -1, 618, 3110 1367, 86, -1, -1, 623, 90, 91, 92, -1, -1, 3111 -1, -1, 1022, -1, -1, -1, -1, 1384, -1, 701, 3112 587, -1, 704, -1, -1, -1, -1, 590, 471, 114, 3113 -1, 116, -1, 118, 119, -1, -1, -1, -1, -1, 3114 -1, -1, 1409, 1384, -1, -1, -1, -1, -1, 252, 3115 -1, -1, 1062, 1063, 257, 618, -1, 739, -1, -1, 3116 623, -1, -1, 630, 631, 1432, -1, -1, 1409, -1, 3117 -1, -1, 1439, 692, 1441, -1, 1443, -1, 786, 646, 3118 -1, -1, -1, -1, -1, -1, -1, 706, -1, -1, 3119 -1, 1432, -1, -1, -1, -1, -1, 664, 1439, -1, 3120 782, -1, -1, -1, -1, -1, 1473, -1, 675, -1, 3121 792, 1478, -1, 1480, -1, -1, 798, -1, -1, -1, 3122 -1, 803, -1, 1133, 1491, 0, -1, -1, -1, 692, 3123 1497, 1498, -1, -1, 701, -1, -1, 704, -1, -1, 3124 1507, -1, -1, 706, -1, -1, -1, 590, 351, -1, 3125 1491, -1, -1, -1, 1285, 1522, -1, -1, -1, 34, 3126 -1, -1, -1, -1, -1, 1175, -1, -1, -1, -1, 3127 -1, -1, 739, -1, -1, 618, -1, -1, 797, -1, 3128 623, 863, -1, -1, -1, 1195, -1, -1, 28, 29, 3129 30, 899, -1, -1, -1, -1, 71, -1, 1208, -1, 3130 1210, -1, -1, 885, 1214, -1, -1, -1, -1, -1, 3131 892, -1, -1, -1, 417, 782, -1, -1, -1, -1, 3132 -1, -1, -1, -1, -1, 792, -1, -1, 431, -1, 3133 -1, 798, -1, 436, 797, 1245, 803, -1, -1, -1, 3134 -1, 444, 1252, 1253, 1254, -1, -1, -1, 59, 692, 3135 -1, -1, -1, 1263, 1264, -1, -1, -1, -1, 462, 3136 100, -1, 102, 706, -1, 973, 1276, -1, -1, -1, 3137 -1, -1, -1, -1, -1, -1, -1, 480, -1, 482, 3138 -1, 989, -1, 158, -1, -1, -1, -1, -1, -1, 3139 -1, -1, -1, -1, -1, -1, 863, 108, -1, 1309, 3140 111, -1, -1, -1, -1, 1315, -1, -1, -1, 1440, 3141 -1, 1442, -1, -1, -1, -1, -1, -1, 885, 1001, 3142 1002, 524, 1004, 1005, -1, 892, -1, -1, -1, -1, 3184 3143 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3185 1271, -1, -1, 10, 11, 12, 13, 14, 15, 16, 3186 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3187 27, 28, 29, -1, -1, 32, 33, 34, 1002, 1003, 3188 863, 1005, 1006, -1, -1, 42, -1, -1, -1, 1310, 3189 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1023, 3190 -1, -1, 885, -1, -1, -1, -1, -1, -1, 892, 3191 -1, -1, -1, 70, -1, -1, -1, -1, 75, -1, 3192 77, 78, 79, -1, -1, -1, -1, -1, -1, -1, 3193 -1, 88, 89, 1057, 1058, -1, -1, 572, 573, -1, 3144 1022, -1, 182, -1, -1, -1, 1477, -1, 1479, -1, 3145 -1, -1, 192, 193, 797, -1, -1, 197, -1, 199, 3146 200, -1, 1070, -1, -1, -1, -1, 986, -1, -1, 3147 -1, -1, -1, -1, 1384, -1, -1, 252, -1, -1, 3148 1062, 1063, 257, -1, 587, -1, -1, -1, -1, -1, 3149 1521, -1, 1523, -1, -1, -1, -1, -1, -1, 1409, 3150 -1, 1109, -1, -1, -1, 1536, 1537, -1, 219, -1, 3194 3151 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3195 -1, 899, -1, -1, -1, -1, 904, 114, 1379, 116,3196 -1, -1, -1, -1, 599, 122, 123, 602, 603, -1,3197 605, -1, 607, 608, -1, -1, -1, 612, 613, 10,3198 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,3199 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,3200 -1, -1, -1, -1, 1128, -1, 1427, -1, -1, -1,3201 -1, 42, 51, 1434, -1, -1, -1, -1, -1, 1002,3202 1003, 7, 1005, 1006, 10, 11, 12, 13, 14, 68,3203 -1, -1, -1, -1, -1, -1, -1, -1, -1, 70,3204 1023, -1, -1, -1, -1, -1, 1170, -1, -1, -1,3205 81, -1, -1, -1, 40, 41, 42, 43, -1, 693,3206 -1, 695, -1, -1, -1, 1486, -1, 1191, 702, 703,3207 -1, -1, -1, 707, 1057, 1058, 115, -1, -1, 1203,3208 119, 1205, -1, 69, 70, -1, 720, -1, -1, 75,3209 -1, 725, -1, 79, -1, -1, 82, 83, 84, 85,3210 86, 87, 88, 89, -1, 91, 92, -1, -1, 148,3211 -1, 1 059, -1, 748, 749, -1, 1240, -1, 752, 158,3212 -1, -1, 161, 1247, 1248, 1249, -1, -1, 114, -1,3213 116, -1, -1, -1, 1258, 1259, 122, 123, 124, 125,3214 126, 127, -1, -1, 68, 1128, -1, 1271, -1, -1,3215 -1, -1, -1, 77, -1, 79, -1, 81, -1, -1,3216 -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,3217 -1, 210, -1, -1, -1, -1, -1, -1, -1, -1,3218 -1, -1, -1, 222, -1, -1, 1310, 1170, -1, -1,3219 -1, -1, -1, -1, -1, 119, -1, 121, 122, 123,3220 -1, 240, -1, -1, -1, -1, -1, -1, 1191, -1,3221 -1, 845, -1, 847, 848, 849, -1, -1, -1, -1,3222 1203, -1, 1205, -1, -1, -1, 265, -1, -1, -1,3223 -1, -1, 866, 272, -1, -1, -1, 161, -1, 1187,3224 -1, -1, -1, -1, -1, -1, 880, -1, -1, -1,3225 -1, -1, -1, -1, -1, 1379, -1, 1240, 297, -1,3226 -1, -1, -1, -1, 1247, 1248, 1249, -1, -1, 904,3227 -1, 310, -1, -1, -1, 1258, 1259, -1, -1, -1,3228 -1, -1, -1, -1, -1, 919, -1, -1, 1271, -1,3229 -1, -1, -1, -1, -1, -1, -1, -1, 222, -1,3230 224, 225, 226, 1427, -1, -1, 345, -1, -1, -1,3231 1434, 350, -1, -1, -1, -1, -1, -1, -1, -1,3232 -1, -1, -1, -1, -1, -1, -1, 1310, -1, 963,3233 -1, -1, -1, -1, 968, -1, 260, -1, -1, 973,3234 -1, 265, -1, -1, 978, -1, -1, -1, -1, 983,3235 -1, 985, 986, -1, -1, 989, 280, -1, -1, -1,3236 -1, -1, 1486, -1, 998, -1, -1, -1, -1, -1,3152 -1, -1, 1432, 986, -1, -1, -1, 630, 631, 1439, 3153 -1, -1, -1, -1, 1001, 1002, -1, 1004, 1005, -1, 3154 -1, -1, -1, 646, -1, -1, -1, -1, -1, -1, 3155 -1, 1133, -1, -1, -1, 1022, -1, -1, -1, -1, 3156 -1, 664, 273, -1, -1, -1, -1, -1, -1, -1, 3157 -1, -1, 675, -1, -1, -1, 351, -1, -1, -1, 3158 -1, 1491, -1, -1, -1, 55, -1, 57, 1498, -1, 3159 60, 61, 62, 1175, 64, 1062, 1063, -1, 701, -1, 3160 -1, 704, -1, -1, -1, -1, -1, -1, 78, -1, 3161 -1, -1, -1, 1195, -1, -1, -1, -1, -1, -1, 3162 90, 91, -1, -1, -1, -1, 1208, -1, 1210, -1, 3163 -1, -1, -1, -1, -1, -1, 739, 348, -1, -1, 3164 -1, -1, 417, 986, -1, -1, -1, -1, -1, -1, 3165 -1, -1, -1, -1, 365, 1174, 431, -1, 369, -1, 3166 -1, 436, -1, 1245, -1, -1, 1133, -1, -1, 444, 3167 1252, 1253, 1254, -1, -1, -1, -1, -1, -1, 782, 3168 -1, 1263, 1264, -1, -1, -1, -1, 462, -1, 792, 3169 -1, -1, -1, -1, 1276, 798, -1, -1, -1, -1, 3170 803, -1, -1, -1, -1, 480, -1, 482, 1175, -1, 3171 -1, 1174, 10, 11, 12, 13, 14, -1, -1, -1, 3172 -1, 28, 29, 30, -1, -1, -1, -1, 1195, -1, 3173 -1, -1, -1, 1315, -1, -1, -1, -1, -1, -1, 3174 -1, 1208, -1, 1210, 42, -1, -1, -1, -1, 524, 3175 -1, -1, 1271, -1, -1, -1, -1, -1, -1, -1, 3176 863, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3177 -1, -1, 70, -1, -1, -1, -1, 75, 1245, 77, 3178 78, 79, 885, -1, -1, 1252, 1253, 1254, -1, 892, 3179 88, 89, -1, 100, -1, 102, 1263, 1264, -1, -1, 3180 -1, -1, 1384, -1, -1, -1, -1, -1, 1271, 1276, 3181 -1, -1, 587, -1, -1, -1, 114, -1, 116, -1, 3182 127, -1, -1, -1, 122, 123, -1, -1, -1, -1, 3183 -1, 1174, 572, 573, -1, -1, -1, -1, -1, -1, 3184 -1, -1, -1, -1, -1, -1, -1, -1, 1315, -1, 3185 1432, -1, -1, -1, -1, 630, 631, 1439, -1, 599, 3186 -1, -1, 602, 603, -1, 605, -1, 607, 608, -1, 3187 -1, 646, 612, 613, 344, 182, 346, -1, -1, -1, 3188 -1, -1, -1, 190, -1, 192, 193, 357, 358, 664, 3189 197, -1, 199, 200, -1, -1, -1, -1, 1001, 1002, 3190 675, 1004, 1005, -1, -1, -1, 617, -1, -1, 1491, 3191 -1, -1, -1, -1, -1, -1, -1, 1384, -1, 1022, 3192 -1, 632, -1, -1, -1, -1, 701, -1, 1271, 704, 3193 -1, -1, -1, -1, 645, -1, -1, -1, -1, -1, 3237 3194 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3238 1014, 1015, -1, -1, -1, -1, 425, 426, -1, -1, 3239 -1, -1, 431, -1, -1, -1, 1379, -1, -1, -1, 3240 -1, -1, -1, -1, -1, -1, 1040, 331, -1, 1043, 3241 -1, -1, -1, 452, -1, -1, -1, -1, -1, -1, 3242 -1, -1, -1, -1, 1059, -1, 350, -1, -1, -1, 3243 -1, 355, 356, -1, -1, -1, -1, -1, -1, 363, 3244 -1, 480, -1, -1, 1427, -1, -1, -1, -1, -1, 3245 -1, 1434, 1086, -1, 493, -1, -1, -1, 1092, 1093, 3246 -1, -1, -1, -1, -1, -1, 505, -1, 507, -1, 3247 -1, 510, -1, 512, 513, -1, -1, 1111, -1, -1, 3248 -1, 405, 1116, -1, -1, 524, -1, 1121, -1, -1, 3249 -1, -1, -1, -1, -1, -1, -1, -1, 1132, 423, 3250 -1, -1, -1, 1486, 428, -1, 430, -1, -1, -1, 3251 -1, 1145, -1, 1147, 1148, 1149, 1150, -1, -1, -1, 3252 -1, -1, 446, -1, -1, 449, 450, -1, 1162, -1, 3253 1164, -1, -1, 457, 1168, -1, -1, 576, -1, -1, 3254 -1, -1, -1, -1, -1, -1, -1, 471, 587, -1, 3255 -1, 590, 1187, -1, 478, -1, -1, -1, -1, -1, 3256 -1, -1, 1196, 1197, -1, -1, 7, -1, -1, 10, 3257 11, 12, 13, 14, -1, -1, -1, 616, -1, -1, 3258 -1, -1, 621, 46, -1, -1, -1, -1, -1, -1, 3259 -1, 630, 631, -1, -1, -1, -1, -1, -1, 40, 3260 41, 42, 43, -1, -1, -1, -1, 646, -1, -1, 3261 -1, -1, -1, -1, -1, -1, 1250, 1251, -1, -1, 3262 -1, -1, -1, -1, -1, -1, 1260, -1, 69, 70, 3263 93, -1, -1, -1, 75, -1, -1, -1, 79, 678, 3264 103, 82, 83, 84, 85, 86, 87, 88, 89, -1, 3265 91, 92, -1, -1, -1, -1, -1, -1, -1, -1, 3266 -1, -1, -1, -1, -1, 704, 590, 706, -1, -1, 3267 -1, -1, -1, 114, -1, 116, -1, 40, 41, -1, 3268 43, 122, 123, 124, 125, 126, 127, -1, 1322, -1, 3269 1324, 1325, 1326, -1, 618, -1, -1, -1, -1, 623, 3270 739, -1, 1336, -1, -1, -1, 69, -1, -1, 172, 3271 1344, -1, 75, -1, -1, -1, 79, -1, -1, 82, 3272 83, 84, 85, 86, 87, 88, 89, -1, 91, 92, 3273 -1, -1, 195, -1, -1, 1369, 1370, -1, -1, -1, 3274 -1, -1, -1, -1, -1, -1, 209, -1, -1, -1, 3275 -1, 114, -1, 116, -1, 218, -1, -1, 797, 122, 3276 123, 124, 125, 126, 127, 228, -1, -1, 692, -1, 3277 -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, 3278 1414, 1415, 706, -1, -1, -1, -1, -1, -1, -1, 3279 253, -1, -1, 1427, -1, 258, -1, -1, -1, -1, 3280 1434, -1, -1, 727, -1, -1, -1, -1, 271, -1, 3281 -1, -1, -1, -1, 277, -1, 279, -1, -1, -1, 3282 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3283 -1, -1, -1, 1467, -1, 298, -1, 1471, -1, -1, 3284 -1, -1, -1, -1, -1, -1, 885, -1, -1, -1, 3285 -1, -1, -1, 892, -1, -1, -1, -1, -1, -1, 3286 -1, -1, 786, -1, -1, 1499, -1, 1501, 907, -1, 3287 -1, -1, -1, 797, -1, -1, 339, -1, -1, -1, 3288 343, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3289 814, -1, -1, 932, -1, 1529, 1530, -1, -1, -1, 3290 -1, -1, -1, 1537, 1538, -1, -1, -1, 371, -1, 3291 -1, -1, 375, 376, -1, 378, -1, -1, -1, -1, 3292 -1, -1, 385, 386, -1, 388, 389, -1, 391, -1, 3293 393, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3294 -1, -1, -1, -1, -1, 984, -1, 410, -1, -1, 3295 -1, -1, -1, -1, -1, 418, -1, -1, -1, 157, 3296 158, -1, -1, -1, -1, -1, 1005, 1006, -1, -1, 3297 -1, -1, -1, -1, -1, -1, -1, -1, -1, 442, 3298 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3299 -1, -1, 190, -1, -1, -1, -1, -1, -1, 197, 3300 -1, 925, -1, -1, -1, 468, -1, -1, -1, -1, 3301 -1, 474, -1, -1, -1, -1, 479, -1, -1, -1, 3302 -1, -1, -1, 1062, -1, -1, -1, -1, -1, -1, 3303 -1, 955, 10, 11, 12, 13, 14, 15, 16, 17, 3304 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3305 28, 29, -1, 516, 32, 33, 34, -1, -1, -1, 3306 -1, -1, -1, 987, 42, -1, -1, -1, 531, -1, 3307 -1, 269, -1, -1, 998, -1, -1, -1, -1, -1, 3308 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1128, 3309 -1, -1, 70, -1, -1, -1, -1, 75, -1, 77, 3310 78, -1, -1, -1, -1, 568, -1, -1, -1, -1, 3311 88, 89, -1, -1, 577, -1, -1, -1, -1, -1, 3312 -1, -1, -1, -1, -1, -1, -1, -1, 326, -1, 3313 1169, -1, -1, -1, 597, -1, 334, 335, 116, 337, 3314 338, -1, -1, 1067, 122, 123, -1, 345, -1, -1, 3315 -1, 349, -1, -1, -1, -1, -1, 1081, -1, -1, 3316 -1, -1, -1, -1, -1, -1, 1205, -1, -1, -1, 3317 368, -1, 635, -1, 10, 11, 12, 13, 14, 15, 3318 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 3319 26, 27, 28, 29, -1, -1, 32, 33, 34, 397, 3320 -1, -1, -1, 401, -1, -1, 42, -1, 671, -1, 3321 -1, -1, -1, -1, -1, -1, 679, -1, -1, 1258, 3322 1259, -1, -1, -1, -1, -1, -1, 1266, -1, -1, 3323 -1, -1, -1, 431, 70, -1, -1, -1, -1, 75, 3324 -1, 77, 78, 79, -1, 1169, -1, 710, -1, -1, 3325 -1, -1, 88, 89, -1, -1, -1, -1, 721, 722, 3326 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3327 -1, -1, -1, -1, -1, -1, -1, -1, 114, 477, 3328 116, -1, 480, -1, -1, -1, 122, 123, -1, -1, 3329 753, -1, -1, -1, -1, 758, -1, 10, 11, 12, 3330 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3331 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3332 33, 34, 520, -1, -1, -1, 524, -1, -1, 42, 3333 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3334 1379, -1, 1266, -1, -1, -1, -1, -1, -1, -1, 3335 -1, -1, -1, -1, -1, 818, -1, 70, -1, -1, 3336 -1, -1, 825, -1, 77, 78, -1, -1, -1, -1, 3337 568, 569, -1, -1, -1, 838, -1, 840, -1, -1, 3338 -1, -1, -1, -1, -1, -1, -1, -1, 586, 587, 3339 853, -1, -1, -1, -1, -1, 859, 1436, 596, 1438, 3340 598, 599, -1, 116, -1, 148, -1, 605, 871, 122, 3341 123, 874, -1, -1, -1, 158, -1, 615, 616, -1, 3342 -1, -1, -1, 621, -1, -1, 169, 170, -1, -1, 3343 -1, -1, 630, 631, 1473, -1, 1475, -1, -1, -1, 3344 -1, -1, -1, -1, -1, -1, -1, -1, 646, -1, 3345 -1, -1, -1, 651, 652, -1, -1, 655, 656, -1, 3346 -1, -1, -1, 1502, 662, -1, 283, -1, 285, 286, 3347 -1, -1, -1, -1, -1, -1, -1, -1, 295, 296, 3348 -1, -1, -1, 681, -1, -1, -1, -1, 40, 41, 3349 -1, 43, -1, 310, 311, -1, -1, 240, -1, -1, 3350 -1, -1, -1, -1, -1, -1, 704, 705, -1, -1, 3351 -1, -1, -1, -1, -1, -1, -1, 69, -1, 982, 3352 -1, 264, -1, 75, -1, 77, 78, 79, 345, -1, 3353 82, 83, 84, 85, 86, 87, 88, 89, -1, 91, 3354 92, 739, -1, -1, -1, 743, 744, -1, -1, -1, 3355 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3356 -1, -1, 114, 380, 116, -1, 118, 119, -1, -1, 3357 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 3358 1043, -1, -1, -1, -1, -1, -1, -1, 786, -1, 3359 -1, -1, -1, 1517, -1, -1, -1, -1, -1, -1, 3360 -1, -1, -1, -1, 802, -1, 804, -1, -1, -1, 3361 -1, -1, -1, -1, 1077, -1, 814, -1, -1, 1082, 3362 -1, -1, -1, -1, -1, -1, -1, 1090, -1, -1, 3363 -1, -1, -1, -1, -1, -1, 379, -1, 10, 11, 3364 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3365 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, 3366 -1, 1124, -1, -1, -1, -1, -1, -1, -1, -1, 3367 42, -1, 1135, -1, -1, 1138, -1, 1140, -1, -1, 3368 -1, -1, -1, -1, -1, -1, -1, 885, -1, -1, 3369 -1, -1, 1155, 1156, 892, 893, -1, 895, 70, -1, 3370 -1, 899, -1, -1, -1, -1, -1, -1, -1, 81, 3371 -1, -1, 1175, -1, -1, -1, -1, -1, -1, -1, 3372 -1, -1, 920, 921, -1, -1, -1, -1, -1, 472, 3373 -1, -1, 549, 550, 551, 552, 553, 554, 555, 556, 3374 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 3375 -1, -1, -1, -1, -1, -1, -1, 955, 1221, -1, 3376 -1, -1, -1, -1, -1, -1, 1229, -1, -1, 512, 3377 -1, -1, -1, -1, -1, -1, 974, 975, -1, -1, 3378 -1, 524, -1, -1, -1, -1, 984, 530, -1, -1, 3379 533, -1, 990, 991, -1, 993, 994, 995, -1, -1, 3380 -1, -1, -1, 546, -1, -1, -1, 1005, 1006, -1, 3381 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3382 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3383 -1, -1, -1, 576, -1, -1, 1299, -1, 1301, -1, 3384 583, -1, 42, -1, 587, -1, -1, -1, -1, -1, 3385 -1, -1, -1, -1, 1317, -1, 1319, -1, -1, -1, 3386 -1, -1, -1, -1, -1, -1, -1, 1065, -1, 1067, 3387 70, 1334, 689, -1, 1072, -1, -1, -1, -1, -1, 3388 -1, -1, -1, 1081, -1, -1, 1349, 1350, -1, -1, 3389 633, -1, -1, -1, -1, -1, -1, 1360, 641, -1, 3390 1363, -1, -1, -1, -1, -1, 1104, 1105, -1, -1, 3391 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3392 -1, -1, 1385, -1, -1, -1, -1, -1, -1, -1, 3393 1128, 1394, -1, 750, 1397, -1, 1399, 1400, 1401, -1, 3394 -1, -1, -1, 10, 11, 12, 13, 14, 15, 16, 3395 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3396 27, 28, 29, 780, -1, 32, 33, 34, 35, 36, 3397 37, 38, -1, -1, 717, 42, -1, 1440, -1, 1442, 3398 -1, 1444, -1, -1, -1, -1, -1, -1, -1, -1, 3399 -1, -1, -1, -1, -1, -1, 739, 1460, 741, -1, 3400 -1, -1, -1, 70, -1, -1, -1, 1205, 751, -1, 3401 77, 78, -1, -1, 757, -1, -1, 3, 4, 5, 3402 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 3403 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 3404 26, 27, 28, 29, -1, -1, 32, 33, 34, 35, 3405 -1, -1, -1, 39, 797, 798, 42, 43, -1, -1, 3406 1258, 1259, -1, -1, -1, -1, -1, -1, -1, -1, 3407 813, -1, -1, -1, -1, -1, -1, 894, -1, -1, 3408 -1, 67, -1, -1, 70, -1, 72, -1, 74, 75, 3409 -1, 77, 78, 79, -1, -1, -1, -1, -1, -1, 3410 -1, -1, 88, 89, -1, -1, -1, -1, -1, 852, 3411 -1, -1, -1, 856, -1, -1, -1, 40, 41, -1, 3412 43, -1, -1, 940, -1, -1, -1, -1, 114, -1, 3413 116, -1, -1, -1, 120, -1, 122, 123, -1, -1, 3414 -1, -1, 885, -1, -1, -1, 69, -1, -1, 892, 3415 -1, -1, 75, -1, -1, 972, 79, -1, -1, 82, 3416 83, 84, 85, 86, 87, 88, 89, 984, 91, 92, 3417 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3418 -1, 1379, -1, -1, -1, -1, -1, -1, -1, 932, 3419 -1, 114, -1, 116, -1, -1, 119, -1, -1, 122, 3420 123, 124, 125, 126, 127, -1, 1023, -1, -1, -1, 3421 -1, -1, -1, -1, -1, -1, 959, -1, -1, -1, 3422 -1, 964, -1, -1, 967, -1, -1, -1, -1, -1, 3423 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3424 -1, -1, -1, -1, 987, -1, -1, -1, -1, -1, 3425 -1, -1, -1, -1, -1, 998, -1, -1, -1, -1, 3426 -1, -1, 40, 41, -1, 43, -1, -1, -1, -1, 3427 1468, -1, -1, -1, -1, 1018, -1, 1020, -1, -1, 3428 -1, -1, 1099, -1, -1, -1, -1, -1, -1, -1, 3429 -1, 69, 1035, 1036, 1492, 1493, -1, 75, -1, -1, 3430 -1, 79, -1, -1, 82, 83, 84, 85, 86, 87, 3431 88, 89, 1055, 91, 92, -1, -1, -1, -1, 1517, 3432 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3433 -1, -1, -1, -1, -1, -1, 114, -1, 116, -1, 3434 -1, 1158, 1159, 121, 122, 123, 124, 125, 126, 127, 3435 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3436 -1, -1, -1, -1, -1, -1, 1109, -1, -1, -1, 3437 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3438 -1, -1, -1, -1, -1, 1128, -1, -1, -1, -1, 3439 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3440 1143, 1144, 3, 4, 5, 6, 7, 8, 9, 10, 3441 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 3442 21, 22, 23, 24, 25, 26, 27, 28, 29, -1, 3443 -1, 32, 33, 34, 35, -1, -1, -1, 39, 40, 3444 41, 42, 43, 44, -1, 46, -1, -1, 49, 50, 3445 51, 52, 53, 54, 55, 56, -1, -1, -1, 60, 3446 -1, -1, -1, 64, 65, -1, 67, -1, 69, 70, 3447 -1, 72, -1, 74, 75, -1, 77, 78, 79, -1, 3448 -1, 82, 83, 84, 85, 86, 87, 88, 89, -1, 3449 91, 92, -1, -1, -1, -1, -1, -1, -1, -1, 3450 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3451 -1, -1, -1, 114, -1, 116, -1, -1, 119, -1, 3452 -1, 122, 123, 124, 125, 126, 127, -1, -1, -1, 3453 -1, 132, -1, -1, -1, -1, 137, -1, -1, -1, 3454 -1, -1, 1285, -1, -1, 1288, -1, -1, -1, 1366, 3455 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3456 -1, -1, -1, -1, -1, -1, 1383, -1, -1, -1, 3457 -1, -1, -1, -1, 3, 4, 5, 6, 7, 8, 3195 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1062, 3196 1063, -1, 269, -1, 739, 1432, -1, -1, -1, -1, 3197 -1, -1, 1439, -1, 3, 4, 5, 6, 7, 8, 3458 3198 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3459 3199 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3460 29, -1, -1, 32, 33, 34, 35, -1, -1, -1,3461 39, 40, 41, 42, 43, -1, -1, -1, -1, -1,3462 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3463 -1, -1, -1, -1, -1, -1, -1, -1, 1455, 1456,3200 29, -1, -1, 32, 33, 34, 35, 782, 748, 749, 3201 39, 40, 41, 42, 43, -1, -1, 792, -1, -1, 3202 -1, -1, -1, 798, 1491, -1, -1, -1, 803, -1, 3203 1133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3464 3204 69, 70, -1, 72, -1, 74, 75, -1, 77, 78, 3465 3205 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3466 3206 89, -1, 91, 92, -1, -1, -1, -1, -1, -1, 3207 -1, -1, 1175, -1, -1, -1, -1, -1, -1, -1, 3208 -1, -1, -1, 40, 41, 114, 43, 116, 863, -1, 3209 -1, -1, 1195, 122, 123, 124, 125, 126, 127, -1, 3210 -1, -1, -1, -1, -1, 1208, -1, 1210, 137, -1, 3211 885, -1, 69, -1, -1, -1, -1, 892, 75, -1, 3212 -1, -1, 79, -1, -1, 82, 83, 84, 85, 86, 3213 87, 88, 89, -1, 91, 92, -1, -1, -1, -1, 3214 -1, -1, 1245, -1, -1, -1, -1, -1, -1, 1252, 3215 1253, 1254, 863, -1, -1, -1, -1, 114, -1, 116, 3216 1263, 1264, 119, -1, 904, 122, 123, 124, 125, 126, 3217 127, -1, -1, 1276, 3, 4, 5, 6, 7, 8, 3218 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3219 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3220 29, -1, -1, 32, 33, 34, -1, -1, -1, -1, 3221 -1, -1, 1315, 42, -1, -1, -1, -1, -1, -1, 3222 -1, -1, -1, 693, -1, 695, 1001, 1002, -1, 1004, 3223 1005, -1, 702, 703, -1, -1, -1, 707, -1, -1, 3224 -1, 70, -1, 72, -1, 74, -1, 1022, 77, 78, 3225 720, -1, -1, -1, -1, 725, -1, -1, -1, -1, 3226 -1, -1, -1, -1, -1, 572, 573, -1, -1, -1, 3467 3227 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3468 -1, -1, -1, -1, -1, 114, -1, 116, -1, -1, 3228 -1, 1384, 752, -1, -1, -1, -1, 1062, 1063, -1, 3229 119, -1, 599, -1, -1, 602, 603, -1, 605, -1, 3230 607, 608, -1, -1, -1, 612, 613, -1, -1, -1, 3231 -1, -1, -1, -1, 1025, -1, -1, 1028, 1029, 1030, 3232 -1, -1, -1, -1, 1064, -1, -1, -1, -1, 1432, 3233 -1, -1, -1, -1, -1, -1, 1439, 51, -1, 10, 3234 11, 12, 13, 14, -1, -1, -1, -1, -1, -1, 3235 -1, -1, -1, -1, 68, -1, -1, -1, 1133, 10, 3236 11, 12, 13, 14, -1, -1, -1, -1, -1, -1, 3237 -1, 42, -1, -1, -1, 845, -1, 847, 848, 849, 3238 -1, -1, -1, -1, -1, -1, -1, -1, 1491, -1, 3239 -1, 42, -1, -1, -1, -1, 866, -1, -1, 70, 3240 1175, 115, -1, -1, 75, 119, 77, 78, 79, -1, 3241 880, -1, -1, -1, -1, -1, -1, 88, 89, 70, 3242 1195, -1, -1, -1, 75, -1, 77, 78, 79, -1, 3243 -1, -1, -1, 1208, 148, 1210, -1, 88, 89, -1, 3244 -1, 748, 749, 114, 158, 116, -1, 161, -1, 919, 3245 -1, 122, 123, -1, -1, -1, -1, 1197, -1, -1, 3246 -1, -1, -1, 114, -1, 116, -1, -1, -1, -1, 3247 1245, 122, 123, -1, -1, -1, -1, 1252, 1253, 1254, 3248 -1, -1, -1, -1, 1195, -1, -1, -1, 1263, 1264, 3249 -1, -1, 962, -1, -1, -1, 210, 967, -1, -1, 3250 -1, 1276, 972, -1, -1, -1, -1, 977, 222, -1, 3251 -1, -1, 982, -1, 984, 985, -1, -1, 988, -1, 3252 -1, -1, -1, -1, -1, -1, 240, 997, -1, -1, 3253 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3254 1315, -1, -1, 1013, 1014, -1, -1, -1, 68, -1, 3255 -1, 265, -1, -1, -1, -1, -1, 77, 272, 79, 3256 -1, 81, -1, -1, -1, -1, -1, -1, 88, -1, 3257 -1, -1, -1, -1, 1044, -1, -1, 1047, -1, -1, 3258 -1, -1, -1, 297, 1295, -1, -1, -1, -1, -1, 3259 -1, -1, 899, -1, -1, -1, 310, 904, -1, 119, 3260 -1, 121, 122, 123, -1, -1, -1, -1, -1, 1384, 3261 10, 11, 12, 13, 14, -1, -1, -1, -1, -1, 3262 -1, 1091, -1, -1, -1, -1, -1, 1097, 1098, -1, 3263 -1, 345, -1, -1, 1345, -1, 350, 1348, -1, -1, 3264 -1, 161, 42, -1, -1, -1, 1116, -1, -1, -1, 3265 -1, 1121, -1, -1, -1, 1366, 1126, 1432, -1, -1, 3266 -1, -1, -1, -1, 1439, -1, -1, 1137, -1, -1, 3267 70, -1, -1, -1, -1, 75, -1, 77, 78, 79, 3268 1150, 1392, 1152, 1153, 1154, 1155, 1397, -1, 88, 89, 3269 -1, -1, -1, -1, -1, -1, -1, 1167, -1, 1169, 3270 -1, -1, 222, 1173, 224, 225, 226, -1, -1, -1, 3271 -1, 425, 426, -1, 114, 1426, 1491, 431, -1, -1, 3272 -1, -1, 122, 123, -1, -1, -1, -1, -1, -1, 3273 -1, 1201, 1202, -1, -1, -1, -1, -1, 452, -1, 3274 260, -1, -1, -1, -1, 265, -1, -1, -1, -1, 3275 -1, -1, -1, -1, -1, -1, -1, 1064, -1, -1, 3276 -1, -1, -1, -1, -1, -1, 480, -1, -1, -1, 3277 -1, -1, -1, -1, -1, -1, -1, 1488, -1, 493, 3278 -1, -1, 1493, -1, -1, 1255, 1256, -1, -1, -1, 3279 -1, 505, -1, 507, -1, 1265, 510, -1, 512, 513, 3280 1511, -1, 1513, -1, -1, -1, 1517, -1, -1, 1520, 3281 524, 331, -1, -1, -1, -1, -1, 1528, -1, -1, 3282 -1, 1532, -1, -1, -1, -1, -1, -1, -1, -1, 3283 350, -1, -1, -1, -1, 355, 356, -1, -1, -1, 3284 -1, -1, -1, 363, -1, -1, -1, -1, -1, -1, 3285 -1, -1, -1, -1, -1, -1, -1, 1327, -1, 1329, 3286 1330, 1331, 576, -1, -1, -1, -1, -1, -1, -1, 3287 -1, 1341, -1, 587, -1, -1, 590, -1, -1, 1349, 3288 -1, -1, -1, -1, 46, 405, -1, -1, -1, -1, 3289 1197, -1, 10, 11, 12, 13, 14, -1, -1, -1, 3290 -1, -1, 616, 423, 1374, 1375, -1, 621, 428, -1, 3291 430, -1, -1, -1, -1, -1, 630, 631, -1, -1, 3292 -1, -1, -1, -1, 42, -1, 446, -1, -1, 449, 3293 450, 93, 646, -1, -1, -1, -1, 457, -1, -1, 3294 -1, 103, -1, -1, -1, -1, -1, -1, -1, 1419, 3295 1420, 471, 70, -1, -1, -1, -1, 75, 478, 77, 3296 78, 79, 1432, -1, 678, -1, -1, -1, -1, 1439, 3297 88, 89, -1, -1, -1, -1, -1, -1, -1, -1, 3298 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3299 704, -1, 706, -1, -1, -1, 114, -1, -1, -1, 3300 -1, -1, 1472, -1, 122, 123, 1476, -1, -1, -1, 3301 172, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3302 -1, -1, -1, -1, -1, 739, -1, -1, -1, -1, 3303 -1, -1, -1, 195, 1504, -1, 1506, -1, -1, -1, 3304 -1, -1, -1, -1, -1, -1, -1, 209, -1, -1, 3305 -1, -1, -1, -1, -1, -1, 218, -1, -1, -1, 3306 -1, -1, -1, -1, 1534, 1535, 228, -1, -1, -1, 3307 590, -1, 1542, 1543, -1, -1, -1, -1, -1, -1, 3308 -1, -1, -1, 797, -1, -1, -1, -1, -1, -1, 3309 -1, 253, -1, -1, -1, -1, 258, -1, 618, -1, 3310 -1, -1, -1, 623, -1, -1, -1, -1, -1, 271, 3311 -1, -1, -1, -1, -1, 277, -1, 279, -1, -1, 3312 283, -1, 285, 286, -1, -1, -1, -1, -1, -1, 3313 -1, -1, 295, 296, -1, -1, 298, -1, -1, -1, 3314 -1, -1, -1, -1, -1, -1, -1, 310, 311, -1, 3315 -1, -1, -1, -1, -1, -1, 40, 41, -1, 43, 3316 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3317 -1, 885, 692, -1, -1, -1, -1, 339, 892, -1, 3318 -1, 343, 345, -1, -1, 69, 706, -1, -1, -1, 3319 -1, 75, -1, 907, -1, 79, -1, -1, 82, 83, 3320 84, 85, 86, 87, 88, 89, -1, 91, 92, 371, 3321 -1, -1, -1, 375, 376, -1, 378, 380, 932, -1, 3322 -1, -1, -1, 385, 386, -1, 388, 389, -1, 391, 3323 114, 393, 116, -1, -1, -1, -1, -1, 122, 123, 3324 124, 125, 126, 127, -1, -1, -1, -1, 410, -1, 3325 -1, 135, -1, -1, -1, -1, 418, -1, -1, -1, 3326 -1, -1, -1, -1, -1, -1, 786, -1, -1, 983, 3327 -1, -1, -1, -1, -1, -1, -1, 797, -1, -1, 3328 442, 40, 41, -1, 43, -1, -1, -1, -1, -1, 3329 1004, 1005, -1, -1, 814, -1, -1, -1, -1, -1, 3330 -1, -1, -1, -1, -1, -1, 468, -1, -1, -1, 3331 69, -1, 474, -1, -1, -1, 75, 479, 77, 78, 3332 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3333 89, -1, 91, 92, -1, -1, -1, -1, -1, -1, 3334 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3335 -1, -1, -1, 1067, 516, 114, -1, 116, -1, 118, 3336 119, -1, -1, 122, 123, 124, 125, 126, 127, 531, 3337 -1, -1, -1, -1, 7, -1, -1, 10, 11, 12, 3338 13, 14, -1, -1, -1, -1, 549, 550, 551, 552, 3339 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 3340 563, 564, 565, 566, -1, 925, 568, 40, 41, 42, 3341 43, -1, -1, -1, -1, 577, -1, -1, -1, 1133, 3342 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3343 -1, -1, -1, -1, 954, 597, 69, 70, -1, -1, 3344 -1, -1, 75, -1, -1, -1, 79, -1, -1, 82, 3345 83, 84, 85, 86, 87, 88, 89, -1, 91, 92, 3346 1174, -1, -1, -1, -1, -1, 986, -1, -1, -1, 3347 -1, -1, -1, 635, -1, -1, -1, 997, -1, -1, 3348 -1, 114, -1, 116, -1, -1, -1, -1, -1, 122, 3349 123, 124, 125, 126, 127, -1, 1210, -1, -1, -1, 3350 -1, -1, -1, -1, -1, -1, -1, -1, -1, 671, 3351 -1, -1, -1, -1, -1, -1, -1, 679, -1, -1, 3352 -1, -1, -1, -1, -1, -1, 689, -1, -1, -1, 3353 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3354 -1, -1, -1, -1, -1, -1, -1, -1, 710, 1263, 3355 1264, -1, 1072, -1, -1, -1, -1, 1271, -1, 721, 3356 722, -1, -1, -1, -1, -1, 1086, 10, 11, 12, 3357 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3358 23, 24, 25, 26, 27, 28, 29, 750, -1, -1, 3359 -1, 753, -1, -1, -1, -1, 758, -1, -1, 42, 3360 -1, -1, -1, 157, 158, -1, -1, -1, -1, -1, 3361 -1, -1, -1, -1, -1, -1, -1, 780, -1, -1, 3362 -1, -1, -1, -1, -1, -1, 7, 70, -1, 10, 3363 11, 12, 13, 14, -1, -1, 190, -1, -1, -1, 3364 -1, -1, -1, 197, -1, -1, -1, -1, -1, -1, 3365 -1, -1, -1, -1, 1174, -1, 818, -1, -1, 40, 3366 41, 42, 43, 825, -1, -1, -1, -1, -1, -1, 3367 1384, -1, -1, -1, -1, -1, 838, -1, 840, -1, 3368 -1, -1, -1, -1, -1, -1, -1, -1, 69, 70, 3369 -1, 853, -1, -1, 75, -1, -1, 859, 79, -1, 3370 -1, 82, 83, 84, 85, 86, 87, 88, 89, 871, 3371 91, 92, 874, -1, -1, 269, -1, -1, -1, -1, 3372 -1, -1, -1, -1, -1, -1, -1, 1441, -1, 1443, 3373 -1, 894, -1, 114, -1, 116, -1, -1, -1, -1, 3374 -1, 122, 123, 124, 125, 126, 127, -1, -1, -1, 3375 -1, 1271, -1, -1, -1, -1, -1, -1, -1, -1, 3376 -1, -1, -1, -1, 1478, -1, 1480, -1, -1, -1, 3377 -1, -1, 326, -1, -1, -1, 939, -1, -1, -1, 3378 334, 335, 148, 337, 338, -1, -1, -1, -1, -1, 3379 -1, 345, 158, 1507, -1, 349, -1, -1, -1, -1, 3380 -1, -1, -1, 169, 170, -1, -1, -1, 971, -1, 3381 -1, -1, -1, -1, 368, -1, -1, -1, -1, 981, 3382 983, -1, 10, 11, 12, 13, 14, 15, 16, 17, 3383 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3384 28, 29, -1, 397, 32, 33, 34, 401, -1, -1, 3385 -1, -1, -1, -1, 42, -1, -1, -1, -1, 1022, 3386 -1, -1, -1, -1, 40, 41, -1, 43, -1, -1, 3387 -1, -1, -1, -1, 240, -1, -1, 431, -1, -1, 3388 -1, -1, 70, -1, -1, 1047, -1, 75, -1, 77, 3389 78, -1, -1, 69, -1, -1, -1, -1, 264, 75, 3390 88, 89, -1, 79, -1, -1, 82, 83, 84, 85, 3391 86, 87, 88, 89, -1, 91, 92, -1, -1, -1, 3392 1082, -1, -1, 477, -1, 1087, 480, -1, 116, -1, 3393 -1, -1, -1, 1095, 122, 123, -1, -1, 114, -1, 3394 116, 1104, -1, -1, -1, 121, 122, 123, 124, 125, 3395 126, 127, -1, -1, -1, -1, -1, -1, -1, -1, 3396 -1, -1, -1, -1, -1, -1, 520, 1129, -1, -1, 3397 524, -1, -1, -1, -1, -1, -1, -1, 1140, -1, 3398 -1, 1143, -1, 1145, -1, -1, -1, -1, -1, -1, 3399 -1, -1, -1, -1, -1, -1, -1, -1, 1160, 1161, 3400 1163, 1164, 1522, -1, -1, -1, -1, -1, -1, -1, 3401 -1, -1, -1, 379, 568, 569, -1, -1, 1180, -1, 3402 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3403 -1, -1, 586, 587, -1, -1, 40, 41, -1, 43, 3404 -1, -1, 596, -1, 598, 599, -1, -1, -1, -1, 3405 -1, 605, -1, -1, -1, -1, -1, -1, -1, -1, 3406 -1, 615, 616, -1, 1226, 69, -1, 621, -1, -1, 3407 -1, 75, 1234, -1, -1, 79, 630, 631, 82, 83, 3408 84, 85, 86, 87, 88, 89, -1, 91, 92, -1, 3409 -1, -1, 646, -1, -1, -1, -1, 651, 652, -1, 3410 -1, 655, 656, -1, -1, -1, 472, -1, 662, -1, 3411 114, -1, 116, -1, -1, 119, -1, -1, 122, 123, 3412 124, 125, 126, 127, -1, -1, -1, 681, -1, -1, 3413 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3414 -1, -1, 1304, -1, 1306, -1, 512, -1, -1, -1, 3415 704, 705, -1, -1, -1, -1, -1, -1, 524, -1, 3416 1322, -1, 1324, -1, 530, -1, -1, 533, -1, -1, 3417 -1, -1, -1, -1, -1, -1, -1, 1339, -1, -1, 3418 546, -1, -1, -1, -1, 739, -1, -1, -1, 743, 3419 744, -1, 1354, 1355, -1, -1, -1, -1, -1, -1, 3420 -1, -1, -1, 1365, -1, -1, 1368, -1, 1371, -1, 3421 576, -1, -1, -1, -1, -1, -1, 583, -1, -1, 3422 -1, 587, -1, -1, -1, 1388, -1, -1, 1390, -1, 3423 -1, -1, 786, -1, -1, -1, -1, 1399, -1, -1, 3424 1402, -1, 1404, 1405, 1406, -1, -1, -1, 802, -1, 3425 804, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3426 814, -1, -1, -1, -1, -1, -1, 633, -1, -1, 3427 -1, -1, -1, -1, -1, 641, -1, -1, -1, -1, 3428 -1, -1, -1, 1445, -1, 1447, -1, 1449, -1, -1, 3429 -1, -1, -1, -1, -1, -1, -1, 1460, 1461, -1, 3430 -1, -1, -1, 1465, 4, 5, 6, 7, 8, 9, 3431 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3432 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3433 -1, 885, 32, 33, 34, -1, -1, -1, 892, 893, 3434 -1, 895, 42, -1, -1, 899, -1, -1, -1, -1, 3435 -1, 717, -1, -1, -1, -1, -1, -1, -1, -1, 3436 -1, -1, 728, -1, -1, -1, 920, 921, -1, -1, 3437 70, -1, 72, 739, 74, 741, -1, 77, 78, -1, 3438 -1, -1, -1, -1, -1, 751, -1, -1, -1, -1, 3439 -1, 757, -1, -1, -1, -1, -1, -1, -1, -1, 3440 954, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3441 -1, -1, -1, -1, -1, 115, 116, -1, -1, 973, 3442 974, -1, 122, 123, -1, -1, -1, -1, -1, 983, 3443 -1, 797, 798, -1, -1, 989, 990, -1, 992, 993, 3444 994, -1, -1, -1, -1, -1, -1, 813, -1, -1, 3445 1004, 1005, -1, -1, -1, -1, -1, -1, -1, -1, 3446 -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3447 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3448 29, -1, -1, 32, 33, 34, 852, -1, -1, -1, 3449 856, -1, -1, 42, 43, -1, -1, -1, -1, -1, 3450 -1, 40, 41, -1, 43, -1, -1, -1, -1, -1, 3451 -1, -1, -1, -1, -1, -1, 1070, -1, 1072, 885, 3452 -1, 70, -1, 1077, -1, -1, 892, -1, 77, 78, 3453 69, -1, 1086, -1, -1, -1, 75, -1, -1, -1, 3454 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3455 89, -1, 91, 92, -1, 1109, 1110, -1, -1, -1, 3456 -1, -1, -1, -1, -1, -1, 932, 116, -1, -1, 3457 -1, 120, -1, 122, 123, 114, -1, 116, -1, 1133, 3469 3458 -1, -1, -1, 122, 123, 124, 125, 126, 127, -1, 3470 -1, -1, -1, -1, -1, -1, -1, -1, 137, 3, 3459 -1, -1, 958, -1, -1, -1, -1, 963, 40, 41, 3460 966, 43, 44, -1, 46, -1, -1, 49, 50, 51, 3461 52, 53, 54, 55, 56, -1, -1, 59, 60, -1, 3462 986, -1, 64, 65, -1, 67, -1, 69, -1, -1, 3463 -1, 997, -1, 75, -1, 77, 78, 79, -1, -1, 3464 82, 83, 84, 85, 86, 87, 88, 89, -1, 91, 3465 92, 1017, -1, 1019, -1, -1, 1210, -1, -1, -1, 3466 -1, -1, -1, -1, -1, -1, -1, -1, 1034, 1035, 3467 -1, -1, 114, -1, 116, -1, -1, 119, -1, -1, 3468 122, 123, 124, 125, 126, 127, 40, 41, -1, 43, 3469 132, -1, -1, -1, 1060, 137, -1, -1, -1, -1, 3470 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1263, 3471 1264, -1, -1, -1, -1, 69, -1, -1, -1, -1, 3472 -1, 75, -1, -1, -1, 79, -1, -1, 82, 83, 3473 84, 85, 86, 87, 88, 89, -1, 91, 92, -1, 3474 -1, -1, -1, -1, -1, -1, -1, -1, 1114, -1, 3475 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3476 114, -1, 116, -1, -1, -1, -1, 1133, 122, 123, 3477 124, 125, 126, 127, -1, -1, -1, -1, -1, -1, 3478 -1, -1, 1148, 1149, -1, -1, 3, 4, 5, 6, 3479 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 3480 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3481 27, 28, 29, -1, -1, 32, 33, 34, 35, -1, 3482 -1, -1, 39, 40, 41, 42, 43, 44, -1, 46, 3483 1384, -1, 49, 50, 51, 52, 53, 54, 55, 56, 3484 -1, -1, -1, 60, -1, -1, -1, 64, 65, -1, 3485 67, -1, 69, 70, -1, 72, -1, 74, 75, -1, 3486 77, 78, 79, -1, -1, 82, 83, 84, 85, 86, 3487 87, 88, 89, -1, 91, 92, -1, -1, -1, -1, 3488 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3489 -1, -1, -1, -1, -1, -1, -1, 114, -1, 116, 3490 -1, -1, 119, -1, -1, 122, 123, 124, 125, 126, 3491 127, -1, -1, -1, -1, 132, -1, -1, -1, 1473, 3492 137, -1, -1, -1, 1290, -1, 1292, -1, -1, -1, 3493 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3494 -1, -1, -1, 1497, 1498, -1, -1, -1, -1, -1, 3495 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3496 -1, -1, -1, -1, -1, -1, -1, -1, 1522, 3, 3471 3497 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 3472 3498 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 3473 3499 24, 25, 26, 27, 28, 29, -1, -1, 32, 33, 3474 3500 34, 35, -1, -1, -1, 39, 40, 41, 42, 43, 3475 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1502,3476 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3477 -1, -1, -1, -1, -1, 69, 70, -1, 72, -1,3478 74, 75, -1, 77, 78, 79, -1, -1, 82, 83,3501 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3502 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3503 30, -1, -1, -1, -1, 69, 70, -1, 72, -1, 3504 74, 75, 42, 77, 78, 79, -1, -1, 82, 83, 3479 3505 84, 85, 86, 87, 88, 89, -1, 91, 92, -1, 3480 3506 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3481 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3482 114, -1, 116, -1, -1, -1, -1, -1, 122, 123,3507 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3508 114, 81, 116, -1, -1, -1, -1, -1, 122, 123, 3483 3509 124, 125, 126, 127, 4, 5, 6, 7, 8, 9, 3484 3510 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3485 3511 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3486 3512 -1, -1, 32, 33, 34, -1, -1, -1, -1, -1, 3487 40, 41, 42, 43, 10, 11, 12, 13, 14, 15,3488 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,3489 26, 27, 28, 29, -1, -1, 32, 33, 34, 69,3490 70, -1, 72, -1, 74, 75, 42, 77, 78, 79,3513 40, 41, 42, 43, -1, -1, -1, -1, -1, -1, 3514 -1, 1507, -1, -1, -1, -1, -1, -1, -1, -1, 3515 -1, -1, -1, -1, -1, -1, -1, -1, -1, 69, 3516 70, -1, 72, -1, 74, 75, -1, 77, 78, 79, 3491 3517 -1, -1, 82, 83, 84, 85, 86, 87, 88, 89, 3492 3518 -1, 91, 92, -1, -1, -1, -1, -1, -1, -1, 3493 -1, -1, -1, -1, 70, -1, -1, -1, -1, -1,3494 -1, 77, 78, -1, 114, -1, 116, -1, -1, -1,3519 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3520 -1, -1, -1, -1, 114, -1, 116, -1, -1, -1, 3495 3521 -1, 121, 122, 123, 124, 125, 126, 127, 4, 5, 3496 3522 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, … … 3499 3525 -1, -1, -1, -1, 40, 41, 42, 43, 10, 11, 3500 3526 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3501 22, 23, 24, 25, 26, 27, 28, 29, -1, -1,3502 32, 33, 34, 69, 70, -1, 72, -1, 74, 75,3527 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, 3528 -1, -1, -1, 69, 70, -1, 72, -1, 74, 75, 3503 3529 42, 77, 78, 79, -1, -1, 82, 83, 84, 85, 3504 3530 86, 87, 88, 89, -1, 91, 92, -1, -1, -1, 3505 3531 -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, 3506 -1, -1, -1, -1, -1, 77, 78, -1, 114, -1,3532 -1, -1, -1, -1, -1, -1, -1, -1, 114, 81, 3507 3533 116, -1, -1, -1, -1, 121, 122, 123, 124, 125, 3508 3534 126, 127, 4, 5, 6, 7, 8, 9, 10, 11, … … 3510 3536 22, 23, 24, 25, 26, 27, 28, 29, -1, -1, 3511 3537 32, 33, 34, -1, -1, -1, -1, -1, 40, 41, 3512 42, 43, -1, -1, -1, -1, -1, -1, -1, -1,3513 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3514 -1, -1, -1, -1, -1, -1, -1, 69, 70, -1,3515 72, -1, 74, 75, -1, 77, 78, 79, -1, -1,3538 42, 43, 10, 11, 12, 13, 14, 15, 16, 17, 3539 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3540 28, 29, -1, -1, 32, 33, 34, 69, 70, -1, 3541 72, -1, 74, 75, 42, 77, 78, 79, -1, -1, 3516 3542 82, 83, 84, 85, 86, 87, 88, 89, -1, 91, 3517 3543 92, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3518 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3519 -1, -1, 114, -1, 116, -1, -1, -1, -1, -1,3544 -1, -1, 70, -1, -1, -1, -1, -1, -1, 77, 3545 78, -1, 114, -1, 116, -1, -1, -1, -1, -1, 3520 3546 122, 123, 124, 125, 126, 127, 4, 5, 6, 7, 3521 3547 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 3522 3548 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3523 3549 28, 29, -1, -1, 32, 33, 34, -1, -1, -1, 3524 -1, -1, 40, 41, 42, 43, -1, -1, -1, -1,3525 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3526 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3527 -1, 69, 70, -1, 72, -1, 74, 75, -1, 77,3550 -1, -1, 40, 41, 42, 43, 10, 11, 12, 13, 3551 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 3552 24, 25, 26, 27, 28, 29, -1, -1, 32, 33, 3553 34, 69, 70, -1, 72, -1, 74, 75, 42, 77, 3528 3554 78, 79, -1, -1, 82, 83, 84, 85, 86, 87, 3529 3555 88, 89, -1, 91, 92, -1, -1, -1, -1, -1, 3530 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3531 -1, -1, -1, -1, -1, -1, 114, -1, 116, -1,3556 -1, -1, -1, -1, -1, -1, 70, -1, -1, -1, 3557 -1, -1, -1, 77, 78, -1, 114, -1, 116, -1, 3532 3558 -1, -1, -1, -1, 122, 123, 124, 125, 126, 127, 3533 3559 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, … … 3567 3593 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3568 3594 -1, -1, -1, -1, -1, -1, -1, -1, -1, 114, 3569 -1, 116, -1, -1, -1, -1, -1, 122, 123, 3,3595 -1, 116, -1, -1, -1, 120, -1, 122, 123, 3, 3570 3596 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 3571 3597 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 3572 3598 24, 25, 26, 27, 28, 29, -1, -1, 32, 33, 3573 34, -1, -1, -1, -1, -1, -1, -1, 42, -1,3599 34, 35, -1, -1, -1, 39, -1, -1, 42, 43, 3574 3600 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3575 3601 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3576 -1, -1, -1, -1, -1, -1, 70, -1, 72, -1,3602 -1, -1, -1, 67, -1, -1, 70, -1, 72, -1, 3577 3603 74, 75, -1, 77, 78, 79, -1, -1, -1, -1, 3578 3604 -1, -1, -1, -1, 88, 89, -1, -1, -1, -1, … … 3582 3608 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 3583 3609 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3584 23, 24, 25, 26, 27, 28, 29, 30, -1, 32,3585 33, 34, 35, -1, -1, -1, 39, -1, -1, 42,3610 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3611 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, 3586 3612 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3587 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3588 -1, -1, -1, -1, -1, -1, -1, 70, -1, 72,3589 -1, 74, -1, -1, 77, 78, -1, -1, 81, 3,3590 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,3591 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,3592 24, 25, 26, 27, 28, 29, -1, -1, 32, 33,3593 34, 35, -1, 116, -1, 39, -1, -1, 42, 122,3594 123, -1, -1, -1, -1, -1, -1, -1, -1, -1,3595 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3596 -1, -1, -1, -1, -1, -1, 70, -1, 72, -1,3597 74, -1, -1, 77, 78, 3, 4, 5, 6, 7,3598 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,3599 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,3600 28, 29, -1, -1, 32, 33, 34, -1, -1, -1,3601 -1, -1, 116, -1, 42, -1, -1, -1, 122, 123,3602 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3603 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3604 -1, -1, 70, -1, 72, -1, 74, -1, -1, 77,3605 78, 4, 5, 6, 7, 8, 9, 10, 11, 12,3606 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,3607 23, 24, 25, 26, 27, 28, 29, -1, -1, 32,3608 33, 34, -1, -1, -1, -1, -1, -1, 116, 42,3609 -1, -1, -1, -1, 122, 123, -1, -1, -1, -1,3610 3613 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3611 3614 -1, -1, -1, -1, -1, -1, -1, 70, -1, 72, … … 3615 3618 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3616 3619 -1, 114, -1, 116, -1, -1, -1, -1, -1, 122, 3617 123, 4, 5, 6, 7, 8, 9, 10, 11, 12, 3620 123, 3, 4, 5, 6, 7, 8, 9, 10, 11, 3621 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3622 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, 3623 32, 33, 34, 35, -1, -1, -1, 39, -1, -1, 3624 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3625 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3626 -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, 3627 72, -1, 74, -1, -1, 77, 78, -1, -1, 81, 3628 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 3618 3629 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3619 3630 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3620 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, 3631 33, 34, 35, -1, 116, -1, 39, -1, -1, 42, 3632 122, 123, -1, -1, -1, -1, -1, -1, -1, -1, 3633 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3634 -1, -1, -1, -1, -1, -1, -1, 70, -1, 72, 3635 -1, 74, -1, -1, 77, 78, 3, 4, 5, 6, 3636 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 3637 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3638 27, 28, 29, -1, -1, 32, 33, 34, -1, -1, 3639 -1, -1, -1, 116, -1, 42, -1, -1, -1, 122, 3640 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3641 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3642 -1, -1, -1, 70, -1, 72, -1, 74, -1, -1, 3643 77, 78, 4, 5, 6, 7, 8, 9, 10, 11, 3644 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3645 22, 23, 24, 25, 26, 27, 28, 29, -1, -1, 3646 32, 33, 34, -1, -1, -1, -1, -1, -1, 116, 3647 42, -1, -1, -1, -1, 122, 123, -1, -1, -1, 3648 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3649 -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, 3650 72, -1, 74, 75, -1, 77, 78, 79, -1, -1, 3651 -1, -1, -1, -1, -1, -1, 88, 89, -1, -1, 3621 3652 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3622 3653 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3623 -1, -1, -1, -1, -1, -1, -1, 70, -1, 72, 3624 -1, 74, -1, -1, 77, 78, 4, 5, 6, 7, 3625 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 3654 -1, -1, 114, -1, 116, -1, -1, -1, -1, -1, 3655 122, 123, 4, 5, 6, 7, 8, 9, 10, 11, 3656 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3657 22, 23, 24, 25, 26, 27, 28, 29, -1, -1, 3658 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, 3659 42, -1, 10, 11, 12, 13, 14, 15, 16, 17, 3626 3660 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3627 28, 29, -1, -1, 32, 33, 34, -1, -1, -1, 3628 -1, -1, 115, 116, 42, -1, -1, -1, -1, 122, 3629 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3661 28, 29, -1, -1, 32, 33, 34, -1, 70, -1, 3662 72, -1, 74, -1, 42, 77, 78, -1, -1, -1, 3630 3663 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3631 -1, -1, 70, -1, 72, -1, 74, -1, -1, 77, 3632 78, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3664 -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, 3665 -1, -1, 70, -1, -1, -1, -1, -1, -1, 77, 3666 78, -1, -1, -1, 116, -1, -1, -1, -1, -1, 3667 122, 123, 4, 5, 6, 7, 8, 9, 10, 11, 3668 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3669 22, 23, 24, 25, 26, 27, 28, 29, 116, -1, 3670 32, 33, 34, -1, 122, 123, -1, -1, -1, -1, 3671 42, -1, 10, 11, 12, 13, 14, 15, 16, 17, 3672 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3673 28, 29, -1, -1, 32, 33, 34, -1, 70, -1, 3674 72, -1, 74, -1, 42, 77, 78, -1, -1, -1, 3633 3675 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3634 -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, 3635 -1, -1, -1, -1, -1, -1, -1, -1, 116, -1, 3636 -1, -1, -1, -1, 122, 123, 4, 5, 6, 7, 3637 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 3638 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3639 28, 29, -1, -1, 32, 33, 34, -1, -1, -1, 3640 -1, -1, -1, -1, 42, -1, 10, 11, 12, 13, 3641 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 3642 24, 25, 26, 27, 28, 29, -1, -1, 32, 33, 3643 34, -1, 70, -1, 72, -1, 74, -1, 42, 77, 3644 78, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3676 -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, 3677 -1, -1, 70, -1, -1, -1, -1, -1, -1, 77, 3678 78, -1, -1, -1, 116, -1, -1, -1, -1, -1, 3679 122, 123, 4, 5, 6, 7, 8, 9, 10, 11, 3680 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3681 22, 23, 24, 25, 26, 27, 28, 29, 116, -1, 3682 32, 33, 34, -1, 122, 123, -1, -1, -1, -1, 3683 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3645 3684 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3646 -1, -1, -1, 101, -1, -1, 70, -1, -1, -1,3647 -1, -1, -1, 77, 78, -1, -1, -1, 116, -1,3648 -1, -1, -1, -1, 122, 123, 4, 5, 6, 7,3649 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,3650 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,3651 28, 29, 116, -1, 32, 33, 34, -1, 122, 123,3652 -1, -1, -1, -1, 42, -1, -1, -1, -1, -1,3685 -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, 3686 72, -1, 74, -1, -1, 77, 78, 4, 5, 6, 3687 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 3688 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3689 27, 28, 29, -1, -1, 32, 33, 34, -1, -1, 3690 -1, -1, -1, -1, 116, 42, -1, -1, -1, -1, 3691 122, 123, -1, -1, -1, -1, -1, -1, -1, -1, 3653 3692 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3693 -1, -1, -1, 70, -1, 72, -1, 74, -1, -1, 3694 77, 78, 4, 5, 6, 7, 8, 9, 10, 11, 3695 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3696 22, 23, 24, 25, 26, 27, 28, 29, -1, -1, 3697 32, 33, 34, -1, -1, -1, -1, -1, -1, 116, 3698 42, -1, -1, -1, -1, 122, 123, -1, -1, -1, 3654 3699 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3655 -1, -1, 70, -1, 72, -1, 74, -1, -1, 77,3656 7 8, 4, 5, 6, 7, 8, 9, 10, 11, 12,3700 -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, 3701 72, -1, 74, -1, -1, 77, 78, 10, 11, 12, 3657 3702 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3658 3703 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3659 33, 34, -1, -1, -1, -1, -1, -1, 116, 42, 3660 -1, -1, -1, -1, 122, 123, -1, -1, -1, -1, 3661 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3662 -1, -1, -1, -1, -1, -1, -1, 70, -1, 72, 3663 -1, 74, -1, -1, 77, 78, 4, 5, 6, 7, 3664 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 3665 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3666 28, 29, -1, -1, 32, 33, 34, -1, -1, -1, 3667 -1, -1, -1, 116, 42, -1, -1, -1, -1, 122, 3668 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3669 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3670 -1, -1, 70, -1, 72, -1, 74, -1, -1, 77, 3671 78, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3672 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3673 29, -1, -1, 32, 33, 34, -1, -1, -1, -1, 3674 -1, 40, 41, 42, 43, -1, -1, -1, 116, -1, 3675 -1, -1, -1, -1, 122, 123, -1, -1, -1, -1, 3676 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3677 69, 70, -1, -1, -1, -1, 75, -1, 77, 78, 3678 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3679 89, -1, 91, 92, -1, -1, -1, -1, -1, -1, 3680 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3681 -1, -1, -1, -1, -1, 114, -1, 116, -1, -1, 3682 119, -1, -1, 122, 123, 124, 125, 126, 127, 10, 3683 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 3684 21, 22, 23, 24, 25, 26, 27, 28, 29, -1, 3685 -1, 32, 33, 34, -1, -1, -1, -1, -1, 40, 3686 41, 42, 43, 10, 11, 12, 13, 14, 15, 16, 3687 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3688 27, 28, 29, -1, -1, 32, 33, 34, 69, 70, 3689 -1, -1, -1, -1, 75, 42, 77, 78, 79, -1, 3690 -1, 82, 83, 84, 85, 86, 87, 88, 89, -1, 3691 91, 92, -1, -1, -1, -1, -1, -1, -1, -1, 3692 -1, -1, -1, 70, -1, -1, -1, -1, -1, -1, 3693 77, 78, -1, 114, 115, 116, -1, -1, -1, -1, 3694 -1, 122, 123, 124, 125, 126, 127, 10, 11, 12, 3695 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3696 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3697 33, 34, -1, -1, -1, 122, 123, 40, 41, 42, 3698 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3699 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3704 33, 34, -1, -1, -1, -1, -1, 40, 41, 42, 3705 43, -1, -1, -1, 116, -1, -1, -1, -1, -1, 3706 122, 123, -1, -1, -1, -1, -1, -1, -1, -1, 3700 3707 -1, -1, -1, -1, -1, -1, 69, 70, -1, -1, 3701 3708 -1, -1, 75, -1, 77, 78, 79, -1, -1, 82, … … 3703 3710 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3704 3711 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3705 -1, 114, -1, 116, -1, -1, -1, -1, -1, 122,3712 -1, 114, -1, 116, -1, -1, 119, -1, -1, 122, 3706 3713 123, 124, 125, 126, 127, 10, 11, 12, 13, 14, 3707 3714 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 3708 3715 25, 26, 27, 28, 29, -1, -1, 32, 33, 34, 3709 -1, -1, -1, -1, -1, 40, 41, 42, 43, -1,3710 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3711 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3712 -1, -1, -1, -1, 69, 70, -1, -1, -1, -1,3713 75, -1, 77, 78, 79, -1, -1, 82, 83, 84,3716 -1, -1, -1, -1, -1, 40, 41, 42, 43, 10, 3717 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 3718 21, 22, 23, 24, 25, 26, 27, 28, 29, -1, 3719 -1, 32, 33, 34, 69, 70, -1, -1, -1, -1, 3720 75, 42, 77, 78, 79, -1, -1, 82, 83, 84, 3714 3721 85, 86, 87, 88, 89, -1, 91, 92, -1, -1, 3715 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,3716 -1, -1, -1, -1, -1, -1, -1, -1, -1, 114,3717 -1, 116, -1, -1, -1, -1, -1, 122, 123, 124,3722 -1, -1, -1, -1, -1, -1, -1, -1, -1, 70, 3723 -1, -1, -1, -1, -1, -1, 77, 78, -1, 114, 3724 115, 116, -1, -1, -1, -1, -1, 122, 123, 124, 3718 3725 125, 126, 127, 10, 11, 12, 13, 14, 15, 16, 3719 3726 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3720 3727 27, 28, 29, -1, -1, 32, 33, 34, -1, -1, 3721 -1, -1, -1, 40, 41, 42, 43, -1, -1, -1,3728 -1, 122, 123, 40, 41, 42, 43, -1, -1, -1, 3722 3729 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3723 3730 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, … … 3728 3735 -1, -1, -1, -1, -1, -1, -1, 114, -1, 116, 3729 3736 -1, -1, -1, -1, -1, 122, 123, 124, 125, 126, 3730 127, 3, 4, 5, 6, 7, 8, 9, 10, 11, 3731 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3732 22, 23, 24, 25, 26, 27, 28, 29, -1, -1, 3733 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, 3734 42, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3737 127, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3735 3738 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3736 29, -1, -1, 32, 33, 34, -1, -1, 70, -1, 3737 72, -1, 74, 42, 43, 77, 78, -1, -1, -1, 3739 29, -1, -1, 32, 33, 34, -1, -1, -1, -1, 3740 -1, 40, 41, 42, 43, -1, -1, -1, -1, -1, 3741 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3742 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3743 69, 70, -1, -1, -1, -1, 75, -1, 77, 78, 3744 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3745 89, -1, 91, 92, -1, -1, -1, -1, -1, -1, 3746 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3747 -1, -1, -1, -1, -1, 114, -1, 116, -1, -1, 3748 -1, -1, -1, 122, 123, 124, 125, 126, 127, 10, 3749 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 3750 21, 22, 23, 24, 25, 26, 27, 28, 29, -1, 3751 -1, 32, 33, 34, -1, -1, -1, -1, -1, 40, 3752 41, 42, 43, -1, -1, -1, -1, -1, -1, -1, 3753 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3754 -1, -1, -1, -1, -1, -1, -1, -1, 69, 70, 3755 -1, -1, -1, -1, 75, -1, 77, 78, 79, -1, 3756 -1, 82, 83, 84, 85, 86, 87, 88, 89, -1, 3757 91, 92, -1, -1, -1, -1, -1, -1, -1, -1, 3758 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3759 -1, -1, -1, 114, -1, 116, -1, -1, -1, -1, 3760 -1, 122, 123, 124, 125, 126, 127, 10, 11, 12, 3761 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3762 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3763 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, 3764 -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 3765 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3766 23, 24, 25, 26, 27, 28, 29, 70, -1, 32, 3767 33, 34, 75, -1, 77, 78, 79, -1, -1, 42, 3768 -1, -1, -1, -1, -1, 88, 89, -1, -1, -1, 3769 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3770 -1, -1, -1, -1, -1, -1, -1, 70, -1, -1, 3771 -1, 114, 75, 116, 77, 78, 79, -1, -1, 122, 3772 123, -1, -1, -1, -1, 88, 89, -1, -1, -1, 3773 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3774 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3775 -1, 114, -1, 116, -1, -1, -1, -1, -1, 122, 3776 123, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3777 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3778 29, -1, -1, 32, 33, 34, -1, -1, -1, -1, 3779 -1, -1, -1, 42, 43, -1, -1, -1, -1, -1, 3738 3780 -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3739 3781 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3740 3782 29, 70, -1, 32, 33, 34, -1, -1, 77, 78, 3741 -1, -1, -1, 42, 43, -1, -1, 119, -1, -1,3783 -1, -1, -1, 42, 43, -1, -1, -1, -1, -1, 3742 3784 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3743 3785 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, … … 3746 3788 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 3747 3789 24, 25, 26, 27, 28, 29, -1, -1, 32, 33, 3748 34, -1, -1, -1, -1, -1, -1, 116, 42, 43,3790 34, -1, -1, -1, -1, -1, -1, 116, 42, -1, 3749 3791 -1, 120, -1, 122, 123, -1, 10, 11, 12, 13, 3750 3792 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, … … 3754 3796 21, 22, 23, 24, 25, 26, 27, 28, 29, -1, 3755 3797 -1, 32, 33, 34, -1, -1, 70, -1, -1, -1, 3756 -1, 42, 116, 77, 78, -1, 120, -1, 122, 123,3798 -1, 42, 116, 77, 78, -1, -1, -1, 122, 123, 3757 3799 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3758 3800 -1, -1, -1, -1, -1, -1, -1, -1, -1, 70, … … 3762 3804 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 3763 3805 26, 27, 28, 29, -1, 116, 32, 33, 34, -1, 3764 -1, 122, 123, -1, -1, -1, 42, 10, 11, 12, 3765 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3766 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3767 33, 34, -1, -1, 70, -1, -1, -1, -1, 42, 3768 -1, 77, 78, -1, -1, -1, -1, -1, -1, -1, 3769 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3770 -1, -1, -1, -1, -1, -1, -1, 70, -1, -1, 3771 -1, -1, -1, -1, 77, 78, -1, -1, -1, -1, 3772 116, -1, -1, -1, -1, -1, 122, 123, -1, -1, 3806 -1, 122, 123, -1, -1, -1, 42, -1, 4, 5, 3807 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 3808 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 3809 26, 27, 28, 29, 70, -1, 32, 33, 34, -1, 3810 -1, 77, 78, -1, -1, -1, 42, -1, -1, -1, 3773 3811 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3774 3812 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3775 -1, -1, -1, 116, -1, -1, -1, -1, -1, 122, 3776 123, 4, 5, 6, 7, 8, 9, 10, 11, 12, 3777 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3778 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3779 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, 3780 -1, 40, 41, -1, 43, 44, -1, 46, -1, -1, 3781 49, 50, 51, 52, 53, 54, 55, 56, -1, -1, 3782 59, 60, -1, -1, -1, 64, 65, 70, 67, 72, 3783 69, 74, -1, -1, 77, 78, 75, -1, -1, -1, 3784 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3785 89, -1, 91, 92, -1, -1, -1, -1, -1, -1, 3813 -1, -1, -1, -1, 70, -1, 72, -1, 74, -1, 3814 116, 77, 78, -1, -1, -1, 122, 123, 40, 41, 3815 -1, 43, 44, -1, 46, -1, -1, 49, 50, 51, 3816 52, 53, 54, 55, 56, -1, -1, -1, 60, -1, 3817 -1, -1, 64, 65, -1, 67, -1, 69, -1, 115, 3818 -1, -1, -1, 75, -1, 77, 78, 79, -1, -1, 3819 82, 83, 84, 85, 86, 87, 88, 89, -1, 91, 3820 92, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3786 3821 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3787 -1, -1, 115, -1, -1, 114, -1, 116, -1, -1, 3788 119, -1, -1, 122, 123, 124, 125, 126, 127, -1, 3789 -1, 40, 41, 132, 43, 44, -1, 46, 137, -1, 3790 49, 50, 51, 52, 53, 54, 55, 56, -1, -1, 3791 -1, 60, -1, -1, -1, 64, 65, -1, 67, -1, 3792 69, -1, -1, -1, -1, -1, 75, -1, -1, -1, 3793 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 3794 89, -1, 91, 92, -1, -1, -1, -1, -1, -1, 3822 -1, -1, 114, -1, 116, -1, -1, 119, -1, -1, 3823 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 3824 132, -1, -1, -1, -1, 137, 4, 5, 6, 7, 3825 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 3826 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 3827 28, 29, -1, -1, 32, 33, 34, -1, -1, -1, 3828 -1, -1, -1, -1, 42, -1, 40, 41, -1, 43, 3829 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, 3830 54, 55, 56, -1, -1, 59, 60, -1, -1, -1, 3831 64, 65, 70, 67, 72, 69, 74, -1, -1, 77, 3832 78, 75, -1, 77, 78, 79, -1, -1, 82, 83, 3833 84, 85, 86, 87, 88, 89, -1, 91, 92, -1, 3834 -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, 3795 3835 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3796 -1, -1, -1, -1, -1, 114, -1, 116, -1, -1, 3797 119, -1, -1, 122, 123, 124, 125, 126, 127, -1, 3798 -1, -1, -1, 132, -1, -1, -1, -1, 137, 4, 3799 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 3800 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 3801 25, 26, 27, 28, 29, -1, -1, 32, 33, 34, 3802 -1, -1, -1, -1, -1, -1, -1, 42, -1, 40, 3803 41, -1, 43, 44, -1, 46, 47, 48, 49, 50, 3804 51, 52, 53, 54, 55, 56, -1, -1, 59, 60, 3805 -1, -1, -1, 64, 65, 70, 67, 72, 69, 74, 3806 -1, -1, 77, 78, 75, -1, -1, -1, 79, -1, 3807 -1, 82, 83, 84, 85, 86, 87, 88, 89, -1, 3808 91, 92, -1, -1, -1, -1, 101, -1, -1, -1, 3836 114, -1, 116, -1, -1, 119, -1, -1, 122, 123, 3837 124, 125, 126, 127, -1, -1, 40, 41, 132, 43, 3838 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, 3839 54, 55, 56, -1, -1, -1, 60, -1, -1, -1, 3840 64, 65, -1, 67, -1, 69, -1, -1, -1, -1, 3841 -1, 75, -1, 77, 78, 79, -1, -1, 82, 83, 3842 84, 85, 86, 87, 88, 89, -1, 91, 92, -1, 3809 3843 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3810 -1, -1, -1, 114, -1, 116, -1, -1, 119, -1,3811 -1, 122, 123, 124, 125, 126, 127, -1, -1, 40,3812 41, 132, 43, 44, -1, 46, 47, 48, 49, 50,3813 51, 52, 53, 54, 55, 56, -1, -1, -1, 60,3814 -1, -1, -1, 64, 65, -1, 67, -1, 69, -1,3815 -1, -1, -1, -1, 75, -1, -1, -1, 79, -1,3816 -1, 82, 83, 84, 85, 86, 87, 88, 89, -1,3817 91, 92, -1, -1, -1, -1, -1, -1, -1, -1,3818 3844 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3819 -1, -1, -1, 114, -1, 116, -1, -1, 119, -1, 3820 -1, 122, 123, 124, 125, 126, 127, -1, -1, 40, 3821 41, 132, 43, 44, -1, 46, -1, -1, 49, 50, 3822 51, 52, 53, 54, 55, 56, -1, -1, -1, 60, 3823 -1, -1, -1, 64, 65, -1, 67, -1, 69, -1, 3824 -1, -1, -1, -1, 75, -1, -1, -1, 79, -1, 3825 -1, 82, 83, 84, 85, 86, 87, 88, 89, -1, 3826 91, 92, -1, -1, -1, -1, -1, -1, 40, 41, 3827 -1, 43, -1, -1, -1, -1, -1, -1, -1, -1, 3828 -1, -1, -1, 114, -1, 116, -1, -1, 119, -1, 3829 -1, 122, 123, 124, 125, 126, 127, 69, -1, -1, 3830 -1, 132, -1, 75, -1, -1, -1, 79, -1, -1, 3831 82, 83, 84, 85, 86, 87, 88, 89, -1, 91, 3832 92, -1, -1, -1, -1, -1, -1, 40, 41, -1, 3833 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3834 -1, -1, 114, -1, 116, -1, -1, 119, -1, -1, 3835 122, 123, 124, 125, 126, 127, 69, -1, -1, -1, 3836 -1, -1, 75, -1, -1, -1, 79, -1, -1, 82, 3837 83, 84, 85, 86, 87, 88, 89, -1, 91, 92, 3838 -1, -1, -1, -1, -1, -1, 40, 41, -1, 43, 3839 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3840 -1, 114, -1, 116, -1, -1, -1, -1, -1, 122, 3841 123, 124, 125, 126, 127, 69, -1, -1, -1, -1, 3842 -1, 75, -1, -1, -1, 79, -1, -1, 82, 83, 3845 114, -1, 116, -1, -1, 119, -1, -1, 122, 123, 3846 124, 125, 126, 127, -1, -1, 40, 41, 132, 43, 3847 44, -1, 46, -1, -1, 49, 50, 51, 52, 53, 3848 54, 55, 56, -1, -1, -1, 60, -1, -1, -1, 3849 64, 65, -1, 67, -1, 69, -1, -1, -1, -1, 3850 -1, 75, -1, 77, 78, 79, -1, -1, 82, 83, 3843 3851 84, 85, 86, 87, 88, 89, -1, 91, 92, -1, 3844 3852 -1, -1, -1, -1, -1, 40, 41, -1, 43, -1, 3845 3853 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3846 114, -1, 116, -1, -1, -1, -1, -1, 122, 123,3847 124, 125, 126, 127, 69, -1, -1, -1, -1, -1,3854 114, -1, 116, -1, -1, 119, -1, -1, 122, 123, 3855 124, 125, 126, 127, 69, -1, -1, -1, 132, -1, 3848 3856 75, -1, -1, -1, 79, -1, -1, 82, 83, 84, 3849 3857 85, 86, 87, 88, 89, -1, 91, 92, -1, -1, … … 3869 3877 -1, -1, -1, -1, -1, -1, 114, -1, 116, -1, 3870 3878 -1, -1, -1, -1, 122, 123, 124, 125, 126, 127, 3879 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3880 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3881 -1, -1, 32, 33, 34, -1, -1, -1, -1, -1, 3882 -1, -1, 42, 3, 4, 5, 6, 7, 8, 9, 3883 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3884 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3885 70, -1, 32, 33, 34, 75, -1, 77, 78, -1, 3886 -1, -1, 42, -1, -1, -1, -1, -1, 88, 89, 3887 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3888 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3889 70, -1, 72, -1, 74, -1, -1, 77, 78, 3, 3871 3890 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 3872 3891 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 3873 24, 25, 26, 27, 28, 29, -1, -1, -1, -1, 3874 -1, -1, -1, -1, -1, -1, -1, -1, 42, -1, 3892 24, 25, 26, 27, 28, 29, -1, -1, 32, 33, 3893 34, -1, -1, -1, -1, -1, -1, -1, 42, -1, 3894 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3895 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3896 -1, -1, -1, -1, -1, -1, 70, -1, 72, -1, 3897 74, -1, -1, 77, 78, 4, 5, 6, 7, 8, 3898 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 3899 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 3900 29, -1, -1, 32, 33, 34, -1, -1, -1, -1, 3901 -1, -1, -1, 42, -1, -1, -1, -1, -1, -1, 3902 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3903 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3904 -1, 70, -1, 72, -1, 74, -1, -1, 77, 78, 3875 3905 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 3876 3906 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3877 -1, -1, 32, 33, 34, -1, 70, -1, 72, -1, 3878 74, 75, 42, 77, 78, 79, -1, -1, -1, -1, 3879 -1, -1, -1, -1, 88, 89, -1, -1, -1, -1, 3880 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3881 70, -1, -1, -1, -1, 75, -1, 77, 78, -1, 3882 -1, -1, -1, -1, -1, -1, -1, -1, 88, 89, 3883 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 3884 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 3885 23, 24, 25, 26, 27, 28, 29, -1, -1, 32, 3886 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, 3907 -1, -1, 32, 33, 34, 35, 36, 37, 38, -1, 3908 -1, -1, 42, -1, -1, -1, -1, -1, -1, -1, 3887 3909 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3888 3910 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3889 -1, -1, -1, -1, -1, -1, -1, 70, -1, 72, 3890 -1, 74, -1, -1, 77, 78, 3, 4, 5, 6, 3891 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 3892 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 3893 27, 28, 29, -1, -1, 32, 33, 34, -1, -1, 3894 -1, -1, -1, -1, -1, 42, -1, -1, -1, -1, 3895 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3896 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3897 -1, -1, -1, 70, -1, 72, -1, 74, -1, -1, 3898 77, 78, 4, 5, 6, 7, 8, 9, 10, 11, 3899 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 3900 22, 23, 24, 25, 26, 27, 28, 29, -1, -1, 3901 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, 3902 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3903 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3904 -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, 3905 72, -1, 74, -1, -1, 77, 78 3911 70, -1, -1, -1, -1, -1, -1, 77, 78 3906 3912 }; 3907 3913 … … 3959 3965 232, 235, 139, 318, 114, 318, 172, 326, 235, 114, 3960 3966 139, 279, 119, 35, 36, 37, 38, 233, 293, 294, 3961 296, 139, 133, 136, 298, 139, 236, 241, 242, 279,3967 296, 139, 133, 136, 298, 139, 10, 75, 77, 78, 3962 3968 322, 323, 324, 114, 146, 114, 156, 114, 156, 159, 3963 3969 114, 156, 114, 114, 156, 156, 116, 172, 177, 181, … … 4003 4009 170, 171, 265, 140, 140, 144, 230, 140, 140, 267, 4004 4010 114, 157, 377, 140, 120, 235, 294, 172, 295, 140, 4005 139, 139, 114, 140, 115, 323, 1 77, 178, 135, 137,4006 1 16, 146, 208, 209, 210, 115, 121, 115, 115, 115,4007 1 15, 172, 365, 366, 367, 235, 364, 319, 319, 119,4008 1 59, 172, 173, 176, 121, 139, 115, 121, 172, 139,4009 1 20, 170, 135, 271, 115, 115, 115, 352, 271, 115,4010 233, 370, 116, 122, 157, 172, 172, 235, 349, 271,4011 115, 115, 115, 115, 115, 115, 115, 7, 235, 343,4012 3 47, 358, 139, 139, 380, 139, 139, 140, 140, 140,4013 140, 284, 170, 171, 172, 317, 139, 285, 287, 120,4014 139, 219, 281, 43, 44, 46, 49, 50, 51, 52,4015 5 3, 54, 55, 56, 60, 64, 65, 75, 132, 178,4016 1 79, 180, 181, 182, 183, 185, 186, 198, 200, 201,4017 206, 220, 315, 31, 140, 136, 284, 139, 139, 115,4018 1 40, 181, 255, 137, 137, 326, 171, 235, 260, 261,4019 260, 281, 319, 120, 266, 379, 115, 121, 117, 117,4020 140, 235, 121, 380, 297, 115, 293, 223, 225, 233,4021 305, 306, 307, 308, 299, 115, 115, 135, 171, 114,4022 115, 1 35, 121, 144, 115, 115, 115, 364, 286, 121,4023 1 40, 176, 82, 85, 87, 144, 152, 153, 154, 151,4024 14 0, 152, 170, 140, 114, 356, 357, 140, 139, 140,4025 140, 140, 172, 115, 140, 114, 356, 357, 114, 362,4026 114, 3 62, 357, 234, 7, 122, 140, 172, 271, 271,4027 270, 274, 274, 275, 115, 121, 121, 115, 101, 127,4028 1 40, 140, 152, 285, 172, 121, 137, 220, 224, 235,4029 239, 114, 114, 179, 114, 114, 75, 137, 75, 137,4030 75, 122, 178, 114, 181, 173, 173, 135, 149, 137,4031 1 40, 139, 140, 219, 115, 172, 271, 271, 319, 115,4032 1 20, 259, 120, 139, 115, 139, 140, 316, 120, 139,4033 1 40, 140, 115, 119, 208, 117, 171, 137, 208, 210,4034 11 5, 114, 356, 357, 379, 173, 117, 140, 155, 116,4035 1 53, 155, 155, 121, 140, 90, 118, 117, 140, 115,4036 139, 115, 117, 117, 117, 140, 115, 139, 139, 139,4037 1 72, 172, 140, 117, 140, 140, 140, 140, 139, 139,4038 1 71, 171, 117, 117, 140, 281, 235, 177, 177, 50,4039 177, 139, 137, 137, 137, 177, 137, 177, 61, 62,4040 63, 202, 203, 204, 137, 66, 137, 319, 119, 183,4041 120, 137, 140, 140, 101, 276, 277, 115, 306, 121,4042 137, 121, 137, 120, 304, 135, 146, 115, 115, 135,4043 13 9, 120, 117, 86, 139, 153, 117, 116, 153, 116,4044 153, 117, 271, 117, 271, 271, 271, 140, 140, 117,4045 117, 115, 115, 117, 121, 101, 270, 101, 140, 117,4046 1 15, 115, 114, 115, 178, 199, 220, 137, 115, 114,4047 1 14, 181, 204, 61, 62, 172, 179, 150, 115, 115,4048 1 19, 139, 139, 305, 146, 211, 114, 137, 211, 271,4049 152, 139, 139, 140, 140, 140, 140, 117, 117, 139,4050 140, 1 17, 179, 47, 48, 119, 189, 190, 191, 177,4051 1 79, 140, 115, 178, 119, 191, 101, 139, 101, 139,4052 1 14, 114, 137, 120, 139, 279, 316, 120, 121, 135,4053 171, 115, 140, 140, 152, 152, 115, 115, 115, 115,4054 274, 45, 171, 187, 188, 317, 135, 139, 179, 189,4055 115, 137, 179, 137, 139, 115, 139, 115, 139, 101,4056 1 39, 101, 139, 137, 305, 146, 144, 212, 115, 137,4057 1 15, 117, 140, 140, 179, 101, 121, 135, 140, 213,4058 214, 220, 137, 178, 178, 213, 181, 205, 233, 373,4059 181, 205, 115, 139, 115, 139, 120, 115, 121, 117,4060 1 17, 171, 187, 190, 192, 193, 139, 137, 190, 194,4061 19 5, 140, 114, 157, 316, 364, 144, 140, 181, 205,4062 181, 205, 114, 137, 144, 179, 184, 120, 190, 220,4063 17 8, 59, 184, 197, 120, 190, 115, 235, 115, 140,4064 1 40, 299, 179, 184, 137, 196, 197, 184, 197, 181,4065 1 81, 115, 115, 115, 196, 140, 140, 181, 181, 140,4066 140 4011 139, 139, 114, 140, 115, 323, 150, 135, 137, 116, 4012 146, 208, 209, 210, 115, 121, 115, 115, 115, 115, 4013 172, 365, 366, 367, 235, 364, 319, 319, 119, 159, 4014 172, 173, 176, 121, 139, 115, 121, 172, 139, 120, 4015 170, 135, 271, 115, 115, 115, 352, 271, 115, 233, 4016 370, 116, 122, 157, 172, 172, 235, 349, 271, 115, 4017 115, 115, 115, 115, 115, 115, 7, 235, 343, 347, 4018 358, 139, 139, 380, 139, 139, 140, 140, 140, 140, 4019 284, 170, 171, 172, 317, 139, 285, 287, 120, 139, 4020 219, 281, 43, 44, 46, 49, 50, 51, 52, 53, 4021 54, 55, 56, 60, 64, 65, 75, 77, 78, 79, 4022 132, 145, 177, 178, 179, 180, 181, 182, 183, 185, 4023 186, 198, 200, 201, 206, 220, 279, 315, 31, 140, 4024 136, 284, 139, 139, 115, 140, 181, 255, 137, 137, 4025 326, 171, 235, 260, 261, 260, 281, 319, 120, 266, 4026 379, 115, 121, 117, 117, 140, 235, 121, 380, 297, 4027 115, 293, 223, 225, 233, 305, 306, 307, 308, 299, 4028 115, 115, 135, 171, 114, 115, 135, 121, 144, 115, 4029 115, 115, 364, 286, 121, 140, 176, 82, 85, 87, 4030 144, 152, 153, 154, 151, 140, 152, 170, 140, 114, 4031 356, 357, 140, 139, 140, 140, 140, 172, 115, 140, 4032 114, 356, 357, 114, 362, 114, 362, 357, 234, 7, 4033 122, 140, 172, 271, 271, 270, 274, 274, 275, 115, 4034 121, 121, 115, 101, 127, 140, 140, 152, 285, 172, 4035 121, 137, 220, 224, 235, 239, 114, 114, 179, 114, 4036 114, 137, 279, 137, 279, 122, 279, 178, 114, 181, 4037 173, 173, 149, 137, 140, 139, 140, 135, 219, 115, 4038 172, 271, 271, 319, 115, 120, 259, 120, 139, 115, 4039 139, 140, 316, 120, 139, 140, 140, 115, 119, 208, 4040 117, 171, 137, 208, 210, 115, 114, 356, 357, 379, 4041 173, 117, 140, 155, 116, 153, 155, 155, 121, 140, 4042 90, 118, 117, 140, 115, 139, 115, 117, 117, 117, 4043 140, 115, 139, 139, 139, 172, 172, 140, 117, 140, 4044 140, 140, 140, 139, 139, 171, 171, 117, 117, 140, 4045 281, 235, 177, 177, 50, 177, 139, 137, 137, 177, 4046 137, 137, 177, 61, 62, 63, 202, 203, 204, 137, 4047 66, 137, 119, 183, 120, 319, 137, 140, 140, 101, 4048 276, 277, 115, 306, 121, 137, 121, 137, 120, 304, 4049 135, 146, 115, 115, 135, 139, 120, 117, 86, 139, 4050 153, 117, 116, 153, 116, 153, 117, 271, 117, 271, 4051 271, 271, 140, 140, 117, 117, 115, 115, 117, 121, 4052 101, 270, 101, 140, 117, 115, 115, 114, 115, 178, 4053 199, 220, 137, 115, 114, 114, 181, 204, 61, 62, 4054 172, 150, 179, 115, 115, 119, 139, 139, 305, 146, 4055 211, 114, 137, 211, 271, 152, 139, 139, 140, 140, 4056 140, 140, 117, 117, 139, 140, 117, 179, 47, 48, 4057 119, 189, 190, 191, 177, 179, 140, 115, 178, 119, 4058 191, 101, 139, 101, 139, 114, 114, 137, 120, 139, 4059 279, 316, 120, 121, 135, 171, 115, 140, 140, 152, 4060 152, 115, 115, 115, 115, 274, 45, 171, 187, 188, 4061 317, 135, 139, 179, 189, 115, 137, 179, 137, 139, 4062 115, 139, 115, 139, 101, 139, 101, 139, 137, 305, 4063 146, 144, 212, 115, 137, 115, 117, 140, 140, 179, 4064 101, 121, 135, 140, 213, 214, 220, 137, 178, 178, 4065 213, 181, 205, 233, 373, 181, 205, 115, 139, 115, 4066 139, 120, 115, 121, 117, 117, 171, 187, 190, 192, 4067 193, 139, 137, 190, 194, 195, 140, 114, 157, 316, 4068 364, 144, 140, 181, 205, 181, 205, 114, 137, 144, 4069 179, 184, 120, 190, 220, 178, 59, 184, 197, 120, 4070 190, 115, 235, 115, 140, 140, 299, 179, 184, 137, 4071 196, 197, 184, 197, 181, 181, 115, 115, 115, 196, 4072 140, 140, 181, 181, 140, 140 4067 4073 }; 4068 4074 … … 4901 4907 4902 4908 /* Line 1806 of yacc.c */ 4903 #line 30 6"parser.yy"4909 #line 305 "parser.yy" 4904 4910 { typedefTable.enterScope(); } 4905 4911 break; … … 4908 4914 4909 4915 /* Line 1806 of yacc.c */ 4910 #line 3 10"parser.yy"4916 #line 309 "parser.yy" 4911 4917 { typedefTable.leaveScope(); } 4912 4918 break; … … 4915 4921 4916 4922 /* Line 1806 of yacc.c */ 4923 #line 316 "parser.yy" 4924 { (yyval.en) = new ExpressionNode( build_constantInteger( *(yyvsp[(1) - (1)].tok) ) ); } 4925 break; 4926 4927 case 5: 4928 4929 /* Line 1806 of yacc.c */ 4917 4930 #line 317 "parser.yy" 4918 { (yyval.en) = new ExpressionNode( build_constant Integer( *(yyvsp[(1) - (1)].tok) ) ); }4919 break; 4920 4921 case 5:4931 { (yyval.en) = new ExpressionNode( build_constantFloat( *(yyvsp[(1) - (1)].tok) ) ); } 4932 break; 4933 4934 case 6: 4922 4935 4923 4936 /* Line 1806 of yacc.c */ … … 4926 4939 break; 4927 4940 4928 case 6:4941 case 7: 4929 4942 4930 4943 /* Line 1806 of yacc.c */ … … 4933 4946 break; 4934 4947 4935 case 7:4948 case 8: 4936 4949 4937 4950 /* Line 1806 of yacc.c */ 4938 4951 #line 320 "parser.yy" 4939 { (yyval.en) = new ExpressionNode( build_constantFloat( *(yyvsp[(1) - (1)].tok) ) ); }4940 break;4941 4942 case 8:4943 4944 /* Line 1806 of yacc.c */4945 #line 321 "parser.yy"4946 4952 { (yyval.en) = new ExpressionNode( build_constantChar( *(yyvsp[(1) - (1)].tok) ) ); } 4947 4953 break; … … 4950 4956 4951 4957 /* Line 1806 of yacc.c */ 4952 #line 34 6"parser.yy"4958 #line 345 "parser.yy" 4953 4959 { (yyval.constant) = build_constantStr( *(yyvsp[(1) - (1)].str) ); } 4954 4960 break; … … 4957 4963 4958 4964 /* Line 1806 of yacc.c */ 4959 #line 3 50"parser.yy"4965 #line 349 "parser.yy" 4960 4966 { (yyval.str) = (yyvsp[(1) - (1)].tok); } 4961 4967 break; … … 4964 4970 4965 4971 /* Line 1806 of yacc.c */ 4966 #line 35 2"parser.yy"4972 #line 351 "parser.yy" 4967 4973 { 4968 4974 appendStr( (yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].tok) ); // append 2nd juxtaposed string to 1st … … 4975 4981 4976 4982 /* Line 1806 of yacc.c */ 4977 #line 36 3"parser.yy"4983 #line 362 "parser.yy" 4978 4984 { (yyval.en) = new ExpressionNode( build_varref( (yyvsp[(1) - (1)].tok) ) ); } 4979 4985 break; … … 4982 4988 4983 4989 /* Line 1806 of yacc.c */ 4984 #line 36 5"parser.yy"4990 #line 364 "parser.yy" 4985 4991 { (yyval.en) = new ExpressionNode( build_constantZeroOne( *(yyvsp[(1) - (1)].tok) ) ); } 4986 4992 break; … … 4989 4995 4990 4996 /* Line 1806 of yacc.c */ 4991 #line 36 8"parser.yy"4997 #line 367 "parser.yy" 4992 4998 { (yyval.en) = (yyvsp[(2) - (3)].en); } 4993 4999 break; … … 4996 5002 4997 5003 /* Line 1806 of yacc.c */ 4998 #line 3 70"parser.yy"5004 #line 369 "parser.yy" 4999 5005 { (yyval.en) = new ExpressionNode( build_valexpr( (yyvsp[(2) - (3)].sn) ) ); } 5000 5006 break; … … 5003 5009 5004 5010 /* Line 1806 of yacc.c */ 5005 #line 3 80"parser.yy"5011 #line 379 "parser.yy" 5006 5012 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Index, (yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en) ) ); } 5007 5013 break; … … 5010 5016 5011 5017 /* Line 1806 of yacc.c */ 5012 #line 38 2"parser.yy"5018 #line 381 "parser.yy" 5013 5019 { (yyval.en) = new ExpressionNode( build_func( (yyvsp[(1) - (4)].en), (yyvsp[(3) - (4)].en) ) ); } 5014 5020 break; … … 5017 5023 5018 5024 /* Line 1806 of yacc.c */ 5019 #line 38 4"parser.yy"5025 #line 383 "parser.yy" 5020 5026 { (yyval.en) = new ExpressionNode( build_fieldSel( (yyvsp[(1) - (3)].en), build_varref( (yyvsp[(3) - (3)].tok) ) ) ); } 5021 5027 break; … … 5024 5030 5025 5031 /* Line 1806 of yacc.c */ 5026 #line 38 6"parser.yy"5032 #line 385 "parser.yy" 5027 5033 { (yyval.en) = new ExpressionNode( build_fieldSel( (yyvsp[(1) - (7)].en), build_tuple( (yyvsp[(5) - (7)].en) ) ) ); } 5028 5034 break; … … 5031 5037 5032 5038 /* Line 1806 of yacc.c */ 5033 #line 38 8"parser.yy"5039 #line 387 "parser.yy" 5034 5040 { (yyval.en) = new ExpressionNode( build_fieldSel( (yyvsp[(1) - (2)].en), build_field_name_REALFRACTIONconstant( *(yyvsp[(2) - (2)].tok) ) ) ); } 5035 5041 break; … … 5038 5044 5039 5045 /* Line 1806 of yacc.c */ 5040 #line 3 90"parser.yy"5046 #line 389 "parser.yy" 5041 5047 { (yyval.en) = new ExpressionNode( build_pfieldSel( (yyvsp[(1) - (3)].en), build_varref( (yyvsp[(3) - (3)].tok) ) ) ); } 5042 5048 break; … … 5045 5051 5046 5052 /* Line 1806 of yacc.c */ 5047 #line 39 2"parser.yy"5053 #line 391 "parser.yy" 5048 5054 { (yyval.en) = new ExpressionNode( build_pfieldSel( (yyvsp[(1) - (7)].en), build_tuple( (yyvsp[(5) - (7)].en) ) ) ); } 5049 5055 break; … … 5052 5058 5053 5059 /* Line 1806 of yacc.c */ 5054 #line 39 4"parser.yy"5060 #line 393 "parser.yy" 5055 5061 { (yyval.en) = new ExpressionNode( build_unary_ptr( OperKinds::IncrPost, (yyvsp[(1) - (2)].en) ) ); } 5056 5062 break; … … 5059 5065 5060 5066 /* Line 1806 of yacc.c */ 5061 #line 39 6"parser.yy"5067 #line 395 "parser.yy" 5062 5068 { (yyval.en) = new ExpressionNode( build_unary_ptr( OperKinds::DecrPost, (yyvsp[(1) - (2)].en) ) ); } 5063 5069 break; … … 5066 5072 5067 5073 /* Line 1806 of yacc.c */ 5068 #line 39 8"parser.yy"5074 #line 397 "parser.yy" 5069 5075 { (yyval.en) = new ExpressionNode( build_compoundLiteral( (yyvsp[(2) - (7)].decl), new InitializerNode( (yyvsp[(5) - (7)].in), true ) ) ); } 5070 5076 break; … … 5073 5079 5074 5080 /* Line 1806 of yacc.c */ 5075 #line 400"parser.yy"5081 #line 399 "parser.yy" 5076 5082 { 5077 5083 Token fn; … … 5084 5090 5085 5091 /* Line 1806 of yacc.c */ 5086 #line 4 10"parser.yy"5092 #line 409 "parser.yy" 5087 5093 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_last( (yyvsp[(3) - (3)].en) )); } 5088 5094 break; … … 5091 5097 5092 5098 /* Line 1806 of yacc.c */ 5093 #line 41 5"parser.yy"5099 #line 414 "parser.yy" 5094 5100 { (yyval.en) = nullptr; } 5095 5101 break; … … 5098 5104 5099 5105 /* Line 1806 of yacc.c */ 5100 #line 42 1"parser.yy"5106 #line 420 "parser.yy" 5101 5107 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_last( (yyvsp[(3) - (3)].en) ); } 5102 5108 break; … … 5105 5111 5106 5112 /* Line 1806 of yacc.c */ 5107 #line 42 7"parser.yy"5113 #line 426 "parser.yy" 5108 5114 { (yyval.en) = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_REALDECIMALconstant( *(yyvsp[(1) - (2)].tok) ) ), maybeMoveBuild<Expression>( (yyvsp[(2) - (2)].en) ) ) ); } 5109 5115 break; … … 5112 5118 5113 5119 /* Line 1806 of yacc.c */ 5114 #line 42 9"parser.yy"5120 #line 428 "parser.yy" 5115 5121 { (yyval.en) = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_REALDECIMALconstant( *(yyvsp[(1) - (6)].tok) ) ), build_tuple( (yyvsp[(4) - (6)].en) ) ) ); } 5116 5122 break; … … 5119 5125 5120 5126 /* Line 1806 of yacc.c */ 5121 #line 43 1"parser.yy"5127 #line 430 "parser.yy" 5122 5128 { (yyval.en) = new ExpressionNode( build_fieldSel( (yyvsp[(1) - (3)].en), maybeMoveBuild<Expression>( (yyvsp[(3) - (3)].en) ) ) ); } 5123 5129 break; … … 5126 5132 5127 5133 /* Line 1806 of yacc.c */ 5128 #line 43 3"parser.yy"5134 #line 432 "parser.yy" 5129 5135 { (yyval.en) = new ExpressionNode( build_fieldSel( (yyvsp[(1) - (7)].en), build_tuple( (yyvsp[(5) - (7)].en) ) ) ); } 5130 5136 break; … … 5133 5139 5134 5140 /* Line 1806 of yacc.c */ 5135 #line 43 5"parser.yy"5141 #line 434 "parser.yy" 5136 5142 { (yyval.en) = new ExpressionNode( build_pfieldSel( (yyvsp[(1) - (3)].en), maybeMoveBuild<Expression>( (yyvsp[(3) - (3)].en) ) ) ); } 5137 5143 break; … … 5140 5146 5141 5147 /* Line 1806 of yacc.c */ 5142 #line 43 7"parser.yy"5148 #line 436 "parser.yy" 5143 5149 { (yyval.en) = new ExpressionNode( build_pfieldSel( (yyvsp[(1) - (7)].en), build_tuple( (yyvsp[(5) - (7)].en) ) ) ); } 5144 5150 break; … … 5147 5153 5148 5154 /* Line 1806 of yacc.c */ 5149 #line 44 2"parser.yy"5155 #line 441 "parser.yy" 5150 5156 { (yyval.en) = new ExpressionNode( build_field_name_fraction_constants( build_constantInteger( *(yyvsp[(1) - (2)].tok) ), (yyvsp[(2) - (2)].en) ) ); } 5151 5157 break; … … 5154 5160 5155 5161 /* Line 1806 of yacc.c */ 5156 #line 44 4"parser.yy"5162 #line 443 "parser.yy" 5157 5163 { (yyval.en) = new ExpressionNode( build_field_name_fraction_constants( build_field_name_FLOATINGconstant( *(yyvsp[(1) - (2)].tok) ), (yyvsp[(2) - (2)].en) ) ); } 5158 5164 break; … … 5161 5167 5162 5168 /* Line 1806 of yacc.c */ 5163 #line 44 6"parser.yy"5169 #line 445 "parser.yy" 5164 5170 { 5165 5171 if( (*(yyvsp[(1) - (2)].tok)) == "0" || (*(yyvsp[(1) - (2)].tok)) == "1" ) { … … 5174 5180 5175 5181 /* Line 1806 of yacc.c */ 5176 #line 45 7"parser.yy"5182 #line 456 "parser.yy" 5177 5183 { (yyval.en) = nullptr; } 5178 5184 break; … … 5181 5187 5182 5188 /* Line 1806 of yacc.c */ 5183 #line 45 9"parser.yy"5189 #line 458 "parser.yy" 5184 5190 { 5185 5191 Expression * constant = build_field_name_REALFRACTIONconstant( *(yyvsp[(2) - (2)].tok) ); … … 5191 5197 5192 5198 /* Line 1806 of yacc.c */ 5193 #line 4 70"parser.yy"5199 #line 469 "parser.yy" 5194 5200 { (yyval.en) = (yyvsp[(1) - (1)].en); } 5195 5201 break; … … 5198 5204 5199 5205 /* Line 1806 of yacc.c */ 5200 #line 47 2"parser.yy"5206 #line 471 "parser.yy" 5201 5207 { (yyval.en) = new ExpressionNode( (yyvsp[(1) - (1)].constant) ); } 5202 5208 break; … … 5205 5211 5206 5212 /* Line 1806 of yacc.c */ 5207 #line 47 4"parser.yy"5213 #line 473 "parser.yy" 5208 5214 { (yyval.en) = (yyvsp[(2) - (2)].en)->set_extension( true ); } 5209 5215 break; … … 5212 5218 5213 5219 /* Line 1806 of yacc.c */ 5214 #line 47 9"parser.yy"5220 #line 478 "parser.yy" 5215 5221 { 5216 5222 switch ( (yyvsp[(1) - (2)].op) ) { … … 5230 5236 5231 5237 /* Line 1806 of yacc.c */ 5232 #line 49 2"parser.yy"5238 #line 491 "parser.yy" 5233 5239 { (yyval.en) = new ExpressionNode( build_unary_val( (yyvsp[(1) - (2)].op), (yyvsp[(2) - (2)].en) ) ); } 5234 5240 break; … … 5237 5243 5238 5244 /* Line 1806 of yacc.c */ 5239 #line 49 4"parser.yy"5245 #line 493 "parser.yy" 5240 5246 { (yyval.en) = new ExpressionNode( build_unary_ptr( OperKinds::Incr, (yyvsp[(2) - (2)].en) ) ); } 5241 5247 break; … … 5244 5250 5245 5251 /* Line 1806 of yacc.c */ 5246 #line 49 6"parser.yy"5252 #line 495 "parser.yy" 5247 5253 { (yyval.en) = new ExpressionNode( build_unary_ptr( OperKinds::Decr, (yyvsp[(2) - (2)].en) ) ); } 5248 5254 break; … … 5251 5257 5252 5258 /* Line 1806 of yacc.c */ 5253 #line 49 8"parser.yy"5259 #line 497 "parser.yy" 5254 5260 { (yyval.en) = new ExpressionNode( build_sizeOfexpr( (yyvsp[(2) - (2)].en) ) ); } 5255 5261 break; … … 5258 5264 5259 5265 /* Line 1806 of yacc.c */ 5260 #line 500"parser.yy"5266 #line 499 "parser.yy" 5261 5267 { (yyval.en) = new ExpressionNode( build_sizeOftype( (yyvsp[(3) - (4)].decl) ) ); } 5262 5268 break; … … 5265 5271 5266 5272 /* Line 1806 of yacc.c */ 5267 #line 50 2"parser.yy"5273 #line 501 "parser.yy" 5268 5274 { (yyval.en) = new ExpressionNode( build_alignOfexpr( (yyvsp[(2) - (2)].en) ) ); } 5269 5275 break; … … 5272 5278 5273 5279 /* Line 1806 of yacc.c */ 5274 #line 50 4"parser.yy"5280 #line 503 "parser.yy" 5275 5281 { (yyval.en) = new ExpressionNode( build_alignOftype( (yyvsp[(3) - (4)].decl) ) ); } 5276 5282 break; … … 5279 5285 5280 5286 /* Line 1806 of yacc.c */ 5281 #line 50 6"parser.yy"5287 #line 505 "parser.yy" 5282 5288 { (yyval.en) = new ExpressionNode( build_offsetOf( (yyvsp[(3) - (6)].decl), build_varref( (yyvsp[(5) - (6)].tok) ) ) ); } 5283 5289 break; … … 5286 5292 5287 5293 /* Line 1806 of yacc.c */ 5288 #line 50 8"parser.yy"5294 #line 507 "parser.yy" 5289 5295 { (yyval.en) = new ExpressionNode( build_attrexpr( build_varref( (yyvsp[(1) - (1)].tok) ), nullptr ) ); } 5290 5296 break; … … 5293 5299 5294 5300 /* Line 1806 of yacc.c */ 5295 #line 5 10"parser.yy"5301 #line 509 "parser.yy" 5296 5302 { (yyval.en) = new ExpressionNode( build_attrexpr( build_varref( (yyvsp[(1) - (4)].tok) ), (yyvsp[(3) - (4)].en) ) ); } 5297 5303 break; … … 5300 5306 5301 5307 /* Line 1806 of yacc.c */ 5302 #line 51 2"parser.yy"5308 #line 511 "parser.yy" 5303 5309 { (yyval.en) = new ExpressionNode( build_attrtype( build_varref( (yyvsp[(1) - (4)].tok) ), (yyvsp[(3) - (4)].decl) ) ); } 5304 5310 break; … … 5307 5313 5308 5314 /* Line 1806 of yacc.c */ 5315 #line 517 "parser.yy" 5316 { (yyval.op) = OperKinds::PointTo; } 5317 break; 5318 5319 case 73: 5320 5321 /* Line 1806 of yacc.c */ 5309 5322 #line 518 "parser.yy" 5310 { (yyval.op) = OperKinds::PointTo; }5311 break;5312 5313 case 73:5314 5315 /* Line 1806 of yacc.c */5316 #line 519 "parser.yy"5317 5323 { (yyval.op) = OperKinds::AddressOf; } 5318 5324 break; … … 5321 5327 5322 5328 /* Line 1806 of yacc.c */ 5329 #line 524 "parser.yy" 5330 { (yyval.op) = OperKinds::UnPlus; } 5331 break; 5332 5333 case 75: 5334 5335 /* Line 1806 of yacc.c */ 5323 5336 #line 525 "parser.yy" 5324 { (yyval.op) = OperKinds::Un Plus; }5325 break; 5326 5327 case 7 5:5337 { (yyval.op) = OperKinds::UnMinus; } 5338 break; 5339 5340 case 76: 5328 5341 5329 5342 /* Line 1806 of yacc.c */ 5330 5343 #line 526 "parser.yy" 5331 { (yyval.op) = OperKinds:: UnMinus; }5332 break; 5333 5334 case 7 6:5344 { (yyval.op) = OperKinds::Neg; } 5345 break; 5346 5347 case 77: 5335 5348 5336 5349 /* Line 1806 of yacc.c */ 5337 5350 #line 527 "parser.yy" 5338 { (yyval.op) = OperKinds::Neg; }5339 break;5340 5341 case 77:5342 5343 /* Line 1806 of yacc.c */5344 #line 528 "parser.yy"5345 5351 { (yyval.op) = OperKinds::BitNeg; } 5346 5352 break; … … 5349 5355 5350 5356 /* Line 1806 of yacc.c */ 5351 #line 53 4"parser.yy"5357 #line 533 "parser.yy" 5352 5358 { (yyval.en) = new ExpressionNode( build_cast( (yyvsp[(2) - (4)].decl), (yyvsp[(4) - (4)].en) ) ); } 5353 5359 break; … … 5356 5362 5357 5363 /* Line 1806 of yacc.c */ 5358 #line 54 2"parser.yy"5364 #line 541 "parser.yy" 5359 5365 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Mul, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5360 5366 break; … … 5363 5369 5364 5370 /* Line 1806 of yacc.c */ 5365 #line 54 4"parser.yy"5371 #line 543 "parser.yy" 5366 5372 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Div, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5367 5373 break; … … 5370 5376 5371 5377 /* Line 1806 of yacc.c */ 5372 #line 54 6"parser.yy"5378 #line 545 "parser.yy" 5373 5379 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Mod, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5374 5380 break; … … 5377 5383 5378 5384 /* Line 1806 of yacc.c */ 5379 #line 55 2"parser.yy"5385 #line 551 "parser.yy" 5380 5386 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Plus, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5381 5387 break; … … 5384 5390 5385 5391 /* Line 1806 of yacc.c */ 5386 #line 55 4"parser.yy"5392 #line 553 "parser.yy" 5387 5393 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Minus, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5388 5394 break; … … 5391 5397 5392 5398 /* Line 1806 of yacc.c */ 5393 #line 5 60"parser.yy"5399 #line 559 "parser.yy" 5394 5400 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::LShift, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5395 5401 break; … … 5398 5404 5399 5405 /* Line 1806 of yacc.c */ 5400 #line 56 2"parser.yy"5406 #line 561 "parser.yy" 5401 5407 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::RShift, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5402 5408 break; … … 5405 5411 5406 5412 /* Line 1806 of yacc.c */ 5407 #line 56 8"parser.yy"5413 #line 567 "parser.yy" 5408 5414 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::LThan, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5409 5415 break; … … 5412 5418 5413 5419 /* Line 1806 of yacc.c */ 5414 #line 5 70"parser.yy"5420 #line 569 "parser.yy" 5415 5421 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::GThan, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5416 5422 break; … … 5419 5425 5420 5426 /* Line 1806 of yacc.c */ 5421 #line 57 2"parser.yy"5427 #line 571 "parser.yy" 5422 5428 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::LEThan, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5423 5429 break; … … 5426 5432 5427 5433 /* Line 1806 of yacc.c */ 5428 #line 57 4"parser.yy"5434 #line 573 "parser.yy" 5429 5435 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::GEThan, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5430 5436 break; … … 5433 5439 5434 5440 /* Line 1806 of yacc.c */ 5435 #line 5 80"parser.yy"5441 #line 579 "parser.yy" 5436 5442 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Eq, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5437 5443 break; … … 5440 5446 5441 5447 /* Line 1806 of yacc.c */ 5442 #line 58 2"parser.yy"5448 #line 581 "parser.yy" 5443 5449 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Neq, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5444 5450 break; … … 5447 5453 5448 5454 /* Line 1806 of yacc.c */ 5449 #line 58 8"parser.yy"5455 #line 587 "parser.yy" 5450 5456 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::BitAnd, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5451 5457 break; … … 5454 5460 5455 5461 /* Line 1806 of yacc.c */ 5456 #line 59 4"parser.yy"5462 #line 593 "parser.yy" 5457 5463 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::Xor, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5458 5464 break; … … 5461 5467 5462 5468 /* Line 1806 of yacc.c */ 5463 #line 600"parser.yy"5469 #line 599 "parser.yy" 5464 5470 { (yyval.en) = new ExpressionNode( build_binary_val( OperKinds::BitOr, (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5465 5471 break; … … 5468 5474 5469 5475 /* Line 1806 of yacc.c */ 5470 #line 60 6"parser.yy"5476 #line 605 "parser.yy" 5471 5477 { (yyval.en) = new ExpressionNode( build_and_or( (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en), true ) ); } 5472 5478 break; … … 5475 5481 5476 5482 /* Line 1806 of yacc.c */ 5477 #line 61 2"parser.yy"5483 #line 611 "parser.yy" 5478 5484 { (yyval.en) = new ExpressionNode( build_and_or( (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en), false ) ); } 5479 5485 break; … … 5482 5488 5483 5489 /* Line 1806 of yacc.c */ 5484 #line 61 8"parser.yy"5490 #line 617 "parser.yy" 5485 5491 { (yyval.en) = new ExpressionNode( build_cond( (yyvsp[(1) - (5)].en), (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].en) ) ); } 5486 5492 break; … … 5489 5495 5490 5496 /* Line 1806 of yacc.c */ 5491 #line 62 1"parser.yy"5497 #line 620 "parser.yy" 5492 5498 { (yyval.en) = new ExpressionNode( build_cond( (yyvsp[(1) - (4)].en), (yyvsp[(1) - (4)].en), (yyvsp[(4) - (4)].en) ) ); } 5493 5499 break; … … 5496 5502 5497 5503 /* Line 1806 of yacc.c */ 5498 #line 63 4"parser.yy"5504 #line 633 "parser.yy" 5499 5505 { (yyval.en) = new ExpressionNode( build_binary_ptr( (yyvsp[(2) - (3)].op), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5500 5506 break; … … 5503 5509 5504 5510 /* Line 1806 of yacc.c */ 5505 #line 64 1"parser.yy"5511 #line 640 "parser.yy" 5506 5512 { (yyval.en) = nullptr; } 5507 5513 break; … … 5510 5516 5511 5517 /* Line 1806 of yacc.c */ 5518 #line 645 "parser.yy" 5519 { (yyval.op) = OperKinds::Assign; } 5520 break; 5521 5522 case 117: 5523 5524 /* Line 1806 of yacc.c */ 5512 5525 #line 646 "parser.yy" 5513 { (yyval.op) = OperKinds::A ssign; }5514 break; 5515 5516 case 11 7:5526 { (yyval.op) = OperKinds::AtAssn; } 5527 break; 5528 5529 case 118: 5517 5530 5518 5531 /* Line 1806 of yacc.c */ 5519 5532 #line 647 "parser.yy" 5520 { (yyval.op) = OperKinds:: AtAssn; }5521 break; 5522 5523 case 11 8:5533 { (yyval.op) = OperKinds::MulAssn; } 5534 break; 5535 5536 case 119: 5524 5537 5525 5538 /* Line 1806 of yacc.c */ 5526 5539 #line 648 "parser.yy" 5527 { (yyval.op) = OperKinds:: MulAssn; }5528 break; 5529 5530 case 1 19:5540 { (yyval.op) = OperKinds::DivAssn; } 5541 break; 5542 5543 case 120: 5531 5544 5532 5545 /* Line 1806 of yacc.c */ 5533 5546 #line 649 "parser.yy" 5534 { (yyval.op) = OperKinds:: DivAssn; }5535 break; 5536 5537 case 12 0:5547 { (yyval.op) = OperKinds::ModAssn; } 5548 break; 5549 5550 case 121: 5538 5551 5539 5552 /* Line 1806 of yacc.c */ 5540 5553 #line 650 "parser.yy" 5541 { (yyval.op) = OperKinds:: ModAssn; }5542 break; 5543 5544 case 12 1:5554 { (yyval.op) = OperKinds::PlusAssn; } 5555 break; 5556 5557 case 122: 5545 5558 5546 5559 /* Line 1806 of yacc.c */ 5547 5560 #line 651 "parser.yy" 5548 { (yyval.op) = OperKinds:: PlusAssn; }5549 break; 5550 5551 case 12 2:5561 { (yyval.op) = OperKinds::MinusAssn; } 5562 break; 5563 5564 case 123: 5552 5565 5553 5566 /* Line 1806 of yacc.c */ 5554 5567 #line 652 "parser.yy" 5555 { (yyval.op) = OperKinds:: MinusAssn; }5556 break; 5557 5558 case 12 3:5568 { (yyval.op) = OperKinds::LSAssn; } 5569 break; 5570 5571 case 124: 5559 5572 5560 5573 /* Line 1806 of yacc.c */ 5561 5574 #line 653 "parser.yy" 5562 { (yyval.op) = OperKinds:: LSAssn; }5563 break; 5564 5565 case 12 4:5575 { (yyval.op) = OperKinds::RSAssn; } 5576 break; 5577 5578 case 125: 5566 5579 5567 5580 /* Line 1806 of yacc.c */ 5568 5581 #line 654 "parser.yy" 5569 { (yyval.op) = OperKinds:: RSAssn; }5570 break; 5571 5572 case 12 5:5582 { (yyval.op) = OperKinds::AndAssn; } 5583 break; 5584 5585 case 126: 5573 5586 5574 5587 /* Line 1806 of yacc.c */ 5575 5588 #line 655 "parser.yy" 5576 { (yyval.op) = OperKinds:: AndAssn; }5577 break; 5578 5579 case 12 6:5589 { (yyval.op) = OperKinds::ERAssn; } 5590 break; 5591 5592 case 127: 5580 5593 5581 5594 /* Line 1806 of yacc.c */ 5582 5595 #line 656 "parser.yy" 5583 { (yyval.op) = OperKinds::ERAssn; }5584 break;5585 5586 case 127:5587 5588 /* Line 1806 of yacc.c */5589 #line 657 "parser.yy"5590 5596 { (yyval.op) = OperKinds::OrAssn; } 5591 5597 break; … … 5594 5600 5595 5601 /* Line 1806 of yacc.c */ 5596 #line 66 8"parser.yy"5602 #line 667 "parser.yy" 5597 5603 { (yyval.en) = new ExpressionNode( build_tuple( (ExpressionNode *)(new ExpressionNode( nullptr ) )->set_last( (yyvsp[(4) - (6)].en) ) ) ); } 5598 5604 break; … … 5601 5607 5602 5608 /* Line 1806 of yacc.c */ 5603 #line 6 70"parser.yy"5609 #line 669 "parser.yy" 5604 5610 { (yyval.en) = new ExpressionNode( build_tuple( (ExpressionNode *)(yyvsp[(3) - (7)].en)->set_last( (yyvsp[(5) - (7)].en) ) ) ); } 5605 5611 break; … … 5608 5614 5609 5615 /* Line 1806 of yacc.c */ 5610 #line 67 6"parser.yy"5616 #line 675 "parser.yy" 5611 5617 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_last( (yyvsp[(3) - (3)].en) ); } 5612 5618 break; … … 5615 5621 5616 5622 /* Line 1806 of yacc.c */ 5617 #line 68 2"parser.yy"5623 #line 681 "parser.yy" 5618 5624 { (yyval.en) = new ExpressionNode( build_comma( (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5619 5625 break; … … 5622 5628 5623 5629 /* Line 1806 of yacc.c */ 5624 #line 68 7"parser.yy"5630 #line 686 "parser.yy" 5625 5631 { (yyval.en) = nullptr; } 5626 5632 break; … … 5629 5635 5630 5636 /* Line 1806 of yacc.c */ 5631 #line 69 6"parser.yy"5637 #line 695 "parser.yy" 5632 5638 { (yyval.sn) = (yyvsp[(1) - (1)].sn); } 5633 5639 break; … … 5636 5642 5637 5643 /* Line 1806 of yacc.c */ 5638 #line 70 3"parser.yy"5644 #line 702 "parser.yy" 5639 5645 { 5640 5646 Token fn; … … 5647 5653 5648 5654 /* Line 1806 of yacc.c */ 5649 #line 71 3"parser.yy"5655 #line 712 "parser.yy" 5650 5656 { 5651 (yyval.sn) = (yyvsp[(4) - (4)].sn)->add_label( (yyvsp[(1) - (4)].tok) );5657 (yyval.sn) = (yyvsp[(4) - (4)].sn)->add_label( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].decl) ); 5652 5658 } 5653 5659 break; … … 5656 5662 5657 5663 /* Line 1806 of yacc.c */ 5658 #line 7 20"parser.yy"5664 #line 719 "parser.yy" 5659 5665 { (yyval.sn) = new StatementNode( build_compound( (StatementNode *)0 ) ); } 5660 5666 break; … … 5663 5669 5664 5670 /* Line 1806 of yacc.c */ 5665 #line 72 7"parser.yy"5671 #line 726 "parser.yy" 5666 5672 { (yyval.sn) = new StatementNode( build_compound( (yyvsp[(5) - (7)].sn) ) ); } 5667 5673 break; … … 5670 5676 5671 5677 /* Line 1806 of yacc.c */ 5672 #line 73 3"parser.yy"5678 #line 732 "parser.yy" 5673 5679 { if ( (yyvsp[(1) - (3)].sn) != 0 ) { (yyvsp[(1) - (3)].sn)->set_last( (yyvsp[(3) - (3)].sn) ); (yyval.sn) = (yyvsp[(1) - (3)].sn); } } 5674 5680 break; … … 5677 5683 5678 5684 /* Line 1806 of yacc.c */ 5679 #line 73 8"parser.yy"5685 #line 737 "parser.yy" 5680 5686 { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); } 5681 5687 break; … … 5684 5690 5685 5691 /* Line 1806 of yacc.c */ 5686 #line 7 40"parser.yy"5692 #line 739 "parser.yy" 5687 5693 { // mark all fields in list 5688 5694 for ( DeclarationNode *iter = (yyvsp[(2) - (2)].decl); iter != nullptr; iter = (DeclarationNode *)iter->get_next() ) … … 5695 5701 5696 5702 /* Line 1806 of yacc.c */ 5697 #line 74 6"parser.yy"5703 #line 745 "parser.yy" 5698 5704 { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); } 5699 5705 break; … … 5702 5708 5703 5709 /* Line 1806 of yacc.c */ 5704 #line 75 3"parser.yy"5710 #line 752 "parser.yy" 5705 5711 { if ( (yyvsp[(1) - (2)].sn) != 0 ) { (yyvsp[(1) - (2)].sn)->set_last( (yyvsp[(2) - (2)].sn) ); (yyval.sn) = (yyvsp[(1) - (2)].sn); } } 5706 5712 break; … … 5709 5715 5710 5716 /* Line 1806 of yacc.c */ 5711 #line 75 8"parser.yy"5717 #line 757 "parser.yy" 5712 5718 { (yyval.sn) = new StatementNode( build_expr( (yyvsp[(1) - (2)].en) ) ); } 5713 5719 break; … … 5716 5722 5717 5723 /* Line 1806 of yacc.c */ 5718 #line 76 4"parser.yy"5724 #line 763 "parser.yy" 5719 5725 { (yyval.sn) = new StatementNode( build_if( (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn), nullptr ) ); } 5720 5726 break; … … 5723 5729 5724 5730 /* Line 1806 of yacc.c */ 5725 #line 76 6"parser.yy"5731 #line 765 "parser.yy" 5726 5732 { (yyval.sn) = new StatementNode( build_if( (yyvsp[(3) - (7)].en), (yyvsp[(5) - (7)].sn), (yyvsp[(7) - (7)].sn) ) ); } 5727 5733 break; … … 5730 5736 5731 5737 /* Line 1806 of yacc.c */ 5732 #line 76 8"parser.yy"5738 #line 767 "parser.yy" 5733 5739 { (yyval.sn) = new StatementNode( build_switch( (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ) ); } 5734 5740 break; … … 5737 5743 5738 5744 /* Line 1806 of yacc.c */ 5739 #line 7 70"parser.yy"5745 #line 769 "parser.yy" 5740 5746 { 5741 5747 StatementNode *sw = new StatementNode( build_switch( (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn) ) ); … … 5752 5758 5753 5759 /* Line 1806 of yacc.c */ 5754 #line 7 80"parser.yy"5760 #line 779 "parser.yy" 5755 5761 { (yyval.sn) = new StatementNode( build_switch( (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ) ); } 5756 5762 break; … … 5759 5765 5760 5766 /* Line 1806 of yacc.c */ 5761 #line 78 2"parser.yy"5767 #line 781 "parser.yy" 5762 5768 { 5763 5769 StatementNode *sw = new StatementNode( build_switch( (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn) ) ); … … 5769 5775 5770 5776 /* Line 1806 of yacc.c */ 5771 #line 79 2"parser.yy"5777 #line 791 "parser.yy" 5772 5778 { (yyval.en) = (yyvsp[(1) - (1)].en); } 5773 5779 break; … … 5776 5782 5777 5783 /* Line 1806 of yacc.c */ 5778 #line 79 4"parser.yy"5784 #line 793 "parser.yy" 5779 5785 { (yyval.en) = new ExpressionNode( build_range( (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 5780 5786 break; … … 5783 5789 5784 5790 /* Line 1806 of yacc.c */ 5785 #line 79 9"parser.yy"5791 #line 798 "parser.yy" 5786 5792 { (yyval.sn) = new StatementNode( build_case( (yyvsp[(1) - (1)].en) ) ); } 5787 5793 break; … … 5790 5796 5791 5797 /* Line 1806 of yacc.c */ 5792 #line 80 1"parser.yy"5798 #line 800 "parser.yy" 5793 5799 { (yyval.sn) = (StatementNode *)((yyvsp[(1) - (3)].sn)->set_last( new StatementNode( build_case( (yyvsp[(3) - (3)].en) ) ) ) ); } 5794 5800 break; … … 5797 5803 5798 5804 /* Line 1806 of yacc.c */ 5805 #line 804 "parser.yy" 5806 { (yyval.sn) = (yyvsp[(2) - (3)].sn); } 5807 break; 5808 5809 case 169: 5810 5811 /* Line 1806 of yacc.c */ 5799 5812 #line 805 "parser.yy" 5800 { (yyval.sn) = (yyvsp[(2) - (3)].sn); }5801 break;5802 5803 case 169:5804 5805 /* Line 1806 of yacc.c */5806 #line 806 "parser.yy"5807 5813 { (yyval.sn) = new StatementNode( build_default() ); } 5808 5814 break; … … 5811 5817 5812 5818 /* Line 1806 of yacc.c */ 5813 #line 81 2"parser.yy"5819 #line 811 "parser.yy" 5814 5820 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (2)].sn)->set_last( (yyvsp[(2) - (2)].sn) )); } 5815 5821 break; … … 5818 5824 5819 5825 /* Line 1806 of yacc.c */ 5820 #line 81 6"parser.yy"5826 #line 815 "parser.yy" 5821 5827 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( new StatementNode( build_compound( (yyvsp[(2) - (2)].sn) ) ) ); } 5822 5828 break; … … 5825 5831 5826 5832 /* Line 1806 of yacc.c */ 5827 #line 82 1"parser.yy"5833 #line 820 "parser.yy" 5828 5834 { (yyval.sn) = nullptr; } 5829 5835 break; … … 5832 5838 5833 5839 /* Line 1806 of yacc.c */ 5834 #line 82 7"parser.yy"5840 #line 826 "parser.yy" 5835 5841 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( new StatementNode( build_compound( (yyvsp[(2) - (2)].sn) ) ) ); } 5836 5842 break; … … 5839 5845 5840 5846 /* Line 1806 of yacc.c */ 5841 #line 82 9"parser.yy"5847 #line 828 "parser.yy" 5842 5848 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (3)].sn)->set_last( (yyvsp[(2) - (3)].sn)->append_last_case( new StatementNode( build_compound( (yyvsp[(3) - (3)].sn) ) ) ) ) ); } 5843 5849 break; … … 5846 5852 5847 5853 /* Line 1806 of yacc.c */ 5848 #line 83 4"parser.yy"5854 #line 833 "parser.yy" 5849 5855 { (yyval.sn) = nullptr; } 5850 5856 break; … … 5853 5859 5854 5860 /* Line 1806 of yacc.c */ 5855 #line 8 40"parser.yy"5861 #line 839 "parser.yy" 5856 5862 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); } 5857 5863 break; … … 5860 5866 5861 5867 /* Line 1806 of yacc.c */ 5862 #line 84 2"parser.yy"5868 #line 841 "parser.yy" 5863 5869 { (yyval.sn) = (yyvsp[(1) - (3)].sn)->append_last_case( new StatementNode( build_compound( (StatementNode *)(yyvsp[(2) - (3)].sn)->set_last( (yyvsp[(3) - (3)].sn) ) ) ) ); } 5864 5870 break; … … 5867 5873 5868 5874 /* Line 1806 of yacc.c */ 5869 #line 84 4"parser.yy"5875 #line 843 "parser.yy" 5870 5876 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (3)].sn)->set_last( (yyvsp[(2) - (3)].sn)->append_last_case( (yyvsp[(3) - (3)].sn) ))); } 5871 5877 break; … … 5874 5880 5875 5881 /* Line 1806 of yacc.c */ 5876 #line 84 6"parser.yy"5882 #line 845 "parser.yy" 5877 5883 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (4)].sn)->set_last( (yyvsp[(2) - (4)].sn)->append_last_case( new StatementNode( build_compound( (StatementNode *)(yyvsp[(3) - (4)].sn)->set_last( (yyvsp[(4) - (4)].sn) ) ) ) ) ) ); } 5878 5884 break; … … 5881 5887 5882 5888 /* Line 1806 of yacc.c */ 5883 #line 85 1"parser.yy"5889 #line 850 "parser.yy" 5884 5890 { (yyval.sn) = new StatementNode( build_branch( BranchStmt::Break ) ); } 5885 5891 break; … … 5888 5894 5889 5895 /* Line 1806 of yacc.c */ 5890 #line 85 7"parser.yy"5896 #line 856 "parser.yy" 5891 5897 { (yyval.sn) = nullptr; } 5892 5898 break; … … 5895 5901 5896 5902 /* Line 1806 of yacc.c */ 5897 #line 85 9"parser.yy"5903 #line 858 "parser.yy" 5898 5904 { (yyval.sn) = nullptr; } 5899 5905 break; … … 5902 5908 5903 5909 /* Line 1806 of yacc.c */ 5904 #line 86 4"parser.yy"5910 #line 863 "parser.yy" 5905 5911 { (yyval.sn) = new StatementNode( build_while( (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ) ); } 5906 5912 break; … … 5909 5915 5910 5916 /* Line 1806 of yacc.c */ 5911 #line 86 6"parser.yy"5917 #line 865 "parser.yy" 5912 5918 { (yyval.sn) = new StatementNode( build_while( (yyvsp[(5) - (7)].en), (yyvsp[(2) - (7)].sn), true ) ); } 5913 5919 break; … … 5916 5922 5917 5923 /* Line 1806 of yacc.c */ 5918 #line 86 8"parser.yy"5924 #line 867 "parser.yy" 5919 5925 { (yyval.sn) = new StatementNode( build_for( (yyvsp[(4) - (6)].fctl), (yyvsp[(6) - (6)].sn) ) ); } 5920 5926 break; … … 5923 5929 5924 5930 /* Line 1806 of yacc.c */ 5925 #line 87 3"parser.yy"5931 #line 872 "parser.yy" 5926 5932 { (yyval.fctl) = new ForCtl( (yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].en) ); } 5927 5933 break; … … 5930 5936 5931 5937 /* Line 1806 of yacc.c */ 5932 #line 87 5"parser.yy"5938 #line 874 "parser.yy" 5933 5939 { (yyval.fctl) = new ForCtl( (yyvsp[(1) - (4)].decl), (yyvsp[(2) - (4)].en), (yyvsp[(4) - (4)].en) ); } 5934 5940 break; … … 5937 5943 5938 5944 /* Line 1806 of yacc.c */ 5939 #line 8 80"parser.yy"5945 #line 879 "parser.yy" 5940 5946 { (yyval.sn) = new StatementNode( build_branch( (yyvsp[(2) - (3)].tok), BranchStmt::Goto ) ); } 5941 5947 break; … … 5944 5950 5945 5951 /* Line 1806 of yacc.c */ 5946 #line 88 4"parser.yy"5952 #line 883 "parser.yy" 5947 5953 { (yyval.sn) = new StatementNode( build_computedgoto( (yyvsp[(3) - (4)].en) ) ); } 5948 5954 break; … … 5951 5957 5952 5958 /* Line 1806 of yacc.c */ 5953 #line 88 7"parser.yy"5959 #line 886 "parser.yy" 5954 5960 { (yyval.sn) = new StatementNode( build_branch( BranchStmt::Continue ) ); } 5955 5961 break; … … 5958 5964 5959 5965 /* Line 1806 of yacc.c */ 5960 #line 89 1"parser.yy"5966 #line 890 "parser.yy" 5961 5967 { (yyval.sn) = new StatementNode( build_branch( (yyvsp[(2) - (3)].tok), BranchStmt::Continue ) ); } 5962 5968 break; … … 5965 5971 5966 5972 /* Line 1806 of yacc.c */ 5967 #line 89 4"parser.yy"5973 #line 893 "parser.yy" 5968 5974 { (yyval.sn) = new StatementNode( build_branch( BranchStmt::Break ) ); } 5969 5975 break; … … 5972 5978 5973 5979 /* Line 1806 of yacc.c */ 5974 #line 89 8"parser.yy"5980 #line 897 "parser.yy" 5975 5981 { (yyval.sn) = new StatementNode( build_branch( (yyvsp[(2) - (3)].tok), BranchStmt::Break ) ); } 5976 5982 break; … … 5979 5985 5980 5986 /* Line 1806 of yacc.c */ 5981 #line 900"parser.yy"5987 #line 899 "parser.yy" 5982 5988 { (yyval.sn) = new StatementNode( build_return( (yyvsp[(2) - (3)].en) ) ); } 5983 5989 break; … … 5986 5992 5987 5993 /* Line 1806 of yacc.c */ 5988 #line 90 2"parser.yy"5994 #line 901 "parser.yy" 5989 5995 { (yyval.sn) = new StatementNode( build_throw( (yyvsp[(2) - (3)].en) ) ); } 5990 5996 break; … … 5993 5999 5994 6000 /* Line 1806 of yacc.c */ 5995 #line 90 4"parser.yy"6001 #line 903 "parser.yy" 5996 6002 { (yyval.sn) = new StatementNode( build_throw( (yyvsp[(2) - (3)].en) ) ); } 5997 6003 break; … … 6000 6006 6001 6007 /* Line 1806 of yacc.c */ 6002 #line 90 6"parser.yy"6008 #line 905 "parser.yy" 6003 6009 { (yyval.sn) = new StatementNode( build_throw( (yyvsp[(2) - (5)].en) ) ); } 6004 6010 break; … … 6007 6013 6008 6014 /* Line 1806 of yacc.c */ 6009 #line 91 1"parser.yy"6015 #line 910 "parser.yy" 6010 6016 { (yyval.sn) = new StatementNode( build_try( (yyvsp[(2) - (3)].sn), (yyvsp[(3) - (3)].sn), 0 ) ); } 6011 6017 break; … … 6014 6020 6015 6021 /* Line 1806 of yacc.c */ 6016 #line 91 3"parser.yy"6022 #line 912 "parser.yy" 6017 6023 { (yyval.sn) = new StatementNode( build_try( (yyvsp[(2) - (3)].sn), 0, (yyvsp[(3) - (3)].sn) ) ); } 6018 6024 break; … … 6021 6027 6022 6028 /* Line 1806 of yacc.c */ 6023 #line 91 5"parser.yy"6029 #line 914 "parser.yy" 6024 6030 { (yyval.sn) = new StatementNode( build_try( (yyvsp[(2) - (4)].sn), (yyvsp[(3) - (4)].sn), (yyvsp[(4) - (4)].sn) ) ); } 6025 6031 break; … … 6028 6034 6029 6035 /* Line 1806 of yacc.c */ 6030 #line 92 2"parser.yy"6036 #line 921 "parser.yy" 6031 6037 { (yyval.sn) = new StatementNode( build_catch( 0, (yyvsp[(5) - (5)].sn), true ) ); } 6032 6038 break; … … 6035 6041 6036 6042 /* Line 1806 of yacc.c */ 6037 #line 92 4"parser.yy"6043 #line 923 "parser.yy" 6038 6044 { (yyval.sn) = (StatementNode *)(yyvsp[(1) - (6)].sn)->set_last( new StatementNode( build_catch( 0, (yyvsp[(6) - (6)].sn), true ) ) ); } 6039 6045 break; … … 6042 6048 6043 6049 /* Line 1806 of yacc.c */ 6044 #line 92 6"parser.yy"6050 #line 925 "parser.yy" 6045 6051 { (yyval.sn) = new StatementNode( build_catch( 0, (yyvsp[(5) - (5)].sn), true ) ); } 6046 6052 break; … … 6049 6055 6050 6056 /* Line 1806 of yacc.c */ 6051 #line 92 8"parser.yy"6057 #line 927 "parser.yy" 6052 6058 { (yyval.sn) = (StatementNode *)(yyvsp[(1) - (6)].sn)->set_last( new StatementNode( build_catch( 0, (yyvsp[(6) - (6)].sn), true ) ) ); } 6053 6059 break; … … 6056 6062 6057 6063 /* Line 1806 of yacc.c */ 6058 #line 93 3"parser.yy"6064 #line 932 "parser.yy" 6059 6065 { (yyval.sn) = new StatementNode( build_catch( (yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn) ) ); } 6060 6066 break; … … 6063 6069 6064 6070 /* Line 1806 of yacc.c */ 6065 #line 93 5"parser.yy"6071 #line 934 "parser.yy" 6066 6072 { (yyval.sn) = (StatementNode *)(yyvsp[(1) - (10)].sn)->set_last( new StatementNode( build_catch( (yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn) ) ) ); } 6067 6073 break; … … 6070 6076 6071 6077 /* Line 1806 of yacc.c */ 6072 #line 93 7"parser.yy"6078 #line 936 "parser.yy" 6073 6079 { (yyval.sn) = new StatementNode( build_catch( (yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn) ) ); } 6074 6080 break; … … 6077 6083 6078 6084 /* Line 1806 of yacc.c */ 6079 #line 93 9"parser.yy"6085 #line 938 "parser.yy" 6080 6086 { (yyval.sn) = (StatementNode *)(yyvsp[(1) - (10)].sn)->set_last( new StatementNode( build_catch( (yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn) ) ) ); } 6081 6087 break; … … 6084 6090 6085 6091 /* Line 1806 of yacc.c */ 6086 #line 94 4"parser.yy"6092 #line 943 "parser.yy" 6087 6093 { 6088 6094 (yyval.sn) = new StatementNode( build_finally( (yyvsp[(2) - (2)].sn) ) ); … … 6093 6099 6094 6100 /* Line 1806 of yacc.c */ 6095 #line 95 7"parser.yy"6101 #line 956 "parser.yy" 6096 6102 { 6097 6103 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6103 6109 6104 6110 /* Line 1806 of yacc.c */ 6105 #line 96 2"parser.yy"6111 #line 961 "parser.yy" 6106 6112 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 6107 6113 break; … … 6110 6116 6111 6117 /* Line 1806 of yacc.c */ 6112 #line 96 4"parser.yy"6118 #line 963 "parser.yy" 6113 6119 { 6114 6120 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6120 6126 6121 6127 /* Line 1806 of yacc.c */ 6122 #line 97 3"parser.yy"6128 #line 972 "parser.yy" 6123 6129 { (yyval.sn) = new StatementNode( build_asmstmt( (yyvsp[(2) - (6)].flag), (yyvsp[(4) - (6)].constant), 0 ) ); } 6124 6130 break; … … 6127 6133 6128 6134 /* Line 1806 of yacc.c */ 6129 #line 97 5"parser.yy"6135 #line 974 "parser.yy" 6130 6136 { (yyval.sn) = new StatementNode( build_asmstmt( (yyvsp[(2) - (8)].flag), (yyvsp[(4) - (8)].constant), (yyvsp[(6) - (8)].en) ) ); } 6131 6137 break; … … 6134 6140 6135 6141 /* Line 1806 of yacc.c */ 6136 #line 97 7"parser.yy"6142 #line 976 "parser.yy" 6137 6143 { (yyval.sn) = new StatementNode( build_asmstmt( (yyvsp[(2) - (10)].flag), (yyvsp[(4) - (10)].constant), (yyvsp[(6) - (10)].en), (yyvsp[(8) - (10)].en) ) ); } 6138 6144 break; … … 6141 6147 6142 6148 /* Line 1806 of yacc.c */ 6143 #line 97 9"parser.yy"6149 #line 978 "parser.yy" 6144 6150 { (yyval.sn) = new StatementNode( build_asmstmt( (yyvsp[(2) - (12)].flag), (yyvsp[(4) - (12)].constant), (yyvsp[(6) - (12)].en), (yyvsp[(8) - (12)].en), (yyvsp[(10) - (12)].en) ) ); } 6145 6151 break; … … 6148 6154 6149 6155 /* Line 1806 of yacc.c */ 6150 #line 98 1"parser.yy"6156 #line 980 "parser.yy" 6151 6157 { (yyval.sn) = new StatementNode( build_asmstmt( (yyvsp[(2) - (14)].flag), (yyvsp[(5) - (14)].constant), 0, (yyvsp[(8) - (14)].en), (yyvsp[(10) - (14)].en), (yyvsp[(12) - (14)].label) ) ); } 6152 6158 break; … … 6155 6161 6156 6162 /* Line 1806 of yacc.c */ 6157 #line 98 6"parser.yy"6163 #line 985 "parser.yy" 6158 6164 { (yyval.flag) = false; } 6159 6165 break; … … 6162 6168 6163 6169 /* Line 1806 of yacc.c */ 6164 #line 98 8"parser.yy"6170 #line 987 "parser.yy" 6165 6171 { (yyval.flag) = true; } 6166 6172 break; … … 6169 6175 6170 6176 /* Line 1806 of yacc.c */ 6171 #line 99 3"parser.yy"6177 #line 992 "parser.yy" 6172 6178 { (yyval.en) = nullptr; } 6173 6179 break; … … 6176 6182 6177 6183 /* Line 1806 of yacc.c */ 6178 #line 1000"parser.yy"6184 #line 999 "parser.yy" 6179 6185 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_last( (yyvsp[(3) - (3)].en) ); } 6180 6186 break; … … 6183 6189 6184 6190 /* Line 1806 of yacc.c */ 6185 #line 100 5"parser.yy"6191 #line 1004 "parser.yy" 6186 6192 { (yyval.en) = new ExpressionNode( build_asmexpr( 0, (yyvsp[(1) - (4)].constant), (yyvsp[(3) - (4)].en) ) ); } 6187 6193 break; … … 6190 6196 6191 6197 /* Line 1806 of yacc.c */ 6192 #line 100 7"parser.yy"6198 #line 1006 "parser.yy" 6193 6199 { (yyval.en) = new ExpressionNode( build_asmexpr( (yyvsp[(2) - (7)].en), (yyvsp[(4) - (7)].constant), (yyvsp[(6) - (7)].en) ) ); } 6194 6200 break; … … 6197 6203 6198 6204 /* Line 1806 of yacc.c */ 6199 #line 101 2"parser.yy"6205 #line 1011 "parser.yy" 6200 6206 { (yyval.en) = nullptr; } 6201 6207 break; … … 6204 6210 6205 6211 /* Line 1806 of yacc.c */ 6206 #line 101 4"parser.yy"6212 #line 1013 "parser.yy" 6207 6213 { (yyval.en) = new ExpressionNode( (yyvsp[(1) - (1)].constant) ); } 6208 6214 break; … … 6211 6217 6212 6218 /* Line 1806 of yacc.c */ 6213 #line 101 7"parser.yy"6219 #line 1016 "parser.yy" 6214 6220 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_last( new ExpressionNode( (yyvsp[(3) - (3)].constant) ) ); } 6215 6221 break; … … 6218 6224 6219 6225 /* Line 1806 of yacc.c */ 6220 #line 102 2"parser.yy"6226 #line 1021 "parser.yy" 6221 6227 { 6222 6228 (yyval.label) = new LabelNode(); (yyval.label)->labels.push_back( *(yyvsp[(1) - (1)].tok) ); … … 6228 6234 6229 6235 /* Line 1806 of yacc.c */ 6230 #line 102 7"parser.yy"6236 #line 1026 "parser.yy" 6231 6237 { 6232 6238 (yyval.label) = (yyvsp[(1) - (3)].label); (yyvsp[(1) - (3)].label)->labels.push_back( *(yyvsp[(3) - (3)].tok) ); … … 6238 6244 6239 6245 /* Line 1806 of yacc.c */ 6240 #line 103 7"parser.yy"6246 #line 1036 "parser.yy" 6241 6247 { (yyval.decl) = nullptr; } 6242 6248 break; … … 6245 6251 6246 6252 /* Line 1806 of yacc.c */ 6247 #line 104 4"parser.yy"6253 #line 1043 "parser.yy" 6248 6254 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 6249 6255 break; … … 6252 6258 6253 6259 /* Line 1806 of yacc.c */ 6254 #line 104 9"parser.yy"6260 #line 1048 "parser.yy" 6255 6261 { (yyval.decl) = nullptr; } 6256 6262 break; … … 6259 6265 6260 6266 /* Line 1806 of yacc.c */ 6261 #line 105 6"parser.yy"6267 #line 1055 "parser.yy" 6262 6268 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 6263 6269 break; 6264 6270 6265 6271 case 250: 6272 6273 /* Line 1806 of yacc.c */ 6274 #line 1069 "parser.yy" 6275 {} 6276 break; 6277 6278 case 251: 6266 6279 6267 6280 /* Line 1806 of yacc.c */ … … 6270 6283 break; 6271 6284 6272 case 251:6273 6274 /* Line 1806 of yacc.c */6275 #line 1071 "parser.yy"6276 {}6277 break;6278 6279 6285 case 259: 6280 6286 6281 6287 /* Line 1806 of yacc.c */ 6282 #line 1 100"parser.yy"6288 #line 1099 "parser.yy" 6283 6289 { 6284 6290 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6290 6296 6291 6297 /* Line 1806 of yacc.c */ 6292 #line 110 7"parser.yy"6298 #line 1106 "parser.yy" 6293 6299 { 6294 6300 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6300 6306 6301 6307 /* Line 1806 of yacc.c */ 6302 #line 111 2"parser.yy"6308 #line 1111 "parser.yy" 6303 6309 { 6304 6310 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (6)].tok), TypedefTable::ID ); … … 6310 6316 6311 6317 /* Line 1806 of yacc.c */ 6312 #line 112 2"parser.yy"6318 #line 1121 "parser.yy" 6313 6319 { 6314 6320 typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) ); … … 6320 6326 6321 6327 /* Line 1806 of yacc.c */ 6322 #line 112 7"parser.yy"6328 #line 1126 "parser.yy" 6323 6329 { 6324 6330 typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) ); … … 6330 6336 6331 6337 /* Line 1806 of yacc.c */ 6332 #line 113 2"parser.yy"6338 #line 1131 "parser.yy" 6333 6339 { 6334 6340 typedefTable.setNextIdentifier( *(yyvsp[(3) - (4)].tok) ); … … 6340 6346 6341 6347 /* Line 1806 of yacc.c */ 6342 #line 11 40"parser.yy"6348 #line 1139 "parser.yy" 6343 6349 { 6344 6350 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6350 6356 6351 6357 /* Line 1806 of yacc.c */ 6352 #line 114 5"parser.yy"6358 #line 1144 "parser.yy" 6353 6359 { 6354 6360 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6360 6366 6361 6367 /* Line 1806 of yacc.c */ 6362 #line 11 50"parser.yy"6368 #line 1149 "parser.yy" 6363 6369 { 6364 6370 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6370 6376 6371 6377 /* Line 1806 of yacc.c */ 6372 #line 115 5"parser.yy"6378 #line 1154 "parser.yy" 6373 6379 { 6374 6380 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6380 6386 6381 6387 /* Line 1806 of yacc.c */ 6382 #line 11 60"parser.yy"6388 #line 1159 "parser.yy" 6383 6389 { 6384 6390 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::ID ); … … 6390 6396 6391 6397 /* Line 1806 of yacc.c */ 6392 #line 119 1"parser.yy"6398 #line 1190 "parser.yy" 6393 6399 { 6394 6400 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true ); … … 6399 6405 6400 6406 /* Line 1806 of yacc.c */ 6401 #line 119 5"parser.yy"6407 #line 1194 "parser.yy" 6402 6408 { 6403 6409 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true ); … … 6408 6414 6409 6415 /* Line 1806 of yacc.c */ 6410 #line 120 2"parser.yy"6416 #line 1201 "parser.yy" 6411 6417 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); } 6412 6418 break; … … 6415 6421 6416 6422 /* Line 1806 of yacc.c */ 6417 #line 120 6"parser.yy"6423 #line 1205 "parser.yy" 6418 6424 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (9)].decl)->appendList( (yyvsp[(7) - (9)].decl) ) ); } 6419 6425 break; … … 6422 6428 6423 6429 /* Line 1806 of yacc.c */ 6424 #line 121 1"parser.yy"6430 #line 1210 "parser.yy" 6425 6431 { 6426 6432 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6432 6438 6433 6439 /* Line 1806 of yacc.c */ 6434 #line 121 6"parser.yy"6440 #line 1215 "parser.yy" 6435 6441 { 6436 6442 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6442 6448 6443 6449 /* Line 1806 of yacc.c */ 6444 #line 122 1"parser.yy"6450 #line 1220 "parser.yy" 6445 6451 { 6446 6452 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::TD ); … … 6452 6458 6453 6459 /* Line 1806 of yacc.c */ 6454 #line 123 2"parser.yy"6460 #line 1231 "parser.yy" 6455 6461 { 6456 6462 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6462 6468 6463 6469 /* Line 1806 of yacc.c */ 6464 #line 123 7"parser.yy"6470 #line 1236 "parser.yy" 6465 6471 { 6466 6472 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6472 6478 6473 6479 /* Line 1806 of yacc.c */ 6474 #line 124 2"parser.yy"6480 #line 1241 "parser.yy" 6475 6481 { 6476 6482 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6482 6488 6483 6489 /* Line 1806 of yacc.c */ 6484 #line 124 7"parser.yy"6490 #line 1246 "parser.yy" 6485 6491 { 6486 6492 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6492 6498 6493 6499 /* Line 1806 of yacc.c */ 6494 #line 125 2"parser.yy"6500 #line 1251 "parser.yy" 6495 6501 { 6496 6502 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6502 6508 6503 6509 /* Line 1806 of yacc.c */ 6504 #line 126 1"parser.yy"6510 #line 1260 "parser.yy" 6505 6511 { 6506 6512 typedefTable.addToEnclosingScope( *(yyvsp[(2) - (4)].tok), TypedefTable::TD ); … … 6512 6518 6513 6519 /* Line 1806 of yacc.c */ 6514 #line 126 6"parser.yy"6520 #line 1265 "parser.yy" 6515 6521 { 6516 6522 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (7)].tok), TypedefTable::TD ); … … 6522 6528 6523 6529 /* Line 1806 of yacc.c */ 6524 #line 128 3"parser.yy"6530 #line 1282 "parser.yy" 6525 6531 { 6526 6532 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6532 6538 6533 6539 /* Line 1806 of yacc.c */ 6534 #line 128 8"parser.yy"6540 #line 1287 "parser.yy" 6535 6541 { 6536 6542 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6542 6548 6543 6549 /* Line 1806 of yacc.c */ 6544 #line 13 10"parser.yy"6550 #line 1309 "parser.yy" 6545 6551 { (yyval.decl) = nullptr; } 6546 6552 break; … … 6549 6555 6550 6556 /* Line 1806 of yacc.c */ 6551 #line 132 2"parser.yy"6557 #line 1321 "parser.yy" 6552 6558 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6553 6559 break; … … 6556 6562 6557 6563 /* Line 1806 of yacc.c */ 6564 #line 1331 "parser.yy" 6565 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Const ); } 6566 break; 6567 6568 case 305: 6569 6570 /* Line 1806 of yacc.c */ 6558 6571 #line 1333 "parser.yy" 6559 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode:: Const ); }6560 break; 6561 6562 case 30 5:6572 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Restrict ); } 6573 break; 6574 6575 case 306: 6563 6576 6564 6577 /* Line 1806 of yacc.c */ 6565 6578 #line 1335 "parser.yy" 6566 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode:: Restrict); }6567 break; 6568 6569 case 30 6:6579 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Volatile ); } 6580 break; 6581 6582 case 307: 6570 6583 6571 6584 /* Line 1806 of yacc.c */ 6572 6585 #line 1337 "parser.yy" 6573 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode:: Volatile ); }6574 break; 6575 6576 case 30 7:6586 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Lvalue ); } 6587 break; 6588 6589 case 308: 6577 6590 6578 6591 /* Line 1806 of yacc.c */ 6579 6592 #line 1339 "parser.yy" 6580 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode:: Lvalue); }6581 break; 6582 6583 case 30 8:6593 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Atomic ); } 6594 break; 6595 6596 case 309: 6584 6597 6585 6598 /* Line 1806 of yacc.c */ 6586 6599 #line 1341 "parser.yy" 6587 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Atomic ); }6588 break;6589 6590 case 309:6591 6592 /* Line 1806 of yacc.c */6593 #line 1343 "parser.yy"6594 6600 { 6595 6601 typedefTable.enterScope(); … … 6600 6606 6601 6607 /* Line 1806 of yacc.c */ 6602 #line 134 7"parser.yy"6608 #line 1345 "parser.yy" 6603 6609 { 6604 6610 typedefTable.leaveScope(); … … 6610 6616 6611 6617 /* Line 1806 of yacc.c */ 6618 #line 1354 "parser.yy" 6619 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6620 break; 6621 6622 case 313: 6623 6624 /* Line 1806 of yacc.c */ 6612 6625 #line 1356 "parser.yy" 6626 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6627 break; 6628 6629 case 315: 6630 6631 /* Line 1806 of yacc.c */ 6632 #line 1367 "parser.yy" 6613 6633 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6614 6634 break; 6615 6635 6616 case 313: 6617 6618 /* Line 1806 of yacc.c */ 6619 #line 1358 "parser.yy" 6636 case 316: 6637 6638 /* Line 1806 of yacc.c */ 6639 #line 1372 "parser.yy" 6640 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Extern ); } 6641 break; 6642 6643 case 317: 6644 6645 /* Line 1806 of yacc.c */ 6646 #line 1374 "parser.yy" 6647 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Static ); } 6648 break; 6649 6650 case 318: 6651 6652 /* Line 1806 of yacc.c */ 6653 #line 1376 "parser.yy" 6654 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Auto ); } 6655 break; 6656 6657 case 319: 6658 6659 /* Line 1806 of yacc.c */ 6660 #line 1378 "parser.yy" 6661 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Register ); } 6662 break; 6663 6664 case 320: 6665 6666 /* Line 1806 of yacc.c */ 6667 #line 1381 "parser.yy" 6668 { (yyval.decl) = new DeclarationNode; (yyval.decl)->isInline = true; } 6669 break; 6670 6671 case 321: 6672 6673 /* Line 1806 of yacc.c */ 6674 #line 1383 "parser.yy" 6675 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Fortran ); } 6676 break; 6677 6678 case 322: 6679 6680 /* Line 1806 of yacc.c */ 6681 #line 1386 "parser.yy" 6682 { (yyval.decl) = new DeclarationNode; (yyval.decl)->isNoreturn = true; } 6683 break; 6684 6685 case 323: 6686 6687 /* Line 1806 of yacc.c */ 6688 #line 1388 "parser.yy" 6689 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Threadlocal ); } 6690 break; 6691 6692 case 324: 6693 6694 /* Line 1806 of yacc.c */ 6695 #line 1393 "parser.yy" 6696 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Char ); } 6697 break; 6698 6699 case 325: 6700 6701 /* Line 1806 of yacc.c */ 6702 #line 1395 "parser.yy" 6703 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Double ); } 6704 break; 6705 6706 case 326: 6707 6708 /* Line 1806 of yacc.c */ 6709 #line 1397 "parser.yy" 6710 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Float ); } 6711 break; 6712 6713 case 327: 6714 6715 /* Line 1806 of yacc.c */ 6716 #line 1399 "parser.yy" 6717 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Int ); } 6718 break; 6719 6720 case 328: 6721 6722 /* Line 1806 of yacc.c */ 6723 #line 1401 "parser.yy" 6724 { (yyval.decl) = DeclarationNode::newLength( DeclarationNode::Long ); } 6725 break; 6726 6727 case 329: 6728 6729 /* Line 1806 of yacc.c */ 6730 #line 1403 "parser.yy" 6731 { (yyval.decl) = DeclarationNode::newLength( DeclarationNode::Short ); } 6732 break; 6733 6734 case 330: 6735 6736 /* Line 1806 of yacc.c */ 6737 #line 1405 "parser.yy" 6738 { (yyval.decl) = DeclarationNode::newSignedNess( DeclarationNode::Signed ); } 6739 break; 6740 6741 case 331: 6742 6743 /* Line 1806 of yacc.c */ 6744 #line 1407 "parser.yy" 6745 { (yyval.decl) = DeclarationNode::newSignedNess( DeclarationNode::Unsigned ); } 6746 break; 6747 6748 case 332: 6749 6750 /* Line 1806 of yacc.c */ 6751 #line 1409 "parser.yy" 6752 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Void ); } 6753 break; 6754 6755 case 333: 6756 6757 /* Line 1806 of yacc.c */ 6758 #line 1411 "parser.yy" 6759 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Bool ); } 6760 break; 6761 6762 case 334: 6763 6764 /* Line 1806 of yacc.c */ 6765 #line 1413 "parser.yy" 6766 { (yyval.decl) = DeclarationNode::newComplexType( DeclarationNode::Complex ); } 6767 break; 6768 6769 case 335: 6770 6771 /* Line 1806 of yacc.c */ 6772 #line 1415 "parser.yy" 6773 { (yyval.decl) = DeclarationNode::newComplexType( DeclarationNode::Imaginary ); } 6774 break; 6775 6776 case 336: 6777 6778 /* Line 1806 of yacc.c */ 6779 #line 1417 "parser.yy" 6780 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::Valist ); } 6781 break; 6782 6783 case 337: 6784 6785 /* Line 1806 of yacc.c */ 6786 #line 1419 "parser.yy" 6787 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::Zero ); } 6788 break; 6789 6790 case 338: 6791 6792 /* Line 1806 of yacc.c */ 6793 #line 1421 "parser.yy" 6794 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::One ); } 6795 break; 6796 6797 case 340: 6798 6799 /* Line 1806 of yacc.c */ 6800 #line 1428 "parser.yy" 6801 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6802 break; 6803 6804 case 341: 6805 6806 /* Line 1806 of yacc.c */ 6807 #line 1430 "parser.yy" 6808 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6809 break; 6810 6811 case 342: 6812 6813 /* Line 1806 of yacc.c */ 6814 #line 1432 "parser.yy" 6620 6815 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6621 6816 break; 6622 6817 6623 case 315: 6624 6625 /* Line 1806 of yacc.c */ 6626 #line 1369 "parser.yy" 6818 case 343: 6819 6820 /* Line 1806 of yacc.c */ 6821 #line 1434 "parser.yy" 6822 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addType( (yyvsp[(1) - (3)].decl) ); } 6823 break; 6824 6825 case 345: 6826 6827 /* Line 1806 of yacc.c */ 6828 #line 1440 "parser.yy" 6829 { (yyval.decl) = (yyvsp[(2) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6830 break; 6831 6832 case 347: 6833 6834 /* Line 1806 of yacc.c */ 6835 #line 1447 "parser.yy" 6836 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6837 break; 6838 6839 case 348: 6840 6841 /* Line 1806 of yacc.c */ 6842 #line 1449 "parser.yy" 6627 6843 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6628 6844 break; 6629 6845 6630 case 316: 6631 6632 /* Line 1806 of yacc.c */ 6633 #line 1374 "parser.yy" 6634 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Extern ); } 6635 break; 6636 6637 case 317: 6638 6639 /* Line 1806 of yacc.c */ 6640 #line 1376 "parser.yy" 6641 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Static ); } 6642 break; 6643 6644 case 318: 6645 6646 /* Line 1806 of yacc.c */ 6647 #line 1378 "parser.yy" 6648 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Auto ); } 6649 break; 6650 6651 case 319: 6652 6653 /* Line 1806 of yacc.c */ 6654 #line 1380 "parser.yy" 6655 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Register ); } 6656 break; 6657 6658 case 320: 6659 6660 /* Line 1806 of yacc.c */ 6661 #line 1383 "parser.yy" 6662 { (yyval.decl) = new DeclarationNode; (yyval.decl)->isInline = true; } 6663 break; 6664 6665 case 321: 6666 6667 /* Line 1806 of yacc.c */ 6668 #line 1385 "parser.yy" 6669 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Fortran ); } 6670 break; 6671 6672 case 322: 6673 6674 /* Line 1806 of yacc.c */ 6675 #line 1388 "parser.yy" 6676 { (yyval.decl) = new DeclarationNode; (yyval.decl)->isNoreturn = true; } 6677 break; 6678 6679 case 323: 6680 6681 /* Line 1806 of yacc.c */ 6682 #line 1390 "parser.yy" 6683 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Threadlocal ); } 6684 break; 6685 6686 case 324: 6687 6688 /* Line 1806 of yacc.c */ 6689 #line 1395 "parser.yy" 6690 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Char ); } 6691 break; 6692 6693 case 325: 6694 6695 /* Line 1806 of yacc.c */ 6696 #line 1397 "parser.yy" 6697 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Double ); } 6698 break; 6699 6700 case 326: 6701 6702 /* Line 1806 of yacc.c */ 6703 #line 1399 "parser.yy" 6704 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Float ); } 6705 break; 6706 6707 case 327: 6708 6709 /* Line 1806 of yacc.c */ 6710 #line 1401 "parser.yy" 6711 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Int ); } 6712 break; 6713 6714 case 328: 6715 6716 /* Line 1806 of yacc.c */ 6717 #line 1403 "parser.yy" 6718 { (yyval.decl) = DeclarationNode::newLength( DeclarationNode::Long ); } 6719 break; 6720 6721 case 329: 6722 6723 /* Line 1806 of yacc.c */ 6724 #line 1405 "parser.yy" 6725 { (yyval.decl) = DeclarationNode::newLength( DeclarationNode::Short ); } 6726 break; 6727 6728 case 330: 6729 6730 /* Line 1806 of yacc.c */ 6731 #line 1407 "parser.yy" 6732 { (yyval.decl) = DeclarationNode::newSignedNess( DeclarationNode::Signed ); } 6733 break; 6734 6735 case 331: 6736 6737 /* Line 1806 of yacc.c */ 6738 #line 1409 "parser.yy" 6739 { (yyval.decl) = DeclarationNode::newSignedNess( DeclarationNode::Unsigned ); } 6740 break; 6741 6742 case 332: 6743 6744 /* Line 1806 of yacc.c */ 6745 #line 1411 "parser.yy" 6746 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Void ); } 6747 break; 6748 6749 case 333: 6750 6751 /* Line 1806 of yacc.c */ 6752 #line 1413 "parser.yy" 6753 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Bool ); } 6754 break; 6755 6756 case 334: 6757 6758 /* Line 1806 of yacc.c */ 6759 #line 1415 "parser.yy" 6760 { (yyval.decl) = DeclarationNode::newComplexType( DeclarationNode::Complex ); } 6761 break; 6762 6763 case 335: 6764 6765 /* Line 1806 of yacc.c */ 6766 #line 1417 "parser.yy" 6767 { (yyval.decl) = DeclarationNode::newComplexType( DeclarationNode::Imaginary ); } 6768 break; 6769 6770 case 336: 6771 6772 /* Line 1806 of yacc.c */ 6773 #line 1419 "parser.yy" 6774 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::Valist ); } 6775 break; 6776 6777 case 337: 6778 6779 /* Line 1806 of yacc.c */ 6780 #line 1421 "parser.yy" 6781 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::Zero ); } 6782 break; 6783 6784 case 338: 6785 6786 /* Line 1806 of yacc.c */ 6787 #line 1423 "parser.yy" 6788 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::One ); } 6789 break; 6790 6791 case 340: 6792 6793 /* Line 1806 of yacc.c */ 6794 #line 1430 "parser.yy" 6846 case 349: 6847 6848 /* Line 1806 of yacc.c */ 6849 #line 1451 "parser.yy" 6850 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addType( (yyvsp[(2) - (2)].decl) ); } 6851 break; 6852 6853 case 350: 6854 6855 /* Line 1806 of yacc.c */ 6856 #line 1456 "parser.yy" 6857 { (yyval.decl) = (yyvsp[(3) - (4)].decl); } 6858 break; 6859 6860 case 351: 6861 6862 /* Line 1806 of yacc.c */ 6863 #line 1458 "parser.yy" 6864 { (yyval.decl) = DeclarationNode::newTypeof( (yyvsp[(3) - (4)].en) ); } 6865 break; 6866 6867 case 352: 6868 6869 /* Line 1806 of yacc.c */ 6870 #line 1460 "parser.yy" 6871 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].decl) ); } 6872 break; 6873 6874 case 353: 6875 6876 /* Line 1806 of yacc.c */ 6877 #line 1462 "parser.yy" 6878 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 6879 break; 6880 6881 case 355: 6882 6883 /* Line 1806 of yacc.c */ 6884 #line 1468 "parser.yy" 6795 6885 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6796 6886 break; 6797 6887 6798 case 3 41:6799 6800 /* Line 1806 of yacc.c */ 6801 #line 14 32"parser.yy"6888 case 356: 6889 6890 /* Line 1806 of yacc.c */ 6891 #line 1470 "parser.yy" 6802 6892 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6803 6893 break; 6804 6894 6805 case 3 42:6806 6807 /* Line 1806 of yacc.c */ 6808 #line 14 34"parser.yy"6895 case 357: 6896 6897 /* Line 1806 of yacc.c */ 6898 #line 1472 "parser.yy" 6809 6899 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6810 6900 break; 6811 6901 6812 case 343: 6813 6814 /* Line 1806 of yacc.c */ 6815 #line 1436 "parser.yy" 6816 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addType( (yyvsp[(1) - (3)].decl) ); } 6817 break; 6818 6819 case 345: 6820 6821 /* Line 1806 of yacc.c */ 6822 #line 1442 "parser.yy" 6823 { (yyval.decl) = (yyvsp[(2) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6824 break; 6825 6826 case 347: 6827 6828 /* Line 1806 of yacc.c */ 6829 #line 1449 "parser.yy" 6902 case 359: 6903 6904 /* Line 1806 of yacc.c */ 6905 #line 1478 "parser.yy" 6830 6906 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6831 6907 break; 6832 6908 6833 case 3 48:6834 6835 /* Line 1806 of yacc.c */ 6836 #line 14 51"parser.yy"6909 case 360: 6910 6911 /* Line 1806 of yacc.c */ 6912 #line 1480 "parser.yy" 6837 6913 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6838 6914 break; 6839 6915 6840 case 349: 6841 6842 /* Line 1806 of yacc.c */ 6843 #line 1453 "parser.yy" 6844 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addType( (yyvsp[(2) - (2)].decl) ); } 6845 break; 6846 6847 case 350: 6848 6849 /* Line 1806 of yacc.c */ 6850 #line 1458 "parser.yy" 6851 { (yyval.decl) = (yyvsp[(3) - (4)].decl); } 6852 break; 6853 6854 case 351: 6855 6856 /* Line 1806 of yacc.c */ 6857 #line 1460 "parser.yy" 6858 { (yyval.decl) = DeclarationNode::newTypeof( (yyvsp[(3) - (4)].en) ); } 6859 break; 6860 6861 case 352: 6862 6863 /* Line 1806 of yacc.c */ 6864 #line 1462 "parser.yy" 6865 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].decl) ); } 6866 break; 6867 6868 case 353: 6869 6870 /* Line 1806 of yacc.c */ 6871 #line 1464 "parser.yy" 6872 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 6873 break; 6874 6875 case 355: 6876 6877 /* Line 1806 of yacc.c */ 6878 #line 1470 "parser.yy" 6916 case 362: 6917 6918 /* Line 1806 of yacc.c */ 6919 #line 1486 "parser.yy" 6879 6920 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6880 6921 break; 6881 6922 6882 case 3 56:6883 6884 /* Line 1806 of yacc.c */ 6885 #line 14 72"parser.yy"6923 case 363: 6924 6925 /* Line 1806 of yacc.c */ 6926 #line 1488 "parser.yy" 6886 6927 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6887 6928 break; 6888 6929 6889 case 3 57:6890 6891 /* Line 1806 of yacc.c */ 6892 #line 14 74"parser.yy"6930 case 364: 6931 6932 /* Line 1806 of yacc.c */ 6933 #line 1490 "parser.yy" 6893 6934 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6894 6935 break; 6895 6936 6896 case 359: 6897 6898 /* Line 1806 of yacc.c */ 6899 #line 1480 "parser.yy" 6900 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6901 break; 6902 6903 case 360: 6904 6905 /* Line 1806 of yacc.c */ 6906 #line 1482 "parser.yy" 6937 case 365: 6938 6939 /* Line 1806 of yacc.c */ 6940 #line 1495 "parser.yy" 6941 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(1) - (1)].tok) ); } 6942 break; 6943 6944 case 366: 6945 6946 /* Line 1806 of yacc.c */ 6947 #line 1497 "parser.yy" 6948 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(2) - (2)].tok) )->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6949 break; 6950 6951 case 367: 6952 6953 /* Line 1806 of yacc.c */ 6954 #line 1499 "parser.yy" 6907 6955 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6908 6956 break; 6909 6957 6910 case 362:6911 6912 /* Line 1806 of yacc.c */6913 #line 1488 "parser.yy"6914 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }6915 break;6916 6917 case 363:6918 6919 /* Line 1806 of yacc.c */6920 #line 1490 "parser.yy"6921 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }6922 break;6923 6924 case 364:6925 6926 /* Line 1806 of yacc.c */6927 #line 1492 "parser.yy"6928 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }6929 break;6930 6931 case 365:6932 6933 /* Line 1806 of yacc.c */6934 #line 1497 "parser.yy"6935 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(1) - (1)].tok) ); }6936 break;6937 6938 case 366:6939 6940 /* Line 1806 of yacc.c */6941 #line 1499 "parser.yy"6942 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(2) - (2)].tok) )->addQualifiers( (yyvsp[(1) - (2)].decl) ); }6943 break;6944 6945 case 367:6946 6947 /* Line 1806 of yacc.c */6948 #line 1501 "parser.yy"6949 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }6950 break;6951 6952 6958 case 370: 6953 6959 6954 6960 /* Line 1806 of yacc.c */ 6961 #line 1509 "parser.yy" 6962 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (4)].aggKey), nullptr, nullptr, (yyvsp[(3) - (4)].decl), true ); } 6963 break; 6964 6965 case 371: 6966 6967 /* Line 1806 of yacc.c */ 6955 6968 #line 1511 "parser.yy" 6956 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (4)].aggKey), nullptr, nullptr, (yyvsp[(3) - (4)].decl), true ); }6957 break;6958 6959 case 371:6960 6961 /* Line 1806 of yacc.c */6962 #line 1513 "parser.yy"6963 6969 { 6964 6970 typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); … … 6970 6976 6971 6977 /* Line 1806 of yacc.c */ 6978 #line 1516 "parser.yy" 6979 { typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); } 6980 break; 6981 6982 case 373: 6983 6984 /* Line 1806 of yacc.c */ 6972 6985 #line 1518 "parser.yy" 6973 { typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok)); }6974 break; 6975 6976 case 37 3:6986 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (6)].aggKey), (yyvsp[(2) - (6)].tok), nullptr, (yyvsp[(5) - (6)].decl), true ); } 6987 break; 6988 6989 case 374: 6977 6990 6978 6991 /* Line 1806 of yacc.c */ 6979 6992 #line 1520 "parser.yy" 6980 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - ( 6)].aggKey), (yyvsp[(2) - (6)].tok), nullptr, (yyvsp[(5) - (6)].decl), true ); }6981 break; 6982 6983 case 37 4:6993 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (7)].aggKey), nullptr, (yyvsp[(3) - (7)].en), (yyvsp[(6) - (7)].decl), false ); } 6994 break; 6995 6996 case 375: 6984 6997 6985 6998 /* Line 1806 of yacc.c */ 6986 6999 #line 1522 "parser.yy" 6987 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (7)].aggKey), nullptr, (yyvsp[(3) - (7)].en), (yyvsp[(6) - (7)].decl), false ); }6988 break;6989 6990 case 375:6991 6992 /* Line 1806 of yacc.c */6993 #line 1524 "parser.yy"6994 7000 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 6995 7001 break; … … 6998 7004 6999 7005 /* Line 1806 of yacc.c */ 7006 #line 1527 "parser.yy" 7007 { (yyval.aggKey) = DeclarationNode::Struct; } 7008 break; 7009 7010 case 377: 7011 7012 /* Line 1806 of yacc.c */ 7000 7013 #line 1529 "parser.yy" 7001 { (yyval.aggKey) = DeclarationNode::Struct; }7002 break;7003 7004 case 377:7005 7006 /* Line 1806 of yacc.c */7007 #line 1531 "parser.yy"7008 7014 { (yyval.aggKey) = DeclarationNode::Union; } 7009 7015 break; … … 7012 7018 7013 7019 /* Line 1806 of yacc.c */ 7020 #line 1534 "parser.yy" 7021 { (yyval.decl) = nullptr; } 7022 break; 7023 7024 case 379: 7025 7026 /* Line 1806 of yacc.c */ 7014 7027 #line 1536 "parser.yy" 7015 { (yyval.decl) = nullptr; }7016 break;7017 7018 case 379:7019 7020 /* Line 1806 of yacc.c */7021 #line 1538 "parser.yy"7022 7028 { (yyval.decl) = (yyvsp[(1) - (2)].decl) ? (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ) : (yyvsp[(2) - (2)].decl); } 7023 7029 break; … … 7026 7032 7027 7033 /* Line 1806 of yacc.c */ 7028 #line 154 4"parser.yy"7034 #line 1542 "parser.yy" 7029 7035 { (yyval.decl) = (yyvsp[(2) - (3)].decl)->set_extension( true ); } 7030 7036 break; … … 7033 7039 7034 7040 /* Line 1806 of yacc.c */ 7035 #line 154 7"parser.yy"7041 #line 1545 "parser.yy" 7036 7042 { // mark all fields in list 7037 7043 for ( DeclarationNode *iter = (yyvsp[(2) - (3)].decl); iter != nullptr; iter = (DeclarationNode *)iter->get_next() ) … … 7044 7050 7045 7051 /* Line 1806 of yacc.c */ 7052 #line 1555 "parser.yy" 7053 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addName( (yyvsp[(2) - (2)].tok) ); } 7054 break; 7055 7056 case 386: 7057 7058 /* Line 1806 of yacc.c */ 7046 7059 #line 1557 "parser.yy" 7047 { (yyval.decl) = (yyvsp[(1) - ( 2)].decl)->addName( (yyvsp[(2) - (2)].tok) ); }7048 break; 7049 7050 case 38 6:7060 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(1) - (3)].decl)->cloneType( (yyvsp[(3) - (3)].tok) ) ); } 7061 break; 7062 7063 case 387: 7051 7064 7052 7065 /* Line 1806 of yacc.c */ 7053 7066 #line 1559 "parser.yy" 7054 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(1) - (3)].decl)->cloneType( (yyvsp[(3) - (3)].tok) ) ); }7055 break;7056 7057 case 387:7058 7059 /* Line 1806 of yacc.c */7060 #line 1561 "parser.yy"7061 7067 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(1) - (2)].decl)->cloneType( 0 ) ); } 7062 7068 break; … … 7065 7071 7066 7072 /* Line 1806 of yacc.c */ 7073 #line 1564 "parser.yy" 7074 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7075 break; 7076 7077 case 389: 7078 7079 /* Line 1806 of yacc.c */ 7067 7080 #line 1566 "parser.yy" 7068 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); }7069 break;7070 7071 case 389:7072 7073 /* Line 1806 of yacc.c */7074 #line 1568 "parser.yy"7075 7081 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(1) - (4)].decl)->cloneBaseType( (yyvsp[(4) - (4)].decl) ) ); } 7076 7082 break; … … 7079 7085 7080 7086 /* Line 1806 of yacc.c */ 7087 #line 1571 "parser.yy" 7088 { (yyval.decl) = DeclarationNode::newName( 0 ); /* XXX */ } 7089 break; 7090 7091 case 391: 7092 7093 /* Line 1806 of yacc.c */ 7081 7094 #line 1573 "parser.yy" 7082 { (yyval.decl) = DeclarationNode::newName( 0 ); /* XXX */ }7083 break;7084 7085 case 391:7086 7087 /* Line 1806 of yacc.c */7088 #line 1575 "parser.yy"7089 7095 { (yyval.decl) = DeclarationNode::newBitfield( (yyvsp[(1) - (1)].en) ); } 7090 7096 break; … … 7093 7099 7094 7100 /* Line 1806 of yacc.c */ 7095 #line 157 8"parser.yy"7101 #line 1576 "parser.yy" 7096 7102 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); } 7097 7103 break; … … 7100 7106 7101 7107 /* Line 1806 of yacc.c */ 7102 #line 15 81"parser.yy"7108 #line 1579 "parser.yy" 7103 7109 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); } 7104 7110 break; … … 7107 7113 7108 7114 /* Line 1806 of yacc.c */ 7115 #line 1585 "parser.yy" 7116 { (yyval.en) = nullptr; } 7117 break; 7118 7119 case 396: 7120 7121 /* Line 1806 of yacc.c */ 7109 7122 #line 1587 "parser.yy" 7110 { (yyval.en) = nullptr; }7111 break;7112 7113 case 396:7114 7115 /* Line 1806 of yacc.c */7116 #line 1589 "parser.yy"7117 7123 { (yyval.en) = (yyvsp[(1) - (1)].en); } 7118 7124 break; … … 7121 7127 7122 7128 /* Line 1806 of yacc.c */ 7123 #line 159 4"parser.yy"7129 #line 1592 "parser.yy" 7124 7130 { (yyval.en) = (yyvsp[(2) - (2)].en); } 7125 7131 break; … … 7128 7134 7129 7135 /* Line 1806 of yacc.c */ 7136 #line 1601 "parser.yy" 7137 { (yyval.decl) = DeclarationNode::newEnum( nullptr, (yyvsp[(3) - (5)].decl) ); } 7138 break; 7139 7140 case 400: 7141 7142 /* Line 1806 of yacc.c */ 7130 7143 #line 1603 "parser.yy" 7131 { (yyval.decl) = DeclarationNode::newEnum( nullptr, (yyvsp[(3) - (5)].decl) ); }7132 break;7133 7134 case 400:7135 7136 /* Line 1806 of yacc.c */7137 #line 1605 "parser.yy"7138 7144 { 7139 7145 typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); … … 7145 7151 7146 7152 /* Line 1806 of yacc.c */ 7153 #line 1608 "parser.yy" 7154 { typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); } 7155 break; 7156 7157 case 402: 7158 7159 /* Line 1806 of yacc.c */ 7147 7160 #line 1610 "parser.yy" 7148 { typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); }7149 break;7150 7151 case 402:7152 7153 /* Line 1806 of yacc.c */7154 #line 1612 "parser.yy"7155 7161 { (yyval.decl) = DeclarationNode::newEnum( (yyvsp[(2) - (7)].tok), (yyvsp[(5) - (7)].decl) ); } 7156 7162 break; … … 7159 7165 7160 7166 /* Line 1806 of yacc.c */ 7167 #line 1615 "parser.yy" 7168 { (yyval.decl) = DeclarationNode::newEnumConstant( (yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].en) ); } 7169 break; 7170 7171 case 404: 7172 7173 /* Line 1806 of yacc.c */ 7161 7174 #line 1617 "parser.yy" 7162 { (yyval.decl) = DeclarationNode::newEnumConstant( (yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].en) ); }7163 break;7164 7165 case 404:7166 7167 /* Line 1806 of yacc.c */7168 #line 1619 "parser.yy"7169 7175 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( DeclarationNode::newEnumConstant( (yyvsp[(3) - (4)].tok), (yyvsp[(4) - (4)].en) ) ); } 7170 7176 break; … … 7173 7179 7174 7180 /* Line 1806 of yacc.c */ 7181 #line 1622 "parser.yy" 7182 { (yyval.en) = nullptr; } 7183 break; 7184 7185 case 406: 7186 7187 /* Line 1806 of yacc.c */ 7175 7188 #line 1624 "parser.yy" 7176 { (yyval.en) = nullptr; }7177 break;7178 7179 case 406:7180 7181 /* Line 1806 of yacc.c */7182 #line 1626 "parser.yy"7183 7189 { (yyval.en) = (yyvsp[(2) - (2)].en); } 7184 7190 break; … … 7187 7193 7188 7194 /* Line 1806 of yacc.c */ 7189 #line 163 3"parser.yy"7195 #line 1631 "parser.yy" 7190 7196 { (yyval.decl) = nullptr; } 7191 7197 break; … … 7194 7200 7195 7201 /* Line 1806 of yacc.c */ 7202 #line 1639 "parser.yy" 7203 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7204 break; 7205 7206 case 412: 7207 7208 /* Line 1806 of yacc.c */ 7196 7209 #line 1641 "parser.yy" 7197 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->a ppendList( (yyvsp[(5) - (5)].decl)); }7198 break; 7199 7200 case 41 2:7210 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7211 break; 7212 7213 case 413: 7201 7214 7202 7215 /* Line 1806 of yacc.c */ … … 7205 7218 break; 7206 7219 7207 case 413:7208 7209 /* Line 1806 of yacc.c */7210 #line 1645 "parser.yy"7211 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); }7212 break;7213 7214 7220 case 415: 7221 7222 /* Line 1806 of yacc.c */ 7223 #line 1651 "parser.yy" 7224 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7225 break; 7226 7227 case 416: 7215 7228 7216 7229 /* Line 1806 of yacc.c */ … … 7219 7232 break; 7220 7233 7221 case 41 6:7234 case 417: 7222 7235 7223 7236 /* Line 1806 of yacc.c */ 7224 7237 #line 1655 "parser.yy" 7238 { (yyval.decl) = (yyvsp[(1) - (9)].decl)->appendList( (yyvsp[(5) - (9)].decl) )->appendList( (yyvsp[(9) - (9)].decl) ); } 7239 break; 7240 7241 case 419: 7242 7243 /* Line 1806 of yacc.c */ 7244 #line 1661 "parser.yy" 7225 7245 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7226 7246 break; 7227 7247 7228 case 417: 7229 7230 /* Line 1806 of yacc.c */ 7231 #line 1657 "parser.yy" 7232 { (yyval.decl) = (yyvsp[(1) - (9)].decl)->appendList( (yyvsp[(5) - (9)].decl) )->appendList( (yyvsp[(9) - (9)].decl) ); } 7233 break; 7234 7235 case 419: 7236 7237 /* Line 1806 of yacc.c */ 7238 #line 1663 "parser.yy" 7248 case 420: 7249 7250 /* Line 1806 of yacc.c */ 7251 #line 1666 "parser.yy" 7252 { (yyval.decl) = nullptr; } 7253 break; 7254 7255 case 423: 7256 7257 /* Line 1806 of yacc.c */ 7258 #line 1673 "parser.yy" 7259 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7260 break; 7261 7262 case 426: 7263 7264 /* Line 1806 of yacc.c */ 7265 #line 1680 "parser.yy" 7239 7266 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7240 7267 break; 7241 7268 7242 case 420: 7243 7244 /* Line 1806 of yacc.c */ 7245 #line 1668 "parser.yy" 7246 { (yyval.decl) = nullptr; } 7247 break; 7248 7249 case 423: 7250 7251 /* Line 1806 of yacc.c */ 7252 #line 1675 "parser.yy" 7253 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7254 break; 7255 7256 case 426: 7269 case 427: 7257 7270 7258 7271 /* Line 1806 of yacc.c */ … … 7261 7274 break; 7262 7275 7263 case 427:7264 7265 /* Line 1806 of yacc.c */7266 #line 1684 "parser.yy"7267 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }7268 break;7269 7270 7276 case 429: 7271 7277 7272 7278 /* Line 1806 of yacc.c */ 7273 #line 169 3"parser.yy"7279 #line 1691 "parser.yy" 7274 7280 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); } 7275 7281 break; … … 7278 7284 7279 7285 /* Line 1806 of yacc.c */ 7286 #line 1694 "parser.yy" 7287 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); } 7288 break; 7289 7290 case 431: 7291 7292 /* Line 1806 of yacc.c */ 7280 7293 #line 1696 "parser.yy" 7281 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); }7282 break;7283 7284 case 431:7285 7286 /* Line 1806 of yacc.c */7287 #line 1698 "parser.yy"7288 7294 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addName( (yyvsp[(3) - (4)].tok) )->addQualifiers( (yyvsp[(1) - (4)].decl) ); } 7289 7295 break; … … 7292 7298 7293 7299 /* Line 1806 of yacc.c */ 7294 #line 170 8"parser.yy"7300 #line 1706 "parser.yy" 7295 7301 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7296 7302 break; … … 7299 7305 7300 7306 /* Line 1806 of yacc.c */ 7301 #line 171 4"parser.yy"7307 #line 1712 "parser.yy" 7302 7308 { 7303 7309 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7309 7315 7310 7316 /* Line 1806 of yacc.c */ 7311 #line 171 9"parser.yy"7317 #line 1717 "parser.yy" 7312 7318 { 7313 7319 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7319 7325 7320 7326 /* Line 1806 of yacc.c */ 7321 #line 172 8"parser.yy"7327 #line 1726 "parser.yy" 7322 7328 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7323 7329 break; … … 7326 7332 7327 7333 /* Line 1806 of yacc.c */ 7334 #line 1735 "parser.yy" 7335 { (yyval.decl) = DeclarationNode::newName( (yyvsp[(1) - (1)].tok) ); } 7336 break; 7337 7338 case 443: 7339 7340 /* Line 1806 of yacc.c */ 7328 7341 #line 1737 "parser.yy" 7329 { (yyval.decl) = DeclarationNode::newName( (yyvsp[(1) - (1)].tok) ); }7330 break;7331 7332 case 443:7333 7334 /* Line 1806 of yacc.c */7335 #line 1739 "parser.yy"7336 7342 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( DeclarationNode::newName( (yyvsp[(3) - (3)].tok) ) ); } 7337 7343 break; … … 7340 7346 7341 7347 /* Line 1806 of yacc.c */ 7342 #line 176 4"parser.yy"7348 #line 1762 "parser.yy" 7343 7349 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7344 7350 break; … … 7347 7353 7348 7354 /* Line 1806 of yacc.c */ 7349 #line 177 2"parser.yy"7355 #line 1770 "parser.yy" 7350 7356 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7351 7357 break; … … 7354 7360 7355 7361 /* Line 1806 of yacc.c */ 7362 #line 1775 "parser.yy" 7363 { (yyval.in) = nullptr; } 7364 break; 7365 7366 case 461: 7367 7368 /* Line 1806 of yacc.c */ 7356 7369 #line 1777 "parser.yy" 7370 { (yyval.in) = (yyvsp[(2) - (2)].in); } 7371 break; 7372 7373 case 462: 7374 7375 /* Line 1806 of yacc.c */ 7376 #line 1779 "parser.yy" 7377 { (yyval.in) = (yyvsp[(2) - (2)].in)->set_maybeConstructed( false ); } 7378 break; 7379 7380 case 463: 7381 7382 /* Line 1806 of yacc.c */ 7383 #line 1783 "parser.yy" 7384 { (yyval.in) = new InitializerNode( (yyvsp[(1) - (1)].en) ); } 7385 break; 7386 7387 case 464: 7388 7389 /* Line 1806 of yacc.c */ 7390 #line 1784 "parser.yy" 7391 { (yyval.in) = new InitializerNode( (yyvsp[(2) - (4)].in), true ); } 7392 break; 7393 7394 case 465: 7395 7396 /* Line 1806 of yacc.c */ 7397 #line 1789 "parser.yy" 7357 7398 { (yyval.in) = nullptr; } 7358 7399 break; 7359 7400 7360 case 461: 7361 7362 /* Line 1806 of yacc.c */ 7363 #line 1779 "parser.yy" 7364 { (yyval.in) = (yyvsp[(2) - (2)].in); } 7365 break; 7366 7367 case 462: 7368 7369 /* Line 1806 of yacc.c */ 7370 #line 1781 "parser.yy" 7371 { (yyval.in) = (yyvsp[(2) - (2)].in)->set_maybeConstructed( false ); } 7372 break; 7373 7374 case 463: 7375 7376 /* Line 1806 of yacc.c */ 7377 #line 1785 "parser.yy" 7378 { (yyval.in) = new InitializerNode( (yyvsp[(1) - (1)].en) ); } 7379 break; 7380 7381 case 464: 7382 7383 /* Line 1806 of yacc.c */ 7384 #line 1786 "parser.yy" 7385 { (yyval.in) = new InitializerNode( (yyvsp[(2) - (4)].in), true ); } 7386 break; 7387 7388 case 465: 7401 case 467: 7389 7402 7390 7403 /* Line 1806 of yacc.c */ 7391 7404 #line 1791 "parser.yy" 7392 { (yyval.in) = nullptr; }7393 break;7394 7395 case 467:7396 7397 /* Line 1806 of yacc.c */7398 #line 1793 "parser.yy"7399 7405 { (yyval.in) = (yyvsp[(2) - (2)].in)->set_designators( (yyvsp[(1) - (2)].en) ); } 7400 7406 break; … … 7403 7409 7404 7410 /* Line 1806 of yacc.c */ 7411 #line 1792 "parser.yy" 7412 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (3)].in)->set_last( (yyvsp[(3) - (3)].in) ) ); } 7413 break; 7414 7415 case 469: 7416 7417 /* Line 1806 of yacc.c */ 7405 7418 #line 1794 "parser.yy" 7406 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (3)].in)->set_last( (yyvsp[(3) - (3)].in) ) ); }7407 break;7408 7409 case 469:7410 7411 /* Line 1806 of yacc.c */7412 #line 1796 "parser.yy"7413 7419 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (4)].in)->set_last( (yyvsp[(4) - (4)].in)->set_designators( (yyvsp[(3) - (4)].en) ) ) ); } 7414 7420 break; … … 7417 7423 7418 7424 /* Line 1806 of yacc.c */ 7419 #line 181 2"parser.yy"7425 #line 1810 "parser.yy" 7420 7426 { (yyval.en) = new ExpressionNode( build_varref( (yyvsp[(1) - (2)].tok) ) ); } 7421 7427 break; … … 7424 7430 7425 7431 /* Line 1806 of yacc.c */ 7426 #line 181 8"parser.yy"7432 #line 1816 "parser.yy" 7427 7433 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (2)].en)->set_last( (yyvsp[(2) - (2)].en) ) ); } 7428 7434 break; … … 7431 7437 7432 7438 /* Line 1806 of yacc.c */ 7433 #line 182 4"parser.yy"7439 #line 1822 "parser.yy" 7434 7440 { (yyval.en) = new ExpressionNode( build_varref( (yyvsp[(2) - (2)].tok) ) ); } 7435 7441 break; 7436 7442 7437 7443 case 475: 7444 7445 /* Line 1806 of yacc.c */ 7446 #line 1825 "parser.yy" 7447 { (yyval.en) = (yyvsp[(3) - (5)].en); } 7448 break; 7449 7450 case 476: 7438 7451 7439 7452 /* Line 1806 of yacc.c */ … … 7442 7455 break; 7443 7456 7444 case 47 6:7457 case 477: 7445 7458 7446 7459 /* Line 1806 of yacc.c */ 7447 7460 #line 1829 "parser.yy" 7448 { (yyval.en) = (yyvsp[(3) - (5)].en); }7449 break; 7450 7451 case 47 7:7461 { (yyval.en) = new ExpressionNode( build_range( (yyvsp[(3) - (7)].en), (yyvsp[(5) - (7)].en) ) ); } 7462 break; 7463 7464 case 478: 7452 7465 7453 7466 /* Line 1806 of yacc.c */ 7454 7467 #line 1831 "parser.yy" 7455 { (yyval.en) = new ExpressionNode( build_range( (yyvsp[(3) - (7)].en), (yyvsp[(5) - (7)].en) ) ); }7456 break;7457 7458 case 478:7459 7460 /* Line 1806 of yacc.c */7461 #line 1833 "parser.yy"7462 7468 { (yyval.en) = (yyvsp[(4) - (6)].en); } 7463 7469 break; … … 7466 7472 7467 7473 /* Line 1806 of yacc.c */ 7474 #line 1855 "parser.yy" 7475 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7476 break; 7477 7478 case 481: 7479 7480 /* Line 1806 of yacc.c */ 7468 7481 #line 1857 "parser.yy" 7482 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7483 break; 7484 7485 case 482: 7486 7487 /* Line 1806 of yacc.c */ 7488 #line 1859 "parser.yy" 7489 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 7490 break; 7491 7492 case 484: 7493 7494 /* Line 1806 of yacc.c */ 7495 #line 1865 "parser.yy" 7469 7496 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7470 7497 break; 7471 7498 7472 case 48 1:7473 7474 /* Line 1806 of yacc.c */ 7475 #line 18 59"parser.yy"7499 case 485: 7500 7501 /* Line 1806 of yacc.c */ 7502 #line 1867 "parser.yy" 7476 7503 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7477 7504 break; 7478 7505 7479 case 482:7480 7481 /* Line 1806 of yacc.c */7482 #line 1861 "parser.yy"7483 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }7484 break;7485 7486 case 484:7487 7488 /* Line 1806 of yacc.c */7489 #line 1867 "parser.yy"7490 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }7491 break;7492 7493 case 485:7494 7495 /* Line 1806 of yacc.c */7496 #line 1869 "parser.yy"7497 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }7498 break;7499 7500 7506 case 486: 7501 7507 7502 7508 /* Line 1806 of yacc.c */ 7503 #line 187 4"parser.yy"7509 #line 1872 "parser.yy" 7504 7510 { (yyval.decl) = DeclarationNode::newFromTypeGen( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 7505 7511 break; … … 7508 7514 7509 7515 /* Line 1806 of yacc.c */ 7510 #line 18 80"parser.yy"7516 #line 1878 "parser.yy" 7511 7517 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(3) - (4)].decl) ); } 7512 7518 break; … … 7515 7521 7516 7522 /* Line 1806 of yacc.c */ 7523 #line 1883 "parser.yy" 7524 { typedefTable.addToEnclosingScope( *(yyvsp[(2) - (2)].tok), TypedefTable::TD ); } 7525 break; 7526 7527 case 490: 7528 7529 /* Line 1806 of yacc.c */ 7517 7530 #line 1885 "parser.yy" 7518 { typedefTable.addToEnclosingScope( *(yyvsp[(2) - (2)].tok), TypedefTable::TD ); }7519 break;7520 7521 case 490:7522 7523 /* Line 1806 of yacc.c */7524 #line 1887 "parser.yy"7525 7531 { (yyval.decl) = DeclarationNode::newTypeParam( (yyvsp[(1) - (4)].tclass), (yyvsp[(2) - (4)].tok) )->addAssertions( (yyvsp[(4) - (4)].decl) ); } 7526 7532 break; … … 7529 7535 7530 7536 /* Line 1806 of yacc.c */ 7537 #line 1891 "parser.yy" 7538 { (yyval.tclass) = DeclarationNode::Otype; } 7539 break; 7540 7541 case 493: 7542 7543 /* Line 1806 of yacc.c */ 7531 7544 #line 1893 "parser.yy" 7532 { (yyval.tclass) = DeclarationNode:: Otype; }7533 break; 7534 7535 case 49 3:7545 { (yyval.tclass) = DeclarationNode::Dtype; } 7546 break; 7547 7548 case 494: 7536 7549 7537 7550 /* Line 1806 of yacc.c */ 7538 7551 #line 1895 "parser.yy" 7539 { (yyval.tclass) = DeclarationNode:: Dtype; }7540 break; 7541 7542 case 49 4:7552 { (yyval.tclass) = DeclarationNode::Ftype; } 7553 break; 7554 7555 case 495: 7543 7556 7544 7557 /* Line 1806 of yacc.c */ 7545 7558 #line 1897 "parser.yy" 7546 { (yyval.tclass) = DeclarationNode::Ftype; }7547 break;7548 7549 case 495:7550 7551 /* Line 1806 of yacc.c */7552 #line 1899 "parser.yy"7553 7559 { (yyval.tclass) = DeclarationNode::Ttype; } 7554 7560 break; … … 7557 7563 7558 7564 /* Line 1806 of yacc.c */ 7565 #line 1902 "parser.yy" 7566 { (yyval.decl) = nullptr; } 7567 break; 7568 7569 case 497: 7570 7571 /* Line 1806 of yacc.c */ 7559 7572 #line 1904 "parser.yy" 7560 { (yyval.decl) = nullptr; }7561 break;7562 7563 case 497:7564 7565 /* Line 1806 of yacc.c */7566 #line 1906 "parser.yy"7567 7573 { (yyval.decl) = (yyvsp[(1) - (2)].decl) ? (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ) : (yyvsp[(2) - (2)].decl); } 7568 7574 break; … … 7571 7577 7572 7578 /* Line 1806 of yacc.c */ 7573 #line 19 11"parser.yy"7579 #line 1909 "parser.yy" 7574 7580 { 7575 7581 typedefTable.openTrait( *(yyvsp[(2) - (5)].tok) ); … … 7581 7587 7582 7588 /* Line 1806 of yacc.c */ 7589 #line 1914 "parser.yy" 7590 { (yyval.decl) = (yyvsp[(4) - (5)].decl); } 7591 break; 7592 7593 case 500: 7594 7595 /* Line 1806 of yacc.c */ 7583 7596 #line 1916 "parser.yy" 7584 { (yyval.decl) = (yyvsp[(4) - (5)].decl); }7585 break;7586 7587 case 500:7588 7589 /* Line 1806 of yacc.c */7590 #line 1918 "parser.yy"7591 7597 { (yyval.decl) = nullptr; } 7592 7598 break; … … 7595 7601 7596 7602 /* Line 1806 of yacc.c */ 7597 #line 192 3"parser.yy"7603 #line 1921 "parser.yy" 7598 7604 { (yyval.en) = new ExpressionNode( build_typevalue( (yyvsp[(1) - (1)].decl) ) ); } 7599 7605 break; … … 7602 7608 7603 7609 /* Line 1806 of yacc.c */ 7610 #line 1924 "parser.yy" 7611 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_last( new ExpressionNode( build_typevalue( (yyvsp[(3) - (3)].decl) ) ) ) ); } 7612 break; 7613 7614 case 504: 7615 7616 /* Line 1806 of yacc.c */ 7604 7617 #line 1926 "parser.yy" 7605 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_last( new ExpressionNode( build_typevalue( (yyvsp[(3) - (3)].decl) ) ) ) ); }7606 break;7607 7608 case 504:7609 7610 /* Line 1806 of yacc.c */7611 #line 1928 "parser.yy"7612 7618 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_last( (yyvsp[(3) - (3)].en) )); } 7613 7619 break; … … 7616 7622 7617 7623 /* Line 1806 of yacc.c */ 7624 #line 1931 "parser.yy" 7625 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 7626 break; 7627 7628 case 506: 7629 7630 /* Line 1806 of yacc.c */ 7618 7631 #line 1933 "parser.yy" 7619 { (yyval.decl) = (yyvsp[( 2) - (2)].decl); }7620 break; 7621 7622 case 50 6:7632 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) ); } 7633 break; 7634 7635 case 507: 7623 7636 7624 7637 /* Line 1806 of yacc.c */ 7625 7638 #line 1935 "parser.yy" 7626 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) ); }7627 break;7628 7629 case 507:7630 7631 /* Line 1806 of yacc.c */7632 #line 1937 "parser.yy"7633 7639 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl)->copyStorageClasses( (yyvsp[(1) - (3)].decl) ) ); } 7634 7640 break; … … 7637 7643 7638 7644 /* Line 1806 of yacc.c */ 7645 #line 1940 "parser.yy" 7646 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addAssertions( (yyvsp[(2) - (2)].decl) ); } 7647 break; 7648 7649 case 509: 7650 7651 /* Line 1806 of yacc.c */ 7639 7652 #line 1942 "parser.yy" 7640 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addAssertions( (yyvsp[(2) - (2)].decl) ); }7641 break;7642 7643 case 509:7644 7645 /* Line 1806 of yacc.c */7646 #line 1944 "parser.yy"7647 7653 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addAssertions( (yyvsp[(2) - (4)].decl) )->addType( (yyvsp[(4) - (4)].decl) ); } 7648 7654 break; … … 7651 7657 7652 7658 /* Line 1806 of yacc.c */ 7653 #line 194 9"parser.yy"7659 #line 1947 "parser.yy" 7654 7660 { 7655 7661 typedefTable.addToEnclosingScope( *(yyvsp[(1) - (1)].tok), TypedefTable::TD ); … … 7661 7667 7662 7668 /* Line 1806 of yacc.c */ 7663 #line 195 4"parser.yy"7669 #line 1952 "parser.yy" 7664 7670 { 7665 7671 typedefTable.addToEnclosingScope( *(yyvsp[(1) - (6)].tok), TypedefTable::TG ); … … 7671 7677 7672 7678 /* Line 1806 of yacc.c */ 7673 #line 196 2"parser.yy"7679 #line 1960 "parser.yy" 7674 7680 { 7675 7681 typedefTable.addToEnclosingScope( *(yyvsp[(2) - (9)].tok), TypedefTable::ID ); … … 7681 7687 7682 7688 /* Line 1806 of yacc.c */ 7683 #line 196 7"parser.yy"7689 #line 1965 "parser.yy" 7684 7690 { 7685 7691 typedefTable.enterTrait( *(yyvsp[(2) - (8)].tok) ); … … 7691 7697 7692 7698 /* Line 1806 of yacc.c */ 7693 #line 197 2"parser.yy"7699 #line 1970 "parser.yy" 7694 7700 { 7695 7701 typedefTable.leaveTrait(); … … 7702 7708 7703 7709 /* Line 1806 of yacc.c */ 7704 #line 198 2"parser.yy"7710 #line 1980 "parser.yy" 7705 7711 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 7706 7712 break; … … 7709 7715 7710 7716 /* Line 1806 of yacc.c */ 7711 #line 199 2"parser.yy"7717 #line 1990 "parser.yy" 7712 7718 { 7713 7719 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7719 7725 7720 7726 /* Line 1806 of yacc.c */ 7721 #line 199 7"parser.yy"7727 #line 1995 "parser.yy" 7722 7728 { 7723 7729 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7729 7735 7730 7736 /* Line 1806 of yacc.c */ 7731 #line 200 2"parser.yy"7737 #line 2000 "parser.yy" 7732 7738 { 7733 7739 typedefTable.addToEnclosingScope2( *(yyvsp[(5) - (5)].tok), TypedefTable::ID ); … … 7739 7745 7740 7746 /* Line 1806 of yacc.c */ 7741 #line 20 10"parser.yy"7747 #line 2008 "parser.yy" 7742 7748 { 7743 7749 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7749 7755 7750 7756 /* Line 1806 of yacc.c */ 7751 #line 201 5"parser.yy"7757 #line 2013 "parser.yy" 7752 7758 { 7753 7759 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7759 7765 7760 7766 /* Line 1806 of yacc.c */ 7767 #line 2023 "parser.yy" 7768 {} 7769 break; 7770 7771 case 525: 7772 7773 /* Line 1806 of yacc.c */ 7761 7774 #line 2025 "parser.yy" 7775 { parseTree = parseTree ? parseTree->appendList( (yyvsp[(1) - (1)].decl) ) : (yyvsp[(1) - (1)].decl); } 7776 break; 7777 7778 case 527: 7779 7780 /* Line 1806 of yacc.c */ 7781 #line 2031 "parser.yy" 7782 { (yyval.decl) = (yyvsp[(1) - (3)].decl) ? (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ) : (yyvsp[(3) - (3)].decl); } 7783 break; 7784 7785 case 528: 7786 7787 /* Line 1806 of yacc.c */ 7788 #line 2036 "parser.yy" 7789 { (yyval.decl) = nullptr; } 7790 break; 7791 7792 case 532: 7793 7794 /* Line 1806 of yacc.c */ 7795 #line 2044 "parser.yy" 7762 7796 {} 7763 7797 break; 7764 7798 7765 case 525: 7766 7767 /* Line 1806 of yacc.c */ 7768 #line 2027 "parser.yy" 7769 { parseTree = parseTree ? parseTree->appendList( (yyvsp[(1) - (1)].decl) ) : (yyvsp[(1) - (1)].decl); } 7770 break; 7771 7772 case 527: 7773 7774 /* Line 1806 of yacc.c */ 7775 #line 2033 "parser.yy" 7776 { (yyval.decl) = (yyvsp[(1) - (3)].decl) ? (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ) : (yyvsp[(3) - (3)].decl); } 7777 break; 7778 7779 case 528: 7780 7781 /* Line 1806 of yacc.c */ 7782 #line 2038 "parser.yy" 7783 { (yyval.decl) = nullptr; } 7784 break; 7785 7786 case 532: 7799 case 533: 7787 7800 7788 7801 /* Line 1806 of yacc.c */ 7789 7802 #line 2046 "parser.yy" 7790 {}7791 break;7792 7793 case 533:7794 7795 /* Line 1806 of yacc.c */7796 #line 2048 "parser.yy"7797 7803 { 7798 7804 linkageStack.push( linkage ); // handle nested extern "C"/"Cforall" … … 7804 7810 7805 7811 /* Line 1806 of yacc.c */ 7806 #line 205 3"parser.yy"7812 #line 2051 "parser.yy" 7807 7813 { 7808 7814 linkage = linkageStack.top(); … … 7815 7821 7816 7822 /* Line 1806 of yacc.c */ 7817 #line 205 9"parser.yy"7823 #line 2057 "parser.yy" 7818 7824 { // mark all fields in list 7819 7825 for ( DeclarationNode *iter = (yyvsp[(2) - (2)].decl); iter != nullptr; iter = (DeclarationNode *)iter->get_next() ) … … 7826 7832 7827 7833 /* Line 1806 of yacc.c */ 7828 #line 207 4"parser.yy"7834 #line 2072 "parser.yy" 7829 7835 { 7830 7836 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7837 7843 7838 7844 /* Line 1806 of yacc.c */ 7839 #line 20 80"parser.yy"7845 #line 2078 "parser.yy" 7840 7846 { 7841 7847 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7848 7854 7849 7855 /* Line 1806 of yacc.c */ 7850 #line 208 9"parser.yy"7856 #line 2087 "parser.yy" 7851 7857 { 7852 7858 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7859 7865 7860 7866 /* Line 1806 of yacc.c */ 7861 #line 209 5"parser.yy"7867 #line 2093 "parser.yy" 7862 7868 { 7863 7869 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7870 7876 7871 7877 /* Line 1806 of yacc.c */ 7872 #line 2 101"parser.yy"7878 #line 2099 "parser.yy" 7873 7879 { 7874 7880 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7881 7887 7882 7888 /* Line 1806 of yacc.c */ 7883 #line 210 7"parser.yy"7889 #line 2105 "parser.yy" 7884 7890 { 7885 7891 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7892 7898 7893 7899 /* Line 1806 of yacc.c */ 7894 #line 211 3"parser.yy"7900 #line 2111 "parser.yy" 7895 7901 { 7896 7902 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7903 7909 7904 7910 /* Line 1806 of yacc.c */ 7905 #line 21 21"parser.yy"7911 #line 2119 "parser.yy" 7906 7912 { 7907 7913 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7914 7920 7915 7921 /* Line 1806 of yacc.c */ 7916 #line 212 7"parser.yy"7922 #line 2125 "parser.yy" 7917 7923 { 7918 7924 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7925 7931 7926 7932 /* Line 1806 of yacc.c */ 7927 #line 213 5"parser.yy"7933 #line 2133 "parser.yy" 7928 7934 { 7929 7935 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7936 7942 7937 7943 /* Line 1806 of yacc.c */ 7938 #line 21 41"parser.yy"7944 #line 2139 "parser.yy" 7939 7945 { 7940 7946 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7947 7953 7948 7954 /* Line 1806 of yacc.c */ 7949 #line 215 6"parser.yy"7955 #line 2154 "parser.yy" 7950 7956 { (yyval.en) = new ExpressionNode( build_range( (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ) ); } 7951 7957 break; … … 7954 7960 7955 7961 /* Line 1806 of yacc.c */ 7962 #line 2159 "parser.yy" 7963 { (yyval.constant) = nullptr; } 7964 break; 7965 7966 case 553: 7967 7968 /* Line 1806 of yacc.c */ 7956 7969 #line 2161 "parser.yy" 7957 { (yyval.constant) = nullptr; }7958 break;7959 7960 case 553:7961 7962 /* Line 1806 of yacc.c */7963 #line 2163 "parser.yy"7964 7970 { (yyval.constant) = (yyvsp[(3) - (5)].constant); } 7965 7971 break; … … 7968 7974 7969 7975 /* Line 1806 of yacc.c */ 7970 #line 216 8"parser.yy"7976 #line 2166 "parser.yy" 7971 7977 { (yyval.decl) = nullptr; } 7972 7978 break; … … 7975 7981 7976 7982 /* Line 1806 of yacc.c */ 7977 #line 217 5"parser.yy"7983 #line 2173 "parser.yy" 7978 7984 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7979 7985 break; … … 7982 7988 7983 7989 /* Line 1806 of yacc.c */ 7984 #line 2181 "parser.yy" 7990 #line 2178 "parser.yy" 7991 { (yyval.decl) = (yyvsp[(4) - (6)].decl); } 7992 break; 7993 7994 case 560: 7995 7996 /* Line 1806 of yacc.c */ 7997 #line 2184 "parser.yy" 7998 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 7999 break; 8000 8001 case 561: 8002 8003 /* Line 1806 of yacc.c */ 8004 #line 2189 "parser.yy" 7985 8005 { (yyval.decl) = nullptr; } 7986 8006 break; 7987 8007 8008 case 562: 8009 8010 /* Line 1806 of yacc.c */ 8011 #line 2191 "parser.yy" 8012 { (yyval.decl) = DeclarationNode::newAttribute( (yyvsp[(1) - (1)].tok) ); } 8013 break; 8014 7988 8015 case 563: 7989 8016 7990 8017 /* Line 1806 of yacc.c */ 7991 #line 2192 "parser.yy" 7992 { delete (yyvsp[(3) - (4)].en); } 7993 break; 7994 7995 case 564: 7996 7997 /* Line 1806 of yacc.c */ 7998 #line 2196 "parser.yy" 7999 { delete (yyvsp[(1) - (1)].tok); } 8000 break; 8001 8002 case 565: 8003 8004 /* Line 1806 of yacc.c */ 8005 #line 2197 "parser.yy" 8006 { delete (yyvsp[(1) - (1)].decl); } 8007 break; 8008 8009 case 566: 8010 8011 /* Line 1806 of yacc.c */ 8012 #line 2198 "parser.yy" 8013 { delete (yyvsp[(1) - (1)].decl); } 8018 #line 2193 "parser.yy" 8019 { (yyval.decl) = DeclarationNode::newAttribute( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 8014 8020 break; 8015 8021 … … 8017 8023 8018 8024 /* Line 1806 of yacc.c */ 8019 #line 2 199"parser.yy"8020 { delete (yyvsp[(1) - (1)].decl); }8025 #line 2201 "parser.yy" 8026 { (yyval.tok) = Token{ new string( "__const__" ) }; } 8021 8027 break; 8022 8028 … … 8024 8030 8025 8031 /* Line 1806 of yacc.c */ 8026 #line 223 4"parser.yy"8032 #line 2236 "parser.yy" 8027 8033 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8028 8034 break; 8029 8035 8030 8036 case 570: 8031 8032 /* Line 1806 of yacc.c */8033 #line 2237 "parser.yy"8034 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8035 break;8036 8037 case 571:8038 8037 8039 8038 /* Line 1806 of yacc.c */ … … 8042 8041 break; 8043 8042 8043 case 571: 8044 8045 /* Line 1806 of yacc.c */ 8046 #line 2241 "parser.yy" 8047 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8048 break; 8049 8044 8050 case 572: 8045 8051 8046 8052 /* Line 1806 of yacc.c */ 8047 #line 224 4"parser.yy"8053 #line 2246 "parser.yy" 8048 8054 { 8049 8055 typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) ); … … 8055 8061 8056 8062 /* Line 1806 of yacc.c */ 8057 #line 22 49"parser.yy"8063 #line 2251 "parser.yy" 8058 8064 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8059 8065 break; … … 8062 8068 8063 8069 /* Line 1806 of yacc.c */ 8064 #line 225 4"parser.yy"8070 #line 2256 "parser.yy" 8065 8071 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8066 8072 break; … … 8069 8075 8070 8076 /* Line 1806 of yacc.c */ 8071 #line 225 6"parser.yy"8077 #line 2258 "parser.yy" 8072 8078 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8073 8079 break; … … 8076 8082 8077 8083 /* Line 1806 of yacc.c */ 8078 #line 22 58"parser.yy"8084 #line 2260 "parser.yy" 8079 8085 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8080 8086 break; … … 8083 8089 8084 8090 /* Line 1806 of yacc.c */ 8085 #line 226 3"parser.yy"8091 #line 2265 "parser.yy" 8086 8092 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8087 8093 break; 8088 8094 8089 8095 case 578: 8090 8091 /* Line 1806 of yacc.c */8092 #line 2265 "parser.yy"8093 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8094 break;8095 8096 case 579:8097 8096 8098 8097 /* Line 1806 of yacc.c */ … … 8101 8100 break; 8102 8101 8102 case 579: 8103 8104 /* Line 1806 of yacc.c */ 8105 #line 2269 "parser.yy" 8106 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8107 break; 8108 8103 8109 case 580: 8104 8110 8105 8111 /* Line 1806 of yacc.c */ 8106 #line 22 69"parser.yy"8112 #line 2271 "parser.yy" 8107 8113 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8108 8114 break; … … 8111 8117 8112 8118 /* Line 1806 of yacc.c */ 8113 #line 227 4"parser.yy"8119 #line 2276 "parser.yy" 8114 8120 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8115 8121 break; … … 8118 8124 8119 8125 /* Line 1806 of yacc.c */ 8120 #line 227 6"parser.yy"8126 #line 2278 "parser.yy" 8121 8127 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8122 8128 break; … … 8125 8131 8126 8132 /* Line 1806 of yacc.c */ 8127 #line 228 5"parser.yy"8133 #line 2287 "parser.yy" 8128 8134 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8129 8135 break; … … 8132 8138 8133 8139 /* Line 1806 of yacc.c */ 8134 #line 22 88"parser.yy"8140 #line 2290 "parser.yy" 8135 8141 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8136 8142 break; … … 8139 8145 8140 8146 /* Line 1806 of yacc.c */ 8141 #line 229 3"parser.yy"8147 #line 2295 "parser.yy" 8142 8148 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8143 8149 break; … … 8146 8152 8147 8153 /* Line 1806 of yacc.c */ 8148 #line 229 5"parser.yy"8154 #line 2297 "parser.yy" 8149 8155 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8150 8156 break; … … 8153 8159 8154 8160 /* Line 1806 of yacc.c */ 8155 #line 229 7"parser.yy"8161 #line 2299 "parser.yy" 8156 8162 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8157 8163 break; … … 8160 8166 8161 8167 /* Line 1806 of yacc.c */ 8162 #line 230 2"parser.yy"8168 #line 2304 "parser.yy" 8163 8169 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8164 8170 break; … … 8167 8173 8168 8174 /* Line 1806 of yacc.c */ 8169 #line 230 4"parser.yy"8175 #line 2306 "parser.yy" 8170 8176 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8171 8177 break; … … 8174 8180 8175 8181 /* Line 1806 of yacc.c */ 8176 #line 230 6"parser.yy"8182 #line 2308 "parser.yy" 8177 8183 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8178 8184 break; 8179 8185 8180 8186 case 592: 8181 8182 /* Line 1806 of yacc.c */8183 #line 2311 "parser.yy"8184 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8185 break;8186 8187 case 593:8188 8187 8189 8188 /* Line 1806 of yacc.c */ … … 8192 8191 break; 8193 8192 8193 case 593: 8194 8195 /* Line 1806 of yacc.c */ 8196 #line 2315 "parser.yy" 8197 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8198 break; 8199 8194 8200 case 594: 8195 8201 8196 8202 /* Line 1806 of yacc.c */ 8197 #line 231 5"parser.yy"8203 #line 2317 "parser.yy" 8198 8204 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8199 8205 break; … … 8202 8208 8203 8209 /* Line 1806 of yacc.c */ 8204 #line 233 0"parser.yy"8210 #line 2332 "parser.yy" 8205 8211 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addIdList( (yyvsp[(3) - (4)].decl) ); } 8206 8212 break; … … 8209 8215 8210 8216 /* Line 1806 of yacc.c */ 8211 #line 233 2"parser.yy"8217 #line 2334 "parser.yy" 8212 8218 { (yyval.decl) = (yyvsp[(2) - (6)].decl)->addIdList( (yyvsp[(5) - (6)].decl) ); } 8213 8219 break; … … 8216 8222 8217 8223 /* Line 1806 of yacc.c */ 8218 #line 233 4"parser.yy"8224 #line 2336 "parser.yy" 8219 8225 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8220 8226 break; … … 8223 8229 8224 8230 /* Line 1806 of yacc.c */ 8225 #line 23 39"parser.yy"8231 #line 2341 "parser.yy" 8226 8232 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8227 8233 break; … … 8230 8236 8231 8237 /* Line 1806 of yacc.c */ 8232 #line 234 1"parser.yy"8238 #line 2343 "parser.yy" 8233 8239 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8234 8240 break; … … 8237 8243 8238 8244 /* Line 1806 of yacc.c */ 8239 #line 234 3"parser.yy"8245 #line 2345 "parser.yy" 8240 8246 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8241 8247 break; 8242 8248 8243 8249 case 604: 8244 8245 /* Line 1806 of yacc.c */8246 #line 2348 "parser.yy"8247 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8248 break;8249 8250 case 605:8251 8250 8252 8251 /* Line 1806 of yacc.c */ … … 8255 8254 break; 8256 8255 8256 case 605: 8257 8258 /* Line 1806 of yacc.c */ 8259 #line 2352 "parser.yy" 8260 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8261 break; 8262 8257 8263 case 606: 8258 8264 8259 8265 /* Line 1806 of yacc.c */ 8260 #line 235 2"parser.yy"8266 #line 2354 "parser.yy" 8261 8267 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8262 8268 break; … … 8265 8271 8266 8272 /* Line 1806 of yacc.c */ 8267 #line 236 7"parser.yy"8273 #line 2369 "parser.yy" 8268 8274 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8269 8275 break; 8270 8276 8271 8277 case 609: 8272 8273 /* Line 1806 of yacc.c */8274 #line 2370 "parser.yy"8275 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8276 break;8277 8278 case 610:8279 8278 8280 8279 /* Line 1806 of yacc.c */ … … 8283 8282 break; 8284 8283 8284 case 610: 8285 8286 /* Line 1806 of yacc.c */ 8287 #line 2374 "parser.yy" 8288 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8289 break; 8290 8285 8291 case 612: 8286 8292 8287 8293 /* Line 1806 of yacc.c */ 8288 #line 23 78"parser.yy"8294 #line 2380 "parser.yy" 8289 8295 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8290 8296 break; … … 8293 8299 8294 8300 /* Line 1806 of yacc.c */ 8295 #line 238 3"parser.yy"8301 #line 2385 "parser.yy" 8296 8302 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8297 8303 break; … … 8300 8306 8301 8307 /* Line 1806 of yacc.c */ 8302 #line 238 5"parser.yy"8308 #line 2387 "parser.yy" 8303 8309 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8304 8310 break; … … 8307 8313 8308 8314 /* Line 1806 of yacc.c */ 8309 #line 238 7"parser.yy"8315 #line 2389 "parser.yy" 8310 8316 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8311 8317 break; … … 8314 8320 8315 8321 /* Line 1806 of yacc.c */ 8316 #line 239 2"parser.yy"8322 #line 2394 "parser.yy" 8317 8323 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8318 8324 break; 8319 8325 8320 8326 case 617: 8321 8322 /* Line 1806 of yacc.c */8323 #line 2394 "parser.yy"8324 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8325 break;8326 8327 case 618:8328 8327 8329 8328 /* Line 1806 of yacc.c */ … … 8332 8331 break; 8333 8332 8333 case 618: 8334 8335 /* Line 1806 of yacc.c */ 8336 #line 2398 "parser.yy" 8337 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8338 break; 8339 8334 8340 case 619: 8335 8341 8336 8342 /* Line 1806 of yacc.c */ 8337 #line 2 398"parser.yy"8343 #line 2400 "parser.yy" 8338 8344 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8339 8345 break; … … 8342 8348 8343 8349 /* Line 1806 of yacc.c */ 8344 #line 240 3"parser.yy"8350 #line 2405 "parser.yy" 8345 8351 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8346 8352 break; … … 8349 8355 8350 8356 /* Line 1806 of yacc.c */ 8351 #line 240 5"parser.yy"8357 #line 2407 "parser.yy" 8352 8358 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8353 8359 break; … … 8356 8362 8357 8363 /* Line 1806 of yacc.c */ 8358 #line 240 7"parser.yy"8364 #line 2409 "parser.yy" 8359 8365 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8360 8366 break; … … 8363 8369 8364 8370 /* Line 1806 of yacc.c */ 8365 #line 241 7"parser.yy"8371 #line 2419 "parser.yy" 8366 8372 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8367 8373 break; 8368 8374 8369 8375 case 625: 8370 8371 /* Line 1806 of yacc.c */8372 #line 2420 "parser.yy"8373 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8374 break;8375 8376 case 626:8377 8376 8378 8377 /* Line 1806 of yacc.c */ … … 8381 8380 break; 8382 8381 8382 case 626: 8383 8384 /* Line 1806 of yacc.c */ 8385 #line 2424 "parser.yy" 8386 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8387 break; 8388 8383 8389 case 627: 8384 8390 8385 8391 /* Line 1806 of yacc.c */ 8386 #line 242 7"parser.yy"8392 #line 2429 "parser.yy" 8387 8393 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8388 8394 break; … … 8391 8397 8392 8398 /* Line 1806 of yacc.c */ 8393 #line 24 29"parser.yy"8399 #line 2431 "parser.yy" 8394 8400 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8395 8401 break; … … 8398 8404 8399 8405 /* Line 1806 of yacc.c */ 8400 #line 243 1"parser.yy"8406 #line 2433 "parser.yy" 8401 8407 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8402 8408 break; … … 8405 8411 8406 8412 /* Line 1806 of yacc.c */ 8407 #line 243 6"parser.yy"8413 #line 2438 "parser.yy" 8408 8414 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8409 8415 break; 8410 8416 8411 8417 case 631: 8412 8413 /* Line 1806 of yacc.c */8414 #line 2438 "parser.yy"8415 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8416 break;8417 8418 case 632:8419 8418 8420 8419 /* Line 1806 of yacc.c */ … … 8423 8422 break; 8424 8423 8424 case 632: 8425 8426 /* Line 1806 of yacc.c */ 8427 #line 2442 "parser.yy" 8428 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8429 break; 8430 8425 8431 case 633: 8426 8432 8427 8433 /* Line 1806 of yacc.c */ 8428 #line 244 2"parser.yy"8434 #line 2444 "parser.yy" 8429 8435 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8430 8436 break; … … 8433 8439 8434 8440 /* Line 1806 of yacc.c */ 8435 #line 244 7"parser.yy"8441 #line 2449 "parser.yy" 8436 8442 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8437 8443 break; … … 8440 8446 8441 8447 /* Line 1806 of yacc.c */ 8442 #line 24 49"parser.yy"8448 #line 2451 "parser.yy" 8443 8449 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8444 8450 break; … … 8447 8453 8448 8454 /* Line 1806 of yacc.c */ 8449 #line 245 1"parser.yy"8455 #line 2453 "parser.yy" 8450 8456 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8451 8457 break; … … 8454 8460 8455 8461 /* Line 1806 of yacc.c */ 8456 #line 248 2"parser.yy"8462 #line 2484 "parser.yy" 8457 8463 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8458 8464 break; 8459 8465 8460 8466 case 639: 8461 8462 /* Line 1806 of yacc.c */8463 #line 2485 "parser.yy"8464 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8465 break;8466 8467 case 640:8468 8467 8469 8468 /* Line 1806 of yacc.c */ … … 8472 8471 break; 8473 8472 8473 case 640: 8474 8475 /* Line 1806 of yacc.c */ 8476 #line 2489 "parser.yy" 8477 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8478 break; 8479 8474 8480 case 641: 8475 8481 8476 8482 /* Line 1806 of yacc.c */ 8477 #line 249 2"parser.yy"8483 #line 2494 "parser.yy" 8478 8484 { 8479 8485 typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) ); … … 8485 8491 8486 8492 /* Line 1806 of yacc.c */ 8487 #line 249 7"parser.yy"8493 #line 2499 "parser.yy" 8488 8494 { 8489 8495 typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) ); … … 8495 8501 8496 8502 /* Line 1806 of yacc.c */ 8497 #line 250 5"parser.yy"8503 #line 2507 "parser.yy" 8498 8504 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8499 8505 break; … … 8502 8508 8503 8509 /* Line 1806 of yacc.c */ 8504 #line 250 7"parser.yy"8510 #line 2509 "parser.yy" 8505 8511 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8506 8512 break; … … 8509 8515 8510 8516 /* Line 1806 of yacc.c */ 8511 #line 25 09"parser.yy"8517 #line 2511 "parser.yy" 8512 8518 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8513 8519 break; … … 8516 8522 8517 8523 /* Line 1806 of yacc.c */ 8518 #line 251 4"parser.yy"8524 #line 2516 "parser.yy" 8519 8525 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8520 8526 break; … … 8523 8529 8524 8530 /* Line 1806 of yacc.c */ 8525 #line 251 6"parser.yy"8531 #line 2518 "parser.yy" 8526 8532 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8527 8533 break; … … 8530 8536 8531 8537 /* Line 1806 of yacc.c */ 8532 #line 252 1"parser.yy"8538 #line 2523 "parser.yy" 8533 8539 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8534 8540 break; … … 8537 8543 8538 8544 /* Line 1806 of yacc.c */ 8539 #line 252 3"parser.yy"8545 #line 2525 "parser.yy" 8540 8546 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8541 8547 break; 8542 8548 8543 8549 case 651: 8544 8545 /* Line 1806 of yacc.c */8546 #line 2538 "parser.yy"8547 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8548 break;8549 8550 case 652:8551 8550 8552 8551 /* Line 1806 of yacc.c */ … … 8555 8554 break; 8556 8555 8556 case 652: 8557 8558 /* Line 1806 of yacc.c */ 8559 #line 2542 "parser.yy" 8560 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8561 break; 8562 8557 8563 case 653: 8558 8564 8559 8565 /* Line 1806 of yacc.c */ 8560 #line 254 5"parser.yy"8566 #line 2547 "parser.yy" 8561 8567 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8562 8568 break; … … 8565 8571 8566 8572 /* Line 1806 of yacc.c */ 8567 #line 254 7"parser.yy"8573 #line 2549 "parser.yy" 8568 8574 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8569 8575 break; … … 8572 8578 8573 8579 /* Line 1806 of yacc.c */ 8574 #line 25 49"parser.yy"8580 #line 2551 "parser.yy" 8575 8581 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8576 8582 break; … … 8579 8585 8580 8586 /* Line 1806 of yacc.c */ 8581 #line 255 1"parser.yy"8587 #line 2553 "parser.yy" 8582 8588 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8583 8589 break; … … 8586 8592 8587 8593 /* Line 1806 of yacc.c */ 8588 #line 255 3"parser.yy"8594 #line 2555 "parser.yy" 8589 8595 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8590 8596 break; 8591 8597 8592 8598 case 659: 8593 8594 /* Line 1806 of yacc.c */8595 #line 2559 "parser.yy"8596 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8597 break;8598 8599 case 660:8600 8599 8601 8600 /* Line 1806 of yacc.c */ … … 8604 8603 break; 8605 8604 8605 case 660: 8606 8607 /* Line 1806 of yacc.c */ 8608 #line 2563 "parser.yy" 8609 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8610 break; 8611 8606 8612 case 661: 8607 8613 8608 8614 /* Line 1806 of yacc.c */ 8609 #line 256 3"parser.yy"8615 #line 2565 "parser.yy" 8610 8616 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8611 8617 break; … … 8614 8620 8615 8621 /* Line 1806 of yacc.c */ 8616 #line 25 68"parser.yy"8622 #line 2570 "parser.yy" 8617 8623 { (yyval.decl) = DeclarationNode::newFunction( nullptr, nullptr, (yyvsp[(3) - (5)].decl), nullptr ); } 8618 8624 break; … … 8621 8627 8622 8628 /* Line 1806 of yacc.c */ 8623 #line 257 0"parser.yy"8629 #line 2572 "parser.yy" 8624 8630 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8625 8631 break; … … 8628 8634 8629 8635 /* Line 1806 of yacc.c */ 8630 #line 257 2"parser.yy"8636 #line 2574 "parser.yy" 8631 8637 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8632 8638 break; … … 8635 8641 8636 8642 /* Line 1806 of yacc.c */ 8637 #line 25 78"parser.yy"8643 #line 2580 "parser.yy" 8638 8644 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); } 8639 8645 break; … … 8642 8648 8643 8649 /* Line 1806 of yacc.c */ 8644 #line 258 0"parser.yy"8650 #line 2582 "parser.yy" 8645 8651 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false )->addArray( (yyvsp[(3) - (3)].decl) ); } 8646 8652 break; … … 8649 8655 8650 8656 /* Line 1806 of yacc.c */ 8651 #line 258 6"parser.yy"8657 #line 2588 "parser.yy" 8652 8658 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(3) - (5)].en), 0, false ); } 8653 8659 break; … … 8656 8662 8657 8663 /* Line 1806 of yacc.c */ 8658 #line 25 88"parser.yy"8664 #line 2590 "parser.yy" 8659 8665 { (yyval.decl) = DeclarationNode::newVarArray( 0 ); } 8660 8666 break; … … 8663 8669 8664 8670 /* Line 1806 of yacc.c */ 8665 #line 259 0"parser.yy"8671 #line 2592 "parser.yy" 8666 8672 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newArray( (yyvsp[(4) - (6)].en), 0, false ) ); } 8667 8673 break; … … 8670 8676 8671 8677 /* Line 1806 of yacc.c */ 8672 #line 259 2"parser.yy"8678 #line 2594 "parser.yy" 8673 8679 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newVarArray( 0 ) ); } 8674 8680 break; 8675 8681 8676 8682 case 673: 8677 8678 /* Line 1806 of yacc.c */8679 #line 2607 "parser.yy"8680 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8681 break;8682 8683 case 674:8684 8683 8685 8684 /* Line 1806 of yacc.c */ … … 8688 8687 break; 8689 8688 8689 case 674: 8690 8691 /* Line 1806 of yacc.c */ 8692 #line 2611 "parser.yy" 8693 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8694 break; 8695 8690 8696 case 675: 8691 8697 8692 8698 /* Line 1806 of yacc.c */ 8693 #line 261 4"parser.yy"8699 #line 2616 "parser.yy" 8694 8700 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8695 8701 break; … … 8698 8704 8699 8705 /* Line 1806 of yacc.c */ 8700 #line 261 6"parser.yy"8706 #line 2618 "parser.yy" 8701 8707 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8702 8708 break; … … 8705 8711 8706 8712 /* Line 1806 of yacc.c */ 8707 #line 26 18"parser.yy"8713 #line 2620 "parser.yy" 8708 8714 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8709 8715 break; … … 8712 8718 8713 8719 /* Line 1806 of yacc.c */ 8714 #line 262 0"parser.yy"8720 #line 2622 "parser.yy" 8715 8721 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8716 8722 break; … … 8719 8725 8720 8726 /* Line 1806 of yacc.c */ 8721 #line 262 2"parser.yy"8727 #line 2624 "parser.yy" 8722 8728 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8723 8729 break; 8724 8730 8725 8731 case 681: 8726 8727 /* Line 1806 of yacc.c */8728 #line 2628 "parser.yy"8729 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8730 break;8731 8732 case 682:8733 8732 8734 8733 /* Line 1806 of yacc.c */ … … 8737 8736 break; 8738 8737 8738 case 682: 8739 8740 /* Line 1806 of yacc.c */ 8741 #line 2632 "parser.yy" 8742 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8743 break; 8744 8739 8745 case 683: 8740 8746 8741 8747 /* Line 1806 of yacc.c */ 8742 #line 263 2"parser.yy"8748 #line 2634 "parser.yy" 8743 8749 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8744 8750 break; … … 8747 8753 8748 8754 /* Line 1806 of yacc.c */ 8749 #line 263 7"parser.yy"8755 #line 2639 "parser.yy" 8750 8756 { (yyval.decl) = DeclarationNode::newFunction( nullptr, nullptr, (yyvsp[(3) - (5)].decl), nullptr ); } 8751 8757 break; … … 8754 8760 8755 8761 /* Line 1806 of yacc.c */ 8756 #line 26 39"parser.yy"8762 #line 2641 "parser.yy" 8757 8763 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8758 8764 break; … … 8761 8767 8762 8768 /* Line 1806 of yacc.c */ 8763 #line 264 1"parser.yy"8769 #line 2643 "parser.yy" 8764 8770 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8765 8771 break; … … 8768 8774 8769 8775 /* Line 1806 of yacc.c */ 8770 #line 26 48"parser.yy"8776 #line 2650 "parser.yy" 8771 8777 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8772 8778 break; … … 8775 8781 8776 8782 /* Line 1806 of yacc.c */ 8777 #line 26 59"parser.yy"8783 #line 2661 "parser.yy" 8778 8784 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); } 8779 8785 break; … … 8782 8788 8783 8789 /* Line 1806 of yacc.c */ 8784 #line 266 2"parser.yy"8790 #line 2664 "parser.yy" 8785 8791 { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); } 8786 8792 break; … … 8789 8795 8790 8796 /* Line 1806 of yacc.c */ 8791 #line 266 4"parser.yy"8797 #line 2666 "parser.yy" 8792 8798 { (yyval.decl) = DeclarationNode::newArray( 0, (yyvsp[(3) - (5)].decl), false ); } 8793 8799 break; … … 8796 8802 8797 8803 /* Line 1806 of yacc.c */ 8798 #line 266 7"parser.yy"8804 #line 2669 "parser.yy" 8799 8805 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); } 8800 8806 break; … … 8803 8809 8804 8810 /* Line 1806 of yacc.c */ 8805 #line 26 69"parser.yy"8811 #line 2671 "parser.yy" 8806 8812 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl), true ); } 8807 8813 break; … … 8810 8816 8811 8817 /* Line 1806 of yacc.c */ 8812 #line 267 1"parser.yy"8818 #line 2673 "parser.yy" 8813 8819 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(3) - (7)].decl), true ); } 8814 8820 break; 8815 8821 8816 8822 case 697: 8817 8818 /* Line 1806 of yacc.c */8819 #line 2685 "parser.yy"8820 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }8821 break;8822 8823 case 698:8824 8823 8825 8824 /* Line 1806 of yacc.c */ … … 8828 8827 break; 8829 8828 8829 case 698: 8830 8831 /* Line 1806 of yacc.c */ 8832 #line 2689 "parser.yy" 8833 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8834 break; 8835 8830 8836 case 699: 8831 8837 8832 8838 /* Line 1806 of yacc.c */ 8833 #line 269 2"parser.yy"8839 #line 2694 "parser.yy" 8834 8840 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8835 8841 break; … … 8838 8844 8839 8845 /* Line 1806 of yacc.c */ 8840 #line 269 4"parser.yy"8846 #line 2696 "parser.yy" 8841 8847 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8842 8848 break; … … 8845 8851 8846 8852 /* Line 1806 of yacc.c */ 8847 #line 269 6"parser.yy"8853 #line 2698 "parser.yy" 8848 8854 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8849 8855 break; … … 8852 8858 8853 8859 /* Line 1806 of yacc.c */ 8854 #line 2 698"parser.yy"8860 #line 2700 "parser.yy" 8855 8861 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8856 8862 break; … … 8859 8865 8860 8866 /* Line 1806 of yacc.c */ 8861 #line 270 0"parser.yy"8867 #line 2702 "parser.yy" 8862 8868 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8863 8869 break; 8864 8870 8865 8871 case 705: 8866 8867 /* Line 1806 of yacc.c */8868 #line 2706 "parser.yy"8869 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }8870 break;8871 8872 case 706:8873 8872 8874 8873 /* Line 1806 of yacc.c */ … … 8877 8876 break; 8878 8877 8878 case 706: 8879 8880 /* Line 1806 of yacc.c */ 8881 #line 2710 "parser.yy" 8882 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8883 break; 8884 8879 8885 case 707: 8880 8886 8881 8887 /* Line 1806 of yacc.c */ 8882 #line 271 0"parser.yy"8888 #line 2712 "parser.yy" 8883 8889 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8884 8890 break; … … 8887 8893 8888 8894 /* Line 1806 of yacc.c */ 8889 #line 271 5"parser.yy"8895 #line 2717 "parser.yy" 8890 8896 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8891 8897 break; … … 8894 8900 8895 8901 /* Line 1806 of yacc.c */ 8896 #line 271 7"parser.yy"8902 #line 2719 "parser.yy" 8897 8903 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8898 8904 break; … … 8901 8907 8902 8908 /* Line 1806 of yacc.c */ 8903 #line 272 7"parser.yy"8909 #line 2729 "parser.yy" 8904 8910 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 8905 8911 break; … … 8908 8914 8909 8915 /* Line 1806 of yacc.c */ 8910 #line 273 7"parser.yy"8916 #line 2739 "parser.yy" 8911 8917 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8912 8918 break; … … 8915 8921 8916 8922 /* Line 1806 of yacc.c */ 8917 #line 27 39"parser.yy"8923 #line 2741 "parser.yy" 8918 8924 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8919 8925 break; … … 8922 8928 8923 8929 /* Line 1806 of yacc.c */ 8924 #line 274 1"parser.yy"8930 #line 2743 "parser.yy" 8925 8931 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8926 8932 break; … … 8929 8935 8930 8936 /* Line 1806 of yacc.c */ 8931 #line 274 3"parser.yy"8937 #line 2745 "parser.yy" 8932 8938 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8933 8939 break; … … 8936 8942 8937 8943 /* Line 1806 of yacc.c */ 8938 #line 274 5"parser.yy"8944 #line 2747 "parser.yy" 8939 8945 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8940 8946 break; … … 8943 8949 8944 8950 /* Line 1806 of yacc.c */ 8945 #line 274 7"parser.yy"8951 #line 2749 "parser.yy" 8946 8952 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8947 8953 break; … … 8950 8956 8951 8957 /* Line 1806 of yacc.c */ 8952 #line 275 4"parser.yy"8958 #line 2756 "parser.yy" 8953 8959 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8954 8960 break; … … 8957 8963 8958 8964 /* Line 1806 of yacc.c */ 8959 #line 275 6"parser.yy"8965 #line 2758 "parser.yy" 8960 8966 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8961 8967 break; … … 8964 8970 8965 8971 /* Line 1806 of yacc.c */ 8966 #line 27 58"parser.yy"8972 #line 2760 "parser.yy" 8967 8973 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8968 8974 break; … … 8971 8977 8972 8978 /* Line 1806 of yacc.c */ 8973 #line 276 0"parser.yy"8979 #line 2762 "parser.yy" 8974 8980 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); } 8975 8981 break; … … 8978 8984 8979 8985 /* Line 1806 of yacc.c */ 8980 #line 276 2"parser.yy"8986 #line 2764 "parser.yy" 8981 8987 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8982 8988 break; … … 8985 8991 8986 8992 /* Line 1806 of yacc.c */ 8987 #line 276 5"parser.yy"8993 #line 2767 "parser.yy" 8988 8994 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8989 8995 break; … … 8992 8998 8993 8999 /* Line 1806 of yacc.c */ 8994 #line 276 7"parser.yy"9000 #line 2769 "parser.yy" 8995 9001 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8996 9002 break; … … 8999 9005 9000 9006 /* Line 1806 of yacc.c */ 9001 #line 27 69"parser.yy"9007 #line 2771 "parser.yy" 9002 9008 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9003 9009 break; … … 9006 9012 9007 9013 /* Line 1806 of yacc.c */ 9008 #line 277 1"parser.yy"9014 #line 2773 "parser.yy" 9009 9015 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); } 9010 9016 break; … … 9013 9019 9014 9020 /* Line 1806 of yacc.c */ 9015 #line 277 3"parser.yy"9021 #line 2775 "parser.yy" 9016 9022 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9017 9023 break; … … 9020 9026 9021 9027 /* Line 1806 of yacc.c */ 9022 #line 27 78"parser.yy"9028 #line 2780 "parser.yy" 9023 9029 { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); } 9024 9030 break; … … 9027 9033 9028 9034 /* Line 1806 of yacc.c */ 9029 #line 278 0"parser.yy"9035 #line 2782 "parser.yy" 9030 9036 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); } 9031 9037 break; … … 9034 9040 9035 9041 /* Line 1806 of yacc.c */ 9036 #line 278 5"parser.yy"9042 #line 2787 "parser.yy" 9037 9043 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), true ); } 9038 9044 break; … … 9041 9047 9042 9048 /* Line 1806 of yacc.c */ 9043 #line 278 7"parser.yy"9049 #line 2789 "parser.yy" 9044 9050 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl)->addQualifiers( (yyvsp[(3) - (7)].decl) ), true ); } 9045 9051 break; … … 9048 9054 9049 9055 /* Line 1806 of yacc.c */ 9050 #line 281 4"parser.yy"9056 #line 2816 "parser.yy" 9051 9057 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 9052 9058 break; … … 9055 9061 9056 9062 /* Line 1806 of yacc.c */ 9057 #line 282 5"parser.yy"9063 #line 2827 "parser.yy" 9058 9064 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 9059 9065 break; … … 9062 9068 9063 9069 /* Line 1806 of yacc.c */ 9064 #line 282 7"parser.yy"9070 #line 2829 "parser.yy" 9065 9071 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 9066 9072 break; … … 9069 9075 9070 9076 /* Line 1806 of yacc.c */ 9071 #line 28 29"parser.yy"9077 #line 2831 "parser.yy" 9072 9078 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 9073 9079 break; … … 9076 9082 9077 9083 /* Line 1806 of yacc.c */ 9078 #line 283 1"parser.yy"9084 #line 2833 "parser.yy" 9079 9085 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 9080 9086 break; … … 9083 9089 9084 9090 /* Line 1806 of yacc.c */ 9085 #line 283 3"parser.yy"9091 #line 2835 "parser.yy" 9086 9092 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 9087 9093 break; … … 9090 9096 9091 9097 /* Line 1806 of yacc.c */ 9092 #line 283 5"parser.yy"9098 #line 2837 "parser.yy" 9093 9099 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 9094 9100 break; … … 9097 9103 9098 9104 /* Line 1806 of yacc.c */ 9099 #line 284 2"parser.yy"9105 #line 2844 "parser.yy" 9100 9106 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( nullptr, nullptr, false ) ); } 9101 9107 break; … … 9104 9110 9105 9111 /* Line 1806 of yacc.c */ 9106 #line 284 4"parser.yy"9112 #line 2846 "parser.yy" 9107 9113 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( nullptr, nullptr, false ) ); } 9108 9114 break; … … 9111 9117 9112 9118 /* Line 1806 of yacc.c */ 9113 #line 284 6"parser.yy"9119 #line 2848 "parser.yy" 9114 9120 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9115 9121 break; … … 9118 9124 9119 9125 /* Line 1806 of yacc.c */ 9120 #line 28 48"parser.yy"9126 #line 2850 "parser.yy" 9121 9127 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( nullptr, nullptr, false ) ); } 9122 9128 break; … … 9125 9131 9126 9132 /* Line 1806 of yacc.c */ 9127 #line 285 0"parser.yy"9133 #line 2852 "parser.yy" 9128 9134 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( nullptr, nullptr, false ) ); } 9129 9135 break; … … 9132 9138 9133 9139 /* Line 1806 of yacc.c */ 9134 #line 285 2"parser.yy"9140 #line 2854 "parser.yy" 9135 9141 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9136 9142 break; … … 9139 9145 9140 9146 /* Line 1806 of yacc.c */ 9141 #line 285 7"parser.yy"9147 #line 2859 "parser.yy" 9142 9148 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); } 9143 9149 break; 9144 9150 9145 9151 case 753: 9146 9147 /* Line 1806 of yacc.c */9148 #line 2864 "parser.yy"9149 { (yyval.decl) = DeclarationNode::newFunction( nullptr, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), nullptr ); }9150 break;9151 9152 case 754:9153 9152 9154 9153 /* Line 1806 of yacc.c */ … … 9157 9156 break; 9158 9157 9158 case 754: 9159 9160 /* Line 1806 of yacc.c */ 9161 #line 2868 "parser.yy" 9162 { (yyval.decl) = DeclarationNode::newFunction( nullptr, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), nullptr ); } 9163 break; 9164 9159 9165 case 757: 9160 9166 9161 9167 /* Line 1806 of yacc.c */ 9162 #line 289 0"parser.yy"9168 #line 2892 "parser.yy" 9163 9169 { (yyval.en) = nullptr; } 9164 9170 break; … … 9167 9173 9168 9174 /* Line 1806 of yacc.c */ 9169 #line 289 2"parser.yy"9175 #line 2894 "parser.yy" 9170 9176 { (yyval.en) = (yyvsp[(2) - (2)].en); } 9171 9177 break; … … 9174 9180 9175 9181 /* Line 1806 of yacc.c */ 9176 #line 91 77"Parser/parser.cc"9182 #line 9183 "Parser/parser.cc" 9177 9183 default: break; 9178 9184 } … … 9405 9411 9406 9412 /* Line 2067 of yacc.c */ 9407 #line 289 5"parser.yy"9413 #line 2897 "parser.yy" 9408 9414 9409 9415 // ----end of grammar---- -
TabularUnified src/Parser/parser.h ¶
r1267fb1 r44a81853 272 272 273 273 /* Line 2068 of yacc.c */ 274 #line 1 20"parser.yy"274 #line 119 "parser.yy" 275 275 276 276 Token tok; -
TabularUnified src/Parser/parser.yy ¶
r1267fb1 r44a81853 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Dec 14 21:28:22 201613 // Update Count : 2 09012 // Last Modified On : Wed Jan 18 15:51:25 2017 13 // Update Count : 2135 14 14 // 15 15 … … 32 32 // 33 33 // 1. designation with and without '=' (use ':' instead) 34 // 2. attributes not allowed in parenthesis of declarator35 34 // 36 35 // All of the syntactic extensions for GCC C are marked with the comment "GCC". The second extensions are for Cforall … … 136 135 137 136 %type<tok> identifier no_01_identifier no_attr_identifier zero_one 138 %type<tok> identifier_or_type_name no_attr_identifier_or_type_name no_01_identifier_or_type_name 137 %type<tok> identifier_or_type_name no_attr_identifier_or_type_name no_01_identifier_or_type_name attr_name 139 138 %type<constant> string_literal 140 139 %type<str> string_literal_list … … 253 252 %type<decl> variable_abstract_ptr variable_array variable_declarator variable_function variable_ptr 254 253 255 %type<decl> attribute_list_opt attribute_list attribute 254 %type<decl> attribute_list_opt attribute_list attribute_name_list attribute attribute_name 256 255 257 256 // initializers … … 709 708 710 709 labeled_statement: 711 // labels cannot be identifiers 0 or 1 712 IDENTIFIER':' attribute_list_opt statement713 { 714 $$ = $4->add_label( $1 );710 // labels cannot be identifiers 0 or 1 or ATTR_IDENTIFIER 711 identifier_or_type_name ':' attribute_list_opt statement 712 { 713 $$ = $4->add_label( $1, $3 ); 715 714 } 716 715 ; … … 877 876 878 877 jump_statement: 879 GOTO IDENTIFIER';'878 GOTO identifier_or_type_name ';' 880 879 { $$ = new StatementNode( build_branch( $2, BranchStmt::Goto ) ); } 881 880 | GOTO '*' comma_expression ';' // GCC, computed goto … … 886 885 // A semantic check is required to ensure this statement appears only in the body of an iteration statement. 887 886 { $$ = new StatementNode( build_branch( BranchStmt::Continue ) ); } 888 | CONTINUE IDENTIFIER ';'// CFA, multi-level continue887 | CONTINUE identifier_or_type_name ';' // CFA, multi-level continue 889 888 // A semantic check is required to ensure this statement appears only in the body of an iteration statement, and 890 889 // the target of the transfer appears only at the start of an iteration statement. … … 893 892 // A semantic check is required to ensure this statement appears only in the body of an iteration statement. 894 893 { $$ = new StatementNode( build_branch( BranchStmt::Break ) ); } 895 | BREAK IDENTIFIER ';'// CFA, multi-level exit894 | BREAK identifier_or_type_name ';' // CFA, multi-level exit 896 895 // A semantic check is required to ensure this statement appears only in the body of an iteration statement, and 897 896 // the target of the transfer appears only at the start of an iteration statement. … … 1326 1325 type_qualifier_name 1327 1326 | attribute 1328 //{ $$ = DeclarationNode::newQualifier( DeclarationNode::Attribute ); }1329 1327 ; 1330 1328 … … 2177 2175 2178 2176 attribute: // GCC 2179 ATTRIBUTE '(' '(' attribute_parameter_list ')' ')' 2180 // { $$ = DeclarationNode::newQualifier( DeclarationNode::Attribute ); } 2177 ATTRIBUTE '(' '(' attribute_name_list ')' ')' 2178 { $$ = $4; } 2179 ; 2180 2181 attribute_name_list: // GCC 2182 attribute_name 2183 | attribute_name_list ',' attribute_name 2184 { $$ = $1->addQualifiers( $3 ); } 2185 ; 2186 2187 attribute_name: // GCC 2188 // empty 2181 2189 { $$ = nullptr; } 2182 ; 2183 2184 attribute_parameter_list: // GCC 2185 attrib 2186 | attribute_parameter_list ',' attrib 2187 ; 2188 2189 attrib: // GCC 2190 // empty 2191 | any_word 2192 | any_word '(' comma_expression_opt ')' { delete $3; } // FIX ME: unimplemented 2193 ; 2194 2195 any_word: // GCC 2196 identifier_or_type_name { delete $1; } // FIX ME: unimplemented 2197 | storage_class { delete $1; } // FIX ME: unimplemented 2198 | basic_type_name { delete $1; } // FIX ME: unimplemented 2199 | type_qualifier { delete $1; } // FIX ME: unimplemented 2190 | attr_name 2191 { $$ = DeclarationNode::newAttribute( $1 ); } 2192 | attr_name '(' argument_expression_list ')' 2193 { $$ = DeclarationNode::newAttribute( $1, $3 ); } 2194 ; 2195 2196 attr_name: // GCC 2197 IDENTIFIER 2198 | TYPEDEFname 2199 | TYPEGENname 2200 | CONST 2201 { $$ = Token{ new string( "__const__" ) }; } 2200 2202 ; 2201 2203
Note: See TracChangeset
for help on using the changeset viewer.