diff options
author | David Mitchell <davem@iabyn.com> | 2018-01-18 09:44:10 +0000 |
---|---|---|
committer | David Mitchell <davem@iabyn.com> | 2018-01-19 21:01:21 +0000 |
commit | 894f226e51fd4f80c130447477b789cd25f37574 (patch) | |
tree | 8ece1b7b33c24bd2fca57a1c37329b7636c3fb2f /perly.tab | |
parent | 8162c1afb1f54c157e62cc2627c156ef349a83d4 (diff) | |
download | perl-894f226e51fd4f80c130447477b789cd25f37574.tar.gz |
move sub attributes before the signature
RT #132141
Attributes such as :lvalue have to come *before* the signature to ensure
that they're applied to any code block within the signature; e.g.
sub f :lvalue ($a = do { $x = "abc"; return substr($x,0,1)}) {
....
}
So this commit moves sub attributes to come before the signature. This is
how they were originally, but they were swapped with v5.21.7-394-gabcf453.
This commit is essentially a revert of that commit (and its followups
v5.21.7-395-g71917f6, v5.21.7-421-g63ccd0d), plus some extra work for
Deparse, and an extra test.
See:
RT #123069 for why they were originally swapped
RT #132141 for why that broke :lvalue
http://nntp.perl.org/group/perl.perl5.porters/247999
for a general discussion about RT #132141
Diffstat (limited to 'perly.tab')
-rw-r--r-- | perly.tab | 1410 |
1 files changed, 694 insertions, 716 deletions
@@ -6,16 +6,16 @@ #define YYFINAL 14 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 3096 +#define YYLAST 2985 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 105 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 86 /* YYNRULES -- Number of rules. */ -#define YYNRULES 272 +#define YYNRULES 271 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 540 +#define YYNSTATES 532 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ @@ -72,31 +72,31 @@ static const yytype_uint16 yyrline[] = 0, 118, 118, 117, 129, 128, 139, 138, 152, 151, 165, 164, 178, 177, 190, 198, 206, 210, 218, 224, 225, 235, 236, 245, 249, 253, 257, 264, 266, 277, - 276, 310, 309, 348, 356, 355, 364, 370, 376, 381, - 383, 385, 392, 400, 402, 399, 419, 424, 431, 430, - 445, 453, 459, 466, 465, 480, 484, 489, 497, 515, - 516, 521, 523, 525, 527, 529, 531, 533, 536, 542, - 543, 548, 559, 560, 566, 572, 573, 578, 581, 585, - 590, 594, 598, 599, 603, 609, 614, 619, 620, 625, - 626, 631, 632, 634, 639, 641, 653, 654, 659, 661, - 665, 685, 686, 688, 694, 759, 761, 767, 769, 773, - 779, 780, 785, 784, 836, 837, 841, 843, 845, 847, - 851, 853, 858, 862, 866, 870, 876, 881, 887, 893, - 895, 898, 897, 908, 909, 913, 917, 920, 925, 930, - 933, 937, 941, 947, 955, 962, 968, 970, 972, 977, - 979, 981, 986, 988, 990, 992, 994, 996, 998, 1000, - 1002, 1004, 1006, 1011, 1013, 1016, 1018, 1020, 1023, 1026, - 1037, 1040, 1047, 1049, 1051, 1053, 1055, 1058, 1072, 1074, - 1078, 1079, 1080, 1081, 1082, 1084, 1086, 1088, 1090, 1092, - 1094, 1096, 1098, 1100, 1102, 1104, 1106, 1108, 1110, 1120, - 1130, 1140, 1150, 1152, 1154, 1157, 1162, 1166, 1168, 1170, - 1172, 1175, 1177, 1180, 1182, 1184, 1186, 1188, 1190, 1192, - 1194, 1196, 1199, 1201, 1203, 1205, 1207, 1209, 1213, 1216, - 1215, 1228, 1229, 1230, 1234, 1236, 1238, 1243, 1245, 1248, - 1250, 1252, 1257, 1259, 1264, 1265, 1270, 1271, 1277, 1281, - 1282, 1283, 1286, 1287, 1290, 1291, 1294, 1298, 1302, 1308, - 1314, 1316, 1320, 1324, 1325, 1329, 1330, 1334, 1335, 1340, - 1342, 1344, 1347 + 276, 309, 317, 316, 325, 331, 337, 342, 344, 346, + 353, 361, 363, 360, 380, 385, 392, 391, 406, 414, + 420, 427, 426, 441, 445, 450, 458, 476, 477, 482, + 484, 486, 488, 490, 492, 494, 497, 503, 504, 509, + 520, 521, 527, 533, 534, 539, 542, 546, 551, 555, + 559, 560, 564, 570, 575, 580, 581, 586, 587, 592, + 593, 595, 600, 602, 614, 615, 620, 622, 626, 646, + 647, 649, 655, 720, 722, 728, 730, 734, 740, 741, + 745, 747, 746, 797, 808, 809, 813, 815, 817, 819, + 823, 825, 830, 834, 838, 842, 848, 853, 859, 865, + 867, 870, 869, 880, 881, 885, 889, 892, 897, 902, + 905, 909, 913, 919, 927, 934, 940, 942, 944, 949, + 951, 953, 958, 960, 962, 964, 966, 968, 970, 972, + 974, 976, 978, 983, 985, 988, 990, 992, 995, 998, + 1009, 1012, 1019, 1021, 1023, 1025, 1027, 1033, 1035, 1039, + 1040, 1041, 1042, 1043, 1045, 1047, 1049, 1051, 1053, 1055, + 1057, 1059, 1061, 1063, 1065, 1067, 1069, 1071, 1081, 1091, + 1101, 1111, 1113, 1115, 1118, 1123, 1127, 1129, 1131, 1133, + 1136, 1138, 1141, 1143, 1145, 1147, 1149, 1151, 1153, 1155, + 1157, 1160, 1162, 1164, 1166, 1168, 1170, 1174, 1177, 1176, + 1189, 1190, 1191, 1195, 1197, 1199, 1204, 1206, 1209, 1211, + 1213, 1218, 1220, 1225, 1226, 1231, 1232, 1238, 1242, 1243, + 1244, 1247, 1248, 1251, 1252, 1255, 1259, 1263, 1269, 1275, + 1277, 1281, 1285, 1286, 1290, 1291, 1295, 1296, 1301, 1303, + 1305, 1308 }; #endif @@ -122,18 +122,18 @@ static const char *const yytname[] = "ARROW", "')'", "'('", "';'", "'$'", "'*'", "'/'", "$accept", "grammar", "@1", "@2", "@3", "@4", "@5", "@6", "block", "formblock", "remember", "mblock", "mremember", "stmtseq", "formstmtseq", "fullstmt", - "labfullstmt", "barestmt", "$@7", "$@8", "$@9", "$@10", "$@11", "@12", - "$@13", "formline", "formarg", "sideff", "else", "cont", "mintro", - "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "formname", "startsub", + "labfullstmt", "barestmt", "$@7", "$@8", "$@9", "$@10", "@11", "$@12", + "formline", "formarg", "sideff", "else", "cont", "mintro", "nexpr", + "texpr", "iexpr", "mexpr", "mnexpr", "formname", "startsub", "startanonsub", "startformsub", "subname", "proto", "subattrlist", "myattrlist", "sigvarname", "sigslurpsigil", "sigslurpelem", "sigdefault", "sigscalarelem", "sigelem", "siglist", "siglistornull", - "subsignature", "$@14", "optsubbody", "expr", "listexpr", "listop", - "@15", "method", "subscripted", "termbinop", "termunop", "anonymous", - "termdo", "term", "@16", "myattrterm", "myterm", "optlistexpr", - "optexpr", "optrepl", "my_scalar", "my_var", "refgen_topic", "my_refgen", - "amper", "scalar", "ary", "hsh", "arylen", "star", "sliceme", "kvslice", - "gelem", "indirob", YY_NULLPTR + "subsignature", "$@13", "realsubbody", "optsubbody", "expr", "listexpr", + "listop", "@14", "method", "subscripted", "termbinop", "termunop", + "anonymous", "termdo", "term", "@15", "myattrterm", "myterm", + "optlistexpr", "optexpr", "optrepl", "my_scalar", "my_var", + "refgen_topic", "my_refgen", "amper", "scalar", "ary", "hsh", "arylen", + "star", "sliceme", "kvslice", "gelem", "indirob", YY_NULLPTR }; #endif @@ -156,74 +156,74 @@ static const yytype_uint16 yytoknum[] = }; # endif -#define YYPACT_NINF -455 +#define YYPACT_NINF -431 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-455))) + (!!((Yystate) == (-431))) -#define YYTABLE_NINF -268 +#define YYTABLE_NINF -267 #define yytable_value_is_error(Yytable_value) \ - (!!((Yytable_value) == (-268))) + (!!((Yytable_value) == (-267))) /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ static const yytype_int16 yypact[] = { - 805, -455, -455, -455, -455, -455, -455, 18, -455, 2795, - 19, 1487, 1392, -455, -455, -455, 1958, 2795, 2795, 32, - 32, 32, -455, 32, 32, -455, -455, 35, -47, -455, - 2795, -455, -455, -455, 2795, -42, -28, -7, 1865, 1770, - 32, 1865, 2051, 58, 2795, 133, 2795, 2795, 2795, 2795, - 2795, 2795, 2795, 2144, 32, 32, 394, 8, -455, 5, - -455, -455, -455, -455, 2956, -455, -455, -3, 45, 51, - 59, -455, 85, 126, 269, 108, -455, -455, -455, -455, - -455, 58, 98, -455, 26, 44, 50, 57, 337, 62, - 75, 19, 31, -455, 82, -455, 88, 2049, 1392, -455, - -455, -455, 632, 727, -455, 33, 412, 412, -455, -455, - -455, -455, -455, -455, -455, 2795, 90, 115, 2795, 46, - 500, 19, 16, 2956, 117, 2237, 1770, -455, 500, 530, - 8, -455, 454, 2795, -455, -455, 500, 213, 184, -455, - -455, 2795, 500, 2888, 2330, 162, -455, -455, -455, 500, - 8, 412, 412, 412, 504, 504, 223, 214, -455, -455, - 2795, 2795, 2795, 2795, 2795, 2795, 2423, 2795, 2795, 2795, - 2795, 2795, 2795, 2795, 2795, 2795, 2795, 2795, 2795, 2795, - 2795, 2795, -455, -455, -455, 312, 2516, 2795, 2795, 2795, - 2795, 2795, 2795, 2795, -455, 221, -455, 224, -455, -455, - -455, -455, -455, 158, 72, -455, -455, 168, -455, -455, - -455, -455, 19, -455, -455, 2795, 2795, 2795, 2795, 2795, - 2795, -455, -455, -455, -455, -455, 2795, 2795, 49, -455, - -455, -455, 174, 212, -455, -455, 424, 166, 2795, 8, - -455, 265, -455, 2609, 412, 162, 167, 208, 239, -455, - 445, 267, -455, 2795, 282, 220, 220, -455, 2956, 292, - 55, -455, 545, 1569, 487, 1848, 709, 290, 2956, 2914, - 389, 389, 1660, 1755, 1941, 311, 412, 412, 2795, 2795, - 194, 200, 204, -455, 215, 2702, 12, 227, 209, -455, - -455, 602, 356, 67, 369, 78, 378, 165, 416, 822, - -455, 308, 235, -2, 319, 2795, 2795, 2795, 2795, -455, - 229, -455, -455, 240, -455, -455, -455, -455, 1581, 7, - -455, 2795, 2795, -455, 394, -455, 394, 394, 394, 394, - 394, 245, -60, -455, 2795, -455, 212, 329, 19, -455, - -455, 617, -455, 15, 630, -455, -455, -455, 179, 2795, - 335, -455, -455, 2795, 492, 196, -455, -455, -455, -455, - -455, 638, -455, -455, 2795, -455, 344, -455, 345, -455, - 347, -455, 349, -455, -455, -455, 350, -455, -455, -455, - 340, 277, 394, 284, 285, 394, 293, 281, -455, -455, - -455, -455, 300, 288, 322, -455, 2795, 301, 303, -455, - 2795, 314, -455, 9, 402, -455, -455, -455, 27, -455, - 231, -455, 2998, 406, -455, -455, 318, -455, -455, -455, - -455, 321, 212, 174, -455, 2795, -455, -455, 410, 410, - 2795, 2795, 410, -455, 320, 324, 410, 410, 394, -455, - -455, -455, 407, 407, -455, -455, -455, 358, 328, -455, - -455, -455, -455, 362, 2, 212, -455, 339, 410, 410, - -455, 38, 38, 346, 357, 82, 2795, 2795, 410, -455, - -455, -455, 360, 360, 9, -455, 917, -455, -455, -455, - -455, 427, 1012, -455, 82, 82, -455, 410, 355, -455, - -455, 410, 410, -455, 361, 359, 82, 2795, -455, -455, - -455, -455, -10, -455, -455, -455, -455, 1107, -455, 2795, - 82, 82, -455, 410, -455, 2956, 376, 440, -455, 1202, - -455, 379, -455, -455, -455, 82, -455, -455, -455, -455, - 410, 1675, -455, 1297, 38, 381, -455, -455, 410, -455 + 737, -431, -431, -431, -431, -431, -431, 51, -431, 2726, + 58, 1418, 1323, -431, -431, -431, 1889, 2726, 2726, 1, + 1, 1, -431, 1, 1, -431, -431, 54, -82, -431, + 2726, -431, -431, -431, 2726, -24, -23, -9, 1796, 1701, + 1, 1796, 1982, 74, 2726, 171, 2726, 2726, 2726, 2726, + 2726, 2726, 2726, 2075, 1, 1, 267, 23, -431, 13, + -431, -431, -431, -431, 340, -431, -431, 8, 135, 140, + 248, -431, 110, 288, 291, 114, -431, -431, -431, -431, + -431, 74, 106, -431, 34, 43, 83, 88, 203, 97, + 98, 58, 103, -431, 160, -431, 141, 368, 1323, -431, + -431, -431, 658, 753, -431, 66, 493, 493, -431, -431, + -431, -431, -431, -431, -431, 2726, 131, 143, 2726, 154, + 526, 58, 242, 340, 173, 2168, 1701, -431, 526, 556, + 23, -431, 480, 2726, -431, -431, 526, 272, 116, -431, + -431, 2726, 526, 2819, 2261, 218, -431, -431, -431, 526, + 23, 493, 493, 493, 376, 376, 280, 56, -431, -431, + 2726, 2726, 2726, 2726, 2726, 2726, 2354, 2726, 2726, 2726, + 2726, 2726, 2726, 2726, 2726, 2726, 2726, 2726, 2726, 2726, + 2726, 2726, -431, -431, -431, 45, 2447, 2726, 2726, 2726, + 2726, 2726, 2726, 2726, -431, 286, -431, 287, -431, -431, + -431, -431, -431, 201, 70, -431, -431, 210, -431, -431, + -431, -431, 58, -431, -431, 2726, 2726, 2726, 2726, 2726, + 2726, -431, -431, -431, -431, -431, 2726, 2726, 121, -431, + -431, -431, 256, -431, -431, 383, 216, 2726, 23, -431, + 320, -431, 2540, 493, 218, 46, 73, 111, -431, 391, + 308, -431, 2726, 322, 263, 263, -431, 340, 126, 159, + -431, 395, 1500, 513, 1779, 298, 352, 340, 2845, 1592, + 1592, 401, 1686, 1872, 641, 493, 493, 2726, 2726, 247, + 258, 270, -431, 279, 2633, 33, 283, 251, -431, -431, + 434, 155, 166, 163, 243, 271, 246, 296, 848, -431, + 334, -431, -4, 337, 2726, 2726, 2726, 2726, -431, 273, + -431, -431, 277, -431, -431, -431, -431, 1512, 109, -431, + 2726, 2726, -431, 267, -431, 267, 267, 267, 267, 267, + 275, -52, -431, 2726, 360, -431, -431, -431, 443, -431, + 3, 450, -431, -431, -431, 249, 2726, 396, -431, -431, + 2726, 329, 254, -431, -431, -431, -431, -431, 470, -431, + -431, 2726, -431, 405, -431, 407, -431, 418, -431, 421, + -431, -431, -431, 242, -431, -431, 413, 312, 267, 335, + 341, 267, 347, 353, -431, -431, -431, -431, 364, 366, + 314, -431, 2726, 378, 379, -431, 2726, 380, -431, -431, + 375, -431, -431, 48, -431, 274, -431, 2887, 485, -431, + -431, 402, -431, -431, -431, -431, 399, 256, -431, 2726, + -431, -431, 495, 495, 2726, 2726, 495, -431, 412, 403, + 495, 495, 267, -431, -431, 496, -431, -431, -431, 442, + 426, -431, 428, 495, 495, -431, 130, 130, 415, 431, + 160, 2726, 2726, 495, -431, -431, 112, -431, -431, -431, + -431, -431, 943, -431, 160, 160, -431, 495, 432, -431, + -431, 495, 495, -431, 433, 436, 160, -431, -431, 511, + 511, -431, -431, -431, 460, 447, 1038, 9, -431, -431, + -431, 1133, -431, 2726, 160, 160, -431, 495, -431, -431, + 469, 469, 112, -431, -431, 478, 531, -431, -431, 452, + -431, -431, -431, 160, 2726, -431, -431, -431, -431, -431, + -431, 495, 1606, -431, 340, 1228, 130, 471, -431, -431, + 495, -431 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -231,87 +231,87 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 2, 4, 6, 8, 10, 12, 0, 16, 244, + 0, 2, 4, 6, 8, 10, 12, 0, 16, 243, 0, 0, 0, 19, 1, 19, 0, 0, 0, 0, - 0, 0, 231, 0, 0, 202, 229, 190, 224, 226, - 220, 85, 233, 85, 212, 222, 0, 0, 215, 242, - 0, 0, 0, 0, 0, 0, 218, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 245, 119, 232, 197, - 180, 181, 182, 183, 122, 187, 5, 203, 192, 195, - 194, 196, 193, 0, 0, 0, 16, 7, 61, 27, - 86, 0, 0, 84, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 57, 72, 9, 0, 62, 0, 11, - 24, 23, 0, 0, 173, 0, 163, 164, 269, 272, - 271, 270, 258, 259, 256, 242, 0, 0, 0, 0, - 221, 0, 89, 213, 0, 0, 244, 216, 217, 269, - 243, 129, 270, 0, 260, 179, 178, 0, 0, 87, - 88, 242, 188, 0, 0, 235, 239, 241, 240, 219, - 214, 165, 166, 185, 170, 171, 191, 0, 257, 262, + 0, 0, 230, 0, 0, 201, 228, 189, 223, 225, + 219, 83, 232, 83, 211, 221, 0, 0, 214, 241, + 0, 0, 0, 0, 0, 0, 217, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 244, 119, 231, 196, + 179, 180, 181, 182, 122, 186, 5, 202, 191, 194, + 193, 195, 192, 0, 0, 0, 16, 7, 59, 27, + 84, 0, 0, 82, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 55, 70, 9, 0, 60, 0, 11, + 24, 23, 0, 0, 173, 0, 163, 164, 268, 271, + 270, 269, 257, 258, 255, 241, 0, 0, 0, 0, + 220, 0, 87, 212, 0, 0, 243, 215, 216, 268, + 242, 129, 269, 0, 259, 178, 177, 0, 0, 85, + 86, 241, 187, 0, 0, 234, 238, 240, 239, 218, + 213, 165, 166, 184, 170, 171, 190, 0, 256, 261, 0, 0, 0, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, 168, 169, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 19, 83, 84, 0, 34, 16, + 0, 0, 0, 0, 19, 81, 82, 0, 32, 16, 16, 16, 16, 16, 0, 16, 16, 0, 16, 16, - 40, 56, 0, 52, 55, 0, 0, 0, 0, 0, - 0, 26, 25, 20, 172, 127, 244, 0, 0, 225, - 131, 90, 0, 91, 223, 227, 0, 0, 0, 123, - 175, 0, 206, 0, 186, 0, 192, 195, 194, 238, - 0, 95, 234, 0, 189, 117, 118, 116, 121, 0, - 0, 145, 0, 158, 154, 155, 151, 152, 149, 0, - 160, 161, 159, 157, 156, 153, 162, 150, 0, 0, - 264, 266, 0, 133, 0, 0, 0, 268, 126, 134, - 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 82, 0, 29, 0, 0, 77, 0, 0, 0, 254, - 0, 255, 252, 0, 253, 249, 250, 251, 0, 0, - 16, 0, 0, 73, 65, 66, 79, 63, 64, 67, - 68, 0, 246, 147, 242, 112, 91, 93, 0, 228, - 130, 0, 174, 191, 0, 236, 237, 94, 0, 0, - 0, 138, 144, 0, 0, 0, 208, 209, 210, 261, - 142, 0, 207, 211, 244, 205, 0, 136, 0, 198, - 0, 199, 0, 14, 16, 28, 89, 16, 16, 33, - 0, 0, 78, 0, 0, 80, 0, 0, 248, 16, - 76, 81, 0, 0, 62, 48, 0, 0, 0, 128, - 0, 0, 132, 110, 0, 92, 176, 124, 189, 148, - 0, 141, 184, 0, 137, 143, 0, 139, 200, 201, - 135, 0, 91, 0, 53, 242, 74, 74, 0, 0, - 0, 0, 0, 43, 0, 0, 0, 0, 247, 230, - 98, 99, 96, 96, 106, 105, 109, 111, 0, 19, - 146, 140, 125, 0, 0, 91, 19, 0, 0, 0, - 18, 69, 69, 0, 0, 72, 77, 0, 0, 38, - 39, 97, 101, 101, 107, 113, 0, 21, 115, 114, - 30, 0, 0, 35, 72, 72, 19, 0, 0, 36, - 37, 0, 0, 51, 0, 0, 72, 102, 104, 100, - 108, 177, 0, 19, 54, 41, 42, 0, 70, 0, - 72, 72, 44, 0, 47, 103, 59, 0, 22, 0, - 17, 0, 46, 50, 74, 72, 19, 58, 15, 32, - 0, 0, 49, 0, 69, 0, 60, 71, 0, 45 + 38, 54, 0, 50, 53, 0, 0, 0, 0, 0, + 0, 26, 25, 20, 172, 127, 243, 0, 0, 224, + 131, 88, 89, 222, 226, 0, 0, 0, 123, 175, + 0, 205, 0, 185, 0, 191, 194, 193, 237, 0, + 93, 233, 0, 188, 117, 118, 116, 121, 0, 0, + 145, 0, 158, 154, 155, 151, 152, 149, 0, 160, + 161, 159, 157, 156, 153, 162, 150, 0, 0, 263, + 265, 0, 133, 0, 0, 0, 267, 126, 134, 203, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, + 0, 29, 0, 0, 75, 0, 0, 0, 253, 0, + 254, 251, 0, 252, 248, 249, 250, 0, 0, 16, + 0, 0, 71, 63, 64, 77, 61, 62, 65, 66, + 0, 245, 147, 241, 91, 16, 227, 130, 0, 174, + 190, 0, 235, 236, 92, 0, 0, 0, 138, 144, + 0, 0, 0, 207, 208, 209, 260, 142, 0, 206, + 210, 243, 204, 0, 136, 0, 197, 0, 198, 0, + 14, 16, 28, 87, 16, 31, 0, 0, 76, 0, + 0, 78, 0, 0, 247, 16, 74, 79, 0, 0, + 60, 46, 0, 0, 0, 128, 0, 0, 132, 90, + 110, 176, 124, 188, 148, 0, 141, 183, 0, 137, + 143, 0, 139, 199, 200, 135, 0, 89, 51, 241, + 72, 72, 0, 0, 0, 0, 0, 41, 0, 0, + 0, 0, 246, 229, 111, 0, 146, 140, 125, 0, + 16, 19, 0, 0, 0, 18, 67, 67, 0, 0, + 70, 75, 0, 0, 36, 37, 108, 19, 21, 115, + 114, 30, 0, 33, 70, 70, 19, 0, 0, 34, + 35, 0, 0, 49, 0, 0, 70, 96, 97, 94, + 94, 104, 103, 107, 109, 0, 0, 0, 52, 39, + 40, 0, 68, 0, 70, 70, 42, 0, 45, 95, + 99, 99, 105, 112, 113, 57, 0, 22, 17, 0, + 44, 48, 72, 70, 100, 102, 98, 106, 19, 56, + 15, 0, 0, 47, 101, 0, 67, 0, 58, 69, + 0, 43 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -455, -455, -455, -455, -455, -455, -455, -455, 10, -455, - -36, -112, -455, -15, -455, 465, 384, 4, -455, -455, - -455, -455, -455, -455, -455, -455, -455, -313, -454, -174, - -426, -455, 17, 195, -175, -25, -455, 325, 491, -455, - 462, 150, -330, 309, 113, -455, -455, 84, -455, 89, - -455, -455, 136, -455, -455, -6, -20, -455, -455, -455, - -455, -455, -455, -455, -455, 25, -455, -455, 419, -106, - -122, -455, -455, 249, -455, -455, 371, 206, -43, -33, - -455, -455, -455, -455, -455, 243 + -431, -431, -431, -431, -431, -431, -431, -431, -10, -431, + 7, -163, -431, -12, -431, 568, 484, 18, -431, -431, + -431, -431, -431, -431, -431, -431, -304, -430, -181, -410, + -431, 132, 289, -271, 71, -431, 410, 559, -431, 520, + 230, 202, 381, 146, -431, -431, 119, -431, 125, -431, + -431, -431, -431, 188, -431, 59, -35, -431, -431, -431, + -431, -431, -431, -431, -431, -11, -431, -431, 489, -107, + -117, -431, -431, 326, -431, -431, 441, 50, -29, -25, + -431, -431, -431, -431, -431, 24 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 7, 8, 9, 10, 11, 12, 13, 94, 375, - 15, 461, 486, 102, 502, 223, 100, 101, 376, 377, - 304, 466, 524, 434, 456, 518, 527, 96, 489, 213, - 458, 391, 381, 325, 384, 393, 301, 198, 121, 195, - 141, 233, 338, 252, 472, 443, 444, 498, 445, 446, - 447, 448, 336, 403, 480, 97, 57, 58, 334, 288, + -1, 7, 8, 9, 10, 11, 12, 13, 110, 372, + 400, 446, 466, 102, 487, 223, 100, 101, 373, 303, + 451, 512, 428, 441, 507, 519, 96, 469, 213, 443, + 387, 377, 324, 380, 389, 300, 198, 121, 195, 141, + 232, 335, 251, 500, 480, 481, 515, 482, 483, 484, + 485, 435, 456, 401, 461, 97, 57, 58, 333, 287, 59, 60, 61, 62, 63, 64, 117, 65, 145, 131, - 66, 401, 387, 312, 313, 206, 67, 68, 69, 70, + 66, 397, 383, 311, 312, 206, 67, 68, 69, 70, 71, 72, 73, 74, 75, 158 }; @@ -320,222 +320,243 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 103, 459, 147, 56, 237, 390, 404, 378, 490, 225, - 105, 76, 148, 516, 164, 95, 165, 163, 14, 130, - 77, 76, 19, 20, 440, 441, 253, 150, 76, 110, - 110, 110, 108, 110, 110, 242, 138, 109, 349, 231, - 194, 76, 106, 107, 400, 224, 118, 157, 127, 110, - 110, 135, 108, 119, 187, 120, 188, 109, 124, 123, - -263, 333, -263, 128, 110, 110, 136, 351, -265, 142, - -265, 149, 125, 151, 152, 153, 154, 155, 139, 367, - 537, 487, 488, 140, -238, 163, 232, 19, 20, 21, - 369, 517, 454, 126, -267, 130, -237, 186, 531, 379, - 247, 210, 222, 478, 331, 166, 160, 161, 162, 54, - 248, 442, 228, 239, 54, 362, -16, 193, 197, 236, - 56, 130, 160, 161, 162, 481, 199, 212, 160, 161, - 162, 230, 211, 386, 54, 189, 110, 190, 250, 311, - 160, 161, 162, 392, 200, 229, 397, 398, 19, 20, - 201, 160, 161, 162, 255, 256, 257, 202, 259, 260, - 262, 316, 208, 305, 306, 307, 308, 310, 244, 318, - 319, 317, 321, 322, 54, 209, 187, 371, 188, 299, - 291, 292, 293, 294, 295, 296, 297, 298, 258, 214, - 226, 409, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 332, 414, 324, - 326, 327, 328, 329, 330, 227, 234, -263, 390, -263, - 56, 435, 323, 240, 143, 111, 111, 111, 402, 111, - 111, 251, 341, 144, 253, 54, -239, 344, 160, 161, - 162, 300, 416, 450, 303, 132, 111, 348, -265, 309, - -265, 146, 160, 161, 162, 463, 464, 160, 161, 162, - 111, 111, 112, 113, 114, 340, 115, 116, 320, 160, - 161, 162, 354, 355, 335, 342, 316, -241, 191, 361, - 192, 337, 133, 134, 396, 241, 317, 160, 161, 162, - 347, 493, 495, 349, 207, 162, 110, 356, 159, 382, - 326, 385, 385, 357, 160, 161, 162, 358, -240, 364, - 505, 506, 394, 254, 130, 385, 385, 462, 359, 457, - 465, 278, 514, 279, 469, 470, 374, 280, 281, 282, - 363, 54, 132, 283, 521, -31, 522, 523, 421, 380, - 389, 423, 424, 410, 399, 411, 484, 485, 406, 246, - 170, 532, 405, 431, 417, 418, 496, 419, 56, 420, - 425, 215, 216, 217, 218, 160, 161, 162, 219, 238, - 220, 170, 171, 231, 284, 508, 426, 180, 412, 510, - 511, 430, 181, 427, 428, 182, 183, 184, 185, 433, - 385, 289, 429, 350, 438, 160, 161, 162, 180, 432, - 436, 525, 437, 181, 203, 130, 182, 183, 184, 185, - 315, 449, 285, 439, 286, 287, 451, 452, 534, 460, - 467, -80, 453, 468, 385, 385, 539, 475, 204, 160, - 161, 162, 471, 477, 476, 474, 503, 205, 497, 54, - 483, 482, 160, 161, 162, 491, 526, 168, 169, 170, - 171, 160, 161, 162, -192, 509, 492, 366, 513, 528, - 382, 385, 512, 187, 479, 188, -192, 160, 161, 162, - 368, 507, 176, 177, 178, 179, 180, 99, 530, 370, - 538, 181, 221, 494, 182, 183, 184, 185, 519, 160, - 161, 162, 111, -192, -192, -192, -192, 160, 161, 162, - -192, 383, -192, 385, 181, -192, 535, 182, 183, 184, - 185, 533, -192, -192, -192, -192, 388, 372, 160, 161, - 162, 302, 515, 339, 122, 315, 422, -192, -192, -192, - -231, -192, -192, -192, -192, -192, -192, -192, -192, -192, - -192, -192, -231, 196, 346, -268, -192, 170, 171, -192, - -192, -192, -192, -192, 345, -192, 473, 499, -192, 455, - 170, 171, 245, 500, 0, 160, 161, 162, 395, -231, - -231, -231, -231, 179, 180, 314, -231, 0, -231, 181, - 0, -231, 182, 183, 184, 185, 179, 180, -231, -231, - -231, -231, 181, 413, 0, 182, 183, 184, 185, -268, - -268, -268, 185, -231, -231, -231, 0, -231, -231, -231, - -231, -231, -231, -231, -231, -231, -231, -231, 160, 161, - 162, 0, -231, 0, 0, -231, -231, -231, -231, -231, - 0, -231, -13, 78, -231, 0, 0, 0, 0, 0, - 0, 76, 0, 16, 352, 17, 18, 19, 20, 21, - 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, - 29, 30, 31, 32, 79, 98, 80, 81, 33, 82, - 83, 84, 85, 86, 87, 160, 161, 162, 88, 89, - 90, 91, 34, 0, 92, 35, 36, 37, 38, 39, - 160, 161, 162, 0, 40, 41, 42, 43, 44, 45, - 46, 365, 0, 160, 161, 162, 0, 0, 47, 0, - 0, 160, 161, 162, 0, 0, 407, 0, 0, 0, - 48, 49, 0, 50, 0, 51, 52, -3, 78, 408, - 0, 0, 53, 93, 54, 55, 76, 415, 16, 0, - 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, - 25, 26, 0, 27, 28, 29, 30, 31, 32, 79, - 98, 80, 81, 33, 82, 83, 84, 85, 86, 87, - 0, 0, 0, 88, 89, 90, 91, 34, 0, 92, - 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, - 41, 42, 43, 44, 45, 46, 180, 0, 0, 0, - 0, 181, 0, 47, 182, 183, 184, 185, 1, 2, - 3, 4, 5, 6, 0, 48, 49, 0, 50, 0, - 51, 52, 0, 78, 0, 0, 0, 53, 93, 54, - 55, 76, 373, 16, 0, 17, 18, 19, 20, 21, - 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, - 29, 30, 31, 32, 79, 98, 80, 81, 33, 82, - 83, 84, 85, 86, 87, 0, 0, 0, 88, 89, - 90, 91, 34, 0, 92, 35, 36, 37, 38, 39, - 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, - 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, + 77, 94, 94, 103, 130, 374, 106, 107, 225, 236, + 76, 444, 150, 386, 252, 15, 147, 470, 119, 120, + 148, 108, 164, 123, 165, 163, 109, 128, 127, 95, + 136, 135, 505, 142, 241, 149, 382, 151, 152, 153, + 154, 155, 76, 112, 113, 114, 388, 115, 116, 393, + 394, 14, 396, 108, 277, 187, 278, 188, 109, 346, + 279, 280, 281, 133, 134, 118, 282, 76, 56, 111, + 111, 111, -237, 111, 111, 105, 124, 125, 224, 159, + 130, 210, -262, 194, -262, 19, 20, 21, 94, 132, + 111, 126, 94, 94, 139, 146, 529, 375, 238, 140, + 163, 138, 522, 54, 111, 111, 130, 283, 186, 330, + 506, 230, 157, 166, 246, -238, 222, -236, 247, -266, + -264, 429, -264, 193, 19, 20, 197, 477, 478, 160, + 161, 162, 243, 332, 199, 54, 359, 310, 207, 160, + 161, 162, -240, 200, 187, 284, 188, 285, 286, -262, + 237, -262, 257, 448, 449, 253, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 348, 54, 467, 468, 315, 132, 228, 364, 316, + -239, 475, 298, 201, 235, 56, 19, 20, 202, 160, + 161, 162, 331, 245, 160, 161, 162, 208, 209, 160, + 161, 162, 322, 249, 211, 212, 304, 305, 306, 307, + 309, 54, 317, 318, 479, 320, 321, 240, 386, 254, + 255, 256, 509, 258, 259, 261, 398, 347, 160, 161, + 162, 226, 160, 161, 162, 288, 160, 161, 162, 160, + 161, 162, 214, 227, 411, 290, 291, 292, 293, 294, + 295, 296, 297, 229, 314, 366, 363, -264, 368, -264, + 447, 404, 143, 450, 365, 231, 409, 454, 455, 473, + 203, 144, 233, 54, 323, 325, 326, 327, 328, 329, + 464, 465, 239, 489, 490, 56, 436, 250, 94, 315, + 476, 252, 308, 316, 204, 498, 338, 189, 130, 190, + 191, 341, 192, 205, 492, 54, 299, 302, 494, 495, + 319, 345, 442, 510, 511, 337, 160, 161, 162, 160, + 161, 162, 160, 161, 162, 334, 392, 160, 161, 162, + 339, 344, 523, 346, 513, 111, 351, 352, 162, 407, + 160, 161, 162, 358, 160, 161, 162, 160, 161, 162, + 353, 361, 371, 215, 216, 217, 218, 376, 526, 384, + 219, 354, 220, 378, 325, 381, 381, 531, 314, 160, + 161, 162, 367, 355, 395, 54, 390, 385, 416, 381, + 381, 418, 356, 399, 130, 180, 360, 160, 161, 162, + 181, 167, 425, 182, 183, 184, 185, 369, 168, 169, + 170, 171, 160, 161, 162, 405, 406, 215, 216, 217, + 218, 420, 170, -78, 219, 412, 220, 413, 172, 173, + 56, 174, 175, 176, 177, 178, 179, 180, 414, 462, + 408, 415, 181, 419, 421, 182, 183, 184, 185, 180, + 422, 160, 161, 162, 181, 486, 423, 182, 183, 184, + 185, 381, 94, 424, 491, 432, 160, 161, 162, 168, + 169, 170, 171, 426, 160, 161, 162, 427, 160, 161, + 162, -267, -267, -267, 185, 434, 94, 430, 431, 433, + -191, 94, 336, 381, 381, 177, 178, 179, 180, 187, + 343, 188, -191, 181, 349, 437, 182, 183, 184, 185, + 439, 438, 453, 524, 445, 457, 525, 160, 161, 162, + 378, 381, 452, 458, 471, 94, 160, 161, 162, -191, + -191, -191, -191, 160, 161, 162, -191, 459, -191, 463, + 472, -191, 493, 362, 496, 497, 499, 502, -191, -191, + -191, -191, 402, 160, 161, 162, 503, 514, 518, 403, + 520, 521, 381, -191, -191, -191, -230, -191, -191, -191, + -191, -191, -191, -191, -191, -191, -191, -191, -230, 410, + 530, -267, -191, 170, 171, -191, -191, -191, -191, -191, + 99, -191, 221, 474, -191, 181, 170, 171, 182, 183, + 184, 185, 122, 527, 379, -230, -230, -230, -230, 179, + 180, 196, -230, 417, -230, 181, 301, -230, 182, 183, + 184, 185, 179, 180, -230, -230, -230, -230, 181, 440, + 516, 182, 183, 184, 185, 342, 501, 517, 460, -230, + -230, -230, 244, -230, -230, -230, -230, -230, -230, -230, + -230, -230, -230, -230, 391, 313, 0, 0, -230, 0, + 0, -230, -230, -230, -230, -230, 0, -230, -13, 78, + -230, 0, 0, 0, 0, 0, 0, 76, 0, 16, + 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, + 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, + 79, 98, 80, 81, 33, 82, 83, 84, 85, 86, + 87, 170, 171, 0, 88, 89, 90, 91, 34, 0, + 92, 35, 36, 37, 38, 39, 0, 0, 0, 0, + 40, 41, 42, 43, 44, 45, 46, 0, 180, 0, + 0, 0, 0, 181, 47, 0, 182, 183, 184, 185, + 1, 2, 3, 4, 5, 6, 48, 49, 0, 50, + 0, 51, 52, -3, 78, 0, 0, 0, 53, 93, + 54, 55, 76, 0, 16, 0, 17, 18, 19, 20, + 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, + 28, 29, 30, 31, 32, 79, 98, 80, 81, 33, + 82, 83, 84, 85, 86, 87, 0, 0, 0, 88, + 89, 90, 91, 34, 0, 92, 35, 36, 37, 38, + 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, + 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 48, 49, 0, 50, 0, 51, 52, 0, 78, 0, - 0, 0, 53, 93, 54, 55, 76, 501, 16, 0, - 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, - 25, 26, 0, 27, 28, 29, 30, 31, 32, 79, - 98, 80, 81, 33, 82, 83, 84, 85, 86, 87, - 0, 0, 0, 88, 89, 90, 91, 34, 0, 92, - 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, - 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, - 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, - 51, 52, 0, 78, 0, 0, 0, 53, 93, 54, - 55, 76, 504, 16, 0, 17, 18, 19, 20, 21, - 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, - 29, 30, 31, 32, 79, 98, 80, 81, 33, 82, - 83, 84, 85, 86, 87, 0, 0, 0, 88, 89, - 90, 91, 34, 0, 92, 35, 36, 37, 38, 39, - 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, - 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, + 0, 48, 49, 0, 50, 0, 51, 52, 0, 78, + 0, 0, 0, 53, 93, 54, 55, 76, 370, 16, + 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, + 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, + 79, 98, 80, 81, 33, 82, 83, 84, 85, 86, + 87, 0, 0, 0, 88, 89, 90, 91, 34, 0, + 92, 35, 36, 37, 38, 39, 0, 0, 0, 0, + 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, + 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, + 0, 51, 52, 0, 78, 0, 0, 0, 53, 93, + 54, 55, 76, 488, 16, 0, 17, 18, 19, 20, + 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, + 28, 29, 30, 31, 32, 79, 98, 80, 81, 33, + 82, 83, 84, 85, 86, 87, 0, 0, 0, 88, + 89, 90, 91, 34, 0, 92, 35, 36, 37, 38, + 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, + 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 48, 49, 0, 50, 0, 51, 52, 0, 78, 0, - 0, 0, 53, 93, 54, 55, 76, 520, 16, 0, - 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, - 25, 26, 0, 27, 28, 29, 30, 31, 32, 79, - 98, 80, 81, 33, 82, 83, 84, 85, 86, 87, - 0, 0, 0, 88, 89, 90, 91, 34, 0, 92, - 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, - 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, - 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, - 51, 52, 0, 78, 0, 0, 0, 53, 93, 54, - 55, 76, 529, 16, 0, 17, 18, 19, 20, 21, + 0, 48, 49, 0, 50, 0, 51, 52, 0, 78, + 0, 0, 0, 53, 93, 54, 55, 76, 504, 16, + 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, + 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, + 79, 98, 80, 81, 33, 82, 83, 84, 85, 86, + 87, 0, 0, 0, 88, 89, 90, 91, 34, 0, + 92, 35, 36, 37, 38, 39, 0, 0, 0, 0, + 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, + 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, + 0, 51, 52, 0, 78, 0, 0, 0, 53, 93, + 54, 55, 76, 508, 16, 0, 17, 18, 19, 20, + 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, + 28, 29, 30, 31, 32, 79, 98, 80, 81, 33, + 82, 83, 84, 85, 86, 87, 0, 0, 0, 88, + 89, 90, 91, 34, 0, 92, 35, 36, 37, 38, + 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, + 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 48, 49, 0, 50, 0, 51, 52, 0, 78, + 0, 0, 0, 53, 93, 54, 55, 76, 0, 16, + 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, + 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, + 79, 98, 80, 81, 33, 82, 83, 84, 85, 86, + 87, 0, 0, 0, 88, 89, 90, 91, 34, 0, + 92, 35, 36, 37, 38, 39, 0, 0, 0, 0, + 40, 41, 42, 43, 44, 45, 46, 0, 0, 528, + 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, + 0, 51, 52, 0, 78, 0, 0, 0, 53, 93, + 54, 55, 76, 0, 16, 0, 17, 18, 19, 20, + 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, + 28, 29, 30, 31, 32, 79, 98, 80, 81, 33, + 82, 83, 84, 85, 86, 87, 0, 0, 0, 88, + 89, 90, 91, 34, 0, 92, 35, 36, 37, 38, + 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, + 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 48, 49, 0, 50, 0, 51, 52, 0, 78, + 0, 0, 0, 53, 93, 54, 55, 76, 0, 16, + 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, + 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, + 79, 0, 80, 81, 33, 82, 83, 84, 85, 86, + 87, 0, 0, 0, 88, 89, 90, 91, 34, 0, + 92, 35, 36, 37, 38, 39, 0, 0, 0, 0, + 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, + 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, + 0, 51, 52, 78, 0, 0, 0, 0, 53, 93, + 54, 55, 0, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, - 29, 30, 31, 32, 79, 98, 80, 81, 33, 82, - 83, 84, 85, 86, 87, 0, 0, 0, 88, 89, - 90, 91, 34, 0, 92, 35, 36, 37, 38, 39, + 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, + 0, -267, 0, 0, 0, 0, 0, 0, 168, 169, + 170, 171, 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, - 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 48, 49, 0, 50, 0, 51, 52, 0, 78, 0, - 0, 0, 53, 93, 54, 55, 76, 0, 16, 0, - 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, - 25, 26, 0, 27, 28, 29, 30, 31, 32, 79, - 98, 80, 81, 33, 82, 83, 84, 85, 86, 87, - 0, 0, 0, 88, 89, 90, 91, 34, 0, 92, - 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, - 41, 42, 43, 44, 45, 46, 0, 0, 536, 0, - 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, - 51, 52, 0, 78, 0, 0, 0, 53, 93, 54, - 55, 76, 0, 16, 0, 17, 18, 19, 20, 21, + 46, 174, 175, 176, 177, 178, 179, 180, 47, 0, + 0, 0, 181, 0, 0, 182, 183, 184, 185, 0, + 48, 49, 0, 50, 0, 51, 52, 78, 0, 0, + 0, 0, 53, -73, 54, 55, 0, 16, 0, 17, + 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, + 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, + 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, + 168, 169, 170, 171, 0, 0, 34, 0, 0, 35, + 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, + 42, 43, 44, 45, 46, 176, 177, 178, 179, 180, + 0, 0, 47, 0, 181, 0, 0, 182, 183, 184, + 185, 0, 0, 0, 48, 49, 0, 50, 0, 51, + 52, 0, 0, 0, 0, -73, 53, 0, 54, 55, + 76, 0, 16, 0, 17, 18, 19, 20, 21, 0, + 0, 129, 23, 24, 25, 26, 109, 27, 28, 29, + 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, + 0, 0, 0, 0, 168, 169, 170, 171, 0, 0, + 0, 34, 0, 0, 35, 36, 37, 38, 39, 0, + 0, 0, 0, 40, 41, 42, 43, 44, 45, 46, + 0, 178, 179, 180, 0, 0, 0, 47, 181, 0, + 0, 182, 183, 184, 185, 0, 0, 0, 0, 48, + 49, 0, 50, 0, 51, 52, 0, 0, 0, 0, + 0, 53, 0, 54, 55, 76, 0, 16, 0, 17, + 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, + 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, + 0, 0, 33, 0, 0, 0, 0, 168, -267, 170, + 171, 0, 0, 0, 0, 0, 34, 0, 0, 35, + 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, + 42, 43, 44, 45, 46, 179, 180, 0, 0, 0, + 0, 181, 47, 0, 182, 183, 184, 185, 0, 0, + 0, 0, 0, 0, 48, 49, 0, 50, 0, 51, + 52, 0, 0, 0, 0, 0, 53, 0, 54, 55, + 16, 104, 17, 18, 19, 20, 21, 0, 0, 22, + 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, + 32, 0, 0, 0, 0, 33, 0, 0, 0, 0, + 168, 169, 170, 171, 0, 0, 0, 0, 0, 34, + 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, + 0, 40, 41, 42, 43, 44, 45, 46, 179, 180, + 0, 0, 0, 0, 181, 47, 0, 182, 183, 184, + 185, 0, 0, 0, 0, 0, 0, 48, 49, 0, + 50, 0, 51, 52, 0, 0, 0, 0, 0, 53, + 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, - 29, 30, 31, 32, 79, 98, 80, 81, 33, 82, - 83, 84, 85, 86, 87, 0, 0, 0, 88, 89, - 90, 91, 34, 0, 92, 35, 36, 37, 38, 39, + 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 48, 49, 0, 50, 0, 51, 52, 0, 78, 0, - 0, 0, 53, 93, 54, 55, 76, 0, 16, 0, - 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, - 25, 26, 0, 27, 28, 29, 30, 31, 32, 79, - 0, 80, 81, 33, 82, 83, 84, 85, 86, 87, - 0, 0, 0, 88, 89, 90, 91, 34, 0, 92, - 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, - 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, - 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, - 51, 52, 78, 0, 0, 0, 0, 53, 93, 54, - 55, 0, 16, 0, 17, 18, 19, 20, 21, 0, - 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, - 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, - -268, 0, 0, 0, 0, 0, 0, 168, 169, 170, - 171, 34, 0, 0, 35, 36, 37, 38, 39, 0, - 0, 0, 0, 40, 41, 42, 43, 44, 45, 46, - 174, 175, 176, 177, 178, 179, 180, 47, 0, 0, - 0, 181, 0, 0, 182, 183, 184, 185, 0, 48, - 49, 0, 50, 0, 51, 52, 78, 0, 0, 0, - 0, 53, -75, 54, 55, 0, 16, 0, 17, 18, - 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, - 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, - 0, 33, 0, 0, 0, 0, 0, 0, 168, 169, - 170, 171, 0, 0, 0, 34, 0, 0, 35, 36, - 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, - 43, 44, 45, 46, 177, 178, 179, 180, 0, 0, - 0, 47, 181, 0, 0, 182, 183, 184, 185, 0, - 0, 0, 0, 48, 49, 0, 50, 0, 51, 52, - 0, 0, 0, 0, -75, 53, 0, 54, 55, 76, - 0, 16, 0, 17, 18, 19, 20, 21, 0, 0, - 129, 23, 24, 25, 26, 109, 27, 28, 29, 30, - 31, 32, 0, 0, 0, 0, 33, 0, 0, 0, - 0, 0, 0, 168, 169, 170, 171, 0, 0, 0, - 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, - 0, 0, 40, 41, 42, 43, 44, 45, 46, 0, - 178, 179, 180, 0, 0, 0, 47, 181, 0, 0, - 182, 183, 184, 185, 0, 0, 0, 0, 48, 49, - 0, 50, 0, 51, 52, 0, 0, 0, 0, 0, - 53, 0, 54, 55, 76, 0, 16, 0, 17, 18, + 48, 49, 0, 50, 0, 51, 52, 0, 0, 0, + 0, 0, 53, 137, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, - 0, 33, 0, 0, 0, 0, 168, -268, 170, 171, + 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, - 43, 44, 45, 46, 179, 180, 0, 0, 0, 0, - 181, 47, 0, 182, 183, 184, 185, 0, 0, 0, + 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, + 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, 51, 52, - 0, 0, 0, 0, 0, 53, 0, 54, 55, 16, - 104, 17, 18, 19, 20, 21, 0, 0, 22, 23, + 0, 0, 0, 0, 156, 53, 0, 54, 55, 16, + 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, - 0, 0, 0, 0, 33, 0, 0, 0, 0, 168, - 169, 170, 171, 0, 0, 0, 0, 0, 34, 0, + 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, - 40, 41, 42, 43, 44, 45, 46, 179, 180, 0, - 0, 0, 0, 181, 47, 0, 182, 183, 184, 185, + 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, + 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, - 0, 51, 52, 0, 0, 0, 0, 0, 53, 0, + 0, 51, 52, 0, 0, 0, 0, 234, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, - 30, 31, 32, 0, 0, 0, 0, 33, 215, 216, - 217, 218, 0, 0, 0, 219, 0, 220, 0, 0, + 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, 46, - 0, 0, 160, 161, 162, 0, 0, 47, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, 51, 52, 0, 0, 0, 0, - 0, 53, 137, 54, 55, 16, 0, 17, 18, 19, + 248, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -544,7 +565,7 @@ static const yytype_int16 yytable[] = 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, 51, 52, 0, - 0, 0, 0, 156, 53, 0, 54, 55, 16, 0, + 0, 0, 0, 260, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, @@ -553,7 +574,7 @@ static const yytype_int16 yytable[] = 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, - 51, 52, 0, 0, 0, 0, 235, 53, 0, 54, + 51, 52, 0, 0, 0, 0, 289, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, 0, @@ -562,7 +583,7 @@ static const yytype_int16 yytable[] = 0, 0, 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, - 0, 50, 0, 51, 52, 0, 0, 0, 0, 249, + 0, 50, 0, 51, 52, 0, 0, 0, 0, 340, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 33, @@ -572,7 +593,7 @@ static const yytype_int16 yytable[] = 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, 51, 52, 0, 0, - 0, 0, 261, 53, 0, 54, 55, 16, 0, 17, + 0, 0, 357, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, @@ -581,275 +602,264 @@ static const yytype_int16 yytable[] = 42, 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, 50, 0, 51, - 52, 0, 0, 0, 0, 290, 53, 0, 54, 55, + 52, 0, 0, 0, 0, 0, 53, 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, 46, 0, 0, - 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 49, 0, - 50, 0, 51, 52, 0, 0, 0, 0, 343, 53, - 0, 54, 55, 16, 0, 17, 18, 19, 20, 21, - 0, 0, 22, 23, 24, 25, 26, 0, 27, 28, - 29, 30, 31, 32, 0, 0, 0, 0, 33, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 34, 0, 0, 35, 36, 37, 38, 39, - 0, 0, 0, 0, 40, 41, 42, 43, 44, 45, - 46, 0, 0, 0, 0, 0, 0, 0, 47, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 48, 49, 0, 50, 0, 51, 52, 0, 0, 0, - 0, 360, 53, 0, 54, 55, 16, 0, 17, 18, - 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, - 0, 27, 28, 29, 30, 31, 32, 0, 0, 0, - 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 34, 0, 0, 35, 36, - 37, 38, 39, 0, 0, 0, 0, 40, 41, 42, - 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, - 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 48, 49, 0, 50, 0, 51, 52, - 0, 0, 0, 0, 0, 53, 0, 54, 55, 16, - 0, 17, 18, 19, 20, 21, 0, 0, 22, 23, - 24, 25, 26, 0, 27, 28, 29, 30, 31, 32, - 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, - 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, - 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, - 0, 0, 0, 0, 47, 167, 0, 0, 0, 0, - 0, 0, 168, 169, 170, 171, 48, 49, 0, 50, - 0, 51, 52, 0, 0, 0, 0, 0, 243, 0, - 54, 55, 172, 173, 353, 174, 175, 176, 177, 178, - 179, 180, 0, 0, 0, 0, 181, 167, 0, 182, - 183, 184, 185, 0, 168, 169, 170, 171, 0, 0, + 0, 0, 0, 0, 0, 47, 167, 0, 0, 0, + 0, 0, 0, 168, 169, 170, 171, 48, 49, 0, + 50, 0, 51, 52, 0, 0, 0, 0, 0, 242, + 0, 54, 55, 172, 173, 350, 174, 175, 176, 177, + 178, 179, 180, 0, 0, 0, 0, 181, 167, 0, + 182, 183, 184, 185, 0, 168, 169, 170, 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 172, 173, 0, 174, 175, 176, - 177, 178, 179, 180, 0, 0, 0, 0, 181, 167, - 0, 182, 183, 184, 185, 0, 168, 169, 170, 171, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 173, 0, 174, - 175, 176, 177, 178, 179, 180, 0, 0, 0, 0, - 181, 0, 0, 182, 183, 184, 185 + 0, 0, 0, 0, 0, 0, 173, 0, 174, 175, + 176, 177, 178, 179, 180, 0, 0, 0, 0, 181, + 0, 0, 182, 183, 184, 185 }; static const yytype_int16 yycheck[] = { - 15, 427, 45, 9, 126, 318, 336, 9, 462, 115, - 16, 9, 45, 23, 9, 11, 11, 77, 0, 39, - 10, 9, 15, 16, 15, 16, 11, 47, 9, 19, - 20, 21, 20, 23, 24, 141, 42, 25, 11, 23, - 76, 9, 17, 18, 104, 12, 11, 53, 38, 39, - 40, 41, 20, 100, 9, 30, 11, 25, 100, 34, - 9, 12, 11, 38, 54, 55, 41, 12, 9, 44, - 11, 46, 100, 48, 49, 50, 51, 52, 20, 12, - 534, 43, 44, 25, 69, 77, 122, 15, 16, 17, - 12, 101, 422, 100, 9, 115, 69, 100, 524, 101, - 143, 91, 98, 101, 226, 100, 73, 74, 75, 102, - 143, 102, 118, 133, 102, 103, 100, 9, 20, 125, - 126, 141, 73, 74, 75, 455, 100, 45, 73, 74, - 75, 121, 101, 308, 102, 9, 126, 11, 144, 67, - 73, 74, 75, 318, 100, 99, 321, 322, 15, 16, - 100, 73, 74, 75, 160, 161, 162, 100, 164, 165, - 166, 204, 100, 199, 200, 201, 202, 203, 143, 205, - 206, 204, 208, 209, 102, 100, 9, 12, 11, 194, - 186, 187, 188, 189, 190, 191, 192, 193, 163, 101, - 100, 12, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 227, 12, 215, - 216, 217, 218, 219, 220, 100, 99, 9, 531, 11, - 226, 396, 212, 10, 91, 19, 20, 21, 334, 23, - 24, 69, 238, 100, 11, 102, 69, 243, 73, 74, - 75, 20, 364, 12, 20, 39, 40, 253, 9, 91, - 11, 45, 73, 74, 75, 430, 431, 73, 74, 75, - 54, 55, 19, 20, 21, 99, 23, 24, 100, 73, - 74, 75, 278, 279, 100, 10, 319, 69, 9, 285, - 11, 69, 39, 40, 320, 101, 319, 73, 74, 75, - 23, 465, 467, 11, 88, 75, 286, 103, 55, 305, - 306, 307, 308, 103, 73, 74, 75, 103, 69, 100, - 484, 485, 318, 99, 334, 321, 322, 429, 103, 425, - 432, 9, 496, 11, 436, 437, 18, 15, 16, 17, - 103, 102, 126, 21, 509, 100, 510, 511, 374, 20, - 100, 377, 378, 349, 99, 10, 458, 459, 338, 143, - 60, 525, 23, 389, 10, 10, 468, 10, 364, 10, - 20, 39, 40, 41, 42, 73, 74, 75, 46, 126, - 48, 60, 61, 23, 62, 487, 99, 87, 353, 491, - 492, 100, 92, 99, 99, 95, 96, 97, 98, 101, - 396, 185, 99, 101, 400, 73, 74, 75, 87, 99, - 99, 513, 99, 92, 67, 425, 95, 96, 97, 98, - 204, 9, 100, 99, 102, 103, 10, 99, 530, 9, - 100, 99, 101, 99, 430, 431, 538, 99, 91, 73, - 74, 75, 25, 71, 449, 77, 9, 100, 78, 102, - 101, 456, 73, 74, 75, 99, 70, 58, 59, 60, - 61, 73, 74, 75, 0, 100, 99, 101, 99, 19, - 466, 467, 101, 9, 454, 11, 12, 73, 74, 75, - 101, 486, 83, 84, 85, 86, 87, 12, 99, 101, - 99, 92, 98, 466, 95, 96, 97, 98, 503, 73, - 74, 75, 286, 39, 40, 41, 42, 73, 74, 75, - 46, 306, 48, 509, 92, 51, 531, 95, 96, 97, - 98, 526, 58, 59, 60, 61, 310, 101, 73, 74, - 75, 196, 497, 99, 33, 319, 376, 73, 74, 75, - 0, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 12, 81, 99, 58, 92, 60, 61, 95, - 96, 97, 98, 99, 245, 101, 443, 473, 104, 423, - 60, 61, 143, 474, -1, 73, 74, 75, 319, 39, - 40, 41, 42, 86, 87, 204, 46, -1, 48, 92, - -1, 51, 95, 96, 97, 98, 86, 87, 58, 59, - 60, 61, 92, 101, -1, 95, 96, 97, 98, 95, - 96, 97, 98, 73, 74, 75, -1, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 73, 74, - 75, -1, 92, -1, -1, 95, 96, 97, 98, 99, - -1, 101, 0, 1, 104, -1, -1, -1, -1, -1, - -1, 9, -1, 11, 99, 13, 14, 15, 16, 17, - -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 73, 74, 75, 46, 47, - 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, - 73, 74, 75, -1, 62, 63, 64, 65, 66, 67, - 68, 99, -1, 73, 74, 75, -1, -1, 76, -1, - -1, 73, 74, 75, -1, -1, 99, -1, -1, -1, - 88, 89, -1, 91, -1, 93, 94, 0, 1, 99, - -1, -1, 100, 101, 102, 103, 9, 99, 11, -1, - 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, - 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - -1, -1, -1, 46, 47, 48, 49, 50, -1, 52, - 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, - 63, 64, 65, 66, 67, 68, 87, -1, -1, -1, - -1, 92, -1, 76, 95, 96, 97, 98, 3, 4, - 5, 6, 7, 8, -1, 88, 89, -1, 91, -1, - 93, 94, -1, 1, -1, -1, -1, 100, 101, 102, - 103, 9, 10, 11, -1, 13, 14, 15, 16, 17, - -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, -1, -1, -1, 46, 47, - 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, - -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, - 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, + 10, 11, 12, 15, 39, 9, 17, 18, 115, 126, + 9, 421, 47, 317, 11, 8, 45, 447, 100, 30, + 45, 20, 9, 34, 11, 77, 25, 38, 38, 11, + 41, 41, 23, 44, 141, 46, 307, 48, 49, 50, + 51, 52, 9, 19, 20, 21, 317, 23, 24, 320, + 321, 0, 104, 20, 9, 9, 11, 11, 25, 11, + 15, 16, 17, 39, 40, 11, 21, 9, 9, 19, + 20, 21, 69, 23, 24, 16, 100, 100, 12, 55, + 115, 91, 9, 76, 11, 15, 16, 17, 98, 39, + 40, 100, 102, 103, 20, 45, 526, 101, 133, 25, + 77, 42, 512, 102, 54, 55, 141, 62, 100, 226, + 101, 121, 53, 100, 143, 69, 98, 69, 143, 9, + 9, 392, 11, 9, 15, 16, 20, 15, 16, 73, + 74, 75, 143, 12, 100, 102, 103, 67, 88, 73, + 74, 75, 69, 100, 9, 100, 11, 102, 103, 9, + 126, 11, 163, 424, 425, 99, 167, 168, 169, 170, + 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, + 181, 12, 102, 43, 44, 204, 126, 118, 12, 204, + 69, 452, 194, 100, 125, 126, 15, 16, 100, 73, + 74, 75, 227, 143, 73, 74, 75, 100, 100, 73, + 74, 75, 212, 144, 101, 45, 199, 200, 201, 202, + 203, 102, 205, 206, 102, 208, 209, 101, 522, 160, + 161, 162, 493, 164, 165, 166, 333, 101, 73, 74, + 75, 100, 73, 74, 75, 185, 73, 74, 75, 73, + 74, 75, 101, 100, 361, 186, 187, 188, 189, 190, + 191, 192, 193, 99, 204, 12, 101, 9, 12, 11, + 423, 12, 91, 426, 101, 23, 12, 430, 431, 450, + 67, 100, 99, 102, 215, 216, 217, 218, 219, 220, + 443, 444, 10, 464, 465, 226, 12, 69, 298, 318, + 453, 11, 91, 318, 91, 476, 237, 9, 333, 11, + 9, 242, 11, 100, 467, 102, 20, 20, 471, 472, + 100, 252, 419, 494, 495, 99, 73, 74, 75, 73, + 74, 75, 73, 74, 75, 69, 319, 73, 74, 75, + 10, 23, 513, 11, 497, 285, 277, 278, 75, 350, + 73, 74, 75, 284, 73, 74, 75, 73, 74, 75, + 103, 100, 18, 39, 40, 41, 42, 20, 521, 309, + 46, 103, 48, 304, 305, 306, 307, 530, 318, 73, + 74, 75, 101, 103, 99, 102, 317, 100, 371, 320, + 321, 374, 103, 23, 419, 87, 103, 73, 74, 75, + 92, 51, 385, 95, 96, 97, 98, 101, 58, 59, + 60, 61, 73, 74, 75, 346, 10, 39, 40, 41, + 42, 99, 60, 99, 46, 10, 48, 10, 78, 79, + 361, 81, 82, 83, 84, 85, 86, 87, 10, 441, + 101, 10, 92, 20, 99, 95, 96, 97, 98, 87, + 99, 73, 74, 75, 92, 457, 99, 95, 96, 97, + 98, 392, 462, 100, 466, 396, 73, 74, 75, 58, + 59, 60, 61, 99, 73, 74, 75, 101, 73, 74, + 75, 95, 96, 97, 98, 100, 486, 99, 99, 99, + 0, 491, 99, 424, 425, 84, 85, 86, 87, 9, + 99, 11, 12, 92, 99, 10, 95, 96, 97, 98, + 101, 99, 99, 514, 9, 9, 518, 73, 74, 75, + 451, 452, 100, 71, 99, 525, 73, 74, 75, 39, + 40, 41, 42, 73, 74, 75, 46, 101, 48, 101, + 99, 51, 100, 99, 101, 99, 25, 77, 58, 59, + 60, 61, 99, 73, 74, 75, 99, 78, 70, 99, + 19, 99, 493, 73, 74, 75, 0, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 12, 99, + 99, 58, 92, 60, 61, 95, 96, 97, 98, 99, + 12, 101, 98, 451, 104, 92, 60, 61, 95, 96, + 97, 98, 33, 522, 305, 39, 40, 41, 42, 86, + 87, 81, 46, 373, 48, 92, 196, 51, 95, 96, + 97, 98, 86, 87, 58, 59, 60, 61, 92, 417, + 501, 95, 96, 97, 98, 244, 480, 502, 440, 73, + 74, 75, 143, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 318, 204, -1, -1, 92, -1, + -1, 95, 96, 97, 98, 99, -1, 101, 0, 1, + 104, -1, -1, -1, -1, -1, -1, 9, -1, 11, + -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, + 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 60, 61, -1, 46, 47, 48, 49, 50, -1, + 52, 53, 54, 55, 56, 57, -1, -1, -1, -1, + 62, 63, 64, 65, 66, 67, 68, -1, 87, -1, + -1, -1, -1, 92, 76, -1, 95, 96, 97, 98, + 3, 4, 5, 6, 7, 8, 88, 89, -1, 91, + -1, 93, 94, 0, 1, -1, -1, -1, 100, 101, + 102, 103, 9, -1, 11, -1, 13, 14, 15, 16, + 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, -1, -1, -1, 46, + 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, + 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, + 67, 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 88, 89, -1, 91, -1, 93, 94, -1, 1, -1, - -1, -1, 100, 101, 102, 103, 9, 10, 11, -1, - 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, - 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - -1, -1, -1, 46, 47, 48, 49, 50, -1, 52, - 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, - 63, 64, 65, 66, 67, 68, -1, -1, -1, -1, - -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, - 93, 94, -1, 1, -1, -1, -1, 100, 101, 102, - 103, 9, 10, 11, -1, 13, 14, 15, 16, 17, - -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, -1, -1, -1, 46, 47, - 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, - -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, - 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, + -1, 88, 89, -1, 91, -1, 93, 94, -1, 1, + -1, -1, -1, 100, 101, 102, 103, 9, 10, 11, + -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, + 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, -1, -1, -1, 46, 47, 48, 49, 50, -1, + 52, 53, 54, 55, 56, 57, -1, -1, -1, -1, + 62, 63, 64, 65, 66, 67, 68, -1, -1, -1, + -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, + -1, 93, 94, -1, 1, -1, -1, -1, 100, 101, + 102, 103, 9, 10, 11, -1, 13, 14, 15, 16, + 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, -1, -1, -1, 46, + 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, + 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, + 67, 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 88, 89, -1, 91, -1, 93, 94, -1, 1, -1, - -1, -1, 100, 101, 102, 103, 9, 10, 11, -1, - 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, - 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - -1, -1, -1, 46, 47, 48, 49, 50, -1, 52, - 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, - 63, 64, 65, 66, 67, 68, -1, -1, -1, -1, - -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, - 93, 94, -1, 1, -1, -1, -1, 100, 101, 102, - 103, 9, 10, 11, -1, 13, 14, 15, 16, 17, + -1, 88, 89, -1, 91, -1, 93, 94, -1, 1, + -1, -1, -1, 100, 101, 102, 103, 9, 10, 11, + -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, + 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, -1, -1, -1, 46, 47, 48, 49, 50, -1, + 52, 53, 54, 55, 56, 57, -1, -1, -1, -1, + 62, 63, 64, 65, 66, 67, 68, -1, -1, -1, + -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, + -1, 93, 94, -1, 1, -1, -1, -1, 100, 101, + 102, 103, 9, 10, 11, -1, 13, 14, 15, 16, + 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, -1, -1, -1, 46, + 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, + 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, + 67, 68, -1, -1, -1, -1, -1, -1, -1, 76, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 88, 89, -1, 91, -1, 93, 94, -1, 1, + -1, -1, -1, 100, 101, 102, 103, 9, -1, 11, + -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, + 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, -1, -1, -1, 46, 47, 48, 49, 50, -1, + 52, 53, 54, 55, 56, 57, -1, -1, -1, -1, + 62, 63, 64, 65, 66, 67, 68, -1, -1, 71, + -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, + -1, 93, 94, -1, 1, -1, -1, -1, 100, 101, + 102, 103, 9, -1, 11, -1, 13, 14, 15, 16, + 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, -1, -1, -1, 46, + 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, + 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, + 67, 68, -1, -1, -1, -1, -1, -1, -1, 76, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 88, 89, -1, 91, -1, 93, 94, -1, 1, + -1, -1, -1, 100, 101, 102, 103, 9, -1, 11, + -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, + 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, + 32, -1, 34, 35, 36, 37, 38, 39, 40, 41, + 42, -1, -1, -1, 46, 47, 48, 49, 50, -1, + 52, 53, 54, 55, 56, 57, -1, -1, -1, -1, + 62, 63, 64, 65, 66, 67, 68, -1, -1, -1, + -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, + -1, 93, 94, 1, -1, -1, -1, -1, 100, 101, + 102, 103, -1, 11, -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, -1, -1, -1, 46, 47, - 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, + 28, 29, 30, 31, -1, -1, -1, -1, 36, -1, + -1, 51, -1, -1, -1, -1, -1, -1, 58, 59, + 60, 61, 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, - 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 88, 89, -1, 91, -1, 93, 94, -1, 1, -1, - -1, -1, 100, 101, 102, 103, 9, -1, 11, -1, - 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, - 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - -1, -1, -1, 46, 47, 48, 49, 50, -1, 52, - 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, - 63, 64, 65, 66, 67, 68, -1, -1, 71, -1, - -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, - 93, 94, -1, 1, -1, -1, -1, 100, 101, 102, - 103, 9, -1, 11, -1, 13, 14, 15, 16, 17, + 68, 81, 82, 83, 84, 85, 86, 87, 76, -1, + -1, -1, 92, -1, -1, 95, 96, 97, 98, -1, + 88, 89, -1, 91, -1, 93, 94, 1, -1, -1, + -1, -1, 100, 101, 102, 103, -1, 11, -1, 13, + 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, + 24, -1, 26, 27, 28, 29, 30, 31, -1, -1, + -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, + 58, 59, 60, 61, -1, -1, 50, -1, -1, 53, + 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, + 64, 65, 66, 67, 68, 83, 84, 85, 86, 87, + -1, -1, 76, -1, 92, -1, -1, 95, 96, 97, + 98, -1, -1, -1, 88, 89, -1, 91, -1, 93, + 94, -1, -1, -1, -1, 99, 100, -1, 102, 103, + 9, -1, 11, -1, 13, 14, 15, 16, 17, -1, + -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, -1, -1, -1, -1, 36, -1, -1, + -1, -1, -1, -1, 58, 59, 60, 61, -1, -1, + -1, 50, -1, -1, 53, 54, 55, 56, 57, -1, + -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, + -1, 85, 86, 87, -1, -1, -1, 76, 92, -1, + -1, 95, 96, 97, 98, -1, -1, -1, -1, 88, + 89, -1, 91, -1, 93, 94, -1, -1, -1, -1, + -1, 100, -1, 102, 103, 9, -1, 11, -1, 13, + 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, + 24, -1, 26, 27, 28, 29, 30, 31, -1, -1, + -1, -1, 36, -1, -1, -1, -1, 58, 59, 60, + 61, -1, -1, -1, -1, -1, 50, -1, -1, 53, + 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, + 64, 65, 66, 67, 68, 86, 87, -1, -1, -1, + -1, 92, 76, -1, 95, 96, 97, 98, -1, -1, + -1, -1, -1, -1, 88, 89, -1, 91, -1, 93, + 94, -1, -1, -1, -1, -1, 100, -1, 102, 103, + 11, 12, 13, 14, 15, 16, 17, -1, -1, 20, + 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, + 31, -1, -1, -1, -1, 36, -1, -1, -1, -1, + 58, 59, 60, 61, -1, -1, -1, -1, -1, 50, + -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, + -1, 62, 63, 64, 65, 66, 67, 68, 86, 87, + -1, -1, -1, -1, 92, 76, -1, 95, 96, 97, + 98, -1, -1, -1, -1, -1, -1, 88, 89, -1, + 91, -1, 93, 94, -1, -1, -1, -1, -1, 100, + -1, 102, 103, 11, -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, -1, -1, -1, 46, 47, - 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, + 28, 29, 30, 31, -1, -1, -1, -1, 36, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 88, 89, -1, 91, -1, 93, 94, -1, 1, -1, - -1, -1, 100, 101, 102, 103, 9, -1, 11, -1, - 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, - 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, - -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, - -1, -1, -1, 46, 47, 48, 49, 50, -1, 52, - 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, - 63, 64, 65, 66, 67, 68, -1, -1, -1, -1, - -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, - 93, 94, 1, -1, -1, -1, -1, 100, 101, 102, - 103, -1, 11, -1, 13, 14, 15, 16, 17, -1, - -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, - 29, 30, 31, -1, -1, -1, -1, 36, -1, -1, - 51, -1, -1, -1, -1, -1, -1, 58, 59, 60, - 61, 50, -1, -1, 53, 54, 55, 56, 57, -1, - -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, - 81, 82, 83, 84, 85, 86, 87, 76, -1, -1, - -1, 92, -1, -1, 95, 96, 97, 98, -1, 88, - 89, -1, 91, -1, 93, 94, 1, -1, -1, -1, - -1, 100, 101, 102, 103, -1, 11, -1, 13, 14, - 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, - -1, 26, 27, 28, 29, 30, 31, -1, -1, -1, - -1, 36, -1, -1, -1, -1, -1, -1, 58, 59, - 60, 61, -1, -1, -1, 50, -1, -1, 53, 54, - 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, - 65, 66, 67, 68, 84, 85, 86, 87, -1, -1, - -1, 76, 92, -1, -1, 95, 96, 97, 98, -1, - -1, -1, -1, 88, 89, -1, 91, -1, 93, 94, - -1, -1, -1, -1, 99, 100, -1, 102, 103, 9, - -1, 11, -1, 13, 14, 15, 16, 17, -1, -1, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, -1, -1, -1, -1, 36, -1, -1, -1, - -1, -1, -1, 58, 59, 60, 61, -1, -1, -1, - 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, - -1, -1, 62, 63, 64, 65, 66, 67, 68, -1, - 85, 86, 87, -1, -1, -1, 76, 92, -1, -1, - 95, 96, 97, 98, -1, -1, -1, -1, 88, 89, - -1, 91, -1, 93, 94, -1, -1, -1, -1, -1, - 100, -1, 102, 103, 9, -1, 11, -1, 13, 14, + 88, 89, -1, 91, -1, 93, 94, -1, -1, -1, + -1, -1, 100, 101, 102, 103, 11, -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, -1, -1, -1, - -1, 36, -1, -1, -1, -1, 58, 59, 60, 61, + -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, - 65, 66, 67, 68, 86, 87, -1, -1, -1, -1, - 92, 76, -1, 95, 96, 97, 98, -1, -1, -1, + 65, 66, 67, 68, -1, -1, -1, -1, -1, -1, + -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, 93, 94, - -1, -1, -1, -1, -1, 100, -1, 102, 103, 11, - 12, 13, 14, 15, 16, 17, -1, -1, 20, 21, + -1, -1, -1, -1, 99, 100, -1, 102, 103, 11, + -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, - -1, -1, -1, -1, 36, -1, -1, -1, -1, 58, - 59, 60, 61, -1, -1, -1, -1, -1, 50, -1, + -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, - 62, 63, 64, 65, 66, 67, 68, 86, 87, -1, - -1, -1, -1, 92, 76, -1, 95, 96, 97, 98, + 62, 63, 64, 65, 66, 67, 68, -1, -1, -1, + -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, - -1, 93, 94, -1, -1, -1, -1, -1, 100, -1, + -1, 93, 94, -1, -1, -1, -1, 99, 100, -1, 102, 103, 11, -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, - 29, 30, 31, -1, -1, -1, -1, 36, 39, 40, - 41, 42, -1, -1, -1, 46, -1, 48, -1, -1, + 29, 30, 31, -1, -1, -1, -1, 36, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, - -1, -1, 73, 74, 75, -1, -1, 76, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, 93, 94, -1, -1, -1, -1, - -1, 100, 101, 102, 103, 11, -1, 13, 14, 15, + 99, 100, -1, 102, 103, 11, -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -895,55 +905,23 @@ static const yytype_int16 yycheck[] = 64, 65, 66, 67, 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, 89, -1, 91, -1, 93, - 94, -1, -1, -1, -1, 99, 100, -1, 102, 103, + 94, -1, -1, -1, -1, -1, 100, -1, 102, 103, 11, -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 50, -1, -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, -1, -1, - -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 88, 89, -1, - 91, -1, 93, 94, -1, -1, -1, -1, 99, 100, - -1, 102, 103, 11, -1, 13, 14, 15, 16, 17, - -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, -1, -1, -1, -1, 36, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 50, -1, -1, 53, 54, 55, 56, 57, - -1, -1, -1, -1, 62, 63, 64, 65, 66, 67, - 68, -1, -1, -1, -1, -1, -1, -1, 76, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 88, 89, -1, 91, -1, 93, 94, -1, -1, -1, - -1, 99, 100, -1, 102, 103, 11, -1, 13, 14, - 15, 16, 17, -1, -1, 20, 21, 22, 23, 24, - -1, 26, 27, 28, 29, 30, 31, -1, -1, -1, - -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 50, -1, -1, 53, 54, - 55, 56, 57, -1, -1, -1, -1, 62, 63, 64, - 65, 66, 67, 68, -1, -1, -1, -1, -1, -1, - -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 88, 89, -1, 91, -1, 93, 94, - -1, -1, -1, -1, -1, 100, -1, 102, 103, 11, - -1, 13, 14, 15, 16, 17, -1, -1, 20, 21, - 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, - -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 50, -1, - -1, 53, 54, 55, 56, 57, -1, -1, -1, -1, - 62, 63, 64, 65, 66, 67, 68, -1, -1, -1, - -1, -1, -1, -1, 76, 51, -1, -1, -1, -1, - -1, -1, 58, 59, 60, 61, 88, 89, -1, 91, - -1, 93, 94, -1, -1, -1, -1, -1, 100, -1, - 102, 103, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, -1, -1, -1, -1, 92, 51, -1, 95, - 96, 97, 98, -1, 58, 59, 60, 61, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 78, 79, -1, 81, 82, 83, - 84, 85, 86, 87, -1, -1, -1, -1, 92, 51, - -1, 95, 96, 97, 98, -1, 58, 59, 60, 61, + -1, -1, -1, -1, -1, 76, 51, -1, -1, -1, + -1, -1, -1, 58, 59, 60, 61, 88, 89, -1, + 91, -1, 93, 94, -1, -1, -1, -1, -1, 100, + -1, 102, 103, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, -1, -1, -1, -1, 92, 51, -1, + 95, 96, 97, 98, -1, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 79, -1, 81, - 82, 83, 84, 85, 86, 87, -1, -1, -1, -1, - 92, -1, -1, 95, 96, 97, 98 + -1, -1, -1, -1, -1, -1, 79, -1, 81, 82, + 83, 84, 85, 86, 87, -1, -1, -1, -1, 92, + -1, -1, 95, 96, 97, 98 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -959,51 +937,51 @@ static const yytype_uint8 yystos[] = 166, 167, 168, 169, 170, 172, 175, 181, 182, 183, 184, 185, 186, 187, 188, 189, 9, 113, 1, 32, 34, 35, 37, 38, 39, 40, 41, 42, 46, 47, - 48, 49, 52, 101, 113, 122, 132, 160, 33, 120, + 48, 49, 52, 101, 113, 122, 131, 160, 33, 120, 121, 122, 118, 118, 12, 160, 170, 170, 20, 25, 113, 182, 190, 190, 190, 190, 190, 171, 11, 100, - 170, 143, 143, 170, 100, 100, 100, 113, 170, 20, + 170, 142, 142, 170, 100, 100, 100, 113, 170, 20, 161, 174, 182, 190, 190, 113, 170, 101, 160, 20, - 25, 145, 170, 91, 100, 173, 182, 183, 184, 170, + 25, 144, 170, 91, 100, 173, 182, 183, 184, 170, 161, 170, 170, 170, 170, 170, 99, 160, 190, 190, 73, 74, 75, 77, 9, 11, 100, 51, 58, 59, 60, 61, 78, 79, 81, 82, 83, 84, 85, 86, 87, 92, 95, 96, 97, 98, 100, 9, 11, 9, - 11, 9, 11, 9, 115, 144, 145, 20, 142, 100, + 11, 9, 11, 9, 115, 143, 144, 20, 141, 100, 100, 100, 100, 67, 91, 100, 180, 182, 100, 100, - 113, 101, 45, 134, 101, 39, 40, 41, 42, 46, + 113, 101, 45, 133, 101, 39, 40, 41, 42, 46, 48, 121, 122, 120, 12, 174, 100, 100, 160, 99, - 113, 23, 115, 146, 99, 99, 160, 175, 190, 161, - 10, 101, 174, 100, 170, 173, 182, 183, 184, 99, - 160, 69, 148, 11, 99, 160, 160, 160, 170, 160, - 160, 99, 160, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 170, 170, 170, 9, 11, - 15, 16, 17, 21, 62, 100, 102, 103, 164, 182, - 99, 160, 160, 160, 160, 160, 160, 160, 160, 118, - 20, 141, 142, 20, 125, 115, 115, 115, 115, 91, - 115, 67, 178, 179, 181, 182, 183, 184, 115, 115, - 100, 115, 115, 113, 160, 138, 160, 160, 160, 160, - 160, 175, 161, 12, 163, 100, 157, 69, 147, 99, - 99, 160, 10, 99, 160, 148, 99, 23, 160, 11, - 101, 12, 99, 80, 160, 160, 103, 103, 103, 103, - 99, 160, 103, 103, 100, 99, 101, 12, 101, 12, - 101, 12, 101, 10, 18, 114, 123, 124, 9, 101, - 20, 137, 160, 138, 139, 160, 139, 177, 182, 100, - 132, 136, 139, 140, 160, 178, 115, 139, 139, 99, - 104, 176, 174, 158, 147, 23, 113, 99, 99, 12, - 160, 10, 170, 101, 12, 99, 175, 10, 10, 10, - 10, 115, 146, 115, 115, 20, 99, 99, 99, 99, - 100, 115, 99, 101, 128, 139, 99, 99, 160, 99, - 15, 16, 102, 150, 151, 153, 154, 155, 156, 9, - 12, 10, 99, 101, 147, 157, 129, 174, 135, 135, - 9, 116, 116, 139, 139, 116, 126, 100, 99, 116, - 116, 25, 149, 149, 77, 99, 118, 71, 101, 113, - 159, 147, 118, 101, 116, 116, 117, 43, 44, 133, - 133, 99, 99, 134, 137, 139, 116, 78, 152, 152, - 154, 10, 119, 9, 10, 134, 134, 118, 116, 100, - 116, 116, 101, 99, 134, 170, 23, 101, 130, 118, - 10, 139, 134, 134, 127, 116, 70, 131, 19, 10, - 99, 135, 134, 118, 116, 140, 71, 133, 99, 116 + 113, 23, 145, 99, 99, 160, 175, 190, 161, 10, + 101, 174, 100, 170, 173, 182, 183, 184, 99, 160, + 69, 147, 11, 99, 160, 160, 160, 170, 160, 160, + 99, 160, 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 9, 11, 15, + 16, 17, 21, 62, 100, 102, 103, 164, 182, 99, + 160, 160, 160, 160, 160, 160, 160, 160, 118, 20, + 140, 141, 20, 124, 115, 115, 115, 115, 91, 115, + 67, 178, 179, 181, 182, 183, 184, 115, 115, 100, + 115, 115, 113, 160, 137, 160, 160, 160, 160, 160, + 175, 161, 12, 163, 69, 146, 99, 99, 160, 10, + 99, 160, 147, 99, 23, 160, 11, 101, 12, 99, + 80, 160, 160, 103, 103, 103, 103, 99, 160, 103, + 103, 100, 99, 101, 12, 101, 12, 101, 12, 101, + 10, 18, 114, 123, 9, 101, 20, 136, 160, 137, + 138, 160, 138, 177, 182, 100, 131, 135, 138, 139, + 160, 178, 115, 138, 138, 99, 104, 176, 174, 23, + 115, 158, 99, 99, 12, 160, 10, 170, 101, 12, + 99, 175, 10, 10, 10, 10, 115, 145, 115, 20, + 99, 99, 99, 99, 100, 115, 99, 101, 127, 138, + 99, 99, 160, 99, 100, 156, 12, 10, 99, 101, + 146, 128, 174, 134, 134, 9, 116, 116, 138, 138, + 116, 125, 100, 99, 116, 116, 157, 9, 71, 101, + 158, 159, 118, 101, 116, 116, 117, 43, 44, 132, + 132, 99, 99, 133, 136, 138, 116, 15, 16, 102, + 149, 150, 152, 153, 154, 155, 118, 119, 10, 133, + 133, 118, 116, 100, 116, 116, 101, 99, 133, 25, + 148, 148, 77, 99, 10, 23, 101, 129, 10, 138, + 133, 133, 126, 116, 78, 151, 151, 153, 70, 130, + 19, 99, 134, 133, 170, 118, 116, 139, 71, 132, + 99, 116 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ @@ -1012,31 +990,31 @@ static const yytype_uint8 yyr1[] = 0, 105, 107, 106, 108, 106, 109, 106, 110, 106, 111, 106, 112, 106, 113, 114, 115, 116, 117, 118, 118, 119, 119, 120, 120, 121, 121, 122, 122, 123, - 122, 124, 122, 122, 125, 122, 122, 122, 122, 122, - 122, 122, 122, 126, 127, 122, 122, 122, 128, 122, - 122, 122, 122, 129, 122, 122, 122, 122, 130, 131, - 131, 132, 132, 132, 132, 132, 132, 132, 132, 133, - 133, 133, 134, 134, 135, 136, 136, 137, 137, 138, - 139, 140, 141, 141, 142, 143, 144, 145, 145, 146, - 146, 147, 147, 147, 148, 148, 149, 149, 150, 150, - 151, 152, 152, 152, 153, 154, 154, 155, 155, 155, - 156, 156, 158, 157, 159, 159, 160, 160, 160, 160, + 122, 122, 124, 122, 122, 122, 122, 122, 122, 122, + 122, 125, 126, 122, 122, 122, 127, 122, 122, 122, + 122, 128, 122, 122, 122, 122, 129, 130, 130, 131, + 131, 131, 131, 131, 131, 131, 131, 132, 132, 132, + 133, 133, 134, 135, 135, 136, 136, 137, 138, 139, + 140, 140, 141, 142, 143, 144, 144, 145, 145, 146, + 146, 146, 147, 147, 148, 148, 149, 149, 150, 151, + 151, 151, 152, 153, 153, 154, 154, 154, 155, 155, + 156, 157, 156, 158, 159, 159, 160, 160, 160, 160, 161, 161, 161, 162, 162, 162, 162, 162, 162, 162, 162, 163, 162, 164, 164, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 167, 167, 167, 167, 167, 167, 167, - 167, 167, 168, 168, 168, 168, 168, 168, 169, 169, + 167, 167, 168, 168, 168, 168, 168, 169, 169, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 170, 170, 170, 170, 171, - 170, 170, 170, 170, 172, 172, 172, 173, 173, 173, - 173, 173, 174, 174, 175, 175, 176, 176, 177, 178, - 178, 178, 179, 179, 180, 180, 181, 182, 183, 184, - 185, 185, 186, 187, 187, 188, 188, 189, 189, 190, - 190, 190, 190 + 170, 170, 170, 170, 170, 170, 170, 170, 171, 170, + 170, 170, 170, 172, 172, 172, 173, 173, 173, 173, + 173, 174, 174, 175, 175, 176, 176, 177, 178, 178, + 178, 179, 179, 180, 180, 181, 182, 183, 184, 185, + 185, 186, 187, 187, 188, 188, 189, 189, 190, 190, + 190, 190 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -1045,31 +1023,31 @@ static const yytype_uint8 yyr2[] = 0, 2, 0, 4, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 4, 7, 0, 4, 0, 0, 2, 0, 2, 1, 1, 2, 2, 1, 4, 0, - 7, 0, 10, 4, 0, 7, 7, 7, 6, 6, - 2, 8, 8, 0, 0, 13, 9, 8, 0, 10, - 9, 7, 2, 0, 8, 2, 2, 1, 2, 0, - 3, 1, 1, 3, 3, 3, 3, 3, 3, 0, - 2, 6, 0, 2, 0, 0, 1, 0, 1, 1, - 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, - 1, 0, 2, 1, 2, 1, 0, 1, 1, 1, - 3, 0, 1, 2, 3, 1, 1, 2, 3, 1, - 0, 1, 0, 4, 1, 1, 3, 3, 3, 1, + 7, 4, 0, 7, 7, 7, 6, 6, 2, 8, + 8, 0, 0, 13, 9, 8, 0, 10, 9, 7, + 2, 0, 8, 2, 2, 1, 2, 0, 3, 1, + 1, 3, 3, 3, 3, 3, 3, 0, 2, 6, + 0, 2, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, + 2, 1, 2, 1, 0, 1, 1, 1, 3, 0, + 1, 2, 3, 1, 1, 2, 3, 1, 0, 1, + 0, 0, 4, 5, 1, 1, 3, 3, 3, 1, 2, 3, 1, 3, 5, 6, 3, 3, 5, 2, 4, 0, 5, 1, 1, 5, 4, 5, 4, 5, 6, 5, 4, 5, 4, 3, 6, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 3, 2, 4, 3, 5, 8, 2, 2, - 1, 1, 1, 1, 5, 2, 3, 1, 2, 3, - 1, 2, 1, 1, 1, 1, 1, 1, 4, 4, - 5, 5, 1, 1, 3, 4, 3, 4, 4, 4, - 4, 4, 1, 2, 2, 1, 2, 2, 1, 2, - 1, 2, 1, 3, 1, 3, 1, 3, 4, 0, - 6, 1, 1, 1, 3, 2, 4, 3, 2, 1, - 1, 1, 0, 1, 0, 1, 0, 2, 1, 1, - 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, - 2, 4, 2, 1, 3, 1, 3, 1, 3, 1, - 1, 1, 1 + 2, 2, 3, 2, 4, 3, 5, 2, 2, 1, + 1, 1, 1, 5, 2, 3, 1, 2, 3, 1, + 2, 1, 1, 1, 1, 1, 1, 4, 4, 5, + 5, 1, 1, 3, 4, 3, 4, 4, 4, 4, + 4, 1, 2, 2, 1, 2, 2, 1, 2, 1, + 2, 1, 3, 1, 3, 1, 3, 4, 0, 6, + 1, 1, 1, 3, 2, 4, 3, 2, 1, 1, + 1, 0, 1, 0, 1, 0, 2, 1, 1, 1, + 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, + 4, 2, 1, 3, 1, 3, 1, 3, 1, 1, + 1, 1 }; typedef enum { @@ -1097,20 +1075,20 @@ static const toketypes yy_type_tab[] = toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, - toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, - toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, - toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_opval + toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, + toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval }; /* Generated from: - * fca93dc4b6a371876339e9ad458685bd6fe71cfe326ff40ea9c78a9acf02da64 perly.y + * c85e1793baa49bfdf6f1329f04fd8b57a616cfc2f5dce01702d3d727f6511157 perly.y * b6fae5748f9bef6db4740aa5e122b84ac5181852d42474d0ecad621fa4253306 regen_perly.pl * ex: set ro: */ |