diff --git a/go/vt/sqlparser/parse_test.go b/go/vt/sqlparser/parse_test.go index 603026aa41d..0e25ce4000f 100644 --- a/go/vt/sqlparser/parse_test.go +++ b/go/vt/sqlparser/parse_test.go @@ -1057,6 +1057,8 @@ var ( output: "create table a (\n\ta int\n)", }, { input: "create table `by` (\n\t`by` char\n)", + }, { + input: "create table test (\n\t__year year(4)\n)", }, { input: "create table if not exists a (\n\t`a` int\n)", output: "create table a (\n\ta int\n)", diff --git a/go/vt/sqlparser/sql.go b/go/vt/sqlparser/sql.go index 6baa4f14cea..23bc3ff38c1 100644 --- a/go/vt/sqlparser/sql.go +++ b/go/vt/sqlparser/sql.go @@ -929,405 +929,402 @@ var yyExca = [...]int{ 72, 58, 74, 58, -2, 62, - -1, 1420, + -1, 1421, 5, 635, 18, 635, 20, 635, 32, 635, 75, 635, -2, 422, - -1, 1616, + -1, 1617, 44, 678, -2, 676, } const yyPrivate = 57344 -const yyLast = 19384 +const yyLast = 19354 var yyAct = [...]int{ - 416, 1712, 1702, 1466, 1670, 1343, 1638, 1243, 1081, 1616, - 360, 1560, 1543, 1581, 1400, 1077, 1263, 1244, 1529, 389, - 425, 375, 1401, 759, 1053, 1436, 1397, 766, 1230, 719, - 1125, 1293, 73, 3, 1412, 588, 1090, 1080, 637, 912, - 94, 1406, 1362, 1179, 306, 620, 329, 306, 1310, 346, - 1050, 893, 94, 458, 306, 1320, 959, 71, 966, 1094, - 585, 804, 792, 1032, 787, 1055, 1039, 786, 797, 434, - 29, 419, 764, 936, 769, 362, 803, 584, 992, 776, - 1061, 907, 94, 69, 1121, 94, 306, 629, 306, 351, - 794, 358, 922, 801, 74, 68, 733, 1613, 8, 1459, - 7, 6, 1539, 1562, 609, 347, 304, 294, 350, 1705, - 292, 1667, 1147, 1700, 1646, 732, 342, 1693, 1467, 1666, - 1645, 1379, 1496, 593, 1430, 639, 1146, 76, 77, 78, - 79, 80, 81, 302, 298, 299, 300, 805, 31, 806, - 420, 62, 35, 36, 1431, 1432, 1072, 1073, 590, 1071, - 592, 440, 444, 1607, 681, 680, 690, 691, 683, 684, - 685, 686, 687, 688, 689, 682, 645, 646, 692, 652, - 349, 348, 96, 97, 98, 452, 969, 96, 97, 98, - 1363, 1301, 1111, 1145, 401, 1104, 407, 408, 405, 406, - 404, 403, 402, 1280, 1532, 1345, 1279, 1648, 647, 1281, - 409, 410, 648, 645, 646, 61, 1112, 455, 1487, 295, - 96, 97, 98, 1485, 339, 921, 341, 337, 881, 640, - 641, 1365, 650, 642, 1347, 878, 1699, 880, 1692, 1631, - 1639, 651, 1342, 1033, 1129, 293, 1142, 1139, 1140, 1439, - 1138, 1129, 1720, 635, 610, 923, 924, 925, 626, 1716, - 628, 1346, 1582, 1129, 1264, 1266, 296, 587, 1367, 882, - 1371, 301, 1366, 879, 1364, 1590, 1339, 1584, 595, 1369, - 446, 1348, 1341, 1149, 1152, 886, 1098, 655, 1368, 869, - 598, 1098, 625, 627, 1423, 1422, 1421, 591, 309, 297, - 1620, 1370, 1372, 306, 600, 601, 1159, 605, 306, 1158, - 611, 704, 705, 1511, 306, 1198, 1429, 1235, 1208, 1187, - 306, 618, 1067, 1144, 624, 1195, 1078, 780, 717, 616, - 692, 94, 1276, 96, 97, 98, 913, 96, 97, 98, - 94, 1011, 943, 1458, 1608, 1143, 1265, 682, 1583, 1330, - 692, 630, 94, 94, 672, 1644, 941, 942, 940, 1629, - 1105, 1112, 1599, 908, 1410, 599, 1381, 634, 807, 665, - 608, 837, 84, 622, 993, 602, 615, 603, 654, 636, - 604, 1649, 617, 871, 653, 623, 661, 1721, 1634, 1148, - 1714, 1450, 993, 1715, 1205, 1713, 1326, 1327, 1328, 1591, - 1589, 1340, 669, 1338, 1150, 1097, 671, 669, 666, 667, - 1097, 85, 1101, 631, 632, 612, 613, 614, 672, 1102, - 1299, 1694, 773, 672, 63, 681, 680, 690, 691, 683, - 684, 685, 686, 687, 688, 689, 682, 643, 914, 692, - 704, 705, 1695, 702, 594, 429, 1722, 1658, 1686, 1538, - 704, 705, 664, 94, 662, 663, 306, 756, 306, 306, - 1537, 94, 802, 1314, 757, 909, 1313, 94, 1329, 1687, - 825, 720, 621, 1334, 1331, 1322, 1332, 1325, 755, 1321, - 1302, 1697, 1180, 1323, 1324, 681, 680, 690, 691, 683, - 684, 685, 686, 687, 688, 689, 682, 1333, 1696, 692, - 1688, 670, 671, 669, 1172, 1173, 1174, 1678, 785, 736, - 738, 838, 742, 744, 770, 747, 1660, 1387, 784, 672, - 445, 796, 96, 97, 98, 1630, 961, 758, 735, 737, - 739, 741, 743, 745, 746, 596, 597, 851, 854, 855, - 856, 857, 858, 859, 450, 860, 861, 862, 863, 864, - 839, 840, 841, 842, 823, 824, 852, 1556, 826, 1388, - 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, - 843, 844, 845, 846, 847, 848, 849, 850, 683, 684, - 685, 686, 687, 688, 689, 682, 455, 61, 692, 931, - 933, 934, 1535, 1500, 306, 1389, 932, 1311, 865, 939, - 447, 448, 867, 94, 906, 870, 898, 872, 306, 306, - 94, 94, 94, 670, 671, 669, 306, 884, 768, 606, - 306, 1383, 429, 306, 891, 892, 1596, 306, 1595, 94, - 1446, 672, 70, 853, 94, 94, 94, 306, 94, 94, - 1099, 868, 96, 97, 98, 1231, 1283, 1409, 875, 876, - 877, 94, 94, 96, 97, 98, 815, 690, 691, 683, - 684, 685, 686, 687, 688, 689, 682, 896, 1231, 692, - 873, 874, 900, 901, 902, 897, 904, 905, 883, 1270, - 895, 1062, 796, 1587, 1698, 890, 1193, 72, 1192, 910, - 911, 1662, 429, 1507, 916, 1587, 1642, 1587, 429, 903, - 1587, 1621, 429, 960, 668, 937, 1036, 670, 671, 669, - 887, 1598, 962, 1454, 685, 686, 687, 688, 689, 682, - 1315, 1499, 692, 1587, 1586, 672, 94, 1527, 1526, 1409, - 1016, 1017, 1513, 429, 31, 915, 1510, 429, 670, 671, - 669, 1456, 1455, 1452, 1453, 1024, 981, 984, 918, 1452, - 1451, 1036, 994, 1013, 1024, 429, 672, 1025, 976, 94, - 94, 938, 681, 680, 690, 691, 683, 684, 685, 686, - 687, 688, 689, 682, 1036, 429, 692, 1063, 94, 971, - 1567, 972, 668, 429, 720, 306, 417, 1006, 94, 1063, - 31, 1194, 306, 1284, 306, 814, 813, 1018, 670, 671, - 669, 61, 306, 306, 306, 1035, 963, 964, 1012, 1070, - 94, 1398, 973, 94, 1409, 1238, 672, 442, 1211, 1024, - 1002, 1003, 1210, 1024, 94, 94, 95, 670, 671, 669, - 307, 422, 1062, 307, 1051, 1014, 1239, 1064, 95, 1066, - 307, 885, 1030, 799, 972, 672, 61, 1027, 1036, 1064, - 1026, 1062, 1679, 970, 1031, 31, 1034, 61, 1545, 1106, - 1096, 670, 671, 669, 1518, 1126, 1059, 1028, 95, 1442, - 866, 95, 307, 1288, 307, 1413, 1414, 352, 1122, 672, - 306, 94, 1117, 94, 1116, 1151, 1065, 1069, 1344, 306, - 306, 306, 306, 306, 1060, 1546, 306, 306, 61, 1493, - 306, 94, 1085, 1068, 1132, 1127, 1707, 1703, 977, 978, - 1444, 1128, 983, 986, 987, 1416, 970, 1398, 306, 1134, - 1419, 1136, 61, 1316, 306, 306, 306, 919, 889, 1255, - 306, 94, 1418, 1252, 1256, 455, 1251, 1001, 455, 1163, - 1004, 1005, 1133, 1253, 1257, 1683, 1045, 1046, 1254, 1082, - 1665, 1153, 1154, 1155, 1156, 1157, 1123, 1124, 1160, 1161, - 1390, 1220, 1162, 767, 1681, 1229, 1228, 1654, 1165, 1651, - 937, 1685, 1169, 378, 377, 380, 381, 382, 383, 1669, - 1164, 1671, 379, 384, 1677, 1676, 1617, 1615, 1168, 418, - 1306, 812, 1170, 619, 681, 680, 690, 691, 683, 684, - 685, 686, 687, 688, 689, 682, 1218, 1189, 692, 1041, - 1044, 1045, 1046, 1042, 1219, 1043, 1047, 1298, 989, 1413, - 1414, 1113, 1114, 1115, 1175, 760, 938, 1041, 1044, 1045, - 1046, 1042, 990, 1043, 1047, 1636, 306, 761, 1635, 1565, - 1217, 1296, 1290, 1505, 1541, 1009, 1135, 306, 306, 306, - 306, 306, 1224, 888, 420, 1188, 1245, 1049, 1227, 306, - 423, 424, 426, 306, 1690, 1689, 1226, 306, 1674, 1655, - 1236, 1504, 306, 306, 427, 1240, 306, 306, 306, 307, - 1204, 72, 1503, 1393, 307, 1231, 1233, 649, 1199, 1282, - 307, 94, 1709, 1708, 1709, 1262, 307, 1223, 1196, 1285, - 1289, 422, 781, 774, 1294, 1294, 1234, 95, 1618, 1232, - 1533, 435, 1247, 1248, 1246, 1250, 95, 1249, 1010, 70, - 75, 67, 1271, 1, 1258, 436, 1273, 328, 95, 95, - 1701, 895, 1268, 1269, 1468, 1272, 1295, 1305, 1542, 1307, - 1308, 1309, 1277, 94, 94, 1274, 1141, 771, 772, 438, - 1637, 437, 435, 1580, 1184, 1185, 1287, 1435, 1088, 1079, - 83, 582, 1291, 1292, 82, 1628, 436, 633, 1087, 1086, - 1588, 1300, 673, 94, 1103, 1202, 1312, 1531, 1443, 1297, - 1633, 820, 1318, 818, 1107, 1108, 1109, 1110, 432, 433, - 438, 819, 437, 817, 822, 821, 816, 1319, 94, 321, - 1118, 1119, 1120, 920, 960, 1335, 338, 1048, 352, 808, - 1131, 1349, 997, 775, 1350, 86, 1082, 730, 1351, 1337, - 1336, 1137, 1457, 1361, 1100, 318, 1360, 644, 323, 95, - 1352, 291, 307, 700, 307, 307, 306, 95, 1225, 1278, - 1380, 456, 449, 95, 762, 765, 94, 1374, 1404, 1675, - 1652, 1650, 94, 94, 1614, 1358, 1399, 1561, 1653, 1245, - 1373, 1612, 1684, 1668, 1008, 1015, 763, 1396, 1502, 1402, - 971, 1392, 972, 1203, 729, 991, 790, 361, 94, 930, - 376, 306, 1408, 373, 374, 1019, 428, 1237, 674, 359, - 353, 789, 782, 1040, 1417, 94, 1038, 94, 1391, 94, - 1303, 1304, 1294, 1294, 1037, 1434, 795, 1415, 1425, 1411, - 1427, 788, 1428, 1023, 431, 988, 1606, 1449, 1495, 1424, - 430, 53, 34, 1359, 343, 657, 439, 306, 28, 1447, - 1448, 1426, 1433, 1440, 1441, 1096, 1438, 23, 22, 21, - 20, 19, 25, 18, 1384, 17, 16, 306, 607, 38, - 27, 26, 15, 94, 14, 1469, 94, 94, 94, 306, - 13, 12, 11, 10, 9, 5, 4, 660, 24, 718, - 307, 1359, 2, 0, 0, 0, 0, 0, 0, 95, - 1461, 0, 0, 0, 307, 307, 95, 95, 95, 1460, - 0, 1478, 307, 0, 0, 1462, 307, 1464, 0, 307, - 0, 0, 0, 307, 0, 95, 1474, 1475, 1483, 1463, - 95, 95, 95, 307, 95, 95, 0, 0, 0, 0, - 1082, 1473, 1082, 0, 0, 0, 0, 95, 95, 0, - 1245, 0, 0, 0, 0, 0, 1506, 1515, 0, 0, - 899, 0, 0, 0, 94, 0, 1514, 0, 0, 0, - 0, 0, 1285, 94, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1524, 0, 1525, 0, 917, 0, 0, - 0, 94, 0, 0, 0, 0, 390, 30, 94, 0, - 0, 0, 0, 0, 0, 0, 926, 927, 928, 929, - 0, 0, 1549, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 95, 0, 0, 0, 0, 30, 0, 1540, - 0, 0, 1547, 0, 0, 0, 0, 0, 0, 0, - 0, 94, 94, 0, 94, 0, 1555, 0, 0, 94, - 0, 94, 94, 94, 306, 95, 95, 1402, 94, 0, - 1566, 979, 980, 0, 1564, 1572, 421, 1573, 0, 1574, - 1576, 1577, 1568, 0, 95, 1579, 94, 306, 1578, 0, - 1593, 307, 1594, 1585, 95, 1592, 0, 0, 307, 1082, - 307, 0, 0, 0, 1600, 0, 0, 0, 307, 307, - 307, 1501, 0, 0, 0, 0, 95, 0, 0, 95, - 0, 0, 1619, 1627, 0, 0, 0, 1402, 94, 0, - 95, 95, 0, 1544, 1626, 1625, 0, 0, 0, 94, - 94, 0, 0, 0, 0, 0, 0, 0, 1641, 1601, - 0, 1640, 0, 0, 0, 1076, 0, 0, 0, 0, - 0, 94, 0, 0, 1647, 0, 1656, 0, 0, 1245, - 0, 0, 306, 0, 1534, 0, 1536, 0, 0, 0, - 94, 0, 0, 0, 0, 0, 307, 95, 1664, 95, - 0, 0, 0, 0, 1672, 307, 307, 307, 307, 307, - 1673, 0, 307, 307, 1548, 0, 307, 95, 1682, 1680, - 0, 0, 0, 1492, 1130, 0, 0, 0, 0, 0, - 94, 0, 0, 1559, 307, 0, 0, 0, 0, 0, - 307, 307, 307, 0, 1659, 0, 307, 95, 1691, 0, - 0, 0, 0, 0, 1706, 0, 0, 0, 0, 0, - 0, 1717, 1498, 0, 1480, 1481, 0, 1482, 0, 676, - 1484, 679, 1486, 0, 1544, 1082, 0, 693, 694, 695, - 696, 697, 698, 699, 0, 677, 678, 675, 681, 680, + 416, 1703, 1467, 1713, 1344, 1639, 360, 1244, 1530, 1617, + 1561, 1671, 1081, 1582, 1264, 1544, 639, 1401, 389, 375, + 425, 1437, 1245, 1398, 1077, 1402, 1053, 719, 1090, 1080, + 1407, 620, 73, 3, 1413, 1363, 1111, 1126, 1294, 893, + 94, 759, 1321, 959, 306, 588, 329, 306, 1311, 804, + 766, 458, 94, 346, 306, 1180, 1094, 966, 912, 797, + 792, 1032, 585, 1039, 1231, 1055, 769, 787, 764, 992, + 29, 419, 434, 786, 936, 362, 803, 776, 801, 69, + 71, 1050, 94, 358, 629, 94, 306, 351, 306, 1122, + 584, 794, 1061, 907, 732, 922, 68, 74, 455, 1614, + 8, 7, 1460, 1540, 304, 1563, 6, 733, 1148, 347, + 609, 1706, 350, 294, 342, 1668, 292, 637, 1701, 1647, + 1694, 1468, 1147, 1667, 1646, 1380, 1497, 593, 1431, 1105, + 76, 77, 78, 79, 80, 81, 349, 96, 97, 98, + 420, 1432, 1433, 440, 444, 1071, 590, 401, 592, 407, + 408, 405, 406, 404, 403, 402, 302, 298, 299, 300, + 452, 652, 31, 409, 410, 62, 35, 36, 96, 97, + 98, 1281, 645, 646, 1280, 1072, 1073, 1282, 348, 1146, + 1608, 681, 680, 690, 691, 683, 684, 685, 686, 687, + 688, 689, 682, 647, 805, 692, 806, 648, 645, 646, + 1302, 1104, 1346, 1533, 1649, 1112, 1488, 1486, 626, 339, + 628, 96, 97, 98, 921, 295, 341, 337, 881, 640, + 641, 650, 642, 651, 880, 1348, 878, 1700, 1693, 61, + 1640, 1343, 1143, 1140, 1141, 1364, 1139, 1033, 1632, 1130, + 635, 293, 625, 627, 1440, 1721, 1717, 1130, 923, 924, + 925, 587, 1583, 1130, 1098, 1265, 1267, 446, 1347, 882, + 879, 1591, 296, 610, 595, 1349, 1340, 1585, 886, 1150, + 1153, 655, 1342, 969, 869, 1098, 1366, 1424, 1423, 1422, + 1331, 591, 1078, 598, 301, 309, 297, 1160, 1621, 605, + 1159, 704, 705, 306, 600, 601, 1512, 1430, 306, 1236, + 611, 96, 97, 98, 306, 1209, 1199, 1188, 1067, 1145, + 306, 618, 780, 1368, 624, 1372, 1196, 1367, 717, 1365, + 616, 94, 682, 692, 1370, 692, 1277, 1327, 1328, 1329, + 94, 1144, 84, 1369, 1011, 623, 1459, 1266, 1584, 669, + 622, 630, 94, 94, 672, 1630, 1371, 1373, 1382, 1645, + 913, 1600, 1112, 599, 634, 672, 908, 602, 608, 603, + 653, 1609, 604, 993, 615, 1411, 636, 1016, 1017, 807, + 617, 85, 837, 1097, 665, 1149, 661, 1715, 1650, 1300, + 1716, 943, 1714, 1635, 871, 1592, 1590, 993, 1695, 1206, + 1151, 1341, 773, 1339, 1097, 941, 942, 940, 1698, 1330, + 631, 632, 666, 667, 1335, 1332, 1323, 1333, 1326, 1696, + 1322, 612, 613, 614, 1324, 1325, 681, 680, 690, 691, + 683, 684, 685, 686, 687, 688, 689, 682, 1334, 643, + 692, 704, 705, 702, 429, 670, 671, 669, 63, 621, + 594, 704, 705, 94, 664, 662, 306, 654, 306, 306, + 663, 94, 914, 672, 757, 1101, 1722, 94, 909, 1659, + 1539, 720, 1102, 96, 97, 98, 1687, 455, 429, 1538, + 756, 825, 755, 1181, 681, 680, 690, 691, 683, 684, + 685, 686, 687, 688, 689, 682, 1315, 1688, 692, 1314, + 670, 671, 669, 1173, 1174, 1175, 1303, 735, 737, 739, + 741, 743, 745, 746, 671, 669, 784, 770, 672, 796, + 736, 738, 838, 742, 744, 1723, 747, 1451, 1388, 1195, + 758, 672, 685, 686, 687, 688, 689, 682, 355, 785, + 692, 596, 597, 61, 802, 1697, 1689, 1679, 851, 854, + 855, 856, 857, 858, 859, 939, 860, 861, 862, 863, + 864, 839, 840, 841, 842, 823, 824, 852, 1661, 826, + 1389, 827, 828, 829, 830, 831, 832, 833, 834, 835, + 836, 843, 844, 845, 846, 847, 848, 849, 850, 1631, + 1013, 96, 97, 98, 306, 1316, 1557, 1536, 865, 670, + 671, 669, 867, 94, 1501, 870, 1390, 872, 306, 306, + 94, 94, 94, 670, 671, 669, 306, 672, 1312, 1194, + 306, 1193, 906, 306, 891, 892, 450, 306, 898, 94, + 884, 672, 606, 1597, 94, 94, 94, 306, 94, 94, + 670, 671, 669, 1500, 853, 1012, 931, 933, 934, 1588, + 1699, 94, 94, 932, 815, 670, 671, 669, 672, 1663, + 429, 897, 1596, 1384, 670, 671, 669, 1447, 873, 874, + 96, 97, 98, 672, 961, 1099, 883, 445, 895, 1271, + 796, 1062, 672, 890, 681, 680, 690, 691, 683, 684, + 685, 686, 687, 688, 689, 682, 70, 903, 692, 1588, + 1643, 1588, 429, 960, 937, 96, 97, 98, 1410, 1284, + 1508, 887, 962, 916, 668, 768, 1588, 1622, 1588, 1587, + 868, 1528, 1527, 1514, 429, 1232, 94, 875, 876, 877, + 683, 684, 685, 686, 687, 688, 689, 682, 1511, 429, + 692, 1599, 981, 984, 970, 918, 896, 915, 994, 1457, + 1456, 900, 901, 902, 1063, 904, 905, 447, 448, 94, + 94, 938, 1453, 1454, 1453, 1452, 429, 971, 910, 911, + 1024, 429, 1036, 429, 72, 1063, 31, 31, 94, 972, + 1455, 976, 668, 429, 720, 306, 1036, 1006, 94, 814, + 813, 1036, 306, 1399, 306, 1035, 1410, 1018, 963, 964, + 1232, 1239, 306, 306, 306, 1025, 1285, 970, 973, 1070, + 94, 1212, 1211, 94, 1064, 422, 1066, 1024, 1062, 1002, + 1003, 1014, 1240, 1568, 94, 94, 455, 885, 799, 455, + 1030, 1345, 1024, 61, 1051, 1064, 1708, 1062, 1036, 1680, + 1082, 1546, 972, 61, 61, 1027, 378, 377, 380, 381, + 382, 383, 1031, 1026, 1034, 379, 384, 1106, 1519, 1127, + 31, 1410, 1443, 866, 1059, 1028, 1547, 1024, 1414, 1415, + 1096, 1289, 1123, 1117, 1116, 1113, 1114, 1115, 1133, 1704, + 306, 94, 61, 94, 1445, 1152, 1417, 1069, 1068, 306, + 306, 306, 306, 306, 1399, 1060, 306, 306, 1065, 1317, + 306, 94, 706, 707, 708, 709, 710, 711, 712, 713, + 714, 715, 1128, 919, 889, 1085, 1420, 1256, 306, 1419, + 1253, 1129, 1257, 1254, 306, 306, 306, 61, 1255, 1252, + 306, 94, 1041, 1044, 1045, 1046, 1042, 1684, 1043, 1047, + 1134, 1666, 1414, 1415, 1258, 1391, 1045, 1046, 1221, 1154, + 1155, 1156, 1157, 1158, 1166, 767, 1161, 1162, 1170, 1682, + 1163, 1124, 1125, 1107, 1108, 1109, 1110, 1230, 1229, 937, + 1041, 1044, 1045, 1046, 1042, 1655, 1043, 1047, 1165, 1118, + 1119, 1120, 1121, 435, 1652, 1686, 1169, 1670, 1672, 1678, + 1171, 1219, 1677, 1618, 1616, 418, 760, 436, 1135, 1220, + 1137, 989, 1307, 812, 619, 977, 978, 1190, 761, 983, + 986, 987, 1299, 1637, 1636, 990, 1566, 1297, 1164, 771, + 772, 438, 1291, 437, 1506, 1176, 938, 1542, 1009, 1136, + 888, 1049, 423, 424, 1001, 1228, 306, 1004, 1005, 426, + 417, 1691, 1690, 1227, 1675, 1656, 1505, 306, 306, 306, + 306, 306, 1246, 427, 420, 1189, 72, 1504, 1218, 306, + 1200, 1394, 1232, 306, 649, 1197, 1494, 306, 1710, 1709, + 1225, 1205, 306, 306, 435, 1241, 306, 306, 306, 781, + 95, 774, 1710, 1619, 307, 1534, 1010, 307, 436, 1283, + 422, 94, 95, 1224, 307, 1263, 70, 75, 67, 1, + 1290, 1233, 328, 1286, 1295, 1295, 1237, 1082, 1702, 1235, + 432, 433, 438, 1469, 437, 1248, 1249, 1234, 1251, 1543, + 1247, 1259, 95, 1250, 1142, 95, 307, 1638, 307, 895, + 1278, 1270, 1269, 1273, 1581, 1436, 1275, 1499, 1088, 1079, + 83, 582, 82, 1296, 94, 94, 1306, 1629, 1308, 1309, + 1310, 633, 1087, 1272, 1304, 1305, 1086, 1274, 1288, 1292, + 1293, 681, 680, 690, 691, 683, 684, 685, 686, 687, + 688, 689, 682, 1589, 94, 692, 1313, 1301, 681, 680, 690, 691, 683, 684, 685, 686, 687, 688, 689, 682, - 0, 0, 692, 681, 680, 690, 691, 683, 684, 685, - 686, 687, 688, 689, 682, 0, 0, 692, 681, 680, + 1103, 1532, 692, 1336, 1444, 1298, 1634, 820, 818, 94, + 819, 817, 1320, 822, 821, 960, 816, 321, 920, 338, + 1048, 808, 1132, 935, 775, 1360, 944, 945, 946, 947, + 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, + 958, 86, 1338, 1337, 1351, 1138, 1385, 306, 1352, 1458, + 1100, 1375, 1362, 1353, 318, 644, 323, 94, 1374, 291, + 1361, 1185, 1186, 94, 94, 1359, 1246, 1400, 700, 971, + 1226, 1279, 1319, 1360, 1381, 456, 449, 1405, 1397, 1403, + 1676, 972, 1203, 998, 1653, 1651, 1615, 1562, 1654, 94, + 1613, 1685, 306, 1669, 1008, 1015, 763, 1503, 1393, 1204, + 729, 1350, 991, 790, 997, 1418, 94, 1392, 94, 361, + 94, 930, 376, 1295, 1295, 373, 374, 1019, 1238, 1425, + 1435, 674, 1082, 359, 1082, 353, 789, 782, 1450, 1409, + 1040, 1038, 1037, 795, 1416, 1434, 1412, 788, 306, 1439, + 1023, 431, 988, 307, 1607, 1496, 430, 53, 307, 1448, + 1449, 1441, 1442, 34, 307, 1426, 1096, 1428, 306, 1429, + 307, 343, 657, 439, 94, 28, 1470, 94, 94, 94, + 306, 95, 23, 1427, 22, 390, 30, 21, 428, 20, + 95, 680, 690, 691, 683, 684, 685, 686, 687, 688, + 689, 682, 95, 95, 692, 1462, 19, 25, 1461, 18, + 17, 16, 1479, 1475, 1476, 607, 30, 38, 27, 26, + 1463, 15, 1465, 14, 13, 12, 11, 10, 1464, 9, + 5, 4, 660, 24, 718, 2, 1484, 0, 0, 0, + 1474, 0, 0, 0, 0, 0, 0, 1246, 0, 0, + 0, 0, 0, 0, 1507, 421, 1502, 0, 0, 0, + 0, 0, 0, 1516, 0, 94, 0, 0, 0, 0, + 0, 0, 0, 0, 94, 0, 0, 1286, 0, 0, + 0, 1082, 0, 0, 0, 0, 0, 0, 0, 0, + 1515, 0, 94, 0, 0, 0, 0, 0, 0, 94, + 1177, 1178, 1179, 95, 0, 0, 307, 1525, 307, 307, + 0, 95, 0, 1550, 0, 1545, 0, 95, 0, 1535, + 0, 1537, 1526, 0, 1481, 1482, 0, 1483, 0, 0, + 1485, 0, 1487, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 94, 94, 0, 94, 0, 1556, 0, 1549, + 94, 1548, 94, 94, 94, 306, 0, 1403, 1574, 94, + 1575, 1577, 1578, 1565, 1567, 0, 1573, 0, 1560, 0, + 0, 0, 0, 1569, 0, 0, 1580, 94, 306, 0, + 1586, 1579, 0, 0, 1593, 1601, 0, 0, 0, 0, + 1594, 0, 1595, 0, 0, 0, 0, 0, 1529, 690, + 691, 683, 684, 685, 686, 687, 688, 689, 682, 1541, + 0, 692, 0, 0, 1628, 0, 1620, 1403, 0, 94, + 0, 0, 0, 0, 1626, 1627, 0, 0, 0, 0, + 94, 94, 0, 0, 0, 0, 0, 0, 1602, 0, + 0, 0, 0, 1642, 307, 1641, 1545, 1082, 0, 0, + 0, 0, 94, 95, 1648, 0, 1246, 1657, 307, 307, + 95, 95, 95, 306, 0, 0, 307, 0, 0, 0, + 307, 94, 0, 307, 0, 0, 0, 307, 1665, 95, + 0, 0, 0, 0, 95, 95, 95, 307, 95, 95, + 0, 1674, 1673, 0, 0, 0, 0, 0, 1683, 1681, + 0, 95, 95, 0, 0, 0, 638, 0, 0, 0, + 0, 94, 0, 0, 0, 638, 1493, 0, 0, 1692, + 0, 0, 0, 1660, 0, 0, 0, 0, 0, 30, + 0, 0, 0, 0, 1707, 0, 0, 0, 0, 0, + 1355, 1356, 701, 703, 1718, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1376, 1377, 0, 1378, 1379, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1386, 1387, 0, 716, 0, 0, 95, 721, 722, 723, + 724, 725, 726, 727, 728, 0, 731, 734, 734, 734, + 740, 734, 734, 740, 734, 748, 749, 750, 751, 752, + 753, 754, 0, 0, 0, 0, 0, 30, 0, 95, + 95, 681, 680, 690, 691, 683, 684, 685, 686, 687, + 688, 689, 682, 0, 0, 692, 0, 0, 95, 0, + 0, 0, 0, 791, 0, 307, 0, 0, 95, 0, + 0, 0, 307, 0, 307, 0, 0, 0, 0, 0, + 0, 0, 307, 307, 307, 0, 0, 0, 1446, 0, + 95, 0, 0, 95, 0, 0, 0, 0, 442, 676, + 0, 679, 0, 0, 95, 95, 0, 693, 694, 695, + 696, 697, 698, 699, 387, 677, 678, 675, 681, 680, 690, 691, 683, 684, 685, 686, 687, 688, 689, 682, - 0, 0, 692, 0, 0, 0, 0, 638, 1528, 0, - 0, 355, 0, 0, 1491, 0, 638, 0, 0, 0, - 0, 1206, 307, 0, 0, 0, 0, 0, 0, 0, - 30, 0, 0, 307, 307, 307, 307, 307, 0, 0, - 1221, 1222, 765, 701, 703, 307, 0, 0, 0, 307, - 0, 0, 0, 307, 0, 0, 0, 0, 307, 307, - 0, 0, 307, 307, 307, 1490, 0, 0, 0, 0, - 0, 0, 0, 0, 716, 0, 0, 95, 721, 722, - 723, 724, 725, 726, 727, 728, 0, 731, 734, 734, - 734, 740, 734, 734, 740, 734, 748, 749, 750, 751, - 752, 753, 754, 0, 0, 0, 0, 0, 30, 681, - 680, 690, 691, 683, 684, 685, 686, 687, 688, 689, - 682, 0, 0, 692, 0, 0, 0, 0, 0, 95, - 95, 0, 0, 0, 791, 0, 0, 0, 0, 0, - 0, 974, 975, 0, 0, 0, 0, 0, 0, 387, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, - 681, 680, 690, 691, 683, 684, 685, 686, 687, 688, - 689, 682, 0, 0, 692, 0, 0, 0, 0, 0, - 1007, 0, 1353, 0, 95, 0, 0, 0, 0, 93, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 340, 681, 680, 690, 691, 683, 684, 685, 686, + 0, 0, 692, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1477, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 93, 0, 0, 0, 352, 0, + 307, 95, 0, 95, 0, 0, 340, 0, 0, 307, + 307, 307, 307, 307, 0, 0, 307, 307, 0, 0, + 307, 95, 0, 681, 680, 690, 691, 683, 684, 685, + 686, 687, 688, 689, 682, 0, 457, 692, 307, 586, + 0, 1354, 0, 0, 307, 307, 307, 0, 638, 1492, + 307, 95, 0, 0, 0, 638, 638, 638, 0, 0, + 0, 681, 680, 690, 691, 683, 684, 685, 686, 687, + 688, 689, 682, 0, 638, 692, 0, 0, 0, 638, + 638, 638, 0, 638, 638, 1182, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 638, 638, 0, 0, + 0, 0, 0, 974, 975, 681, 680, 690, 691, 683, + 684, 685, 686, 687, 688, 689, 682, 1491, 0, 692, + 1551, 1552, 1553, 1554, 1555, 0, 0, 0, 1558, 1559, + 0, 96, 97, 98, 0, 0, 0, 0, 0, 0, + 0, 0, 1007, 0, 681, 680, 690, 691, 683, 684, + 685, 686, 687, 688, 689, 682, 307, 0, 692, 0, + 0, 0, 0, 0, 0, 0, 0, 307, 307, 307, + 307, 307, 0, 0, 0, 0, 0, 0, 0, 307, + 0, 0, 0, 307, 0, 310, 0, 307, 0, 0, + 0, 0, 307, 307, 313, 0, 307, 307, 307, 0, + 0, 0, 322, 0, 0, 0, 0, 0, 0, 0, + 0, 95, 681, 680, 690, 691, 683, 684, 685, 686, 687, 688, 689, 682, 0, 0, 692, 0, 0, 0, - 1181, 0, 307, 0, 0, 0, 0, 0, 0, 0, - 0, 457, 95, 1382, 586, 0, 0, 0, 95, 95, - 681, 680, 690, 691, 683, 684, 685, 686, 687, 688, - 689, 682, 0, 0, 692, 0, 0, 0, 0, 1394, - 0, 0, 0, 0, 95, 0, 0, 307, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 638, - 0, 95, 0, 95, 0, 95, 638, 638, 638, 681, - 680, 690, 691, 683, 684, 685, 686, 687, 688, 689, - 682, 0, 0, 692, 0, 638, 0, 0, 0, 0, - 638, 638, 638, 307, 638, 638, 680, 690, 691, 683, - 684, 685, 686, 687, 688, 689, 682, 638, 638, 692, - 0, 0, 0, 307, 0, 0, 0, 0, 0, 95, - 0, 0, 95, 95, 95, 307, 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, 706, 707, 708, 709, 710, - 711, 712, 713, 714, 715, 1182, 0, 0, 0, 1183, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1190, 1191, 0, 0, 0, 0, 1197, 0, 0, 1200, - 1201, 1497, 0, 0, 0, 0, 0, 1207, 0, 0, - 0, 1209, 0, 0, 1212, 1213, 1214, 1215, 1216, 0, - 95, 352, 0, 0, 0, 0, 0, 0, 1516, 95, - 0, 1517, 0, 0, 1519, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 95, 0, 0, - 0, 0, 0, 0, 95, 0, 0, 0, 0, 0, - 457, 0, 0, 1260, 1261, 0, 0, 0, 1052, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 656, 658, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 95, 95, 0, - 95, 0, 0, 0, 0, 95, 0, 95, 95, 95, - 307, 0, 0, 0, 95, 0, 0, 0, 0, 0, - 0, 1563, 352, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 95, 307, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 638, 0, 638, + 0, 0, 0, 0, 0, 0, 320, 0, 0, 0, + 0, 0, 327, 0, 0, 0, 0, 1052, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 95, 95, 0, 0, 0, 0, + 0, 0, 311, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 0, 457, 0, 0, 0, 0, 0, + 0, 0, 0, 673, 95, 0, 656, 658, 0, 324, + 314, 0, 325, 326, 333, 0, 0, 0, 317, 319, + 330, 315, 316, 335, 334, 0, 312, 332, 331, 95, + 0, 0, 0, 0, 0, 0, 638, 0, 638, 352, + 0, 0, 0, 0, 1711, 0, 0, 0, 730, 0, + 0, 0, 0, 0, 0, 0, 638, 1183, 0, 0, + 0, 1184, 0, 0, 0, 0, 0, 307, 0, 0, + 0, 0, 1191, 1192, 0, 762, 765, 95, 1198, 0, + 0, 1201, 1202, 95, 95, 0, 0, 0, 0, 1208, + 0, 0, 0, 1210, 0, 0, 1213, 1214, 1215, 1216, + 1217, 0, 0, 0, 0, 0, 0, 778, 0, 95, + 0, 0, 307, 0, 0, 457, 0, 0, 0, 0, + 0, 809, 0, 0, 0, 0, 95, 0, 95, 0, + 95, 0, 0, 0, 0, 0, 1187, 0, 0, 421, + 0, 0, 0, 0, 0, 1261, 1262, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 307, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 307, 0, + 0, 0, 0, 0, 95, 0, 0, 95, 95, 95, + 307, 791, 0, 0, 0, 0, 0, 0, 1242, 1243, + 0, 0, 791, 791, 791, 791, 791, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1052, 0, + 1268, 0, 0, 0, 0, 0, 0, 791, 0, 0, + 0, 791, 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, 457, 0, 0, + 0, 0, 0, 0, 457, 457, 457, 0, 0, 0, + 0, 899, 0, 0, 0, 95, 0, 0, 0, 0, + 1357, 1358, 0, 457, 95, 0, 0, 0, 457, 457, + 457, 0, 457, 457, 0, 0, 0, 0, 917, 0, + 638, 0, 95, 0, 0, 457, 457, 0, 0, 95, + 0, 0, 0, 0, 0, 0, 0, 926, 927, 928, + 929, 0, 0, 0, 0, 0, 0, 0, 0, 638, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 95, 95, 0, 95, 0, 0, 1421, 0, + 95, 0, 95, 95, 95, 307, 0, 0, 0, 95, + 0, 0, 979, 980, 0, 0, 0, 0, 0, 0, + 965, 0, 457, 0, 0, 0, 0, 95, 307, 0, + 31, 32, 33, 62, 35, 36, 995, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1404, 0, 30, 0, + 66, 0, 0, 999, 1000, 37, 56, 57, 0, 59, + 0, 0, 0, 0, 60, 0, 0, 0, 0, 95, + 0, 0, 1020, 0, 0, 0, 0, 791, 0, 0, + 95, 95, 778, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 46, 1478, 0, 1076, 61, 1480, 0, + 0, 0, 95, 0, 457, 0, 0, 457, 0, 1489, + 1490, 0, 0, 307, 0, 0, 0, 0, 457, 586, + 0, 95, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1509, + 1510, 0, 1513, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1131, 0, 388, 0, 0, + 1524, 95, 0, 39, 40, 42, 41, 44, 0, 58, + 0, 0, 0, 0, 0, 457, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 1495, 0, 0, 0, + 0, 0, 45, 65, 64, 457, 0, 54, 55, 43, + 0, 305, 0, 0, 336, 0, 0, 0, 0, 0, + 0, 305, 0, 47, 48, 0, 49, 50, 51, 52, + 0, 0, 0, 0, 0, 1172, 0, 0, 1521, 1522, + 1523, 0, 0, 0, 443, 443, 0, 0, 0, 0, + 0, 0, 0, 305, 0, 305, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1576, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 638, 0, 0, - 0, 0, 0, 0, 95, 0, 0, 0, 0, 0, - 0, 0, 778, 0, 0, 95, 95, 0, 0, 0, - 457, 0, 0, 0, 0, 0, 809, 1356, 1357, 0, - 0, 0, 0, 0, 0, 0, 0, 95, 0, 0, - 31, 32, 33, 62, 35, 36, 0, 0, 307, 0, - 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, - 66, 0, 0, 0, 0, 37, 56, 57, 0, 59, - 0, 0, 0, 0, 60, 0, 0, 1186, 0, 0, - 421, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, - 0, 0, 0, 46, 0, 1420, 935, 61, 0, 944, - 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, - 955, 956, 957, 958, 0, 0, 0, 0, 0, 0, - 0, 0, 791, 0, 0, 0, 0, 0, 0, 1241, - 1242, 0, 0, 791, 791, 791, 791, 791, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1052, - 0, 1267, 457, 0, 0, 0, 998, 0, 791, 457, - 457, 457, 791, 39, 40, 42, 41, 44, 0, 58, - 0, 0, 0, 0, 0, 0, 0, 0, 457, 0, - 0, 0, 0, 457, 457, 457, 0, 457, 457, 0, - 0, 1477, 45, 65, 64, 1479, 0, 54, 55, 43, - 457, 457, 0, 0, 0, 0, 1488, 1489, 0, 0, - 0, 0, 0, 47, 48, 0, 49, 50, 51, 52, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 638, 0, 0, 0, 0, 0, 1508, 1509, 0, 1512, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1523, 0, 638, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 965, 0, 457, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 995, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 63, 0, 999, 1000, - 0, 0, 0, 0, 0, 0, 96, 97, 98, 0, - 0, 0, 0, 0, 0, 0, 0, 1020, 0, 0, - 0, 0, 0, 0, 0, 0, 1403, 778, 30, 0, - 457, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1575, 0, 0, 0, 0, 0, 457, - 0, 0, 457, 1176, 1177, 1178, 0, 791, 388, 0, - 310, 0, 0, 457, 586, 0, 0, 0, 0, 313, - 0, 0, 0, 1602, 1603, 1604, 1605, 322, 1609, 0, - 1610, 1611, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1622, 0, 1623, - 1624, 0, 305, 0, 0, 336, 0, 0, 0, 0, - 0, 320, 305, 0, 0, 0, 0, 327, 0, 0, - 457, 0, 457, 0, 0, 0, 0, 0, 0, 1643, - 0, 0, 0, 0, 0, 443, 443, 0, 0, 0, - 457, 0, 0, 0, 305, 0, 305, 311, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1661, 0, 0, 0, 0, 0, 1494, 0, 0, 0, - 1171, 0, 0, 0, 324, 314, 0, 325, 326, 333, - 0, 0, 0, 317, 319, 330, 315, 316, 335, 334, - 0, 312, 332, 331, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1520, 1521, - 1522, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1718, 1719, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 638, 0, 0, + 0, 0, 1207, 0, 0, 0, 1603, 1604, 1605, 1606, + 0, 1610, 0, 1611, 1612, 0, 0, 0, 0, 0, + 0, 1222, 1223, 765, 0, 0, 63, 0, 0, 0, + 1623, 0, 1624, 1625, 1404, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 995, 0, 1644, 0, 0, 0, 0, 0, 1598, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 995, 0, 0, 0, 0, - 0, 0, 1354, 1355, 1403, 0, 30, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1375, 1376, 0, - 1377, 1378, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1385, 1386, 0, 0, 0, 0, 1597, 0, - 457, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 305, 0, 0, 1403, 0, 305, 0, 0, 0, - 0, 0, 305, 0, 0, 0, 0, 0, 305, 0, + 0, 0, 0, 1662, 1404, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1317, 457, 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, - 1445, 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1318, 457, + 0, 0, 0, 0, 0, 0, 1719, 1720, 0, 0, + 305, 0, 0, 0, 0, 305, 0, 0, 0, 0, + 0, 305, 0, 0, 0, 0, 0, 305, 457, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 457, 0, - 0, 0, 0, 0, 0, 1476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 457, 1704, 0, 995, 0, - 443, 1405, 1407, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 305, 0, 305, 798, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1407, 0, 0, + 0, 0, 0, 457, 0, 1383, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1705, 0, 0, 0, + 0, 0, 0, 0, 457, 0, 0, 0, 0, 0, + 0, 1395, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 457, 0, 457, 0, 1437, 0, + 0, 457, 0, 0, 995, 0, 0, 1406, 1408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1408, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 443, + 457, 0, 457, 0, 1438, 0, 0, 0, 0, 0, + 0, 0, 0, 305, 0, 305, 798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1465, 0, 0, 1470, 1471, 1472, 0, 0, - 0, 0, 1550, 1551, 1552, 1553, 1554, 0, 0, 0, - 1557, 1558, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1466, 0, + 0, 1471, 1472, 1473, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1498, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 305, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 305, 305, 0, 995, - 0, 0, 0, 0, 305, 0, 0, 0, 305, 0, - 0, 305, 0, 0, 0, 894, 0, 0, 0, 0, - 0, 0, 0, 457, 0, 305, 0, 0, 0, 0, - 0, 0, 1530, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 352, 0, 0, 0, 0, 0, 0, + 1517, 0, 0, 1518, 0, 0, 1520, 0, 0, 0, + 0, 0, 0, 0, 0, 995, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 457, 0, 0, 0, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 457, + 0, 305, 0, 0, 0, 0, 0, 0, 1531, 0, + 0, 0, 0, 0, 0, 305, 305, 0, 0, 0, + 0, 0, 0, 305, 0, 0, 457, 305, 0, 0, + 305, 0, 0, 457, 894, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 305, 0, 0, 0, 0, 0, + 0, 0, 0, 1564, 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1570, 1571, 0, 1572, + 0, 0, 0, 0, 1531, 0, 1531, 1531, 1531, 0, + 0, 0, 0, 1438, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1531, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 443, 894, 0, 0, 0, 443, + 443, 0, 0, 443, 443, 443, 0, 0, 0, 996, + 0, 0, 0, 1633, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 457, 457, 0, 0, 443, 443, + 443, 443, 443, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 995, 0, 1658, 0, 0, 0, + 0, 0, 305, 0, 0, 0, 0, 0, 894, 305, + 0, 305, 0, 0, 0, 1664, 0, 0, 0, 305, + 1057, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1569, 1570, 0, 1571, 0, 0, 0, 0, 1530, 0, - 1530, 1530, 1530, 0, 0, 443, 894, 1437, 0, 0, - 443, 443, 0, 0, 443, 443, 443, 0, 0, 0, - 996, 0, 0, 0, 0, 1530, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 443, - 443, 443, 443, 443, 0, 0, 1710, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 305, 0, 0, 0, 1632, 0, 894, - 305, 0, 305, 0, 0, 0, 0, 0, 457, 457, - 305, 1057, 305, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 995, 0, - 1657, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1663, + 0, 0, 0, 0, 0, 1531, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 305, 1530, - 0, 0, 0, 0, 0, 0, 0, 305, 305, 305, - 305, 305, 0, 0, 305, 305, 0, 0, 305, 0, + 0, 0, 0, 0, 0, 0, 0, 305, 0, 0, + 0, 0, 0, 0, 0, 0, 305, 305, 305, 305, + 305, 0, 0, 305, 305, 0, 0, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 305, 0, 0, 0, - 0, 0, 1166, 1167, 305, 0, 0, 0, 305, 0, + 0, 0, 0, 0, 0, 305, 0, 0, 0, 0, + 0, 1167, 1168, 305, 0, 0, 0, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 443, 443, 0, 0, + 0, 0, 0, 0, 0, 443, 443, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 443, 0, 0, + 0, 0, 0, 0, 0, 0, 443, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 443, 305, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 996, 305, 305, 305, 305, 305, - 0, 0, 0, 0, 0, 0, 0, 1259, 0, 0, - 0, 305, 0, 0, 0, 1057, 0, 0, 0, 0, - 305, 305, 0, 0, 305, 1275, 894, 0, 0, 0, + 0, 0, 443, 305, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 996, 305, 305, 305, 305, 305, 0, + 0, 0, 0, 0, 0, 0, 1260, 0, 0, 0, + 305, 0, 0, 0, 1057, 0, 0, 0, 0, 305, + 305, 0, 0, 305, 1276, 894, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1385,7 +1382,7 @@ var yyAct = [...]int{ 533, 572, 501, 541, 573, 0, 0, 996, 96, 97, 98, 0, 1083, 1084, 0, 0, 0, 0, 0, 118, 305, 538, 567, 498, 540, 542, 581, 464, 535, 0, - 468, 471, 578, 563, 493, 494, 1286, 0, 0, 0, + 468, 471, 578, 563, 493, 494, 1287, 0, 0, 0, 0, 0, 0, 515, 524, 550, 509, 0, 0, 0, 0, 0, 0, 0, 0, 491, 0, 532, 0, 0, 0, 472, 469, 0, 0, 0, 0, 513, 0, 0, @@ -1500,7 +1497,7 @@ var yyAct = [...]int{ 0, 0, 0, 118, 0, 538, 567, 498, 540, 542, 581, 464, 535, 0, 468, 471, 578, 563, 493, 494, 0, 0, 0, 0, 0, 0, 0, 515, 524, 550, - 509, 0, 0, 0, 0, 0, 0, 1395, 0, 491, + 509, 0, 0, 0, 0, 0, 0, 1396, 0, 491, 0, 532, 0, 0, 0, 472, 469, 0, 0, 0, 0, 513, 0, 0, 0, 474, 0, 492, 551, 0, 462, 142, 555, 562, 510, 308, 566, 508, 507, 569, @@ -1538,7 +1535,7 @@ var yyAct = [...]int{ 0, 118, 0, 538, 567, 498, 540, 542, 581, 464, 535, 0, 468, 471, 578, 563, 493, 494, 0, 0, 0, 0, 0, 0, 0, 515, 524, 550, 509, 0, - 0, 0, 0, 0, 0, 1276, 0, 491, 0, 532, + 0, 0, 0, 0, 0, 1277, 0, 491, 0, 532, 0, 0, 0, 472, 469, 0, 0, 0, 0, 513, 0, 0, 0, 474, 0, 492, 551, 0, 462, 142, 555, 562, 510, 308, 566, 508, 507, 569, 216, 0, @@ -2061,7 +2058,7 @@ var yyAct = [...]int{ 0, 0, 0, 0, 0, 0, 0, 0, 142, 413, 0, 0, 308, 0, 0, 411, 0, 216, 0, 249, 146, 162, 114, 159, 100, 110, 0, 144, 192, 224, - 228, 0, 0, 0, 124, 0, 226, 203, 268, 1711, + 228, 0, 0, 0, 124, 0, 226, 203, 268, 1712, 206, 225, 167, 257, 217, 267, 277, 278, 253, 275, 286, 242, 103, 251, 265, 119, 236, 0, 0, 0, 105, 263, 248, 181, 156, 157, 104, 0, 222, 129, @@ -2889,16 +2886,16 @@ var yyAct = [...]int{ } var yyPact = [...]int{ - 2394, -1000, -289, 1104, -1000, -1000, -1000, -1000, -1000, -1000, + 2574, -1000, -288, 1081, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 1055, - 839, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 289, 12793, - -39, 142, -13, 18637, 141, 2610, 19001, -1000, 26, -1000, - 18, 19001, 22, 18273, -1000, -1000, -75, -76, -1000, 10609, - 940, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 815, - 1029, 1034, 1047, 617, 1120, -1000, 9140, 9140, 119, 119, - 119, 7684, -1000, -1000, 15354, 19001, 139, 19001, -159, 116, - 116, 116, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 1030, + 844, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 259, 12763, + -33, 139, 10, 18607, 138, 1955, 18971, -1000, 26, -1000, + 13, 18971, 22, 18243, -1000, -1000, -68, -110, -1000, 10579, + 946, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 799, + 1001, 1011, 1026, 681, 1042, -1000, 9110, 9110, 106, 106, + 106, 7654, -1000, -1000, 15324, 18971, 133, 18971, -155, 112, + 112, 112, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, @@ -2918,24 +2915,24 @@ var yyPact = [...]int{ -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, 133, 19001, 567, 567, 226, 529, 19001, 92, 567, - 92, 92, 92, 19001, -1000, 183, -1000, -1000, -1000, 19001, - 567, 952, 350, 101, 229, 229, 229, -1000, 209, -1000, - 5038, 34, 38, -48, 1064, 36, -15, -1000, 350, 5038, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 127, -1000, - -1000, 19001, 17909, 132, 255, -1000, -1000, -1000, -1000, -1000, - -1000, 620, 398, -1000, 10609, 1623, 763, 763, -1000, -1000, - 164, -1000, -1000, 11701, 11701, 11701, 11701, 11701, 11701, 11701, - 11701, 11701, 11701, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 763, 182, -1000, - 10245, 763, 763, 763, 763, 763, 763, 763, 763, 10609, - 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, - 763, 763, 763, 763, 763, 763, -1000, -1000, -1000, 1055, - -1000, 839, -1000, -1000, -1000, 995, 10609, 10609, 1055, -1000, - 899, 9140, -1000, -1000, 1079, -1000, -1000, -1000, -1000, 326, - 1081, -1000, 12429, 181, 1080, 17545, -1000, 16082, 17181, 759, - 7306, -127, -1000, -1000, -1000, 254, 14990, -1000, -1000, -1000, - 950, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 136, 18971, 505, 505, 218, 542, 18971, 111, 505, + 111, 111, 111, 18971, -1000, 184, -1000, -1000, -1000, 18971, + 505, 963, 327, 61, 229, 229, 229, -1000, 206, -1000, + 5008, 34, 37, -53, 1041, 35, -23, -1000, 327, 5008, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 121, -1000, + -1000, 18971, 17879, 156, 270, -1000, -1000, -1000, -1000, -1000, + -1000, 630, 397, -1000, 10579, 1743, 750, 750, -1000, -1000, + 154, -1000, -1000, 11671, 11671, 11671, 11671, 11671, 11671, 11671, + 11671, 11671, 11671, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 750, 182, -1000, + 10215, 750, 750, 750, 750, 750, 750, 750, 750, 10579, + 750, 750, 750, 750, 750, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 750, 750, -1000, -1000, -1000, 1030, + -1000, 844, -1000, -1000, -1000, 966, 10579, 10579, 1030, -1000, + 891, 9110, -1000, -1000, 951, -1000, -1000, -1000, -1000, 306, + 1059, -1000, 12399, 176, 1057, 17515, -1000, 16052, 17151, 744, + 7276, -70, -1000, -1000, -1000, 265, 14960, -1000, -1000, -1000, + 962, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, @@ -2947,148 +2944,148 @@ var yyPact = [...]int{ -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, 711, 19001, -1000, -1000, 330, 567, -1000, 787, - -1000, 567, 5038, 130, 567, 277, 567, 19001, 19001, 5038, - 5038, 5038, 42, 80, 71, 19001, 527, 757, 125, 19001, - 1019, 847, 19001, 567, 567, -1000, 6550, -1000, 5038, 350, - -1000, 516, 10609, 5038, 5038, 5038, 19001, 5038, 5038, -1000, - 514, -1000, -1000, 341, -1000, -1000, -1000, -1000, -1000, -1000, - 5038, 5038, 314, 341, 314, -1000, -1000, -1000, -1000, 10609, - 229, -1000, 846, -1000, -1000, 21, -1000, -1000, -1000, -1000, - -1000, 1104, -1000, -1000, -1000, -136, -1000, -1000, 10609, 10609, - 10609, 10609, 490, 233, 11701, 504, 234, 11701, 11701, 11701, - 11701, 11701, 11701, 11701, 11701, 11701, 11701, 11701, 11701, 11701, - 11701, 11701, 436, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, 567, -1000, 1085, 884, 884, 191, 191, 191, 191, - 191, 191, 191, 191, 191, 12065, 8048, 6550, 617, 698, - 1055, 9140, 9140, 10609, 10609, 9868, 9504, 9140, 986, 264, - 398, 19001, -1000, -1000, 11337, -1000, -1000, -1000, -1000, -1000, - 537, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 19001, 19001, - 9140, 9140, 9140, 9140, 9140, -1000, 1034, 617, 1079, 1008, - 1098, 217, 724, 751, -1000, 695, 1034, 14626, 735, -1000, - 1079, -1000, -1000, -1000, 19001, -1000, -1000, 16810, -1000, -1000, - 6172, 19001, 56, 19001, -1000, 764, 956, -1000, -1000, -1000, - 1024, 13898, 14262, 19001, 767, 755, -1000, -1000, 176, 6928, - -127, -1000, 6928, 725, -1000, -116, -121, 8412, 187, -1000, - -1000, -1000, -1000, 4660, 13157, 555, 313, -57, -1000, -1000, - -1000, 776, -1000, 776, 776, 776, 776, -11, -11, -11, - -11, -1000, -1000, -1000, -1000, -1000, 801, 799, -1000, 776, - 776, 776, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, 705, 18971, -1000, -1000, 341, 505, -1000, 780, + -1000, 505, 5008, 125, 505, 288, 505, 18971, 18971, 5008, + 5008, 5008, 43, 77, 71, 18971, 540, 743, 118, 18971, + 996, 833, 18971, 505, 505, -1000, 6520, -1000, 5008, 327, + -1000, 538, 10579, 5008, 5008, 5008, 18971, 5008, 5008, -1000, + 532, -1000, -1000, 344, -1000, -1000, -1000, -1000, -1000, -1000, + 5008, 5008, 338, 344, 338, -1000, -1000, -1000, -1000, 10579, + 229, -1000, 832, -1000, -1000, 20, -1000, -1000, -1000, -1000, + -1000, 1081, -1000, -1000, -1000, -133, -1000, -1000, 10579, 10579, + 10579, 10579, 547, 233, 11671, 460, 283, 11671, 11671, 11671, + 11671, 11671, 11671, 11671, 11671, 11671, 11671, 11671, 11671, 11671, + 11671, 11671, 584, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 505, -1000, 1074, 757, 757, 194, 194, 194, 194, + 194, 194, 194, 194, 194, 12035, 8018, 6520, 681, 698, + 1030, 9110, 9110, 10579, 10579, 9838, 9474, 9110, 969, 263, + 397, 18971, -1000, -1000, 11307, -1000, -1000, -1000, -1000, -1000, + 393, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 18971, 18971, + 9110, 9110, 9110, 9110, 9110, -1000, 1011, 681, 951, 991, + 1066, 220, 561, 737, -1000, 342, 1011, 14596, 783, -1000, + 951, -1000, -1000, -1000, 18971, -1000, -1000, 16780, -1000, -1000, + 6142, 18971, 60, 18971, -1000, 754, 899, -1000, -1000, -1000, + 998, 13868, 14232, 18971, 753, 732, -1000, -1000, 172, 6898, + -70, -1000, 6898, 725, -1000, -120, -92, 8382, 153, -1000, + -1000, -1000, -1000, 4630, 13127, 590, 366, -41, -1000, -1000, + -1000, 774, -1000, 774, 774, 774, 774, -12, -12, -12, + -12, -1000, -1000, -1000, -1000, -1000, 791, 790, -1000, 774, + 774, 774, 774, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 795, 795, 795, 782, 782, 82, 10609, 822, -1000, 19001, - 5038, 1012, 5038, -1000, 96, -1000, -1000, -1000, 19001, 19001, - 19001, 19001, 19001, 155, -1000, 19001, 19001, 748, -1000, 19001, - 5038, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 398, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 19001, -1000, -1000, - -1000, -1000, 350, 19001, 19001, 19001, 350, 398, -1000, 19001, - 19001, -1000, -1000, -1000, -1000, -1000, 398, 233, 302, 297, - -1000, -1000, 405, -1000, -1000, 1954, -1000, -1000, -1000, -1000, - 504, 11701, 11701, 11701, 300, 1954, 1905, 530, 1980, 191, - 583, 583, 211, 211, 211, 211, 211, 449, 449, -1000, - -1000, -1000, 537, -1000, -1000, -1000, 537, 9140, 9140, 739, - 763, 173, -1000, 815, -1000, -1000, 1034, 670, 670, 604, - 758, 303, 1076, 670, 293, 1066, 670, 670, 9140, -1000, - -1000, 282, -1000, 10609, 537, -1000, 172, -1000, 360, 738, - 734, 670, 537, 537, 670, 670, 995, -1000, -1000, 959, - -1000, 895, 10609, 10609, 10609, -1000, -1000, -1000, 995, 1036, - -1000, 904, 903, 1062, 9140, 16082, 1079, -1000, -1000, -1000, - 171, 1062, 774, 763, -1000, 19001, 16082, 16082, 16082, 16082, - 16082, -1000, 865, 862, -1000, 872, 858, 873, 19001, -1000, - 690, 617, 13898, 185, 763, -1000, 16446, -1000, -1000, 56, - 597, 16082, 19001, -1000, -1000, 16082, 19001, 5794, -1000, 725, - -127, -73, -1000, -1000, -1000, -1000, 398, -1000, 556, 709, - 4282, -1000, -1000, -1000, -1000, 94, -1000, -1000, 790, 567, - -1000, 1003, 252, 247, 567, 1002, -1000, -1000, -1000, -1000, - 977, -1000, 321, -62, -1000, -1000, 389, -11, -11, -1000, - -1000, 187, 949, 187, 187, 187, 507, 507, -1000, -1000, - -1000, -1000, 375, -1000, -1000, -1000, 372, -1000, -1000, 787, - 635, 842, 19001, 5038, -1000, -1000, -1000, -1000, 310, 310, - 243, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, 55, 806, -1000, -1000, -1000, -1000, 12, 41, - 121, -1000, 5038, -1000, 314, -1000, -1000, -1000, 314, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 300, 1954, 1867, -1000, - 11701, 11701, -1000, -1000, 670, 670, 9140, 6550, 1055, 995, - -1000, -1000, 50, 436, 50, 11701, 11701, -1000, 11701, 11701, - -1000, -171, 661, 253, -1000, 10609, 510, -1000, 6550, -1000, - 11701, 11701, -1000, -1000, -1000, -1000, -1000, -1000, 469, 505, - 893, 398, 398, -1000, -1000, 19001, -1000, -1000, -1000, -1000, - 1059, 10609, -1000, 667, -1000, 5416, 1034, 836, 19001, 763, - 1104, 13898, 19001, 645, -1000, 250, 956, 794, 834, 938, - -1000, -1000, -1000, -1000, 861, -1000, 849, -1000, -1000, -1000, - -1000, -1000, 617, -1000, 138, 137, 136, 19001, -1000, 1062, - 16082, 622, -1000, 622, -1000, 170, -1000, -1000, -1000, -142, - -126, -1000, -1000, -1000, 4660, -1000, 4660, -1000, 19001, 75, - -1000, 567, 567, -1000, -1000, -1000, 786, 829, 11701, -1000, - -1000, -1000, 545, 187, 187, -1000, 251, -1000, -1000, -1000, - 665, -1000, 659, 629, 657, 3, 19001, -1000, -1000, -1000, + 789, 789, 789, 776, 776, 94, 10579, 796, -1000, 18971, + 5008, 995, 5008, -1000, 92, -1000, -1000, -1000, 18971, 18971, + 18971, 18971, 18971, 146, -1000, 18971, 18971, 734, -1000, 18971, + 5008, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 397, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 18971, -1000, -1000, + -1000, -1000, 327, 18971, 18971, 18971, 327, 397, -1000, 18971, + 18971, -1000, -1000, -1000, -1000, -1000, 397, 233, 410, 244, + -1000, -1000, 404, -1000, -1000, 1808, -1000, -1000, -1000, -1000, + 460, 11671, 11671, 11671, 301, 1808, 1890, 1452, 1245, 194, + 401, 401, 196, 196, 196, 196, 196, 601, 601, -1000, + -1000, -1000, 393, -1000, -1000, -1000, 393, 9110, 9110, 733, + 750, 171, -1000, 799, -1000, -1000, 1011, 686, 686, 537, + 496, 304, 1043, 686, 294, 1038, 686, 686, 9110, -1000, + -1000, 287, -1000, 10579, 393, -1000, 169, -1000, 359, 728, + 727, 686, 393, 393, 686, 686, 966, -1000, -1000, 944, + -1000, 882, 10579, 10579, 10579, -1000, -1000, -1000, 966, 1013, + -1000, 906, 905, 1039, 9110, 16052, 951, -1000, -1000, -1000, + 163, 1039, 760, 750, -1000, 18971, 16052, 16052, 16052, 16052, + 16052, -1000, 858, 849, -1000, 852, 846, 873, 18971, -1000, + 688, 681, 13868, 186, 750, -1000, 16416, -1000, -1000, 60, + 597, 16052, 18971, -1000, -1000, 16052, 18971, 5764, -1000, 725, + -70, -95, -1000, -1000, -1000, -1000, 397, -1000, 619, 722, + 4252, -1000, -1000, -1000, -1000, 88, -1000, -1000, 788, 505, + -1000, 983, 246, 225, 505, 978, -1000, -1000, -1000, -1000, + 972, -1000, 290, -43, -1000, -1000, 415, -12, -12, -1000, + -1000, 153, 961, 153, 153, 153, 528, 528, -1000, -1000, + -1000, -1000, -1000, 408, -1000, -1000, -1000, 405, -1000, -1000, + 780, 510, 818, 18971, 5008, -1000, -1000, -1000, -1000, 251, + 251, 243, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, 54, 749, -1000, -1000, -1000, -1000, 19, + 42, 115, -1000, 5008, -1000, 338, -1000, -1000, -1000, 338, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 301, 1808, 1846, + -1000, 11671, 11671, -1000, -1000, 686, 686, 9110, 6520, 1030, + 966, -1000, -1000, 105, 584, 105, 11671, 11671, -1000, 11671, + 11671, -1000, -167, 748, 245, -1000, 10579, 552, -1000, 6520, + -1000, 11671, 11671, -1000, -1000, -1000, -1000, -1000, -1000, 480, + 516, 878, 397, 397, -1000, -1000, 18971, -1000, -1000, -1000, + -1000, 1037, 10579, -1000, 707, -1000, 5386, 1011, 813, 18971, + 750, 1081, 13868, 18971, 777, -1000, 261, 899, 787, 805, + 861, -1000, -1000, -1000, -1000, 848, -1000, 845, -1000, -1000, + -1000, -1000, -1000, 681, -1000, 131, 130, 129, 18971, -1000, + 1039, 16052, 702, -1000, 702, -1000, 161, -1000, -1000, -1000, + -138, -129, -1000, -1000, -1000, 4630, -1000, 4630, -1000, 18971, + 80, -1000, 505, 505, -1000, -1000, -1000, 779, 803, 11671, + -1000, -1000, -1000, 582, 153, 153, -1000, 387, -1000, -1000, + -1000, 680, -1000, 678, 696, 665, 6, 18971, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 19001, -1000, -1000, -1000, - -1000, -1000, 19001, -177, 567, 19001, 19001, 19001, 19001, -1000, - 350, 350, -1000, 11701, 1954, 1954, -1000, -1000, 537, -1000, - 1034, -1000, 537, 776, 776, -1000, 776, 782, -1000, 776, - 11, 776, 6, 537, 537, 1825, 1774, 1653, 869, 763, - -166, -1000, 398, 10609, -1000, 1638, 637, 503, -11, -1000, - -1000, -1000, 1057, 1044, 398, -1000, -1000, -1000, 1005, 730, - 609, -1000, -1000, 8776, 652, 167, 648, -1000, 1055, 19001, - 10609, -1000, -1000, 10609, 781, -1000, 10609, -1000, -1000, -1000, - 1055, 763, 763, 763, 648, 1055, 622, -1000, -1000, 201, - -1000, -1000, -1000, 4282, -1000, 643, -1000, 776, -1000, 1002, - -1000, -1000, 19001, -45, 1090, 1954, -1000, -1000, -1000, -1000, - -1000, -11, 502, -11, 369, -1000, 358, -1000, -1000, -228, - 5038, -1000, -1000, -1000, -1000, 1007, -1000, 6550, -1000, -1000, - 775, 813, -1000, -1000, -1000, -1000, 1954, -1000, 995, -1000, - -1000, 134, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 11701, 11701, 11701, 11701, 11701, 1034, 467, 398, 11701, 11701, - -11, -85, -1000, 10609, 10609, 1000, -1000, 763, -1000, 718, - 19001, 19001, -1000, 19001, 1034, -1000, 398, 398, 19001, 398, - 15718, 19001, 19001, 13521, 1034, -1000, 180, 19001, -1000, 639, - -1000, 236, -1000, -89, 187, -1000, 187, 543, 541, -1000, - -1000, 763, 627, -1000, 248, 19001, 19001, -1000, -1000, -1000, - 360, 360, 360, 360, 39, 537, -1000, 360, 360, -283, - -1000, 936, 934, 398, 620, 1088, -1000, 763, 1104, 154, - -1000, -1000, -1000, 616, 613, -1000, 613, 613, 185, -1000, - 180, -1000, 567, 245, 435, -1000, 63, 19001, 291, 999, - -1000, 996, -1000, -1000, -1000, -1000, -1000, 53, 6550, 4660, - 611, -1000, -1000, -1000, -1000, -1000, 537, 52, -182, -1000, - -1000, -1000, -85, 151, -1000, 909, 906, 1042, 19001, 609, - 19001, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 356, -1000, - -1000, 19001, -1000, -1000, 426, -1000, -1000, 607, -1000, 19001, - -1000, -1000, 806, -1000, 883, -175, -186, 921, 924, 924, - 934, 1041, 932, 930, -1000, 417, 563, -1000, -1000, 769, - -1000, -1000, 53, 902, -177, -1000, 878, -1000, 912, 367, - -1000, -1000, -1000, -1000, 410, -1000, 1038, 1037, -1000, 19001, - -1000, 49, -1000, -178, -1000, 340, -1000, -1000, -1000, 408, - 391, 599, 46, -183, -1000, -1000, -1000, -1000, 826, 763, - -188, 825, -1000, 1072, 10973, -1000, -1000, 1074, 218, 218, - 360, 537, -1000, -1000, -1000, 81, 347, -1000, -1000, -1000, - -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 18971, -1000, -1000, + -1000, -1000, -1000, 18971, -174, 505, 18971, 18971, 18971, 18971, + -1000, 327, 327, -1000, 11671, 1808, 1808, -1000, -1000, 393, + -1000, 1011, -1000, 393, 774, 774, -1000, 774, 776, -1000, + 774, 5, 774, 4, 393, 393, 1997, 1929, 1666, 1036, + 750, -162, -1000, 397, 10579, -1000, 1053, 559, 514, -12, + -1000, -1000, -1000, 1032, 1019, 397, -1000, -1000, -1000, 986, + 712, 626, -1000, -1000, 8746, 654, 160, 639, -1000, 1030, + 18971, 10579, -1000, -1000, 10579, 775, -1000, 10579, -1000, -1000, + -1000, 1030, 750, 750, 750, 639, 1030, 702, -1000, -1000, + 205, -1000, -1000, -1000, 4252, -1000, 637, -1000, 774, -1000, + 978, -1000, -1000, 18971, -36, 1065, 1808, -1000, -1000, -1000, + -1000, -1000, -12, 507, -12, 388, -1000, 379, -1000, -1000, + -227, 5008, -1000, -1000, -1000, -1000, 990, -1000, 6520, -1000, + -1000, 758, 784, -1000, -1000, -1000, -1000, 1808, -1000, 966, + -1000, -1000, 135, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 11671, 11671, 11671, 11671, 11671, 1011, 506, 397, 11671, + 11671, -12, -79, -1000, 10579, 10579, 977, -1000, 750, -1000, + 761, 18971, 18971, -1000, 18971, 1011, -1000, 397, 397, 18971, + 397, 15688, 18971, 18971, 13491, 1011, -1000, 180, 18971, -1000, + 634, -1000, 232, -1000, -126, 153, -1000, 153, 577, 548, + -1000, -1000, 750, 657, -1000, 247, 18971, 18971, -1000, -1000, + -1000, 359, 359, 359, 359, 66, 393, -1000, 359, 359, + -281, -1000, 943, 941, 397, 630, 1063, -1000, 750, 1081, + 152, -1000, -1000, -1000, 632, 617, -1000, 617, 617, 186, + -1000, 180, -1000, 505, 241, 499, -1000, 72, 18971, 296, + 975, -1000, 974, -1000, -1000, -1000, -1000, -1000, 53, 6520, + 4630, 615, -1000, -1000, -1000, -1000, -1000, 393, 56, -177, + -1000, -1000, -1000, -79, 158, -1000, 924, 914, 1018, 18971, + 626, 18971, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 378, + -1000, -1000, 18971, -1000, -1000, 478, -1000, -1000, 575, -1000, + 18971, -1000, -1000, 749, -1000, 874, -171, -182, 929, 931, + 931, 941, 1017, 939, 935, -1000, 457, 624, -1000, -1000, + 756, -1000, -1000, 53, 897, -174, -1000, 870, -1000, 926, + 395, -1000, -1000, -1000, -1000, 456, -1000, 1015, 1014, -1000, + 18971, -1000, 49, -1000, -175, -1000, 317, -1000, -1000, -1000, + 455, 318, 565, 47, -178, -1000, -1000, -1000, -1000, 798, + 750, -186, 755, -1000, 1048, 10943, -1000, -1000, 1062, 215, + 215, 359, 393, -1000, -1000, -1000, 84, 426, -1000, -1000, + -1000, -1000, -1000, -1000, } var yyPgo = [...]int{ - 0, 1362, 1359, 32, 70, 71, 1358, 1357, 1356, 1355, - 101, 100, 98, 1354, 1353, 1352, 1351, 1350, 1344, 1342, - 1341, 1340, 1339, 1338, 1336, 1335, 1333, 1332, 1331, 1330, - 1329, 1328, 1327, 1318, 94, 1316, 1315, 1314, 1312, 83, - 1311, 1310, 1308, 1306, 1305, 43, 176, 58, 74, 1304, - 69, 807, 1303, 50, 67, 64, 1301, 34, 1299, 1297, - 90, 1296, 1294, 66, 1286, 1283, 62, 1282, 68, 1281, - 16, 28, 1280, 1279, 1278, 1277, 91, 1791, 1275, 1274, - 21, 1273, 1270, 96, 1269, 73, 29, 14, 19, 22, - 1267, 75, 1266, 10, 1265, 78, 1264, 1263, 1261, 1258, - 27, 1256, 72, 1255, 20, 1254, 4, 11, 1253, 1252, - 1251, 1248, 1247, 1244, 9, 1241, 1240, 1239, 23, 1238, - 18, 63, 41, 26, 7, 1232, 1231, 17, 93, 61, - 76, 1229, 1228, 1223, 510, 1221, 1218, 39, 1217, 103, - 1215, 45, 87, 104, 434, 1214, 1212, 1211, 1210, 1209, - 1205, 53, 776, 1929, 125, 79, 1203, 1200, 1199, 2738, - 51, 65, 24, 1197, 1196, 1193, 49, 38, 56, 452, - 1189, 42, 1186, 1185, 1184, 1183, 1181, 1173, 1171, 350, - 1170, 1169, 1168, 182, 15, 84, 30, 1167, 1164, 1161, - 1160, 48, 77, 1159, 1158, 60, 59, 1157, 81, 31, - 1155, 1154, 1151, 1150, 1149, 37, 8, 1148, 25, 1147, - 13, 1143, 36, 35, 1140, 6, 1136, 12, 1128, 3, - 0, 1124, 5, 55, 1, 1120, 2, 1117, 1113, 1111, - 1466, 1202, 80, 1110, 115, + 0, 1405, 1404, 32, 70, 71, 1403, 1402, 1401, 1400, + 106, 101, 100, 1399, 1397, 1396, 1395, 1394, 1393, 1391, + 1389, 1388, 1387, 1385, 1381, 1380, 1379, 1377, 1376, 1359, + 1357, 1354, 1352, 1345, 97, 1343, 1342, 1341, 1333, 79, + 1327, 1326, 1325, 1324, 1322, 55, 273, 57, 66, 1321, + 72, 1838, 1320, 81, 73, 67, 1317, 34, 1316, 1314, + 91, 1313, 1312, 63, 1311, 1310, 60, 1307, 59, 1306, + 14, 64, 1305, 1303, 1301, 1298, 83, 528, 1297, 1296, + 19, 1295, 1292, 107, 1291, 74, 27, 17, 18, 25, + 1289, 75, 1283, 6, 1282, 69, 1280, 1279, 1278, 1277, + 50, 1276, 68, 1275, 20, 1274, 11, 10, 1273, 1271, + 1270, 1268, 1267, 1266, 9, 1265, 1264, 1260, 41, 1257, + 8, 61, 30, 23, 7, 1256, 1255, 22, 78, 49, + 76, 1251, 1250, 1248, 667, 1239, 1236, 58, 1235, 105, + 1234, 31, 84, 110, 440, 1230, 1229, 1225, 1223, 1222, + 1221, 51, 1030, 1854, 16, 77, 1204, 1202, 1201, 2707, + 39, 65, 26, 1200, 1199, 1198, 53, 117, 43, 534, + 1197, 35, 1196, 1194, 1193, 1191, 1190, 1188, 1187, 129, + 1186, 1185, 1184, 36, 24, 89, 37, 1181, 1180, 1167, + 1163, 48, 90, 1146, 1142, 62, 56, 1141, 93, 38, + 1137, 1132, 1131, 1130, 1129, 29, 12, 1128, 21, 1125, + 13, 1124, 28, 45, 1117, 5, 1114, 15, 1109, 2, + 0, 1103, 4, 42, 3, 1098, 1, 1092, 1089, 1088, + 1355, 1284, 92, 1087, 94, } var yyR1 = [...]int{ @@ -3214,7 +3211,7 @@ var yyR2 = [...]int{ 1, 3, 3, 4, 4, 2, 4, 1, 1, 3, 4, 3, 3, 8, 3, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, - 2, 2, 2, 2, 1, 2, 2, 2, 1, 4, + 2, 2, 2, 2, 1, 2, 2, 2, 2, 4, 4, 2, 2, 3, 3, 3, 3, 1, 1, 1, 1, 1, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 0, 3, 0, 5, 0, 3, @@ -3424,67 +3421,67 @@ var yyChk = [...]int{ -212, 154, 156, 153, -196, 164, -213, 148, 29, 75, -145, 89, 96, -188, 242, -179, 73, -179, -179, -179, -179, -183, 217, -183, -183, -183, 73, 73, -179, -179, - -179, -185, 73, -185, -185, -186, 73, -186, -213, 159, - -51, -157, 72, -66, -167, 24, -167, -147, 144, 141, - 142, -216, 140, 239, 217, 87, 30, 16, 283, 177, - 298, -220, 178, -66, -66, -66, -66, -66, 144, 141, - -66, -66, -66, -167, -66, -141, -159, -159, -66, -141, - -66, -153, 89, 90, 91, -85, -77, -77, -77, -45, - 172, 95, -231, -231, -46, -46, -230, 136, -5, -104, - -231, -231, 74, 72, 23, 12, 12, -231, 12, 12, - -231, -231, -46, -97, -95, 102, -51, -231, 136, -231, - 74, 74, -231, -231, -231, -231, -231, -118, 37, 45, - 56, -51, -51, -102, -118, -132, 20, 12, 52, 52, - -71, 13, -48, -53, -50, 136, -71, -75, 31, 52, - -3, -230, -230, -124, -127, -93, -54, -55, -55, -54, - -55, 61, 61, 61, 66, 61, 66, 61, -63, -159, - -231, -231, -3, -70, 69, 151, 70, -230, -161, -121, - 72, -53, -66, -53, -68, -159, 121, -129, -131, 269, - 266, 272, -220, 80, 74, -206, 104, -195, 73, -220, - 29, -196, -196, -199, -220, -199, 29, -181, 30, 89, - -189, 243, 81, -183, -183, -184, 31, -184, -184, -184, - -191, 80, -191, 81, 81, 75, 71, -153, -167, -166, - -223, 159, 155, 163, 164, 157, 76, 77, 78, 148, - 29, 154, 156, 177, 153, -223, -148, -149, 150, 23, - 148, 29, 177, -222, 72, 183, 239, 183, 150, -167, - -137, -137, -45, 95, -77, -77, -231, -231, -47, -154, - -100, -118, -171, 130, 214, 171, 212, 208, 228, 219, - 241, 210, 242, -168, -171, -77, -77, -77, -77, 292, - -100, 103, -51, 101, -154, -77, -77, 38, 80, 80, - 57, -66, -98, 14, -51, 121, -104, -123, 71, -124, - -87, -89, -88, -230, -119, -153, -122, -153, -71, 74, - 104, -58, -57, 71, 72, -59, 71, -57, 61, 61, - -231, 148, 148, 148, -122, -71, -53, -71, -71, 136, - 266, 270, 271, -205, -206, -209, -208, -153, -212, 164, - -199, -199, 73, -182, 71, -77, 75, -184, -184, -220, - 130, 75, 74, 75, 74, 75, 74, -146, 330, 96, - -66, -166, -166, -66, -166, -153, -219, 295, -221, -220, - -153, -153, -153, -66, -141, -141, -77, -231, -104, -231, - -179, -179, -179, -186, -179, 202, -179, 202, -231, -231, - 20, 20, 20, 20, -230, -42, 288, -51, 74, 74, - 80, -183, -99, 15, 17, 28, -123, 74, -231, -231, - 74, 136, -231, 74, -100, -127, -51, -51, 73, -51, - -230, -230, -230, -231, -100, -71, 75, 74, -179, -120, - -153, -187, 239, 10, -183, 80, -183, 81, 81, 330, - -167, 27, -218, -217, -154, 73, 72, -118, -183, -220, - -77, -77, -77, -77, -77, -104, 80, -77, -77, -183, - -107, -112, -139, -51, -86, 29, -89, 52, -3, -153, - -153, -153, -104, -120, -120, -231, -120, -120, -162, -104, - -211, -210, 72, 158, 87, -208, 75, 74, -190, 154, - 29, 153, -80, -184, -184, 75, 75, -230, 74, 104, - -120, -66, -231, -231, -231, -231, -43, 114, 295, -231, - -231, -231, -110, 380, -113, 41, -114, 42, 10, -87, - 136, 75, -231, -231, -231, -70, -210, -220, -200, 104, - 80, 166, -153, -180, 87, 29, 29, -214, -215, 177, - -217, -206, 75, -231, 293, 68, 296, -107, 46, 220, - -115, 50, -116, -111, 51, 17, -124, -153, 81, -66, - 80, -231, 74, -153, -222, 57, 294, 297, -108, 48, - -106, 47, -106, -114, 17, -117, 43, 44, 80, 73, - -215, 52, -219, 57, -109, 49, 71, 92, 80, 17, - 17, -120, 179, 295, 71, 92, 80, 80, 75, 180, - 296, -225, -226, 71, -230, 297, -226, 71, 11, 10, - -77, 176, -224, 167, 162, 165, 31, -224, -231, -231, - 161, 30, 89, + -179, -179, -185, 73, -185, -185, -186, 73, -186, -213, + 159, -51, -157, 72, -66, -167, 24, -167, -147, 144, + 141, 142, -216, 140, 239, 217, 87, 30, 16, 283, + 177, 298, -220, 178, -66, -66, -66, -66, -66, 144, + 141, -66, -66, -66, -167, -66, -141, -159, -159, -66, + -141, -66, -153, 89, 90, 91, -85, -77, -77, -77, + -45, 172, 95, -231, -231, -46, -46, -230, 136, -5, + -104, -231, -231, 74, 72, 23, 12, 12, -231, 12, + 12, -231, -231, -46, -97, -95, 102, -51, -231, 136, + -231, 74, 74, -231, -231, -231, -231, -231, -118, 37, + 45, 56, -51, -51, -102, -118, -132, 20, 12, 52, + 52, -71, 13, -48, -53, -50, 136, -71, -75, 31, + 52, -3, -230, -230, -124, -127, -93, -54, -55, -55, + -54, -55, 61, 61, 61, 66, 61, 66, 61, -63, + -159, -231, -231, -3, -70, 69, 151, 70, -230, -161, + -121, 72, -53, -66, -53, -68, -159, 121, -129, -131, + 269, 266, 272, -220, 80, 74, -206, 104, -195, 73, + -220, 29, -196, -196, -199, -220, -199, 29, -181, 30, + 89, -189, 243, 81, -183, -183, -184, 31, -184, -184, + -184, -191, 80, -191, 81, 81, 75, 71, -153, -167, + -166, -223, 159, 155, 163, 164, 157, 76, 77, 78, + 148, 29, 154, 156, 177, 153, -223, -148, -149, 150, + 23, 148, 29, 177, -222, 72, 183, 239, 183, 150, + -167, -137, -137, -45, 95, -77, -77, -231, -231, -47, + -154, -100, -118, -171, 130, 214, 171, 212, 208, 228, + 219, 241, 210, 242, -168, -171, -77, -77, -77, -77, + 292, -100, 103, -51, 101, -154, -77, -77, 38, 80, + 80, 57, -66, -98, 14, -51, 121, -104, -123, 71, + -124, -87, -89, -88, -230, -119, -153, -122, -153, -71, + 74, 104, -58, -57, 71, 72, -59, 71, -57, 61, + 61, -231, 148, 148, 148, -122, -71, -53, -71, -71, + 136, 266, 270, 271, -205, -206, -209, -208, -153, -212, + 164, -199, -199, 73, -182, 71, -77, 75, -184, -184, + -220, 130, 75, 74, 75, 74, 75, 74, -146, 330, + 96, -66, -166, -166, -66, -166, -153, -219, 295, -221, + -220, -153, -153, -153, -66, -141, -141, -77, -231, -104, + -231, -179, -179, -179, -186, -179, 202, -179, 202, -231, + -231, 20, 20, 20, 20, -230, -42, 288, -51, 74, + 74, 80, -183, -99, 15, 17, 28, -123, 74, -231, + -231, 74, 136, -231, 74, -100, -127, -51, -51, 73, + -51, -230, -230, -230, -231, -100, -71, 75, 74, -179, + -120, -153, -187, 239, 10, -183, 80, -183, 81, 81, + 330, -167, 27, -218, -217, -154, 73, 72, -118, -183, + -220, -77, -77, -77, -77, -77, -104, 80, -77, -77, + -183, -107, -112, -139, -51, -86, 29, -89, 52, -3, + -153, -153, -153, -104, -120, -120, -231, -120, -120, -162, + -104, -211, -210, 72, 158, 87, -208, 75, 74, -190, + 154, 29, 153, -80, -184, -184, 75, 75, -230, 74, + 104, -120, -66, -231, -231, -231, -231, -43, 114, 295, + -231, -231, -231, -110, 380, -113, 41, -114, 42, 10, + -87, 136, 75, -231, -231, -231, -70, -210, -220, -200, + 104, 80, 166, -153, -180, 87, 29, 29, -214, -215, + 177, -217, -206, 75, -231, 293, 68, 296, -107, 46, + 220, -115, 50, -116, -111, 51, 17, -124, -153, 81, + -66, 80, -231, 74, -153, -222, 57, 294, 297, -108, + 48, -106, 47, -106, -114, 17, -117, 43, 44, 80, + 73, -215, 52, -219, 57, -109, 49, 71, 92, 80, + 17, 17, -120, 179, 295, 71, 92, 80, 80, 75, + 180, 296, -225, -226, 71, -230, 297, -226, 71, 11, + 10, -77, 176, -224, 167, 162, 165, 31, -224, -231, + -231, 161, 30, 89, } var yyDef = [...]int{ @@ -3572,7 +3569,7 @@ var yyDef = [...]int{ 710, 711, 707, 233, 0, 0, 165, 161, 105, 106, 107, 154, 109, 154, 154, 154, 154, 174, 174, 174, 174, 137, 138, 139, 140, 141, 0, 0, 124, 154, - 154, 154, 128, 144, 145, 146, 147, 148, 149, 150, + 154, 154, 154, 144, 145, 146, 147, 148, 149, 150, 151, 110, 111, 112, 113, 114, 115, 116, 117, 118, 156, 156, 156, 158, 158, 0, 0, 741, 81, 0, 1067, 0, 1067, 93, 0, 247, 249, 250, 0, 0, @@ -3600,67 +3597,67 @@ var yyDef = [...]int{ 214, 988, 1021, 208, 208, 916, 221, 206, 207, 96, 168, 166, 0, 163, 162, 108, 0, 174, 174, 131, 132, 177, 0, 177, 177, 177, 0, 0, 125, 126, - 127, 119, 0, 120, 121, 122, 0, 123, 215, 0, - 0, 0, 0, 1067, 83, 717, 84, 1066, 0, 0, - 733, 248, 720, 721, 722, 723, 724, 725, 726, 727, - 728, 729, 0, 85, 252, 254, 253, 257, 0, 0, - 0, 279, 1067, 283, 329, 306, 330, 331, 329, 308, - 315, 346, 491, 493, 495, 482, 503, 486, 0, 483, - 0, 0, 477, 545, 0, 0, 389, 0, 635, 647, - 549, 550, 0, 0, 0, 0, 0, 586, 0, 0, - 587, 0, 635, 0, 613, 0, 0, 561, 0, 580, - 0, 0, 581, 582, 583, 584, 585, 38, 0, 0, - 0, 645, 646, 638, 37, 0, 712, 713, 629, 630, - 631, 0, 403, 414, 395, 0, 643, 688, 0, 0, - 681, 0, 0, 466, 696, 0, 416, 435, 437, 0, - 432, 447, 448, 450, 0, 452, 0, 454, 455, 420, - 421, 422, 0, 423, 0, 0, 0, 0, 443, 466, - 0, 466, 59, 466, 61, 0, 460, 68, 69, 0, - 0, 75, 178, 179, 0, 237, 0, 100, 0, 0, - 196, 208, 208, 199, 209, 200, 0, 170, 0, 167, - 104, 164, 0, 177, 177, 133, 0, 134, 135, 136, - 0, 152, 0, 0, 0, 230, 0, 742, 82, 242, - 1066, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 1066, 0, 1066, 734, 735, - 736, 737, 0, 88, 0, 0, 0, 0, 0, 282, - 332, 332, 484, 0, 504, 487, 546, 547, 0, 619, - 643, 40, 0, 154, 154, 598, 154, 158, 601, 154, - 603, 154, 606, 0, 0, 0, 0, 0, 0, 0, - 610, 560, 616, 0, 618, 0, 0, 0, 174, 652, - 649, 39, 633, 0, 467, 407, 43, 47, 0, 688, - 680, 690, 692, 0, 0, 684, 0, 427, 635, 0, - 0, 429, 436, 0, 0, 430, 0, 431, 451, 453, - -2, 0, 0, 0, 0, 635, 466, 54, 55, 0, - 72, 73, 74, 235, 238, 0, 210, 154, 213, 0, - 197, 198, 0, 172, 0, 169, 155, 129, 130, 175, - 176, 174, 0, 174, 0, 159, 0, 222, 231, 0, - 1067, 243, 244, 245, 246, 0, 251, 0, 86, 87, - 0, 0, 256, 280, 302, 307, 488, 548, 647, 551, - 595, 174, 599, 600, 602, 604, 605, 607, 553, 552, - 0, 0, 0, 0, 0, 643, 0, 614, 0, 0, - 174, 672, 44, 0, 0, 0, 48, 0, 693, 0, - 0, 0, 63, 0, 643, 697, 698, 433, 0, 438, - 0, 0, 0, 441, 643, 53, 188, 0, 212, 0, - 425, 180, 173, 0, 177, 153, 177, 0, 0, 232, - 80, 0, 89, 90, 0, 0, 0, 41, 596, 597, - 0, 0, 0, 0, 588, 0, 611, 0, 0, 654, - 653, 666, 670, 634, 632, 0, 691, 0, 683, 686, - 685, 428, 51, 0, 0, 463, 0, 0, 461, 52, - 187, 189, 0, 194, 0, 211, 0, 0, 185, 0, - 182, 184, 171, 142, 143, 157, 160, 0, 0, 0, - 0, 258, 554, 556, 555, 557, 0, 0, 0, 559, - 576, 577, 672, 0, 665, 668, -2, 0, 0, 682, - 0, 434, 462, 464, 465, 424, 190, 191, 0, 195, - 193, 0, 426, 103, 0, 181, 183, 0, 274, 0, - 91, 92, 85, 558, 0, 0, 0, 659, 657, 657, - 670, 0, 674, 0, 679, 0, 689, 687, 192, 0, - 186, 273, 0, 0, 88, 589, 0, 592, 662, 0, - 655, 658, 656, 667, 0, 673, 0, 0, 671, 0, - 275, 0, 255, 590, 651, 0, 660, 661, 669, 0, - 0, 0, 0, 0, 663, 664, 675, 677, 217, 0, - 0, 218, 219, 0, 0, 591, 220, 0, 0, 0, - 0, 0, 223, 225, 226, 0, 0, 224, 276, 277, - 227, 228, 229, + 127, 128, 119, 0, 120, 121, 122, 0, 123, 215, + 0, 0, 0, 0, 1067, 83, 717, 84, 1066, 0, + 0, 733, 248, 720, 721, 722, 723, 724, 725, 726, + 727, 728, 729, 0, 85, 252, 254, 253, 257, 0, + 0, 0, 279, 1067, 283, 329, 306, 330, 331, 329, + 308, 315, 346, 491, 493, 495, 482, 503, 486, 0, + 483, 0, 0, 477, 545, 0, 0, 389, 0, 635, + 647, 549, 550, 0, 0, 0, 0, 0, 586, 0, + 0, 587, 0, 635, 0, 613, 0, 0, 561, 0, + 580, 0, 0, 581, 582, 583, 584, 585, 38, 0, + 0, 0, 645, 646, 638, 37, 0, 712, 713, 629, + 630, 631, 0, 403, 414, 395, 0, 643, 688, 0, + 0, 681, 0, 0, 466, 696, 0, 416, 435, 437, + 0, 432, 447, 448, 450, 0, 452, 0, 454, 455, + 420, 421, 422, 0, 423, 0, 0, 0, 0, 443, + 466, 0, 466, 59, 466, 61, 0, 460, 68, 69, + 0, 0, 75, 178, 179, 0, 237, 0, 100, 0, + 0, 196, 208, 208, 199, 209, 200, 0, 170, 0, + 167, 104, 164, 0, 177, 177, 133, 0, 134, 135, + 136, 0, 152, 0, 0, 0, 230, 0, 742, 82, + 242, 1066, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 1066, 0, 1066, 734, + 735, 736, 737, 0, 88, 0, 0, 0, 0, 0, + 282, 332, 332, 484, 0, 504, 487, 546, 547, 0, + 619, 643, 40, 0, 154, 154, 598, 154, 158, 601, + 154, 603, 154, 606, 0, 0, 0, 0, 0, 0, + 0, 610, 560, 616, 0, 618, 0, 0, 0, 174, + 652, 649, 39, 633, 0, 467, 407, 43, 47, 0, + 688, 680, 690, 692, 0, 0, 684, 0, 427, 635, + 0, 0, 429, 436, 0, 0, 430, 0, 431, 451, + 453, -2, 0, 0, 0, 0, 635, 466, 54, 55, + 0, 72, 73, 74, 235, 238, 0, 210, 154, 213, + 0, 197, 198, 0, 172, 0, 169, 155, 129, 130, + 175, 176, 174, 0, 174, 0, 159, 0, 222, 231, + 0, 1067, 243, 244, 245, 246, 0, 251, 0, 86, + 87, 0, 0, 256, 280, 302, 307, 488, 548, 647, + 551, 595, 174, 599, 600, 602, 604, 605, 607, 553, + 552, 0, 0, 0, 0, 0, 643, 0, 614, 0, + 0, 174, 672, 44, 0, 0, 0, 48, 0, 693, + 0, 0, 0, 63, 0, 643, 697, 698, 433, 0, + 438, 0, 0, 0, 441, 643, 53, 188, 0, 212, + 0, 425, 180, 173, 0, 177, 153, 177, 0, 0, + 232, 80, 0, 89, 90, 0, 0, 0, 41, 596, + 597, 0, 0, 0, 0, 588, 0, 611, 0, 0, + 654, 653, 666, 670, 634, 632, 0, 691, 0, 683, + 686, 685, 428, 51, 0, 0, 463, 0, 0, 461, + 52, 187, 189, 0, 194, 0, 211, 0, 0, 185, + 0, 182, 184, 171, 142, 143, 157, 160, 0, 0, + 0, 0, 258, 554, 556, 555, 557, 0, 0, 0, + 559, 576, 577, 672, 0, 665, 668, -2, 0, 0, + 682, 0, 434, 462, 464, 465, 424, 190, 191, 0, + 195, 193, 0, 426, 103, 0, 181, 183, 0, 274, + 0, 91, 92, 85, 558, 0, 0, 0, 659, 657, + 657, 670, 0, 674, 0, 679, 0, 689, 687, 192, + 0, 186, 273, 0, 0, 88, 589, 0, 592, 662, + 0, 655, 658, 656, 667, 0, 673, 0, 0, 671, + 0, 275, 0, 255, 590, 651, 0, 660, 661, 669, + 0, 0, 0, 0, 0, 663, 664, 675, 677, 217, + 0, 0, 218, 219, 0, 0, 591, 220, 0, 0, + 0, 0, 0, 223, 225, 226, 0, 0, 224, 276, + 277, 227, 228, 229, } var yyTok1 = [...]int{ @@ -4713,10 +4710,10 @@ yydefault: yyVAL.columnType = ColumnType{Type: string(yyDollar[1].bytes), Length: yyDollar[2].literal} } case 128: - yyDollar = yyS[yypt-1 : yypt+1] + yyDollar = yyS[yypt-2 : yypt+1] //line sql.y:928 { - yyVAL.columnType = ColumnType{Type: string(yyDollar[1].bytes)} + yyVAL.columnType = ColumnType{Type: string(yyDollar[1].bytes), Length: yyDollar[2].literal} } case 129: yyDollar = yyS[yypt-4 : yypt+1] diff --git a/go/vt/sqlparser/sql.y b/go/vt/sqlparser/sql.y index 0a49dcc27aa..f0a10e631f2 100644 --- a/go/vt/sqlparser/sql.y +++ b/go/vt/sqlparser/sql.y @@ -924,9 +924,9 @@ time_type: { $$ = ColumnType{Type: string($1), Length: $2} } -| YEAR +| YEAR length_opt { - $$ = ColumnType{Type: string($1)} + $$ = ColumnType{Type: string($1), Length: $2} } char_type: