diff --git a/src/proxy/radon.go b/src/proxy/radon.go index 570fb544..afe5a7b7 100644 --- a/src/proxy/radon.go +++ b/src/proxy/radon.go @@ -52,8 +52,16 @@ func (spanner *Spanner) handleRadon(session *driver.Session, query string, node if !snode.Table.Qualifier.IsEmpty() { database = snode.Table.Qualifier.String() } - log.Error("proxy.radon.unsupported: %s %s.%s", snode.Action, database, table) - err = sqldb.NewSQLErrorf(sqldb.ER_UNKNOWN_ERROR, "unsupported.query: %s %s.%s", snode.Action, database, table) + + newTable := snode.NewName.Name.String() + newDatabase := session.Schema() + if !snode.NewName.Qualifier.IsEmpty() { + newDatabase = snode.NewName.Qualifier.String() + } + + log.Error("proxy.radon.unsupported.%s: [%s.%s->%s.%s]", snode.Action, database, table, newDatabase, newTable) + err = sqldb.NewSQLErrorf(sqldb.ER_UNKNOWN_ERROR, "unsupported.query.%s: [%s.%s->%s.%s]", snode.Action, + database, table, newDatabase, newTable) default: log.Error("proxy.radon.unsupported[%s]", query) err = sqldb.NewSQLErrorf(sqldb.ER_UNKNOWN_ERROR, "unsupported.query: %v", query) diff --git a/src/proxy/radon_test.go b/src/proxy/radon_test.go index 88979bdb..8d7c8dd2 100644 --- a/src/proxy/radon_test.go +++ b/src/proxy/radon_test.go @@ -44,7 +44,7 @@ func TestErrorParams(t *testing.T) { { client, err := driver.NewConn("mock", "mock", address, "", "utf8") assert.Nil(t, err) - query := "radon reshard db.tb" + query := "radon reshard db.tb to db2.t2" _, err = client.FetchAll(query, -1) assert.NotNil(t, err) } diff --git a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/ast.go b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/ast.go index e6246aa1..aa1bac5e 100644 --- a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/ast.go +++ b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/ast.go @@ -2831,9 +2831,10 @@ func compliantName(in string) string { // Radon represents the radon statement. type Radon struct { - Action string - Row ValTuple - Table TableName + Action string + Row ValTuple + Table TableName + NewName TableName } const ( @@ -2853,7 +2854,7 @@ func (node *Radon) Format(buf *TrackedBuffer) { case AttachStr, DetachStr: buf.Myprintf("radon %s %v", node.Action, node.Row) case ReshardStr: - buf.Myprintf("radon %s %v", node.Action, node.Table) + buf.Myprintf("radon %s %v to %v", node.Action, node.Table, node.NewName) } } @@ -2866,5 +2867,6 @@ func (node *Radon) WalkSubtree(visit Visit) error { visit, node.Row, node.Table, + node.NewName, ) } diff --git a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/radon_test.go b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/radon_test.go index b6a5b334..fa64e335 100644 --- a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/radon_test.go +++ b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/radon_test.go @@ -24,8 +24,16 @@ func TestRadonAttach(t *testing.T) { output: "radon detach ('attach1')", }, { - input: "radon reshard db.t", - output: "radon reshard db.t", + input: "radon reshard db.t db.tt", + output: "radon reshard db.t to db.tt", + }, + { + input: "radon reshard db.t to a.tt", + output: "radon reshard db.t to a.tt", + }, + { + input: "radon reshard db.t as b.tt", + output: "radon reshard db.t to b.tt", }, } diff --git a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.go b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.go index fa1931e4..f7749715 100644 --- a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.go +++ b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.go @@ -570,22 +570,22 @@ var yyExca = [...]int{ -1, 401, 110, 489, -2, 485, - -1, 580, + -1, 582, 5, 27, -2, 428, - -1, 717, + -1, 720, 110, 491, -2, 487, - -1, 828, + -1, 830, 5, 28, -2, 307, - -1, 852, + -1, 854, 5, 28, -2, 429, - -1, 939, + -1, 941, 5, 27, -2, 431, - -1, 1045, + -1, 1047, 5, 28, -2, 432, } @@ -596,195 +596,194 @@ const yyPrivate = 57344 var yyTokenNames []string var yyStates []string -const yyLast = 7679 +const yyLast = 7489 var yyAct = [...]int{ - 401, 488, 1079, 996, 930, 583, 982, 354, 929, 376, - 294, 867, 888, 713, 746, 747, 909, 378, 634, 708, - 591, 272, 993, 56, 821, 540, 3, 701, 716, 711, - 621, 74, 813, 727, 595, 356, 158, 584, 254, 743, - 72, 66, 678, 255, 343, 308, 403, 409, 352, 281, - 630, 477, 289, 60, 55, 606, 947, 291, 260, 600, - 597, 297, 946, 306, 254, 1091, 74, 1078, 1090, 257, - 379, 50, 651, 1070, 1088, 296, 271, 710, 1006, 62, - 63, 64, 65, 256, 1077, 259, 650, 261, 262, 922, - 267, 268, 269, 270, 1069, 551, 976, 157, 263, 265, - 264, 266, 1054, 507, 506, 516, 517, 509, 510, 511, - 512, 513, 514, 515, 508, 325, 653, 518, 141, 142, - 1012, 50, 331, 663, 329, 649, 873, 874, 875, 277, - 323, 774, 614, 954, 876, 24, 51, 26, 27, 762, - 948, 1018, 894, 622, 971, 254, 254, 969, 315, 831, - 799, 798, 1010, 46, 797, 316, 311, 140, 28, 796, - 910, 36, 1064, 1040, 1042, 495, 494, 1063, 609, 609, - 1062, 312, 646, 644, 640, 607, 643, 645, 609, 314, - 341, 37, 496, 251, 53, 912, 326, 145, 144, 143, - 321, 530, 531, 792, 1003, 327, 328, 961, 330, 794, - 309, 914, 855, 918, 827, 913, 825, 911, 756, 767, - 539, 416, 916, 596, 518, 493, 648, 258, 1055, 496, - 832, 881, 915, 508, 685, 1005, 518, 917, 919, 494, - 924, 647, 864, 467, 615, 1041, 795, 763, 683, 684, - 682, 622, 30, 31, 32, 496, 34, 755, 420, 1068, - 772, 1011, 254, 1009, 728, 728, 877, 838, 642, 35, - 47, 39, 608, 608, 48, 49, 33, 254, 605, 652, - 604, 882, 608, 495, 494, 1050, 411, 495, 494, 611, - 641, 336, 338, 958, 926, 612, 254, 346, 404, 254, - 496, 74, 318, 793, 496, 791, 74, 53, 957, 405, - 296, 333, 949, 406, 335, 422, 786, 681, 310, 339, - 785, 254, 775, 1066, 254, 254, 254, 334, 1021, 254, - 806, 807, 808, 254, 956, 254, 254, 254, 52, 702, - 1047, 703, 407, 803, 337, 337, 498, 511, 512, 513, - 514, 515, 508, 419, 38, 518, 566, 567, 50, 784, - 40, 489, 139, 41, 42, 1015, 44, 43, 1085, 342, - 342, 45, 499, 507, 506, 516, 517, 509, 510, 511, - 512, 513, 514, 515, 508, 497, 485, 518, 486, 313, - 487, 833, 490, 484, 491, 980, 342, 528, 671, 673, - 674, 495, 494, 489, 672, 495, 494, 951, 950, 1014, - 549, 819, 342, 1013, 814, 309, 896, 893, 496, 74, - 887, 886, 496, 870, 254, 285, 869, 254, 572, 74, - 865, 527, 529, 585, 861, 586, 768, 568, 296, 884, - 883, 878, 495, 494, 594, 854, 342, 665, 580, 368, - 367, 369, 370, 371, 372, 588, 22, 538, 373, 496, - 541, 542, 543, 544, 545, 546, 547, 570, 550, 552, - 552, 552, 552, 552, 552, 552, 552, 560, 561, 562, - 563, 623, 624, 625, 601, 254, 593, 759, 590, 254, - 704, 665, 342, 581, 636, 553, 554, 555, 556, 557, - 558, 559, 24, 984, 987, 988, 989, 985, 657, 986, - 990, 468, 317, 1059, 662, 276, 428, 427, 668, 669, - 57, 675, 676, 632, 633, 578, 744, 754, 754, 679, - 656, 850, 579, 659, 660, 661, 24, 847, 664, 509, - 510, 511, 512, 513, 514, 515, 508, 680, 74, 518, - 592, 53, 53, 24, 980, 885, 819, 707, 654, 296, - 715, 74, 819, 418, 564, 489, 938, 616, 722, 723, - 729, 278, 984, 987, 988, 989, 985, 719, 986, 990, - 635, 67, 576, 819, 764, 53, 631, 626, 404, 705, - 706, 732, 74, 667, 745, 754, 585, 569, 586, 1058, - 872, 752, 53, 744, 638, 725, 474, 748, 1033, 741, - 50, 717, 1061, 1034, 753, 1060, 758, 750, 1030, 1031, - 53, 735, 541, 736, 1032, 757, 1035, 1029, 988, 989, - 720, 721, 282, 283, 724, 516, 517, 509, 510, 511, - 512, 513, 514, 515, 508, 1083, 410, 518, 731, 254, - 733, 734, 1076, 805, 740, 1065, 1048, 959, 776, 777, - 749, 779, 50, 742, 408, 254, 778, 425, 780, 781, - 782, 766, 344, 769, 415, 863, 771, 1052, 760, 666, - 617, 618, 619, 620, 345, 1051, 936, 765, 848, 804, - 637, 473, 992, 788, 410, 627, 628, 629, 507, 506, - 516, 517, 509, 510, 511, 512, 513, 514, 515, 508, - 679, 801, 518, 279, 280, 739, 802, 273, 1024, 426, - 1023, 274, 57, 738, 74, 979, 592, 478, 680, 483, - 324, 718, 322, 823, 899, 809, 288, 1000, 955, 492, - 59, 61, 54, 730, 1, 866, 603, 598, 254, 307, - 602, 783, 839, 1008, 507, 506, 516, 517, 509, 510, - 511, 512, 513, 514, 515, 508, 953, 610, 518, 773, - 837, 613, 585, 489, 586, 74, 296, 859, 945, 858, - 761, 599, 862, 1049, 868, 871, 770, 856, 349, 860, - 431, 432, 430, 434, 433, 849, 826, 818, 74, 429, - 254, 146, 857, 377, 290, 991, 995, 296, 890, 820, - 69, 790, 789, 835, 639, 526, 737, 295, 421, 751, - 565, 879, 880, 402, 1022, 978, 836, 548, 717, 726, - 355, 670, 366, 74, 363, 365, 364, 571, 74, 577, - 500, 252, 823, 353, 892, 296, 715, 296, 908, 895, - 347, 1039, 932, 898, 471, 897, 907, 904, 254, 903, - 921, 412, 925, 983, 906, 74, 74, 287, 889, 923, - 920, 981, 931, 846, 941, 942, 937, 927, 748, 482, - 928, 975, 1053, 575, 25, 58, 284, 14, 943, 939, - 21, 15, 13, 933, 12, 816, 29, 717, 10, 817, - 9, 8, 7, 6, 5, 4, 275, 23, 2, 20, - 828, 829, 830, 19, 18, 834, 17, 16, 11, 0, - 840, 0, 841, 842, 843, 844, 0, 0, 934, 0, - 0, 749, 0, 0, 940, 0, 0, 0, 0, 0, - 851, 852, 853, 967, 0, 254, 254, 0, 287, 287, - 977, 0, 0, 0, 0, 74, 0, 0, 0, 0, - 0, 0, 74, 1001, 296, 890, 748, 1004, 0, 0, - 0, 868, 74, 1007, 0, 0, 1002, 0, 0, 0, - 933, 296, 908, 0, 0, 0, 0, 0, 0, 0, - 0, 254, 254, 254, 254, 0, 1026, 0, 1028, 1025, - 0, 1027, 254, 974, 0, 254, 1017, 1036, 254, 902, - 0, 1043, 0, 0, 74, 994, 1044, 0, 585, 749, - 586, 50, 0, 1046, 0, 889, 933, 933, 933, 933, - 719, 0, 0, 0, 0, 0, 1057, 0, 0, 0, - 933, 0, 0, 0, 0, 0, 0, 1056, 489, 0, - 0, 0, 944, 0, 0, 287, 0, 0, 0, 0, - 0, 934, 934, 934, 934, 0, 0, 0, 0, 935, - 287, 0, 0, 0, 0, 994, 0, 0, 0, 0, - 0, 0, 1071, 1072, 74, 74, 74, 1081, 1082, 287, - 0, 0, 287, 1080, 1080, 1080, 74, 0, 962, 0, - 963, 0, 0, 0, 0, 1089, 0, 0, 0, 0, - 0, 972, 973, 952, 466, 0, 0, 287, 287, 287, - 0, 0, 475, 0, 0, 0, 287, 0, 287, 287, - 287, 0, 0, 286, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1073, 1074, 1075, 532, 533, 534, 535, - 536, 537, 815, 0, 0, 964, 965, 0, 966, 0, - 0, 968, 0, 970, 0, 0, 1020, 0, 0, 0, - 0, 0, 507, 506, 516, 517, 509, 510, 511, 512, - 513, 514, 515, 508, 1038, 0, 518, 0, 0, 0, - 0, 437, 0, 1045, 506, 516, 517, 509, 510, 511, - 512, 513, 514, 515, 508, 0, 0, 518, 0, 0, - 0, 0, 0, 0, 319, 320, 449, 287, 0, 587, - 589, 454, 455, 456, 457, 458, 459, 460, 0, 461, - 462, 463, 464, 465, 450, 451, 452, 453, 435, 436, - 0, 0, 438, 0, 1067, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1084, 0, 1086, 1087, 0, 0, 0, 0, 287, 0, - 0, 0, 287, 0, 0, 0, 0, 0, 0, 677, - 0, 0, 686, 687, 688, 689, 690, 691, 692, 693, - 694, 695, 696, 697, 698, 699, 700, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 332, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 340, 0, 0, 0, - 0, 0, 714, 589, 0, 0, 714, 714, 0, 0, - 714, 0, 0, 0, 0, 414, 0, 0, 417, 0, - 0, 0, 0, 0, 714, 714, 714, 714, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 714, - 0, 0, 587, 469, 470, 472, 0, 0, 0, 502, - 0, 505, 476, 0, 479, 480, 481, 519, 520, 521, - 522, 523, 524, 525, 0, 503, 504, 501, 507, 506, - 516, 517, 509, 510, 511, 512, 513, 514, 515, 508, - 0, 0, 518, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 287, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 287, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 810, 811, 812, 0, 0, 0, 0, 0, - 0, 0, 0, 582, 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, 714, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 714, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 287, 0, 0, 655, 0, 0, 0, 658, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 587, 0, - 589, 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, + 401, 488, 585, 998, 1081, 984, 932, 354, 869, 376, + 294, 890, 378, 716, 349, 636, 931, 750, 749, 911, + 593, 995, 56, 297, 272, 719, 542, 3, 704, 815, + 714, 74, 597, 711, 823, 681, 158, 66, 254, 586, + 72, 746, 308, 730, 491, 608, 623, 343, 403, 409, + 477, 289, 352, 291, 60, 632, 55, 260, 653, 157, + 263, 265, 264, 266, 254, 281, 74, 949, 602, 599, + 379, 50, 652, 948, 306, 296, 1093, 271, 1080, 257, + 62, 63, 64, 65, 1092, 1072, 1090, 1008, 1079, 924, + 1071, 978, 1014, 325, 255, 875, 876, 877, 141, 142, + 331, 665, 655, 878, 329, 323, 777, 616, 956, 553, + 765, 651, 950, 896, 1020, 624, 315, 973, 971, 800, + 799, 50, 611, 1012, 798, 1042, 1044, 316, 609, 277, + 311, 493, 356, 833, 256, 493, 259, 795, 261, 262, + 140, 267, 268, 269, 270, 254, 254, 797, 611, 497, + 496, 1066, 1065, 309, 1064, 312, 341, 314, 648, 646, + 642, 251, 645, 647, 326, 611, 498, 145, 912, 143, + 144, 598, 532, 533, 713, 1005, 1056, 509, 508, 518, + 519, 511, 512, 513, 514, 515, 516, 517, 510, 963, + 857, 520, 829, 914, 520, 827, 770, 1043, 759, 541, + 416, 883, 650, 510, 834, 495, 520, 498, 1007, 916, + 496, 920, 617, 915, 624, 913, 610, 649, 866, 731, + 918, 607, 1013, 606, 1011, 879, 498, 258, 796, 766, + 917, 794, 758, 492, 420, 919, 921, 492, 926, 497, + 496, 321, 610, 467, 644, 1070, 327, 328, 688, 330, + 835, 884, 254, 310, 775, 654, 498, 1052, 411, 610, + 318, 960, 686, 687, 685, 959, 643, 254, 511, 512, + 513, 514, 515, 516, 517, 510, 336, 338, 520, 568, + 569, 731, 951, 840, 613, 789, 254, 346, 404, 254, + 614, 74, 1057, 674, 676, 677, 74, 53, 405, 675, + 296, 497, 496, 1068, 406, 422, 139, 684, 500, 788, + 778, 254, 334, 1023, 254, 254, 254, 958, 498, 254, + 808, 809, 810, 254, 313, 254, 254, 254, 497, 496, + 705, 804, 706, 407, 337, 337, 513, 514, 515, 516, + 517, 510, 419, 787, 520, 498, 342, 499, 50, 497, + 496, 489, 333, 22, 1049, 335, 928, 1087, 342, 1016, + 339, 1017, 501, 497, 496, 309, 498, 982, 342, 285, + 953, 952, 534, 535, 536, 537, 538, 539, 821, 342, + 498, 898, 484, 518, 519, 511, 512, 513, 514, 515, + 516, 517, 510, 489, 895, 520, 889, 888, 53, 872, + 551, 368, 367, 369, 370, 371, 372, 886, 885, 74, + 373, 871, 276, 867, 254, 863, 771, 254, 574, 74, + 762, 529, 531, 587, 707, 588, 468, 485, 296, 486, + 570, 487, 317, 490, 596, 856, 342, 667, 342, 582, + 592, 1015, 590, 428, 427, 880, 24, 540, 57, 594, + 543, 544, 545, 546, 547, 548, 549, 667, 552, 554, + 554, 554, 554, 554, 554, 554, 554, 562, 563, 564, + 565, 603, 595, 572, 757, 254, 940, 852, 747, 254, + 757, 638, 982, 583, 530, 887, 821, 625, 626, 627, + 821, 656, 254, 418, 757, 53, 1060, 566, 659, 555, + 556, 557, 558, 559, 560, 561, 24, 664, 849, 278, + 671, 672, 618, 678, 679, 637, 682, 680, 634, 635, + 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, + 699, 700, 701, 702, 703, 986, 989, 990, 991, 987, + 74, 988, 992, 24, 67, 1061, 578, 767, 633, 710, + 628, 296, 718, 74, 821, 53, 874, 489, 53, 747, + 725, 726, 732, 571, 640, 720, 580, 474, 1063, 1062, + 722, 658, 1035, 581, 661, 662, 663, 1036, 1032, 666, + 404, 1085, 1033, 748, 74, 708, 709, 1034, 587, 1031, + 588, 1078, 53, 755, 751, 282, 283, 735, 1037, 728, + 990, 991, 50, 807, 670, 744, 756, 743, 761, 1067, + 753, 1050, 961, 782, 543, 738, 760, 410, 739, 425, + 509, 508, 518, 519, 511, 512, 513, 514, 515, 516, + 517, 510, 344, 415, 520, 408, 683, 865, 774, 1054, + 1053, 254, 938, 768, 345, 668, 850, 639, 619, 620, + 621, 622, 752, 769, 50, 772, 781, 254, 783, 784, + 785, 816, 473, 629, 630, 631, 779, 780, 994, 410, + 763, 986, 989, 990, 991, 987, 742, 988, 992, 279, + 280, 805, 57, 273, 741, 1026, 426, 792, 274, 1025, + 981, 594, 478, 483, 324, 322, 288, 1002, 682, 721, + 957, 812, 813, 814, 494, 59, 61, 54, 1, 868, + 605, 733, 600, 307, 604, 786, 1010, 74, 955, 723, + 724, 811, 612, 727, 776, 615, 825, 947, 764, 601, + 864, 1051, 873, 773, 431, 432, 791, 734, 430, 736, + 737, 254, 434, 433, 429, 841, 146, 290, 993, 997, + 822, 69, 745, 793, 802, 641, 528, 740, 295, 803, + 421, 754, 567, 402, 806, 587, 489, 588, 74, 296, + 861, 1024, 860, 839, 980, 838, 550, 870, 729, 858, + 355, 673, 366, 720, 377, 862, 363, 365, 364, 828, + 851, 74, 573, 254, 579, 502, 353, 859, 347, 1041, + 296, 892, 934, 471, 412, 985, 983, 933, 848, 482, + 977, 1055, 881, 882, 577, 25, 58, 284, 683, 14, + 21, 15, 252, 13, 12, 74, 29, 10, 9, 8, + 74, 902, 903, 7, 825, 6, 897, 296, 718, 296, + 910, 5, 900, 899, 4, 275, 23, 2, 287, 20, + 254, 720, 905, 908, 927, 923, 19, 74, 74, 906, + 925, 891, 909, 922, 818, 751, 943, 944, 819, 929, + 939, 930, 18, 17, 16, 11, 0, 0, 0, 830, + 831, 832, 941, 945, 836, 0, 0, 820, 894, 842, + 0, 843, 844, 845, 846, 0, 0, 0, 0, 0, + 0, 0, 937, 837, 0, 0, 0, 0, 0, 853, + 854, 855, 0, 0, 0, 0, 962, 0, 0, 0, + 936, 0, 0, 752, 0, 0, 942, 0, 0, 287, + 287, 0, 969, 0, 0, 0, 0, 254, 254, 0, + 0, 0, 979, 0, 0, 0, 0, 74, 0, 0, + 0, 0, 0, 751, 74, 0, 296, 892, 1006, 1003, + 0, 0, 1009, 870, 74, 0, 286, 0, 0, 1004, + 0, 0, 0, 296, 910, 0, 0, 904, 0, 0, + 0, 0, 935, 254, 254, 254, 254, 0, 0, 0, + 1028, 1021, 1030, 0, 254, 976, 0, 254, 1038, 1027, + 254, 1029, 0, 1045, 0, 1046, 74, 996, 0, 0, + 587, 752, 588, 50, 1019, 1048, 0, 891, 0, 0, + 946, 0, 0, 722, 0, 0, 0, 0, 1059, 0, + 0, 0, 0, 0, 0, 0, 287, 0, 0, 1058, + 489, 0, 0, 0, 0, 0, 0, 319, 320, 0, + 0, 287, 0, 936, 936, 936, 936, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 964, 996, 965, 935, + 287, 0, 0, 287, 1073, 1074, 74, 74, 74, 974, + 975, 1083, 1084, 954, 0, 1082, 1082, 1082, 74, 0, + 0, 0, 0, 0, 0, 466, 0, 1091, 287, 287, + 287, 0, 0, 475, 0, 0, 0, 287, 0, 287, + 287, 287, 0, 0, 0, 935, 935, 935, 935, 901, + 0, 0, 0, 0, 0, 966, 967, 0, 968, 935, + 0, 970, 0, 972, 1022, 1075, 1076, 1077, 0, 509, + 508, 518, 519, 511, 512, 513, 514, 515, 516, 517, + 510, 0, 1040, 520, 332, 0, 0, 0, 0, 0, + 0, 1047, 0, 0, 24, 51, 26, 27, 0, 340, + 509, 508, 518, 519, 511, 512, 513, 514, 515, 516, + 517, 510, 46, 0, 520, 0, 0, 28, 414, 0, + 36, 417, 0, 0, 0, 0, 0, 0, 287, 0, + 589, 591, 0, 0, 0, 0, 0, 0, 0, 0, + 37, 0, 1069, 53, 0, 0, 469, 470, 472, 0, + 0, 0, 817, 0, 0, 476, 0, 479, 480, 481, + 0, 0, 0, 0, 0, 0, 0, 0, 1086, 0, + 1088, 1089, 509, 508, 518, 519, 511, 512, 513, 514, + 515, 516, 517, 510, 0, 0, 520, 0, 0, 287, 0, 0, 0, 287, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 900, 901, 0, 0, 0, 0, 0, + 0, 30, 31, 32, 0, 34, 287, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 35, 47, + 39, 0, 0, 48, 49, 33, 508, 518, 519, 511, + 512, 513, 514, 515, 516, 517, 510, 0, 0, 520, + 0, 0, 0, 0, 0, 0, 584, 0, 0, 0, + 0, 0, 0, 0, 0, 717, 591, 0, 0, 717, + 717, 0, 0, 717, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 717, 717, 717, + 717, 0, 0, 0, 0, 0, 0, 52, 0, 0, + 0, 0, 717, 0, 0, 589, 0, 0, 0, 0, + 0, 0, 437, 38, 0, 0, 0, 657, 0, 40, + 0, 660, 41, 42, 0, 44, 43, 0, 0, 0, + 45, 0, 0, 0, 669, 0, 0, 449, 0, 0, + 0, 0, 454, 455, 456, 457, 458, 459, 460, 0, + 461, 462, 463, 464, 465, 450, 451, 452, 453, 435, + 436, 0, 0, 438, 0, 287, 439, 440, 441, 442, + 443, 444, 445, 446, 447, 448, 504, 0, 507, 0, + 0, 287, 0, 0, 521, 522, 523, 524, 525, 526, + 527, 0, 505, 506, 503, 509, 508, 518, 519, 511, + 512, 513, 514, 515, 516, 517, 510, 0, 0, 520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 714, 0, 0, 0, 0, 0, 589, - 714, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 287, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 717, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 717, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 960, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 787, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 800, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 287, 998, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1019, 0, 0, 0, 0, 0, 0, + 106, 0, 589, 790, 591, 0, 0, 0, 0, 86, + 0, 0, 0, 0, 0, 0, 91, 0, 0, 801, + 97, 0, 0, 112, 103, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 287, 0, 0, + 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, + 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 717, 0, 0, 0, + 0, 0, 591, 717, 0, 0, 509, 508, 518, 519, + 511, 512, 513, 514, 515, 516, 517, 510, 0, 0, + 520, 0, 0, 0, 287, 0, 0, 0, 0, 0, + 0, 0, 0, 847, 0, 127, 0, 0, 0, 0, + 0, 108, 0, 0, 0, 0, 82, 0, 111, 107, + 122, 77, 120, 114, 101, 93, 94, 76, 0, 110, + 85, 90, 84, 105, 117, 118, 83, 132, 80, 126, + 79, 0, 125, 104, 0, 116, 121, 102, 99, 78, + 119, 100, 98, 95, 87, 893, 0, 0, 113, 123, + 133, 0, 0, 128, 129, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 287, 287, 287, 287, 0, 0, - 0, 0, 0, 0, 0, 1037, 0, 0, 287, 0, - 0, 998, 0, 0, 587, 0, 0, 845, 239, 230, + 0, 287, 1000, 0, 0, 0, 0, 0, 75, 0, + 96, 131, 109, 89, 124, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 88, 115, 0, 0, 0, + 0, 0, 92, 0, 0, 134, 135, 137, 136, 138, + 0, 0, 0, 0, 0, 0, 0, 287, 287, 287, + 287, 0, 0, 0, 0, 0, 0, 0, 1039, 0, + 0, 287, 0, 0, 1000, 0, 0, 589, 239, 230, 201, 241, 178, 193, 250, 194, 195, 222, 165, 209, 106, 191, 0, 181, 160, 188, 161, 179, 203, 86, 206, 177, 232, 212, 148, 0, 91, 0, 0, 247, 97, 216, 0, 112, 103, 0, 0, 205, 234, 207, - 229, 200, 223, 171, 215, 242, 192, 220, 0, 891, + 229, 200, 223, 171, 215, 242, 192, 220, 0, 0, 0, 156, 0, 0, 0, 0, 0, 0, 0, 0, 81, 218, 237, 190, 219, 221, 159, 217, 0, 163, 166, 249, 235, 184, 185, 0, 0, 0, 0, 0, @@ -835,7 +834,7 @@ var yyAct = [...]int{ 0, 0, 0, 0, 81, 218, 237, 190, 219, 221, 159, 217, 0, 163, 166, 249, 235, 184, 185, 0, 0, 0, 0, 0, 0, 0, 204, 208, 226, 198, - 0, 0, 0, 0, 0, 0, 1016, 0, 182, 0, + 0, 0, 0, 0, 0, 0, 1018, 0, 182, 0, 214, 0, 0, 0, 169, 164, 202, 0, 0, 0, 302, 0, 183, 227, 0, 0, 0, 304, 199, 127, 236, 197, 196, 240, 243, 108, 0, 233, 180, 189, @@ -882,7 +881,7 @@ var yyAct = [...]int{ 237, 190, 219, 221, 159, 217, 0, 163, 166, 249, 235, 184, 185, 0, 0, 0, 0, 0, 0, 0, 204, 208, 226, 198, 0, 0, 0, 0, 0, 0, - 905, 0, 182, 0, 214, 0, 0, 0, 169, 164, + 907, 0, 182, 0, 214, 0, 0, 0, 169, 164, 202, 0, 0, 0, 302, 0, 183, 227, 0, 0, 0, 304, 199, 127, 236, 197, 196, 240, 243, 108, 0, 233, 180, 189, 82, 187, 111, 107, 122, 77, @@ -988,7 +987,7 @@ var yyAct = [...]int{ 0, 0, 231, 213, 75, 0, 96, 131, 109, 89, 124, 0, 0, 0, 0, 186, 248, 225, 224, 238, 0, 88, 115, 0, 0, 0, 0, 0, 92, 0, - 0, 134, 135, 137, 136, 138, 106, 0, 0, 709, + 0, 134, 135, 137, 136, 138, 106, 0, 0, 712, 0, 351, 0, 0, 0, 86, 0, 350, 0, 0, 0, 0, 91, 0, 0, 387, 97, 0, 0, 112, 103, 0, 0, 0, 0, 380, 381, 0, 0, 0, @@ -996,7 +995,7 @@ var yyAct = [...]int{ 369, 370, 371, 372, 0, 0, 81, 373, 374, 375, 0, 0, 0, 348, 361, 0, 386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 358, 359, 712, 0, + 0, 0, 0, 0, 0, 0, 358, 359, 715, 0, 0, 0, 398, 0, 360, 0, 0, 357, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 0, 0, 396, 0, 0, 108, 0, 0, @@ -1018,7 +1017,7 @@ var yyAct = [...]int{ 369, 370, 371, 372, 0, 0, 81, 373, 374, 375, 0, 0, 0, 348, 361, 0, 386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 358, 359, 712, 0, + 0, 0, 0, 0, 0, 0, 358, 359, 715, 0, 0, 0, 398, 0, 360, 0, 0, 357, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 0, 0, 396, 0, 0, 108, 0, 0, @@ -1117,32 +1116,14 @@ var yyAct = [...]int{ 0, 0, 0, 388, 397, 394, 395, 392, 393, 391, 390, 389, 399, 382, 383, 385, 0, 384, 75, 0, 96, 131, 109, 89, 124, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 106, 88, 115, 0, 0, 0, + 0, 0, 0, 0, 106, 88, 115, 0, 824, 0, 0, 0, 92, 86, 0, 134, 135, 137, 136, 138, 91, 0, 0, 0, 97, 0, 0, 112, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 73, 0, 0, 0, 0, - 0, 0, 0, 0, 81, 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, - 507, 506, 516, 517, 509, 510, 511, 512, 513, 514, - 515, 508, 0, 0, 518, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, - 0, 0, 0, 0, 0, 108, 0, 0, 0, 0, - 82, 0, 111, 107, 122, 77, 120, 114, 101, 93, - 94, 76, 0, 110, 85, 90, 84, 105, 117, 118, - 83, 132, 80, 126, 79, 0, 125, 104, 0, 116, - 121, 102, 99, 78, 119, 100, 98, 95, 87, 0, - 0, 0, 113, 123, 133, 0, 0, 128, 129, 130, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 106, 0, 0, 0, 822, 0, - 0, 0, 75, 86, 96, 131, 109, 89, 124, 0, - 91, 0, 0, 0, 97, 0, 0, 112, 103, 88, - 115, 0, 0, 0, 0, 0, 92, 0, 0, 134, - 135, 137, 136, 138, 0, 73, 0, 824, 0, 0, - 0, 0, 0, 0, 81, 0, 0, 0, 0, 495, - 494, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 496, 0, 0, 0, + 0, 0, 0, 0, 0, 73, 0, 826, 0, 0, + 0, 0, 0, 0, 81, 0, 0, 0, 0, 497, + 496, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 498, 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, 127, @@ -1185,11 +1166,11 @@ var yyAct = [...]int{ 120, 114, 101, 93, 94, 76, 0, 110, 85, 90, 84, 105, 117, 118, 83, 132, 80, 126, 79, 0, 125, 104, 0, 116, 121, 102, 99, 78, 119, 100, - 98, 95, 87, 0, 0, 106, 113, 123, 133, 997, + 98, 95, 87, 0, 0, 106, 113, 123, 133, 999, 0, 128, 129, 130, 86, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 97, 0, 0, 112, 103, 0, 0, 0, 0, 0, 0, 75, 0, 96, 131, - 109, 89, 124, 0, 0, 0, 253, 0, 999, 0, + 109, 89, 124, 0, 0, 0, 253, 0, 1001, 0, 0, 0, 0, 88, 115, 81, 0, 0, 0, 0, 92, 0, 0, 134, 135, 137, 136, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1224,7 +1205,7 @@ var yyAct = [...]int{ 0, 0, 0, 0, 0, 91, 0, 0, 0, 97, 0, 0, 112, 103, 0, 0, 0, 0, 0, 0, 75, 0, 96, 131, 109, 89, 124, 0, 0, 0, - 73, 0, 0, 573, 0, 0, 574, 88, 115, 81, + 73, 0, 0, 575, 0, 0, 576, 88, 115, 81, 0, 0, 0, 0, 92, 0, 0, 134, 135, 137, 136, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1255,7 +1236,7 @@ var yyAct = [...]int{ 129, 130, 86, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 97, 0, 0, 112, 103, 0, 0, 0, 0, 0, 0, 75, 0, 96, 131, 109, 89, - 124, 0, 0, 0, 253, 0, 999, 0, 0, 0, + 124, 0, 0, 0, 253, 0, 1001, 0, 0, 0, 0, 88, 115, 81, 0, 0, 0, 0, 92, 0, 0, 134, 135, 137, 136, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1287,7 +1268,7 @@ var yyAct = [...]int{ 0, 0, 0, 91, 0, 0, 0, 97, 0, 0, 112, 103, 0, 0, 0, 0, 0, 0, 75, 0, 96, 131, 109, 89, 124, 0, 0, 0, 73, 0, - 824, 0, 0, 0, 0, 88, 115, 81, 0, 0, + 826, 0, 0, 0, 0, 88, 115, 81, 0, 0, 0, 0, 92, 0, 0, 134, 135, 137, 136, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1371,22 +1352,22 @@ var yyAct = [...]int{ } var yyPact = [...]int{ - 129, -1000, -183, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 1158, -1000, -181, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, 698, 725, -1000, -1000, -1000, -1000, -1000, 516, - 5494, 33, -2, 68, 67, 1793, 63, 7442, -1000, -1000, - 8, -1000, -168, -1000, -1000, -135, -1000, -1000, -1000, -1000, - 537, -1000, -1000, -1000, -1000, -1000, 691, 696, 555, 684, - 580, -1000, 33, 7442, 716, 2025, -149, 347, 31, 50, - 31, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, 668, 700, -1000, -1000, -1000, -1000, -1000, 489, + 5304, 16, -22, 50, 47, 1783, 41, 7252, -1000, -1000, + 18, -1000, -169, -1000, -1000, -173, -1000, -1000, -1000, -1000, + 500, -1000, -1000, -1000, -1000, -1000, 667, 673, 503, 660, + 553, -1000, 16, 7252, 686, 2015, -138, 307, 5, 34, + 5, -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, -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, 59, - -1000, 30, 444, 30, 7442, 7442, -1000, 712, -49, 710, - -5, -1000, -1000, -61, -1000, -66, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 37, + -1000, 2, 374, 2, 7252, 7252, -1000, 685, -74, 684, + -27, -1000, -1000, -81, -1000, -88, -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, @@ -1396,111 +1377,111 @@ 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, 7442, -1000, -1000, -1000, -1000, -1000, -1000, 256, -1000, - -1000, -1000, -1000, 487, 487, -1000, 7442, -1000, -1000, -1000, - -1000, 303, 644, 4749, 4749, 698, -1000, 537, -1000, -1000, - -1000, 616, -1000, -1000, 210, 6971, 635, 101, 7442, 497, - 2953, -1000, -1000, -1000, 166, 6339, -1000, -1000, -1000, 628, - -1000, -1000, -1000, -1000, -1000, -1000, 694, 450, -1000, 1073, - 7442, 159, 443, 7442, 7442, 7442, 659, 542, 7442, -1000, - -1000, -1000, 7442, 707, 7442, 7442, 7442, -1000, -1000, 709, - -1000, 707, -1000, -1000, -1000, -1000, -1000, 4749, -1000, -1000, - -1000, -1000, -1000, -1000, 721, 123, 319, -1000, 4749, 1305, - 487, 487, -1000, -1000, 80, -1000, -1000, 4953, 4953, 4953, - 4953, 4953, 4953, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 487, 100, -1000, 4529, - 487, 487, 487, 487, 487, 487, 4749, 487, 487, 487, - 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, - -1000, -1000, 498, -1000, 323, 691, 303, 580, 6182, 527, - -1000, -1000, 486, 7442, -1000, 7285, 3649, 705, 2953, 497, - 4749, 106, -1000, -1000, -1000, -1000, -154, -163, 142, 211, - -44, -1000, -1000, 502, -1000, 502, 502, 502, 502, -15, - -15, -15, -15, -1000, -1000, -1000, -1000, -1000, 522, -1000, - 502, 502, 502, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, 521, 521, 521, 515, 515, -1000, 658, 540, -1000, - 58, 492, -1000, -1000, 7442, -1000, -1000, 705, 7442, -1000, - -1000, -1000, 691, -64, -1000, -1000, -1000, -1000, 425, 201, - -1000, -1000, -1000, 543, 4749, 4749, 320, 4749, 4749, 130, - 4953, 242, 148, 4953, 4953, 4953, 4953, 4953, 4953, 4953, - 4953, 4953, 4953, 4953, 4953, 4953, 4953, 4953, 271, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 422, -1000, 537, - 380, 380, 107, 107, 107, 107, 107, 5157, 3869, 3417, - 303, 4529, 4089, 4089, 4749, 4749, 4089, 664, 176, 201, - 7128, -1000, 303, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 4089, 4089, 4089, 4089, 4749, -1000, -1000, -1000, 644, -1000, - 664, 695, -1000, 608, 563, 4089, -1000, 539, 7285, 487, - -1000, 6025, -1000, 529, -1000, 165, -1000, 98, -1000, -1000, - -1000, 698, 4749, -1000, 201, -1000, 419, 487, -1000, -34, - 155, -1000, -1000, 519, 650, 151, 368, 141, -1000, -1000, - 638, -1000, 182, -46, -1000, -1000, 251, -15, -15, -1000, - -1000, 106, 622, 106, 106, 106, 289, -1000, -1000, -1000, - -1000, 249, -1000, -1000, -1000, 245, -1000, -1000, 7442, -1000, - 172, 154, 36, 25, 22, 21, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, 7442, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 273, -1000, 4749, -1000, 602, 130, 156, - -1000, -1000, 252, -1000, -1000, 201, 201, 595, -1000, -1000, - -1000, -1000, 242, 4953, 4953, 4953, 270, 595, 1069, 530, - 1090, 107, 238, 238, 119, 119, 119, 119, 119, 432, - 432, -1000, -1000, -1000, 303, -1000, -1000, -1000, 303, 4089, - 490, -1000, -1000, 5337, 96, 487, 94, -1000, -1000, 303, - 345, 345, 93, 360, 345, 4089, 177, -1000, 4749, 303, - -1000, 345, 303, 345, 345, -1000, -1000, 7442, -1000, -1000, - -1000, -1000, 517, -1000, 652, 462, 465, -1000, -1000, 4309, - 303, 379, 92, 698, 7285, 4749, 3417, 691, 201, -1000, - 366, 637, 150, 362, 7128, -1000, 358, -1000, -1000, 355, - 536, 66, -1000, -1000, -1000, 374, 106, 106, -1000, 163, - -1000, -1000, -1000, 373, -1000, 489, 354, 2489, -1000, 7442, - -1000, -1000, -1000, -1000, -1000, 349, -16, 516, 348, 347, - -1000, -1000, -1000, -1000, 201, -1000, -1000, -1000, -1000, -1000, - 270, 595, 651, -1000, 4953, 4953, -1000, -1000, 345, 4089, - -1000, -1000, 6810, -1000, -1000, 2721, 4089, 3185, -1000, -1000, - -1000, 52, 271, 52, -116, 496, 149, -1000, 4749, 205, - -1000, -1000, -1000, -1000, -1000, -1000, 705, 6653, 649, -1000, - 487, -1000, -1000, 520, 7128, 7128, 691, -1000, 201, -1000, - -1000, 303, -167, -21, 241, -1000, 341, -1000, 502, -1000, - -1000, -40, 720, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, 264, 237, -1000, 222, -1000, -1000, - -1000, -1000, -1000, -1000, 618, -1000, -1000, -1000, -1000, 4953, - 595, 595, -1000, -1000, -1000, -1000, 87, 303, -1000, 303, - 502, 502, -1000, 502, 515, -1000, 502, 4, 502, 1, - 303, 303, 487, -107, -1000, 201, 4749, 703, 488, 518, - -1000, -1000, -1000, 661, 5681, 5838, 719, -1000, 487, -1000, - 537, 84, -1000, -1000, 2489, -1000, -1000, -1000, 143, -1000, - -130, 7128, -1000, 125, -1000, -70, -1000, 346, 342, 297, - 595, 2257, -1000, -1000, -1000, 83, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, 4953, 303, 258, 201, 697, 693, - 6653, 6653, 6653, 6653, -1000, 573, 564, -1000, 565, 554, - 572, 7442, -1000, 329, 5681, 111, -1000, 6496, -1000, -1000, - 7285, 465, 303, 7128, -1000, 272, 612, -1000, 208, 648, - -1000, 640, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 10, - -1000, -1000, -1000, 4749, 4749, 518, 535, 449, -1000, -1000, - -1000, -1000, 561, -1000, 558, -1000, -1000, -1000, -1000, -1000, - 49, 46, 41, -1000, 461, -1000, -1000, -1000, 610, -1000, - 253, -1000, -1000, 303, 43, -136, 201, 381, 4749, 4749, - -1000, -1000, 487, 487, 487, -1000, -1000, -1000, 601, -123, - -143, 201, 201, 7128, 7128, 7128, -1000, 594, -1000, 302, - -1000, 302, 302, -134, -1000, 7128, -1000, -1000, -141, -1000, - -145, -1000, + -1000, 7252, -1000, -1000, -1000, -1000, -1000, -1000, 251, -1000, + -1000, -1000, -1000, 343, 343, -1000, 7252, -1000, -1000, -1000, + -1000, 289, 614, 4739, 4739, 668, -1000, 500, -1000, -1000, + -1000, 597, -1000, -1000, 192, 6781, 604, 90, 7252, 437, + 2943, -1000, -1000, -1000, 152, 6149, -1000, -1000, -1000, 590, + -1000, -1000, -1000, -1000, -1000, -1000, 671, 387, -1000, 1264, + 7252, 169, 368, 7252, 7252, 7252, 640, 513, 7252, -1000, + -1000, -1000, 7252, 682, 7252, 7252, 7252, -1000, -1000, 683, + -1000, 682, -1000, -1000, -1000, -1000, -1000, 4739, -1000, -1000, + 114, -1000, -1000, -1000, 696, 113, 291, -1000, 4739, 1362, + 343, 343, -1000, -1000, 61, -1000, -1000, 4943, 4943, 4943, + 4943, 4943, 4943, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 343, 89, -1000, 4519, + 343, 343, 343, 343, 343, 343, 4739, 343, 343, 343, + 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, + -1000, -1000, 441, -1000, 256, 667, 289, 553, 5992, 501, + -1000, -1000, 537, 7252, -1000, 7095, 3639, 680, 2943, 437, + 4739, 64, -1000, -1000, -1000, -1000, -145, -154, 95, 216, + -69, -1000, -1000, 457, -1000, 457, 457, 457, 457, -43, + -43, -43, -43, -1000, -1000, -1000, -1000, -1000, 495, -1000, + 457, 457, 457, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 493, 493, 493, 460, 460, -1000, 625, 510, -1000, + 44, 435, -1000, -1000, 7252, -1000, -1000, 680, 7252, -1000, + -1000, -1000, 667, -86, -1000, -1000, -1000, -1000, 381, 167, + -1000, 7252, -1000, -1000, -1000, 564, 4739, 4739, 225, 4739, + 4739, 118, 4943, 242, 172, 4943, 4943, 4943, 4943, 4943, + 4943, 4943, 4943, 4943, 4943, 4943, 4943, 4943, 4943, 4943, + 272, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 366, + -1000, 500, 342, 342, 87, 87, 87, 87, 87, 1523, + 3859, 3407, 289, 4519, 4079, 4079, 4739, 4739, 4079, 649, + 141, 167, 6938, -1000, 289, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, 4079, 4079, 4079, 4079, 4739, -1000, -1000, -1000, + 614, -1000, 649, 666, -1000, 571, 569, 4079, -1000, 505, + 7095, 343, -1000, 5835, -1000, 438, -1000, 150, -1000, 88, + -1000, -1000, -1000, 668, 4739, -1000, 167, -1000, 362, 343, + -1000, -63, 147, -1000, -1000, 492, 616, 138, 358, 121, + -1000, -1000, 610, -1000, 186, -71, -1000, -1000, 249, -43, + -43, -1000, -1000, 64, 584, 64, 64, 64, 283, -1000, + -1000, -1000, -1000, 248, -1000, -1000, -1000, 224, -1000, -1000, + 7252, -1000, 110, 146, 24, -5, -9, -10, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 7252, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, 271, -1000, 4739, -1000, -1000, + 562, 118, 137, -1000, -1000, 252, -1000, -1000, 167, 167, + 1077, -1000, -1000, -1000, -1000, 242, 4943, 4943, 4943, 527, + 1077, 1149, 288, 1202, 87, 237, 237, 99, 99, 99, + 99, 99, 171, 171, -1000, -1000, -1000, 289, -1000, -1000, + -1000, 289, 4079, 430, -1000, -1000, 5147, 85, 343, 82, + -1000, -1000, 289, 322, 322, 77, 229, 322, 4079, 203, + -1000, 4739, 289, -1000, 322, 289, 322, 322, -1000, -1000, + 7252, -1000, -1000, -1000, -1000, 498, -1000, 620, 424, 421, + -1000, -1000, 4299, 289, 379, 80, 668, 7095, 4739, 3407, + 667, 167, -1000, 357, 609, 136, 355, 6938, -1000, 353, + -1000, -1000, 341, 502, 35, -1000, -1000, -1000, 388, 64, + 64, -1000, 143, -1000, -1000, -1000, 351, -1000, 429, 340, + 2479, -1000, 7252, -1000, -1000, -1000, 336, -45, 489, 323, + 307, -1000, -1000, -1000, -1000, 167, -1000, -1000, -1000, -1000, + -1000, -1000, 527, 1077, 1046, -1000, 4943, 4943, -1000, -1000, + 322, 4079, -1000, -1000, 6620, -1000, -1000, 2711, 4079, 3175, + -1000, -1000, -1000, 60, 272, 60, -116, 434, 157, -1000, + 4739, 277, -1000, -1000, -1000, -1000, -1000, -1000, 680, 6463, + 615, -1000, 343, -1000, -1000, 440, 6938, 6938, 667, -1000, + 167, -1000, -1000, 289, -156, -49, 221, -1000, 314, -1000, + 457, -1000, -1000, -65, 692, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 257, 204, -1000, 200, + -1000, -1000, -1000, -1000, -1000, -1000, 583, -1000, -1000, -1000, + -1000, 4943, 1077, 1077, -1000, -1000, -1000, -1000, 79, 289, + -1000, 289, 457, 457, -1000, 457, 460, -1000, 457, -25, + 457, -26, 289, 289, 343, -112, -1000, 167, 4739, 678, + 426, 627, -1000, -1000, -1000, 647, 5491, 5648, 689, -1000, + 343, -1000, 500, 65, -1000, -1000, 2479, -1000, -1000, -1000, + 126, -1000, -121, 6938, -1000, 96, -1000, -98, -1000, 384, + 302, 303, 1077, 2247, -1000, -1000, -1000, 56, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 4943, 289, 253, 167, + 676, 670, 6463, 6463, 6463, 6463, -1000, 545, 534, -1000, + 538, 528, 554, 7252, -1000, 311, 5491, 73, -1000, 6306, + -1000, -1000, 7095, 421, 289, 6938, -1000, 296, 577, -1000, + 190, 613, -1000, 612, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 84, -1000, -1000, -1000, 4739, 4739, 627, 442, 491, + -1000, -1000, -1000, -1000, 525, -1000, 524, -1000, -1000, -1000, + -1000, -1000, 33, 31, 30, -1000, 418, -1000, -1000, -1000, + 574, -1000, 243, -1000, -1000, 289, 39, -124, 167, 401, + 4739, 4739, -1000, -1000, 343, 343, 343, -1000, -1000, -1000, + 550, -119, -132, 167, 167, 6938, 6938, 6938, -1000, 540, + -1000, 301, -1000, 301, 301, -122, -1000, 6938, -1000, -1000, + -125, -1000, -134, -1000, } var yyPgo = [...]int{ - 0, 908, 907, 906, 904, 903, 899, 898, 25, 446, - 897, 896, 895, 894, 893, 892, 891, 890, 888, 886, - 884, 882, 881, 880, 877, 53, 876, 875, 874, 47, - 873, 49, 872, 871, 869, 32, 77, 19, 29, 13, - 863, 22, 8, 4, 862, 861, 6, 853, 1059, 851, - 51, 844, 842, 841, 2, 20, 840, 833, 830, 829, - 48, 778, 827, 826, 825, 824, 822, 821, 42, 1, - 14, 17, 15, 820, 35, 7, 819, 33, 817, 816, - 815, 814, 23, 813, 46, 810, 21, 44, 809, 39, - 5, 37, 52, 57, 808, 807, 806, 352, 805, 148, - 308, 804, 802, 801, 800, 61, 0, 9, 10, 24, - 799, 793, 28, 3, 796, 795, 43, 12, 27, 794, - 16, 791, 789, 784, 783, 782, 781, 780, 234, 776, - 775, 773, 30, 34, 772, 771, 770, 768, 761, 759, - 50, 18, 757, 756, 743, 741, 45, 740, 55, 41, - 739, 737, 736, 11, 735, 734, 732, 70, 180, 731, - 95, + 0, 875, 874, 873, 872, 856, 849, 847, 26, 353, + 846, 845, 844, 841, 835, 833, 829, 828, 827, 826, + 824, 823, 821, 820, 819, 54, 817, 816, 815, 49, + 814, 65, 811, 810, 809, 29, 174, 33, 30, 13, + 808, 21, 16, 6, 807, 806, 5, 805, 902, 804, + 50, 803, 802, 799, 4, 20, 798, 796, 795, 794, + 52, 14, 792, 788, 787, 786, 782, 781, 35, 1, + 18, 12, 17, 780, 132, 7, 778, 43, 776, 775, + 774, 771, 22, 763, 48, 762, 24, 47, 761, 41, + 2, 39, 51, 53, 760, 758, 757, 306, 756, 116, + 253, 755, 44, 753, 751, 23, 0, 9, 10, 34, + 750, 784, 25, 3, 749, 748, 94, 11, 28, 747, + 19, 746, 744, 743, 742, 738, 735, 734, 212, 733, + 732, 731, 46, 32, 730, 729, 728, 727, 725, 724, + 55, 15, 722, 718, 716, 715, 42, 714, 45, 37, + 713, 712, 710, 8, 709, 708, 707, 70, 156, 706, + 109, } var yyR1 = [...]int{ @@ -1590,7 +1571,7 @@ var yyR2 = [...]int{ 2, 3, 1, 1, 1, 3, 2, 6, 7, 7, 7, 9, 7, 7, 7, 4, 5, 4, 1, 3, 3, 3, 2, 2, 3, 4, 2, 3, 2, 2, - 4, 4, 3, 4, 1, 1, 1, 3, 5, 6, + 4, 4, 3, 6, 1, 1, 1, 3, 5, 6, 5, 5, 5, 3, 3, 6, 3, 5, 0, 3, 0, 2, 4, 2, 2, 2, 2, 2, 0, 2, 0, 2, 1, 2, 2, 0, 1, 1, 0, 1, @@ -1691,67 +1672,67 @@ var yyChk = [...]int{ 144, 146, 147, 148, 149, 150, -111, 74, 58, -48, -48, -51, -48, 22, 54, -111, -48, -50, 10, -48, -48, -48, -34, 10, -50, -116, -116, -116, -69, -39, - -116, -116, 8, 92, 73, 72, 89, 56, 17, -39, - -58, 92, 74, 90, 91, 76, 94, 93, 104, 97, - 98, 99, 100, 101, 102, 103, 95, 96, 107, 82, - 83, 84, 85, 86, 87, 88, -98, -157, -74, -157, - 111, 112, -61, -61, -61, -61, -61, -61, -157, 110, - -8, -157, -157, -157, -157, -157, -157, -157, -78, -39, - -157, -160, -157, -160, -160, -160, -160, -160, -160, -160, - -157, -157, -157, -157, 56, -85, 23, 24, -86, -158, - -31, -62, -107, 61, 64, -30, 45, -59, 29, 36, - -8, -157, -48, -90, -91, -75, -107, -111, -112, -111, - -105, -55, 11, -93, -39, -133, 107, 214, -151, -135, - 222, -146, -147, -152, 128, 126, -148, 33, 121, 27, - -142, 68, 74, -138, 176, -128, 55, -128, -128, -128, - -128, -132, 158, -132, -132, -132, 55, -128, -128, -128, - -140, 55, -140, -140, -141, 55, -141, 22, 54, -101, - 116, 222, 200, 118, 115, 119, 114, 173, 158, 67, - 28, 14, 211, 58, 56, -48, -116, -55, -48, -116, - -116, -116, -86, 187, -116, 56, -158, 40, -39, -39, - -67, 68, 74, 69, 70, -39, -39, -61, -68, -71, - -74, 65, 92, 90, 91, 76, -61, -61, -61, -61, + -116, -102, 123, 21, 8, 92, 73, 72, 89, 56, + 17, -39, -58, 92, 74, 90, 91, 76, 94, 93, + 104, 97, 98, 99, 100, 101, 102, 103, 95, 96, + 107, 82, 83, 84, 85, 86, 87, 88, -98, -157, + -74, -157, 111, 112, -61, -61, -61, -61, -61, -61, + -157, 110, -8, -157, -157, -157, -157, -157, -157, -157, + -78, -39, -157, -160, -157, -160, -160, -160, -160, -160, + -160, -160, -157, -157, -157, -157, 56, -85, 23, 24, + -86, -158, -31, -62, -107, 61, 64, -30, 45, -59, + 29, 36, -8, -157, -48, -90, -91, -75, -107, -111, + -112, -111, -105, -55, 11, -93, -39, -133, 107, 214, + -151, -135, 222, -146, -147, -152, 128, 126, -148, 33, + 121, 27, -142, 68, 74, -138, 176, -128, 55, -128, + -128, -128, -128, -132, 158, -132, -132, -132, 55, -128, + -128, -128, -140, 55, -140, -140, -141, 55, -141, 22, + 54, -101, 116, 222, 200, 118, 115, 119, 114, 173, + 158, 67, 28, 14, 211, 58, 56, -48, -116, -55, + -48, -116, -116, -116, -86, 187, -116, 56, -158, -48, + 40, -39, -39, -67, 68, 74, 69, 70, -39, -39, + -61, -68, -71, -74, 65, 92, 90, 91, 76, -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, - -61, -118, 58, 60, 58, -60, -60, -107, -37, 20, - -36, -38, 99, -39, -111, -108, -112, -105, -158, -8, - -36, -36, -39, -39, -36, -29, -76, -77, 78, -107, - -158, -36, -37, -36, -36, -84, -87, -96, 18, 10, - 36, 36, -36, -89, 54, -90, -70, -72, -71, -157, - -8, -88, -107, -55, 56, 82, 110, -82, -39, 58, - -157, -136, 173, 82, 55, 27, -148, 58, 58, -148, - -129, 28, 68, -139, 177, 61, -132, -132, -133, 29, - -133, -133, -133, -145, 60, 61, 61, -48, -116, -102, - -103, 123, 21, 121, 27, 82, 123, 129, 129, 129, - -48, -116, -116, 60, -39, 41, 68, 69, 70, -68, - -61, -61, -61, -35, 134, 73, -158, -158, -36, 56, - -110, -109, 21, -107, 60, 110, -157, 110, -158, -158, - -158, 56, 127, 21, -158, -36, -79, -77, 80, -39, - -158, -158, -158, -158, -158, -48, -40, 10, 26, -89, - 56, -158, -158, -158, 56, 110, -82, -91, -39, -108, - -86, 58, -134, 28, 82, 58, -154, -153, -107, 58, - 58, -130, 54, 60, 61, 62, 68, 190, 57, -133, - -133, 58, 108, 57, 56, 56, 57, 56, -117, -157, - -108, -48, -116, 58, 158, -149, 58, -146, -35, 73, - -61, -61, -158, -38, -109, 99, -112, -37, -108, -120, - 108, 155, 133, 153, 149, 170, 160, 175, 151, 176, - -118, -120, 205, -82, 81, -39, 79, -55, -41, -42, - -43, -44, -52, -74, -157, -48, 27, -72, 36, -8, - -157, -107, -107, -86, -158, -137, 229, 223, 161, 61, - 57, 56, -128, -143, 173, 8, 60, 61, 61, 29, - -61, 110, -158, -158, -128, -128, -128, -141, -128, 143, - -128, 143, -158, -158, -157, -33, 203, -39, -80, 12, - 56, -45, -46, -47, 44, 48, 50, 45, 46, 47, - 51, -115, 21, -41, -157, -114, -113, 21, -111, 60, - 8, -70, -8, 110, -117, 82, 208, -153, -144, 128, - 27, 126, 190, 57, 57, 58, 99, -132, 58, -61, - -158, 60, -81, 13, 15, -42, -43, -42, -43, 44, - 44, 44, 49, 44, 49, 44, -46, -111, -158, -53, - 52, 124, 53, -113, -90, -158, -107, 58, 34, -131, - 67, 27, 27, -32, 92, 208, -39, -69, 54, 54, - 44, 44, 121, 121, 121, 35, 60, -158, 206, 51, - 209, -39, -39, -157, -157, -157, 41, 207, 210, -54, - -107, -54, -54, 41, -158, 56, -158, -158, 208, -107, - 209, 210, + -61, -61, -61, -61, -118, 58, 60, 58, -60, -60, + -107, -37, 20, -36, -38, 99, -39, -111, -108, -112, + -105, -158, -8, -36, -36, -39, -39, -36, -29, -76, + -77, 78, -107, -158, -36, -37, -36, -36, -84, -87, + -96, 18, 10, 36, 36, -36, -89, 54, -90, -70, + -72, -71, -157, -8, -88, -107, -55, 56, 82, 110, + -82, -39, 58, -157, -136, 173, 82, 55, 27, -148, + 58, 58, -148, -129, 28, 68, -139, 177, 61, -132, + -132, -133, 29, -133, -133, -133, -145, 60, 61, 61, + -48, -116, -102, -103, 121, 27, 82, 123, 129, 129, + 129, -48, -116, -116, 60, -39, -116, 41, 68, 69, + 70, -68, -61, -61, -61, -35, 134, 73, -158, -158, + -36, 56, -110, -109, 21, -107, 60, 110, -157, 110, + -158, -158, -158, 56, 127, 21, -158, -36, -79, -77, + 80, -39, -158, -158, -158, -158, -158, -48, -40, 10, + 26, -89, 56, -158, -158, -158, 56, 110, -82, -91, + -39, -108, -86, 58, -134, 28, 82, 58, -154, -153, + -107, 58, 58, -130, 54, 60, 61, 62, 68, 190, + 57, -133, -133, 58, 108, 57, 56, 56, 57, 56, + -117, -157, -108, -48, -116, 58, 158, -149, 58, -146, + -35, 73, -61, -61, -158, -38, -109, 99, -112, -37, + -108, -120, 108, 155, 133, 153, 149, 170, 160, 175, + 151, 176, -118, -120, 205, -82, 81, -39, 79, -55, + -41, -42, -43, -44, -52, -74, -157, -48, 27, -72, + 36, -8, -157, -107, -107, -86, -158, -137, 229, 223, + 161, 61, 57, 56, -128, -143, 173, 8, 60, 61, + 61, 29, -61, 110, -158, -158, -128, -128, -128, -141, + -128, 143, -128, 143, -158, -158, -157, -33, 203, -39, + -80, 12, 56, -45, -46, -47, 44, 48, 50, 45, + 46, 47, 51, -115, 21, -41, -157, -114, -113, 21, + -111, 60, 8, -70, -8, 110, -117, 82, 208, -153, + -144, 128, 27, 126, 190, 57, 57, 58, 99, -132, + 58, -61, -158, 60, -81, 13, 15, -42, -43, -42, + -43, 44, 44, 44, 49, 44, 49, 44, -46, -111, + -158, -53, 52, 124, 53, -113, -90, -158, -107, 58, + 34, -131, 67, 27, 27, -32, 92, 208, -39, -69, + 54, 54, 44, 44, 121, 121, 121, 35, 60, -158, + 206, 51, 209, -39, -39, -157, -157, -157, 41, 207, + 210, -54, -107, -54, -54, 41, -158, 56, -158, -158, + 208, -107, 209, 210, } var yyDef = [...]int{ @@ -1789,7 +1770,7 @@ var yyDef = [...]int{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 160, 161, 177, 0, 190, 0, 0, 0, 183, 184, 188, 186, 190, 655, 164, 655, 167, 655, 0, 655, 172, - 655, 28, 654, 23, 0, 0, 421, 268, 0, 273, + 476, 28, 654, 23, 0, 0, 421, 268, 0, 273, 275, 0, 310, 311, 312, 313, 314, 0, 0, 0, 0, 0, 0, 336, 337, 338, 339, 398, 399, 400, 401, 402, 403, 404, 277, 278, 395, 0, 444, 0, @@ -1804,67 +1785,67 @@ var yyDef = [...]int{ 72, 101, 101, 101, 103, 103, 43, 0, 0, 45, 0, 155, 158, 461, 0, 157, 655, 266, 0, 655, 655, 655, 420, 0, 655, 192, 165, 170, 0, 308, - 171, 173, 425, 0, 0, 0, 0, 0, 0, 271, + 171, 0, 477, 478, 425, 0, 0, 0, 0, 0, + 0, 271, 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, 295, - 296, 297, 298, 299, 300, 301, 274, 0, 288, 0, - 0, 0, 330, 331, 332, 333, 334, 0, 212, 0, - 27, 0, 0, 0, 0, 0, 0, 208, 0, 387, - 0, 352, 0, 353, 354, 355, 356, 357, 358, 359, - 0, 212, 0, 0, 0, 416, 418, 419, 424, 30, - 208, 0, 405, 0, 0, 0, 211, 437, 0, 0, - -2, 0, 256, 266, 445, 0, 395, 0, 259, 490, - 491, 412, 0, 449, 450, 451, 0, 0, 46, 52, - 0, 58, 59, 0, 0, 0, 0, 0, 142, 143, - 113, 111, 0, 108, 107, 64, 0, 123, 123, 85, - 86, 126, 0, 126, 126, 126, 0, 79, 80, 81, - 73, 0, 74, 75, 76, 0, 77, 463, 0, 655, - 476, 0, 473, 0, 471, 0, 466, 467, 468, 469, - 470, 472, 474, 475, 0, 156, 178, 655, 191, 180, - 181, 182, 655, 0, 187, 0, 443, 0, 269, 270, - 272, 289, 0, 291, 293, 422, 423, 279, 280, 304, - 305, 306, 0, 0, 0, 0, 302, 284, 0, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 329, 371, 372, 0, 327, 328, 335, 0, 0, - 213, 214, 216, 220, 0, 396, 0, -2, 307, 27, - 0, 0, 0, 0, 0, 0, 393, 390, 0, 0, - 361, 0, 0, 0, 0, 415, 24, 0, 458, 459, - 406, 407, 225, 31, 0, 437, 427, 439, 441, 0, - 27, 0, 433, 412, 0, 0, 0, 420, 267, 127, - 0, 50, 0, 0, 0, 137, 0, 139, 140, 0, - 119, 0, 112, 61, 109, 0, 126, 126, 87, 0, - 88, 89, 90, 0, 97, 0, 0, 656, 147, 0, - 655, 477, 478, 479, 480, 0, 0, 0, 0, 0, - 159, 179, 185, 189, 309, 426, 290, 292, 294, 281, - 302, 285, 0, 282, 0, 0, 276, 340, 0, 0, - 217, 221, 0, 223, 224, 0, 212, 0, -2, 343, - 344, 0, 0, 0, 0, 412, 0, 391, 0, 0, - 351, 362, 363, 364, 365, 25, 266, 0, 0, 32, - 0, 442, -2, 0, 0, 0, 420, 446, 447, 396, - 36, 0, 54, 0, 0, 49, 0, 144, 99, 138, - 141, 121, 0, 114, 115, 116, 117, 118, 100, 83, - 84, 124, 125, 96, 0, 0, 104, 0, 44, 657, - 658, 148, 149, 150, 0, 152, 153, 154, 283, 0, - 303, 286, 341, 215, 222, 218, 0, 0, 397, 0, - 99, 99, 376, 99, 103, 379, 99, 381, 99, 384, - 0, 0, 0, 388, 350, 394, 0, 408, 226, 227, - 229, 230, 231, 239, 0, 241, 0, 440, 0, -2, - 0, 435, 434, 35, 656, 47, 55, 56, 0, 53, - 135, 0, 146, 128, 122, 0, 98, 0, 0, 0, - 287, 0, 342, 345, 373, 123, 377, 378, 380, 382, - 383, 385, 347, 346, 0, 0, 0, 392, 410, 0, - 0, 0, 0, 0, 246, 0, 0, 249, 0, 0, - 0, 0, 240, 0, 0, 260, 242, 0, 244, 245, - 0, 430, 27, 0, 42, 0, 0, 145, 133, 0, - 130, 132, 120, 102, 105, 151, 219, 374, 375, 366, - 349, 389, 26, 0, 0, 228, 235, 0, 238, 247, - 248, 250, 0, 252, 0, 254, 255, 232, 233, 234, - 0, 0, 0, 243, 438, -2, 436, 51, 0, 60, - 0, 129, 131, 0, 0, 0, 411, 409, 0, 0, - 251, 253, 0, 0, 0, 136, 134, 348, 0, 0, - 0, 236, 237, 0, 0, 0, 367, 0, 370, 0, - 264, 0, 0, 368, 261, 0, 262, 263, 0, 265, - 0, 369, + 0, 295, 296, 297, 298, 299, 300, 301, 274, 0, + 288, 0, 0, 0, 330, 331, 332, 333, 334, 0, + 212, 0, 27, 0, 0, 0, 0, 0, 0, 208, + 0, 387, 0, 352, 0, 353, 354, 355, 356, 357, + 358, 359, 0, 212, 0, 0, 0, 416, 418, 419, + 424, 30, 208, 0, 405, 0, 0, 0, 211, 437, + 0, 0, -2, 0, 256, 266, 445, 0, 395, 0, + 259, 490, 491, 412, 0, 449, 450, 451, 0, 0, + 46, 52, 0, 58, 59, 0, 0, 0, 0, 0, + 142, 143, 113, 111, 0, 108, 107, 64, 0, 123, + 123, 85, 86, 126, 0, 126, 126, 126, 0, 79, + 80, 81, 73, 0, 74, 75, 76, 0, 77, 463, + 0, 655, 476, 0, 473, 0, 471, 0, 466, 467, + 468, 469, 470, 472, 474, 475, 0, 156, 178, 655, + 191, 180, 181, 182, 655, 0, 187, 0, 443, 655, + 0, 269, 270, 272, 289, 0, 291, 293, 422, 423, + 279, 280, 304, 305, 306, 0, 0, 0, 0, 302, + 284, 0, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 329, 371, 372, 0, 327, 328, + 335, 0, 0, 213, 214, 216, 220, 0, 396, 0, + -2, 307, 27, 0, 0, 0, 0, 0, 0, 393, + 390, 0, 0, 361, 0, 0, 0, 0, 415, 24, + 0, 458, 459, 406, 407, 225, 31, 0, 437, 427, + 439, 441, 0, 27, 0, 433, 412, 0, 0, 0, + 420, 267, 127, 0, 50, 0, 0, 0, 137, 0, + 139, 140, 0, 119, 0, 112, 61, 109, 0, 126, + 126, 87, 0, 88, 89, 90, 0, 97, 0, 0, + 656, 147, 0, 655, 479, 480, 0, 0, 0, 0, + 0, 159, 179, 185, 189, 309, 173, 426, 290, 292, + 294, 281, 302, 285, 0, 282, 0, 0, 276, 340, + 0, 0, 217, 221, 0, 223, 224, 0, 212, 0, + -2, 343, 344, 0, 0, 0, 0, 412, 0, 391, + 0, 0, 351, 362, 363, 364, 365, 25, 266, 0, + 0, 32, 0, 442, -2, 0, 0, 0, 420, 446, + 447, 396, 36, 0, 54, 0, 0, 49, 0, 144, + 99, 138, 141, 121, 0, 114, 115, 116, 117, 118, + 100, 83, 84, 124, 125, 96, 0, 0, 104, 0, + 44, 657, 658, 148, 149, 150, 0, 152, 153, 154, + 283, 0, 303, 286, 341, 215, 222, 218, 0, 0, + 397, 0, 99, 99, 376, 99, 103, 379, 99, 381, + 99, 384, 0, 0, 0, 388, 350, 394, 0, 408, + 226, 227, 229, 230, 231, 239, 0, 241, 0, 440, + 0, -2, 0, 435, 434, 35, 656, 47, 55, 56, + 0, 53, 135, 0, 146, 128, 122, 0, 98, 0, + 0, 0, 287, 0, 342, 345, 373, 123, 377, 378, + 380, 382, 383, 385, 347, 346, 0, 0, 0, 392, + 410, 0, 0, 0, 0, 0, 246, 0, 0, 249, + 0, 0, 0, 0, 240, 0, 0, 260, 242, 0, + 244, 245, 0, 430, 27, 0, 42, 0, 0, 145, + 133, 0, 130, 132, 120, 102, 105, 151, 219, 374, + 375, 366, 349, 389, 26, 0, 0, 228, 235, 0, + 238, 247, 248, 250, 0, 252, 0, 254, 255, 232, + 233, 234, 0, 0, 0, 243, 438, -2, 436, 51, + 0, 60, 0, 129, 131, 0, 0, 0, 411, 409, + 0, 0, 251, 253, 0, 0, 0, 136, 134, 348, + 0, 0, 0, 236, 237, 0, 0, 0, 367, 0, + 370, 0, 264, 0, 0, 368, 261, 0, 262, 263, + 0, 265, 0, 369, } var yyTok1 = [...]int{ @@ -3234,10 +3215,10 @@ yydefault: yyVAL.statement = &Radon{Action: AttachListStr} } case 173: - yyDollar = yyS[yypt-4 : yypt+1] + yyDollar = yyS[yypt-6 : yypt+1] //line sql.y:1080 { - yyVAL.statement = &Radon{Action: ReshardStr, Table: yyDollar[3].tableName} + yyVAL.statement = &Radon{Action: ReshardStr, Table: yyDollar[3].tableName, NewName: yyDollar[5].tableName} } case 174: yyDollar = yyS[yypt-1 : yypt+1] diff --git a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.y b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.y index 8b31b78e..c049fedf 100644 --- a/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.y +++ b/src/vendor/github.com/xelabs/go-mysqlstack/sqlparser/sql.y @@ -1076,9 +1076,9 @@ radon_statement: { $$ = &Radon{ Action: AttachListStr} } -| RADON RESHARD table_name force_eof +| RADON RESHARD table_name to_opt table_name force_eof { - $$ = &Radon{ Action: ReshardStr, Table: $3} + $$ = &Radon{ Action: ReshardStr, Table: $3, NewName: $5} } show_statement_type: