diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-05-27 07:13:35 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-05-27 07:13:35 -0700 |
commit | 145893075eb1fc99a5c69276ee073fe31ce9bc12 (patch) | |
tree | 33355730422cc8d3d3a2a7a47a07f631c87c39d5 /y.tab.c.shipped | |
parent | 2f8bbbb5e50b0297bd531da3388589716a8cf0f2 (diff) | |
download | txr-145893075eb1fc99a5c69276ee073fe31ce9bc12.tar.gz txr-145893075eb1fc99a5c69276ee073fe31ce9bc12.tar.bz2 txr-145893075eb1fc99a5c69276ee073fe31ce9bc12.zip |
json: implement distinguished json quasiquote.
Because #J<json> produces the (json ...) form that translates
into quote, ^#J<json> yields a quasiquote around a quote. This
has some disadvantages, because it requires an explicit eval
in some situtions to do what the programmer wants.
Here, we introduce an alternative: the syntax #J^<json> will
produce a quasiquote instead of a quote.
The new translation scheme is
#J X -> (json quote <X>)
#J^ X -> (json sys:qquote <X>)
where <X> denotes the Lisp object translation of JSON syntax X.
* parser.c (me_json): The quote symbol is now already in the
json form, so all that is left to do here is to take the cdr
to pop off the json symbol.
* parser.l (JPUNC, NJPUNC): Allow ^ to be a punctuator in
JSON mode.
* parser.y (json): For regular #J, generate the new (json
quote ...) syntax. Implement J# ^ which sets up the nonzero
quasi_level around the processing of the JSON syntax, so that
everything is in a quasiquote, finally producing the
(json sys:qquote ...) syntax.
* lex.yy.c.shipped, y.tab.c.shipped: Updated.
Diffstat (limited to 'y.tab.c.shipped')
-rw-r--r-- | y.tab.c.shipped | 3434 |
1 files changed, 1723 insertions, 1711 deletions
diff --git a/y.tab.c.shipped b/y.tab.c.shipped index 81a1a29d..2c8f69ed 100644 --- a/y.tab.c.shipped +++ b/y.tab.c.shipped @@ -559,16 +559,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 203 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 4863 +#define YYLAST 4829 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 99 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 127 +#define YYNNTS 128 /* YYNRULES -- Number of rules. */ -#define YYNRULES 459 +#define YYNRULES 461 /* YYNRULES -- Number of states. */ -#define YYNSTATES 817 +#define YYNSTATES 820 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -642,184 +642,186 @@ static const yytype_uint16 yyprhs[] = 724, 728, 733, 736, 741, 747, 753, 756, 759, 761, 763, 765, 767, 769, 771, 776, 779, 785, 789, 792, 795, 798, 801, 804, 807, 810, 813, 816, 819, 822, - 825, 828, 830, 832, 835, 839, 842, 846, 849, 853, - 854, 858, 859, 863, 864, 868, 870, 873, 876, 879, - 881, 885, 888, 891, 895, 901, 904, 909, 912, 916, - 921, 924, 929, 934, 937, 940, 943, 946, 949, 954, - 958, 961, 964, 966, 968, 970, 972, 974, 975, 977, - 981, 983, 984, 988, 989, 994, 995, 1000, 1001, 1007, - 1010, 1013, 1017, 1020, 1024, 1026, 1028, 1030, 1032, 1034, - 1036, 1038, 1040, 1042, 1044, 1046, 1048, 1050, 1052, 1054, - 1057, 1060, 1062, 1065, 1066, 1070, 1071, 1075, 1076, 1080, - 1081, 1085, 1087, 1090, 1092, 1094, 1096, 1098, 1100, 1102, - 1104, 1106, 1108, 1110, 1112, 1114, 1116, 1118, 1120, 1122, - 1125, 1128, 1130, 1133, 1134, 1138, 1139, 1143, 1144, 1148, - 1152, 1157, 1161, 1166, 1170, 1174, 1177, 1180, 1181, 1185, - 1187, 1189, 1190, 1193, 1196, 1198, 1202, 1205, 1209, 1212, - 1214, 1218, 1222, 1225, 1226, 1228, 1231, 1235, 1238, 1241, - 1244, 1248, 1252, 1255, 1258, 1260, 1262, 1264, 1266, 1268, - 1270, 1274, 1277, 1279, 1282, 1284, 1286, 1288, 1292, 1294, - 1296, 1298, 1300, 1302, 1304, 1306, 1308, 1310, 1312, 1314, - 1316, 1318, 1320, 1323, 1326, 1330, 1333, 1336, 1339, 1342, - 1345, 1348, 1352, 1355, 1357, 1360, 1362, 1364, 1366, 1369, - 1371, 1374, 1376, 1379, 1381, 1384, 1386, 1389, 1391, 1394, - 1397, 1399, 1401, 1404, 1407, 1411, 1414, 1418, 1421, 1424, - 1426, 1429, 1432, 1434, 1436, 1438, 1440, 1442, 1444, 1446, - 1448, 1450, 1454, 1458, 1462, 1466, 1470, 1474, 1478, 1484 + 825, 828, 829, 834, 836, 838, 841, 845, 848, 852, + 855, 859, 860, 864, 865, 869, 870, 874, 876, 879, + 882, 885, 887, 891, 894, 897, 901, 907, 910, 915, + 918, 922, 927, 930, 935, 940, 943, 946, 949, 952, + 955, 960, 964, 967, 970, 972, 974, 976, 978, 980, + 981, 983, 987, 989, 990, 994, 995, 1000, 1001, 1006, + 1007, 1013, 1016, 1019, 1023, 1026, 1030, 1032, 1034, 1036, + 1038, 1040, 1042, 1044, 1046, 1048, 1050, 1052, 1054, 1056, + 1058, 1060, 1063, 1066, 1068, 1071, 1072, 1076, 1077, 1081, + 1082, 1086, 1087, 1091, 1093, 1096, 1098, 1100, 1102, 1104, + 1106, 1108, 1110, 1112, 1114, 1116, 1118, 1120, 1122, 1124, + 1126, 1128, 1131, 1134, 1136, 1139, 1140, 1144, 1145, 1149, + 1150, 1154, 1158, 1163, 1167, 1172, 1176, 1180, 1183, 1186, + 1187, 1191, 1193, 1195, 1196, 1199, 1202, 1204, 1208, 1211, + 1215, 1218, 1220, 1224, 1228, 1231, 1232, 1234, 1237, 1241, + 1244, 1247, 1250, 1254, 1258, 1261, 1264, 1266, 1268, 1270, + 1272, 1274, 1276, 1280, 1283, 1285, 1288, 1290, 1292, 1294, + 1298, 1300, 1302, 1304, 1306, 1308, 1310, 1312, 1314, 1316, + 1318, 1320, 1322, 1324, 1326, 1329, 1332, 1336, 1339, 1342, + 1345, 1348, 1351, 1354, 1358, 1361, 1363, 1366, 1368, 1370, + 1372, 1375, 1377, 1380, 1382, 1385, 1387, 1390, 1392, 1395, + 1397, 1400, 1403, 1405, 1407, 1410, 1413, 1417, 1420, 1424, + 1427, 1430, 1432, 1435, 1438, 1440, 1442, 1444, 1446, 1448, + 1450, 1452, 1454, 1456, 1460, 1464, 1468, 1472, 1476, 1480, + 1484, 1490 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 100, 0, -1, 113, -1, 50, 204, -1, -1, 51, + 100, 0, -1, 113, -1, 50, 205, -1, -1, 51, 103, 101, 111, -1, -1, 52, 107, 102, 111, -1, 51, -1, 52, -1, 1, 93, -1, -1, 42, 104, - 195, -1, -1, 42, 92, 105, 195, -1, -1, 42, - 68, 106, 195, -1, 195, -1, 92, 195, -1, 68, - 195, -1, -1, 42, 108, 189, -1, -1, 42, 92, - 109, 189, -1, -1, 42, 68, 110, 189, -1, 189, - -1, 92, 189, -1, 68, 189, -1, 195, -1, 42, + 196, -1, -1, 42, 92, 105, 196, -1, -1, 42, + 68, 106, 196, -1, 196, -1, 92, 196, -1, 68, + 196, -1, -1, 42, 108, 190, -1, -1, 42, 92, + 109, 190, -1, -1, 42, 68, 110, 190, -1, 190, + -1, 92, 190, -1, 68, 190, -1, 196, -1, 42, -1, -1, 114, -1, 112, 114, -1, 112, -1, -1, 115, -1, 116, -1, 117, -1, 118, -1, 119, -1, 120, -1, 121, -1, 125, -1, 122, -1, 141, -1, - 142, -1, 130, -1, 144, -1, 133, -1, 6, 212, - 128, -1, 6, 212, 1, -1, 7, 182, 79, 212, - 128, -1, 7, 182, 79, 212, 1, -1, 8, 212, - 128, -1, 8, 212, 1, -1, 9, 212, 128, -1, - 9, 212, 1, -1, 10, 212, 128, -1, 10, 212, - 1, -1, 11, 182, 79, 212, 113, 16, 212, -1, - 11, 182, 79, 212, 1, -1, 12, 182, 79, 212, - 128, -1, 12, 182, 79, 212, 1, -1, 13, 182, - 79, 212, 123, 16, 212, -1, 13, 182, 79, 212, - 123, 127, 182, 79, 212, 113, 16, 212, -1, 13, - 182, 79, 212, 1, -1, 113, 124, -1, 14, 212, - 123, -1, 15, 212, 123, -1, -1, 126, 182, 79, - 212, 113, 16, 212, -1, 126, 182, 79, 212, 113, - 127, 182, 79, 212, 113, 16, 212, -1, 126, 182, - 79, 212, 1, -1, 17, -1, 21, -1, 18, -1, - 25, -1, 113, 129, -1, 16, 212, -1, 14, 212, - 128, -1, 15, 212, 128, -1, 33, 200, 79, 212, - 113, 131, 132, 16, 212, -1, 33, 200, 79, 212, - 1, -1, 77, 200, 79, 212, 113, 131, -1, -1, - 76, 212, 113, -1, -1, 134, 93, -1, 135, -1, + 142, -1, 130, -1, 144, -1, 133, -1, 6, 213, + 128, -1, 6, 213, 1, -1, 7, 183, 79, 213, + 128, -1, 7, 183, 79, 213, 1, -1, 8, 213, + 128, -1, 8, 213, 1, -1, 9, 213, 128, -1, + 9, 213, 1, -1, 10, 213, 128, -1, 10, 213, + 1, -1, 11, 183, 79, 213, 113, 16, 213, -1, + 11, 183, 79, 213, 1, -1, 12, 183, 79, 213, + 128, -1, 12, 183, 79, 213, 1, -1, 13, 183, + 79, 213, 123, 16, 213, -1, 13, 183, 79, 213, + 123, 127, 183, 79, 213, 113, 16, 213, -1, 13, + 183, 79, 213, 1, -1, 113, 124, -1, 14, 213, + 123, -1, 15, 213, 123, -1, -1, 126, 183, 79, + 213, 113, 16, 213, -1, 126, 183, 79, 213, 113, + 127, 183, 79, 213, 113, 16, 213, -1, 126, 183, + 79, 213, 1, -1, 17, -1, 21, -1, 18, -1, + 25, -1, 113, 129, -1, 16, 213, -1, 14, 213, + 128, -1, 15, 213, 128, -1, 33, 201, 79, 213, + 113, 131, 132, 16, 213, -1, 33, 201, 79, 213, + 1, -1, 77, 201, 79, 213, 113, 131, -1, -1, + 76, 213, 113, -1, -1, 134, 93, -1, 135, -1, -1, 138, -1, 138, 135, -1, 4, -1, 3, -1, - 202, -1, 26, -1, 136, -1, 136, 137, -1, 137, - -1, 159, -1, 177, -1, 19, 182, 79, 134, 16, - -1, 19, 182, 79, 134, 127, 182, 79, 134, 16, - -1, 22, 182, 79, 135, 16, -1, 22, 182, 79, - 135, 127, 182, 79, 135, 16, -1, 11, 182, 79, + 203, -1, 26, -1, 136, -1, 136, 137, -1, 137, + -1, 159, -1, 178, -1, 19, 183, 79, 134, 16, + -1, 19, 183, 79, 134, 127, 183, 79, 134, 16, + -1, 22, 183, 79, 135, 16, -1, 22, 183, 79, + 135, 127, 183, 79, 135, 16, -1, 11, 183, 79, 135, 16, -1, 19, 1, -1, 22, 1, -1, 11, - 1, -1, 6, 139, -1, 7, 182, 79, 139, -1, + 1, -1, 6, 139, -1, 7, 183, 79, 139, -1, 8, 139, -1, 9, 139, -1, 10, 139, -1, 12, - 182, 79, 139, -1, 29, 181, 79, 135, 16, -1, + 183, 79, 139, -1, 29, 182, 79, 135, 16, -1, 134, 140, -1, 16, -1, 14, 139, -1, 15, 139, - -1, 29, 181, 79, 212, 113, 16, 212, -1, 29, - 79, 212, 113, 16, 212, -1, 29, 1, -1, 29, - 181, 79, 212, 1, -1, 29, 79, 212, 1, -1, - 30, 212, 113, 143, 16, 212, -1, 30, 212, 1, - -1, 31, 79, 212, 113, 143, -1, 31, 181, 79, - 212, 113, 143, -1, 32, 212, 113, -1, -1, 31, - 79, 212, 1, -1, 31, 181, 79, 212, 1, -1, - 32, 212, 1, -1, 20, 79, 155, 93, 145, 16, - 212, -1, 20, 79, 212, 16, 212, -1, 20, 79, - 212, 145, 16, 212, -1, 20, 181, 79, 212, 145, - 16, 212, -1, 20, 181, 79, 155, 93, 145, 16, - 212, -1, 20, 1, -1, 20, 79, 155, 93, 1, - -1, 20, 79, 212, 1, -1, 20, 181, 79, 155, - 93, 1, -1, 20, 181, 79, 212, 1, -1, 146, + -1, 29, 182, 79, 213, 113, 16, 213, -1, 29, + 79, 213, 113, 16, 213, -1, 29, 1, -1, 29, + 182, 79, 213, 1, -1, 29, 79, 213, 1, -1, + 30, 213, 113, 143, 16, 213, -1, 30, 213, 1, + -1, 31, 79, 213, 113, 143, -1, 31, 182, 79, + 213, 113, 143, -1, 32, 213, 113, -1, -1, 31, + 79, 213, 1, -1, 31, 182, 79, 213, 1, -1, + 32, 213, 1, -1, 20, 79, 155, 93, 145, 16, + 213, -1, 20, 79, 213, 16, 213, -1, 20, 79, + 213, 145, 16, 213, -1, 20, 182, 79, 213, 145, + 16, 213, -1, 20, 182, 79, 155, 93, 145, 16, + 213, -1, 20, 1, -1, 20, 79, 155, 93, 1, + -1, 20, 79, 213, 1, -1, 20, 182, 79, 155, + 93, 1, -1, 20, 182, 79, 213, 1, -1, 146, -1, 146, 145, -1, 147, -1, 149, -1, 153, -1, - 21, 200, 79, 212, 152, 148, 16, 212, -1, 21, - 212, 1, -1, 23, 212, 152, 148, -1, 24, 212, - 152, 148, -1, 25, 182, 79, 212, 152, 148, -1, - 26, 212, 152, 148, -1, 27, 182, 79, 212, 152, - 148, -1, 28, 182, 79, 212, 152, 148, -1, -1, - 33, 195, 79, 212, 152, 150, 151, 16, 212, -1, - 33, 79, -1, 33, 195, 79, 212, 1, -1, 77, - 200, 79, 212, 152, 150, -1, -1, 76, 212, 152, + 21, 201, 79, 213, 152, 148, 16, 213, -1, 21, + 213, 1, -1, 23, 213, 152, 148, -1, 24, 213, + 152, 148, -1, 25, 183, 79, 213, 152, 148, -1, + 26, 213, 152, 148, -1, 27, 183, 79, 213, 152, + 148, -1, 28, 183, 79, 213, 152, 148, -1, -1, + 33, 196, 79, 213, 152, 150, 151, 16, 213, -1, + 33, 79, -1, 33, 196, 79, 213, 1, -1, 77, + 201, 79, 213, 152, 150, -1, -1, 76, 213, 152, -1, -1, 145, -1, -1, 154, 93, -1, 155, -1, - -1, 156, -1, 156, 155, -1, 225, -1, 225, 155, - -1, 4, -1, 3, -1, 162, -1, 180, -1, 157, - -1, 22, 200, 79, 154, 158, 16, -1, 22, 1, + -1, 156, -1, 156, 155, -1, 226, -1, 226, 155, + -1, 4, -1, 3, -1, 162, -1, 181, -1, 157, + -1, 22, 201, 79, 154, 158, 16, -1, 22, 1, -1, 23, 154, 158, -1, 24, 154, 158, -1, 25, - 182, 79, 154, 158, -1, 26, 154, 158, -1, 27, - 182, 79, 154, 158, -1, 28, 182, 79, 154, 158, + 183, 79, 154, 158, -1, 26, 154, 158, -1, 27, + 183, 79, 154, 158, -1, 28, 183, 79, 154, 158, -1, -1, 5, -1, 74, 5, 75, -1, 74, 5, 161, 75, -1, 160, 5, -1, 160, 74, 5, 75, - -1, 160, 74, 5, 202, 75, -1, 160, 74, 5, + -1, 160, 74, 5, 203, 75, -1, 160, 74, 5, 54, 75, -1, 5, 1, -1, 160, 1, -1, 88, - -1, 54, -1, 202, -1, 180, -1, 5, -1, 5, - -1, 74, 195, 200, 75, -1, 5, 1, -1, 72, - 74, 195, 200, 75, -1, 72, 74, 1, -1, 94, - 177, -1, 94, 1, -1, 38, 177, -1, 38, 1, - -1, 39, 177, -1, 39, 1, -1, 40, 177, -1, - 40, 1, -1, 44, 177, -1, 44, 1, -1, 45, - 177, -1, 45, 1, -1, 41, 171, -1, 54, -1, - 56, -1, 95, 95, -1, 95, 218, 95, -1, 71, - 78, -1, 71, 175, 78, -1, 74, 75, -1, 74, - 176, 75, -1, -1, 87, 172, 201, -1, -1, 63, - 173, 201, -1, -1, 57, 174, 171, -1, 58, -1, - 95, 1, -1, 71, 1, -1, 74, 1, -1, 171, - -1, 175, 81, 171, -1, 175, 171, -1, 175, 1, - -1, 171, 96, 171, -1, 176, 81, 171, 96, 171, - -1, 171, 171, -1, 171, 96, 171, 1, -1, 171, - 1, -1, 70, 183, 79, -1, 70, 92, 183, 79, - -1, 70, 79, -1, 70, 66, 195, 79, -1, 70, - 65, 195, 79, -1, 70, 1, -1, 72, 195, -1, - 72, 1, -1, 64, 195, -1, 64, 1, -1, 71, - 92, 183, 78, -1, 71, 183, 78, -1, 71, 78, - -1, 71, 1, -1, 177, -1, 179, -1, 178, -1, - 183, -1, 181, -1, -1, 184, -1, 184, 65, 195, - -1, 195, -1, -1, 42, 185, 195, -1, -1, 42, - 92, 186, 195, -1, -1, 184, 42, 187, 195, -1, - -1, 184, 42, 92, 188, 195, -1, 184, 195, -1, - 47, 220, -1, 184, 47, 220, -1, 49, 221, -1, - 184, 49, 221, -1, 5, -1, 55, -1, 54, -1, - 180, -1, 164, -1, 165, -1, 166, -1, 167, -1, - 168, -1, 169, -1, 170, -1, 203, -1, 214, -1, - 213, -1, 215, -1, 46, 220, -1, 48, 221, -1, - 222, -1, 82, 194, -1, -1, 83, 190, 194, -1, - -1, 81, 191, 194, -1, -1, 62, 192, 194, -1, - -1, 57, 193, 194, -1, 58, -1, 92, 189, -1, - 189, -1, 5, -1, 55, -1, 54, -1, 180, -1, - 164, -1, 165, -1, 166, -1, 167, -1, 168, -1, - 169, -1, 170, -1, 203, -1, 214, -1, 213, -1, - 215, -1, 46, 220, -1, 48, 221, -1, 222, -1, - 82, 201, -1, -1, 83, 196, 201, -1, -1, 81, - 197, 201, -1, -1, 62, 198, 201, -1, 195, 37, - 195, -1, 195, 37, 92, 195, -1, 195, 53, 195, - -1, 195, 53, 92, 195, -1, 195, 92, 195, -1, - 195, 68, 195, -1, 67, 195, -1, 69, 195, -1, - -1, 57, 199, 201, -1, 58, -1, 183, -1, -1, - 92, 195, -1, 68, 195, -1, 195, -1, 85, 204, - 85, -1, 85, 1, -1, 36, 204, 85, -1, 36, - 1, -1, 205, -1, 204, 84, 204, -1, 204, 86, - 204, -1, 87, 204, -1, -1, 206, -1, 206, 205, - -1, 206, 87, 204, -1, 206, 88, -1, 206, 90, - -1, 206, 89, -1, 206, 91, 204, -1, 71, 207, - 78, -1, 71, 78, -1, 71, 1, -1, 92, -1, - 78, -1, 80, -1, 59, -1, 211, -1, 4, -1, - 70, 204, 79, -1, 70, 1, -1, 208, -1, 208, - 207, -1, 209, -1, 210, -1, 211, -1, 210, 80, - 210, -1, 89, -1, 92, -1, 88, -1, 90, -1, - 70, -1, 79, -1, 84, -1, 87, -1, 86, -1, - 91, -1, 85, -1, 59, -1, 60, -1, 93, -1, - 1, 93, -1, 95, 95, -1, 95, 218, 95, -1, - 95, 1, -1, 35, 5, -1, 35, 61, -1, 35, - 4, -1, 35, 1, -1, 97, 97, -1, 97, 216, - 97, -1, 97, 1, -1, 217, -1, 217, 216, -1, - 218, -1, 163, -1, 55, -1, 72, 195, -1, 61, - -1, 61, 219, -1, 4, -1, 4, 219, -1, 61, - -1, 219, 61, -1, 4, -1, 219, 4, -1, 95, - -1, 98, 220, -1, 218, 220, -1, 1, -1, 97, - -1, 98, 221, -1, 216, 97, -1, 216, 98, 221, - -1, 43, 82, -1, 43, 223, 82, -1, 43, 1, - -1, 223, 224, -1, 224, -1, 61, 61, -1, 61, - 1, -1, 6, -1, 7, -1, 8, -1, 9, -1, - 10, -1, 14, -1, 15, -1, 30, -1, 32, -1, - 11, 182, 79, -1, 12, 182, 79, -1, 17, 182, - 79, -1, 19, 182, 79, -1, 13, 182, 79, -1, - 29, 182, 79, -1, 31, 182, 79, -1, 33, 195, - 195, 182, 79, -1, 20, 182, 79, -1 + -1, 54, -1, 203, -1, 181, -1, 5, -1, 5, + -1, 74, 196, 201, 75, -1, 5, 1, -1, 72, + 74, 196, 201, 75, -1, 72, 74, 1, -1, 94, + 178, -1, 94, 1, -1, 38, 178, -1, 38, 1, + -1, 39, 178, -1, 39, 1, -1, 40, 178, -1, + 40, 1, -1, 44, 178, -1, 44, 1, -1, 45, + 178, -1, 45, 1, -1, 41, 172, -1, -1, 41, + 83, 171, 172, -1, 54, -1, 56, -1, 95, 95, + -1, 95, 219, 95, -1, 71, 78, -1, 71, 176, + 78, -1, 74, 75, -1, 74, 177, 75, -1, -1, + 87, 173, 202, -1, -1, 63, 174, 202, -1, -1, + 57, 175, 172, -1, 58, -1, 95, 1, -1, 71, + 1, -1, 74, 1, -1, 172, -1, 176, 81, 172, + -1, 176, 172, -1, 176, 1, -1, 172, 96, 172, + -1, 177, 81, 172, 96, 172, -1, 172, 172, -1, + 172, 96, 172, 1, -1, 172, 1, -1, 70, 184, + 79, -1, 70, 92, 184, 79, -1, 70, 79, -1, + 70, 66, 196, 79, -1, 70, 65, 196, 79, -1, + 70, 1, -1, 72, 196, -1, 72, 1, -1, 64, + 196, -1, 64, 1, -1, 71, 92, 184, 78, -1, + 71, 184, 78, -1, 71, 78, -1, 71, 1, -1, + 178, -1, 180, -1, 179, -1, 184, -1, 182, -1, + -1, 185, -1, 185, 65, 196, -1, 196, -1, -1, + 42, 186, 196, -1, -1, 42, 92, 187, 196, -1, + -1, 185, 42, 188, 196, -1, -1, 185, 42, 92, + 189, 196, -1, 185, 196, -1, 47, 221, -1, 185, + 47, 221, -1, 49, 222, -1, 185, 49, 222, -1, + 5, -1, 55, -1, 54, -1, 181, -1, 164, -1, + 165, -1, 166, -1, 167, -1, 168, -1, 169, -1, + 170, -1, 204, -1, 215, -1, 214, -1, 216, -1, + 46, 221, -1, 48, 222, -1, 223, -1, 82, 195, + -1, -1, 83, 191, 195, -1, -1, 81, 192, 195, + -1, -1, 62, 193, 195, -1, -1, 57, 194, 195, + -1, 58, -1, 92, 190, -1, 190, -1, 5, -1, + 55, -1, 54, -1, 181, -1, 164, -1, 165, -1, + 166, -1, 167, -1, 168, -1, 169, -1, 170, -1, + 204, -1, 215, -1, 214, -1, 216, -1, 46, 221, + -1, 48, 222, -1, 223, -1, 82, 202, -1, -1, + 83, 197, 202, -1, -1, 81, 198, 202, -1, -1, + 62, 199, 202, -1, 196, 37, 196, -1, 196, 37, + 92, 196, -1, 196, 53, 196, -1, 196, 53, 92, + 196, -1, 196, 92, 196, -1, 196, 68, 196, -1, + 67, 196, -1, 69, 196, -1, -1, 57, 200, 202, + -1, 58, -1, 184, -1, -1, 92, 196, -1, 68, + 196, -1, 196, -1, 85, 205, 85, -1, 85, 1, + -1, 36, 205, 85, -1, 36, 1, -1, 206, -1, + 205, 84, 205, -1, 205, 86, 205, -1, 87, 205, + -1, -1, 207, -1, 207, 206, -1, 207, 87, 205, + -1, 207, 88, -1, 207, 90, -1, 207, 89, -1, + 207, 91, 205, -1, 71, 208, 78, -1, 71, 78, + -1, 71, 1, -1, 92, -1, 78, -1, 80, -1, + 59, -1, 212, -1, 4, -1, 70, 205, 79, -1, + 70, 1, -1, 209, -1, 209, 208, -1, 210, -1, + 211, -1, 212, -1, 211, 80, 211, -1, 89, -1, + 92, -1, 88, -1, 90, -1, 70, -1, 79, -1, + 84, -1, 87, -1, 86, -1, 91, -1, 85, -1, + 59, -1, 60, -1, 93, -1, 1, 93, -1, 95, + 95, -1, 95, 219, 95, -1, 95, 1, -1, 35, + 5, -1, 35, 61, -1, 35, 4, -1, 35, 1, + -1, 97, 97, -1, 97, 217, 97, -1, 97, 1, + -1, 218, -1, 218, 217, -1, 219, -1, 163, -1, + 55, -1, 72, 196, -1, 61, -1, 61, 220, -1, + 4, -1, 4, 220, -1, 61, -1, 220, 61, -1, + 4, -1, 220, 4, -1, 95, -1, 98, 221, -1, + 219, 221, -1, 1, -1, 97, -1, 98, 222, -1, + 217, 97, -1, 217, 98, 222, -1, 43, 82, -1, + 43, 224, 82, -1, 43, 1, -1, 224, 225, -1, + 225, -1, 61, 61, -1, 61, 1, -1, 6, -1, + 7, -1, 8, -1, 9, -1, 10, -1, 14, -1, + 15, -1, 30, -1, 32, -1, 11, 183, 79, -1, + 12, 183, 79, -1, 17, 183, 79, -1, 19, 183, + 79, -1, 13, 183, 79, -1, 29, 183, 79, -1, + 31, 183, 79, -1, 33, 196, 196, 183, 79, -1, + 20, 183, 79, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -847,30 +849,31 @@ static const yytype_uint16 yyrline[] = 819, 820, 821, 822, 823, 827, 832, 835, 839, 842, 843, 845, 847, 850, 855, 864, 869, 872, 877, 882, 886, 892, 896, 903, 907, 911, 915, 920, 924, 937, - 941, 944, 945, 946, 947, 949, 950, 951, 952, 956, - 956, 961, 961, 966, 966, 969, 970, 972, 974, 978, - 982, 991, 993, 997, 1006, 1019, 1020, 1022, 1025, 1026, - 1032, 1033, 1034, 1035, 1039, 1044, 1048, 1053, 1057, 1061, - 1062, 1063, 1067, 1068, 1069, 1072, 1075, 1076, 1079, 1081, - 1086, 1089, 1089, 1093, 1093, 1097, 1097, 1100, 1100, 1103, - 1106, 1108, 1112, 1114, 1120, 1121, 1123, 1124, 1125, 1126, + 941, 943, 943, 946, 947, 948, 949, 951, 952, 953, + 954, 958, 958, 963, 963, 968, 968, 971, 972, 974, + 976, 980, 984, 993, 995, 999, 1008, 1021, 1022, 1024, + 1027, 1028, 1034, 1035, 1036, 1037, 1041, 1046, 1050, 1055, + 1059, 1063, 1064, 1065, 1069, 1070, 1071, 1074, 1077, 1078, + 1081, 1083, 1088, 1091, 1091, 1095, 1095, 1099, 1099, 1102, + 1102, 1105, 1108, 1110, 1114, 1116, 1122, 1123, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, - 1137, 1138, 1139, 1141, 1141, 1145, 1145, 1149, 1149, 1153, - 1153, 1156, 1159, 1160, 1162, 1163, 1165, 1166, 1167, 1168, + 1137, 1138, 1139, 1140, 1141, 1143, 1143, 1147, 1147, 1151, + 1151, 1155, 1155, 1158, 1161, 1162, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, - 1179, 1180, 1181, 1183, 1183, 1187, 1187, 1191, 1191, 1195, - 1198, 1204, 1208, 1214, 1215, 1218, 1219, 1220, 1220, 1223, - 1226, 1227, 1230, 1231, 1232, 1235, 1238, 1243, 1247, 1253, - 1256, 1257, 1258, 1259, 1262, 1263, 1264, 1267, 1268, 1269, - 1270, 1271, 1278, 1279, 1281, 1282, 1283, 1284, 1285, 1286, - 1287, 1288, 1292, 1293, 1296, 1297, 1298, 1301, 1303, 1304, + 1179, 1180, 1181, 1182, 1183, 1185, 1185, 1189, 1189, 1193, + 1193, 1197, 1200, 1206, 1210, 1216, 1217, 1220, 1221, 1222, + 1222, 1225, 1228, 1229, 1232, 1233, 1234, 1237, 1240, 1245, + 1249, 1255, 1258, 1259, 1260, 1261, 1264, 1265, 1266, 1269, + 1270, 1271, 1272, 1273, 1280, 1281, 1283, 1284, 1285, 1286, + 1287, 1288, 1289, 1290, 1294, 1295, 1298, 1299, 1300, 1303, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, - 1317, 1331, 1332, 1336, 1337, 1339, 1343, 1356, 1358, 1362, - 1367, 1368, 1371, 1375, 1377, 1381, 1382, 1383, 1385, 1392, - 1393, 1395, 1396, 1399, 1400, 1401, 1402, 1405, 1406, 1407, - 1409, 1413, 1414, 1415, 1417, 1423, 1425, 1428, 1433, 1435, - 1439, 1440, 1447, 1448, 1449, 1450, 1451, 1452, 1453, 1454, - 1455, 1456, 1458, 1460, 1462, 1464, 1466, 1468, 1470, 1475 + 1315, 1316, 1319, 1333, 1334, 1338, 1339, 1341, 1345, 1358, + 1360, 1364, 1369, 1370, 1373, 1377, 1379, 1383, 1384, 1385, + 1387, 1394, 1395, 1397, 1398, 1401, 1402, 1403, 1404, 1407, + 1408, 1409, 1411, 1415, 1416, 1417, 1419, 1425, 1427, 1430, + 1435, 1437, 1441, 1442, 1449, 1450, 1451, 1452, 1453, 1454, + 1455, 1456, 1457, 1458, 1460, 1462, 1464, 1466, 1468, 1470, + 1472, 1477 }; #endif @@ -907,15 +910,15 @@ static const char *const yytname[] = "out_clauses_opt", "o_line", "o_elems_opt", "o_elems", "o_elem", "rep_elem", "rep_parts_opt", "var", "var_op", "modifiers", "o_var", "q_var", "vector", "hash", "struct", "range", "tnode", "tree", "json", - "json_val", "$@9", "$@10", "$@11", "json_vals", "json_pairs", "list", - "meta", "dwim", "compound", "exprs", "exprs_opt", "n_exprs", "listacc", - "$@12", "$@13", "$@14", "$@15", "i_expr", "$@16", "$@17", "$@18", "$@19", - "i_dot_expr", "n_expr", "$@20", "$@21", "$@22", "$@23", "n_exprs_opt", - "n_dot_expr", "regex", "lisp_regex", "regexpr", "regbranch", "regterm", - "regclass", "regclassterm", "regrange", "regchar", "regtoken", "newl", - "strlit", "chrlit", "quasilit", "quasi_items", "quasi_item", "litchars", - "restlitchar", "wordslit", "wordsqlit", "buflit", "buflit_items", - "buflit_item", "not_a_clause", 0 + "$@9", "json_val", "$@10", "$@11", "$@12", "json_vals", "json_pairs", + "list", "meta", "dwim", "compound", "exprs", "exprs_opt", "n_exprs", + "listacc", "$@13", "$@14", "$@15", "$@16", "i_expr", "$@17", "$@18", + "$@19", "$@20", "i_dot_expr", "n_expr", "$@21", "$@22", "$@23", "$@24", + "n_exprs_opt", "n_dot_expr", "regex", "lisp_regex", "regexpr", + "regbranch", "regterm", "regclass", "regclassterm", "regrange", + "regchar", "regtoken", "newl", "strlit", "chrlit", "quasilit", + "quasi_items", "quasi_item", "litchars", "restlitchar", "wordslit", + "wordsqlit", "buflit", "buflit_items", "buflit_item", "not_a_clause", 0 }; #endif @@ -962,30 +965,31 @@ static const yytype_uint8 yyr1[] = 159, 159, 159, 159, 159, 159, 159, 159, 160, 161, 161, 161, 161, 162, 162, 162, 163, 163, 164, 164, 165, 165, 166, 166, 167, 167, 168, 168, 169, 169, - 170, 171, 171, 171, 171, 171, 171, 171, 171, 172, - 171, 173, 171, 174, 171, 171, 171, 171, 171, 175, - 175, 175, 175, 176, 176, 176, 176, 176, 177, 177, - 177, 177, 177, 177, 178, 178, 178, 178, 179, 179, - 179, 179, 180, 180, 180, 181, 182, 182, 183, 183, - 184, 185, 184, 186, 184, 187, 184, 188, 184, 184, - 184, 184, 184, 184, 189, 189, 189, 189, 189, 189, - 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, - 189, 189, 189, 190, 189, 191, 189, 192, 189, 193, - 189, 189, 194, 194, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 196, 195, 197, 195, 198, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 199, 195, 195, - 200, 200, 201, 201, 201, 202, 202, 203, 203, 204, - 204, 204, 204, 204, 205, 205, 205, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 207, 207, 208, 208, 208, 209, 210, 210, - 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, - 211, 212, 212, 213, 213, 213, 214, 214, 214, 214, - 215, 215, 215, 216, 216, 217, 217, 217, 217, 218, - 218, 218, 218, 219, 219, 219, 219, 220, 220, 220, - 220, 221, 221, 221, 221, 222, 222, 222, 223, 223, - 224, 224, 225, 225, 225, 225, 225, 225, 225, 225, - 225, 225, 225, 225, 225, 225, 225, 225, 225, 225 + 170, 171, 170, 172, 172, 172, 172, 172, 172, 172, + 172, 173, 172, 174, 172, 175, 172, 172, 172, 172, + 172, 176, 176, 176, 176, 177, 177, 177, 177, 177, + 178, 178, 178, 178, 178, 178, 179, 179, 179, 179, + 180, 180, 180, 180, 181, 181, 181, 182, 183, 183, + 184, 184, 185, 186, 185, 187, 185, 188, 185, 189, + 185, 185, 185, 185, 185, 185, 190, 190, 190, 190, + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, + 190, 190, 190, 190, 190, 191, 190, 192, 190, 193, + 190, 194, 190, 190, 195, 195, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 197, 196, 198, 196, 199, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 200, + 196, 196, 201, 201, 202, 202, 202, 203, 203, 204, + 204, 205, 205, 205, 205, 205, 206, 206, 206, 207, + 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, + 207, 207, 207, 207, 208, 208, 209, 209, 209, 210, + 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, + 211, 211, 212, 213, 213, 214, 214, 214, 215, 215, + 215, 215, 216, 216, 216, 217, 217, 218, 218, 218, + 218, 219, 219, 219, 219, 220, 220, 220, 220, 221, + 221, 221, 221, 222, 222, 222, 222, 223, 223, 223, + 224, 224, 225, 225, 226, 226, 226, 226, 226, 226, + 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, + 226, 226 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1013,30 +1017,31 @@ static const yytype_uint8 yyr2[] = 3, 4, 2, 4, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1, 4, 2, 5, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 1, 1, 2, 3, 2, 3, 2, 3, 0, - 3, 0, 3, 0, 3, 1, 2, 2, 2, 1, - 3, 2, 2, 3, 5, 2, 4, 2, 3, 4, - 2, 4, 4, 2, 2, 2, 2, 2, 4, 3, - 2, 2, 1, 1, 1, 1, 1, 0, 1, 3, - 1, 0, 3, 0, 4, 0, 4, 0, 5, 2, - 2, 3, 2, 3, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, - 2, 1, 2, 0, 3, 0, 3, 0, 3, 0, - 3, 1, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, - 2, 1, 2, 0, 3, 0, 3, 0, 3, 3, - 4, 3, 4, 3, 3, 2, 2, 0, 3, 1, - 1, 0, 2, 2, 1, 3, 2, 3, 2, 1, - 3, 3, 2, 0, 1, 2, 3, 2, 2, 2, - 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, - 3, 2, 1, 2, 1, 1, 1, 3, 1, 1, + 2, 0, 4, 1, 1, 2, 3, 2, 3, 2, + 3, 0, 3, 0, 3, 0, 3, 1, 2, 2, + 2, 1, 3, 2, 2, 3, 5, 2, 4, 2, + 3, 4, 2, 4, 4, 2, 2, 2, 2, 2, + 4, 3, 2, 2, 1, 1, 1, 1, 1, 0, + 1, 3, 1, 0, 3, 0, 4, 0, 4, 0, + 5, 2, 2, 3, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 2, 2, 3, 2, 2, 2, 2, 2, - 2, 3, 2, 1, 2, 1, 1, 1, 2, 1, - 2, 1, 2, 1, 2, 1, 2, 1, 2, 2, - 1, 1, 2, 2, 3, 2, 3, 2, 2, 1, - 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 3, 3, 3, 3, 3, 3, 5, 3 + 1, 2, 2, 1, 2, 0, 3, 0, 3, 0, + 3, 0, 3, 1, 2, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 2, 1, 2, 0, 3, 0, 3, 0, + 3, 3, 4, 3, 4, 3, 3, 2, 2, 0, + 3, 1, 1, 0, 2, 2, 1, 3, 2, 3, + 2, 1, 3, 3, 2, 0, 1, 2, 3, 2, + 2, 2, 3, 3, 2, 2, 1, 1, 1, 1, + 1, 1, 3, 2, 1, 2, 1, 1, 1, 3, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 2, 2, 3, 2, 2, 2, + 2, 2, 2, 3, 2, 1, 2, 1, 1, 1, + 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, + 2, 2, 1, 1, 2, 2, 3, 2, 3, 2, + 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, + 5, 3 }; /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. @@ -1044,860 +1049,857 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 0, 94, 93, 0, 0, 267, 0, 0, 0, - 0, 267, 267, 74, 0, 0, 75, 0, 96, 0, - 0, 351, 363, 8, 9, 0, 0, 0, 198, 0, + 0, 0, 94, 93, 0, 0, 269, 0, 0, 0, + 0, 269, 269, 74, 0, 0, 75, 0, 96, 0, + 0, 353, 365, 8, 9, 0, 0, 0, 198, 0, 34, 2, 32, 36, 37, 38, 39, 40, 41, 42, - 44, 43, 267, 47, 49, 0, 89, 97, 99, 91, + 44, 43, 269, 47, 49, 0, 89, 97, 99, 91, 45, 46, 48, 100, 0, 101, 95, 10, 196, 0, - 90, 267, 90, 90, 90, 0, 267, 0, 401, 0, - 110, 0, 314, 0, 0, 0, 0, 0, 0, 271, - 0, 0, 0, 0, 0, 0, 0, 316, 315, 347, - 349, 337, 0, 0, 0, 0, 0, 335, 0, 333, - 0, 0, 0, 318, 319, 320, 321, 322, 323, 324, - 262, 264, 263, 317, 266, 0, 265, 268, 270, 325, - 327, 326, 328, 331, 112, 0, 113, 0, 114, 0, + 90, 269, 90, 90, 90, 0, 269, 0, 403, 0, + 110, 0, 316, 0, 0, 0, 0, 0, 0, 273, + 0, 0, 0, 0, 0, 0, 0, 318, 317, 349, + 351, 339, 0, 0, 0, 0, 0, 337, 0, 335, + 0, 0, 0, 320, 321, 322, 323, 324, 325, 326, + 264, 266, 265, 319, 268, 0, 267, 270, 272, 327, + 329, 328, 330, 333, 112, 0, 113, 0, 114, 0, 109, 0, 0, 0, 107, 0, 140, 0, 0, 108, - 0, 123, 0, 0, 0, 350, 0, 379, 377, 400, - 0, 0, 375, 376, 363, 374, 3, 359, 364, 378, - 11, 0, 0, 4, 17, 284, 20, 0, 0, 286, - 285, 309, 311, 307, 0, 305, 0, 303, 0, 6, - 288, 289, 290, 291, 292, 293, 294, 287, 26, 295, - 297, 296, 298, 301, 253, 0, 0, 250, 0, 0, - 0, 356, 0, 1, 33, 0, 88, 98, 92, 197, - 192, 0, 402, 0, 0, 0, 0, 90, 90, 118, - 117, 51, 0, 50, 409, 408, 406, 407, 358, 0, - 211, 210, 213, 212, 215, 214, 221, 222, 233, 235, - 231, 0, 0, 229, 0, 220, 273, 0, 437, 0, - 435, 0, 439, 217, 216, 219, 218, 430, 421, 419, - 427, 0, 0, 329, 280, 417, 0, 431, 0, 416, - 0, 413, 415, 330, 282, 0, 0, 257, 256, 345, - 346, 261, 260, 0, 0, 255, 254, 0, 0, 0, - 354, 332, 0, 209, 208, 405, 403, 0, 412, 410, - 0, 0, 275, 0, 0, 0, 279, 0, 0, 0, - 0, 55, 54, 57, 56, 59, 58, 0, 0, 0, - 90, 176, 175, 0, 442, 443, 444, 445, 446, 267, - 267, 267, 447, 448, 267, 267, 267, 0, 267, 449, - 267, 450, 0, 0, 0, 171, 179, 177, 178, 0, - 173, 0, 0, 0, 0, 127, 131, 0, 381, 0, - 373, 399, 392, 372, 393, 394, 398, 396, 395, 390, - 388, 391, 397, 389, 0, 382, 384, 385, 386, 362, - 363, 363, 363, 367, 369, 368, 363, 365, 15, 13, - 0, 19, 18, 31, 24, 22, 0, 299, 300, 0, - 0, 28, 0, 0, 313, 302, 0, 27, 31, 0, - 0, 0, 248, 202, 199, 190, 0, 201, 200, 355, - 0, 0, 90, 0, 90, 0, 119, 120, 0, 0, - 0, 78, 357, 0, 0, 237, 225, 239, 0, 238, - 227, 0, 0, 0, 236, 223, 0, 0, 272, 441, - 440, 436, 438, 425, 423, 422, 420, 428, 429, 0, - 418, 432, 433, 0, 414, 348, 338, 0, 259, 336, - 353, 352, 334, 404, 411, 111, 0, 277, 0, 281, - 283, 269, 0, 339, 0, 341, 344, 343, 0, 0, - 115, 0, 0, 0, 205, 0, 0, 0, 0, 0, - 0, 181, 0, 0, 0, 0, 351, 0, 172, 142, - 0, 0, 0, 0, 145, 147, 148, 149, 0, 169, - 174, 0, 0, 0, 125, 0, 0, 0, 0, 0, - 0, 0, 380, 371, 383, 0, 360, 361, 366, 370, - 0, 0, 12, 30, 5, 29, 0, 0, 21, 310, - 308, 306, 312, 304, 7, 252, 251, 249, 191, 0, - 0, 193, 0, 35, 35, 79, 234, 232, 242, 226, - 0, 241, 247, 0, 245, 228, 0, 230, 224, 274, - 426, 424, 207, 351, 434, 258, 53, 52, 0, 276, - 340, 342, 106, 61, 0, 63, 62, 66, 70, 0, - 102, 76, 77, 267, 451, 452, 455, 453, 454, 459, - 170, 456, 457, 267, 0, 141, 0, 136, 0, 0, - 160, 0, 0, 146, 168, 0, 144, 0, 104, 267, - 0, 116, 124, 0, 0, 0, 0, 0, 83, 85, - 387, 16, 14, 25, 23, 73, 0, 195, 194, 80, - 81, 240, 0, 0, 0, 278, 0, 0, 0, 67, - 0, 267, 0, 188, 0, 204, 0, 0, 151, 0, - 137, 143, 0, 0, 0, 122, 0, 0, 0, 134, - 130, 126, 351, 87, 0, 267, 246, 0, 206, 60, - 35, 35, 64, 0, 90, 170, 170, 267, 170, 267, - 267, 0, 458, 135, 167, 0, 0, 138, 0, 121, - 132, 131, 0, 0, 0, 0, 71, 0, 244, 68, - 69, 0, 0, 188, 188, 0, 188, 0, 0, 180, - 166, 158, 161, 163, 139, 0, 128, 133, 131, 0, - 35, 0, 0, 35, 103, 182, 183, 170, 185, 170, - 170, 0, 0, 267, 0, 267, 267, 0, 351, 165, - 105, 129, 35, 86, 82, 35, 0, 188, 188, 188, - 167, 167, 0, 167, 0, 0, 0, 0, 0, 0, - 85, 0, 0, 184, 186, 187, 158, 158, 0, 158, - 0, 0, 150, 0, 167, 0, 84, 0, 65, 152, - 153, 167, 155, 167, 167, 167, 164, 159, 72, 158, - 158, 158, 163, 154, 156, 157, 162 + 0, 123, 0, 0, 0, 352, 0, 381, 379, 402, + 0, 0, 377, 378, 365, 376, 3, 361, 366, 380, + 11, 0, 0, 4, 17, 286, 20, 0, 0, 288, + 287, 311, 313, 309, 0, 307, 0, 305, 0, 6, + 290, 291, 292, 293, 294, 295, 296, 289, 26, 297, + 299, 298, 300, 303, 255, 0, 0, 252, 0, 0, + 0, 358, 0, 1, 33, 0, 88, 98, 92, 197, + 192, 0, 404, 0, 0, 0, 0, 90, 90, 118, + 117, 51, 0, 50, 411, 410, 408, 409, 360, 0, + 211, 210, 213, 212, 215, 214, 223, 224, 235, 237, + 233, 0, 0, 221, 231, 0, 220, 275, 0, 439, + 0, 437, 0, 441, 217, 216, 219, 218, 432, 423, + 421, 429, 0, 0, 331, 282, 419, 0, 433, 0, + 418, 0, 415, 417, 332, 284, 0, 0, 259, 258, + 347, 348, 263, 262, 0, 0, 257, 256, 0, 0, + 0, 356, 334, 0, 209, 208, 407, 405, 0, 414, + 412, 0, 0, 277, 0, 0, 0, 281, 0, 0, + 0, 0, 55, 54, 57, 56, 59, 58, 0, 0, + 0, 90, 176, 175, 0, 444, 445, 446, 447, 448, + 269, 269, 269, 449, 450, 269, 269, 269, 0, 269, + 451, 269, 452, 0, 0, 0, 171, 179, 177, 178, + 0, 173, 0, 0, 0, 0, 127, 131, 0, 383, + 0, 375, 401, 394, 374, 395, 396, 400, 398, 397, + 392, 390, 393, 399, 391, 0, 384, 386, 387, 388, + 364, 365, 365, 365, 369, 371, 370, 365, 367, 15, + 13, 0, 19, 18, 31, 24, 22, 0, 301, 302, + 0, 0, 28, 0, 0, 315, 304, 0, 27, 31, + 0, 0, 0, 250, 202, 199, 190, 0, 201, 200, + 357, 0, 0, 90, 0, 90, 0, 119, 120, 0, + 0, 0, 78, 359, 0, 0, 239, 227, 241, 0, + 240, 229, 0, 0, 0, 0, 238, 225, 0, 0, + 274, 443, 442, 438, 440, 427, 425, 424, 422, 430, + 431, 0, 420, 434, 435, 0, 416, 350, 340, 0, + 261, 338, 355, 354, 336, 406, 413, 111, 0, 279, + 0, 283, 285, 271, 0, 341, 0, 343, 346, 345, + 0, 0, 115, 0, 0, 0, 205, 0, 0, 0, + 0, 0, 0, 181, 0, 0, 0, 0, 353, 0, + 172, 142, 0, 0, 0, 0, 145, 147, 148, 149, + 0, 169, 174, 0, 0, 0, 125, 0, 0, 0, + 0, 0, 0, 0, 382, 373, 385, 0, 362, 363, + 368, 372, 0, 0, 12, 30, 5, 29, 0, 0, + 21, 312, 310, 308, 314, 306, 7, 254, 253, 251, + 191, 0, 0, 193, 0, 35, 35, 79, 236, 234, + 244, 228, 0, 243, 249, 0, 247, 230, 0, 222, + 232, 226, 276, 428, 426, 207, 353, 436, 260, 53, + 52, 0, 278, 342, 344, 106, 61, 0, 63, 62, + 66, 70, 0, 102, 76, 77, 269, 453, 454, 457, + 455, 456, 461, 170, 458, 459, 269, 0, 141, 0, + 136, 0, 0, 160, 0, 0, 146, 168, 0, 144, + 0, 104, 269, 0, 116, 124, 0, 0, 0, 0, + 0, 83, 85, 389, 16, 14, 25, 23, 73, 0, + 195, 194, 80, 81, 242, 0, 0, 0, 280, 0, + 0, 0, 67, 0, 269, 0, 188, 0, 204, 0, + 0, 151, 0, 137, 143, 0, 0, 0, 122, 0, + 0, 0, 134, 130, 126, 353, 87, 0, 269, 248, + 0, 206, 60, 35, 35, 64, 0, 90, 170, 170, + 269, 170, 269, 269, 0, 460, 135, 167, 0, 0, + 138, 0, 121, 132, 131, 0, 0, 0, 0, 71, + 0, 246, 68, 69, 0, 0, 188, 188, 0, 188, + 0, 0, 180, 166, 158, 161, 163, 139, 0, 128, + 133, 131, 0, 35, 0, 0, 35, 103, 182, 183, + 170, 185, 170, 170, 0, 0, 269, 0, 269, 269, + 0, 353, 165, 105, 129, 35, 86, 82, 35, 0, + 188, 188, 188, 167, 167, 0, 167, 0, 0, 0, + 0, 0, 0, 85, 0, 0, 184, 186, 187, 158, + 158, 0, 158, 0, 0, 150, 0, 167, 0, 84, + 0, 65, 152, 153, 167, 155, 167, 167, 167, 164, + 159, 72, 158, 158, 158, 163, 154, 156, 157, 162 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 29, 393, 408, 163, 390, 541, 540, 179, 396, - 547, 546, 544, 30, 222, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 599, 659, 41, 42, 603, 223, - 431, 43, 683, 715, 44, 45, 46, 47, 48, 49, - 70, 220, 50, 51, 530, 52, 730, 514, 515, 757, - 516, 759, 779, 731, 517, 518, 519, 345, 346, 701, - 53, 54, 416, 347, 269, 103, 104, 105, 106, 107, - 108, 109, 245, 443, 434, 433, 438, 442, 110, 111, - 112, 113, 114, 115, 116, 117, 247, 447, 478, 588, - 404, 406, 402, 400, 399, 405, 118, 292, 287, 276, - 275, 146, 291, 56, 119, 156, 157, 158, 374, 375, - 376, 377, 159, 71, 120, 121, 122, 270, 271, 272, - 455, 263, 273, 123, 251, 252, 350 + -1, 29, 394, 409, 163, 391, 543, 542, 179, 397, + 549, 548, 546, 30, 222, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 602, 662, 41, 42, 606, 223, + 432, 43, 686, 718, 44, 45, 46, 47, 48, 49, + 70, 220, 50, 51, 532, 52, 733, 516, 517, 760, + 518, 762, 782, 734, 519, 520, 521, 346, 347, 704, + 53, 54, 417, 348, 270, 103, 104, 105, 106, 107, + 108, 109, 444, 246, 445, 435, 434, 439, 443, 110, + 111, 112, 113, 114, 115, 116, 117, 248, 449, 480, + 591, 405, 407, 403, 401, 400, 406, 118, 293, 288, + 277, 276, 146, 292, 56, 119, 156, 157, 158, 375, + 376, 377, 378, 159, 71, 120, 121, 122, 271, 272, + 273, 457, 264, 274, 123, 252, 253, 351 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -678 +#define YYPACT_NINF -697 static const yytype_int16 yypact[] = { - 2063, -64, -678, -678, 2120, 4540, 2525, 4540, 4540, 4540, - 1389, 2525, 2525, -678, 1461, 1533, -678, 1605, -678, 1677, - 19, 2525, 464, 2588, 2840, 1172, 28, 3152, -678, 52, - 4663, -678, -678, -678, -678, -678, -678, -678, -678, -678, - -678, -678, 2525, -678, -678, -35, -678, 46, -678, 4703, - -678, -678, -678, -678, 50, -678, -678, -678, -678, -29, - 4703, 2525, 4703, 4703, 4703, 1389, 2525, 2525, -678, 266, - -678, 3434, -678, 273, 3697, 44, 55, 69, 980, -14, - 15, 79, 82, 23, 23, 228, 228, -678, -678, -678, - -678, -678, 1821, 3485, 3485, 1245, 1893, -678, 2656, -678, - 84, 43, 37, -678, -678, -678, -678, -678, -678, -678, - -678, -678, -678, -678, -678, 8, -678, 2331, 261, -678, - -678, -678, -678, -678, -678, 3580, -678, 3611, -678, 3702, - -678, 34, 81, 128, -678, 131, -678, 3733, 145, -678, - 149, -678, 19, 158, 3808, -678, 168, -678, -678, -678, - 4501, 2748, -678, -678, 464, -678, 132, -678, 910, -678, - -6, 3485, 3485, -678, 261, -678, 87, 23, 228, -678, - -678, -678, -678, -678, 4201, -678, 4138, -678, 4201, -678, - -678, -678, -678, -678, -678, -678, -678, -678, -678, -678, - -678, -678, -678, -678, -678, 3485, 3485, -678, 2525, 170, - 520, -678, 291, -678, -678, 172, -678, -678, -678, -678, - -678, 118, -678, 176, 178, 191, 194, 4703, 4703, -678, - -678, -678, 436, -678, -678, -678, -678, -678, -678, 393, - -678, -678, -678, -678, -678, -678, -678, -678, -678, -678, - -678, 752, 792, -678, 56, -678, -678, 3485, -678, 21, - -678, 7, -678, -678, -678, -678, -678, -678, 65, 97, - -678, 23, 23, -678, -678, -678, 2904, -678, 228, -678, - -2, 101, -678, -678, -678, 2656, 2656, -678, 261, 74, - 74, -678, -678, 2525, 29, -678, 139, 2656, 3485, 3485, - 261, -678, 2656, -678, -678, -678, -678, 181, -678, -678, - 189, 4540, 199, 23, 228, 3485, 261, 2967, 3030, 3485, - 3485, -678, -678, -678, -678, -678, -678, 1095, 4540, 19, - 4703, -678, -678, 2154, -678, -678, -678, -678, -678, 2525, - 2525, 2525, -678, -678, 2525, 2525, 2525, 1749, 2525, -678, - 2525, -678, 3485, 3485, 208, 4789, -678, -678, -678, 2751, - 4789, 3733, 4703, 4296, 1095, -678, 113, 19, -678, 102, - -678, -678, -678, -678, -678, -678, -678, -678, -678, -678, - -678, -678, -678, -678, 231, 2018, -678, 236, -678, -678, - 464, 464, 464, -678, -678, -678, 464, -678, -678, -678, - 3485, 261, 261, 3093, -678, -678, 4201, -678, -678, 4138, - 4138, -678, 4138, 4201, -678, -678, 4138, -678, 3093, 556, - 588, 243, -678, -678, -678, -678, 249, -678, -678, -678, - 19, 89, 4703, 4703, 4703, 4703, -678, -678, 19, 19, - 19, -678, -678, 980, 2656, -678, -678, -678, 961, -678, - -678, 45, -39, 2656, -678, -678, 232, 3485, 261, -678, - -678, -678, -678, -678, -678, 75, 270, -678, -678, 1965, - 261, -678, -678, 228, -678, -678, -678, 259, -678, -678, - 74, 74, -678, -678, -678, -678, 3841, -678, 3485, -678, - -678, 261, 3485, 261, 3485, 139, 74, 74, 323, 4327, - -678, 3932, 2784, 180, -678, 264, 272, 276, 279, 283, - 284, -678, 287, 288, 294, 2394, 2195, 3188, -678, -678, - 19, 1317, 3228, 333, 4631, -678, -678, -678, 295, -678, - -678, 302, 3323, 234, -678, 336, 368, 4418, 2462, 19, - 380, 3963, -678, -678, -678, 1186, 312, -678, -678, -678, - 3485, 3485, 261, -678, -678, 261, 4201, 4201, -678, -678, - -678, -678, -678, -678, -678, -678, -678, -678, -678, 3476, - 325, -678, 328, 4663, 4663, -678, -678, -678, -678, -678, - 980, -678, -678, 980, -678, -678, 980, -678, -678, 261, - -678, -678, -678, 2195, -678, -678, -678, -678, 3485, 261, - 74, 74, -678, -678, 388, -678, -678, -678, 161, 250, - -678, -678, -678, 2525, -678, -678, -678, -678, -678, -678, - 4789, -678, -678, 2195, 335, -678, 395, -678, 337, 414, - -678, 2263, 19, -678, -678, 3359, -678, 402, -678, 2525, - 19, -678, -678, 404, 19, 349, 4449, 19, -678, 363, - -678, 261, 261, -678, -678, -678, 281, -678, -678, -678, - -678, -678, 25, 352, 379, 261, 19, 19, 19, -678, - 19, 2525, 376, 419, 382, -678, 19, 19, -678, 19, - -678, -678, 442, 19, 383, -678, 19, 4054, 19, -678, - -678, -678, 2525, 397, 19, 2525, -678, 980, -678, -678, - 4663, 4663, -678, 390, 4703, 4789, 4789, 2525, 4789, 2525, - 2525, 459, -678, -678, 4631, 1129, 19, -678, 4703, -678, - -678, 113, 4087, 405, 19, 480, -678, 420, -678, -678, - -678, 19, 484, 419, 419, 422, 419, 427, 429, -678, - -678, 619, -678, 432, -678, 498, -678, -678, 113, 19, - 4663, 19, 19, 4663, -678, -678, -678, 4789, -678, 4789, - 4789, 19, 19, 2525, 19, 2525, 2525, 503, 2525, 434, - -678, -678, 4663, -678, -678, 4663, 504, 419, 419, 419, - 4631, 4631, 447, 4631, 448, 454, 19, 457, 19, 505, - 363, 523, 19, -678, -678, -678, 619, 619, 19, 619, - 19, 19, -678, 19, 4631, 19, -678, 19, -678, -678, - -678, 4631, -678, 4631, 4631, 4631, -678, -678, -678, 619, - 619, 619, 432, -678, -678, -678, -678 + 1954, -25, -697, -697, 2011, 4506, 2491, 4506, 4506, 4506, + 1327, 2491, 2491, -697, 1399, 1471, -697, 1543, -697, 1615, + 11, 2491, 616, 2554, 2806, 1060, 44, 279, -697, 71, + 4629, -697, -697, -697, -697, -697, -697, -697, -697, -697, + -697, -697, 2491, -697, -697, -16, -697, 75, -697, 4669, + -697, -697, -697, -697, 82, -697, -697, -697, -697, -13, + 4669, 2491, 4669, 4669, 4669, 1327, 2491, 2491, -697, 353, + -697, 3400, -697, 143, 3118, 24, 53, 61, 671, -37, + 35, 69, 104, 27, 27, 91, 91, -697, -697, -697, + -697, -697, 988, 3451, 3451, 1183, 1759, -697, 2622, -697, + 110, 46, 37, -697, -697, -697, -697, -697, -697, -697, + -697, -697, -697, -697, -697, 3, -697, 2222, 336, -697, + -697, -697, -697, -697, -697, 3546, -697, 3577, -697, 3668, + -697, 40, 54, 89, -697, 100, -697, 3699, 103, -697, + 108, -697, 11, 113, 3774, -697, 123, -697, -697, -697, + 4467, 2714, -697, -697, 616, -697, -44, -697, 1851, -697, + 70, 3451, 3451, -697, 336, -697, 74, 27, 91, -697, + -697, -697, -697, -697, 4167, -697, 4104, -697, 4167, -697, + -697, -697, -697, -697, -697, -697, -697, -697, -697, -697, + -697, -697, -697, -697, -697, 3451, 3451, -697, 2491, 137, + 553, -697, 413, -697, -697, 145, -697, -697, -697, -697, + -697, 131, -697, 155, 158, 162, 169, 4669, 4669, -697, + -697, -697, 503, -697, -697, -697, -697, -697, -697, 444, + -697, -697, -697, -697, -697, -697, -697, -697, -697, -697, + -697, 1109, 1861, -697, -697, 63, -697, -697, 3451, -697, + 55, -697, -31, -697, -697, -697, -697, -697, -697, 151, + 157, -697, 27, 27, -697, -697, -697, 2870, -697, 91, + -697, 161, 139, -697, -697, -697, 2622, 2622, -697, 336, + -29, -29, -697, -697, 2491, 72, -697, 210, 2622, 3451, + 3451, 336, -697, 2622, -697, -697, -697, -697, 127, -697, + -697, 187, 4506, 189, 27, 91, 3451, 336, 2933, 2996, + 3451, 3451, -697, -697, -697, -697, -697, -697, 2482, 4506, + 11, 4669, -697, -697, 2045, -697, -697, -697, -697, -697, + 2491, 2491, 2491, -697, -697, 2491, 2491, 2491, 1687, 2491, + -697, 2491, -697, 3451, 3451, 193, 4755, -697, -697, -697, + 2717, 4755, 3699, 4669, 4262, 2482, -697, 59, 11, -697, + 268, -697, -697, -697, -697, -697, -697, -697, -697, -697, + -697, -697, -697, -697, -697, 213, 1909, -697, 221, -697, + -697, 616, 616, 616, -697, -697, -697, 616, -697, -697, + -697, 3451, 336, 336, 3059, -697, -697, 4167, -697, -697, + 4104, 4104, -697, 4104, 4167, -697, -697, 4104, -697, 3059, + 348, 435, 225, -697, -697, -697, -697, 231, -697, -697, + -697, 11, 203, 4669, 4669, 4669, 4669, -697, -697, 11, + 11, 11, -697, -697, 3555, 2622, -697, -697, -697, 779, + -697, -697, 908, -38, 3555, 2622, -697, -697, 226, 3451, + 336, -697, -697, -697, -697, -697, -697, 160, 264, -697, + -697, 1831, 336, -697, -697, 91, -697, -697, -697, 251, + -697, -697, -29, -29, -697, -697, -697, -697, 3807, -697, + 3451, -697, -697, 336, 3451, 336, 3451, 210, -29, -29, + 316, 4293, -697, 3898, 2750, 278, -697, 261, 265, 277, + 282, 293, 314, -697, 330, 340, 346, 2285, 2086, 3154, + -697, -697, 11, 1255, 3194, 418, 4597, -697, -697, -697, + 350, -697, -697, 354, 3289, 291, -697, 423, 439, 4384, + 2353, 11, 451, 3929, -697, -697, -697, 827, 365, -697, + -697, -697, 3451, 3451, 336, -697, -697, 336, 4167, 4167, + -697, -697, -697, -697, -697, -697, -697, -697, -697, -697, + -697, 3442, 393, -697, 400, 4629, 4629, -697, -697, -697, + -697, -697, 3555, -697, -697, 3555, -697, -697, 3555, -697, + -697, -697, 336, -697, -697, -697, 2086, -697, -697, -697, + -697, 3451, 336, -29, -29, -697, -697, 462, -697, -697, + -697, 321, 302, -697, -697, -697, 2491, -697, -697, -697, + -697, -697, -697, 4755, -697, -697, 2086, 404, -697, 465, + -697, 403, 490, -697, 2154, 11, -697, -697, 3325, -697, + 478, -697, 2491, 11, -697, -697, 479, 11, 422, 4415, + 11, -697, 425, -697, 336, 336, -697, -697, -697, 455, + -697, -697, -697, -697, -697, 31, 408, 437, 336, 11, + 11, 11, -697, 11, 2491, 431, 617, 434, -697, 11, + 11, -697, 11, -697, -697, 506, 11, 446, -697, 11, + 4020, 11, -697, -697, -697, 2491, 447, 11, 2491, -697, + 3555, -697, -697, 4629, 4629, -697, 456, 4669, 4755, 4755, + 2491, 4755, 2491, 2491, 510, -697, -697, 4597, 2448, 11, + -697, 4669, -697, -697, 59, 4053, 457, 11, 518, -697, + 458, -697, -697, -697, 11, 522, 617, 617, 463, 617, + 467, 471, -697, -697, 777, -697, 464, -697, 535, -697, + -697, 59, 11, 4629, 11, 11, 4629, -697, -697, -697, + 4755, -697, 4755, 4755, 11, 11, 2491, 11, 2491, 2491, + 538, 2491, 485, -697, -697, 4629, -697, -697, 4629, 549, + 617, 617, 617, 4597, 4597, 491, 4597, 493, 495, 11, + 496, 11, 560, 425, 563, 11, -697, -697, -697, 777, + 777, 11, 777, 11, 11, -697, 11, 4597, 11, -697, + 11, -697, -697, -697, 4597, -697, 4597, 4597, 4597, -697, + -697, -697, 777, 777, 777, 464, -697, -697, -697, -697 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -678, -678, -678, -678, -678, -678, -678, -678, -678, -678, - -678, -678, 133, -678, 39, 510, -678, -678, -678, -678, - -678, -678, -678, -678, -395, -678, -678, -678, -509, -52, - -678, -678, -237, -678, -678, 3, -24, -678, 499, -678, - 555, -678, -678, -678, -677, -678, -261, -678, -678, -441, - -678, -267, -678, -486, -678, -393, -109, -678, -678, -155, - -678, -678, -678, -678, -678, -17, 6, 30, 35, 57, - 86, 91, -238, -678, -678, -678, -678, -678, 163, -678, - -678, -9, 4, 136, -4, -678, -678, -678, -678, -678, - 11, -678, -678, -678, -678, -28, 720, -678, -678, -678, - -678, -263, -244, -191, 494, -21, 389, -678, 174, -678, - -678, 20, -146, -7, 524, 535, 543, -84, -678, 10, - 301, -47, -46, 572, -678, 299, -678 + -697, -697, -697, -697, -697, -697, -697, -697, -697, -697, + -697, -697, 171, -697, 66, 552, -697, -697, -697, -697, + -697, -697, -697, -697, -319, -697, -697, -697, -509, -81, + -697, -697, -200, -697, -697, 12, -45, -697, 539, -697, + 51, -697, -697, -697, -696, -697, -323, -697, -697, -490, + -697, -223, -697, 153, -697, -599, -76, -697, -697, -600, + -697, -697, -697, -697, -697, -17, -1, 29, 41, 49, + 57, 62, -697, -157, -697, -697, -697, -697, -697, 190, + -697, -697, -9, -10, 232, 8, -697, -697, -697, -697, + -697, 73, -697, -697, -697, -697, 10, 729, -697, -697, + -697, -697, -330, -156, -190, 86, -5, 438, -697, 217, + -697, -697, 64, -148, -7, 152, 184, 472, -91, -697, + -49, 342, -78, -60, 542, -697, 351, -697 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -364 +#define YYTABLE_NINF -366 static const yytype_int16 yytable[] = { - 125, 127, 129, 437, 441, 378, 202, 180, 69, 418, - 69, 69, 69, 144, 629, 187, 248, 145, 300, 138, - 59, 199, 449, 143, 257, 208, 686, 258, 344, 57, - 181, 465, 466, 200, 736, 188, 575, 264, 298, 31, - 274, 258, 576, 469, 295, 230, 572, 258, 472, 2, - 3, 209, 203, 229, 182, 210, 232, 444, 206, 183, - 258, 761, 388, 69, 212, 69, 69, 69, 249, 453, - 234, 216, 18, 312, 502, 314, 249, 316, 246, 580, - 253, 184, 450, 255, 259, 293, 389, 301, 513, 451, - 661, 284, 265, 262, 262, 462, 463, 250, 259, 236, - -243, 237, 238, 239, 259, 258, -243, 468, 240, 266, - 185, 297, 68, 317, 25, 186, 241, 259, 260, 242, - 397, 261, 398, 421, 211, 25, 454, 308, 348, 359, - 349, 27, 243, 379, 299, 353, 581, 685, 296, 25, - 244, 573, 309, 560, 528, 529, 131, 132, 133, 25, - 135, 445, 25, 140, 25, 394, 265, 180, 454, 180, - 318, 180, 259, 55, 561, 187, 310, 187, 55, 187, - 55, 55, 55, 266, 27, 657, 658, 262, 205, 395, - 181, 532, 181, 356, 181, 401, 380, 464, 381, 407, - 567, 417, 308, 55, 411, 566, 600, 213, 601, 577, - 571, 214, 215, 574, 182, 602, 182, 319, 182, 183, - 320, 183, 55, 183, 457, 458, 380, 663, 381, 733, - 69, 69, 461, 55, 351, 55, 55, 55, 352, 378, - 562, 184, 258, 184, 55, 184, 508, 354, 231, 233, - 235, 520, 521, 614, 254, 256, 616, 357, 618, 412, - 628, 420, 601, 623, 446, 422, 479, 423, 480, 602, - 185, 627, 185, 294, 185, 186, 660, 186, 601, 186, - 424, 262, 262, 425, 224, 602, 473, 225, 226, 467, - 217, 218, 219, 265, 786, 787, 474, 789, 55, 259, - 55, 477, 55, 488, 476, 719, 720, 684, 307, 601, - 266, 507, 723, 724, 69, 726, 602, 55, 806, 533, - 489, 491, 492, 262, 308, 809, 535, 810, 811, 812, - 654, 69, 557, 493, 558, 267, 268, 578, 523, 309, - 526, 581, 651, 145, 227, 652, 348, 585, 653, 592, - 348, 348, 348, 604, 522, 799, 800, 527, 802, 622, - 531, 605, 630, 310, 767, 606, 768, 769, 607, 536, - 537, 538, 608, 609, 672, 539, 610, 611, 813, 814, - 815, 549, 550, 612, 551, 380, 419, 381, 553, 180, - 55, 55, 180, 180, 631, 180, 180, 187, 624, 180, - 187, 187, 525, 187, 187, 625, 637, 187, 381, 488, - 647, 526, 181, 648, 656, 181, 181, 548, 181, 181, - 665, 666, 181, 559, 552, 668, 667, 584, 673, 713, - 676, 563, 564, 565, 587, 69, 182, 69, 678, 182, - 182, 183, 182, 182, 183, 183, 182, 183, 183, 596, - 682, 183, 695, 696, 697, 698, 699, 700, 687, 718, - 428, 429, 430, 184, 688, 694, 184, 184, 706, 184, - 184, 702, 708, 184, 55, 495, 496, 497, 147, 721, - 498, 499, 500, 714, 503, 729, 504, 380, 432, 381, - 55, 55, 185, 55, 739, 185, 185, 186, 185, 185, - 186, 186, 185, 186, 186, 777, 741, 186, 348, 742, - 744, 747, 145, 617, 619, 348, 749, 145, 750, 758, - 778, 649, 650, 348, 760, 55, 55, 55, 189, 776, - 782, 795, 636, 148, 149, 413, 788, 790, 594, 180, - 180, 598, 635, 791, 150, 151, 793, 187, 187, 797, - 204, 554, 152, 796, 153, 816, 207, 387, 190, 534, - 452, 154, 181, 181, 0, 640, 155, 643, 644, 191, - 456, 0, 124, 126, 128, 0, 633, 192, 745, 746, - 639, 748, 0, 0, 414, 0, 182, 182, 0, 145, - 0, 183, 183, 0, 92, 55, 55, 55, 55, 0, - 25, 95, 96, 307, 0, 415, 193, 0, 646, 0, - 0, 348, 0, 184, 184, 27, 0, 0, 0, 308, - 0, 0, 783, 784, 785, 670, 348, 124, 126, 128, - 0, 0, 0, 675, 309, 307, 0, 677, 0, 0, - 681, 0, 185, 185, 0, 555, 0, 186, 186, 55, - 0, 308, 751, 752, 753, 754, 755, 756, 310, 689, - 690, 691, 55, 692, 55, 55, 309, 0, 0, 703, - 704, 0, 705, 0, 0, 0, 707, 556, 189, 709, - 189, 712, 189, 0, 0, 680, 0, 716, 145, 0, - 310, 0, 0, 0, 735, 0, 348, 348, 0, 348, - 55, 0, 0, 0, 55, 348, 348, 722, 190, 734, - 190, 0, 190, 0, 0, 0, 0, 740, 0, 191, - 0, 191, 0, 191, 743, 0, 711, 192, 0, 192, - 0, 192, 55, 0, 0, 0, 55, 55, 0, 598, - 598, 0, 762, 0, 764, 765, 0, 0, 348, 662, - 348, 348, 0, 164, 770, 771, 193, 773, 193, 664, - 193, 738, 0, 435, 145, 0, 0, 0, 0, 0, - 0, 348, 348, 0, 348, 674, 0, 0, 0, 792, - 0, 794, 426, 427, 0, 798, 0, 0, 0, 763, - 0, 801, 766, 803, 804, 348, 805, 0, 807, 0, - 808, 0, 348, 439, 348, 348, 348, 693, 0, 55, - 0, 780, 0, 0, 781, 0, 236, 0, 237, 238, - 239, 0, 278, 279, 280, 240, 286, 0, 290, 0, - 0, 717, 0, 241, 0, 0, 242, 0, 0, 0, - 436, 0, 0, 725, 0, 727, 728, 306, 0, 243, - 55, 0, 0, 0, 0, 0, 236, 244, 237, 238, - 239, 0, 0, 55, 55, 240, 475, 55, 0, 0, - 0, 0, 0, 241, 0, 0, 242, 440, 0, 0, - 0, 55, 0, 490, 0, 55, 0, 0, 0, 243, - 0, 391, 392, 0, 0, 0, 0, 244, 0, 772, - 189, 774, 775, 189, 189, 0, 189, 189, 0, 0, - 189, 0, 0, 55, 0, 0, 55, 0, 0, 0, - 0, 0, 0, 0, 147, 409, 410, 0, 0, 0, - 190, 0, 0, 190, 190, 55, 190, 190, 55, 0, - 190, 191, 0, 0, 191, 191, 0, 191, 191, 192, - 0, 191, 192, 192, 0, 192, 192, 0, 0, 192, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 568, 0, 0, 0, 0, 448, 193, 148, - 149, 193, 193, 0, 193, 193, 0, 475, 193, 490, - 150, 151, 0, 0, 0, 0, 460, 0, 152, 0, - 153, 0, 0, 0, 0, 290, 290, 382, 383, 384, - 385, 386, 155, 0, 0, 0, 0, 290, 470, 471, - 0, 0, 290, 0, 0, 236, 0, 237, 238, 239, - 0, 0, 0, 0, 240, 481, 0, 483, 485, 486, - 487, 0, 241, 0, 236, 242, 237, 238, 239, 569, - 189, 189, 570, 240, 0, 0, 0, 0, 243, 0, - 0, 241, 0, 0, 242, 0, 244, 0, 0, 0, - 0, 0, 505, 506, 0, 0, 0, 243, 0, 0, - 190, 190, 0, 0, 0, 244, 0, 0, 0, 0, - 0, 191, 191, 0, 0, 0, 0, 0, 0, 192, - 192, 0, 0, 0, 0, 0, 59, 0, 2, 3, - 4, 60, 61, 62, 63, 64, 65, 66, 0, 0, - 542, 0, 0, 545, 14, 0, 0, 17, 193, 193, - 0, 18, 0, 0, 67, 0, 0, 0, 545, 0, - 732, 0, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, -167, 334, 0, 335, 336, - 511, 337, 0, 0, 290, 0, 0, 0, 338, 339, - 340, 341, 512, 290, 0, 25, 0, 579, 0, 26, - 0, 0, 0, 194, 0, 0, 0, 72, 0, 583, - 27, 0, 0, 28, 0, 0, 0, 0, 68, 0, - 0, 0, 0, 92, 0, 0, 0, 0, 589, 25, - 95, 96, 590, 343, 591, -167, -167, 73, 74, 0, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, -170, 0, 0, 613, 87, 88, 0, 89, - 90, 0, 621, 0, 91, 0, 92, 195, 196, 93, - 0, 94, 25, 95, 96, 361, 281, 0, 0, 0, - 72, 197, 0, 97, 98, 99, 362, 0, 0, 0, - 641, 642, 0, 0, 198, 364, 100, 101, 0, 102, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 0, + 125, 127, 129, 379, 208, 138, 265, 180, 504, 143, + 419, 301, 59, 144, 666, 187, 632, 69, 739, 69, + 69, 69, 202, 181, 309, 230, 275, 515, 258, 145, + 250, 259, 689, 199, 263, 263, 249, 577, 299, 310, + 381, 259, 382, 578, 313, 764, 315, 296, 317, 200, + 259, 453, 298, 182, 232, 247, 451, 216, 124, 126, + 128, 345, 234, 311, 446, 183, 31, 259, 57, 229, + 254, 203, 69, 184, 69, 69, 69, 206, 2, 3, + 212, 185, 302, 209, 438, 442, 186, 210, 260, 398, + 530, 531, 266, 664, 25, 259, 250, 188, 260, 726, + 727, 18, 729, 285, 68, 256, -245, 260, 399, 267, + 189, 294, -245, 124, 126, 128, 452, 251, 263, 318, + 467, 468, 261, 25, 260, 262, 748, 749, 349, 751, + 350, 25, 471, 319, 300, 354, 422, 474, 389, 25, + 688, 297, 395, 259, 224, 360, 266, 225, 226, 380, + 470, 770, 260, 771, 772, 455, 211, 180, 447, 180, + 27, 180, 390, 267, 583, 187, 396, 187, 320, 187, + 786, 787, 788, 181, 25, 181, 190, 181, 617, 321, + 25, 466, 352, 621, 459, 460, 619, 353, 268, 269, + 55, 418, 355, 626, 266, 55, 448, 55, 55, 55, + 260, 630, 358, 182, 227, 182, 412, 182, 191, 463, + 357, 267, 456, 263, 263, 183, 413, 183, 456, 183, + 55, 584, 475, 184, 421, 184, 481, 184, 379, 69, + 69, 185, 564, 185, 423, 185, 186, 424, 186, 55, + 186, 425, 131, 132, 133, 482, 135, 402, 426, 140, + 55, 408, 55, 55, 55, 263, 657, 562, 464, 465, + 189, 55, 189, 309, 189, 231, 233, 235, 427, 428, + 510, 255, 257, 490, 205, 522, 523, 568, 563, 569, + 201, 479, 573, 147, 476, 576, 509, 579, 27, 580, + 295, 535, 469, 213, 603, 478, 604, 214, 215, 802, + 803, 537, 805, 605, 559, 675, 560, 631, 525, 604, + 528, 491, 493, 494, 69, 55, 605, 55, 663, 55, + 604, 581, 816, 817, 818, 584, 190, 605, 190, 588, + 190, 69, 595, 495, 55, 660, 661, 349, 148, 149, + 607, 349, 349, 349, 608, 524, 145, 534, 529, 150, + 151, 533, 381, 477, 382, 716, 609, 152, 191, 153, + 191, 610, 191, -365, -365, -365, 154, 217, 218, 219, + 492, 155, 611, 308, 722, 723, 538, 539, 540, 490, + 180, 528, 541, 180, 180, 308, 180, 180, 187, 309, + 180, 187, 187, 612, 187, 187, 181, 590, 187, 181, + 181, 309, 181, 181, 310, 587, 181, 55, 55, 613, + 551, 552, 599, 553, 561, 654, 310, 555, 655, 614, + 527, 656, 565, 566, 567, 615, 182, 557, 311, 182, + 182, 780, 182, 182, 625, 69, 182, 69, 183, 633, + 311, 183, 183, 627, 183, 183, 184, 628, 183, 184, + 184, 382, 184, 184, 185, 634, 184, 185, 185, 186, + 185, 185, 186, 186, 185, 186, 186, 640, 650, 186, + 550, 687, 308, 604, 477, 651, 492, 554, 659, 668, + 605, 669, 670, 189, 652, 653, 189, 189, 309, 189, + 189, 671, 55, 189, 676, 679, 192, 381, 420, 382, + 349, 681, 685, 310, 690, 620, 622, 349, 55, 55, + 697, 55, 691, 705, 558, 349, 145, 429, 430, 431, + 638, 145, 709, 717, 639, 711, 732, 311, 381, 433, + 382, 180, 180, 721, 744, 724, 742, 745, 747, 187, + 187, 761, 750, 55, 55, 55, 752, 181, 181, 190, + 753, 763, 190, 190, 779, 190, 190, 597, 414, 190, + 601, 781, 497, 498, 499, 785, 193, 500, 501, 502, + 791, 505, 793, 506, 794, 796, 798, 182, 182, 800, + 556, 191, 204, 799, 191, 191, 207, 191, 191, 183, + 183, 191, 819, 536, 145, 636, 388, 184, 184, 642, + 0, 643, 458, 454, 349, 185, 185, 415, 0, 0, + 186, 186, 0, 55, 55, 55, 55, 92, 673, 349, + 147, 646, 647, 25, 95, 96, 678, 649, 416, 0, + 680, 0, 0, 684, 189, 189, 0, 0, 27, 0, + 698, 699, 700, 701, 702, 703, 192, 0, 192, 0, + 192, 0, 692, 693, 694, 0, 695, 0, 0, 0, + 0, 0, 706, 707, 0, 708, 738, 0, 55, 710, + 0, 0, 712, 0, 715, 148, 149, 0, 0, 0, + 719, 55, 0, 55, 55, 0, 150, 151, 0, 349, + 349, 0, 349, 145, 152, 0, 153, 0, 349, 349, + 190, 190, 737, 154, 0, 683, 0, 0, 155, 725, + 743, 0, 0, 0, 0, 0, 193, 746, 193, 55, + 193, 0, 0, 55, 0, 236, 0, 237, 238, 239, + 0, 0, 191, 191, 240, 765, 0, 767, 768, 0, + 0, 349, 241, 349, 349, 242, 714, 773, 774, 0, + 776, 55, 164, 0, 243, 55, 55, 0, 244, 601, + 601, 0, 0, 0, 349, 349, 245, 349, 0, 145, + 0, 0, 795, 0, 797, 0, 0, 0, 801, 0, + 570, 741, 0, 0, 804, 0, 806, 807, 349, 808, + 0, 810, 0, 811, 0, 349, 0, 349, 349, 349, + 754, 755, 756, 757, 758, 759, 0, 0, 0, 766, + 0, 0, 769, 0, 0, 0, 0, 0, 0, 0, + 0, 279, 280, 281, 0, 287, 0, 291, 0, 55, + 0, 783, 0, 236, 784, 237, 238, 239, 665, 0, + 0, 0, 240, 0, 0, 0, 307, 0, 667, 0, + 241, 0, 0, 242, 0, 0, 0, 571, 0, 0, + 572, 736, 0, 0, 677, 0, 244, 0, 0, 192, + 55, 0, 192, 192, 245, 192, 192, 0, 0, 192, + 0, 0, 0, 55, 55, 0, 362, 55, 0, 0, + 392, 393, 0, 0, 0, 0, 696, 363, 0, 0, + 0, 55, 0, 0, 0, 55, 365, 0, 0, 574, + 0, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 720, 0, 0, 0, 410, 411, 789, 790, 0, 792, + 0, 0, 728, 55, 730, 731, 55, 0, 0, 193, + 0, 0, 193, 193, 0, 193, 193, 0, 0, 193, + 809, 0, 0, 0, 0, 55, 0, 812, 55, 813, + 814, 815, 236, 0, 237, 238, 239, 0, 0, 0, + 0, 240, 0, 0, 0, 0, 0, 450, 0, 241, + 0, 0, 242, 0, 0, 0, 0, 0, 775, 278, + 777, 778, 0, 72, 0, 244, 462, 0, 0, 0, + 0, 0, 0, 245, 575, 291, 291, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 291, 472, 473, + 192, 192, 291, 73, 74, 0, 75, 76, 77, 78, + 0, 80, 81, 82, 83, 483, 85, 485, 487, 488, + 489, 0, 87, 88, 0, 89, 90, 0, 0, 0, + 91, 0, 92, 0, 0, 93, 0, 94, 25, 95, + 96, 194, 0, 0, 0, 72, 0, 0, 0, 97, + 98, 99, 507, 508, 0, 0, 0, 0, 0, 0, + 0, 0, 100, 101, 0, 102, 0, 0, 0, 0, + 193, 193, 0, 0, 0, 73, 74, 0, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 436, 0, 0, 0, 87, 88, 0, 89, 90, 0, + 544, 0, 91, 547, 92, 195, 196, 93, 0, 94, + 25, 95, 96, 0, 0, 0, 0, 0, 547, 197, + 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, + 0, 0, 198, 0, 100, 101, 0, 102, 0, 0, + 0, 0, 0, 236, 291, 237, 238, 239, 0, 0, + 0, 0, 240, 0, 291, 0, 0, 0, 582, 0, + 241, 0, 0, 242, 282, 0, 0, 437, 72, 0, + 586, 0, 0, 0, 0, 0, 244, 0, 0, 0, + 0, 0, 0, 0, 245, 0, 0, 0, 0, 592, + 0, 0, 0, 593, 0, 594, 0, 0, 73, 74, + 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 0, 0, 0, 616, 87, 88, 0, + 89, 90, 0, 624, 0, 91, 0, 92, 0, 0, + 93, 0, 94, 25, 95, 96, 59, 0, 0, 0, + 72, 283, 0, 0, 97, 98, 99, 0, 0, 0, + 0, 644, 645, 0, 0, 284, 0, 100, 101, 0, + 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, - 88, 0, 89, 90, 0, 0, 0, 91, 655, 92, - 0, 0, 93, 0, 94, 25, 95, 96, 59, 0, - 0, 0, 72, 282, 0, 0, 97, 98, 99, 0, - 0, 0, 0, 0, 0, 0, 0, 283, 0, 100, - 101, 613, 102, 0, 0, 0, 0, 0, 0, 0, + 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, + 658, 0, 93, 0, 94, 25, 95, 96, 130, 0, + 0, 0, 72, 0, -353, 0, 97, 98, 99, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 68, 100, + 101, 0, 102, 616, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 0, 94, 25, 95, 96, - 130, 0, 0, 0, 72, 0, -351, 0, 97, 98, + 134, 0, 0, 0, 72, 0, -269, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 68, 100, 101, 0, 102, 0, 0, 0, 0, 0, + 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 0, 94, 25, - 95, 96, 134, 0, 0, 0, 72, 0, -267, 0, + 95, 96, 136, 0, 0, 0, 72, 0, -269, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 0, - 94, 25, 95, 96, 136, 0, 0, 0, 72, 0, - -267, 0, 97, 98, 99, 0, 0, 0, 0, 0, + 94, 25, 95, 96, 139, 0, 0, 0, 72, 0, + 137, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, - 93, 0, 94, 25, 95, 96, 139, 0, 0, 0, - 72, 0, 137, 0, 97, 98, 99, 0, 0, 0, + 93, 0, 94, 25, 95, 96, 141, 0, 0, 0, + 72, 0, -269, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, - 0, 0, 93, 0, 94, 25, 95, 96, 141, 0, - 0, 0, 72, 0, -267, 0, 97, 98, 99, 0, + 0, 0, 93, 0, 94, 25, 95, 96, 503, 0, + 0, 0, 72, 0, 142, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 0, 94, 25, 95, 96, - 501, 0, 0, 0, 72, 0, 142, 0, 97, 98, + 286, 0, 0, 0, 72, 0, -353, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, + 78, 0, 80, 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 0, 94, 25, - 95, 96, 277, 0, 0, 0, 72, 0, -351, 0, + 95, 96, 585, 0, 0, 0, 72, 0, 0, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 100, 101, 0, 102, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 73, 74, 0, 75, + 0, 0, 0, 100, 101, 147, 102, 0, 0, 0, + 0, 0, 440, 0, 0, 0, 73, 74, 0, 75, 76, 77, 78, 0, 80, 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 0, - 94, 25, 95, 96, 285, 0, 0, 0, 72, 0, - 0, 0, 97, 98, 99, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 100, 101, 0, 102, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, - 0, 75, 76, 77, 78, 0, 80, 81, 82, 83, - 0, 85, 0, 0, 0, 0, 0, 87, 88, 0, - 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, - 93, 0, 94, 25, 95, 96, 582, 0, 0, 0, - 72, 0, 0, 0, 97, 98, 99, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, - 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 73, 74, 0, 75, 76, 77, 78, 0, 80, 81, - 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, - 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, - 0, 0, 93, 0, 94, 25, 95, 96, 0, 0, - 0, 0, 0, 0, 0, 0, 97, 98, 99, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, - 101, 0, 102, -35, 1, 0, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 361, 149, 0, - 13, 0, 14, 15, 16, 17, 0, 0, 362, 18, - 0, 0, 19, 20, 0, 0, 21, 364, 0, 0, - 0, 0, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 0, 0, 22, 23, 24, 0, 0, 0, 0, - 0, 58, 0, -189, -189, -189, -189, -189, -189, -189, - -189, -189, -189, 25, -189, -189, -189, 26, -189, -189, - 0, 0, -189, 0, 0, -189, -189, 0, 27, -189, - 0, 28, 0, 0, 0, 494, -90, -203, -203, -203, - -203, -203, -203, -203, -203, -203, -203, -203, -203, -203, - -203, -203, 0, -203, -203, 0, -203, -203, -203, -203, - -203, -203, -203, -203, -203, -203, -203, -203, 0, 0, - -189, 0, 0, 0, -189, 0, 0, 0, 0, 0, - 72, 0, 0, 0, 0, -189, 0, 0, -189, 0, - 0, 0, 0, -189, 0, 0, 0, 0, -203, 0, - 0, 0, 0, 0, -203, -203, -203, 0, -203, 0, - 73, 74, 307, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 0, 0, -203, 308, 87, - 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, - 0, 0, 93, 309, 94, 25, 95, 96, 72, 0, - 0, 0, 0, 0, 0, 0, 97, 98, 99, 0, - 0, 0, 0, 0, 0, 0, 0, 310, 0, 100, - 101, 0, 102, 0, 0, 0, 0, 0, 73, 74, - 307, 75, 76, 77, 78, 0, 80, 81, 82, 83, - 0, 85, 0, 0, 0, 0, 308, 87, 88, 0, - 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, - 93, 309, 94, 25, 95, 96, 72, 0, 0, 0, - 0, 0, 669, 0, 97, 98, 99, 0, 0, 0, - 0, 0, 0, 0, 0, 310, 0, 100, 101, 0, - 102, 0, 0, 0, 0, 0, 73, 74, 0, 75, - 76, 77, 78, 302, 80, 81, 82, 83, 303, 85, - 304, 0, 0, 0, 0, 87, 88, 0, 89, 90, - 0, 0, 0, 91, 0, 92, 305, 0, 93, 72, 94, 25, 95, 96, 0, 0, 0, 0, 0, 0, - 0, 0, 97, 98, 99, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 100, 101, 0, 102, 73, - 74, 307, 75, 76, 77, 78, 0, 80, 81, 82, - 83, 0, 85, 0, 0, 0, 0, 308, 87, 88, + 148, 149, 97, 98, 99, 236, 0, 237, 238, 239, + 0, 150, 151, 0, 240, 100, 101, 0, 102, 152, + 0, 153, 241, 0, 0, 242, 441, 0, 383, 384, + 385, 386, 387, 155, 0, 0, 0, 0, 244, 0, + 0, 0, 0, 0, -35, 1, 245, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 362, 149, + 0, 13, 0, 14, 15, 16, 17, 0, 0, 363, + 18, 0, 0, 19, 20, 0, 0, 21, 365, 0, + 0, 0, 0, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 0, 0, 22, 23, 24, 0, 0, 0, + 0, 0, 58, 0, -189, -189, -189, -189, -189, -189, + -189, -189, -189, -189, 25, -189, -189, -189, 26, -189, + -189, 0, 0, -189, 0, 0, -189, -189, 0, 27, + -189, 0, 28, 0, 0, 0, 496, -90, -203, -203, + -203, -203, -203, -203, -203, -203, -203, -203, -203, -203, + -203, -203, -203, 0, -203, -203, 0, -203, -203, -203, + -203, -203, -203, -203, -203, -203, -203, -203, -203, 0, + 0, -189, 0, 0, 0, -189, 0, 0, 0, 0, + 0, 72, 0, 0, 0, 0, -189, 0, 0, -189, + 0, 0, 0, 0, -189, 0, 0, 0, 0, -203, + 0, 0, 0, 0, 0, -203, -203, -203, 0, -203, + 0, 73, 74, 308, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 0, 0, -203, 309, + 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, + 92, 0, 0, 93, 310, 94, 25, 95, 96, 72, + 0, 0, 0, 0, 0, 0, 0, 97, 98, 99, + 0, 0, 0, 0, 0, 0, 0, 0, 311, 0, + 100, 101, 0, 102, 0, 0, 0, 0, 0, 73, + 74, 308, 75, 76, 77, 78, 0, 80, 81, 82, + 83, 0, 85, 0, 0, 0, 0, 309, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, - 0, 93, 309, 94, 25, 95, 96, 72, 0, 0, - 0, 0, 0, 0, 0, 97, 98, 99, 0, 0, - 0, 0, 0, 0, 0, 0, 310, 0, 100, 101, + 0, 93, 310, 94, 25, 95, 96, 72, 0, 0, + 0, 0, 0, 672, 0, 97, 98, 99, 0, 0, + 0, 0, 0, 0, 0, 0, 311, 0, 100, 101, 0, 102, 0, 0, 0, 0, 0, 73, 74, 0, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 0, 0, 0, 0, 87, 88, 0, 89, - 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, + 75, 76, 77, 78, 303, 80, 81, 82, 83, 304, + 85, 305, 0, 0, 0, 0, 87, 88, 0, 89, + 90, 0, 0, 0, 91, 0, 92, 306, 0, 93, 72, 94, 25, 95, 96, 0, 0, 0, 0, 0, - 0, 634, 0, 97, 98, 99, 0, 0, 0, 0, + 0, 0, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 0, 102, - 73, 74, 0, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 0, 0, 0, 0, 87, + 73, 74, 308, 75, 76, 77, 78, 0, 80, 81, + 82, 83, 0, 85, 0, 0, 0, 0, 309, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, - 0, 0, 93, 72, 94, 25, 95, 96, 0, 0, + 0, 0, 93, 310, 94, 25, 95, 96, 72, 0, 0, 0, 0, 0, 0, 0, 97, 98, 99, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, - 101, 0, 102, 73, 74, 0, 75, 76, 77, 78, - 160, 80, 81, 82, 83, 0, 85, 0, 0, 0, - 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, - 91, 0, 92, 0, 0, 93, 161, 94, 25, 95, - 96, 72, 0, 0, 0, 0, 0, 0, 0, 97, - 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, - 162, 0, 100, 101, 0, 102, 0, 0, 0, 0, - 0, 73, 74, 0, 75, 76, 77, 78, 0, 80, - 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, - 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, - 92, 0, 0, 93, 288, 94, 25, 95, 96, 0, - 0, 0, 0, 0, 0, 0, 0, 97, 98, 99, - 0, 0, 0, 0, 0, 0, 0, 0, 289, 360, - 100, 101, 509, 102, 321, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 510, 334, 0, - 335, 336, 511, 337, 0, 0, 0, 0, 0, 0, - 338, 339, 340, 341, 512, 597, 0, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, -35, -35, - -35, 13, -35, 14, 15, 16, 17, 361, 149, -35, - 18, 0, 0, 19, 20, 92, 0, 21, 362, 0, - 0, 25, 95, 96, 0, 343, 363, 364, 0, 0, - 0, 0, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 0, 0, 0, -170, 165, 0, 0, 0, 0, - 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, - 0, 0, 28, 0, 0, 73, 74, -90, 75, 76, - 77, 78, 166, 80, 81, 82, 167, 0, 168, 0, - 0, 0, 0, 0, 169, 170, 0, 171, 172, 0, - 0, 0, 173, 0, 92, 0, 0, 0, 174, 72, - 25, 95, 96, 0, 0, 0, 0, 0, 0, 0, - 0, 175, 176, 177, 0, 0, 0, 0, 0, 0, - 0, 0, 178, 0, 100, 101, 0, 102, 0, 73, - 74, 0, 75, 76, 77, 78, 0, 80, 81, 82, + 0, 0, 0, 0, 0, 0, 0, 311, 0, 100, + 101, 0, 102, 0, 0, 0, 0, 0, 73, 74, + 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 0, 0, 0, 0, 87, 88, 0, + 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, + 93, 0, 94, 25, 95, 96, 0, 0, 0, 0, + 0, 0, 637, 0, 97, 98, 99, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 100, 101, 735, + 102, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, -167, 335, 0, 336, 337, 513, + 338, 0, 0, 0, 0, 0, 0, 339, 340, 341, + 342, 514, 0, 59, 0, 2, 3, 4, 60, 61, + 62, 63, 64, 65, 66, 0, 72, 0, 0, 0, + 0, 14, 0, 0, 17, 0, 0, 0, 18, 0, + 0, 67, 92, 0, 0, 0, 0, 0, 25, 95, + 96, 0, 344, 0, -167, -167, 73, 74, 0, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, -170, 0, 0, 0, 87, 88, 0, 89, 90, + 0, 0, 25, 91, 0, 92, 26, 0, 93, 72, + 94, 25, 95, 96, 0, 0, 0, 27, 0, 0, + 28, 0, 97, 98, 99, 68, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 100, 101, 0, 102, 73, + 74, 0, 75, 76, 77, 78, 160, 80, 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, - 0, 93, 72, 94, 25, 95, 96, 0, 459, 0, + 0, 93, 161, 94, 25, 95, 96, 72, 0, 0, 0, 0, 0, 0, 0, 97, 98, 99, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, - 0, 102, 73, 74, 0, 75, 76, 77, 78, 0, - 80, 81, 82, 83, 0, 85, 0, 0, 0, 0, - 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, - 0, 92, 0, 0, 93, 72, 94, 25, 95, 96, - 0, 0, 0, 0, 0, 0, 0, 0, 97, 98, - 99, 0, 0, 0, 0, 0, 0, 0, 0, 482, - 0, 100, 101, 0, 102, 73, 74, 0, 75, 76, + 0, 0, 0, 0, 0, 0, 162, 0, 100, 101, + 0, 102, 0, 0, 0, 0, 0, 73, 74, 0, + 75, 76, 77, 78, 0, 80, 81, 82, 83, 0, + 85, 0, 0, 0, 0, 0, 87, 88, 0, 89, + 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, + 289, 94, 25, 95, 96, 0, 0, 0, 0, 0, + 0, 0, 0, 97, 98, 99, 0, 0, 0, 0, + 0, 0, 0, 0, 290, 361, 100, 101, 511, 102, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 512, 335, 0, 336, 337, 513, 338, + 0, 0, 0, 0, 0, 0, 339, 340, 341, 342, + 514, 600, 0, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, -35, -35, -35, 13, -35, 14, + 15, 16, 17, 362, 149, -35, 18, 0, 0, 19, + 20, 92, 0, 21, 363, 0, 0, 25, 95, 96, + 0, 344, 364, 365, 0, 0, 0, 0, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 0, 0, 0, + -170, 165, 0, 0, 0, 0, 0, 0, 0, 0, + 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 27, 0, 0, 28, 0, + 0, 73, 74, -90, 75, 76, 77, 78, 166, 80, + 81, 82, 167, 0, 168, 0, 0, 0, 0, 0, + 169, 170, 0, 171, 172, 0, 0, 0, 173, 0, + 92, 0, 0, 0, 174, 72, 25, 95, 96, 0, + 0, 0, 0, 0, 0, 0, 0, 175, 176, 177, + 0, 0, 0, 0, 0, 0, 0, 0, 178, 0, + 100, 101, 0, 102, 0, 73, 74, 0, 75, 76, 77, 78, 0, 80, 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, 93, 72, 94, - 25, 95, 96, 0, 0, 0, 0, 0, 0, 0, + 25, 95, 96, 0, 461, 0, 0, 0, 0, 0, 0, 97, 98, 99, 0, 0, 0, 0, 0, 0, - 0, 0, 484, 0, 100, 101, 0, 102, 73, 74, - 0, 75, 76, 77, 78, 543, 80, 81, 82, 83, + 0, 0, 0, 0, 100, 101, 0, 102, 73, 74, + 0, 75, 76, 77, 78, 0, 80, 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, 88, 0, - 89, 90, 0, 201, 0, 91, 147, 92, 0, 0, - 93, 0, 94, 25, 95, 96, 0, 0, 0, 0, + 89, 90, 0, 0, 0, 91, 0, 92, 0, 0, + 93, 72, 94, 25, 95, 96, 0, 0, 0, 0, 0, 0, 0, 0, 97, 98, 99, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 100, 101, 615, - 102, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 0, 334, 0, 335, 336, 511, - 337, 148, 149, 0, 0, 0, 0, 338, 339, 340, - 341, 512, 150, 151, 0, 0, 0, 0, 0, 0, - 152, 0, 153, 72, 0, 0, -363, -363, -363, 154, - 0, 0, 0, 0, 155, 0, 0, 0, 0, 0, - 0, 0, 92, 0, 0, 0, 0, 0, 25, 95, - 96, 0, 343, 73, 74, 0, 75, 76, 77, 78, - 0, 80, 81, 82, 83, 0, 85, 0, 0, 0, - 0, -170, 87, 88, 0, 89, 90, 0, 0, 0, - 91, 0, 92, 0, 0, 93, 0, 94, 25, 95, - 96, 0, 0, 0, 0, 0, 0, 620, 0, 97, - 98, 99, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 100, 101, 626, 102, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 0, - 334, 0, 335, 336, 511, 337, 0, 0, 0, 0, - 0, 0, 338, 339, 340, 341, 512, 0, 0, 0, - 671, 0, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 0, 334, 0, 335, 336, - 511, 337, 0, 0, 0, 0, 0, 92, 338, 339, - 340, 341, 512, 25, 95, 96, 0, 343, 0, 0, + 0, 0, 0, 0, 0, 484, 0, 100, 101, 0, + 102, 73, 74, 0, 75, 76, 77, 78, 0, 80, + 81, 82, 83, 0, 85, 0, 0, 0, 0, 0, + 87, 88, 0, 89, 90, 0, 0, 0, 91, 0, + 92, 0, 0, 93, 72, 94, 25, 95, 96, 0, + 0, 0, 0, 0, 0, 0, 0, 97, 98, 99, + 0, 0, 0, 0, 0, 0, 0, 0, 486, 0, + 100, 101, 0, 102, 73, 74, 0, 75, 76, 77, + 78, 545, 80, 81, 82, 83, 0, 85, 0, 0, + 0, 0, 0, 87, 88, 0, 89, 90, 0, 228, + 0, 91, 147, 92, 0, 0, 93, 0, 94, 25, + 95, 96, 0, 0, 0, 0, 0, 0, 0, 0, + 97, 98, 99, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 100, 101, 618, 102, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 335, 0, 336, 337, 513, 338, 148, 149, 0, + 0, 0, 0, 339, 340, 341, 342, 514, 150, 151, + 0, 0, 0, 0, 0, 0, 152, 0, 153, 72, + 0, 0, -365, -365, -365, 154, 0, 0, 0, 0, + 155, 0, 0, 0, 0, 0, 0, 0, 92, 0, + 0, 0, 0, 0, 25, 95, 96, 0, 344, 73, + 74, 0, 75, 76, 77, 78, 0, 80, 81, 82, + 83, 0, 85, 0, 0, 0, 0, -170, 87, 88, + 0, 89, 90, 0, 0, 0, 91, 0, 92, 0, + 0, 93, 0, 94, 25, 95, 96, 0, 0, 0, + 0, 0, 0, 623, 0, 97, 98, 99, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, + 629, 102, 322, 323, 324, 325, 326, 327, 328, 329, + 330, 331, 332, 333, 334, 0, 335, 0, 336, 337, + 513, 338, 0, 0, 0, 0, 0, 0, 339, 340, + 341, 342, 514, 0, 0, 0, 674, 0, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 0, 335, 0, 336, 337, 513, 338, 0, 0, + 0, 0, 0, 92, 339, 340, 341, 342, 514, 25, + 95, 96, 0, 344, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -170, 0, 0, 0, - 0, 0, 0, 92, 0, 0, 0, 0, 0, 25, - 95, 96, 0, 343, 0, 221, 0, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, -35, -35, - -35, 13, -170, 14, 15, 16, 17, 0, 0, 0, - 18, 0, 0, 19, 20, 0, 0, 21, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 645, 0, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 72, 0, -35, 13, -35, 14, 15, 16, 17, 0, - 0, -35, 18, 0, 25, 19, 20, 0, 26, 21, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, - 73, 74, 28, 75, 76, 77, 78, -90, 80, 81, - 82, 83, 0, 85, 0, 0, 0, 0, 0, 87, - 88, 0, 89, 90, 0, 0, 25, 91, 0, 92, - 26, 0, 93, 0, 94, 25, 95, 96, 0, 0, - 0, 27, 0, 0, 28, 0, 97, 98, 99, -90, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, - 101, 311, 102, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, -35, -35, -35, 13, 0, 14, + 0, 0, -170, 0, 0, 0, 0, 0, 0, 92, + 0, 0, 0, 0, 0, 25, 95, 96, 0, 344, + 0, 221, 0, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, -35, -35, -35, 13, -170, 14, 15, 16, 17, 0, 0, 0, 18, 0, 0, 19, - 20, 0, 313, 21, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, -35, -35, -35, 13, 0, - 14, 15, 16, 17, 0, 0, 0, 18, 0, 0, - 19, 20, 0, 0, 21, 0, 0, 0, 0, 0, - 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 27, 0, 0, 28, 0, - 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, - 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 27, 0, 228, 28, - 0, 147, 0, 315, -90, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, -35, -35, -35, 13, - 0, 14, 15, 16, 17, 0, 0, 0, 18, 0, - 0, 19, 20, 0, 59, 21, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 0, - 334, 0, 335, 336, 0, 337, 148, 149, 0, 0, - 0, 0, 338, 339, 340, 341, 342, 150, 151, 0, - 0, 0, 25, 0, 0, 152, 26, 153, 0, 0, - 0, -363, -363, -363, 154, 0, 0, 27, 0, 155, - 28, 0, 0, 0, 0, -90, 0, 92, 0, 0, - 0, 0, 0, 25, 95, 96, 0, 343, 0, 355, - 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 0, 0, -35, 13, 68, 14, 15, 16, - 17, 0, 0, 0, 18, 0, 0, 19, 20, -35, - -35, 21, 586, 0, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, -35, -35, -35, 13, 0, - 14, 15, 16, 17, 0, 0, 0, 18, 0, 0, - 19, 20, 0, 0, 21, 0, 0, 0, 25, 0, + 20, 0, 0, 21, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 648, 0, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 72, 0, -35, 13, + -35, 14, 15, 16, 17, 0, 0, -35, 18, 0, + 25, 19, 20, 0, 26, 21, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 27, 73, 74, 28, 75, + 76, 77, 78, -90, 80, 81, 82, 83, 0, 85, + 0, 0, 0, 0, 0, 87, 88, 0, 89, 90, + 0, 0, 25, 91, 0, 92, 26, 0, 93, 0, + 94, 25, 95, 96, 0, 0, 0, 27, 0, 0, + 28, 0, 97, 98, 99, -90, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 100, 101, 312, 102, 2, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + -35, -35, -35, 13, 0, 14, 15, 16, 17, 0, + 0, 0, 18, 0, 0, 19, 20, 0, 314, 21, + 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, -35, -35, -35, 13, 0, 14, 15, 16, 17, + 0, 0, 0, 18, 0, 0, 19, 20, 0, 236, + 21, 237, 238, 239, 0, 0, 25, 0, 240, 0, + 26, 0, 0, 0, 0, 0, 241, 0, 0, 242, + 0, 27, 0, 0, 28, 0, 0, 0, 0, -90, + 0, 0, 244, 0, 0, 0, 0, 25, 0, 0, + 245, 26, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 27, 0, 0, 28, 0, 0, 0, 316, + -90, 2, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, -35, -35, -35, 13, 0, 14, 15, 16, + 17, 0, 0, 0, 18, 0, 0, 19, 20, 0, + 59, 21, 322, 323, 324, 325, 326, 327, 328, 329, + 330, 331, 332, 333, 334, 0, 335, 0, 336, 337, + 0, 338, 0, 0, 0, 0, 0, 0, 339, 340, + 341, 342, 343, 0, 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 28, 0, 0, 0, - 0, -90, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 27, 0, 0, 28, - 0, 0, 0, 595, -90, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, -35, -35, -35, 13, - 0, 14, 15, 16, 17, 0, 0, 0, 18, 0, - 0, 19, 20, 0, 638, 21, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 0, 0, -35, - 13, 0, 14, 15, 16, 17, 0, 0, 0, 18, - 0, 0, 19, 20, 0, 0, 21, 0, 0, 0, - 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, - 28, 0, 0, 0, 0, -90, 0, 0, 0, 0, - 0, 0, 0, 25, 0, 0, 0, 26, 0, -35, - -35, 0, 0, 0, 0, 0, 0, 0, 27, 0, - 0, 28, 0, 0, 0, 710, -90, 2, 3, 4, + 0, -90, 0, 92, 0, 0, 0, 0, 0, 25, + 95, 96, 0, 344, 0, 356, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 0, 0, - -35, 13, 0, 14, 15, 16, 17, 0, 0, 0, - 18, 0, 0, 19, 20, -35, -35, 21, 737, 0, + -35, 13, 68, 14, 15, 16, 17, 0, 0, 0, + 18, 0, 0, 19, 20, -35, -35, 21, 589, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 0, 0, -35, 13, 0, 14, 15, 16, 17, - 0, 0, 0, 18, 0, 0, 19, 20, -35, -35, + 12, -35, -35, -35, 13, 0, 14, 15, 16, 17, + 0, 0, 0, 18, 0, 0, 19, 20, 0, 0, 21, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, - 0, 0, 28, 165, 0, 0, 0, -90, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, - 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 27, 73, 74, 28, 75, 76, 77, 78, - -90, 80, 81, 82, 167, 0, 168, 0, 0, 0, - 0, 0, 169, 170, 0, 171, 172, 0, 0, 0, - 173, 0, 92, 0, 0, 0, 165, 0, 25, 95, - 96, 0, 0, 0, 0, 0, 0, 0, 0, 175, - 176, 177, 0, 0, 0, 0, 0, 0, 0, 0, - 403, 0, 100, 101, 0, 102, 73, 74, 0, 75, - 76, 77, 78, 0, 80, 81, 82, 167, 0, 168, - 0, 0, 0, 0, 0, 169, 170, 0, 171, 172, - 0, 0, 0, 173, 0, 92, 0, 0, 0, 0, - 0, 25, 95, 96, 0, 0, 0, 0, 0, 0, - 0, 0, 175, 176, 177, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 100, 101, 524, 102, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 0, 0, -35, 13, 0, 14, 15, 16, 17, 0, - 0, 0, 18, 0, 0, 19, 20, 0, 593, 21, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 0, 0, -35, 13, 0, 14, 15, 16, 17, - 0, 0, 0, 18, 0, 0, 19, 20, 0, 0, - 21, 0, 0, 0, 0, 0, 25, 0, 0, 0, - 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 27, 0, 0, 28, 0, 0, 0, 0, -90, + 0, 0, 28, 0, 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 27, 0, 0, 28, 0, 0, 0, 632, + 0, 0, 27, 0, 0, 28, 0, 0, 0, 598, -90, 2, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 0, 0, -35, 13, 0, 14, 15, 16, + 11, 12, -35, -35, -35, 13, 0, 14, 15, 16, 17, 0, 0, 0, 18, 0, 0, 19, 20, 0, - 679, 21, 2, 3, 4, 5, 6, 7, 8, 9, + 641, 21, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 0, 0, -35, 13, 0, 14, 15, 16, 17, 0, 0, 0, 18, 0, 0, 19, 20, 0, 0, 21, 0, 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 358, 27, 0, 147, 28, 0, 0, 0, + 0, 0, 0, 27, 0, 0, 28, 0, 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, 25, - 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 26, 0, -35, -35, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 28, 0, 0, - 0, 59, -90, 2, 3, 4, 60, 61, 62, 63, - 64, 65, 66, 0, -90, -90, -90, 0, 0, 14, - 148, 149, 17, 0, 0, 0, 18, 0, 0, 67, - 0, 150, 151, 0, 0, 0, 0, 0, 0, 152, - -363, 153, 0, 0, 0, -363, 0, -363, 154, 0, - 0, 0, 0, 155, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 713, -90, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 0, 0, -35, 13, 0, 14, + 15, 16, 17, 0, 0, 0, 18, 0, 0, 19, + 20, -35, -35, 21, 740, 0, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 0, 0, -35, + 13, 0, 14, 15, 16, 17, 0, 0, 0, 18, + 0, 0, 19, 20, -35, -35, 21, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 27, 0, 0, 28, 0, - 0, 0, 0, 68, 321, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 0, 334, 0, - 335, 336, 511, 337, 0, 0, 0, 0, 0, 0, - 338, 339, 340, 341, 512, 0, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 0, 0, 0, + 0, 0, 0, 0, 0, 27, 0, 0, 28, 165, + 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 27, 73, + 74, 28, 75, 76, 77, 78, -90, 80, 81, 82, + 167, 0, 168, 0, 0, 0, 0, 0, 169, 170, + 0, 171, 172, 0, 0, 0, 173, 0, 92, 0, + 0, 0, 165, 0, 25, 95, 96, 0, 0, 0, + 0, 0, 0, 0, 0, 175, 176, 177, 0, 0, + 0, 0, 0, 0, 0, 0, 404, 0, 100, 101, + 0, 102, 73, 74, 0, 75, 76, 77, 78, 0, + 80, 81, 82, 167, 0, 168, 0, 0, 0, 0, + 0, 169, 170, 0, 171, 172, 0, 0, 0, 173, + 0, 92, 0, 0, 0, 0, 0, 25, 95, 96, + 0, 0, 0, 0, 0, 0, 0, 0, 175, 176, + 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 100, 101, 526, 102, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 0, 0, -35, 13, + 0, 14, 15, 16, 17, 0, 0, 0, 18, 0, + 0, 19, 20, 0, 596, 21, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 0, 0, -35, 13, 0, 14, 15, 16, 17, 0, 0, 0, 18, - 0, 0, 19, 20, 0, 92, 21, 0, 0, 0, - 0, 25, 95, 96, 0, 343, 2, 3, 4, 60, - 61, 62, 63, 64, 65, 66, 0, 0, 0, 0, - 0, 0, 14, 0, -170, 17, 0, 0, 0, 18, - 0, 0, 67, 25, 0, 0, 0, 26, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, - 0, 28, 0, 0, 0, 0, -90, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 19, 20, 0, 0, 21, 0, 0, 0, + 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, + 28, 0, 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, - 0, 28, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 0, 334, 0, 335, 336, - 0, 337, 0, 0, 0, 0, 0, 0, 338, 339, - 340, 341, 342, 0, 0, 0, 0, 0, 0, 0, + 0, 28, 0, 0, 0, 635, -90, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 0, 0, + -35, 13, 0, 14, 15, 16, 17, 0, 0, 0, + 18, 0, 0, 19, 20, 0, 682, 21, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 0, + 0, -35, 13, 0, 14, 15, 16, 17, 0, 0, + 0, 18, 0, 0, 19, 20, 0, 0, 21, 0, + 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 359, 27, + 0, 147, 28, 0, 0, 0, 0, -90, 0, 0, + 0, 0, 0, 0, 0, 25, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 27, 0, 0, 28, 0, 0, 0, 59, -90, 2, + 3, 4, 60, 61, 62, 63, 64, 65, 66, 0, + -90, -90, -90, 0, 0, 14, 148, 149, 17, 0, + 0, 0, 18, 0, 0, 67, 0, 150, 151, 0, + 0, 0, 0, 0, 0, 152, -365, 153, 0, 0, + 0, -365, 0, -365, 154, 0, 0, 0, 0, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 92, 0, 0, 0, 0, 0, 25, - 95, 96, 0, 343 + 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, + 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 27, 0, 0, 28, 0, 0, 0, 0, 68, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 0, 335, 0, 336, 337, 513, 338, + 0, 0, 0, 0, 0, 0, 339, 340, 341, 342, + 514, 0, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 0, 0, 0, 13, 0, 14, 15, + 16, 17, 0, 0, 0, 18, 0, 0, 19, 20, + 0, 92, 21, 0, 0, 0, 0, 25, 95, 96, + 0, 344, 2, 3, 4, 60, 61, 62, 63, 64, + 65, 66, 0, 0, 0, 0, 0, 0, 14, 0, + -170, 17, 0, 0, 0, 18, 0, 0, 67, 25, + 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 27, 0, 0, 28, 0, 0, + 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, + 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 27, 0, 0, 28, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 0, 335, 0, 336, 337, 0, 338, 0, 0, + 0, 0, 0, 0, 339, 340, 341, 342, 343, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 92, + 0, 0, 0, 0, 0, 25, 95, 96, 0, 344 }; #define yypact_value_is_default(yystate) \ - ((yystate) == (-678)) + ((yystate) == (-697)) #define yytable_value_is_error(yytable_value) \ YYID (0) static const yytype_int16 yycheck[] = { - 7, 8, 9, 241, 242, 151, 27, 24, 5, 200, - 7, 8, 9, 20, 523, 24, 1, 21, 102, 15, - 1, 25, 1, 19, 1, 49, 1, 4, 137, 93, - 24, 275, 276, 5, 711, 24, 75, 84, 1, 0, - 86, 4, 81, 287, 1, 1, 1, 4, 292, 3, - 4, 1, 0, 74, 24, 5, 1, 1, 93, 24, - 4, 738, 68, 60, 93, 62, 63, 64, 61, 4, - 1, 67, 26, 125, 337, 127, 61, 129, 92, 4, - 1, 24, 61, 1, 61, 1, 92, 79, 349, 82, - 599, 95, 55, 83, 84, 97, 98, 82, 61, 54, - 75, 56, 57, 58, 61, 4, 81, 78, 63, 72, - 24, 101, 93, 79, 70, 24, 71, 61, 95, 74, - 167, 98, 168, 5, 74, 70, 61, 53, 137, 150, - 137, 85, 87, 154, 97, 142, 61, 646, 95, 70, - 95, 96, 68, 54, 31, 32, 10, 11, 12, 70, - 14, 95, 70, 17, 70, 68, 55, 174, 61, 176, - 79, 178, 61, 0, 75, 174, 92, 176, 5, 178, - 7, 8, 9, 72, 85, 14, 15, 167, 42, 92, - 174, 79, 176, 144, 178, 174, 84, 271, 86, 178, - 434, 200, 53, 30, 198, 433, 16, 61, 18, 443, - 438, 65, 66, 441, 174, 25, 176, 79, 178, 174, - 79, 176, 49, 178, 261, 262, 84, 610, 86, 705, - 217, 218, 268, 60, 79, 62, 63, 64, 79, 375, - 421, 174, 4, 176, 71, 178, 345, 79, 75, 76, - 77, 350, 351, 506, 81, 82, 507, 79, 511, 79, - 16, 79, 18, 514, 244, 79, 303, 79, 304, 25, - 174, 522, 176, 100, 178, 174, 16, 176, 18, 178, - 79, 261, 262, 79, 1, 25, 95, 4, 5, 283, - 14, 15, 16, 55, 770, 771, 97, 773, 125, 61, - 127, 92, 129, 317, 301, 690, 691, 16, 37, 18, - 72, 93, 695, 696, 301, 698, 25, 144, 794, 78, - 317, 318, 319, 303, 53, 801, 80, 803, 804, 805, - 583, 318, 79, 320, 75, 97, 98, 95, 352, 68, - 354, 61, 570, 337, 61, 573, 345, 78, 576, 16, - 349, 350, 351, 79, 351, 786, 787, 354, 789, 16, - 357, 79, 16, 92, 747, 79, 749, 750, 79, 380, - 381, 382, 79, 79, 625, 386, 79, 79, 809, 810, - 811, 399, 400, 79, 402, 84, 85, 86, 406, 396, - 217, 218, 399, 400, 16, 402, 403, 396, 93, 406, - 399, 400, 353, 402, 403, 93, 16, 406, 86, 423, - 75, 425, 396, 75, 16, 399, 400, 396, 402, 403, - 75, 16, 406, 420, 403, 1, 79, 463, 16, 682, - 16, 428, 429, 430, 476, 422, 396, 424, 79, 399, - 400, 396, 402, 403, 399, 400, 406, 402, 403, 491, - 77, 406, 23, 24, 25, 26, 27, 28, 96, 687, - 14, 15, 16, 396, 75, 79, 399, 400, 16, 402, - 403, 79, 79, 406, 301, 329, 330, 331, 4, 79, - 334, 335, 336, 76, 338, 16, 340, 84, 85, 86, - 317, 318, 396, 320, 79, 399, 400, 396, 402, 403, - 399, 400, 406, 402, 403, 758, 16, 406, 507, 79, - 16, 79, 506, 510, 511, 514, 79, 511, 79, 77, - 76, 563, 564, 522, 16, 352, 353, 354, 24, 16, - 16, 16, 529, 59, 60, 5, 79, 79, 489, 546, - 547, 492, 528, 79, 70, 71, 79, 546, 547, 16, - 30, 408, 78, 780, 80, 812, 47, 158, 24, 375, - 251, 87, 546, 547, -1, 535, 92, 546, 547, 24, - 259, -1, 7, 8, 9, -1, 527, 24, 723, 724, - 531, 726, -1, -1, 54, -1, 546, 547, -1, 583, - -1, 546, 547, -1, 64, 422, 423, 424, 425, -1, - 70, 71, 72, 37, -1, 75, 24, -1, 559, -1, - -1, 610, -1, 546, 547, 85, -1, -1, -1, 53, - -1, -1, 767, 768, 769, 622, 625, 62, 63, 64, - -1, -1, -1, 630, 68, 37, -1, 634, -1, -1, - 637, -1, 546, 547, -1, 79, -1, 546, 547, 476, - -1, 53, 23, 24, 25, 26, 27, 28, 92, 656, - 657, 658, 489, 660, 491, 492, 68, -1, -1, 666, - 667, -1, 669, -1, -1, -1, 673, 79, 174, 676, - 176, 678, 178, -1, -1, 636, -1, 684, 682, -1, - 92, -1, -1, -1, 708, -1, 695, 696, -1, 698, - 527, -1, -1, -1, 531, 704, 705, 694, 174, 706, - 176, -1, 178, -1, -1, -1, -1, 714, -1, 174, - -1, 176, -1, 178, 721, -1, 677, 174, -1, 176, - -1, 178, 559, -1, -1, -1, 563, 564, -1, 690, - 691, -1, 739, -1, 741, 742, -1, -1, 747, 603, - 749, 750, -1, 23, 751, 752, 174, 754, 176, 613, - 178, 712, -1, 1, 758, -1, -1, -1, -1, -1, - -1, 770, 771, -1, 773, 629, -1, -1, -1, 776, - -1, 778, 217, 218, -1, 782, -1, -1, -1, 740, - -1, 788, 743, 790, 791, 794, 793, -1, 795, -1, - 797, -1, 801, 1, 803, 804, 805, 661, -1, 636, - -1, 762, -1, -1, 765, -1, 54, -1, 56, 57, - 58, -1, 92, 93, 94, 63, 96, -1, 98, -1, - -1, 685, -1, 71, -1, -1, 74, -1, -1, -1, - 78, -1, -1, 697, -1, 699, 700, 117, -1, 87, - 677, -1, -1, -1, -1, -1, 54, 95, 56, 57, - 58, -1, -1, 690, 691, 63, 301, 694, -1, -1, - -1, -1, -1, 71, -1, -1, 74, 75, -1, -1, - -1, 708, -1, 318, -1, 712, -1, -1, -1, 87, - -1, 161, 162, -1, -1, -1, -1, 95, -1, 753, - 396, 755, 756, 399, 400, -1, 402, 403, -1, -1, - 406, -1, -1, 740, -1, -1, 743, -1, -1, -1, - -1, -1, -1, -1, 4, 195, 196, -1, -1, -1, - 396, -1, -1, 399, 400, 762, 402, 403, 765, -1, - 406, 396, -1, -1, 399, 400, -1, 402, 403, 396, - -1, 406, 399, 400, -1, 402, 403, -1, -1, 406, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1, -1, -1, -1, -1, 247, 396, 59, - 60, 399, 400, -1, 402, 403, -1, 422, 406, 424, - 70, 71, -1, -1, -1, -1, 266, -1, 78, -1, - 80, -1, -1, -1, -1, 275, 276, 87, 88, 89, - 90, 91, 92, -1, -1, -1, -1, 287, 288, 289, - -1, -1, 292, -1, -1, 54, -1, 56, 57, 58, - -1, -1, -1, -1, 63, 305, -1, 307, 308, 309, - 310, -1, 71, -1, 54, 74, 56, 57, 58, 78, - 546, 547, 81, 63, -1, -1, -1, -1, 87, -1, - -1, 71, -1, -1, 74, -1, 95, -1, -1, -1, - -1, -1, 342, 343, -1, -1, -1, 87, -1, -1, - 546, 547, -1, -1, -1, 95, -1, -1, -1, -1, - -1, 546, 547, -1, -1, -1, -1, -1, -1, 546, - 547, -1, -1, -1, -1, -1, 1, -1, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, -1, -1, - 390, -1, -1, 393, 19, -1, -1, 22, 546, 547, - -1, 26, -1, -1, 29, -1, -1, -1, 408, -1, - 1, -1, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, -1, 19, 20, - 21, 22, -1, -1, 434, -1, -1, -1, 29, 30, - 31, 32, 33, 443, -1, 70, -1, 447, -1, 74, - -1, -1, -1, 1, -1, -1, -1, 5, -1, 459, - 85, -1, -1, 88, -1, -1, -1, -1, 93, -1, - -1, -1, -1, 64, -1, -1, -1, -1, 478, 70, - 71, 72, 482, 74, 484, 76, 77, 35, 36, -1, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 93, -1, -1, 505, 54, 55, -1, 57, - 58, -1, 512, -1, 62, -1, 64, 65, 66, 67, - -1, 69, 70, 71, 72, 59, 1, -1, -1, -1, - 5, 79, -1, 81, 82, 83, 70, -1, -1, -1, - 540, 541, -1, -1, 92, 79, 94, 95, -1, 97, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 7, 8, 9, 151, 49, 15, 84, 24, 338, 19, + 200, 102, 1, 20, 613, 24, 525, 5, 714, 7, + 8, 9, 27, 24, 53, 1, 86, 350, 1, 21, + 61, 4, 1, 25, 83, 84, 1, 75, 1, 68, + 84, 4, 86, 81, 125, 741, 127, 1, 129, 5, + 4, 82, 101, 24, 1, 92, 1, 67, 7, 8, + 9, 137, 1, 92, 1, 24, 0, 4, 93, 74, + 1, 0, 60, 24, 62, 63, 64, 93, 3, 4, + 93, 24, 79, 1, 241, 242, 24, 5, 61, 167, + 31, 32, 55, 602, 70, 4, 61, 24, 61, 698, + 699, 26, 701, 95, 93, 1, 75, 61, 168, 72, + 24, 1, 81, 62, 63, 64, 61, 82, 167, 79, + 276, 277, 95, 70, 61, 98, 726, 727, 137, 729, + 137, 70, 288, 79, 97, 142, 5, 293, 68, 70, + 649, 95, 68, 4, 1, 150, 55, 4, 5, 154, + 78, 750, 61, 752, 753, 4, 74, 174, 95, 176, + 85, 178, 92, 72, 4, 174, 92, 176, 79, 178, + 770, 771, 772, 174, 70, 176, 24, 178, 508, 79, + 70, 272, 79, 513, 262, 263, 509, 79, 97, 98, + 0, 200, 79, 516, 55, 5, 245, 7, 8, 9, + 61, 524, 79, 174, 61, 176, 198, 178, 24, 269, + 144, 72, 61, 262, 263, 174, 79, 176, 61, 178, + 30, 61, 95, 174, 79, 176, 304, 178, 376, 217, + 218, 174, 422, 176, 79, 178, 174, 79, 176, 49, + 178, 79, 10, 11, 12, 305, 14, 174, 79, 17, + 60, 178, 62, 63, 64, 304, 586, 54, 97, 98, + 174, 71, 176, 53, 178, 75, 76, 77, 217, 218, + 346, 81, 82, 318, 42, 351, 352, 434, 75, 435, + 1, 92, 439, 4, 97, 442, 93, 444, 85, 445, + 100, 78, 284, 61, 16, 302, 18, 65, 66, 789, + 790, 80, 792, 25, 79, 628, 75, 16, 353, 18, + 355, 318, 319, 320, 302, 125, 25, 127, 16, 129, + 18, 95, 812, 813, 814, 61, 174, 25, 176, 78, + 178, 319, 16, 321, 144, 14, 15, 346, 59, 60, + 79, 350, 351, 352, 79, 352, 338, 79, 355, 70, + 71, 358, 84, 302, 86, 685, 79, 78, 174, 80, + 176, 79, 178, 84, 85, 86, 87, 14, 15, 16, + 319, 92, 79, 37, 693, 694, 381, 382, 383, 424, + 397, 426, 387, 400, 401, 37, 403, 404, 397, 53, + 407, 400, 401, 79, 403, 404, 397, 478, 407, 400, + 401, 53, 403, 404, 68, 465, 407, 217, 218, 79, + 400, 401, 493, 403, 421, 572, 68, 407, 575, 79, + 354, 578, 429, 430, 431, 79, 397, 79, 92, 400, + 401, 761, 403, 404, 16, 423, 407, 425, 397, 16, + 92, 400, 401, 93, 403, 404, 397, 93, 407, 400, + 401, 86, 403, 404, 397, 16, 407, 400, 401, 397, + 403, 404, 400, 401, 407, 403, 404, 16, 75, 407, + 397, 16, 37, 18, 423, 75, 425, 404, 16, 75, + 25, 16, 79, 397, 565, 566, 400, 401, 53, 403, + 404, 1, 302, 407, 16, 16, 24, 84, 85, 86, + 509, 79, 77, 68, 96, 512, 513, 516, 318, 319, + 79, 321, 75, 79, 79, 524, 508, 14, 15, 16, + 530, 513, 16, 76, 531, 79, 16, 92, 84, 85, + 86, 548, 549, 690, 16, 79, 79, 79, 16, 548, + 549, 77, 79, 353, 354, 355, 79, 548, 549, 397, + 79, 16, 400, 401, 16, 403, 404, 491, 5, 407, + 494, 76, 330, 331, 332, 16, 24, 335, 336, 337, + 79, 339, 79, 341, 79, 79, 16, 548, 549, 16, + 409, 397, 30, 783, 400, 401, 47, 403, 404, 548, + 549, 407, 815, 376, 586, 529, 158, 548, 549, 533, + -1, 537, 260, 252, 613, 548, 549, 54, -1, -1, + 548, 549, -1, 423, 424, 425, 426, 64, 625, 628, + 4, 548, 549, 70, 71, 72, 633, 561, 75, -1, + 637, -1, -1, 640, 548, 549, -1, -1, 85, -1, + 23, 24, 25, 26, 27, 28, 174, -1, 176, -1, + 178, -1, 659, 660, 661, -1, 663, -1, -1, -1, + -1, -1, 669, 670, -1, 672, 711, -1, 478, 676, + -1, -1, 679, -1, 681, 59, 60, -1, -1, -1, + 687, 491, -1, 493, 494, -1, 70, 71, -1, 698, + 699, -1, 701, 685, 78, -1, 80, -1, 707, 708, + 548, 549, 709, 87, -1, 639, -1, -1, 92, 697, + 717, -1, -1, -1, -1, -1, 174, 724, 176, 529, + 178, -1, -1, 533, -1, 54, -1, 56, 57, 58, + -1, -1, 548, 549, 63, 742, -1, 744, 745, -1, + -1, 750, 71, 752, 753, 74, 680, 754, 755, -1, + 757, 561, 23, -1, 83, 565, 566, -1, 87, 693, + 694, -1, -1, -1, 773, 774, 95, 776, -1, 761, + -1, -1, 779, -1, 781, -1, -1, -1, 785, -1, + 1, 715, -1, -1, 791, -1, 793, 794, 797, 796, + -1, 798, -1, 800, -1, 804, -1, 806, 807, 808, + 23, 24, 25, 26, 27, 28, -1, -1, -1, 743, + -1, -1, 746, -1, -1, -1, -1, -1, -1, -1, + -1, 92, 93, 94, -1, 96, -1, 98, -1, 639, + -1, 765, -1, 54, 768, 56, 57, 58, 606, -1, + -1, -1, 63, -1, -1, -1, 117, -1, 616, -1, + 71, -1, -1, 74, -1, -1, -1, 78, -1, -1, + 81, 708, -1, -1, 632, -1, 87, -1, -1, 397, + 680, -1, 400, 401, 95, 403, 404, -1, -1, 407, + -1, -1, -1, 693, 694, -1, 59, 697, -1, -1, + 161, 162, -1, -1, -1, -1, 664, 70, -1, -1, + -1, 711, -1, -1, -1, 715, 79, -1, -1, 1, + -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 688, -1, -1, -1, 195, 196, 773, 774, -1, 776, + -1, -1, 700, 743, 702, 703, 746, -1, -1, 397, + -1, -1, 400, 401, -1, 403, 404, -1, -1, 407, + 797, -1, -1, -1, -1, 765, -1, 804, 768, 806, + 807, 808, 54, -1, 56, 57, 58, -1, -1, -1, + -1, 63, -1, -1, -1, -1, -1, 248, -1, 71, + -1, -1, 74, -1, -1, -1, -1, -1, 756, 1, + 758, 759, -1, 5, -1, 87, 267, -1, -1, -1, + -1, -1, -1, 95, 96, 276, 277, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 288, 289, 290, + 548, 549, 293, 35, 36, -1, 38, 39, 40, 41, + -1, 43, 44, 45, 46, 306, 48, 308, 309, 310, + 311, -1, 54, 55, -1, 57, 58, -1, -1, -1, + 62, -1, 64, -1, -1, 67, -1, 69, 70, 71, + 72, 1, -1, -1, -1, 5, -1, -1, -1, 81, + 82, 83, 343, 344, -1, -1, -1, -1, -1, -1, + -1, -1, 94, 95, -1, 97, -1, -1, -1, -1, + 548, 549, -1, -1, -1, 35, 36, -1, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 1, -1, -1, -1, 54, 55, -1, 57, 58, -1, + 391, -1, 62, 394, 64, 65, 66, 67, -1, 69, + 70, 71, 72, -1, -1, -1, -1, -1, 409, 79, + -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, + -1, -1, 92, -1, 94, 95, -1, 97, -1, -1, + -1, -1, -1, 54, 435, 56, 57, 58, -1, -1, + -1, -1, 63, -1, 445, -1, -1, -1, 449, -1, + 71, -1, -1, 74, 1, -1, -1, 78, 5, -1, + 461, -1, -1, -1, -1, -1, 87, -1, -1, -1, + -1, -1, -1, -1, 95, -1, -1, -1, -1, 480, + -1, -1, -1, 484, -1, 486, -1, -1, 35, 36, + -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, -1, -1, -1, 507, 54, 55, -1, + 57, 58, -1, 514, -1, 62, -1, 64, -1, -1, + 67, -1, 69, 70, 71, 72, 1, -1, -1, -1, + 5, 78, -1, -1, 81, 82, 83, -1, -1, -1, + -1, 542, 543, -1, -1, 92, -1, 94, 95, -1, + 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, -1, -1, -1, 54, - 55, -1, 57, 58, -1, -1, -1, 62, 588, 64, - -1, -1, 67, -1, 69, 70, 71, 72, 1, -1, - -1, -1, 5, 78, -1, -1, 81, 82, 83, -1, - -1, -1, -1, -1, -1, -1, -1, 92, -1, 94, - 95, 621, 97, -1, -1, -1, -1, -1, -1, -1, + 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, + 591, -1, 67, -1, 69, 70, 71, 72, 1, -1, + -1, -1, 5, -1, 79, -1, 81, 82, 83, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 93, 94, + 95, -1, 97, 624, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, -1, 69, 70, 71, 72, 1, -1, -1, -1, 5, -1, 79, -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 93, 94, 95, -1, 97, -1, -1, -1, -1, -1, + -1, 94, 95, -1, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, @@ -1935,314 +1937,309 @@ static const yytype_int16 yycheck[] = 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, 95, -1, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, + 41, -1, 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, -1, 69, 70, - 71, 72, 1, -1, -1, -1, 5, -1, 79, -1, + 71, 72, 1, -1, -1, -1, 5, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 94, 95, -1, 97, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, + -1, -1, -1, 94, 95, 4, 97, -1, -1, -1, + -1, -1, 1, -1, -1, -1, 35, 36, -1, 38, 39, 40, 41, -1, 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, -1, - 69, 70, 71, 72, 1, -1, -1, -1, 5, -1, - -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 94, 95, -1, 97, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, - -1, 38, 39, 40, 41, -1, 43, 44, 45, 46, - -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, - 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, - 67, -1, 69, 70, 71, 72, 1, -1, -1, -1, - 5, -1, -1, -1, 81, 82, 83, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 94, 95, -1, - 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 35, 36, -1, 38, 39, 40, 41, -1, 43, 44, - 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, - 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, - -1, -1, 67, -1, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, - 95, -1, 97, 0, 1, -1, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 59, 60, -1, - 17, -1, 19, 20, 21, 22, -1, -1, 70, 26, - -1, -1, 29, 30, -1, -1, 33, 79, -1, -1, - -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, - 92, -1, -1, 50, 51, 52, -1, -1, -1, -1, - -1, 1, -1, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 70, 14, 15, 16, 74, 18, 19, - -1, -1, 22, -1, -1, 25, 26, -1, 85, 29, - -1, 88, -1, -1, -1, 1, 93, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, -1, 19, 20, -1, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, - 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, - 5, -1, -1, -1, -1, 85, -1, -1, 88, -1, - -1, -1, -1, 93, -1, -1, -1, -1, 64, -1, - -1, -1, -1, -1, 70, 71, 72, -1, 74, -1, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, -1, -1, 93, 53, 54, + 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, + 59, 60, 81, 82, 83, 54, -1, 56, 57, 58, + -1, 70, 71, -1, 63, 94, 95, -1, 97, 78, + -1, 80, 71, -1, -1, 74, 75, -1, 87, 88, + 89, 90, 91, 92, -1, -1, -1, -1, 87, -1, + -1, -1, -1, -1, 0, 1, 95, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 59, 60, + -1, 17, -1, 19, 20, 21, 22, -1, -1, 70, + 26, -1, -1, 29, 30, -1, -1, 33, 79, -1, + -1, -1, -1, 84, 85, 86, 87, 88, 89, 90, + 91, 92, -1, -1, 50, 51, 52, -1, -1, -1, + -1, -1, 1, -1, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 70, 14, 15, 16, 74, 18, + 19, -1, -1, 22, -1, -1, 25, 26, -1, 85, + 29, -1, 88, -1, -1, -1, 1, 93, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, -1, 19, 20, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, + -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, + -1, 5, -1, -1, -1, -1, 85, -1, -1, 88, + -1, -1, -1, -1, 93, -1, -1, -1, -1, 64, + -1, -1, -1, -1, -1, 70, 71, 72, -1, 74, + -1, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, -1, -1, 93, 53, + 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, + 64, -1, -1, 67, 68, 69, 70, 71, 72, 5, + -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, + -1, -1, -1, -1, -1, -1, -1, -1, 92, -1, + 94, 95, -1, 97, -1, -1, -1, -1, -1, 35, + 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, + 46, -1, 48, -1, -1, -1, -1, 53, 54, 55, + -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, + -1, 67, 68, 69, 70, 71, 72, 5, -1, -1, + -1, -1, -1, 79, -1, 81, 82, 83, -1, -1, + -1, -1, -1, -1, -1, -1, 92, -1, 94, 95, + -1, 97, -1, -1, -1, -1, -1, 35, 36, -1, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, -1, -1, -1, -1, 54, 55, -1, 57, + 58, -1, -1, -1, 62, -1, 64, 65, -1, 67, + 5, 69, 70, 71, 72, -1, -1, -1, -1, -1, + -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 94, 95, -1, 97, + 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, + 45, 46, -1, 48, -1, -1, -1, -1, 53, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, 68, 69, 70, 71, 72, 5, -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, 92, -1, 94, 95, -1, 97, -1, -1, -1, -1, -1, 35, 36, - 37, 38, 39, 40, 41, -1, 43, 44, 45, 46, - -1, 48, -1, -1, -1, -1, 53, 54, 55, -1, + -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, - 67, 68, 69, 70, 71, 72, 5, -1, -1, -1, + 67, -1, 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, 79, -1, 81, 82, 83, -1, -1, -1, - -1, -1, -1, -1, -1, 92, -1, 94, 95, -1, - 97, -1, -1, -1, -1, -1, 35, 36, -1, 38, + -1, -1, -1, -1, -1, -1, -1, 94, 95, 1, + 97, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15, 16, 17, -1, 19, 20, 21, + 22, -1, -1, -1, -1, -1, -1, 29, 30, 31, + 32, 33, -1, 1, -1, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, -1, 5, -1, -1, -1, + -1, 19, -1, -1, 22, -1, -1, -1, 26, -1, + -1, 29, 64, -1, -1, -1, -1, -1, 70, 71, + 72, -1, 74, -1, 76, 77, 35, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, -1, -1, -1, -1, 54, 55, -1, 57, 58, - -1, -1, -1, 62, -1, 64, 65, -1, 67, 5, - 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, - -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, + 49, 93, -1, -1, -1, 54, 55, -1, 57, 58, + -1, -1, 70, 62, -1, 64, 74, -1, 67, 5, + 69, 70, 71, 72, -1, -1, -1, 85, -1, -1, + 88, -1, 81, 82, 83, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, 95, -1, 97, 35, - 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, - 46, -1, 48, -1, -1, -1, -1, 53, 54, 55, + 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, + 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, 68, 69, 70, 71, 72, 5, -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, 92, -1, 94, 95, -1, 97, -1, -1, -1, -1, -1, 35, 36, -1, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, -1, -1, -1, -1, 54, 55, -1, 57, + 38, 39, 40, 41, -1, 43, 44, 45, 46, -1, + 48, -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, - 5, 69, 70, 71, 72, -1, -1, -1, -1, -1, - -1, 79, -1, 81, 82, 83, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 94, 95, -1, 97, - 35, 36, -1, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, -1, -1, -1, -1, 54, - 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, - -1, -1, 67, 5, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, - 95, -1, 97, 35, 36, -1, 38, 39, 40, 41, - 42, 43, 44, 45, 46, -1, 48, -1, -1, -1, - -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, - 62, -1, 64, -1, -1, 67, 68, 69, 70, 71, - 72, 5, -1, -1, -1, -1, -1, -1, -1, 81, - 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, - 92, -1, 94, 95, -1, 97, -1, -1, -1, -1, - -1, 35, 36, -1, 38, 39, 40, 41, -1, 43, + 68, 69, 70, 71, 72, -1, -1, -1, -1, -1, + -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, + -1, -1, -1, -1, 92, 1, 94, 95, 1, 97, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, 21, 22, + -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, + 33, 1, -1, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 59, 60, 25, 26, -1, -1, 29, + 30, 64, -1, 33, 70, -1, -1, 70, 71, 72, + -1, 74, 78, 79, -1, -1, -1, -1, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, -1, -1, + 93, 5, -1, -1, -1, -1, -1, -1, -1, -1, + 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, + -1, 35, 36, 93, 38, 39, 40, 41, 42, 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, - 64, -1, -1, 67, 68, 69, 70, 71, 72, -1, + 64, -1, -1, -1, 68, 5, 70, 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, - -1, -1, -1, -1, -1, -1, -1, -1, 92, 1, - 94, 95, 1, 97, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, -1, - 19, 20, 21, 22, -1, -1, -1, -1, -1, -1, - 29, 30, 31, 32, 33, 1, -1, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 59, 60, 25, - 26, -1, -1, 29, 30, 64, -1, 33, 70, -1, - -1, 70, 71, 72, -1, 74, 78, 79, -1, -1, - -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, - 92, -1, -1, -1, 93, 5, -1, -1, -1, -1, - -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, - -1, -1, 88, -1, -1, 35, 36, 93, 38, 39, - 40, 41, 42, 43, 44, 45, 46, -1, 48, -1, - -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, - -1, -1, 62, -1, 64, -1, -1, -1, 68, 5, - 70, 71, 72, -1, -1, -1, -1, -1, -1, -1, - -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, - -1, -1, 92, -1, 94, 95, -1, 97, -1, 35, - 36, -1, 38, 39, 40, 41, -1, 43, 44, 45, - 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, - -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, - -1, 67, 5, 69, 70, 71, 72, -1, 74, -1, - -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 94, 95, - -1, 97, 35, 36, -1, 38, 39, 40, 41, -1, - 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, - -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, - -1, 64, -1, -1, 67, 5, 69, 70, 71, 72, - -1, -1, -1, -1, -1, -1, -1, -1, 81, 82, - 83, -1, -1, -1, -1, -1, -1, -1, -1, 92, - -1, 94, 95, -1, 97, 35, 36, -1, 38, 39, + -1, -1, -1, -1, -1, -1, -1, -1, 92, -1, + 94, 95, -1, 97, -1, 35, 36, -1, 38, 39, 40, 41, -1, 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, 67, 5, 69, - 70, 71, 72, -1, -1, -1, -1, -1, -1, -1, + 70, 71, 72, -1, 74, -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, -1, - -1, -1, 92, -1, 94, 95, -1, 97, 35, 36, - -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, + -1, -1, -1, -1, 94, 95, -1, 97, 35, 36, + -1, 38, 39, 40, 41, -1, 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, -1, - 57, 58, -1, 1, -1, 62, 4, 64, -1, -1, - 67, -1, 69, 70, 71, 72, -1, -1, -1, -1, + 57, 58, -1, -1, -1, 62, -1, 64, -1, -1, + 67, 5, 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 94, 95, 1, - 97, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, -1, 17, -1, 19, 20, 21, - 22, 59, 60, -1, -1, -1, -1, 29, 30, 31, - 32, 33, 70, 71, -1, -1, -1, -1, -1, -1, - 78, -1, 80, 5, -1, -1, 84, 85, 86, 87, - -1, -1, -1, -1, 92, -1, -1, -1, -1, -1, - -1, -1, 64, -1, -1, -1, -1, -1, 70, 71, - 72, -1, 74, 35, 36, -1, 38, 39, 40, 41, - -1, 43, 44, 45, 46, -1, 48, -1, -1, -1, - -1, 93, 54, 55, -1, 57, 58, -1, -1, -1, - 62, -1, 64, -1, -1, 67, -1, 69, 70, 71, - 72, -1, -1, -1, -1, -1, -1, 79, -1, 81, - 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 94, 95, 1, 97, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, -1, - 17, -1, 19, 20, 21, 22, -1, -1, -1, -1, - -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, - 1, -1, 3, 4, 5, 6, 7, 8, 9, 10, + -1, -1, -1, -1, -1, 92, -1, 94, 95, -1, + 97, 35, 36, -1, 38, 39, 40, 41, -1, 43, + 44, 45, 46, -1, 48, -1, -1, -1, -1, -1, + 54, 55, -1, 57, 58, -1, -1, -1, 62, -1, + 64, -1, -1, 67, 5, 69, 70, 71, 72, -1, + -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, + -1, -1, -1, -1, -1, -1, -1, -1, 92, -1, + 94, 95, -1, 97, 35, 36, -1, 38, 39, 40, + 41, 42, 43, 44, 45, 46, -1, 48, -1, -1, + -1, -1, -1, 54, 55, -1, 57, 58, -1, 1, + -1, 62, 4, 64, -1, -1, 67, -1, 69, 70, + 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, + 81, 82, 83, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 94, 95, 1, 97, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + -1, 17, -1, 19, 20, 21, 22, 59, 60, -1, + -1, -1, -1, 29, 30, 31, 32, 33, 70, 71, + -1, -1, -1, -1, -1, -1, 78, -1, 80, 5, + -1, -1, 84, 85, 86, 87, -1, -1, -1, -1, + 92, -1, -1, -1, -1, -1, -1, -1, 64, -1, + -1, -1, -1, -1, 70, 71, 72, -1, 74, 35, + 36, -1, 38, 39, 40, 41, -1, 43, 44, 45, + 46, -1, 48, -1, -1, -1, -1, 93, 54, 55, + -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, + -1, 67, -1, 69, 70, 71, 72, -1, -1, -1, + -1, -1, -1, 79, -1, 81, 82, 83, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 94, 95, + 1, 97, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, -1, 17, -1, 19, 20, - 21, 22, -1, -1, -1, -1, -1, 64, 29, 30, - 31, 32, 33, 70, 71, 72, -1, 74, -1, -1, + 21, 22, -1, -1, -1, -1, -1, -1, 29, 30, + 31, 32, 33, -1, -1, -1, 1, -1, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, -1, 17, -1, 19, 20, 21, 22, -1, -1, + -1, -1, -1, 64, 29, 30, 31, 32, 33, 70, + 71, 72, -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 93, -1, -1, -1, - -1, -1, -1, 64, -1, -1, -1, -1, -1, 70, - 71, 72, -1, 74, -1, 1, -1, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 93, 19, 20, 21, 22, -1, -1, -1, - 26, -1, -1, 29, 30, -1, -1, 33, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 5, -1, 16, 17, 18, 19, 20, 21, 22, -1, - -1, 25, 26, -1, 70, 29, 30, -1, 74, 33, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, - 35, 36, 88, 38, 39, 40, 41, 93, 43, 44, - 45, 46, -1, 48, -1, -1, -1, -1, -1, 54, - 55, -1, 57, 58, -1, -1, 70, 62, -1, 64, - 74, -1, 67, -1, 69, 70, 71, 72, -1, -1, - -1, 85, -1, -1, 88, -1, 81, 82, 83, 93, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, - 95, 1, 97, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, -1, 19, + -1, -1, 93, -1, -1, -1, -1, -1, -1, 64, + -1, -1, -1, -1, -1, 70, 71, 72, -1, 74, + -1, 1, -1, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 93, 19, 20, 21, 22, -1, -1, -1, 26, -1, -1, 29, - 30, -1, 1, 33, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, -1, - 19, 20, 21, 22, -1, -1, -1, 26, -1, -1, - 29, 30, -1, -1, 33, -1, -1, -1, -1, -1, - 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, - -1, -1, -1, 93, -1, -1, -1, -1, -1, -1, - -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 85, -1, 1, 88, - -1, 4, -1, 1, 93, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - -1, 19, 20, 21, 22, -1, -1, -1, 26, -1, - -1, 29, 30, -1, 1, 33, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, -1, - 17, -1, 19, 20, -1, 22, 59, 60, -1, -1, - -1, -1, 29, 30, 31, 32, 33, 70, 71, -1, - -1, -1, 70, -1, -1, 78, 74, 80, -1, -1, - -1, 84, 85, 86, 87, -1, -1, 85, -1, 92, - 88, -1, -1, -1, -1, 93, -1, 64, -1, -1, - -1, -1, -1, 70, 71, 72, -1, 74, -1, 1, - -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, -1, -1, 16, 17, 93, 19, 20, 21, - 22, -1, -1, -1, 26, -1, -1, 29, 30, 31, - 32, 33, 1, -1, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, -1, - 19, 20, 21, 22, -1, -1, -1, 26, -1, -1, - 29, 30, -1, -1, 33, -1, -1, -1, 70, -1, + 30, -1, -1, 33, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1, -1, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 5, -1, 16, 17, + 18, 19, 20, 21, 22, -1, -1, 25, 26, -1, + 70, 29, 30, -1, 74, 33, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 85, 35, 36, 88, 38, + 39, 40, 41, 93, 43, 44, 45, 46, -1, 48, + -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, + -1, -1, 70, 62, -1, 64, 74, -1, 67, -1, + 69, 70, 71, 72, -1, -1, -1, 85, -1, -1, + 88, -1, 81, 82, 83, 93, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 94, 95, 1, 97, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17, -1, 19, 20, 21, 22, -1, + -1, -1, 26, -1, -1, 29, 30, -1, 1, 33, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, 21, 22, + -1, -1, -1, 26, -1, -1, 29, 30, -1, 54, + 33, 56, 57, 58, -1, -1, 70, -1, 63, -1, + 74, -1, -1, -1, -1, -1, 71, -1, -1, 74, + -1, 85, -1, -1, 88, -1, -1, -1, -1, 93, + -1, -1, 87, -1, -1, -1, -1, 70, -1, -1, + 95, 74, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 85, -1, -1, 88, -1, -1, -1, 1, + 93, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15, 16, 17, -1, 19, 20, 21, + 22, -1, -1, -1, 26, -1, -1, 29, 30, -1, + 1, 33, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13, 14, 15, -1, 17, -1, 19, 20, + -1, 22, -1, -1, -1, -1, -1, -1, 29, 30, + 31, 32, 33, -1, -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, -1, -1, - -1, 93, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 85, -1, -1, 88, - -1, -1, -1, 1, 93, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - -1, 19, 20, 21, 22, -1, -1, -1, 26, -1, - -1, 29, 30, -1, 1, 33, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, -1, -1, 16, - 17, -1, 19, 20, 21, 22, -1, -1, -1, 26, - -1, -1, 29, 30, -1, -1, 33, -1, -1, -1, - -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, - 88, -1, -1, -1, -1, 93, -1, -1, -1, -1, - -1, -1, -1, 70, -1, -1, -1, 74, -1, 76, - 77, -1, -1, -1, -1, -1, -1, -1, 85, -1, - -1, 88, -1, -1, -1, 1, 93, 3, 4, 5, + -1, 93, -1, 64, -1, -1, -1, -1, -1, 70, + 71, 72, -1, 74, -1, 1, -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1, -1, - 16, 17, -1, 19, 20, 21, 22, -1, -1, -1, + 16, 17, 93, 19, 20, 21, 22, -1, -1, -1, 26, -1, -1, 29, 30, 31, 32, 33, 1, -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, -1, -1, 16, 17, -1, 19, 20, 21, 22, - -1, -1, -1, 26, -1, -1, 29, 30, 31, 32, + 13, 14, 15, 16, 17, -1, 19, 20, 21, 22, + -1, -1, -1, 26, -1, -1, 29, 30, -1, -1, 33, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, - -1, -1, 88, 5, -1, -1, -1, 93, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 70, -1, -1, - -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 85, 35, 36, 88, 38, 39, 40, 41, - 93, 43, 44, 45, 46, -1, 48, -1, -1, -1, - -1, -1, 54, 55, -1, 57, 58, -1, -1, -1, - 62, -1, 64, -1, -1, -1, 5, -1, 70, 71, - 72, -1, -1, -1, -1, -1, -1, -1, -1, 81, - 82, 83, -1, -1, -1, -1, -1, -1, -1, -1, - 92, -1, 94, 95, -1, 97, 35, 36, -1, 38, - 39, 40, 41, -1, 43, 44, 45, 46, -1, 48, - -1, -1, -1, -1, -1, 54, 55, -1, 57, 58, - -1, -1, -1, 62, -1, 64, -1, -1, -1, -1, - -1, 70, 71, 72, -1, -1, -1, -1, -1, -1, - -1, -1, 81, 82, 83, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 94, 95, 1, 97, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - -1, -1, 16, 17, -1, 19, 20, 21, 22, -1, - -1, -1, 26, -1, -1, 29, 30, -1, 1, 33, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, -1, -1, 16, 17, -1, 19, 20, 21, 22, - -1, -1, -1, 26, -1, -1, 29, 30, -1, -1, - 33, -1, -1, -1, -1, -1, 70, -1, -1, -1, - 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 85, -1, -1, 88, -1, -1, -1, -1, 93, + -1, -1, 88, -1, -1, -1, -1, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, -1, -1, 1, 93, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, -1, -1, 16, 17, -1, 19, 20, 21, + 12, 13, 14, 15, 16, 17, -1, 19, 20, 21, 22, -1, -1, -1, 26, -1, -1, 29, 30, -1, 1, 33, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1, -1, 16, 17, -1, 19, 20, 21, 22, -1, -1, -1, 26, -1, -1, 29, 30, -1, -1, 33, -1, -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1, 85, -1, 4, 88, -1, -1, -1, + -1, -1, -1, 85, -1, -1, 88, -1, -1, -1, -1, 93, -1, -1, -1, -1, -1, -1, -1, 70, - -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 74, -1, 76, 77, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, -1, -1, 1, 93, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, -1, 14, 15, 16, -1, -1, 19, - 59, 60, 22, -1, -1, -1, 26, -1, -1, 29, - -1, 70, 71, -1, -1, -1, -1, -1, -1, 78, - 79, 80, -1, -1, -1, 84, -1, 86, 87, -1, - -1, -1, -1, 92, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 10, 11, 12, 13, -1, -1, 16, 17, -1, 19, + 20, 21, 22, -1, -1, -1, 26, -1, -1, 29, + 30, 31, 32, 33, 1, -1, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, -1, -1, 16, + 17, -1, 19, 20, 21, 22, -1, -1, -1, 26, + -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, - -1, -1, -1, 93, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, -1, 17, -1, - 19, 20, 21, 22, -1, -1, -1, -1, -1, -1, - 29, 30, 31, 32, 33, -1, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, -1, -1, -1, + -1, -1, -1, -1, -1, 85, -1, -1, 88, 5, + -1, -1, -1, 93, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 85, 35, + 36, 88, 38, 39, 40, 41, 93, 43, 44, 45, + 46, -1, 48, -1, -1, -1, -1, -1, 54, 55, + -1, 57, 58, -1, -1, -1, 62, -1, 64, -1, + -1, -1, 5, -1, 70, 71, 72, -1, -1, -1, + -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, + -1, -1, -1, -1, -1, -1, 92, -1, 94, 95, + -1, 97, 35, 36, -1, 38, 39, 40, 41, -1, + 43, 44, 45, 46, -1, 48, -1, -1, -1, -1, + -1, 54, 55, -1, 57, 58, -1, -1, -1, 62, + -1, 64, -1, -1, -1, -1, -1, 70, 71, 72, + -1, -1, -1, -1, -1, -1, -1, -1, 81, 82, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 94, 95, 1, 97, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, -1, -1, 16, 17, + -1, 19, 20, 21, 22, -1, -1, -1, 26, -1, + -1, 29, 30, -1, 1, 33, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, -1, -1, 16, 17, -1, 19, 20, 21, 22, -1, -1, -1, 26, - -1, -1, 29, 30, -1, 64, 33, -1, -1, -1, - -1, 70, 71, 72, -1, 74, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, 19, -1, 93, 22, -1, -1, -1, 26, - -1, -1, 29, 70, -1, -1, -1, 74, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, - -1, 88, -1, -1, -1, -1, 93, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 29, 30, -1, -1, 33, -1, -1, -1, + -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, + 88, -1, -1, -1, -1, 93, -1, -1, -1, -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, - -1, 88, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, 14, 15, -1, 17, -1, 19, 20, - -1, 22, -1, -1, -1, -1, -1, -1, 29, 30, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, + -1, 88, -1, -1, -1, 1, 93, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, -1, -1, + 16, 17, -1, 19, 20, 21, 22, -1, -1, -1, + 26, -1, -1, 29, 30, -1, 1, 33, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, -1, + -1, 16, 17, -1, 19, 20, 21, 22, -1, -1, + -1, 26, -1, -1, 29, 30, -1, -1, 33, -1, + -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1, 85, + -1, 4, 88, -1, -1, -1, -1, 93, -1, -1, + -1, -1, -1, -1, -1, 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 85, -1, -1, 88, -1, -1, -1, 1, 93, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, -1, + 14, 15, 16, -1, -1, 19, 59, 60, 22, -1, + -1, -1, 26, -1, -1, 29, -1, 70, 71, -1, + -1, -1, -1, -1, -1, 78, 79, 80, -1, -1, + -1, 84, -1, 86, 87, -1, -1, -1, -1, 92, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 64, -1, -1, -1, -1, -1, 70, - 71, 72, -1, 74 + -1, -1, -1, -1, -1, -1, 70, -1, -1, -1, + 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 85, -1, -1, 88, -1, -1, -1, -1, 93, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, -1, 17, -1, 19, 20, 21, 22, + -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, + 33, -1, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13, -1, -1, -1, 17, -1, 19, 20, + 21, 22, -1, -1, -1, 26, -1, -1, 29, 30, + -1, 64, 33, -1, -1, -1, -1, 70, 71, 72, + -1, 74, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, -1, -1, -1, -1, -1, -1, 19, -1, + 93, 22, -1, -1, -1, 26, -1, -1, 29, 70, + -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 85, -1, -1, 88, -1, -1, + -1, -1, 93, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 70, + -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 85, -1, -1, 88, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, -1, 17, -1, 19, 20, -1, 22, -1, -1, + -1, -1, -1, -1, 29, 30, 31, 32, 33, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, + -1, -1, -1, -1, -1, 70, 71, 72, -1, 74 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -2254,83 +2251,83 @@ static const yytype_uint8 yystos[] = 30, 33, 50, 51, 52, 70, 74, 85, 88, 100, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 130, 133, 134, 135, 136, 137, 138, - 141, 142, 144, 159, 160, 177, 202, 93, 1, 1, + 141, 142, 144, 159, 160, 178, 203, 93, 1, 1, 6, 7, 8, 9, 10, 11, 12, 29, 93, 134, - 139, 212, 5, 35, 36, 38, 39, 40, 41, 42, + 139, 213, 5, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 54, 55, 57, 58, 62, 64, 67, 69, 71, 72, 81, 82, 83, 94, 95, 97, 164, 165, 166, 167, 168, 169, 170, - 177, 178, 179, 180, 181, 182, 183, 184, 195, 203, - 213, 214, 215, 222, 139, 212, 139, 212, 139, 212, - 1, 182, 182, 182, 1, 182, 1, 79, 181, 1, - 182, 1, 79, 181, 212, 183, 200, 4, 59, 60, - 70, 71, 78, 80, 87, 92, 204, 205, 206, 211, - 42, 68, 92, 103, 195, 5, 42, 46, 48, 54, + 178, 179, 180, 181, 182, 183, 184, 185, 196, 204, + 214, 215, 216, 223, 139, 213, 139, 213, 139, 213, + 1, 183, 183, 183, 1, 183, 1, 79, 182, 1, + 183, 1, 79, 182, 213, 184, 201, 4, 59, 60, + 70, 71, 78, 80, 87, 92, 205, 206, 207, 212, + 42, 68, 92, 103, 196, 5, 42, 46, 48, 54, 55, 57, 58, 62, 68, 81, 82, 83, 92, 107, - 164, 165, 166, 167, 168, 169, 170, 180, 189, 203, - 213, 214, 215, 222, 1, 65, 66, 79, 92, 183, - 5, 1, 204, 0, 114, 182, 93, 137, 135, 1, - 5, 74, 93, 182, 182, 182, 181, 14, 15, 16, - 140, 1, 113, 128, 1, 4, 5, 61, 1, 204, - 1, 177, 1, 177, 1, 177, 54, 56, 57, 58, - 63, 71, 74, 87, 95, 171, 92, 185, 1, 61, - 82, 223, 224, 1, 177, 1, 177, 1, 4, 61, - 95, 98, 218, 220, 220, 55, 72, 97, 98, 163, - 216, 217, 218, 221, 221, 199, 198, 1, 195, 195, - 195, 1, 78, 92, 183, 1, 195, 197, 68, 92, - 195, 201, 196, 1, 177, 1, 95, 218, 1, 97, - 216, 79, 42, 47, 49, 65, 195, 37, 53, 68, - 92, 1, 128, 1, 128, 1, 128, 79, 79, 79, - 79, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, 17, 19, 20, 22, 29, 30, - 31, 32, 33, 74, 155, 156, 157, 162, 180, 212, - 225, 79, 79, 212, 79, 1, 113, 79, 1, 204, - 1, 59, 70, 78, 79, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 207, 208, 209, 210, 211, 204, - 84, 86, 87, 88, 89, 90, 91, 205, 68, 92, - 104, 195, 195, 101, 68, 92, 108, 220, 221, 193, - 192, 189, 191, 92, 189, 194, 190, 189, 102, 195, - 195, 183, 79, 5, 54, 75, 161, 180, 202, 85, - 79, 5, 79, 79, 79, 79, 139, 139, 14, 15, - 16, 129, 85, 174, 173, 1, 78, 171, 175, 1, - 75, 171, 176, 172, 1, 95, 218, 186, 195, 1, - 61, 82, 224, 4, 61, 219, 219, 220, 220, 74, - 195, 221, 97, 98, 216, 201, 201, 183, 78, 201, - 195, 195, 201, 95, 97, 139, 212, 92, 187, 220, - 221, 195, 92, 195, 92, 195, 195, 195, 135, 212, - 139, 212, 212, 134, 1, 182, 182, 182, 182, 182, - 182, 1, 200, 182, 182, 195, 195, 93, 155, 1, - 16, 21, 33, 145, 146, 147, 149, 153, 154, 155, - 155, 155, 212, 135, 1, 113, 135, 212, 31, 32, - 143, 212, 79, 78, 207, 80, 204, 204, 204, 204, - 106, 105, 195, 42, 111, 195, 110, 109, 189, 194, - 194, 194, 189, 194, 111, 79, 79, 79, 75, 212, - 54, 75, 202, 212, 212, 212, 171, 201, 1, 78, - 81, 171, 1, 96, 171, 75, 81, 201, 95, 195, - 4, 61, 1, 195, 221, 78, 1, 128, 188, 195, - 195, 195, 16, 1, 113, 1, 128, 1, 113, 123, - 16, 18, 25, 127, 79, 79, 79, 79, 79, 79, - 79, 79, 79, 195, 200, 1, 145, 212, 200, 212, - 79, 195, 16, 145, 93, 93, 1, 145, 16, 127, - 16, 16, 1, 113, 79, 181, 212, 16, 1, 113, - 210, 195, 195, 189, 189, 1, 113, 75, 75, 128, - 128, 171, 171, 171, 200, 195, 16, 14, 15, 124, - 16, 127, 182, 154, 182, 75, 16, 79, 1, 79, - 212, 1, 145, 16, 182, 212, 16, 212, 79, 1, - 113, 212, 77, 131, 16, 127, 1, 96, 75, 212, - 212, 212, 212, 182, 79, 23, 24, 25, 26, 27, - 28, 158, 79, 212, 212, 212, 16, 212, 79, 212, - 1, 113, 212, 200, 76, 132, 212, 182, 171, 123, - 123, 79, 134, 154, 154, 182, 154, 182, 182, 16, - 145, 152, 1, 152, 212, 135, 143, 1, 113, 79, - 212, 16, 79, 212, 16, 158, 158, 79, 158, 79, - 79, 23, 24, 25, 26, 27, 28, 148, 77, 150, - 16, 143, 212, 113, 212, 212, 113, 154, 154, 154, - 212, 212, 182, 212, 182, 182, 16, 200, 76, 151, - 113, 113, 16, 158, 158, 158, 152, 152, 79, 152, - 79, 79, 212, 79, 212, 16, 131, 16, 212, 148, - 148, 212, 148, 212, 212, 212, 152, 212, 212, 152, - 152, 152, 152, 148, 148, 148, 150 + 164, 165, 166, 167, 168, 169, 170, 181, 190, 204, + 214, 215, 216, 223, 1, 65, 66, 79, 92, 184, + 5, 1, 205, 0, 114, 183, 93, 137, 135, 1, + 5, 74, 93, 183, 183, 183, 182, 14, 15, 16, + 140, 1, 113, 128, 1, 4, 5, 61, 1, 205, + 1, 178, 1, 178, 1, 178, 54, 56, 57, 58, + 63, 71, 74, 83, 87, 95, 172, 92, 186, 1, + 61, 82, 224, 225, 1, 178, 1, 178, 1, 4, + 61, 95, 98, 219, 221, 221, 55, 72, 97, 98, + 163, 217, 218, 219, 222, 222, 200, 199, 1, 196, + 196, 196, 1, 78, 92, 184, 1, 196, 198, 68, + 92, 196, 202, 197, 1, 178, 1, 95, 219, 1, + 97, 217, 79, 42, 47, 49, 65, 196, 37, 53, + 68, 92, 1, 128, 1, 128, 1, 128, 79, 79, + 79, 79, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13, 14, 15, 17, 19, 20, 22, 29, + 30, 31, 32, 33, 74, 155, 156, 157, 162, 181, + 213, 226, 79, 79, 213, 79, 1, 113, 79, 1, + 205, 1, 59, 70, 78, 79, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 208, 209, 210, 211, 212, + 205, 84, 86, 87, 88, 89, 90, 91, 206, 68, + 92, 104, 196, 196, 101, 68, 92, 108, 221, 222, + 194, 193, 190, 192, 92, 190, 195, 191, 190, 102, + 196, 196, 184, 79, 5, 54, 75, 161, 181, 203, + 85, 79, 5, 79, 79, 79, 79, 139, 139, 14, + 15, 16, 129, 85, 175, 174, 1, 78, 172, 176, + 1, 75, 172, 177, 171, 173, 1, 95, 219, 187, + 196, 1, 61, 82, 225, 4, 61, 220, 220, 221, + 221, 74, 196, 222, 97, 98, 217, 202, 202, 184, + 78, 202, 196, 196, 202, 95, 97, 139, 213, 92, + 188, 221, 222, 196, 92, 196, 92, 196, 196, 196, + 135, 213, 139, 213, 213, 134, 1, 183, 183, 183, + 183, 183, 183, 1, 201, 183, 183, 196, 196, 93, + 155, 1, 16, 21, 33, 145, 146, 147, 149, 153, + 154, 155, 155, 155, 213, 135, 1, 113, 135, 213, + 31, 32, 143, 213, 79, 78, 208, 80, 205, 205, + 205, 205, 106, 105, 196, 42, 111, 196, 110, 109, + 190, 195, 195, 195, 190, 195, 111, 79, 79, 79, + 75, 213, 54, 75, 203, 213, 213, 213, 172, 202, + 1, 78, 81, 172, 1, 96, 172, 75, 81, 172, + 202, 95, 196, 4, 61, 1, 196, 222, 78, 1, + 128, 189, 196, 196, 196, 16, 1, 113, 1, 128, + 1, 113, 123, 16, 18, 25, 127, 79, 79, 79, + 79, 79, 79, 79, 79, 79, 196, 201, 1, 145, + 213, 201, 213, 79, 196, 16, 145, 93, 93, 1, + 145, 16, 127, 16, 16, 1, 113, 79, 182, 213, + 16, 1, 113, 211, 196, 196, 190, 190, 1, 113, + 75, 75, 128, 128, 172, 172, 172, 201, 196, 16, + 14, 15, 124, 16, 127, 183, 154, 183, 75, 16, + 79, 1, 79, 213, 1, 145, 16, 183, 213, 16, + 213, 79, 1, 113, 213, 77, 131, 16, 127, 1, + 96, 75, 213, 213, 213, 213, 183, 79, 23, 24, + 25, 26, 27, 28, 158, 79, 213, 213, 213, 16, + 213, 79, 213, 1, 113, 213, 201, 76, 132, 213, + 183, 172, 123, 123, 79, 134, 154, 154, 183, 154, + 183, 183, 16, 145, 152, 1, 152, 213, 135, 143, + 1, 113, 79, 213, 16, 79, 213, 16, 158, 158, + 79, 158, 79, 79, 23, 24, 25, 26, 27, 28, + 148, 77, 150, 16, 143, 213, 113, 213, 213, 113, + 154, 154, 154, 213, 213, 183, 213, 183, 183, 16, + 201, 76, 151, 113, 113, 16, 158, 158, 158, 152, + 152, 79, 152, 79, 79, 213, 79, 213, 16, 131, + 16, 213, 148, 148, 213, 148, 213, 213, 213, 152, + 213, 213, 152, 152, 152, 152, 148, 148, 148, 150 }; #define yyerrok (yyerrstatus = 0) @@ -5008,164 +5005,179 @@ yyreduce: /* Line 1806 of yacc.c */ #line 941 "parser.y" - { (yyval.val) = cons(json_s, cons((yyvsp[(2) - (2)].val), nil)); + { (yyval.val) = list(json_s, quote_s, (yyvsp[(2) - (2)].val), nao); end_of_json(scnr); } break; case 221: /* Line 1806 of yacc.c */ -#line 944 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } +#line 943 "parser.y" + { parser->quasi_level++; } break; case 222: /* Line 1806 of yacc.c */ -#line 945 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } +#line 944 "parser.y" + { parser->quasi_level--; + (yyval.val) = list(json_s, sys_qquote_s, (yyvsp[(4) - (4)].val), nao); } break; case 223: /* Line 1806 of yacc.c */ #line 946 "parser.y" - { (yyval.val) = null_string; } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 224: /* Line 1806 of yacc.c */ #line 947 "parser.y" - { (yyval.val) = (yyvsp[(2) - (3)].val); - rl((yyval.val), num(parser->lineno)); } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 225: /* Line 1806 of yacc.c */ -#line 949 "parser.y" - { (yyval.val) = vector(0, nil); } +#line 948 "parser.y" + { (yyval.val) = null_string; } break; case 226: /* Line 1806 of yacc.c */ -#line 950 "parser.y" - { (yyval.val) = (yyvsp[(2) - (3)].val); } +#line 949 "parser.y" + { (yyval.val) = (yyvsp[(2) - (3)].val); + rl((yyval.val), num(parser->lineno)); } break; case 227: /* Line 1806 of yacc.c */ #line 951 "parser.y" - { (yyval.val) = make_hash(nil, nil, t); } + { (yyval.val) = vector(0, nil); } break; case 228: /* Line 1806 of yacc.c */ #line 952 "parser.y" + { (yyval.val) = (yyvsp[(2) - (3)].val); } + break; + + case 229: + +/* Line 1806 of yacc.c */ +#line 953 "parser.y" + { (yyval.val) = make_hash(nil, nil, t); } + break; + + case 230: + +/* Line 1806 of yacc.c */ +#line 954 "parser.y" { (yyval.val) = if3(hashp((yyvsp[(2) - (3)].val)), (yyvsp[(2) - (3)].val), rl(cons(hash_lit_s, cons(nil, (yyvsp[(2) - (3)].val))), (yyvsp[(2) - (3)].val))); } break; - case 229: + case 231: /* Line 1806 of yacc.c */ -#line 956 "parser.y" +#line 958 "parser.y" { parser->quasi_level--; } break; - case 230: + case 232: /* Line 1806 of yacc.c */ -#line 957 "parser.y" +#line 959 "parser.y" { parser->quasi_level++; end_of_json_unquote(scnr); (yyval.val) = rl(rlc(list(sys_unquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; - case 231: + case 233: /* Line 1806 of yacc.c */ -#line 961 "parser.y" +#line 963 "parser.y" { parser->quasi_level--; } break; - case 232: + case 234: /* Line 1806 of yacc.c */ -#line 962 "parser.y" +#line 964 "parser.y" { parser->quasi_level++; end_of_json_unquote(scnr); (yyval.val) = rl(rlc(list(sys_splice_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; - case 233: + case 235: /* Line 1806 of yacc.c */ -#line 966 "parser.y" +#line 968 "parser.y" { parser_circ_def(parser, (yyvsp[(1) - (1)].val), unique_s); } break; - case 234: + case 236: /* Line 1806 of yacc.c */ -#line 967 "parser.y" +#line 969 "parser.y" { parser_circ_def(parser, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); (yyval.val) = (yyvsp[(3) - (3)].val); } break; - case 235: + case 237: /* Line 1806 of yacc.c */ -#line 969 "parser.y" +#line 971 "parser.y" { (yyval.val) = parser_circ_ref(parser, (yyvsp[(1) - (1)].val)); } break; - case 236: + case 238: /* Line 1806 of yacc.c */ -#line 970 "parser.y" +#line 972 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("JSON string")); } break; - case 237: + case 239: /* Line 1806 of yacc.c */ -#line 972 "parser.y" +#line 974 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("JSON array")); } break; - case 238: + case 240: /* Line 1806 of yacc.c */ -#line 974 "parser.y" +#line 976 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("JSON hash")); } break; - case 239: + case 241: /* Line 1806 of yacc.c */ -#line 978 "parser.y" +#line 980 "parser.y" { (yyval.val) = if3(parser->quasi_level > 0 && unquotes_occur((yyvsp[(1) - (1)].val), 0), cons((yyvsp[(1) - (1)].val), nil), vector(one, (yyvsp[(1) - (1)].val))); } break; - case 240: + case 242: /* Line 1806 of yacc.c */ -#line 982 "parser.y" +#line 984 "parser.y" { if (consp((yyvsp[(1) - (3)].val))) { (yyval.val) = cons((yyvsp[(3) - (3)].val), (yyvsp[(1) - (3)].val)); } else if (parser->quasi_level > 0 && @@ -5177,26 +5189,26 @@ yyreduce: (yyval.val) = (yyvsp[(1) - (3)].val); } } break; - case 241: + case 243: /* Line 1806 of yacc.c */ -#line 991 "parser.y" +#line 993 "parser.y" { yyerr("missing comma in JSON array"); (yyval.val) = (yyvsp[(1) - (2)].val); } break; - case 242: + case 244: /* Line 1806 of yacc.c */ -#line 993 "parser.y" +#line 995 "parser.y" { yyerr("bad element in JSON array"); (yyval.val) = (yyvsp[(1) - (2)].val); } break; - case 243: + case 245: /* Line 1806 of yacc.c */ -#line 997 "parser.y" +#line 999 "parser.y" { if (!stringp((yyvsp[(1) - (3)].val))) yyerr("non-string key in JSON hash"); if (parser->quasi_level > 0 && @@ -5208,10 +5220,10 @@ yyreduce: sethash((yyval.val), (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); } } break; - case 244: + case 246: /* Line 1806 of yacc.c */ -#line 1007 "parser.y" +#line 1009 "parser.y" { if (!stringp((yyvsp[(3) - (5)].val))) yyerr("non-string key in JSON hash"); if (consp((yyvsp[(1) - (5)].val))) @@ -5226,38 +5238,38 @@ yyreduce: (yyval.val) = (yyvsp[(1) - (5)].val); } } break; - case 245: + case 247: /* Line 1806 of yacc.c */ -#line 1019 "parser.y" +#line 1021 "parser.y" { yyerr("missing colon in JSON hash"); } break; - case 246: + case 248: /* Line 1806 of yacc.c */ -#line 1021 "parser.y" +#line 1023 "parser.y" { yyerr("missing comma in JSON hash"); } break; - case 247: + case 249: /* Line 1806 of yacc.c */ -#line 1022 "parser.y" +#line 1024 "parser.y" { yyerr("bad element in JSON hash"); } break; - case 248: + case 250: /* Line 1806 of yacc.c */ -#line 1025 "parser.y" +#line 1027 "parser.y" { (yyval.val) = rl((yyvsp[(2) - (3)].val), num((yyvsp[(1) - (3)].lineno))); } break; - case 249: + case 251: /* Line 1806 of yacc.c */ -#line 1026 "parser.y" +#line 1028 "parser.y" { val a = car((yyvsp[(3) - (4)].val)); val ur = uref_helper(parser, a); if (ur == a) @@ -5266,39 +5278,39 @@ yyreduce: (yyval.val) = rlc(cons(ur, cdr((yyvsp[(3) - (4)].val))), ur); } break; - case 250: + case 252: /* Line 1806 of yacc.c */ -#line 1032 "parser.y" +#line 1034 "parser.y" { (yyval.val) = nil; } break; - case 251: + case 253: /* Line 1806 of yacc.c */ -#line 1033 "parser.y" +#line 1035 "parser.y" { (yyval.val) = (yyvsp[(3) - (4)].val); } break; - case 252: + case 254: /* Line 1806 of yacc.c */ -#line 1034 "parser.y" +#line 1036 "parser.y" { (yyval.val) = (yyvsp[(3) - (4)].val); } break; - case 253: + case 255: /* Line 1806 of yacc.c */ -#line 1035 "parser.y" +#line 1037 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("expression")); } break; - case 254: + case 256: /* Line 1806 of yacc.c */ -#line 1039 "parser.y" +#line 1041 "parser.y" { if (consp((yyvsp[(2) - (2)].val))) (yyval.val) = rl(cons(expr_s, cons((yyvsp[(2) - (2)].val), nil)), num((yyvsp[(1) - (2)].lineno))); else @@ -5306,18 +5318,18 @@ yyreduce: num((yyvsp[(1) - (2)].lineno))); } break; - case 255: + case 257: /* Line 1806 of yacc.c */ -#line 1044 "parser.y" +#line 1046 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("meta expression")); } break; - case 256: + case 258: /* Line 1806 of yacc.c */ -#line 1048 "parser.y" +#line 1050 "parser.y" { if (consp((yyvsp[(2) - (2)].val))) (yyval.val) = rl(cons(expr_s, cons((yyvsp[(2) - (2)].val), nil)), num((yyvsp[(1) - (2)].chr))); else @@ -5325,226 +5337,212 @@ yyreduce: num((yyvsp[(1) - (2)].chr))); } break; - case 257: + case 259: /* Line 1806 of yacc.c */ -#line 1053 "parser.y" +#line 1055 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("meta expression")); } break; - case 258: + case 260: /* Line 1806 of yacc.c */ -#line 1057 "parser.y" +#line 1059 "parser.y" { val a = car((yyvsp[(3) - (4)].val)); val ur = uref_helper(parser, a); (yyval.val) = rlcp_tree(cons(dwim_s, cons(ur, cdr((yyvsp[(3) - (4)].val)))), ur); } break; - case 259: + case 261: /* Line 1806 of yacc.c */ -#line 1061 "parser.y" +#line 1063 "parser.y" { (yyval.val) = rl(cons(dwim_s, (yyvsp[(2) - (3)].val)), num((yyvsp[(1) - (3)].lineno))); } break; - case 260: + case 262: /* Line 1806 of yacc.c */ -#line 1062 "parser.y" +#line 1064 "parser.y" { (yyval.val) = rl(cons(dwim_s, nil), num((yyvsp[(1) - (2)].lineno))); } break; - case 261: + case 263: /* Line 1806 of yacc.c */ -#line 1063 "parser.y" +#line 1065 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("DWIM expression")); } break; - case 265: + case 267: /* Line 1806 of yacc.c */ -#line 1072 "parser.y" +#line 1074 "parser.y" { (yyval.val) = rlc(expand_meta((yyvsp[(1) - (1)].val), nil), (yyvsp[(1) - (1)].val)); } break; - case 266: + case 268: /* Line 1806 of yacc.c */ -#line 1075 "parser.y" +#line 1077 "parser.y" { (yyval.val) = (yyvsp[(1) - (1)].val); } break; - case 267: + case 269: /* Line 1806 of yacc.c */ -#line 1076 "parser.y" +#line 1078 "parser.y" { (yyval.val) = nil; } break; - case 268: + case 270: /* Line 1806 of yacc.c */ -#line 1079 "parser.y" +#line 1081 "parser.y" { (yyval.val) = (yyvsp[(1) - (1)].val)->c.cdr; (yyvsp[(1) - (1)].val)->c.cdr = nil; } break; - case 269: + case 271: /* Line 1806 of yacc.c */ -#line 1082 "parser.y" +#line 1084 "parser.y" { (yyval.val) = (yyvsp[(1) - (3)].val)->c.cdr; (yyvsp[(1) - (3)].val)->c.cdr = (yyvsp[(3) - (3)].val); } break; - case 270: + case 272: /* Line 1806 of yacc.c */ -#line 1086 "parser.y" +#line 1088 "parser.y" { (yyval.val) = cons((yyvsp[(1) - (1)].val), nil); rlc((yyval.val), (yyvsp[(1) - (1)].val)); (yyval.val)->c.cdr = (yyval.val); } break; - case 271: + case 273: /* Line 1806 of yacc.c */ -#line 1089 "parser.y" +#line 1091 "parser.y" { parser->ignore = 1; } break; - case 272: + case 274: /* Line 1806 of yacc.c */ -#line 1090 "parser.y" +#line 1092 "parser.y" { parser->ignore = 0; (yyval.val) = cons(nil, nil); (yyval.val)->c.cdr = (yyval.val); } break; - case 273: + case 275: /* Line 1806 of yacc.c */ -#line 1093 "parser.y" +#line 1095 "parser.y" { parser->ignore = 1; } break; - case 274: + case 276: /* Line 1806 of yacc.c */ -#line 1094 "parser.y" +#line 1096 "parser.y" { parser->ignore = 0; (yyval.val) = cons(nil, nil); (yyval.val)->c.cdr = (yyval.val); } break; - case 275: + case 277: /* Line 1806 of yacc.c */ -#line 1097 "parser.y" +#line 1099 "parser.y" { parser->ignore = 1; } break; - case 276: + case 278: /* Line 1806 of yacc.c */ -#line 1098 "parser.y" +#line 1100 "parser.y" { parser->ignore = 0; (yyval.val) = (yyvsp[(1) - (4)].val); } break; - case 277: + case 279: /* Line 1806 of yacc.c */ -#line 1100 "parser.y" +#line 1102 "parser.y" { parser->ignore = 1; } break; - case 278: + case 280: /* Line 1806 of yacc.c */ -#line 1101 "parser.y" +#line 1103 "parser.y" { parser->ignore = 0; (yyval.val) = (yyvsp[(1) - (5)].val); } break; - case 279: + case 281: /* Line 1806 of yacc.c */ -#line 1103 "parser.y" +#line 1105 "parser.y" { uses_or2; (yyval.val) = rlc(cons((yyvsp[(2) - (2)].val), (yyvsp[(1) - (2)].val)->c.cdr), or2((yyvsp[(2) - (2)].val), (yyvsp[(1) - (2)].val)->c.cdr)); (yyvsp[(1) - (2)].val)->c.cdr = (yyval.val); } break; - case 280: + case 282: /* Line 1806 of yacc.c */ -#line 1106 "parser.y" +#line 1108 "parser.y" { (yyval.val) = lastcons(rl((yyvsp[(2) - (2)].val), num((yyvsp[(1) - (2)].lineno)))); (yyval.val)->c.cdr = (yyvsp[(2) - (2)].val); } break; - case 281: + case 283: /* Line 1806 of yacc.c */ -#line 1109 "parser.y" +#line 1111 "parser.y" { (yyval.val) = lastcons(rl((yyvsp[(3) - (3)].val), num((yyvsp[(2) - (3)].lineno)))); (yyval.val)->c.cdr = (yyvsp[(1) - (3)].val)->c.cdr; (yyvsp[(1) - (3)].val)->c.cdr = (yyvsp[(3) - (3)].val); } break; - case 282: + case 284: /* Line 1806 of yacc.c */ -#line 1112 "parser.y" +#line 1114 "parser.y" { (yyval.val) = lastcons(rl((yyvsp[(2) - (2)].val), num((yyvsp[(1) - (2)].lineno)))); (yyval.val)->c.cdr = (yyvsp[(2) - (2)].val); } break; - case 283: + case 285: /* Line 1806 of yacc.c */ -#line 1115 "parser.y" +#line 1117 "parser.y" { (yyval.val) = lastcons(rl((yyvsp[(3) - (3)].val), num((yyvsp[(2) - (3)].lineno)))); (yyval.val)->c.cdr = (yyvsp[(1) - (3)].val)->c.cdr; (yyvsp[(1) - (3)].val)->c.cdr = (yyvsp[(3) - (3)].val); } break; - case 284: + case 286: /* Line 1806 of yacc.c */ -#line 1120 "parser.y" +#line 1122 "parser.y" { (yyval.val) = ifnign(symhlpr((yyvsp[(1) - (1)].lexeme), t)); } break; - case 285: + case 287: /* Line 1806 of yacc.c */ -#line 1121 "parser.y" +#line 1123 "parser.y" { (yyval.val) = cons(var_s, cons((yyvsp[(1) - (1)].val), nil)); rl((yyval.val), num(parser->lineno)); } break; - case 286: - -/* Line 1806 of yacc.c */ -#line 1123 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } - break; - - case 287: - -/* Line 1806 of yacc.c */ -#line 1124 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } - break; - case 288: /* Line 1806 of yacc.c */ @@ -5626,142 +5624,142 @@ yyreduce: /* Line 1806 of yacc.c */ #line 1136 "parser.y" - { (yyval.val) = rl((yyvsp[(2) - (2)].val), num((yyvsp[(1) - (2)].lineno))); } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 300: /* Line 1806 of yacc.c */ #line 1137 "parser.y" - { (yyval.val) = rl(cons(quasilist_s, (yyvsp[(2) - (2)].val)), num((yyvsp[(1) - (2)].lineno))); } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 301: /* Line 1806 of yacc.c */ #line 1138 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } + { (yyval.val) = rl((yyvsp[(2) - (2)].val), num((yyvsp[(1) - (2)].lineno))); } break; case 302: /* Line 1806 of yacc.c */ #line 1139 "parser.y" - { (yyval.val) = rl(rlc(list(quote_s, (yyvsp[(2) - (2)].val), nao), (yyvsp[(2) - (2)].val)), - num(parser->lineno)); } + { (yyval.val) = rl(cons(quasilist_s, (yyvsp[(2) - (2)].val)), num((yyvsp[(1) - (2)].lineno))); } break; case 303: /* Line 1806 of yacc.c */ -#line 1141 "parser.y" - { parser->quasi_level++; } +#line 1140 "parser.y" + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 304: /* Line 1806 of yacc.c */ -#line 1142 "parser.y" - { parser->quasi_level--; - (yyval.val) = rl(rlc(list(sys_qquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), +#line 1141 "parser.y" + { (yyval.val) = rl(rlc(list(quote_s, (yyvsp[(2) - (2)].val), nao), (yyvsp[(2) - (2)].val)), num(parser->lineno)); } break; case 305: /* Line 1806 of yacc.c */ -#line 1145 "parser.y" - { parser->quasi_level--; } +#line 1143 "parser.y" + { parser->quasi_level++; } break; case 306: /* Line 1806 of yacc.c */ -#line 1146 "parser.y" - { parser->quasi_level++; - (yyval.val) = rl(rlc(list(sys_unquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), +#line 1144 "parser.y" + { parser->quasi_level--; + (yyval.val) = rl(rlc(list(sys_qquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; case 307: /* Line 1806 of yacc.c */ -#line 1149 "parser.y" +#line 1147 "parser.y" { parser->quasi_level--; } break; case 308: /* Line 1806 of yacc.c */ -#line 1150 "parser.y" +#line 1148 "parser.y" { parser->quasi_level++; - (yyval.val) = rl(rlc(list(sys_splice_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), + (yyval.val) = rl(rlc(list(sys_unquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; case 309: /* Line 1806 of yacc.c */ -#line 1153 "parser.y" - { parser_circ_def(parser, (yyvsp[(1) - (1)].val), unique_s); } +#line 1151 "parser.y" + { parser->quasi_level--; } break; case 310: /* Line 1806 of yacc.c */ -#line 1154 "parser.y" - { parser_circ_def(parser, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); - (yyval.val) = (yyvsp[(3) - (3)].val); } +#line 1152 "parser.y" + { parser->quasi_level++; + (yyval.val) = rl(rlc(list(sys_splice_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), + num(parser->lineno)); } break; case 311: /* Line 1806 of yacc.c */ -#line 1156 "parser.y" - { (yyval.val) = parser_circ_ref(parser, (yyvsp[(1) - (1)].val)); } +#line 1155 "parser.y" + { parser_circ_def(parser, (yyvsp[(1) - (1)].val), unique_s); } break; case 312: /* Line 1806 of yacc.c */ -#line 1159 "parser.y" - { (yyval.val) = uref_helper(parser, (yyvsp[(2) - (2)].val)); } +#line 1156 "parser.y" + { parser_circ_def(parser, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); + (yyval.val) = (yyvsp[(3) - (3)].val); } break; case 313: /* Line 1806 of yacc.c */ -#line 1160 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } +#line 1158 "parser.y" + { (yyval.val) = parser_circ_ref(parser, (yyvsp[(1) - (1)].val)); } break; case 314: /* Line 1806 of yacc.c */ -#line 1162 "parser.y" - { (yyval.val) = ifnign(symhlpr((yyvsp[(1) - (1)].lexeme), t)); } +#line 1161 "parser.y" + { (yyval.val) = uref_helper(parser, (yyvsp[(2) - (2)].val)); } break; case 315: /* Line 1806 of yacc.c */ -#line 1163 "parser.y" - { (yyval.val) = cons(var_s, cons((yyvsp[(1) - (1)].val), nil)); - rl((yyval.val), num(parser->lineno)); } +#line 1162 "parser.y" + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 316: /* Line 1806 of yacc.c */ -#line 1165 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } +#line 1164 "parser.y" + { (yyval.val) = ifnign(symhlpr((yyvsp[(1) - (1)].lexeme), t)); } break; case 317: /* Line 1806 of yacc.c */ -#line 1166 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } +#line 1165 "parser.y" + { (yyval.val) = cons(var_s, cons((yyvsp[(1) - (1)].val), nil)); + rl((yyval.val), num(parser->lineno)); } break; case 318: @@ -5845,92 +5843,106 @@ yyreduce: /* Line 1806 of yacc.c */ #line 1178 "parser.y" - { (yyval.val) = rl((yyvsp[(2) - (2)].val), num((yyvsp[(1) - (2)].lineno))); } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 330: /* Line 1806 of yacc.c */ #line 1179 "parser.y" - { (yyval.val) = rl(cons(quasilist_s, (yyvsp[(2) - (2)].val)), num((yyvsp[(1) - (2)].lineno))); } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 331: /* Line 1806 of yacc.c */ #line 1180 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } + { (yyval.val) = rl((yyvsp[(2) - (2)].val), num((yyvsp[(1) - (2)].lineno))); } break; case 332: /* Line 1806 of yacc.c */ #line 1181 "parser.y" - { (yyval.val) = rl(rlc(list(quote_s, (yyvsp[(2) - (2)].val), nao), (yyvsp[(2) - (2)].val)), - num(parser->lineno)); } + { (yyval.val) = rl(cons(quasilist_s, (yyvsp[(2) - (2)].val)), num((yyvsp[(1) - (2)].lineno))); } break; case 333: /* Line 1806 of yacc.c */ +#line 1182 "parser.y" + { (yyval.val) = (yyvsp[(1) - (1)].val); } + break; + + case 334: + +/* Line 1806 of yacc.c */ #line 1183 "parser.y" + { (yyval.val) = rl(rlc(list(quote_s, (yyvsp[(2) - (2)].val), nao), (yyvsp[(2) - (2)].val)), + num(parser->lineno)); } + break; + + case 335: + +/* Line 1806 of yacc.c */ +#line 1185 "parser.y" { parser->quasi_level++; } break; - case 334: + case 336: /* Line 1806 of yacc.c */ -#line 1184 "parser.y" +#line 1186 "parser.y" { parser->quasi_level--; (yyval.val) = rl(rlc(list(sys_qquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; - case 335: + case 337: /* Line 1806 of yacc.c */ -#line 1187 "parser.y" +#line 1189 "parser.y" { parser->quasi_level--; } break; - case 336: + case 338: /* Line 1806 of yacc.c */ -#line 1188 "parser.y" +#line 1190 "parser.y" { parser->quasi_level++; (yyval.val) = rl(rlc(list(sys_unquote_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; - case 337: + case 339: /* Line 1806 of yacc.c */ -#line 1191 "parser.y" +#line 1193 "parser.y" { parser->quasi_level--; } break; - case 338: + case 340: /* Line 1806 of yacc.c */ -#line 1192 "parser.y" +#line 1194 "parser.y" { parser->quasi_level++; (yyval.val) = rl(rlc(list(sys_splice_s, (yyvsp[(3) - (3)].val), nao), (yyvsp[(3) - (3)].val)), num(parser->lineno)); } break; - case 339: + case 341: /* Line 1806 of yacc.c */ -#line 1195 "parser.y" +#line 1197 "parser.y" { uses_or2; (yyval.val) = rlc(list(rcons_s, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val), nao), or2((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val))); } break; - case 340: + case 342: /* Line 1806 of yacc.c */ -#line 1199 "parser.y" +#line 1201 "parser.y" { uses_or2; (yyval.val) = rlc(list(rcons_s, (yyvsp[(1) - (4)].val), uref_helper(parser, (yyvsp[(4) - (4)].val)), @@ -5938,19 +5950,19 @@ yyreduce: or2((yyvsp[(1) - (4)].val), (yyvsp[(4) - (4)].val))); } break; - case 341: + case 343: /* Line 1806 of yacc.c */ -#line 1205 "parser.y" +#line 1207 "parser.y" { uses_or2; (yyval.val) = rlc(list(rcons_s, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val), nao), or2((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val))); } break; - case 342: + case 344: /* Line 1806 of yacc.c */ -#line 1209 "parser.y" +#line 1211 "parser.y" { uses_or2; (yyval.val) = rlc(list(rcons_s, (yyvsp[(1) - (4)].val), uref_helper(parser, (yyvsp[(4) - (4)].val)), @@ -5958,219 +5970,219 @@ yyreduce: or2((yyvsp[(1) - (4)].val), (yyvsp[(4) - (4)].val))); } break; - case 343: + case 345: /* Line 1806 of yacc.c */ -#line 1214 "parser.y" +#line 1216 "parser.y" { (yyval.val) = qref_helper(parser, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); } break; - case 344: + case 346: /* Line 1806 of yacc.c */ -#line 1215 "parser.y" +#line 1217 "parser.y" { (yyval.val) = qref_helper(parser, cons(t, cons((yyvsp[(1) - (3)].val), nil)), (yyvsp[(3) - (3)].val)); } break; - case 345: + case 347: /* Line 1806 of yacc.c */ -#line 1218 "parser.y" +#line 1220 "parser.y" { (yyval.val) = uref_helper(parser, (yyvsp[(2) - (2)].val)); } break; - case 346: + case 348: /* Line 1806 of yacc.c */ -#line 1219 "parser.y" +#line 1221 "parser.y" { (yyval.val) = uoref_helper(parser, (yyvsp[(2) - (2)].val)); } break; - case 347: + case 349: /* Line 1806 of yacc.c */ -#line 1220 "parser.y" +#line 1222 "parser.y" { parser_circ_def(parser, (yyvsp[(1) - (1)].val), unique_s); } break; - case 348: + case 350: /* Line 1806 of yacc.c */ -#line 1221 "parser.y" +#line 1223 "parser.y" { parser_circ_def(parser, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); (yyval.val) = (yyvsp[(3) - (3)].val); } break; - case 349: + case 351: /* Line 1806 of yacc.c */ -#line 1223 "parser.y" +#line 1225 "parser.y" { (yyval.val) = parser_circ_ref(parser, (yyvsp[(1) - (1)].val)); } break; - case 350: + case 352: /* Line 1806 of yacc.c */ -#line 1226 "parser.y" +#line 1228 "parser.y" { (yyval.val) = (yyvsp[(1) - (1)].val); } break; - case 351: + case 353: /* Line 1806 of yacc.c */ -#line 1227 "parser.y" +#line 1229 "parser.y" { (yyval.val) = nil; } break; - case 352: + case 354: /* Line 1806 of yacc.c */ -#line 1230 "parser.y" +#line 1232 "parser.y" { (yyval.val) = uref_helper(parser, (yyvsp[(2) - (2)].val)); } break; - case 353: + case 355: /* Line 1806 of yacc.c */ -#line 1231 "parser.y" +#line 1233 "parser.y" { (yyval.val) = uoref_helper(parser, (yyvsp[(2) - (2)].val)); } break; - case 354: + case 356: /* Line 1806 of yacc.c */ -#line 1232 "parser.y" +#line 1234 "parser.y" { (yyval.val) = (yyvsp[(1) - (1)].val); } break; - case 355: + case 357: /* Line 1806 of yacc.c */ -#line 1235 "parser.y" +#line 1237 "parser.y" { (yyval.val) = regex_compile((yyvsp[(2) - (3)].val), nil); end_of_regex(scnr); rl((yyval.val), num(parser->lineno)); } break; - case 356: + case 358: /* Line 1806 of yacc.c */ -#line 1238 "parser.y" +#line 1240 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("regex")); end_of_regex(scnr); } break; - case 357: + case 359: /* Line 1806 of yacc.c */ -#line 1244 "parser.y" +#line 1246 "parser.y" { (yyval.val) = regex_compile((yyvsp[(2) - (3)].val), nil); end_of_regex(scnr); rl((yyval.val), num(parser->lineno)); } break; - case 358: + case 360: /* Line 1806 of yacc.c */ -#line 1248 "parser.y" +#line 1250 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("regex")); end_of_regex(scnr); } break; - case 359: + case 361: /* Line 1806 of yacc.c */ -#line 1253 "parser.y" +#line 1255 "parser.y" { (yyval.val) = if3(cdr((yyvsp[(1) - (1)].val)), cons(compound_s, (yyvsp[(1) - (1)].val)), car((yyvsp[(1) - (1)].val))); } break; - case 360: + case 362: /* Line 1806 of yacc.c */ -#line 1256 "parser.y" +#line 1258 "parser.y" { (yyval.val) = list(or_s, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val), nao); } break; - case 361: + case 363: /* Line 1806 of yacc.c */ -#line 1257 "parser.y" +#line 1259 "parser.y" { (yyval.val) = list(and_s, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val), nao); } break; - case 362: + case 364: /* Line 1806 of yacc.c */ -#line 1258 "parser.y" +#line 1260 "parser.y" { (yyval.val) = list(compl_s, (yyvsp[(2) - (2)].val), nao); } break; - case 363: + case 365: /* Line 1806 of yacc.c */ -#line 1259 "parser.y" +#line 1261 "parser.y" { (yyval.val) = nil; } break; - case 364: + case 366: /* Line 1806 of yacc.c */ -#line 1262 "parser.y" +#line 1264 "parser.y" { (yyval.val) = cons((yyvsp[(1) - (1)].val), nil); } break; - case 365: + case 367: /* Line 1806 of yacc.c */ -#line 1263 "parser.y" +#line 1265 "parser.y" { (yyval.val) = cons((yyvsp[(1) - (2)].val), (yyvsp[(2) - (2)].val)); } break; - case 366: + case 368: /* Line 1806 of yacc.c */ -#line 1264 "parser.y" +#line 1266 "parser.y" { (yyval.val) = list((yyvsp[(1) - (3)].val), list(compl_s, (yyvsp[(3) - (3)].val), nao), nao); } break; - case 367: + case 369: /* Line 1806 of yacc.c */ -#line 1267 "parser.y" +#line 1269 "parser.y" { (yyval.val) = list(zeroplus_s, (yyvsp[(1) - (2)].val), nao); } break; - case 368: + case 370: /* Line 1806 of yacc.c */ -#line 1268 "parser.y" +#line 1270 "parser.y" { (yyval.val) = list(oneplus_s, (yyvsp[(1) - (2)].val), nao); } break; - case 369: + case 371: /* Line 1806 of yacc.c */ -#line 1269 "parser.y" +#line 1271 "parser.y" { (yyval.val) = list(optional_s, (yyvsp[(1) - (2)].val), nao); } break; - case 370: + case 372: /* Line 1806 of yacc.c */ -#line 1270 "parser.y" +#line 1272 "parser.y" { (yyval.val) = list(nongreedy_s, (yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val), nao); } break; - case 371: + case 373: /* Line 1806 of yacc.c */ -#line 1271 "parser.y" +#line 1273 "parser.y" { if (first((yyvsp[(2) - (3)].val)) == chr('^')) { if (rest((yyvsp[(2) - (3)].val))) (yyval.val) = cons(cset_s, rest((yyvsp[(2) - (3)].val))); @@ -6180,104 +6192,90 @@ yyreduce: (yyval.val) = cons(set_s, (yyvsp[(2) - (3)].val)); } break; - case 372: + case 374: /* Line 1806 of yacc.c */ -#line 1278 "parser.y" +#line 1280 "parser.y" { (yyval.val) = cons(set_s, nil); } break; - case 373: + case 375: /* Line 1806 of yacc.c */ -#line 1279 "parser.y" +#line 1281 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("regex character class")); } break; - case 374: - -/* Line 1806 of yacc.c */ -#line 1281 "parser.y" - { (yyval.val) = wild_s; } - break; - - case 375: - -/* Line 1806 of yacc.c */ -#line 1282 "parser.y" - { (yyval.val) = chr(']'); } - break; - case 376: /* Line 1806 of yacc.c */ #line 1283 "parser.y" - { (yyval.val) = chr('-'); } + { (yyval.val) = wild_s; } break; case 377: /* Line 1806 of yacc.c */ #line 1284 "parser.y" - { (yyval.val) = chr((yyvsp[(1) - (1)].chr)); } + { (yyval.val) = chr(']'); } break; case 378: /* Line 1806 of yacc.c */ #line 1285 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } + { (yyval.val) = chr('-'); } break; case 379: /* Line 1806 of yacc.c */ #line 1286 "parser.y" - { (yyval.val) = list(compound_s, string_own((yyvsp[(1) - (1)].lexeme)), nao); } + { (yyval.val) = chr((yyvsp[(1) - (1)].chr)); } break; case 380: /* Line 1806 of yacc.c */ #line 1287 "parser.y" - { (yyval.val) = (yyvsp[(2) - (3)].val); } + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 381: /* Line 1806 of yacc.c */ #line 1288 "parser.y" - { (yyval.val) = nil; - yybadtok(yychar, lit("regex subexpression")); } + { (yyval.val) = list(compound_s, string_own((yyvsp[(1) - (1)].lexeme)), nao); } break; case 382: /* Line 1806 of yacc.c */ -#line 1292 "parser.y" - { (yyval.val) = cons((yyvsp[(1) - (1)].val), nil); } +#line 1289 "parser.y" + { (yyval.val) = (yyvsp[(2) - (3)].val); } break; case 383: /* Line 1806 of yacc.c */ -#line 1293 "parser.y" - { (yyval.val) = cons((yyvsp[(1) - (2)].val), (yyvsp[(2) - (2)].val)); } +#line 1290 "parser.y" + { (yyval.val) = nil; + yybadtok(yychar, lit("regex subexpression")); } break; case 384: /* Line 1806 of yacc.c */ -#line 1296 "parser.y" - { (yyval.val) = (yyvsp[(1) - (1)].val); } +#line 1294 "parser.y" + { (yyval.val) = cons((yyvsp[(1) - (1)].val), nil); } break; case 385: /* Line 1806 of yacc.c */ -#line 1297 "parser.y" - { (yyval.val) = chr((yyvsp[(1) - (1)].chr)); } +#line 1295 "parser.y" + { (yyval.val) = cons((yyvsp[(1) - (2)].val), (yyvsp[(2) - (2)].val)); } break; case 386: @@ -6290,98 +6288,112 @@ yyreduce: case 387: /* Line 1806 of yacc.c */ -#line 1301 "parser.y" - { (yyval.val) = cons(chr((yyvsp[(1) - (3)].chr)), chr((yyvsp[(3) - (3)].chr))); } +#line 1299 "parser.y" + { (yyval.val) = chr((yyvsp[(1) - (1)].chr)); } break; case 388: /* Line 1806 of yacc.c */ -#line 1303 "parser.y" - { (yyval.chr) = '?'; } +#line 1300 "parser.y" + { (yyval.val) = (yyvsp[(1) - (1)].val); } break; case 389: /* Line 1806 of yacc.c */ -#line 1304 "parser.y" - { (yyval.chr) = '.'; } +#line 1303 "parser.y" + { (yyval.val) = cons(chr((yyvsp[(1) - (3)].chr)), chr((yyvsp[(3) - (3)].chr))); } break; case 390: /* Line 1806 of yacc.c */ #line 1305 "parser.y" - { (yyval.chr) = '*'; } + { (yyval.chr) = '?'; } break; case 391: /* Line 1806 of yacc.c */ #line 1306 "parser.y" - { (yyval.chr) = '+'; } + { (yyval.chr) = '.'; } break; case 392: /* Line 1806 of yacc.c */ #line 1307 "parser.y" - { (yyval.chr) = '('; } + { (yyval.chr) = '*'; } break; case 393: /* Line 1806 of yacc.c */ #line 1308 "parser.y" - { (yyval.chr) = ')'; } + { (yyval.chr) = '+'; } break; case 394: /* Line 1806 of yacc.c */ #line 1309 "parser.y" - { (yyval.chr) = '|'; } + { (yyval.chr) = '('; } break; case 395: /* Line 1806 of yacc.c */ #line 1310 "parser.y" - { (yyval.chr) = '~'; } + { (yyval.chr) = ')'; } break; case 396: /* Line 1806 of yacc.c */ #line 1311 "parser.y" - { (yyval.chr) = '&'; } + { (yyval.chr) = '|'; } break; case 397: /* Line 1806 of yacc.c */ #line 1312 "parser.y" - { (yyval.chr) = '%'; } + { (yyval.chr) = '~'; } break; case 398: /* Line 1806 of yacc.c */ #line 1313 "parser.y" - { (yyval.chr) = '/'; } + { (yyval.chr) = '&'; } break; case 399: /* Line 1806 of yacc.c */ #line 1314 "parser.y" - { (yyval.chr) = (yyvsp[(1) - (1)].chr); } + { (yyval.chr) = '%'; } break; case 400: /* Line 1806 of yacc.c */ -#line 1317 "parser.y" +#line 1315 "parser.y" + { (yyval.chr) = '/'; } + break; + + case 401: + +/* Line 1806 of yacc.c */ +#line 1316 "parser.y" + { (yyval.chr) = (yyvsp[(1) - (1)].chr); } + break; + + case 402: + +/* Line 1806 of yacc.c */ +#line 1319 "parser.y" { switch ((yyvsp[(1) - (1)].chr)) { case 's': (yyval.val) = space_k; break; @@ -6397,41 +6409,41 @@ yyreduce: (yyval.val) = cword_char_k; break; }} break; - case 402: + case 404: /* Line 1806 of yacc.c */ -#line 1332 "parser.y" +#line 1334 "parser.y" { yyerr("newline expected after directive"); yyerrok; } break; - case 403: + case 405: /* Line 1806 of yacc.c */ -#line 1336 "parser.y" +#line 1338 "parser.y" { (yyval.val) = null_string; } break; - case 404: + case 406: /* Line 1806 of yacc.c */ -#line 1337 "parser.y" +#line 1339 "parser.y" { (yyval.val) = (yyvsp[(2) - (3)].val); rl((yyval.val), num(parser->lineno)); } break; - case 405: + case 407: /* Line 1806 of yacc.c */ -#line 1339 "parser.y" +#line 1341 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("string literal")); } break; - case 406: + case 408: /* Line 1806 of yacc.c */ -#line 1343 "parser.y" +#line 1345 "parser.y" { wchar_t ch; val str = string_own((yyvsp[(2) - (2)].lexeme)); const wchar_t *cstr = c_str(str); @@ -6447,99 +6459,99 @@ yyreduce: (yyval.val) = chr(ch); } break; - case 407: + case 409: /* Line 1806 of yacc.c */ -#line 1356 "parser.y" +#line 1358 "parser.y" { (yyval.val) = chr((yyvsp[(2) - (2)].chr)); end_of_char(scnr); } break; - case 408: + case 410: /* Line 1806 of yacc.c */ -#line 1358 "parser.y" +#line 1360 "parser.y" { free((yyvsp[(2) - (2)].lexeme)); yyerrorf(scnr, lit("invalid UTF-8 used as character name"), nao); } break; - case 409: + case 411: /* Line 1806 of yacc.c */ -#line 1362 "parser.y" +#line 1364 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("character literal")); } break; - case 410: + case 412: /* Line 1806 of yacc.c */ -#line 1367 "parser.y" +#line 1369 "parser.y" { (yyval.val) = null_string; } break; - case 411: + case 413: /* Line 1806 of yacc.c */ -#line 1368 "parser.y" +#line 1370 "parser.y" { (yyval.val) = cons(quasi_s, (yyvsp[(2) - (3)].val)); rlc((yyval.val), (yyvsp[(2) - (3)].val)); rl((yyval.val), num(parser->lineno)); } break; - case 412: + case 414: /* Line 1806 of yacc.c */ -#line 1371 "parser.y" +#line 1373 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("quasistring")); } break; - case 413: + case 415: /* Line 1806 of yacc.c */ -#line 1375 "parser.y" +#line 1377 "parser.y" { (yyval.val) = cons((yyvsp[(1) - (1)].val), nil); rl((yyval.val), num(parser->lineno)); } break; - case 414: + case 416: /* Line 1806 of yacc.c */ -#line 1377 "parser.y" +#line 1379 "parser.y" { (yyval.val) = cons((yyvsp[(1) - (2)].val), (yyvsp[(2) - (2)].val)); rl((yyval.val), num(parser->lineno)); } break; - case 415: + case 417: /* Line 1806 of yacc.c */ -#line 1381 "parser.y" +#line 1383 "parser.y" { (yyval.val) = (yyvsp[(1) - (1)].val); } break; - case 416: + case 418: /* Line 1806 of yacc.c */ -#line 1382 "parser.y" +#line 1384 "parser.y" { (yyval.val) = (yyvsp[(1) - (1)].val); } break; - case 417: + case 419: /* Line 1806 of yacc.c */ -#line 1383 "parser.y" +#line 1385 "parser.y" { (yyval.val) = cons(var_s, cons((yyvsp[(1) - (1)].val), nil)); rl((yyval.val), num(parser->lineno)); } break; - case 418: + case 420: /* Line 1806 of yacc.c */ -#line 1385 "parser.y" +#line 1387 "parser.y" { if (integerp((yyvsp[(2) - (2)].val)) || symbolp((yyvsp[(2) - (2)].val))) (yyval.val) = rlcp_tree(cons(var_s, cons((yyvsp[(2) - (2)].val), nil)), (yyvsp[(2) - (2)].val)); @@ -6547,314 +6559,314 @@ yyreduce: (yyval.val) = (yyvsp[(2) - (2)].val); } break; - case 419: + case 421: /* Line 1806 of yacc.c */ -#line 1392 "parser.y" +#line 1394 "parser.y" { (yyval.val) = mkstring(one, chr((yyvsp[(1) - (1)].chr))); } break; - case 420: + case 422: /* Line 1806 of yacc.c */ -#line 1393 "parser.y" +#line 1395 "parser.y" { val ch = mkstring(one, chr((yyvsp[(1) - (2)].chr))); (yyval.val) = string_extend(ch, (yyvsp[(2) - (2)].val)); } break; - case 421: + case 423: /* Line 1806 of yacc.c */ -#line 1395 "parser.y" +#line 1397 "parser.y" { (yyval.val) = string_own((yyvsp[(1) - (1)].lexeme)); } break; - case 422: + case 424: /* Line 1806 of yacc.c */ -#line 1396 "parser.y" +#line 1398 "parser.y" { (yyval.val) = string_extend(string_own((yyvsp[(1) - (2)].lexeme)), (yyvsp[(2) - (2)].val)); } break; - case 423: + case 425: /* Line 1806 of yacc.c */ -#line 1399 "parser.y" +#line 1401 "parser.y" { (yyval.val) = mkstring(one, chr((yyvsp[(1) - (1)].chr))); } break; - case 424: + case 426: /* Line 1806 of yacc.c */ -#line 1400 "parser.y" +#line 1402 "parser.y" { (yyval.val) = string_extend((yyvsp[(1) - (2)].val), chr((yyvsp[(2) - (2)].chr))); } break; - case 425: + case 427: /* Line 1806 of yacc.c */ -#line 1401 "parser.y" +#line 1403 "parser.y" { (yyval.val) = string_own((yyvsp[(1) - (1)].lexeme)); } break; - case 426: + case 428: /* Line 1806 of yacc.c */ -#line 1402 "parser.y" +#line 1404 "parser.y" { (yyval.val) = string_extend((yyvsp[(1) - (2)].val), string_own((yyvsp[(2) - (2)].lexeme))); } break; - case 427: + case 429: /* Line 1806 of yacc.c */ -#line 1405 "parser.y" +#line 1407 "parser.y" { (yyval.val) = nil; } break; - case 428: + case 430: /* Line 1806 of yacc.c */ -#line 1406 "parser.y" +#line 1408 "parser.y" { (yyval.val) = (yyvsp[(2) - (2)].val); } break; - case 429: + case 431: /* Line 1806 of yacc.c */ -#line 1407 "parser.y" +#line 1409 "parser.y" { val word = (yyvsp[(1) - (2)].val); (yyval.val) = rlc(cons(word, (yyvsp[(2) - (2)].val)), (yyvsp[(1) - (2)].val)); } break; - case 430: + case 432: /* Line 1806 of yacc.c */ -#line 1409 "parser.y" +#line 1411 "parser.y" { (yyval.val) = nil; yybadtok(yychar, lit("word list")); } break; - case 431: + case 433: /* Line 1806 of yacc.c */ -#line 1413 "parser.y" +#line 1415 "parser.y" { (yyval.val) = nil; } break; - case 432: + case 434: /* Line 1806 of yacc.c */ -#line 1414 "parser.y" +#line 1416 "parser.y" { (yyval.val) = (yyvsp[(2) - (2)].val); } break; - case 433: + case 435: /* Line 1806 of yacc.c */ -#line 1415 "parser.y" +#line 1417 "parser.y" { val qword = cons(quasi_s, (yyvsp[(1) - (2)].val)); (yyval.val) = rlc(cons(qword, nil), (yyvsp[(1) - (2)].val)); } break; - case 434: + case 436: /* Line 1806 of yacc.c */ -#line 1419 "parser.y" +#line 1421 "parser.y" { val qword = cons(quasi_s, (yyvsp[(1) - (3)].val)); (yyval.val) = rlc(cons(qword, (yyvsp[(3) - (3)].val)), (yyvsp[(1) - (3)].val)); } break; - case 435: + case 437: /* Line 1806 of yacc.c */ -#line 1423 "parser.y" +#line 1425 "parser.y" { (yyval.val) = make_buf(zero, nil, nil); end_of_buflit(scnr); } break; - case 436: + case 438: /* Line 1806 of yacc.c */ -#line 1425 "parser.y" +#line 1427 "parser.y" { end_of_buflit(scnr); buf_trim((yyvsp[(2) - (3)].val)); (yyval.val) = (yyvsp[(2) - (3)].val); } break; - case 437: + case 439: /* Line 1806 of yacc.c */ -#line 1428 "parser.y" +#line 1430 "parser.y" { yyerr("unterminated buffer literal"); end_of_buflit(scnr); yyerrok; } break; - case 438: + case 440: /* Line 1806 of yacc.c */ -#line 1433 "parser.y" +#line 1435 "parser.y" { buf_put_u8((yyvsp[(1) - (2)].val), length_buf((yyval.val)), (yyvsp[(2) - (2)].val)); (yyval.val) = (yyvsp[(1) - (2)].val); } break; - case 439: + case 441: /* Line 1806 of yacc.c */ -#line 1435 "parser.y" +#line 1437 "parser.y" { (yyval.val) = make_buf(zero, nil, num_fast(512)); buf_put_u8((yyval.val), zero, (yyvsp[(1) - (1)].val)); } break; - case 440: + case 442: /* Line 1806 of yacc.c */ -#line 1439 "parser.y" +#line 1441 "parser.y" { (yyval.val) = num((yyvsp[(1) - (2)].chr) << 4 | (yyvsp[(2) - (2)].chr)); } break; - case 441: + case 443: /* Line 1806 of yacc.c */ -#line 1440 "parser.y" +#line 1442 "parser.y" { (yyval.val) = zero; yyerr("unpaired digit in buffer literal"); yyerrok; } break; - case 442: + case 444: /* Line 1806 of yacc.c */ -#line 1447 "parser.y" +#line 1449 "parser.y" { (yyval.val) = mkexp(all_s, nil, num(parser->lineno)); } break; - case 443: + case 445: /* Line 1806 of yacc.c */ -#line 1448 "parser.y" +#line 1450 "parser.y" { (yyval.val) = mkexp(some_s, nil, num(parser->lineno)); } break; - case 444: + case 446: /* Line 1806 of yacc.c */ -#line 1449 "parser.y" +#line 1451 "parser.y" { (yyval.val) = mkexp(none_s, nil, num(parser->lineno)); } break; - case 445: + case 447: /* Line 1806 of yacc.c */ -#line 1450 "parser.y" +#line 1452 "parser.y" { (yyval.val) = mkexp(maybe_s, nil, num(parser->lineno)); } break; - case 446: + case 448: /* Line 1806 of yacc.c */ -#line 1451 "parser.y" +#line 1453 "parser.y" { (yyval.val) = mkexp(cases_s, nil, num(parser->lineno)); } break; - case 447: + case 449: /* Line 1806 of yacc.c */ -#line 1452 "parser.y" +#line 1454 "parser.y" { (yyval.val) = mkexp(and_s, nil, num(parser->lineno)); } break; - case 448: + case 450: /* Line 1806 of yacc.c */ -#line 1453 "parser.y" +#line 1455 "parser.y" { (yyval.val) = mkexp(or_s, nil, num(parser->lineno)); } break; - case 449: + case 451: /* Line 1806 of yacc.c */ -#line 1454 "parser.y" +#line 1456 "parser.y" { (yyval.val) = mkexp(try_s, nil, num(parser->lineno)); } break; - case 450: + case 452: /* Line 1806 of yacc.c */ -#line 1455 "parser.y" +#line 1457 "parser.y" { (yyval.val) = mkexp(finally_s, nil, num(parser->lineno)); } break; - case 451: + case 453: /* Line 1806 of yacc.c */ -#line 1457 "parser.y" +#line 1459 "parser.y" { (yyval.val) = mkexp(block_s, (yyvsp[(2) - (3)].val), nil); } break; - case 452: + case 454: /* Line 1806 of yacc.c */ -#line 1459 "parser.y" +#line 1461 "parser.y" { (yyval.val) = mkexp(choose_s, (yyvsp[(2) - (3)].val), nil); } break; - case 453: + case 455: /* Line 1806 of yacc.c */ -#line 1461 "parser.y" +#line 1463 "parser.y" { (yyval.val) = mkexp(collect_s, (yyvsp[(2) - (3)].val), nil); } break; - case 454: + case 456: /* Line 1806 of yacc.c */ -#line 1463 "parser.y" +#line 1465 "parser.y" { (yyval.val) = mkexp(coll_s, (yyvsp[(2) - (3)].val), nil); } break; - case 455: + case 457: /* Line 1806 of yacc.c */ -#line 1465 "parser.y" +#line 1467 "parser.y" { (yyval.val) = mkexp(gather_s, (yyvsp[(2) - (3)].val), nil); } break; - case 456: + case 458: /* Line 1806 of yacc.c */ -#line 1467 "parser.y" +#line 1469 "parser.y" { (yyval.val) = mkexp(define_s, (yyvsp[(2) - (3)].val), nil); } break; - case 457: + case 459: /* Line 1806 of yacc.c */ -#line 1469 "parser.y" +#line 1471 "parser.y" { (yyval.val) = mkexp(catch_s, (yyvsp[(2) - (3)].val), nil); } break; - case 458: + case 460: /* Line 1806 of yacc.c */ -#line 1471 "parser.y" +#line 1473 "parser.y" { (yyval.val) = mkexp(if_s, cons((yyvsp[(2) - (5)].val), cons((yyvsp[(3) - (5)].val), (yyvsp[(4) - (5)].val))), nil); } break; - case 459: + case 461: /* Line 1806 of yacc.c */ -#line 1476 "parser.y" +#line 1478 "parser.y" { yyerr("@(output) doesn't nest"); } break; /* Line 1806 of yacc.c */ -#line 6888 "y.tab.c" +#line 6900 "y.tab.c" default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -7085,7 +7097,7 @@ yyreturn: /* Line 2067 of yacc.c */ -#line 1480 "parser.y" +#line 1482 "parser.y" const int have_yydebug = YYDEBUG; |