diff options
author | Manoj Rajagopalan <manoj@nanorex.com> | 2008-04-14 18:20:06 +0000 |
---|---|---|
committer | Manoj Rajagopalan <manoj@nanorex.com> | 2008-04-14 18:20:06 +0000 |
commit | efe57644b406adcfea898f9a479ee6c2b2a3fa12 (patch) | |
tree | 5ddc73a7b112893bb6859a694fbd05774034858a /cad/plugins/NanoVision-1/src/Plugins | |
parent | 2ea02b07e2046f1bab9167679d91181f16bc012d (diff) | |
download | nanoengineer-efe57644b406adcfea898f9a479ee6c2b2a3fa12.tar.gz nanoengineer-efe57644b406adcfea898f9a479ee6c2b2a3fa12.zip |
GroupClassification field added to NXMoleculeSet.
MMP parser and tests updated.
Diffstat (limited to 'cad/plugins/NanoVision-1/src/Plugins')
6 files changed, 3382 insertions, 3060 deletions
diff --git a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExport.cpp b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExport.cpp index d693cdbc5..6ddff60c2 100644 --- a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExport.cpp +++ b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExport.cpp @@ -1,4 +1,4 @@ -/* #line 1 "NanorexMMPImportExport.rl" */ +#line 1 "NanorexMMPImportExport.rl" // *********************** GENERATED BY RAGEL 6.0 ******************* // ** Do not edit directly. Edit NanorexMMPImportExport.rl instead ** // ****************************************************************** @@ -41,44 +41,47 @@ inline void DEBUG_MSG(string const& filename, int line, string const& s) -/* #line 102 "NanorexMMPImportExport.rl" */ +#line 102 "NanorexMMPImportExport.rl" -/* #line 106 "NanorexMMPImportExport.rl" */ +#line 106 "NanorexMMPImportExport.rl" // static data from Ragel -/* #line 53 "NanorexMMPImportExport.cpp" */ +#line 53 "NanorexMMPImportExport.cpp" static const char _mmp_parser_actions[] = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 17, 1, 18, 1, 21, 1, 22, 1, - 26, 1, 30, 1, 32, 1, 33, 1, - 37, 1, 41, 1, 43, 1, 57, 1, - 58, 2, 0, 29, 2, 0, 53, 2, - 0, 55, 2, 0, 56, 2, 5, 12, - 2, 5, 13, 2, 5, 14, 2, 6, - 7, 2, 6, 8, 2, 6, 9, 2, - 8, 15, 2, 35, 24, 2, 37, 0, - 2, 41, 42, 3, 0, 16, 51, 3, - 0, 19, 54, 3, 0, 20, 52, 3, - 0, 23, 49, 3, 0, 25, 50, 3, - 0, 27, 38, 3, 0, 28, 39, 3, - 0, 28, 46, 3, 0, 31, 40, 3, - 0, 34, 48, 3, 0, 36, 47, 3, - 6, 8, 15, 3, 17, 0, 53, 3, - 44, 0, 45, 4, 9, 0, 20, 52, - 4, 9, 0, 23, 49, 4, 9, 0, - 25, 50, 4, 9, 0, 36, 47, 4, - 33, 0, 34, 48, 5, 6, 9, 0, - 20, 52, 5, 6, 9, 0, 23, 49, - 5, 6, 9, 0, 25, 50, 5, 6, - 9, 0, 36, 47, 5, 8, 15, 0, - 16, 51, 6, 6, 8, 15, 0, 16, - 51 + 26, 1, 28, 1, 31, 1, 33, 1, + 34, 1, 38, 1, 42, 1, 44, 1, + 58, 1, 59, 2, 0, 30, 2, 0, + 54, 2, 0, 56, 2, 0, 57, 2, + 5, 12, 2, 5, 13, 2, 5, 14, + 2, 6, 7, 2, 6, 8, 2, 6, + 9, 2, 8, 15, 2, 36, 24, 2, + 38, 0, 2, 42, 43, 3, 0, 16, + 52, 3, 0, 19, 55, 3, 0, 20, + 53, 3, 0, 23, 50, 3, 0, 25, + 51, 3, 0, 27, 39, 3, 0, 29, + 40, 3, 0, 29, 47, 3, 0, 32, + 41, 3, 0, 35, 49, 3, 0, 37, + 48, 3, 6, 8, 15, 3, 17, 0, + 54, 3, 45, 0, 46, 4, 9, 0, + 20, 53, 4, 9, 0, 23, 50, 4, + 9, 0, 25, 51, 4, 9, 0, 29, + 40, 4, 9, 0, 29, 47, 4, 9, + 0, 37, 48, 4, 34, 0, 35, 49, + 5, 6, 9, 0, 20, 53, 5, 6, + 9, 0, 23, 50, 5, 6, 9, 0, + 25, 51, 5, 6, 9, 0, 29, 40, + 5, 6, 9, 0, 29, 47, 5, 6, + 9, 0, 37, 48, 5, 8, 15, 0, + 16, 52, 6, 6, 8, 15, 0, 16, + 52 }; static const short _mmp_parser_key_offsets[] = { @@ -88,37 +91,39 @@ static const short _mmp_parser_key_offsets[] = { 47, 48, 49, 55, 61, 62, 63, 64, 65, 70, 75, 80, 81, 82, 83, 87, 92, 93, 94, 95, 100, 102, 107, 108, - 109, 110, 111, 116, 127, 141, 155, 160, - 165, 166, 167, 168, 173, 178, 179, 180, - 181, 182, 187, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 205, 210, 215, 216, - 217, 221, 223, 225, 227, 240, 254, 256, - 257, 258, 259, 260, 261, 265, 271, 278, - 283, 288, 290, 297, 299, 303, 309, 311, - 313, 315, 317, 319, 323, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 341, 343, - 354, 357, 360, 363, 368, 375, 382, 388, - 395, 403, 409, 414, 420, 429, 433, 441, - 447, 456, 460, 468, 474, 483, 487, 495, - 501, 507, 520, 522, 537, 552, 566, 581, - 589, 593, 601, 609, 617, 621, 629, 637, - 645, 649, 657, 665, 673, 680, 683, 686, - 689, 697, 702, 709, 717, 725, 727, 735, - 738, 741, 744, 747, 750, 753, 756, 759, - 762, 767, 774, 781, 788, 796, 802, 804, - 812, 819, 822, 825, 828, 831, 834, 841, - 848, 850, 863, 875, 890, 905, 911, 925, - 940, 943, 946, 949, 952, 958, 970, 985, - 1000, 1006, 1008, 1022, 1037, 1040, 1043, 1046, - 1051, 1059, 1062, 1065, 1068, 1073, 1085, 1100, - 1115, 1129, 1144, 1156, 1171, 1186, 1188, 1202, - 1217, 1220, 1223, 1226, 1229, 1234, 1246, 1261, - 1276, 1290, 1305, 1317, 1332, 1347, 1349, 1363, - 1378, 1381, 1384, 1387, 1390, 1393, 1396, 1399, - 1402, 1407, 1419, 1434, 1449, 1463, 1478, 1490, - 1505, 1520, 1522, 1536, 1551, 1554, 1557, 1562, - 1568, 1580, 1595, 1610, 1616, 1629, 1631, 1646, - 1661, 1675, 1690, 1704, 1719, 1721, 1721, 1733 + 109, 110, 111, 116, 121, 132, 146, 160, + 165, 177, 182, 183, 184, 185, 190, 195, + 196, 197, 198, 199, 204, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 222, 227, + 232, 233, 234, 238, 240, 242, 244, 258, + 272, 285, 299, 312, 326, 328, 329, 330, + 331, 332, 333, 337, 343, 350, 355, 360, + 362, 369, 371, 375, 381, 383, 385, 387, + 389, 391, 395, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 413, 415, 426, 429, + 432, 435, 440, 447, 454, 460, 467, 475, + 481, 486, 492, 501, 505, 513, 519, 528, + 532, 540, 546, 555, 559, 567, 573, 579, + 592, 594, 609, 624, 638, 653, 661, 665, + 673, 681, 689, 693, 701, 709, 717, 721, + 729, 737, 745, 752, 755, 758, 761, 769, + 774, 781, 789, 797, 799, 807, 810, 813, + 816, 819, 822, 825, 828, 831, 834, 839, + 846, 853, 860, 868, 874, 876, 884, 891, + 894, 897, 900, 903, 906, 913, 920, 922, + 935, 947, 962, 977, 983, 997, 1012, 1015, + 1018, 1021, 1024, 1030, 1036, 1048, 1063, 1078, + 1084, 1097, 1099, 1114, 1129, 1143, 1158, 1172, + 1187, 1190, 1193, 1196, 1201, 1209, 1212, 1215, + 1218, 1223, 1235, 1250, 1265, 1279, 1294, 1306, + 1321, 1336, 1338, 1352, 1367, 1370, 1373, 1376, + 1379, 1384, 1396, 1411, 1426, 1440, 1455, 1467, + 1482, 1497, 1499, 1513, 1528, 1531, 1534, 1537, + 1540, 1543, 1546, 1549, 1552, 1557, 1569, 1584, + 1599, 1613, 1628, 1640, 1655, 1670, 1672, 1686, + 1701, 1704, 1707, 1712, 1718, 1730, 1745, 1760, + 1766, 1779, 1781, 1796, 1811, 1825, 1840, 1854, + 1869, 1871, 1871, 1883 }; static const char _mmp_parser_trans_keys[] = { @@ -136,21 +141,30 @@ static const char _mmp_parser_trans_keys[] = { 32, 68, 11, 13, 97, 116, 97, 9, 32, 41, 11, 13, 10, 35, 10, 32, 103, 9, 13, 114, 111, 117, 112, 9, - 32, 40, 11, 13, 9, 32, 95, 11, - 13, 48, 57, 65, 90, 97, 122, 9, - 32, 41, 95, 11, 13, 45, 46, 48, - 57, 65, 90, 97, 122, 9, 32, 41, - 95, 11, 13, 45, 46, 48, 57, 65, - 90, 97, 122, 10, 32, 35, 9, 13, - 10, 32, 101, 9, 13, 110, 100, 49, - 10, 32, 35, 9, 13, 10, 32, 103, - 9, 13, 114, 111, 117, 112, 9, 32, - 40, 11, 13, 9, 32, 67, 11, 13, - 108, 105, 112, 98, 111, 97, 114, 100, - 9, 32, 41, 11, 13, 10, 32, 35, - 9, 13, 10, 32, 101, 9, 13, 110, - 100, 9, 32, 11, 13, -1, 10, -1, - 10, -1, 10, 9, 32, 95, 11, 13, + 32, 40, 11, 13, 9, 32, 40, 11, + 13, 9, 32, 95, 11, 13, 48, 57, + 65, 90, 97, 122, 9, 32, 41, 95, + 11, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 9, 32, 41, 95, 11, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 10, 32, 35, 9, 13, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, 10, 32, 101, 9, 13, 110, 100, + 49, 10, 32, 35, 9, 13, 10, 32, + 103, 9, 13, 114, 111, 117, 112, 9, + 32, 40, 11, 13, 9, 32, 67, 11, + 13, 108, 105, 112, 98, 111, 97, 114, + 100, 9, 32, 41, 11, 13, 10, 32, + 35, 9, 13, 10, 32, 101, 9, 13, + 110, 100, 9, 32, 11, 13, -1, 10, + -1, 10, -1, 10, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 9, 32, 95, 11, 13, 45, 46, 48, + 57, 65, 90, 97, 122, 10, 32, 35, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, 9, 32, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, 9, 32, 41, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, @@ -242,62 +256,30 @@ static const char _mmp_parser_trans_keys[] = { 65, 90, 97, 122, -1, 10, 114, -1, 10, 111, -1, 10, 117, -1, 10, 112, -1, 10, 32, 40, 9, 13, -1, 10, - 32, 95, 9, 13, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 41, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 41, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 35, 9, 13, -1, 10, - -1, 10, 32, 95, 9, 13, 45, 46, + 32, 40, 9, 13, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 41, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 41, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 110, - -1, 10, 102, -1, 10, 111, -1, 10, - 32, 9, 13, -1, 10, 32, 97, 99, - 111, 9, 13, -1, 10, 116, -1, 10, - 111, -1, 10, 109, -1, 10, 32, 9, - 13, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 61, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 61, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, -1, 10, 32, 95, + 32, 35, 9, 13, -1, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 104, -1, 10, 117, -1, - 10, 110, -1, 10, 107, -1, 10, 32, - 9, 13, -1, 10, 32, 95, 9, 13, + 122, -1, 10, 32, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 61, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 61, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 35, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, -1, 10, 32, + 32, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 112, -1, 10, 101, - -1, 10, 110, -1, 10, 103, -1, 10, - 114, -1, 10, 111, -1, 10, 117, -1, - 10, 112, -1, 10, 32, 9, 13, -1, + 90, 97, 122, -1, 10, 110, -1, 10, + 102, -1, 10, 111, -1, 10, 32, 9, + 13, -1, 10, 32, 97, 99, 111, 9, + 13, -1, 10, 116, -1, 10, 111, -1, + 10, 109, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, @@ -316,31 +298,72 @@ static const char _mmp_parser_trans_keys[] = { 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 111, -1, 10, 108, -1, 10, 32, - 9, 13, -1, 10, 32, 40, 9, 13, + 10, 104, -1, 10, 117, -1, 10, 110, + -1, 10, 107, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, + 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, + 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 35, 9, 13, - -1, 10, 32, 35, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, -1, + 97, 122, -1, 10, 32, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 35, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 112, -1, 10, 101, -1, 10, + 110, -1, 10, 103, -1, 10, 114, -1, + 10, 111, -1, 10, 117, -1, 10, 112, + -1, 10, 32, 9, 13, -1, 10, 32, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 61, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 61, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, + 57, 65, 90, 97, 122, -1, 10, 111, + -1, 10, 108, -1, 10, 32, 9, 13, + -1, 10, 32, 40, 9, 13, -1, 10, + 32, 95, 9, 13, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 41, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 9, 13, -1, 10, + 32, 35, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, -1, 10, 32, + 35, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 95, 9, 13, + 90, 97, 122, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 41, 95, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, -1, 10, 32, 35, 97, 98, 101, - 103, 105, 109, 9, 13, -1, 10, 32, - 97, 98, 101, 103, 105, 109, 9, 13, - 0 + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, + 32, 41, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, -1, + 10, 32, 35, 97, 98, 101, 103, 105, + 109, 9, 13, -1, 10, 32, 97, 98, + 101, 103, 105, 109, 9, 13, 0 }; static const char _mmp_parser_single_lengths[] = { @@ -350,37 +373,39 @@ static const char _mmp_parser_single_lengths[] = { 1, 1, 4, 4, 1, 1, 1, 1, 3, 3, 3, 1, 1, 1, 2, 3, 1, 1, 1, 3, 2, 3, 1, 1, - 1, 1, 3, 3, 4, 4, 3, 3, + 1, 1, 3, 3, 3, 4, 4, 3, + 4, 3, 1, 1, 1, 3, 3, 1, 1, 1, 1, 3, 3, 1, 1, 1, - 1, 3, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 3, 3, 3, 1, 1, - 2, 2, 2, 2, 3, 4, 2, 1, - 1, 1, 1, 1, 2, 2, 3, 3, - 3, 2, 3, 2, 2, 2, 0, 0, - 0, 0, 0, 2, 3, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 9, - 3, 3, 3, 3, 3, 3, 4, 3, - 4, 4, 3, 4, 5, 2, 4, 4, - 5, 2, 4, 4, 5, 2, 4, 4, - 4, 5, 2, 5, 5, 4, 5, 4, - 2, 4, 4, 4, 2, 4, 4, 4, - 2, 4, 4, 4, 3, 3, 3, 3, - 6, 3, 3, 4, 4, 2, 4, 3, + 1, 1, 1, 1, 1, 3, 3, 3, + 1, 1, 2, 2, 2, 2, 4, 4, + 3, 4, 3, 4, 2, 1, 1, 1, + 1, 1, 2, 2, 3, 3, 3, 2, + 3, 2, 2, 2, 0, 0, 0, 0, + 0, 2, 3, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 2, 9, 3, 3, + 3, 3, 3, 3, 4, 3, 4, 4, + 3, 4, 5, 2, 4, 4, 5, 2, + 4, 4, 5, 2, 4, 4, 4, 5, + 2, 5, 5, 4, 5, 4, 2, 4, + 4, 4, 2, 4, 4, 4, 2, 4, + 4, 4, 3, 3, 3, 3, 6, 3, + 3, 4, 4, 2, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 4, 4, 2, 4, - 3, 3, 3, 3, 3, 3, 5, 5, - 2, 5, 4, 5, 5, 4, 4, 5, - 3, 3, 3, 3, 4, 4, 5, 5, - 4, 2, 4, 5, 3, 3, 3, 3, - 6, 3, 3, 3, 3, 4, 5, 5, - 4, 5, 4, 5, 5, 2, 4, 5, + 3, 3, 4, 4, 2, 4, 3, 3, + 3, 3, 3, 3, 5, 5, 2, 5, + 4, 5, 5, 4, 4, 5, 3, 3, + 3, 3, 4, 4, 4, 5, 5, 4, + 5, 2, 5, 5, 4, 5, 4, 5, + 3, 3, 3, 3, 6, 3, 3, 3, + 3, 4, 5, 5, 4, 5, 4, 5, + 5, 2, 4, 5, 3, 3, 3, 3, + 3, 4, 5, 5, 4, 5, 4, 5, + 5, 2, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 5, 5, 4, 5, 4, 5, 5, 2, 4, 5, - 3, 3, 3, 3, 3, 3, 3, 3, - 3, 4, 5, 5, 4, 5, 4, 5, - 5, 2, 4, 5, 3, 3, 3, 4, - 4, 5, 5, 4, 5, 2, 5, 5, - 4, 5, 4, 5, 2, 0, 10, 9 + 3, 3, 3, 4, 4, 5, 5, 4, + 5, 2, 5, 5, 4, 5, 4, 5, + 2, 0, 10, 9 }; static const char _mmp_parser_range_lengths[] = { @@ -390,37 +415,39 @@ static const char _mmp_parser_range_lengths[] = { 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, - 0, 0, 1, 4, 5, 5, 1, 1, + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, - 0, 1, 1, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 1, 0, 0, 0, 5, 5, 0, 0, - 0, 0, 0, 0, 1, 2, 2, 1, - 1, 0, 2, 0, 1, 2, 1, 1, - 1, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 1, - 0, 0, 0, 1, 2, 2, 1, 2, - 2, 1, 1, 1, 2, 1, 2, 1, - 2, 1, 2, 1, 2, 1, 2, 1, - 1, 4, 0, 5, 5, 5, 5, 2, - 1, 2, 2, 2, 1, 2, 2, 2, - 1, 2, 2, 2, 2, 0, 0, 0, - 1, 1, 2, 2, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 2, 2, 2, 2, 1, 0, 2, - 2, 0, 0, 0, 0, 0, 1, 1, - 0, 4, 4, 5, 5, 1, 5, 5, - 0, 0, 0, 0, 1, 4, 5, 5, - 1, 0, 5, 5, 0, 0, 0, 1, - 1, 0, 0, 0, 1, 4, 5, 5, - 5, 5, 4, 5, 5, 0, 5, 5, + 0, 0, 0, 0, 0, 1, 1, 1, + 0, 0, 1, 0, 0, 0, 5, 5, + 5, 5, 5, 5, 0, 0, 0, 0, + 0, 0, 1, 2, 2, 1, 1, 0, + 2, 0, 1, 2, 1, 1, 1, 1, + 1, 1, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 1, 0, 0, + 0, 1, 2, 2, 1, 2, 2, 1, + 1, 1, 2, 1, 2, 1, 2, 1, + 2, 1, 2, 1, 2, 1, 1, 4, + 0, 5, 5, 5, 5, 2, 1, 2, + 2, 2, 1, 2, 2, 2, 1, 2, + 2, 2, 2, 0, 0, 0, 1, 1, + 2, 2, 2, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 2, + 2, 2, 2, 1, 0, 2, 2, 0, + 0, 0, 0, 0, 1, 1, 0, 4, + 4, 5, 5, 1, 5, 5, 0, 0, + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 0, 5, 5, 5, 5, 5, 5, + 0, 0, 0, 1, 1, 0, 0, 0, + 1, 4, 5, 5, 5, 5, 4, 5, + 5, 0, 5, 5, 0, 0, 0, 0, + 1, 4, 5, 5, 5, 5, 4, 5, + 5, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 5, 5, 5, 5, 4, 5, 5, 0, 5, 5, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 4, 5, 5, 5, 5, 4, 5, - 5, 0, 5, 5, 0, 0, 1, 1, - 4, 5, 5, 1, 4, 0, 5, 5, - 5, 5, 5, 5, 0, 0, 1, 1 + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 0, 5, 5, 5, 5, 5, 5, + 0, 0, 1, 1 }; static const short _mmp_parser_index_offsets[] = { @@ -430,37 +457,39 @@ static const short _mmp_parser_index_offsets[] = { 59, 61, 63, 69, 75, 77, 79, 81, 83, 88, 93, 98, 100, 102, 104, 108, 113, 115, 117, 119, 124, 127, 132, 134, - 136, 138, 140, 145, 153, 163, 173, 178, - 183, 185, 187, 189, 194, 199, 201, 203, - 205, 207, 212, 217, 219, 221, 223, 225, - 227, 229, 231, 233, 238, 243, 248, 250, - 252, 256, 259, 262, 265, 274, 284, 287, - 289, 291, 293, 295, 297, 301, 306, 312, - 317, 322, 325, 331, 334, 338, 343, 345, - 347, 349, 351, 353, 357, 362, 364, 366, - 368, 370, 372, 374, 376, 378, 383, 386, - 397, 401, 405, 409, 414, 420, 426, 432, - 438, 445, 451, 456, 462, 470, 474, 481, - 487, 495, 499, 506, 512, 520, 524, 531, - 537, 543, 553, 556, 567, 578, 588, 599, - 606, 610, 617, 624, 631, 635, 642, 649, - 656, 660, 667, 674, 681, 687, 691, 695, - 699, 707, 712, 718, 725, 732, 735, 742, - 746, 750, 754, 758, 762, 766, 770, 774, - 778, 783, 789, 795, 801, 808, 814, 817, - 824, 830, 834, 838, 842, 846, 850, 857, - 864, 867, 877, 886, 897, 908, 914, 924, - 935, 939, 943, 947, 951, 957, 966, 977, - 988, 994, 997, 1007, 1018, 1022, 1026, 1030, - 1035, 1043, 1047, 1051, 1055, 1060, 1069, 1080, - 1091, 1101, 1112, 1121, 1132, 1143, 1146, 1156, - 1167, 1171, 1175, 1179, 1183, 1188, 1197, 1208, - 1219, 1229, 1240, 1249, 1260, 1271, 1274, 1284, - 1295, 1299, 1303, 1307, 1311, 1315, 1319, 1323, - 1327, 1332, 1341, 1352, 1363, 1373, 1384, 1393, - 1404, 1415, 1418, 1428, 1439, 1443, 1447, 1452, - 1458, 1467, 1478, 1489, 1495, 1505, 1508, 1519, - 1530, 1540, 1551, 1561, 1572, 1575, 1576, 1588 + 136, 138, 140, 145, 150, 158, 168, 178, + 183, 192, 197, 199, 201, 203, 208, 213, + 215, 217, 219, 221, 226, 231, 233, 235, + 237, 239, 241, 243, 245, 247, 252, 257, + 262, 264, 266, 270, 273, 276, 279, 289, + 299, 308, 318, 327, 337, 340, 342, 344, + 346, 348, 350, 354, 359, 365, 370, 375, + 378, 384, 387, 391, 396, 398, 400, 402, + 404, 406, 410, 415, 417, 419, 421, 423, + 425, 427, 429, 431, 436, 439, 450, 454, + 458, 462, 467, 473, 479, 485, 491, 498, + 504, 509, 515, 523, 527, 534, 540, 548, + 552, 559, 565, 573, 577, 584, 590, 596, + 606, 609, 620, 631, 641, 652, 659, 663, + 670, 677, 684, 688, 695, 702, 709, 713, + 720, 727, 734, 740, 744, 748, 752, 760, + 765, 771, 778, 785, 788, 795, 799, 803, + 807, 811, 815, 819, 823, 827, 831, 836, + 842, 848, 854, 861, 867, 870, 877, 883, + 887, 891, 895, 899, 903, 910, 917, 920, + 930, 939, 950, 961, 967, 977, 988, 992, + 996, 1000, 1004, 1010, 1016, 1025, 1036, 1047, + 1053, 1063, 1066, 1077, 1088, 1098, 1109, 1119, + 1130, 1134, 1138, 1142, 1147, 1155, 1159, 1163, + 1167, 1172, 1181, 1192, 1203, 1213, 1224, 1233, + 1244, 1255, 1258, 1268, 1279, 1283, 1287, 1291, + 1295, 1300, 1309, 1320, 1331, 1341, 1352, 1361, + 1372, 1383, 1386, 1396, 1407, 1411, 1415, 1419, + 1423, 1427, 1431, 1435, 1439, 1444, 1453, 1464, + 1475, 1485, 1496, 1505, 1516, 1527, 1530, 1540, + 1551, 1555, 1559, 1564, 1570, 1579, 1590, 1601, + 1607, 1617, 1620, 1631, 1642, 1652, 1663, 1673, + 1684, 1687, 1688, 1700 }; static const short _mmp_parser_indicies[] = { @@ -481,245 +510,263 @@ static const short _mmp_parser_indicies[] = { 1, 48, 1, 49, 1, 50, 1, 50, 50, 51, 50, 1, 52, 53, 1, 55, 54, 56, 54, 1, 57, 1, 58, 1, - 59, 1, 60, 1, 60, 60, 61, 60, - 1, 61, 61, 62, 61, 62, 62, 62, - 1, 63, 63, 64, 66, 63, 65, 66, - 66, 66, 1, 67, 67, 68, 70, 67, - 69, 70, 70, 70, 1, 71, 68, 72, - 68, 1, 74, 73, 75, 73, 1, 76, - 1, 77, 1, 78, 1, 79, 78, 80, - 78, 1, 82, 81, 83, 81, 1, 84, - 1, 85, 1, 86, 1, 87, 1, 87, - 87, 88, 87, 1, 88, 88, 89, 88, - 1, 90, 1, 91, 1, 92, 1, 93, - 1, 94, 1, 95, 1, 96, 1, 97, - 1, 97, 97, 98, 97, 1, 99, 98, - 100, 98, 1, 102, 101, 103, 101, 1, - 104, 1, 105, 1, 106, 106, 106, 1, - 1, 99, 100, 1, 79, 80, 1, 71, - 72, 69, 69, 70, 69, 69, 70, 70, - 70, 1, 107, 107, 108, 70, 107, 69, - 70, 70, 70, 1, 1, 52, 53, 109, - 1, 110, 1, 111, 1, 112, 1, 113, - 1, 114, 114, 114, 1, 114, 114, 114, - 115, 1, 117, 116, 118, 116, 119, 1, - 121, 120, 122, 120, 1, 121, 123, 32, - 123, 1, 1, 121, 122, 117, 116, 118, - 116, 119, 1, 1, 28, 29, 124, 124, - 124, 1, 124, 124, 124, 125, 1, 126, - 1, 127, 1, 128, 1, 129, 1, 130, - 1, 131, 131, 131, 1, 131, 131, 132, - 131, 1, 133, 1, 134, 1, 135, 1, - 136, 1, 137, 1, 138, 1, 139, 1, - 140, 1, 28, 140, 29, 140, 1, 141, - 143, 142, 141, 145, 144, 146, 147, 148, - 149, 150, 151, 144, 142, 141, 143, 152, - 142, 141, 143, 153, 142, 141, 143, 154, - 142, 141, 143, 155, 155, 142, 141, 143, - 155, 155, 156, 142, 141, 143, 157, 157, - 158, 142, 141, 143, 159, 160, 159, 142, - 141, 143, 160, 160, 161, 142, 141, 143, - 162, 163, 162, 164, 142, 141, 143, 162, - 163, 162, 142, 141, 143, 165, 165, 142, - 141, 143, 166, 167, 166, 142, 141, 143, - 167, 168, 169, 167, 170, 142, 141, 143, - 170, 142, 141, 143, 171, 172, 171, 173, - 142, 141, 143, 171, 172, 171, 142, 141, - 143, 174, 175, 176, 174, 177, 142, 141, - 143, 177, 142, 141, 143, 178, 179, 178, - 180, 142, 141, 143, 178, 179, 178, 142, - 141, 143, 181, 182, 183, 181, 184, 142, - 141, 143, 184, 142, 141, 143, 185, 186, - 185, 187, 142, 141, 143, 185, 186, 185, - 142, 141, 189, 188, 190, 188, 142, 141, - 189, 188, 190, 191, 188, 191, 191, 191, - 142, 141, 189, 190, 141, 193, 192, 194, - 196, 192, 195, 196, 196, 196, 142, 141, - 189, 197, 190, 199, 197, 198, 199, 199, - 199, 142, 141, 143, 198, 199, 198, 198, - 199, 199, 199, 142, 141, 201, 200, 202, - 199, 200, 198, 199, 199, 199, 142, 141, - 143, 185, 186, 185, 187, 142, 141, 143, - 203, 142, 141, 143, 204, 205, 204, 206, - 142, 141, 143, 204, 205, 204, 206, 142, - 141, 143, 178, 179, 178, 180, 142, 141, - 143, 207, 142, 141, 143, 208, 209, 208, - 210, 142, 141, 143, 208, 209, 208, 210, - 142, 141, 143, 171, 172, 171, 173, 142, - 141, 143, 211, 142, 141, 143, 212, 213, - 212, 214, 142, 141, 143, 212, 213, 212, - 214, 142, 141, 143, 162, 163, 162, 164, - 142, 141, 143, 157, 157, 158, 142, 141, - 143, 215, 142, 141, 143, 216, 142, 141, - 143, 217, 142, 141, 143, 219, 218, 218, - 218, 218, 142, 141, 143, 220, 220, 142, - 141, 143, 220, 220, 221, 142, 141, 223, - 222, 224, 222, 225, 142, 141, 227, 226, - 228, 226, 221, 142, 141, 227, 228, 141, - 223, 222, 224, 222, 225, 142, 141, 143, - 229, 142, 141, 143, 230, 142, 141, 143, - 231, 142, 141, 143, 232, 142, 141, 143, - 233, 142, 141, 143, 234, 142, 141, 143, - 235, 142, 141, 143, 236, 142, 141, 143, - 237, 142, 141, 143, 238, 238, 142, 141, - 143, 238, 238, 239, 142, 141, 143, 240, - 240, 241, 142, 141, 143, 240, 240, 242, - 142, 141, 244, 243, 245, 243, 246, 142, - 141, 244, 243, 245, 243, 142, 141, 244, - 245, 141, 244, 243, 245, 243, 246, 142, - 141, 143, 240, 240, 241, 142, 141, 143, - 247, 142, 141, 143, 248, 142, 141, 143, - 249, 142, 141, 143, 250, 142, 141, 143, - 251, 142, 141, 253, 252, 254, 255, 252, - 142, 141, 257, 256, 258, 259, 256, 142, - 141, 257, 258, 141, 143, 260, 261, 262, - 260, 262, 262, 262, 142, 141, 143, 260, - 262, 260, 262, 262, 262, 142, 141, 143, - 263, 264, 266, 263, 265, 266, 266, 266, - 142, 141, 143, 267, 261, 269, 267, 268, - 269, 269, 269, 142, 141, 257, 261, 258, - 261, 142, 141, 143, 268, 269, 268, 268, - 269, 269, 269, 142, 141, 143, 270, 271, - 269, 270, 268, 269, 269, 269, 142, 141, - 143, 272, 142, 141, 143, 273, 142, 141, - 143, 274, 142, 141, 143, 275, 142, 141, - 143, 275, 276, 275, 142, 141, 143, 276, - 277, 276, 277, 277, 277, 142, 141, 143, - 278, 279, 281, 278, 280, 281, 281, 281, - 142, 141, 143, 282, 283, 285, 282, 284, - 285, 285, 285, 142, 141, 286, 283, 287, - 283, 142, 141, 286, 287, 141, 143, 284, - 285, 284, 284, 285, 285, 285, 142, 141, - 143, 288, 289, 285, 288, 284, 285, 285, - 285, 142, 141, 143, 290, 142, 141, 143, - 291, 142, 141, 143, 292, 142, 141, 143, - 293, 293, 142, 141, 143, 293, 294, 295, - 296, 293, 142, 141, 143, 297, 142, 141, - 143, 298, 142, 141, 143, 299, 142, 141, - 143, 300, 300, 142, 141, 143, 300, 301, - 300, 301, 301, 301, 142, 141, 143, 302, - 305, 304, 302, 303, 304, 304, 304, 142, - 141, 143, 306, 309, 308, 306, 307, 308, - 308, 308, 142, 141, 143, 307, 308, 307, - 307, 308, 308, 308, 142, 141, 143, 310, - 311, 308, 310, 307, 308, 308, 308, 142, - 141, 143, 309, 312, 309, 312, 312, 312, - 142, 141, 314, 313, 315, 317, 313, 316, - 317, 317, 317, 142, 141, 319, 318, 320, - 322, 318, 321, 322, 322, 322, 142, 141, - 319, 320, 141, 143, 321, 322, 321, 321, - 322, 322, 322, 142, 141, 324, 323, 325, - 322, 323, 321, 322, 322, 322, 142, 141, - 143, 326, 142, 141, 143, 327, 142, 141, - 143, 328, 142, 141, 143, 329, 142, 141, - 143, 330, 330, 142, 141, 143, 330, 331, - 330, 331, 331, 331, 142, 141, 143, 332, - 335, 334, 332, 333, 334, 334, 334, 142, - 141, 143, 336, 339, 338, 336, 337, 338, - 338, 338, 142, 141, 143, 337, 338, 337, - 337, 338, 338, 338, 142, 141, 143, 340, - 341, 338, 340, 337, 338, 338, 338, 142, - 141, 143, 339, 342, 339, 342, 342, 342, - 142, 141, 344, 343, 345, 347, 343, 346, - 347, 347, 347, 142, 141, 349, 348, 350, - 352, 348, 351, 352, 352, 352, 142, 141, - 349, 350, 141, 143, 351, 352, 351, 351, - 352, 352, 352, 142, 141, 354, 353, 355, - 352, 353, 351, 352, 352, 352, 142, 141, - 143, 356, 142, 141, 143, 357, 142, 141, - 143, 358, 142, 141, 143, 359, 142, 141, - 143, 360, 142, 141, 143, 361, 142, 141, - 143, 362, 142, 141, 143, 363, 142, 141, - 143, 364, 364, 142, 141, 143, 364, 365, - 364, 365, 365, 365, 142, 141, 143, 366, - 369, 368, 366, 367, 368, 368, 368, 142, - 141, 143, 370, 373, 372, 370, 371, 372, - 372, 372, 142, 141, 143, 371, 372, 371, - 371, 372, 372, 372, 142, 141, 143, 374, - 375, 372, 374, 371, 372, 372, 372, 142, - 141, 143, 373, 376, 373, 376, 376, 376, - 142, 141, 378, 377, 379, 381, 377, 380, - 381, 381, 381, 142, 141, 383, 382, 384, - 386, 382, 385, 386, 386, 386, 142, 141, - 383, 384, 141, 143, 385, 386, 385, 385, - 386, 386, 386, 142, 141, 388, 387, 389, - 386, 387, 385, 386, 386, 386, 142, 141, - 143, 390, 142, 141, 143, 391, 142, 141, - 143, 392, 392, 142, 141, 143, 392, 393, - 392, 142, 141, 143, 393, 394, 393, 394, - 394, 394, 142, 141, 143, 395, 396, 398, - 395, 397, 398, 398, 398, 142, 141, 143, - 399, 400, 402, 399, 401, 402, 402, 402, - 142, 141, 404, 403, 405, 403, 142, 141, - 404, 403, 405, 406, 403, 406, 406, 406, - 142, 141, 404, 405, 141, 408, 407, 409, - 411, 407, 410, 411, 411, 411, 142, 141, - 404, 412, 405, 414, 412, 413, 414, 414, - 414, 142, 141, 143, 413, 414, 413, 413, - 414, 414, 414, 142, 141, 416, 415, 417, - 414, 415, 413, 414, 414, 414, 142, 141, - 143, 401, 402, 401, 401, 402, 402, 402, - 142, 141, 143, 418, 419, 402, 418, 401, - 402, 402, 402, 142, 1, 421, 420, 106, - 1, 145, 144, 420, 146, 147, 148, 149, - 150, 151, 144, 142, 422, 145, 144, 146, - 147, 148, 149, 150, 151, 144, 142, 0 + 59, 1, 60, 1, 61, 61, 62, 61, + 1, 63, 63, 64, 63, 1, 64, 64, + 65, 64, 65, 65, 65, 1, 66, 66, + 67, 69, 66, 68, 69, 69, 69, 1, + 70, 70, 71, 73, 70, 72, 73, 73, + 73, 1, 75, 74, 76, 74, 1, 75, + 74, 76, 77, 74, 77, 77, 77, 1, + 79, 78, 80, 78, 1, 81, 1, 82, + 1, 83, 1, 84, 83, 85, 83, 1, + 87, 86, 88, 86, 1, 89, 1, 90, + 1, 91, 1, 92, 1, 92, 92, 93, + 92, 1, 93, 93, 94, 93, 1, 95, + 1, 96, 1, 97, 1, 98, 1, 99, + 1, 100, 1, 101, 1, 102, 1, 102, + 102, 103, 102, 1, 104, 103, 105, 103, + 1, 107, 106, 108, 106, 1, 109, 1, + 110, 1, 111, 111, 111, 1, 1, 104, + 105, 1, 84, 85, 1, 75, 76, 113, + 112, 114, 116, 112, 115, 116, 116, 116, + 1, 75, 117, 76, 119, 117, 118, 119, + 119, 119, 1, 118, 118, 119, 118, 118, + 119, 119, 119, 1, 121, 120, 122, 119, + 120, 118, 119, 119, 119, 1, 72, 72, + 73, 72, 72, 73, 73, 73, 1, 123, + 123, 124, 73, 123, 72, 73, 73, 73, + 1, 1, 52, 53, 125, 1, 126, 1, + 127, 1, 128, 1, 129, 1, 130, 130, + 130, 1, 130, 130, 130, 131, 1, 133, + 132, 134, 132, 135, 1, 137, 136, 138, + 136, 1, 137, 139, 32, 139, 1, 1, + 137, 138, 133, 132, 134, 132, 135, 1, + 1, 28, 29, 140, 140, 140, 1, 140, + 140, 140, 141, 1, 142, 1, 143, 1, + 144, 1, 145, 1, 146, 1, 147, 147, + 147, 1, 147, 147, 148, 147, 1, 149, + 1, 150, 1, 151, 1, 152, 1, 153, + 1, 154, 1, 155, 1, 156, 1, 28, + 156, 29, 156, 1, 157, 159, 158, 157, + 161, 160, 162, 163, 164, 165, 166, 167, + 160, 158, 157, 159, 168, 158, 157, 159, + 169, 158, 157, 159, 170, 158, 157, 159, + 171, 171, 158, 157, 159, 171, 171, 172, + 158, 157, 159, 173, 173, 174, 158, 157, + 159, 175, 176, 175, 158, 157, 159, 176, + 176, 177, 158, 157, 159, 178, 179, 178, + 180, 158, 157, 159, 178, 179, 178, 158, + 157, 159, 181, 181, 158, 157, 159, 182, + 183, 182, 158, 157, 159, 183, 184, 185, + 183, 186, 158, 157, 159, 186, 158, 157, + 159, 187, 188, 187, 189, 158, 157, 159, + 187, 188, 187, 158, 157, 159, 190, 191, + 192, 190, 193, 158, 157, 159, 193, 158, + 157, 159, 194, 195, 194, 196, 158, 157, + 159, 194, 195, 194, 158, 157, 159, 197, + 198, 199, 197, 200, 158, 157, 159, 200, + 158, 157, 159, 201, 202, 201, 203, 158, + 157, 159, 201, 202, 201, 158, 157, 205, + 204, 206, 204, 158, 157, 205, 204, 206, + 207, 204, 207, 207, 207, 158, 157, 205, + 206, 157, 209, 208, 210, 212, 208, 211, + 212, 212, 212, 158, 157, 205, 213, 206, + 215, 213, 214, 215, 215, 215, 158, 157, + 159, 214, 215, 214, 214, 215, 215, 215, + 158, 157, 217, 216, 218, 215, 216, 214, + 215, 215, 215, 158, 157, 159, 201, 202, + 201, 203, 158, 157, 159, 219, 158, 157, + 159, 220, 221, 220, 222, 158, 157, 159, + 220, 221, 220, 222, 158, 157, 159, 194, + 195, 194, 196, 158, 157, 159, 223, 158, + 157, 159, 224, 225, 224, 226, 158, 157, + 159, 224, 225, 224, 226, 158, 157, 159, + 187, 188, 187, 189, 158, 157, 159, 227, + 158, 157, 159, 228, 229, 228, 230, 158, + 157, 159, 228, 229, 228, 230, 158, 157, + 159, 178, 179, 178, 180, 158, 157, 159, + 173, 173, 174, 158, 157, 159, 231, 158, + 157, 159, 232, 158, 157, 159, 233, 158, + 157, 159, 235, 234, 234, 234, 234, 158, + 157, 159, 236, 236, 158, 157, 159, 236, + 236, 237, 158, 157, 239, 238, 240, 238, + 241, 158, 157, 243, 242, 244, 242, 237, + 158, 157, 243, 244, 157, 239, 238, 240, + 238, 241, 158, 157, 159, 245, 158, 157, + 159, 246, 158, 157, 159, 247, 158, 157, + 159, 248, 158, 157, 159, 249, 158, 157, + 159, 250, 158, 157, 159, 251, 158, 157, + 159, 252, 158, 157, 159, 253, 158, 157, + 159, 254, 254, 158, 157, 159, 254, 254, + 255, 158, 157, 159, 256, 256, 257, 158, + 157, 159, 256, 256, 258, 158, 157, 260, + 259, 261, 259, 262, 158, 157, 260, 259, + 261, 259, 158, 157, 260, 261, 157, 260, + 259, 261, 259, 262, 158, 157, 159, 256, + 256, 257, 158, 157, 159, 263, 158, 157, + 159, 264, 158, 157, 159, 265, 158, 157, + 159, 266, 158, 157, 159, 267, 158, 157, + 269, 268, 270, 271, 268, 158, 157, 273, + 272, 274, 275, 272, 158, 157, 273, 274, + 157, 159, 276, 277, 278, 276, 278, 278, + 278, 158, 157, 159, 276, 278, 276, 278, + 278, 278, 158, 157, 159, 279, 280, 282, + 279, 281, 282, 282, 282, 158, 157, 159, + 283, 277, 285, 283, 284, 285, 285, 285, + 158, 157, 273, 277, 274, 277, 158, 157, + 159, 284, 285, 284, 284, 285, 285, 285, + 158, 157, 159, 286, 287, 285, 286, 284, + 285, 285, 285, 158, 157, 159, 288, 158, + 157, 159, 289, 158, 157, 159, 290, 158, + 157, 159, 291, 158, 157, 159, 292, 293, + 292, 158, 157, 159, 294, 295, 294, 158, + 157, 159, 295, 296, 295, 296, 296, 296, + 158, 157, 159, 297, 298, 300, 297, 299, + 300, 300, 300, 158, 157, 159, 301, 302, + 304, 301, 303, 304, 304, 304, 158, 157, + 306, 305, 307, 305, 158, 157, 306, 305, + 307, 308, 305, 308, 308, 308, 158, 157, + 306, 307, 157, 310, 309, 311, 313, 309, + 312, 313, 313, 313, 158, 157, 306, 314, + 307, 316, 314, 315, 316, 316, 316, 158, + 157, 159, 315, 316, 315, 315, 316, 316, + 316, 158, 157, 318, 317, 319, 316, 317, + 315, 316, 316, 316, 158, 157, 159, 303, + 304, 303, 303, 304, 304, 304, 158, 157, + 159, 320, 321, 304, 320, 303, 304, 304, + 304, 158, 157, 159, 322, 158, 157, 159, + 323, 158, 157, 159, 324, 158, 157, 159, + 325, 325, 158, 157, 159, 325, 326, 327, + 328, 325, 158, 157, 159, 329, 158, 157, + 159, 330, 158, 157, 159, 331, 158, 157, + 159, 332, 332, 158, 157, 159, 332, 333, + 332, 333, 333, 333, 158, 157, 159, 334, + 337, 336, 334, 335, 336, 336, 336, 158, + 157, 159, 338, 341, 340, 338, 339, 340, + 340, 340, 158, 157, 159, 339, 340, 339, + 339, 340, 340, 340, 158, 157, 159, 342, + 343, 340, 342, 339, 340, 340, 340, 158, + 157, 159, 341, 344, 341, 344, 344, 344, + 158, 157, 346, 345, 347, 349, 345, 348, + 349, 349, 349, 158, 157, 351, 350, 352, + 354, 350, 353, 354, 354, 354, 158, 157, + 351, 352, 157, 159, 353, 354, 353, 353, + 354, 354, 354, 158, 157, 356, 355, 357, + 354, 355, 353, 354, 354, 354, 158, 157, + 159, 358, 158, 157, 159, 359, 158, 157, + 159, 360, 158, 157, 159, 361, 158, 157, + 159, 362, 362, 158, 157, 159, 362, 363, + 362, 363, 363, 363, 158, 157, 159, 364, + 367, 366, 364, 365, 366, 366, 366, 158, + 157, 159, 368, 371, 370, 368, 369, 370, + 370, 370, 158, 157, 159, 369, 370, 369, + 369, 370, 370, 370, 158, 157, 159, 372, + 373, 370, 372, 369, 370, 370, 370, 158, + 157, 159, 371, 374, 371, 374, 374, 374, + 158, 157, 376, 375, 377, 379, 375, 378, + 379, 379, 379, 158, 157, 381, 380, 382, + 384, 380, 383, 384, 384, 384, 158, 157, + 381, 382, 157, 159, 383, 384, 383, 383, + 384, 384, 384, 158, 157, 386, 385, 387, + 384, 385, 383, 384, 384, 384, 158, 157, + 159, 388, 158, 157, 159, 389, 158, 157, + 159, 390, 158, 157, 159, 391, 158, 157, + 159, 392, 158, 157, 159, 393, 158, 157, + 159, 394, 158, 157, 159, 395, 158, 157, + 159, 396, 396, 158, 157, 159, 396, 397, + 396, 397, 397, 397, 158, 157, 159, 398, + 401, 400, 398, 399, 400, 400, 400, 158, + 157, 159, 402, 405, 404, 402, 403, 404, + 404, 404, 158, 157, 159, 403, 404, 403, + 403, 404, 404, 404, 158, 157, 159, 406, + 407, 404, 406, 403, 404, 404, 404, 158, + 157, 159, 405, 408, 405, 408, 408, 408, + 158, 157, 410, 409, 411, 413, 409, 412, + 413, 413, 413, 158, 157, 415, 414, 416, + 418, 414, 417, 418, 418, 418, 158, 157, + 415, 416, 157, 159, 417, 418, 417, 417, + 418, 418, 418, 158, 157, 420, 419, 421, + 418, 419, 417, 418, 418, 418, 158, 157, + 159, 422, 158, 157, 159, 423, 158, 157, + 159, 424, 424, 158, 157, 159, 424, 425, + 424, 158, 157, 159, 425, 426, 425, 426, + 426, 426, 158, 157, 159, 427, 428, 430, + 427, 429, 430, 430, 430, 158, 157, 159, + 431, 432, 434, 431, 433, 434, 434, 434, + 158, 157, 436, 435, 437, 435, 158, 157, + 436, 435, 437, 438, 435, 438, 438, 438, + 158, 157, 436, 437, 157, 440, 439, 441, + 443, 439, 442, 443, 443, 443, 158, 157, + 436, 444, 437, 446, 444, 445, 446, 446, + 446, 158, 157, 159, 445, 446, 445, 445, + 446, 446, 446, 158, 157, 448, 447, 449, + 446, 447, 445, 446, 446, 446, 158, 157, + 159, 433, 434, 433, 433, 434, 434, 434, + 158, 157, 159, 450, 451, 434, 450, 433, + 434, 434, 434, 158, 1, 453, 452, 111, + 1, 161, 160, 452, 162, 163, 164, 165, + 166, 167, 160, 158, 454, 161, 160, 162, + 163, 164, 165, 166, 167, 160, 158, 0 }; static const short _mmp_parser_trans_targs_wi[] = { 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 99, 100, 27, - 28, 87, 29, 30, 31, 32, 33, 34, + 23, 24, 25, 26, 27, 105, 106, 27, + 28, 93, 29, 30, 31, 32, 33, 34, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 86, 45, 45, - 46, 47, 48, 49, 50, 51, 52, 53, - 54, 84, 85, 53, 54, 84, 85, 55, - 83, 55, 55, 56, 57, 58, 59, 60, - 82, 60, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 81, 77, 77, 78, - 79, 80, 293, 53, 54, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, - 95, 96, 97, 96, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 294, 118, 294, - 119, 295, 120, 165, 193, 208, 220, 276, - 121, 122, 123, 124, 125, 126, 164, 126, - 127, 128, 129, 130, 163, 131, 131, 132, - 133, 160, 134, 135, 136, 159, 136, 137, - 156, 138, 139, 140, 155, 140, 141, 152, - 142, 143, 144, 151, 145, 294, 146, 147, - 148, 294, 146, 149, 150, 148, 149, 150, - 148, 294, 146, 153, 143, 144, 154, 157, - 139, 140, 158, 161, 135, 136, 162, 166, - 167, 168, 169, 175, 170, 171, 172, 294, - 173, 174, 172, 294, 173, 176, 177, 178, - 179, 180, 181, 182, 183, 184, 185, 186, - 187, 192, 188, 189, 294, 190, 191, 194, - 195, 196, 197, 198, 199, 294, 200, 201, - 199, 294, 200, 201, 202, 205, 203, 204, - 205, 206, 207, 204, 206, 207, 204, 205, - 209, 210, 211, 212, 213, 214, 215, 216, - 218, 219, 215, 216, 218, 219, 294, 217, - 215, 216, 221, 222, 223, 224, 225, 240, - 256, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 231, 232, 233, 234, 231, 234, - 235, 236, 294, 237, 238, 239, 236, 294, - 237, 238, 239, 236, 294, 237, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, - 247, 248, 249, 250, 247, 250, 251, 252, - 294, 253, 254, 255, 252, 294, 253, 254, - 255, 252, 294, 253, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 267, 268, 269, 270, 267, 270, - 271, 272, 294, 273, 274, 275, 272, 294, - 273, 274, 275, 272, 294, 273, 277, 278, - 279, 280, 281, 282, 283, 290, 291, 282, - 283, 290, 291, 284, 294, 285, 286, 287, - 294, 285, 288, 289, 287, 288, 289, 287, - 294, 285, 282, 283, 292, 294, 294 + 41, 42, 43, 44, 45, 92, 45, 45, + 46, 47, 48, 49, 50, 51, 52, 51, + 52, 53, 54, 55, 90, 91, 54, 55, + 90, 91, 56, 57, 85, 86, 57, 57, + 58, 59, 60, 61, 62, 84, 62, 62, + 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, + 79, 83, 79, 79, 80, 81, 82, 305, + 87, 57, 85, 88, 89, 87, 88, 89, + 87, 57, 85, 54, 55, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, + 101, 102, 103, 102, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 306, 124, 306, + 125, 307, 126, 171, 199, 214, 232, 288, + 127, 128, 129, 130, 131, 132, 170, 132, + 133, 134, 135, 136, 169, 137, 137, 138, + 139, 166, 140, 141, 142, 165, 142, 143, + 162, 144, 145, 146, 161, 146, 147, 158, + 148, 149, 150, 157, 151, 306, 152, 153, + 154, 306, 152, 155, 156, 154, 155, 156, + 154, 306, 152, 159, 149, 150, 160, 163, + 145, 146, 164, 167, 141, 142, 168, 172, + 173, 174, 175, 181, 176, 177, 178, 306, + 179, 180, 178, 306, 179, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, + 193, 198, 194, 195, 306, 196, 197, 200, + 201, 202, 203, 204, 205, 306, 206, 207, + 205, 306, 206, 207, 208, 211, 209, 210, + 211, 212, 213, 210, 212, 213, 210, 211, + 215, 216, 217, 218, 219, 220, 219, 220, + 221, 222, 223, 230, 231, 222, 223, 230, + 231, 224, 306, 225, 226, 227, 306, 225, + 228, 229, 227, 228, 229, 227, 306, 225, + 222, 223, 233, 234, 235, 236, 237, 252, + 268, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 243, 244, 245, 246, 243, 246, + 247, 248, 306, 249, 250, 251, 248, 306, + 249, 250, 251, 248, 306, 249, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, + 259, 260, 261, 262, 259, 262, 263, 264, + 306, 265, 266, 267, 264, 306, 265, 266, + 267, 264, 306, 265, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 279, 280, 281, 282, 279, 282, + 283, 284, 306, 285, 286, 287, 284, 306, + 285, 286, 287, 284, 306, 285, 289, 290, + 291, 292, 293, 294, 295, 302, 303, 294, + 295, 302, 303, 296, 306, 297, 298, 299, + 306, 297, 300, 301, 299, 300, 301, 299, + 306, 297, 294, 295, 304, 306, 306 }; static const unsigned char _mmp_parser_trans_actions_wi[] = { @@ -729,80 +776,85 @@ static const unsigned char _mmp_parser_trans_actions_wi[] = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 119, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 81, - 81, 13, 78, 0, 0, 0, 15, 123, - 0, 0, 1, 0, 0, 0, 0, 57, - 0, 0, 1, 41, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 131, 0, 0, 1, 0, - 0, 0, 0, 17, 17, 0, 0, 0, - 0, 0, 0, 0, 47, 93, 47, 5, + 0, 0, 0, 0, 121, 0, 0, 1, + 0, 0, 0, 0, 0, 41, 41, 0, + 0, 0, 83, 83, 13, 80, 0, 0, + 0, 15, 0, 125, 0, 0, 0, 1, + 0, 0, 0, 0, 59, 0, 0, 1, + 43, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 133, 0, 0, 1, 0, 0, 0, 0, + 86, 210, 86, 13, 80, 0, 0, 15, + 19, 172, 19, 17, 17, 0, 0, 0, + 0, 0, 0, 0, 49, 95, 49, 5, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 66, - 0, 151, 0, 0, 43, 0, 90, 35, + 0, 0, 0, 0, 0, 57, 0, 68, + 0, 153, 0, 0, 45, 0, 92, 35, 0, 0, 0, 0, 0, 21, 5, 0, 0, 0, 0, 0, 5, 23, 0, 0, 0, 0, 0, 0, 25, 5, 0, 0, 0, 0, 0, 27, 5, 0, 0, 0, - 0, 0, 29, 5, 0, 99, 0, 0, - 143, 210, 143, 13, 78, 0, 0, 15, - 87, 204, 87, 0, 11, 75, 5, 0, - 11, 72, 5, 0, 11, 69, 5, 0, - 0, 0, 33, 0, 0, 0, 31, 147, - 31, 5, 0, 60, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5, 0, 0, 103, 0, 9, 0, - 0, 0, 0, 0, 45, 175, 45, 45, - 0, 135, 0, 0, 0, 0, 0, 81, - 81, 13, 78, 0, 0, 15, 17, 17, - 0, 0, 0, 0, 0, 0, 81, 81, - 13, 78, 0, 0, 0, 15, 127, 0, + 0, 0, 29, 5, 0, 101, 0, 0, + 145, 234, 145, 13, 80, 0, 0, 15, + 89, 228, 89, 0, 11, 77, 5, 0, + 11, 74, 5, 0, 11, 71, 5, 0, + 0, 0, 33, 0, 0, 0, 31, 149, + 31, 5, 0, 62, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5, 0, 0, 105, 0, 9, 0, + 0, 0, 0, 0, 47, 187, 47, 47, + 0, 137, 0, 0, 0, 0, 0, 83, + 83, 13, 80, 0, 0, 15, 17, 17, + 0, 0, 0, 0, 41, 41, 0, 0, + 0, 83, 83, 13, 80, 0, 0, 0, + 15, 0, 129, 0, 0, 86, 216, 86, + 13, 80, 0, 0, 15, 19, 177, 19, 17, 17, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 81, 13, - 78, 81, 0, 0, 15, 0, 17, 17, - 0, 84, 180, 84, 13, 78, 0, 107, - 0, 0, 15, 19, 155, 19, 0, 0, - 0, 0, 0, 0, 81, 13, 78, 81, - 0, 0, 15, 0, 17, 17, 0, 84, - 192, 84, 13, 78, 0, 115, 0, 0, - 15, 19, 165, 19, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 81, 13, - 78, 81, 0, 0, 15, 0, 17, 17, - 0, 84, 198, 84, 13, 78, 0, 139, - 0, 0, 15, 19, 170, 19, 0, 0, - 0, 0, 0, 81, 81, 13, 78, 0, - 0, 0, 15, 0, 111, 0, 0, 84, - 186, 84, 13, 78, 0, 0, 15, 19, - 160, 19, 17, 17, 0, 63, 53 + 0, 0, 0, 0, 0, 0, 83, 13, + 80, 83, 0, 0, 15, 0, 17, 17, + 0, 86, 192, 86, 13, 80, 0, 109, + 0, 0, 15, 19, 157, 19, 0, 0, + 0, 0, 0, 0, 83, 13, 80, 83, + 0, 0, 15, 0, 17, 17, 0, 86, + 204, 86, 13, 80, 0, 117, 0, 0, + 15, 19, 167, 19, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 83, 13, + 80, 83, 0, 0, 15, 0, 17, 17, + 0, 86, 222, 86, 13, 80, 0, 141, + 0, 0, 15, 19, 182, 19, 0, 0, + 0, 0, 0, 83, 83, 13, 80, 0, + 0, 0, 15, 0, 113, 0, 0, 86, + 198, 86, 13, 80, 0, 0, 15, 19, + 162, 19, 17, 17, 0, 65, 55 }; static const unsigned char _mmp_parser_to_state_actions[] = { - 0, 49, 0, 0, 0, 0, 0, 0, + 0, 51, 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, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 49, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 49, + 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 3, 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, 3, 0, 0, - 3, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 3, 0, 0, 0, 3, 0, + 0, 0, 0, 3, 0, 0, 3, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 3, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 7, 0, 0, 0, + 3, 0, 7, 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, @@ -813,9 +865,10 @@ static const unsigned char _mmp_parser_to_state_actions[] = { 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, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 96, 0 + 0, 0, 37, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 98, 0 }; static const unsigned char _mmp_parser_from_state_actions[] = { @@ -855,7 +908,9 @@ static const unsigned char _mmp_parser_from_state_actions[] = { 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, 51, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 53, 0 }; static const short _mmp_parser_eof_trans[] = { @@ -873,39 +928,41 @@ static const short _mmp_parser_eof_trans[] = { 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, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 0, 0, 0, 423 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 0, 0, 0, 455 }; static const int mmp_parser_start = 1; -static const int mmp_parser_first_final = 293; +static const int mmp_parser_first_final = 305; static const int mmp_parser_error = 0; -static const int mmp_parser_en_group_scanner = 294; +static const int mmp_parser_en_group_scanner = 306; static const int mmp_parser_en_main = 1; -/* #line 110 "NanorexMMPImportExport.rl" */ +#line 110 "NanorexMMPImportExport.rl" // static data from class NanorexMMPImportExport @@ -989,7 +1046,7 @@ void NanorexMMPImportExport::reset(void) // initialize the ragel engine -/* #line 993 "NanorexMMPImportExport.cpp" */ +#line 1050 "NanorexMMPImportExport.cpp" { cs = mmp_parser_start; top = 0; @@ -997,7 +1054,7 @@ void NanorexMMPImportExport::reset(void) te = 0; act = 0; } -/* #line 193 "NanorexMMPImportExport.rl" */ +#line 193 "NanorexMMPImportExport.rl" } @@ -1053,7 +1110,7 @@ bool NanorexMMPImportExport::readMMP(istream& instream, // Ragel parser implementation bool success = true; -/* #line 1057 "NanorexMMPImportExport.cpp" */ +#line 1114 "NanorexMMPImportExport.cpp" { int _klen; unsigned int _trans; @@ -1070,11 +1127,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 43: -/* #line 1 "NanorexMMPImportExport.rl" */ + case 44: +#line 1 "NanorexMMPImportExport.rl" {ts = p;} break; -/* #line 1078 "NanorexMMPImportExport.cpp" */ +#line 1135 "NanorexMMPImportExport.cpp" } } @@ -1141,89 +1198,89 @@ _eof_trans: switch ( *_acts++ ) { case 0: -/* #line 24 "NanorexMMPImportExport.rl" */ +#line 24 "NanorexMMPImportExport.rl" {++lineNum;} break; case 2: -/* #line 41 "NanorexMMPImportExport.rl" */ +#line 41 "NanorexMMPImportExport.rl" {intVal = intVal*10 + ((*p)-'0');} break; case 4: -/* #line 46 "NanorexMMPImportExport.rl" */ +#line 46 "NanorexMMPImportExport.rl" {intVal2 = intVal2*10 + ((*p)-'0');} break; case 5: -/* #line 49 "NanorexMMPImportExport.rl" */ +#line 49 "NanorexMMPImportExport.rl" {intVal=-intVal;} break; case 6: -/* #line 73 "NanorexMMPImportExport.rl" */ +#line 73 "NanorexMMPImportExport.rl" { charStringWithSpaceStart = p-1; } break; case 7: -/* #line 74 "NanorexMMPImportExport.rl" */ +#line 74 "NanorexMMPImportExport.rl" { charStringWithSpaceStop = p; } break; case 8: -/* #line 83 "NanorexMMPImportExport.rl" */ +#line 83 "NanorexMMPImportExport.rl" { stringVal.resize(charStringWithSpaceStop - charStringWithSpaceStart + 1); std::copy(charStringWithSpaceStart, charStringWithSpaceStop+1, stringVal.begin()); } break; case 9: -/* #line 94 "NanorexMMPImportExport.rl" */ +#line 94 "NanorexMMPImportExport.rl" { stringVal2.resize(charStringWithSpaceStop - charStringWithSpaceStart + 1); std::copy(charStringWithSpaceStart, charStringWithSpaceStop+1, stringVal2.begin()); } break; case 10: -/* #line 29 "NanorexMMPImportExport.rl" */ +#line 29 "NanorexMMPImportExport.rl" { atomId = intVal; /*cerr << "atomId = " << atomId << endl;*/ } break; case 11: -/* #line 34 "NanorexMMPImportExport.rl" */ +#line 34 "NanorexMMPImportExport.rl" { atomicNum = intVal; /*cerr << "atomId = " << atomId << endl;*/} break; case 12: -/* #line 37 "NanorexMMPImportExport.rl" */ +#line 37 "NanorexMMPImportExport.rl" {x = intVal; } break; case 13: -/* #line 38 "NanorexMMPImportExport.rl" */ +#line 38 "NanorexMMPImportExport.rl" {y = intVal; } break; case 14: -/* #line 39 "NanorexMMPImportExport.rl" */ +#line 39 "NanorexMMPImportExport.rl" {z = intVal; } break; case 15: -/* #line 50 "NanorexMMPImportExport.rl" */ +#line 50 "NanorexMMPImportExport.rl" { atomStyle = stringVal; /*cerr << "atom_style = " << stringVal << endl;*/ } break; case 16: -/* #line 67 "NanorexMMPImportExport.rl" */ +#line 67 "NanorexMMPImportExport.rl" { newAtom(atomId, atomicNum, x, y, z, atomStyle); } break; case 17: -/* #line 71 "NanorexMMPImportExport.rl" */ +#line 71 "NanorexMMPImportExport.rl" { newBond(stringVal, intVal); } break; case 18: -/* #line 77 "NanorexMMPImportExport.rl" */ +#line 77 "NanorexMMPImportExport.rl" { stringVal = *p; } break; case 19: -/* #line 87 "NanorexMMPImportExport.rl" */ +#line 87 "NanorexMMPImportExport.rl" { newBondDirection(intVal, intVal2); } break; case 20: -/* #line 102 "NanorexMMPImportExport.rl" */ +#line 102 "NanorexMMPImportExport.rl" { // stripTrailingWhiteSpaces(stringVal); // stripTrailingWhiteSpaces(stringVal2); @@ -1231,11 +1288,11 @@ _eof_trans: } break; case 21: -/* #line 9 "NanorexMMPImportExport.rl" */ +#line 9 "NanorexMMPImportExport.rl" {lineStart=p;} break; case 23: -/* #line 16 "NanorexMMPImportExport.rl" */ +#line 16 "NanorexMMPImportExport.rl" { if(stringVal2 == "") stringVal2 = "def"; @@ -1243,155 +1300,159 @@ _eof_trans: } break; case 24: -/* #line 24 "NanorexMMPImportExport.rl" */ +#line 24 "NanorexMMPImportExport.rl" {lineStart=p;} break; case 25: -/* #line 35 "NanorexMMPImportExport.rl" */ +#line 35 "NanorexMMPImportExport.rl" { newChunkInfo(stringVal, stringVal2); } break; case 26: -/* #line 26 "NanorexMMPImportExport.rl" */ +#line 26 "NanorexMMPImportExport.rl" { lineStart = p; } break; case 27: -/* #line 29 "NanorexMMPImportExport.rl" */ +#line 29 "NanorexMMPImportExport.rl" { newViewDataGroup(); } break; case 28: -/* #line 40 "NanorexMMPImportExport.rl" */ - { newMolStructGroup(stringVal/*, stringVal2*/); } +#line 34 "NanorexMMPImportExport.rl" + { stringVal2.clear(); } break; case 29: -/* #line 47 "NanorexMMPImportExport.rl" */ - { end1(); } +#line 40 "NanorexMMPImportExport.rl" + { newMolStructGroup(stringVal, stringVal2); } break; case 30: -/* #line 51 "NanorexMMPImportExport.rl" */ - { lineStart = p; } +#line 47 "NanorexMMPImportExport.rl" + { end1(); } break; case 31: -/* #line 56 "NanorexMMPImportExport.rl" */ - { newClipboardGroup(); } +#line 51 "NanorexMMPImportExport.rl" + { lineStart = p; } break; case 32: -/* #line 60 "NanorexMMPImportExport.rl" */ - {lineStart=p;} +#line 56 "NanorexMMPImportExport.rl" + { newClipboardGroup(); } break; case 33: -/* #line 61 "NanorexMMPImportExport.rl" */ - { stringVal.clear(); } +#line 60 "NanorexMMPImportExport.rl" + {lineStart=p;} break; case 34: -/* #line 67 "NanorexMMPImportExport.rl" */ - { endGroup(stringVal); } +#line 61 "NanorexMMPImportExport.rl" + { stringVal.clear(); } break; case 35: -/* #line 71 "NanorexMMPImportExport.rl" */ - {lineStart=p;} +#line 67 "NanorexMMPImportExport.rl" + { endGroup(stringVal); } break; case 36: -/* #line 81 "NanorexMMPImportExport.rl" */ - { newOpenGroupInfo(stringVal, stringVal2); } +#line 71 "NanorexMMPImportExport.rl" + {lineStart=p;} break; case 37: -/* #line 65 "NanorexMMPImportExport.rl" */ - { kelvinTemp = intVal; } +#line 81 "NanorexMMPImportExport.rl" + { newOpenGroupInfo(stringVal, stringVal2); } break; case 38: -/* #line 79 "NanorexMMPImportExport.rl" */ +#line 65 "NanorexMMPImportExport.rl" + { kelvinTemp = intVal; } + break; + case 39: +#line 79 "NanorexMMPImportExport.rl" { p--; { if(top == stackSize) { stackSize += stackSize; stack.resize(stackSize, 0); // cerr << "Resized stack" << endl; } - {stack[top++] = cs; cs = 294; goto _again;}} } + {stack[top++] = cs; cs = 306; goto _again;}} } break; - case 39: -/* #line 82 "NanorexMMPImportExport.rl" */ + case 40: +#line 82 "NanorexMMPImportExport.rl" { p--; { if(top == stackSize) { stackSize += stackSize; stack.resize(stackSize, 0); // cerr << "Resized stack" << endl; } - {stack[top++] = cs; cs = 294; goto _again;}} } + {stack[top++] = cs; cs = 306; goto _again;}} } break; - case 40: -/* #line 87 "NanorexMMPImportExport.rl" */ + case 41: +#line 87 "NanorexMMPImportExport.rl" { p--; { if(top == stackSize) { stackSize += stackSize; stack.resize(stackSize, 0); // cerr << "Resized stack" << endl; } - {stack[top++] = cs; cs = 294; goto _again;}} } - break; - case 44: -/* #line 1 "NanorexMMPImportExport.rl" */ - {te = p+1;} + {stack[top++] = cs; cs = 306; goto _again;}} } break; case 45: -/* #line 102 "NanorexMMPImportExport.rl" */ - {act = 11;} +#line 1 "NanorexMMPImportExport.rl" + {te = p+1;} break; case 46: -/* #line 89 "NanorexMMPImportExport.rl" */ - {te = p+1;} +#line 102 "NanorexMMPImportExport.rl" + {act = 11;} break; case 47: -/* #line 90 "NanorexMMPImportExport.rl" */ +#line 89 "NanorexMMPImportExport.rl" {te = p+1;} break; case 48: -/* #line 91 "NanorexMMPImportExport.rl" */ - {te = p+1;{{cs = stack[--top]; goto _again;}}} +#line 90 "NanorexMMPImportExport.rl" + {te = p+1;} break; case 49: -/* #line 92 "NanorexMMPImportExport.rl" */ - {te = p+1;} +#line 91 "NanorexMMPImportExport.rl" + {te = p+1;{{cs = stack[--top]; goto _again;}}} break; case 50: -/* #line 93 "NanorexMMPImportExport.rl" */ +#line 92 "NanorexMMPImportExport.rl" {te = p+1;} break; case 51: -/* #line 94 "NanorexMMPImportExport.rl" */ +#line 93 "NanorexMMPImportExport.rl" {te = p+1;} break; case 52: -/* #line 95 "NanorexMMPImportExport.rl" */ +#line 94 "NanorexMMPImportExport.rl" {te = p+1;} break; case 53: -/* #line 96 "NanorexMMPImportExport.rl" */ +#line 95 "NanorexMMPImportExport.rl" {te = p+1;} break; case 54: -/* #line 97 "NanorexMMPImportExport.rl" */ +#line 96 "NanorexMMPImportExport.rl" {te = p+1;} break; case 55: -/* #line 100 "NanorexMMPImportExport.rl" */ +#line 97 "NanorexMMPImportExport.rl" {te = p+1;} break; case 56: -/* #line 102 "NanorexMMPImportExport.rl" */ +#line 100 "NanorexMMPImportExport.rl" + {te = p+1;} + break; + case 57: +#line 102 "NanorexMMPImportExport.rl" {te = p+1;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 57: -/* #line 102 "NanorexMMPImportExport.rl" */ + case 58: +#line 102 "NanorexMMPImportExport.rl" {te = p;p--;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 58: -/* #line 1 "NanorexMMPImportExport.rl" */ + case 59: +#line 1 "NanorexMMPImportExport.rl" { switch( act ) { case 0: {{cs = 0; goto _again;}} @@ -1406,7 +1467,7 @@ _eof_trans: } } break; -/* #line 1410 "NanorexMMPImportExport.cpp" */ +#line 1471 "NanorexMMPImportExport.cpp" } } @@ -1416,26 +1477,26 @@ _again: while ( _nacts-- > 0 ) { switch ( *_acts++ ) { case 1: -/* #line 40 "NanorexMMPImportExport.rl" */ +#line 40 "NanorexMMPImportExport.rl" {intVal=(*p)-'0';} break; case 3: -/* #line 45 "NanorexMMPImportExport.rl" */ +#line 45 "NanorexMMPImportExport.rl" {intVal2=(*p)-'0';} break; case 22: -/* #line 11 "NanorexMMPImportExport.rl" */ +#line 11 "NanorexMMPImportExport.rl" { stringVal2.clear(); /* 'style' string optional */ } break; - case 41: -/* #line 1 "NanorexMMPImportExport.rl" */ + case 42: +#line 1 "NanorexMMPImportExport.rl" {ts = 0;} break; - case 42: -/* #line 1 "NanorexMMPImportExport.rl" */ + case 43: +#line 1 "NanorexMMPImportExport.rl" {act = 0;} break; -/* #line 1439 "NanorexMMPImportExport.cpp" */ +#line 1500 "NanorexMMPImportExport.cpp" } } @@ -1454,7 +1515,7 @@ _again: _out: {} } -/* #line 248 "NanorexMMPImportExport.rl" */ +#line 248 "NanorexMMPImportExport.rl" // End-of-parsing sanity checks if(molSetPtrStack.size() != 0) { @@ -1596,7 +1657,7 @@ int NanorexMMPImportExport::GetBondOrderFromType(string const& type) /* FUNCTION: newBondDirection */ void NanorexMMPImportExport::newBondDirection(int atomId1, int atomId2) { - // assert(false); + assert(false); } diff --git a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.cpp b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.cpp index 80f96b45c..744a7863b 100644 --- a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.cpp +++ b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.cpp @@ -13,7 +13,7 @@ CPPUNIT_TEST_SUITE_REGISTRATION(NanorexMMPImportExportRagelTest); CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(NanorexMMPImportExportRagelTest, "NanorexMMPImportExportRagelTestSuite"); -// #define VERBOSE +#define VERBOSE #if defined(VERBOSE) #define CERR(s) \ @@ -3243,7 +3243,7 @@ void NanorexMMPImportExportRagelTest::groupLineTest(void) char const *testInput = NULL; // #if 0 - testInput = "group (FirstGroup) #FirstGroupStyle\n"; + testInput = "group (FirstGroup) FirstGroupStyle\n"; groupLineTestHelper(testInput); CPPUNIT_ASSERT(groupNameStack.size() == 1); CPPUNIT_ASSERT(groupNameStack.back() == "FirstGroup"); @@ -3290,11 +3290,11 @@ void NanorexMMPImportExportRagelTest::groupLineTest(void) lineNum = 0; testInput = "group (group 1)\n" - "group (group 1_1) #def\n" + "group (group 1_1) def\n" "egroup (group 1_1)\n" "group (amines)\n" "group (histamines) #def\n" - "group ( histhistamines\t) \t#def\t\n" + "group ( histhistamines\t) \tdef\t\n" "egroup\n" "group (histhistamines siblings)\n" "egroup (histhistamines siblings)\n" @@ -3328,31 +3328,34 @@ static const char _group_lines_test_actions[] = { 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 17, 1, - 18, 1, 21, 1, 22, 1, 26, 1, - 29, 1, 31, 1, 32, 1, 36, 1, - 37, 1, 39, 1, 53, 1, 54, 1, - 61, 1, 62, 2, 0, 49, 2, 0, - 51, 2, 0, 52, 2, 0, 60, 2, + 18, 1, 21, 1, 22, 1, 28, 1, + 30, 1, 32, 1, 33, 1, 37, 1, + 38, 1, 40, 1, 54, 1, 55, 1, + 62, 1, 63, 2, 0, 50, 2, 0, + 52, 2, 0, 53, 2, 0, 61, 2, 5, 12, 2, 5, 13, 2, 5, 14, 2, 6, 7, 2, 6, 8, 2, 6, - 9, 2, 8, 15, 2, 34, 24, 2, - 37, 38, 3, 0, 16, 47, 3, 0, - 19, 50, 3, 0, 20, 48, 3, 0, - 23, 45, 3, 0, 25, 46, 3, 0, - 27, 57, 3, 0, 28, 42, 3, 0, - 28, 59, 3, 0, 30, 58, 3, 0, - 33, 44, 3, 0, 33, 56, 3, 0, - 35, 43, 3, 6, 8, 15, 3, 17, - 0, 49, 3, 40, 0, 41, 3, 40, - 0, 55, 4, 9, 0, 20, 48, 4, - 9, 0, 23, 45, 4, 9, 0, 25, - 46, 4, 9, 0, 35, 43, 4, 32, - 0, 33, 44, 4, 32, 0, 33, 56, - 5, 6, 9, 0, 20, 48, 5, 6, - 9, 0, 23, 45, 5, 6, 9, 0, - 25, 46, 5, 6, 9, 0, 35, 43, - 5, 8, 15, 0, 16, 47, 6, 6, - 8, 15, 0, 16, 47 + 9, 2, 8, 15, 2, 26, 28, 2, + 35, 24, 2, 38, 39, 3, 0, 16, + 48, 3, 0, 19, 51, 3, 0, 20, + 49, 3, 0, 23, 46, 3, 0, 25, + 47, 3, 0, 27, 58, 3, 0, 29, + 43, 3, 0, 29, 60, 3, 0, 31, + 59, 3, 0, 34, 45, 3, 0, 34, + 57, 3, 0, 36, 44, 3, 6, 8, + 15, 3, 17, 0, 50, 3, 41, 0, + 42, 3, 41, 0, 56, 4, 9, 0, + 20, 49, 4, 9, 0, 23, 46, 4, + 9, 0, 25, 47, 4, 9, 0, 29, + 43, 4, 9, 0, 29, 60, 4, 9, + 0, 36, 44, 4, 33, 0, 34, 45, + 4, 33, 0, 34, 57, 5, 6, 9, + 0, 20, 49, 5, 6, 9, 0, 23, + 46, 5, 6, 9, 0, 25, 47, 5, + 6, 9, 0, 29, 43, 5, 6, 9, + 0, 29, 60, 5, 6, 9, 0, 36, + 44, 5, 8, 15, 0, 16, 48, 6, + 6, 8, 15, 0, 16, 48 }; static const short _group_lines_test_key_offsets[] = { @@ -3368,24 +3371,25 @@ static const short _group_lines_test_key_offsets[] = { 455, 461, 463, 471, 478, 481, 484, 487, 490, 493, 500, 507, 509, 522, 534, 549, 564, 570, 584, 599, 602, 605, 608, 611, - 617, 629, 644, 659, 665, 667, 681, 696, - 699, 702, 705, 710, 718, 721, 724, 727, - 732, 744, 759, 774, 788, 803, 815, 830, - 845, 847, 861, 876, 879, 882, 885, 888, - 893, 905, 920, 935, 949, 964, 976, 991, - 1006, 1008, 1022, 1037, 1040, 1043, 1046, 1049, - 1052, 1055, 1058, 1061, 1066, 1078, 1093, 1108, - 1122, 1137, 1149, 1164, 1179, 1181, 1195, 1210, - 1213, 1216, 1221, 1227, 1239, 1254, 1269, 1275, - 1288, 1290, 1305, 1320, 1334, 1349, 1363, 1378, - 1380, 1382, 1389, 1392, 1395, 1398, 1401, 1404, - 1411, 1418, 1420, 1433, 1445, 1460, 1475, 1481, - 1495, 1510, 1513, 1516, 1519, 1522, 1528, 1534, - 1548, 1563, 1578, 1584, 1586, 1600, 1615, 1631, - 1647, 1663, 1679, 1695, 1711, 1727, 1743, 1758, - 1773, 1779, 1781, 1797, 1813, 1829, 1844, 1860, - 1876, 1892, 1908, 1923, 1938, 1944, 1946, 1946, - 1946, 1958, 1969, 1976 + 617, 623, 635, 650, 665, 671, 684, 686, + 701, 716, 730, 745, 759, 774, 777, 780, + 783, 788, 796, 799, 802, 805, 810, 822, + 837, 852, 866, 881, 893, 908, 923, 925, + 939, 954, 957, 960, 963, 966, 971, 983, + 998, 1013, 1027, 1042, 1054, 1069, 1084, 1086, + 1100, 1115, 1118, 1121, 1124, 1127, 1130, 1133, + 1136, 1139, 1144, 1156, 1171, 1186, 1200, 1215, + 1227, 1242, 1257, 1259, 1273, 1288, 1291, 1294, + 1299, 1305, 1317, 1332, 1347, 1353, 1366, 1368, + 1383, 1398, 1412, 1427, 1441, 1456, 1458, 1460, + 1467, 1470, 1473, 1476, 1479, 1482, 1489, 1496, + 1498, 1511, 1523, 1538, 1553, 1559, 1573, 1588, + 1591, 1594, 1597, 1600, 1606, 1612, 1626, 1641, + 1656, 1662, 1675, 1677, 1692, 1707, 1721, 1736, + 1750, 1765, 1781, 1797, 1813, 1829, 1845, 1861, + 1877, 1893, 1908, 1923, 1929, 1942, 1944, 1960, + 1976, 1992, 2007, 2023, 2039, 2055, 2071, 2086, + 2101, 2107, 2109, 2109, 2109, 2121, 2132, 2139 }; static const char _group_lines_test_trans_keys[] = { @@ -3466,62 +3470,30 @@ static const char _group_lines_test_trans_keys[] = { 46, 48, 57, 65, 90, 97, 122, -1, 10, 114, -1, 10, 111, -1, 10, 117, -1, 10, 112, -1, 10, 32, 40, 9, - 13, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 41, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 9, - 13, -1, 10, -1, 10, 32, 95, 9, + 13, -1, 10, 32, 40, 9, 13, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 41, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 41, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 110, -1, 10, 102, -1, 10, - 111, -1, 10, 32, 9, 13, -1, 10, - 32, 97, 99, 111, 9, 13, -1, 10, - 116, -1, 10, 111, -1, 10, 109, -1, - 10, 32, 9, 13, -1, 10, 32, 95, - 9, 13, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 61, 95, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 61, 95, 9, 13, 45, 46, - 48, 57, 65, 90, 97, 122, -1, 10, - 32, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 61, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 95, 9, - 13, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 35, 95, 9, 13, 45, 46, - 48, 57, 65, 90, 97, 122, -1, 10, + 122, -1, 10, 32, 35, 9, 13, -1, + 10, 32, 35, 95, 9, 13, 48, 57, + 65, 90, 97, 122, -1, 10, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, -1, - 10, 32, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 104, -1, - 10, 117, -1, 10, 110, -1, 10, 107, - -1, 10, 32, 9, 13, -1, 10, 32, - 95, 9, 13, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 61, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 61, 95, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 95, - 9, 13, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 35, 95, 9, 13, 45, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 35, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 35, 95, 9, 13, 45, 46, - 48, 57, 65, 90, 97, 122, -1, 10, - -1, 10, 32, 95, 9, 13, 45, 46, + 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 35, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 112, - -1, 10, 101, -1, 10, 110, -1, 10, - 103, -1, 10, 114, -1, 10, 111, -1, - 10, 117, -1, 10, 112, -1, 10, 32, + 110, -1, 10, 102, -1, 10, 111, -1, + 10, 32, 9, 13, -1, 10, 32, 97, + 99, 111, 9, 13, -1, 10, 116, -1, + 10, 111, -1, 10, 109, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, @@ -3540,103 +3512,156 @@ static const char _group_lines_test_trans_keys[] = { 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 111, -1, 10, 108, - -1, 10, 32, 9, 13, -1, 10, 32, - 40, 9, 13, -1, 10, 32, 95, 9, + 97, 122, -1, 10, 104, -1, 10, 117, + -1, 10, 110, -1, 10, 107, -1, 10, + 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 9, 13, 45, 46, + 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 41, 95, 9, 13, 45, 46, 48, + 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, - 35, 9, 13, -1, 10, 32, 35, 95, - 9, 13, 48, 57, 65, 90, 97, 122, - -1, 10, -1, 10, 32, 35, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 35, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 95, 9, 13, 45, 46, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 61, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, + 35, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, -1, 10, + 32, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, + 90, 97, 122, -1, 10, 112, -1, 10, + 101, -1, 10, 110, -1, 10, 103, -1, + 10, 114, -1, 10, 111, -1, 10, 117, + -1, 10, 112, -1, 10, 32, 9, 13, + -1, 10, 32, 95, 9, 13, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 61, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, -1, 10, -1, 10, - 32, 101, 103, 9, 13, -1, 10, 103, - -1, 10, 114, -1, 10, 111, -1, 10, - 117, -1, 10, 112, -1, 10, 32, 35, - 40, 9, 13, -1, 10, 32, 35, 40, - 9, 13, -1, 10, -1, 10, 32, 41, - 95, 9, 13, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 95, 9, 13, 48, + 97, 122, -1, 10, 32, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 35, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 111, -1, 10, 108, -1, 10, + 32, 9, 13, -1, 10, 32, 40, 9, + 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 9, - 13, -1, 10, 32, 95, 9, 13, 45, + 13, -1, 10, 32, 35, 95, 9, 13, + 48, 57, 65, 90, 97, 122, -1, 10, + -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 9, 13, 45, 46, + 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, + 32, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 41, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, -1, 10, -1, 10, 32, 101, + 103, 9, 13, -1, 10, 103, -1, 10, 114, -1, 10, 111, -1, 10, 117, -1, - 10, 112, -1, 10, 32, 40, 9, 13, + 10, 112, -1, 10, 32, 35, 40, 9, + 13, -1, 10, 32, 35, 40, 9, 13, + -1, 10, -1, 10, 32, 41, 95, 9, + 13, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 41, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 9, 13, -1, + 10, 32, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 114, -1, + 10, 111, -1, 10, 117, -1, 10, 112, -1, 10, 32, 40, 9, 13, -1, 10, - 32, 67, 86, 95, 9, 13, 48, 57, + 32, 40, 9, 13, -1, 10, 32, 67, + 86, 95, 9, 13, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 41, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 9, 13, -1, 10, + 32, 35, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, -1, 10, 32, + 35, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, + 32, 41, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 108, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 105, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 112, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 98, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 111, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 97, 9, 13, 45, 46, 48, + 57, 65, 90, 98, 122, -1, 10, 32, + 41, 95, 114, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 100, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 35, 9, 13, - -1, 10, -1, 10, 32, 95, 9, 13, + 90, 97, 122, -1, 10, 32, 35, 9, + 13, -1, 10, 32, 35, 95, 9, 13, + 48, 57, 65, 90, 97, 122, -1, 10, + -1, 10, 32, 41, 95, 105, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 41, 95, 101, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 41, 95, 119, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 108, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 105, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 112, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 98, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 111, 9, 13, 45, + 10, 32, 41, 68, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 41, 95, 97, 9, 13, 45, 46, 48, 57, 65, 90, 98, 122, -1, - 10, 32, 41, 95, 114, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, 32, 41, 95, 100, 9, 13, 45, + 10, 32, 41, 95, 116, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 41, 95, 97, 9, 13, 45, + 46, 48, 57, 65, 90, 98, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 9, 13, -1, 10, -1, 10, 32, - 41, 95, 105, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 41, 95, 101, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 41, 95, 119, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 41, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, - 68, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, - 95, 97, 9, 13, 45, 46, 48, 57, - 65, 90, 98, 122, -1, 10, 32, 41, - 95, 116, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, - 95, 97, 9, 13, 45, 46, 48, 57, - 65, 90, 98, 122, -1, 10, 32, 41, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 35, 9, 13, - -1, 10, -1, 10, 32, 35, 97, 98, - 101, 103, 105, 109, 9, 13, -1, 10, - 32, 97, 98, 101, 103, 105, 109, 9, - 13, -1, 10, 32, 101, 103, 9, 13, - -1, 10, 32, 101, 103, 9, 13, 0 + 35, 97, 98, 101, 103, 105, 109, 9, + 13, -1, 10, 32, 97, 98, 101, 103, + 105, 109, 9, 13, -1, 10, 32, 101, + 103, 9, 13, -1, 10, 32, 101, 103, + 9, 13, 0 }; static const char _group_lines_test_single_lengths[] = { @@ -3652,24 +3677,25 @@ static const char _group_lines_test_single_lengths[] = { 4, 2, 4, 3, 3, 3, 3, 3, 3, 5, 5, 2, 5, 4, 5, 5, 4, 4, 5, 3, 3, 3, 3, 4, - 4, 5, 5, 4, 2, 4, 5, 3, - 3, 3, 3, 6, 3, 3, 3, 3, - 4, 5, 5, 4, 5, 4, 5, 5, - 2, 4, 5, 3, 3, 3, 3, 3, - 4, 5, 5, 4, 5, 4, 5, 5, - 2, 4, 5, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 4, 5, 5, 4, - 5, 4, 5, 5, 2, 4, 5, 3, - 3, 3, 4, 4, 5, 5, 4, 5, - 2, 5, 5, 4, 5, 4, 5, 2, - 2, 5, 3, 3, 3, 3, 3, 5, - 5, 2, 5, 4, 5, 5, 4, 4, - 5, 3, 3, 3, 3, 4, 4, 6, - 5, 5, 4, 2, 4, 5, 6, 6, - 6, 6, 6, 6, 6, 6, 5, 5, - 4, 2, 6, 6, 6, 5, 6, 6, - 6, 6, 5, 5, 4, 2, 0, 0, - 10, 9, 5, 5 + 4, 4, 5, 5, 4, 5, 2, 5, + 5, 4, 5, 4, 5, 3, 3, 3, + 3, 6, 3, 3, 3, 3, 4, 5, + 5, 4, 5, 4, 5, 5, 2, 4, + 5, 3, 3, 3, 3, 3, 4, 5, + 5, 4, 5, 4, 5, 5, 2, 4, + 5, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 4, 5, 5, 4, 5, 4, + 5, 5, 2, 4, 5, 3, 3, 3, + 4, 4, 5, 5, 4, 5, 2, 5, + 5, 4, 5, 4, 5, 2, 2, 5, + 3, 3, 3, 3, 3, 5, 5, 2, + 5, 4, 5, 5, 4, 4, 5, 3, + 3, 3, 3, 4, 4, 6, 5, 5, + 4, 5, 2, 5, 5, 4, 5, 4, + 5, 6, 6, 6, 6, 6, 6, 6, + 6, 5, 5, 4, 5, 2, 6, 6, + 6, 5, 6, 6, 6, 6, 5, 5, + 4, 2, 0, 0, 10, 9, 5, 5 }; static const char _group_lines_test_range_lengths[] = { @@ -3685,24 +3711,25 @@ static const char _group_lines_test_range_lengths[] = { 1, 0, 2, 2, 0, 0, 0, 0, 0, 1, 1, 0, 4, 4, 5, 5, 1, 5, 5, 0, 0, 0, 0, 1, - 4, 5, 5, 1, 0, 5, 5, 0, - 0, 0, 1, 1, 0, 0, 0, 1, - 4, 5, 5, 5, 5, 4, 5, 5, - 0, 5, 5, 0, 0, 0, 0, 1, - 4, 5, 5, 5, 5, 4, 5, 5, - 0, 5, 5, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 4, 5, 5, 5, - 5, 4, 5, 5, 0, 5, 5, 0, - 0, 1, 1, 4, 5, 5, 1, 4, - 0, 5, 5, 5, 5, 5, 5, 0, - 0, 1, 0, 0, 0, 0, 0, 1, - 1, 0, 4, 4, 5, 5, 1, 5, - 5, 0, 0, 0, 0, 1, 1, 4, - 5, 5, 1, 0, 5, 5, 5, 5, + 1, 4, 5, 5, 1, 4, 0, 5, + 5, 5, 5, 5, 5, 0, 0, 0, + 1, 1, 0, 0, 0, 1, 4, 5, + 5, 5, 5, 4, 5, 5, 0, 5, + 5, 0, 0, 0, 0, 1, 4, 5, + 5, 5, 5, 4, 5, 5, 0, 5, + 5, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 4, 5, 5, 5, 5, 4, + 5, 5, 0, 5, 5, 0, 0, 1, + 1, 4, 5, 5, 1, 4, 0, 5, + 5, 5, 5, 5, 5, 0, 0, 1, + 0, 0, 0, 0, 0, 1, 1, 0, + 4, 4, 5, 5, 1, 5, 5, 0, + 0, 0, 0, 1, 1, 4, 5, 5, + 1, 4, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 1, 0, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 1, 0, 0, 0, - 1, 1, 1, 1 + 5, 5, 5, 1, 4, 0, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 1, 0, 0, 0, 1, 1, 1, 1 }; static const short _group_lines_test_index_offsets[] = { @@ -3718,244 +3745,260 @@ static const short _group_lines_test_index_offsets[] = { 425, 431, 434, 441, 447, 451, 455, 459, 463, 467, 474, 481, 484, 494, 503, 514, 525, 531, 541, 552, 556, 560, 564, 568, - 574, 583, 594, 605, 611, 614, 624, 635, - 639, 643, 647, 652, 660, 664, 668, 672, - 677, 686, 697, 708, 718, 729, 738, 749, - 760, 763, 773, 784, 788, 792, 796, 800, - 805, 814, 825, 836, 846, 857, 866, 877, - 888, 891, 901, 912, 916, 920, 924, 928, - 932, 936, 940, 944, 949, 958, 969, 980, - 990, 1001, 1010, 1021, 1032, 1035, 1045, 1056, - 1060, 1064, 1069, 1075, 1084, 1095, 1106, 1112, - 1122, 1125, 1136, 1147, 1157, 1168, 1178, 1189, - 1192, 1195, 1202, 1206, 1210, 1214, 1218, 1222, - 1229, 1236, 1239, 1249, 1258, 1269, 1280, 1286, - 1296, 1307, 1311, 1315, 1319, 1323, 1329, 1335, - 1346, 1357, 1368, 1374, 1377, 1387, 1398, 1410, - 1422, 1434, 1446, 1458, 1470, 1482, 1494, 1505, - 1516, 1522, 1525, 1537, 1549, 1561, 1572, 1584, - 1596, 1608, 1620, 1631, 1642, 1648, 1651, 1652, - 1653, 1665, 1676, 1683 + 574, 580, 589, 600, 611, 617, 627, 630, + 641, 652, 662, 673, 683, 694, 698, 702, + 706, 711, 719, 723, 727, 731, 736, 745, + 756, 767, 777, 788, 797, 808, 819, 822, + 832, 843, 847, 851, 855, 859, 864, 873, + 884, 895, 905, 916, 925, 936, 947, 950, + 960, 971, 975, 979, 983, 987, 991, 995, + 999, 1003, 1008, 1017, 1028, 1039, 1049, 1060, + 1069, 1080, 1091, 1094, 1104, 1115, 1119, 1123, + 1128, 1134, 1143, 1154, 1165, 1171, 1181, 1184, + 1195, 1206, 1216, 1227, 1237, 1248, 1251, 1254, + 1261, 1265, 1269, 1273, 1277, 1281, 1288, 1295, + 1298, 1308, 1317, 1328, 1339, 1345, 1355, 1366, + 1370, 1374, 1378, 1382, 1388, 1394, 1405, 1416, + 1427, 1433, 1443, 1446, 1457, 1468, 1478, 1489, + 1499, 1510, 1522, 1534, 1546, 1558, 1570, 1582, + 1594, 1606, 1617, 1628, 1634, 1644, 1647, 1659, + 1671, 1683, 1694, 1706, 1718, 1730, 1742, 1753, + 1764, 1770, 1773, 1774, 1775, 1787, 1798, 1805 }; static const unsigned char _group_lines_test_trans_targs_wi[] = { - 232, 232, 1, 232, 233, 2, 3, 48, - 76, 91, 103, 159, 2, 1, 232, 232, - 4, 1, 232, 232, 5, 1, 232, 232, - 6, 1, 232, 232, 7, 7, 1, 232, - 232, 7, 7, 8, 1, 232, 232, 9, - 9, 47, 1, 232, 232, 9, 10, 9, - 1, 232, 232, 10, 10, 11, 1, 232, - 232, 12, 13, 12, 46, 1, 232, 232, - 12, 13, 12, 1, 232, 232, 14, 14, - 1, 232, 232, 14, 15, 14, 1, 232, - 232, 15, 16, 43, 15, 17, 1, 232, - 232, 17, 1, 232, 232, 18, 19, 18, - 42, 1, 232, 232, 18, 19, 18, 1, - 232, 232, 19, 20, 39, 19, 21, 1, - 232, 232, 21, 1, 232, 232, 22, 23, - 22, 38, 1, 232, 232, 22, 23, 22, - 1, 232, 232, 23, 24, 35, 23, 25, - 1, 232, 232, 25, 1, 232, 232, 26, - 27, 26, 34, 1, 232, 232, 26, 27, - 26, 1, 232, 232, 28, 29, 28, 1, - 232, 232, 28, 29, 30, 28, 30, 30, - 30, 1, 232, 232, 29, 232, 232, 31, + 244, 244, 1, 244, 245, 2, 3, 48, + 76, 91, 109, 165, 2, 1, 244, 244, + 4, 1, 244, 244, 5, 1, 244, 244, + 6, 1, 244, 244, 7, 7, 1, 244, + 244, 7, 7, 8, 1, 244, 244, 9, + 9, 47, 1, 244, 244, 9, 10, 9, + 1, 244, 244, 10, 10, 11, 1, 244, + 244, 12, 13, 12, 46, 1, 244, 244, + 12, 13, 12, 1, 244, 244, 14, 14, + 1, 244, 244, 14, 15, 14, 1, 244, + 244, 15, 16, 43, 15, 17, 1, 244, + 244, 17, 1, 244, 244, 18, 19, 18, + 42, 1, 244, 244, 18, 19, 18, 1, + 244, 244, 19, 20, 39, 19, 21, 1, + 244, 244, 21, 1, 244, 244, 22, 23, + 22, 38, 1, 244, 244, 22, 23, 22, + 1, 244, 244, 23, 24, 35, 23, 25, + 1, 244, 244, 25, 1, 244, 244, 26, + 27, 26, 34, 1, 244, 244, 26, 27, + 26, 1, 244, 244, 28, 29, 28, 1, + 244, 244, 28, 29, 30, 28, 30, 30, + 30, 1, 244, 244, 29, 244, 244, 31, 29, 33, 31, 32, 33, 33, 33, 1, - 232, 232, 31, 29, 33, 31, 32, 33, - 33, 33, 1, 232, 232, 32, 33, 32, - 32, 33, 33, 33, 1, 232, 232, 31, + 244, 244, 31, 29, 33, 31, 32, 33, + 33, 33, 1, 244, 244, 32, 33, 32, + 32, 33, 33, 33, 1, 244, 244, 31, 29, 33, 31, 32, 33, 33, 33, 1, - 232, 232, 26, 27, 26, 34, 1, 232, - 232, 36, 1, 232, 232, 26, 27, 26, - 37, 1, 232, 232, 26, 27, 26, 37, - 1, 232, 232, 22, 23, 22, 38, 1, - 232, 232, 40, 1, 232, 232, 22, 23, - 22, 41, 1, 232, 232, 22, 23, 22, - 41, 1, 232, 232, 18, 19, 18, 42, - 1, 232, 232, 44, 1, 232, 232, 18, - 19, 18, 45, 1, 232, 232, 18, 19, - 18, 45, 1, 232, 232, 12, 13, 12, - 46, 1, 232, 232, 9, 9, 47, 1, - 232, 232, 49, 1, 232, 232, 50, 1, - 232, 232, 51, 1, 232, 232, 58, 52, - 52, 52, 52, 1, 232, 232, 53, 53, - 1, 232, 232, 53, 53, 54, 1, 232, - 232, 55, 56, 55, 57, 1, 232, 232, - 55, 56, 55, 54, 1, 232, 232, 56, - 232, 232, 55, 56, 55, 57, 1, 232, - 232, 59, 1, 232, 232, 60, 1, 232, - 232, 61, 1, 232, 232, 62, 1, 232, - 232, 63, 1, 232, 232, 64, 1, 232, - 232, 65, 1, 232, 232, 66, 1, 232, - 232, 67, 1, 232, 232, 68, 68, 1, - 232, 232, 68, 68, 69, 1, 232, 232, - 70, 70, 75, 1, 232, 232, 70, 70, - 71, 1, 232, 232, 72, 73, 72, 74, - 1, 232, 232, 72, 73, 72, 1, 232, - 232, 73, 232, 232, 72, 73, 72, 74, - 1, 232, 232, 70, 70, 75, 1, 232, - 232, 77, 1, 232, 232, 78, 1, 232, - 232, 79, 1, 232, 232, 80, 1, 232, - 232, 81, 1, 232, 232, 82, 83, 84, - 82, 1, 232, 232, 82, 83, 84, 82, - 1, 232, 232, 83, 232, 232, 85, 88, - 86, 85, 86, 86, 86, 1, 232, 232, - 85, 86, 85, 86, 86, 86, 1, 232, - 232, 87, 88, 90, 87, 89, 90, 90, - 90, 1, 232, 232, 87, 88, 90, 87, - 89, 90, 90, 90, 1, 232, 232, 88, - 83, 88, 1, 232, 232, 89, 90, 89, - 89, 90, 90, 90, 1, 232, 232, 87, + 244, 244, 26, 27, 26, 34, 1, 244, + 244, 36, 1, 244, 244, 26, 27, 26, + 37, 1, 244, 244, 26, 27, 26, 37, + 1, 244, 244, 22, 23, 22, 38, 1, + 244, 244, 40, 1, 244, 244, 22, 23, + 22, 41, 1, 244, 244, 22, 23, 22, + 41, 1, 244, 244, 18, 19, 18, 42, + 1, 244, 244, 44, 1, 244, 244, 18, + 19, 18, 45, 1, 244, 244, 18, 19, + 18, 45, 1, 244, 244, 12, 13, 12, + 46, 1, 244, 244, 9, 9, 47, 1, + 244, 244, 49, 1, 244, 244, 50, 1, + 244, 244, 51, 1, 244, 244, 58, 52, + 52, 52, 52, 1, 244, 244, 53, 53, + 1, 244, 244, 53, 53, 54, 1, 244, + 244, 55, 56, 55, 57, 1, 244, 244, + 55, 56, 55, 54, 1, 244, 244, 56, + 244, 244, 55, 56, 55, 57, 1, 244, + 244, 59, 1, 244, 244, 60, 1, 244, + 244, 61, 1, 244, 244, 62, 1, 244, + 244, 63, 1, 244, 244, 64, 1, 244, + 244, 65, 1, 244, 244, 66, 1, 244, + 244, 67, 1, 244, 244, 68, 68, 1, + 244, 244, 68, 68, 69, 1, 244, 244, + 70, 70, 75, 1, 244, 244, 70, 70, + 71, 1, 244, 244, 72, 73, 72, 74, + 1, 244, 244, 72, 73, 72, 1, 244, + 244, 73, 244, 244, 72, 73, 72, 74, + 1, 244, 244, 70, 70, 75, 1, 244, + 244, 77, 1, 244, 244, 78, 1, 244, + 244, 79, 1, 244, 244, 80, 1, 244, + 244, 81, 1, 244, 244, 82, 83, 84, + 82, 1, 244, 244, 82, 83, 84, 82, + 1, 244, 244, 83, 244, 244, 85, 88, + 86, 85, 86, 86, 86, 1, 244, 244, + 85, 86, 85, 86, 86, 86, 1, 244, + 244, 87, 88, 90, 87, 89, 90, 90, + 90, 1, 244, 244, 87, 88, 90, 87, + 89, 90, 90, 90, 1, 244, 244, 88, + 83, 88, 1, 244, 244, 89, 90, 89, + 89, 90, 90, 90, 1, 244, 244, 87, 88, 90, 87, 89, 90, 90, 90, 1, - 232, 232, 92, 1, 232, 232, 93, 1, - 232, 232, 94, 1, 232, 232, 95, 1, - 232, 232, 95, 96, 95, 1, 232, 232, - 96, 97, 96, 97, 97, 97, 1, 232, - 232, 98, 99, 102, 98, 101, 102, 102, - 102, 1, 232, 232, 98, 99, 102, 98, - 101, 102, 102, 102, 1, 232, 232, 99, - 100, 99, 1, 232, 232, 100, 232, 232, - 101, 102, 101, 101, 102, 102, 102, 1, - 232, 232, 98, 99, 102, 98, 101, 102, - 102, 102, 1, 232, 232, 104, 1, 232, - 232, 105, 1, 232, 232, 106, 1, 232, - 232, 107, 107, 1, 232, 232, 107, 108, - 123, 139, 107, 1, 232, 232, 109, 1, - 232, 232, 110, 1, 232, 232, 111, 1, - 232, 232, 112, 112, 1, 232, 232, 112, - 113, 112, 113, 113, 113, 1, 232, 232, - 114, 117, 116, 114, 115, 116, 116, 116, - 1, 232, 232, 114, 117, 116, 114, 115, - 116, 116, 116, 1, 232, 232, 115, 116, - 115, 115, 116, 116, 116, 1, 232, 232, - 114, 117, 116, 114, 115, 116, 116, 116, - 1, 232, 232, 117, 118, 117, 118, 118, - 118, 1, 232, 232, 119, 120, 122, 119, - 121, 122, 122, 122, 1, 232, 232, 119, - 120, 122, 119, 121, 122, 122, 122, 1, - 232, 232, 120, 232, 232, 121, 122, 121, - 121, 122, 122, 122, 1, 232, 232, 119, - 120, 122, 119, 121, 122, 122, 122, 1, - 232, 232, 124, 1, 232, 232, 125, 1, - 232, 232, 126, 1, 232, 232, 127, 1, - 232, 232, 128, 128, 1, 232, 232, 128, - 129, 128, 129, 129, 129, 1, 232, 232, - 130, 133, 132, 130, 131, 132, 132, 132, - 1, 232, 232, 130, 133, 132, 130, 131, - 132, 132, 132, 1, 232, 232, 131, 132, - 131, 131, 132, 132, 132, 1, 232, 232, - 130, 133, 132, 130, 131, 132, 132, 132, - 1, 232, 232, 133, 134, 133, 134, 134, - 134, 1, 232, 232, 135, 136, 138, 135, - 137, 138, 138, 138, 1, 232, 232, 135, - 136, 138, 135, 137, 138, 138, 138, 1, - 232, 232, 136, 232, 232, 137, 138, 137, - 137, 138, 138, 138, 1, 232, 232, 135, - 136, 138, 135, 137, 138, 138, 138, 1, - 232, 232, 140, 1, 232, 232, 141, 1, - 232, 232, 142, 1, 232, 232, 143, 1, - 232, 232, 144, 1, 232, 232, 145, 1, - 232, 232, 146, 1, 232, 232, 147, 1, - 232, 232, 148, 148, 1, 232, 232, 148, - 149, 148, 149, 149, 149, 1, 232, 232, - 150, 153, 152, 150, 151, 152, 152, 152, - 1, 232, 232, 150, 153, 152, 150, 151, - 152, 152, 152, 1, 232, 232, 151, 152, - 151, 151, 152, 152, 152, 1, 232, 232, - 150, 153, 152, 150, 151, 152, 152, 152, - 1, 232, 232, 153, 154, 153, 154, 154, - 154, 1, 232, 232, 155, 156, 158, 155, - 157, 158, 158, 158, 1, 232, 232, 155, - 156, 158, 155, 157, 158, 158, 158, 1, - 232, 232, 156, 232, 232, 157, 158, 157, - 157, 158, 158, 158, 1, 232, 232, 155, - 156, 158, 155, 157, 158, 158, 158, 1, - 232, 232, 160, 1, 232, 232, 161, 1, - 232, 232, 162, 162, 1, 232, 232, 162, - 163, 162, 1, 232, 232, 163, 164, 163, - 164, 164, 164, 1, 232, 232, 165, 166, - 174, 165, 173, 174, 174, 174, 1, 232, - 232, 165, 166, 174, 165, 173, 174, 174, - 174, 1, 232, 232, 167, 168, 167, 1, - 232, 232, 167, 168, 169, 167, 169, 169, - 169, 1, 232, 232, 168, 232, 232, 170, - 168, 172, 170, 171, 172, 172, 172, 1, - 232, 232, 170, 168, 172, 170, 171, 172, - 172, 172, 1, 232, 232, 171, 172, 171, - 171, 172, 172, 172, 1, 232, 232, 170, - 168, 172, 170, 171, 172, 172, 172, 1, - 232, 232, 173, 174, 173, 173, 174, 174, - 174, 1, 232, 232, 165, 166, 174, 165, - 173, 174, 174, 174, 1, 0, 232, 175, - 234, 234, 176, 234, 235, 177, 178, 193, - 177, 176, 234, 234, 179, 176, 234, 234, - 180, 176, 234, 234, 181, 176, 234, 234, - 182, 176, 234, 234, 183, 176, 234, 234, - 184, 185, 186, 184, 176, 234, 234, 184, - 185, 186, 184, 176, 234, 234, 185, 234, - 234, 187, 190, 188, 187, 188, 188, 188, - 176, 234, 234, 187, 188, 187, 188, 188, - 188, 176, 234, 234, 189, 190, 192, 189, - 191, 192, 192, 192, 176, 234, 234, 189, - 190, 192, 189, 191, 192, 192, 192, 176, - 234, 234, 190, 185, 190, 176, 234, 234, - 191, 192, 191, 191, 192, 192, 192, 176, - 234, 234, 189, 190, 192, 189, 191, 192, - 192, 192, 176, 234, 234, 194, 176, 234, - 234, 195, 176, 234, 234, 196, 176, 234, - 234, 197, 176, 234, 234, 198, 199, 198, - 176, 234, 234, 198, 199, 198, 176, 234, - 234, 199, 206, 218, 200, 199, 200, 200, - 200, 176, 234, 234, 201, 202, 205, 201, - 204, 205, 205, 205, 176, 234, 234, 201, - 202, 205, 201, 204, 205, 205, 205, 176, - 234, 234, 202, 203, 202, 176, 234, 234, - 203, 234, 234, 204, 205, 204, 204, 205, - 205, 205, 176, 234, 234, 201, 202, 205, - 201, 204, 205, 205, 205, 176, 234, 234, - 201, 202, 205, 207, 201, 204, 205, 205, - 205, 176, 234, 234, 201, 202, 205, 208, - 201, 204, 205, 205, 205, 176, 234, 234, - 201, 202, 205, 209, 201, 204, 205, 205, - 205, 176, 234, 234, 201, 202, 205, 210, - 201, 204, 205, 205, 205, 176, 234, 234, - 201, 202, 205, 211, 201, 204, 205, 205, - 205, 176, 234, 234, 201, 202, 205, 212, - 201, 204, 205, 205, 205, 176, 234, 234, - 201, 202, 205, 213, 201, 204, 205, 205, - 205, 176, 234, 234, 201, 202, 205, 214, - 201, 204, 205, 205, 205, 176, 234, 234, - 215, 216, 205, 215, 204, 205, 205, 205, - 176, 234, 234, 215, 216, 205, 215, 204, - 205, 205, 205, 176, 234, 234, 216, 217, - 216, 176, 234, 234, 217, 234, 234, 201, - 202, 205, 219, 201, 204, 205, 205, 205, - 176, 234, 234, 201, 202, 205, 220, 201, - 204, 205, 205, 205, 176, 234, 234, 201, - 202, 205, 221, 201, 204, 205, 205, 205, - 176, 234, 234, 222, 202, 205, 222, 204, - 205, 205, 205, 176, 234, 234, 222, 202, - 223, 205, 222, 204, 205, 205, 205, 176, - 234, 234, 201, 202, 205, 224, 201, 204, - 205, 205, 205, 176, 234, 234, 201, 202, - 205, 225, 201, 204, 205, 205, 205, 176, - 234, 234, 201, 202, 205, 226, 201, 204, - 205, 205, 205, 176, 234, 234, 227, 228, - 205, 227, 204, 205, 205, 205, 176, 234, - 234, 227, 228, 205, 227, 204, 205, 205, - 205, 176, 234, 234, 202, 229, 202, 176, - 234, 234, 229, 231, 231, 0, 233, 2, - 175, 3, 48, 76, 91, 103, 159, 2, - 1, 232, 233, 2, 3, 48, 76, 91, - 103, 159, 2, 1, 0, 235, 177, 178, - 193, 177, 176, 234, 235, 177, 178, 193, - 177, 176, 0 + 244, 244, 92, 1, 244, 244, 93, 1, + 244, 244, 94, 1, 244, 244, 95, 1, + 244, 244, 96, 97, 96, 1, 244, 244, + 96, 97, 96, 1, 244, 244, 97, 98, + 97, 98, 98, 98, 1, 244, 244, 99, + 100, 108, 99, 107, 108, 108, 108, 1, + 244, 244, 99, 100, 108, 99, 107, 108, + 108, 108, 1, 244, 244, 101, 102, 101, + 1, 244, 244, 101, 102, 103, 101, 103, + 103, 103, 1, 244, 244, 102, 244, 244, + 104, 102, 106, 104, 105, 106, 106, 106, + 1, 244, 244, 104, 102, 106, 104, 105, + 106, 106, 106, 1, 244, 244, 105, 106, + 105, 105, 106, 106, 106, 1, 244, 244, + 104, 102, 106, 104, 105, 106, 106, 106, + 1, 244, 244, 107, 108, 107, 107, 108, + 108, 108, 1, 244, 244, 99, 100, 108, + 99, 107, 108, 108, 108, 1, 244, 244, + 110, 1, 244, 244, 111, 1, 244, 244, + 112, 1, 244, 244, 113, 113, 1, 244, + 244, 113, 114, 129, 145, 113, 1, 244, + 244, 115, 1, 244, 244, 116, 1, 244, + 244, 117, 1, 244, 244, 118, 118, 1, + 244, 244, 118, 119, 118, 119, 119, 119, + 1, 244, 244, 120, 123, 122, 120, 121, + 122, 122, 122, 1, 244, 244, 120, 123, + 122, 120, 121, 122, 122, 122, 1, 244, + 244, 121, 122, 121, 121, 122, 122, 122, + 1, 244, 244, 120, 123, 122, 120, 121, + 122, 122, 122, 1, 244, 244, 123, 124, + 123, 124, 124, 124, 1, 244, 244, 125, + 126, 128, 125, 127, 128, 128, 128, 1, + 244, 244, 125, 126, 128, 125, 127, 128, + 128, 128, 1, 244, 244, 126, 244, 244, + 127, 128, 127, 127, 128, 128, 128, 1, + 244, 244, 125, 126, 128, 125, 127, 128, + 128, 128, 1, 244, 244, 130, 1, 244, + 244, 131, 1, 244, 244, 132, 1, 244, + 244, 133, 1, 244, 244, 134, 134, 1, + 244, 244, 134, 135, 134, 135, 135, 135, + 1, 244, 244, 136, 139, 138, 136, 137, + 138, 138, 138, 1, 244, 244, 136, 139, + 138, 136, 137, 138, 138, 138, 1, 244, + 244, 137, 138, 137, 137, 138, 138, 138, + 1, 244, 244, 136, 139, 138, 136, 137, + 138, 138, 138, 1, 244, 244, 139, 140, + 139, 140, 140, 140, 1, 244, 244, 141, + 142, 144, 141, 143, 144, 144, 144, 1, + 244, 244, 141, 142, 144, 141, 143, 144, + 144, 144, 1, 244, 244, 142, 244, 244, + 143, 144, 143, 143, 144, 144, 144, 1, + 244, 244, 141, 142, 144, 141, 143, 144, + 144, 144, 1, 244, 244, 146, 1, 244, + 244, 147, 1, 244, 244, 148, 1, 244, + 244, 149, 1, 244, 244, 150, 1, 244, + 244, 151, 1, 244, 244, 152, 1, 244, + 244, 153, 1, 244, 244, 154, 154, 1, + 244, 244, 154, 155, 154, 155, 155, 155, + 1, 244, 244, 156, 159, 158, 156, 157, + 158, 158, 158, 1, 244, 244, 156, 159, + 158, 156, 157, 158, 158, 158, 1, 244, + 244, 157, 158, 157, 157, 158, 158, 158, + 1, 244, 244, 156, 159, 158, 156, 157, + 158, 158, 158, 1, 244, 244, 159, 160, + 159, 160, 160, 160, 1, 244, 244, 161, + 162, 164, 161, 163, 164, 164, 164, 1, + 244, 244, 161, 162, 164, 161, 163, 164, + 164, 164, 1, 244, 244, 162, 244, 244, + 163, 164, 163, 163, 164, 164, 164, 1, + 244, 244, 161, 162, 164, 161, 163, 164, + 164, 164, 1, 244, 244, 166, 1, 244, + 244, 167, 1, 244, 244, 168, 168, 1, + 244, 244, 168, 169, 168, 1, 244, 244, + 169, 170, 169, 170, 170, 170, 1, 244, + 244, 171, 172, 180, 171, 179, 180, 180, + 180, 1, 244, 244, 171, 172, 180, 171, + 179, 180, 180, 180, 1, 244, 244, 173, + 174, 173, 1, 244, 244, 173, 174, 175, + 173, 175, 175, 175, 1, 244, 244, 174, + 244, 244, 176, 174, 178, 176, 177, 178, + 178, 178, 1, 244, 244, 176, 174, 178, + 176, 177, 178, 178, 178, 1, 244, 244, + 177, 178, 177, 177, 178, 178, 178, 1, + 244, 244, 176, 174, 178, 176, 177, 178, + 178, 178, 1, 244, 244, 179, 180, 179, + 179, 180, 180, 180, 1, 244, 244, 171, + 172, 180, 171, 179, 180, 180, 180, 1, + 0, 244, 181, 246, 246, 182, 246, 247, + 183, 184, 199, 183, 182, 246, 246, 185, + 182, 246, 246, 186, 182, 246, 246, 187, + 182, 246, 246, 188, 182, 246, 246, 189, + 182, 246, 246, 190, 191, 192, 190, 182, + 246, 246, 190, 191, 192, 190, 182, 246, + 246, 191, 246, 246, 193, 196, 194, 193, + 194, 194, 194, 182, 246, 246, 193, 194, + 193, 194, 194, 194, 182, 246, 246, 195, + 196, 198, 195, 197, 198, 198, 198, 182, + 246, 246, 195, 196, 198, 195, 197, 198, + 198, 198, 182, 246, 246, 196, 191, 196, + 182, 246, 246, 197, 198, 197, 197, 198, + 198, 198, 182, 246, 246, 195, 196, 198, + 195, 197, 198, 198, 198, 182, 246, 246, + 200, 182, 246, 246, 201, 182, 246, 246, + 202, 182, 246, 246, 203, 182, 246, 246, + 204, 205, 204, 182, 246, 246, 204, 205, + 204, 182, 246, 246, 205, 217, 230, 206, + 205, 206, 206, 206, 182, 246, 246, 207, + 208, 216, 207, 215, 216, 216, 216, 182, + 246, 246, 207, 208, 216, 207, 215, 216, + 216, 216, 182, 246, 246, 209, 210, 209, + 182, 246, 246, 209, 210, 211, 209, 211, + 211, 211, 182, 246, 246, 210, 246, 246, + 212, 210, 214, 212, 213, 214, 214, 214, + 182, 246, 246, 212, 210, 214, 212, 213, + 214, 214, 214, 182, 246, 246, 213, 214, + 213, 213, 214, 214, 214, 182, 246, 246, + 212, 210, 214, 212, 213, 214, 214, 214, + 182, 246, 246, 215, 216, 215, 215, 216, + 216, 216, 182, 246, 246, 207, 208, 216, + 207, 215, 216, 216, 216, 182, 246, 246, + 207, 208, 216, 218, 207, 215, 216, 216, + 216, 182, 246, 246, 207, 208, 216, 219, + 207, 215, 216, 216, 216, 182, 246, 246, + 207, 208, 216, 220, 207, 215, 216, 216, + 216, 182, 246, 246, 207, 208, 216, 221, + 207, 215, 216, 216, 216, 182, 246, 246, + 207, 208, 216, 222, 207, 215, 216, 216, + 216, 182, 246, 246, 207, 208, 216, 223, + 207, 215, 216, 216, 216, 182, 246, 246, + 207, 208, 216, 224, 207, 215, 216, 216, + 216, 182, 246, 246, 207, 208, 216, 225, + 207, 215, 216, 216, 216, 182, 246, 246, + 226, 227, 216, 226, 215, 216, 216, 216, + 182, 246, 246, 226, 227, 216, 226, 215, + 216, 216, 216, 182, 246, 246, 228, 229, + 228, 182, 246, 246, 228, 229, 211, 228, + 211, 211, 211, 182, 246, 246, 229, 246, + 246, 207, 208, 216, 231, 207, 215, 216, + 216, 216, 182, 246, 246, 207, 208, 216, + 232, 207, 215, 216, 216, 216, 182, 246, + 246, 207, 208, 216, 233, 207, 215, 216, + 216, 216, 182, 246, 246, 234, 208, 216, + 234, 215, 216, 216, 216, 182, 246, 246, + 234, 208, 235, 216, 234, 215, 216, 216, + 216, 182, 246, 246, 207, 208, 216, 236, + 207, 215, 216, 216, 216, 182, 246, 246, + 207, 208, 216, 237, 207, 215, 216, 216, + 216, 182, 246, 246, 207, 208, 216, 238, + 207, 215, 216, 216, 216, 182, 246, 246, + 239, 240, 216, 239, 215, 216, 216, 216, + 182, 246, 246, 239, 240, 216, 239, 215, + 216, 216, 216, 182, 246, 246, 209, 241, + 209, 182, 246, 246, 241, 243, 243, 0, + 245, 2, 181, 3, 48, 76, 91, 109, + 165, 2, 1, 244, 245, 2, 3, 48, + 76, 91, 109, 165, 2, 1, 0, 247, + 183, 184, 199, 183, 182, 246, 247, 183, + 184, 199, 183, 182, 0 }; static const unsigned char _group_lines_test_trans_actions_wi[] = { - 53, 65, 0, 53, 154, 0, 0, 0, - 41, 0, 92, 33, 0, 0, 53, 65, + 53, 65, 0, 53, 157, 0, 0, 0, + 41, 0, 95, 33, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 0, 53, 65, 0, 0, 0, 0, 53, 65, 19, @@ -3973,13 +4016,13 @@ static const unsigned char _group_lines_test_trans_actions_wi[] = { 0, 53, 65, 0, 0, 0, 0, 0, 0, 53, 65, 0, 0, 53, 65, 0, 27, 0, 3, 0, 53, 65, 0, 27, - 0, 0, 53, 98, 0, 0, 0, 0, - 53, 98, 0, 0, 0, 0, 0, 0, - 0, 0, 53, 98, 0, 53, 222, 146, - 146, 80, 146, 11, 80, 80, 80, 0, - 53, 98, 0, 0, 13, 0, 0, 13, + 0, 0, 53, 101, 0, 0, 0, 0, + 53, 101, 0, 0, 0, 0, 0, 0, + 0, 0, 53, 101, 0, 53, 247, 149, + 149, 80, 149, 11, 80, 80, 80, 0, + 53, 101, 0, 0, 13, 0, 0, 13, 13, 13, 0, 53, 65, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 216, 89, + 0, 13, 13, 13, 0, 53, 241, 89, 89, 13, 89, 0, 13, 13, 13, 0, 53, 65, 0, 27, 0, 3, 0, 53, 65, 0, 0, 53, 65, 9, 77, 9, @@ -3996,9 +4039,9 @@ static const unsigned char _group_lines_test_trans_actions_wi[] = { 53, 65, 0, 0, 53, 65, 0, 31, 31, 31, 31, 0, 53, 65, 0, 0, 0, 53, 65, 0, 0, 0, 0, 53, - 150, 29, 29, 29, 3, 0, 53, 59, + 153, 29, 29, 29, 3, 0, 53, 59, 0, 0, 0, 0, 0, 53, 59, 0, - 53, 150, 29, 29, 29, 3, 0, 53, + 53, 153, 29, 29, 29, 3, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, @@ -4006,126 +4049,140 @@ static const unsigned char _group_lines_test_trans_actions_wi[] = { 65, 0, 0, 53, 65, 0, 0, 0, 53, 65, 0, 0, 0, 0, 53, 65, 0, 0, 3, 0, 53, 65, 0, 0, - 0, 0, 53, 102, 0, 0, 0, 7, - 0, 53, 102, 0, 0, 0, 0, 53, - 102, 0, 53, 102, 0, 0, 0, 7, + 0, 0, 53, 105, 0, 0, 0, 7, + 0, 53, 105, 0, 0, 0, 0, 53, + 105, 0, 53, 105, 0, 0, 0, 7, 0, 53, 65, 0, 0, 3, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, - 65, 0, 0, 53, 182, 43, 43, 43, - 43, 0, 53, 134, 0, 0, 0, 0, - 0, 53, 134, 0, 53, 65, 0, 0, + 65, 0, 0, 53, 195, 43, 43, 43, + 43, 0, 53, 137, 0, 0, 0, 0, + 0, 53, 137, 0, 53, 65, 0, 0, 0, 0, 0, 0, 0, 0, 53, 65, 0, 0, 0, 0, 0, 0, 0, 53, 65, 83, 83, 80, 83, 11, 80, 80, 80, 0, 53, 65, 0, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 134, 0, + 0, 13, 13, 13, 0, 53, 137, 0, 0, 0, 0, 53, 65, 0, 13, 0, 0, 13, 13, 13, 0, 53, 65, 15, 15, 13, 15, 0, 13, 13, 13, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 0, 0, 53, 65, - 0, 0, 0, 0, 0, 0, 0, 53, - 65, 83, 83, 80, 83, 11, 80, 80, - 80, 0, 53, 65, 0, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 122, 0, - 0, 0, 0, 53, 122, 0, 53, 65, + 53, 65, 37, 37, 37, 0, 53, 65, + 0, 0, 0, 0, 53, 65, 0, 0, + 0, 0, 0, 0, 0, 53, 65, 83, + 83, 80, 83, 11, 80, 80, 80, 0, + 53, 65, 0, 0, 13, 0, 0, 13, + 13, 13, 0, 53, 125, 0, 0, 0, + 0, 53, 125, 0, 0, 0, 0, 0, + 0, 0, 0, 53, 125, 0, 53, 223, + 86, 86, 80, 86, 11, 80, 80, 80, + 0, 53, 125, 0, 0, 13, 0, 0, + 13, 13, 13, 0, 53, 65, 0, 13, + 0, 0, 13, 13, 13, 0, 53, 180, + 17, 17, 13, 17, 0, 13, 13, 13, + 0, 53, 65, 0, 13, 0, 0, 13, + 13, 13, 0, 53, 65, 15, 15, 13, + 15, 0, 13, 13, 13, 0, 53, 65, + 0, 0, 53, 65, 0, 0, 53, 65, + 0, 0, 53, 65, 0, 0, 0, 53, + 65, 0, 0, 0, 0, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 0, + 53, 65, 0, 0, 0, 0, 0, 0, + 0, 53, 65, 83, 83, 80, 83, 11, + 80, 80, 80, 0, 53, 65, 0, 0, + 13, 0, 0, 13, 13, 13, 0, 53, + 65, 0, 13, 0, 0, 13, 13, 13, + 0, 53, 65, 15, 15, 13, 15, 0, + 13, 13, 13, 0, 53, 65, 0, 0, + 0, 0, 0, 0, 0, 53, 205, 86, + 86, 80, 86, 11, 80, 80, 80, 0, + 53, 109, 0, 0, 13, 0, 0, 13, + 13, 13, 0, 53, 109, 0, 53, 65, 0, 13, 0, 0, 13, 13, 13, 0, - 53, 65, 15, 15, 13, 15, 0, 13, + 53, 165, 17, 17, 13, 17, 0, 13, 13, 13, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, 65, 0, 0, 53, - 65, 0, 0, 0, 53, 65, 0, 0, - 0, 0, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 0, 53, 65, 0, - 0, 0, 0, 0, 0, 0, 53, 65, - 83, 83, 80, 83, 11, 80, 80, 80, - 0, 53, 65, 0, 0, 13, 0, 0, - 13, 13, 13, 0, 53, 65, 0, 13, - 0, 0, 13, 13, 13, 0, 53, 65, - 15, 15, 13, 15, 0, 13, 13, 13, - 0, 53, 65, 0, 0, 0, 0, 0, - 0, 0, 53, 192, 86, 86, 80, 86, - 11, 80, 80, 80, 0, 53, 106, 0, + 65, 0, 0, 53, 65, 0, 0, 0, + 53, 65, 0, 0, 0, 0, 0, 0, + 0, 53, 65, 83, 83, 80, 83, 11, + 80, 80, 80, 0, 53, 65, 0, 0, + 13, 0, 0, 13, 13, 13, 0, 53, + 65, 0, 13, 0, 0, 13, 13, 13, + 0, 53, 65, 15, 15, 13, 15, 0, + 13, 13, 13, 0, 53, 65, 0, 0, + 0, 0, 0, 0, 0, 53, 217, 86, + 86, 80, 86, 11, 80, 80, 80, 0, + 53, 117, 0, 0, 13, 0, 0, 13, + 13, 13, 0, 53, 117, 0, 53, 65, 0, 13, 0, 0, 13, 13, 13, 0, - 53, 106, 0, 53, 65, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 162, 17, - 17, 13, 17, 0, 13, 13, 13, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 0, 53, 65, 0, - 0, 0, 0, 0, 0, 0, 53, 65, - 83, 83, 80, 83, 11, 80, 80, 80, - 0, 53, 65, 0, 0, 13, 0, 0, - 13, 13, 13, 0, 53, 65, 0, 13, - 0, 0, 13, 13, 13, 0, 53, 65, - 15, 15, 13, 15, 0, 13, 13, 13, - 0, 53, 65, 0, 0, 0, 0, 0, - 0, 0, 53, 204, 86, 86, 80, 86, - 11, 80, 80, 80, 0, 53, 114, 0, + 53, 175, 17, 17, 13, 17, 0, 13, + 13, 13, 0, 53, 65, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 0, + 53, 65, 0, 0, 0, 0, 0, 0, + 0, 53, 65, 83, 83, 80, 83, 11, + 80, 80, 80, 0, 53, 65, 0, 0, + 13, 0, 0, 13, 13, 13, 0, 53, + 65, 0, 13, 0, 0, 13, 13, 13, + 0, 53, 65, 15, 15, 13, 15, 0, + 13, 13, 13, 0, 53, 65, 0, 0, + 0, 0, 0, 0, 0, 53, 235, 86, + 86, 80, 86, 11, 80, 80, 80, 0, + 53, 145, 0, 0, 13, 0, 0, 13, + 13, 13, 0, 53, 145, 0, 53, 65, 0, 13, 0, 0, 13, 13, 13, 0, - 53, 114, 0, 53, 65, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 172, 17, - 17, 13, 17, 0, 13, 13, 13, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 0, 53, 65, 0, - 0, 0, 0, 0, 0, 0, 53, 65, - 83, 83, 80, 83, 11, 80, 80, 80, - 0, 53, 65, 0, 0, 13, 0, 0, - 13, 13, 13, 0, 53, 65, 0, 13, + 53, 190, 17, 17, 13, 17, 0, 13, + 13, 13, 0, 53, 65, 0, 0, 53, + 65, 0, 0, 53, 65, 0, 0, 0, + 53, 65, 0, 0, 0, 0, 53, 65, + 0, 0, 0, 0, 0, 0, 0, 53, + 65, 83, 83, 80, 83, 11, 80, 80, + 80, 0, 53, 65, 0, 0, 13, 0, + 0, 13, 13, 13, 0, 53, 113, 0, + 0, 0, 0, 53, 113, 0, 0, 0, + 0, 0, 0, 0, 0, 53, 113, 0, + 53, 211, 86, 86, 80, 86, 11, 80, + 80, 80, 0, 53, 113, 0, 0, 13, 0, 0, 13, 13, 13, 0, 53, 65, - 15, 15, 13, 15, 0, 13, 13, 13, - 0, 53, 65, 0, 0, 0, 0, 0, - 0, 0, 53, 210, 86, 86, 80, 86, - 11, 80, 80, 80, 0, 53, 142, 0, 0, 13, 0, 0, 13, 13, 13, 0, - 53, 142, 0, 53, 65, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 177, 17, - 17, 13, 17, 0, 13, 13, 13, 0, - 53, 65, 0, 0, 53, 65, 0, 0, - 53, 65, 0, 0, 0, 53, 65, 0, - 0, 0, 0, 53, 65, 0, 0, 0, - 0, 0, 0, 0, 53, 65, 83, 83, - 80, 83, 11, 80, 80, 80, 0, 53, - 65, 0, 0, 13, 0, 0, 13, 13, - 13, 0, 53, 110, 0, 0, 0, 0, - 53, 110, 0, 0, 0, 0, 0, 0, - 0, 0, 53, 110, 0, 53, 198, 86, - 86, 80, 86, 11, 80, 80, 80, 0, - 53, 110, 0, 0, 13, 0, 0, 13, + 53, 170, 17, 17, 13, 17, 0, 13, 13, 13, 0, 53, 65, 0, 13, 0, - 0, 13, 13, 13, 0, 53, 167, 17, - 17, 13, 17, 0, 13, 13, 13, 0, - 53, 65, 0, 13, 0, 0, 13, 13, - 13, 0, 53, 65, 15, 15, 13, 15, - 0, 13, 13, 13, 0, 0, 62, 0, - 57, 68, 0, 57, 158, 0, 41, 39, + 0, 13, 13, 13, 0, 53, 65, 15, + 15, 13, 15, 0, 13, 13, 13, 0, + 0, 62, 0, 57, 68, 0, 57, 161, + 0, 41, 39, 0, 0, 57, 68, 0, + 0, 57, 68, 0, 0, 57, 68, 0, + 0, 57, 68, 0, 0, 57, 68, 0, + 0, 57, 200, 43, 43, 43, 43, 0, + 57, 141, 0, 0, 0, 0, 0, 57, + 141, 0, 57, 68, 0, 0, 0, 0, + 0, 0, 0, 0, 57, 68, 0, 0, + 0, 0, 0, 0, 0, 57, 68, 83, + 83, 80, 83, 11, 80, 80, 80, 0, + 57, 68, 0, 0, 13, 0, 0, 13, + 13, 13, 0, 57, 141, 0, 0, 0, + 0, 57, 68, 0, 13, 0, 0, 13, + 13, 13, 0, 57, 68, 15, 15, 13, + 15, 0, 13, 13, 13, 0, 57, 68, 0, 0, 57, 68, 0, 0, 57, 68, 0, 0, 57, 68, 0, 0, 57, 68, - 0, 0, 57, 68, 0, 0, 57, 187, - 43, 43, 43, 43, 0, 57, 138, 0, - 0, 0, 0, 0, 57, 138, 0, 57, - 68, 0, 0, 0, 0, 0, 0, 0, - 0, 57, 68, 0, 0, 0, 0, 0, - 0, 0, 57, 68, 83, 83, 80, 83, - 11, 80, 80, 80, 0, 57, 68, 0, - 0, 13, 0, 0, 13, 13, 13, 0, - 57, 138, 0, 0, 0, 0, 57, 68, - 0, 13, 0, 0, 13, 13, 13, 0, - 57, 68, 15, 15, 13, 15, 0, 13, - 13, 13, 0, 57, 68, 0, 0, 57, - 68, 0, 0, 57, 68, 0, 0, 57, - 68, 0, 0, 57, 68, 37, 37, 37, - 0, 57, 68, 0, 0, 0, 0, 57, - 68, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 57, 68, 83, 83, 80, 83, - 11, 80, 80, 80, 0, 57, 68, 0, - 0, 13, 0, 0, 13, 13, 13, 0, - 57, 126, 0, 0, 0, 0, 57, 126, + 92, 92, 92, 0, 57, 68, 0, 0, + 0, 0, 57, 68, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 57, 68, 83, + 83, 80, 83, 11, 80, 80, 80, 0, + 57, 68, 0, 0, 13, 0, 0, 13, + 13, 13, 0, 57, 129, 0, 0, 0, + 0, 57, 129, 0, 0, 0, 0, 0, + 0, 0, 0, 57, 129, 0, 57, 229, + 86, 86, 80, 86, 11, 80, 80, 80, + 0, 57, 129, 0, 0, 13, 0, 0, + 13, 13, 13, 0, 57, 68, 0, 13, + 0, 0, 13, 13, 13, 0, 57, 185, + 17, 17, 13, 17, 0, 13, 13, 13, 0, 57, 68, 0, 13, 0, 0, 13, 13, 13, 0, 57, 68, 15, 15, 13, 15, 0, 13, 13, 13, 0, 57, 68, @@ -4143,29 +4200,30 @@ static const unsigned char _group_lines_test_trans_actions_wi[] = { 15, 0, 13, 13, 13, 0, 57, 68, 15, 15, 13, 15, 0, 13, 13, 13, 0, 57, 68, 0, 0, 13, 0, 0, - 13, 13, 13, 0, 57, 130, 0, 0, - 0, 0, 57, 130, 0, 57, 68, 83, - 83, 80, 80, 83, 11, 80, 80, 80, - 0, 57, 68, 15, 15, 13, 13, 15, - 0, 13, 13, 13, 0, 57, 68, 15, - 15, 13, 13, 15, 0, 13, 13, 13, - 0, 57, 68, 15, 15, 13, 15, 0, - 13, 13, 13, 0, 57, 68, 0, 0, - 13, 13, 0, 0, 13, 13, 13, 0, - 57, 68, 15, 15, 13, 13, 15, 0, - 13, 13, 13, 0, 57, 68, 15, 15, - 13, 13, 15, 0, 13, 13, 13, 0, - 57, 68, 15, 15, 13, 13, 15, 0, - 13, 13, 13, 0, 57, 68, 15, 15, + 13, 13, 13, 0, 57, 133, 0, 0, + 0, 0, 57, 133, 0, 0, 0, 0, + 0, 0, 0, 0, 57, 133, 0, 57, + 68, 83, 83, 80, 80, 83, 11, 80, + 80, 80, 0, 57, 68, 15, 15, 13, 13, 15, 0, 13, 13, 13, 0, 57, - 68, 0, 0, 13, 0, 0, 13, 13, - 13, 0, 57, 118, 0, 0, 0, 0, - 57, 118, 0, 45, 0, 0, 154, 0, - 0, 0, 0, 41, 0, 92, 33, 0, - 0, 51, 154, 0, 0, 0, 41, 0, - 92, 33, 0, 0, 0, 158, 0, 41, - 39, 0, 0, 55, 158, 0, 41, 39, - 0, 0, 0 + 68, 15, 15, 13, 13, 15, 0, 13, + 13, 13, 0, 57, 68, 15, 15, 13, + 15, 0, 13, 13, 13, 0, 57, 68, + 0, 0, 13, 13, 0, 0, 13, 13, + 13, 0, 57, 68, 15, 15, 13, 13, + 15, 0, 13, 13, 13, 0, 57, 68, + 15, 15, 13, 13, 15, 0, 13, 13, + 13, 0, 57, 68, 15, 15, 13, 13, + 15, 0, 13, 13, 13, 0, 57, 68, + 15, 15, 13, 15, 0, 13, 13, 13, + 0, 57, 68, 0, 0, 13, 0, 0, + 13, 13, 13, 0, 57, 121, 0, 0, + 0, 0, 57, 121, 0, 45, 0, 0, + 157, 0, 0, 0, 0, 41, 0, 95, + 33, 0, 0, 51, 157, 0, 0, 0, + 41, 0, 95, 33, 0, 0, 0, 161, + 0, 41, 39, 0, 0, 55, 161, 0, + 41, 39, 0, 0, 0 }; static const unsigned char _group_lines_test_to_state_actions[] = { @@ -4189,7 +4247,8 @@ static const unsigned char _group_lines_test_to_state_actions[] = { 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, 35, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 35, + 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, @@ -4197,8 +4256,8 @@ static const unsigned char _group_lines_test_to_state_actions[] = { 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, 47, 47, - 95, 0, 95, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 47, 47, 98, 0, 98, 0 }; static const unsigned char _group_lines_test_from_state_actions[] = { @@ -4231,7 +4290,8 @@ static const unsigned char _group_lines_test_from_state_actions[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 49, 0, 49, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 49, 0, 49, 0 }; static const unsigned char _group_lines_test_eof_actions[] = { @@ -4263,8 +4323,9 @@ static const unsigned char _group_lines_test_eof_actions[] = { 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, 45, 0, - 0, 0, 0, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 45, 0, 0, 0, 0, 0 }; static const short _group_lines_test_eof_trans[] = { @@ -4289,28 +4350,29 @@ static const short _group_lines_test_eof_trans[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 0, - 283, 283, 283, 283, 283, 283, 283, 283, - 283, 283, 283, 283, 283, 283, 283, 283, - 283, 283, 283, 283, 283, 283, 283, 283, - 283, 283, 283, 283, 283, 283, 283, 283, - 283, 283, 283, 283, 283, 283, 283, 283, - 283, 283, 283, 283, 283, 283, 283, 283, - 283, 283, 283, 283, 283, 283, 0, 0, - 0, 369, 0, 370 -}; - -static const int group_lines_test_start = 230; -static const int group_lines_test_first_final = 230; + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 0, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 0, 0, 0, 399, 0, 400 +}; + +static const int group_lines_test_start = 242; +static const int group_lines_test_first_final = 242; static const int group_lines_test_error = 0; -static const int group_lines_test_en_group_scanner = 232; -static const int group_lines_test_en_mini_group_scanner = 234; -static const int group_lines_test_en_main = 230; +static const int group_lines_test_en_group_scanner = 244; +static const int group_lines_test_en_mini_group_scanner = 246; +static const int group_lines_test_en_main = 242; #line 773 "NanorexMMPImportExportRagelTest.rl" -#line 4314 "NanorexMMPImportExportRagelTest.cpp" +#line 4376 "NanorexMMPImportExportRagelTest.cpp" { cs = group_lines_test_start; top = 0; @@ -4320,7 +4382,7 @@ static const int group_lines_test_en_main = 230; } #line 774 "NanorexMMPImportExportRagelTest.rl" -#line 4324 "NanorexMMPImportExportRagelTest.cpp" +#line 4386 "NanorexMMPImportExportRagelTest.cpp" { int _klen; unsigned int _trans; @@ -4337,11 +4399,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 39: + case 40: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = p;} break; -#line 4345 "NanorexMMPImportExportRagelTest.cpp" +#line 4407 "NanorexMMPImportExportRagelTest.cpp" } } @@ -4525,104 +4587,108 @@ _eof_trans: { newViewDataGroup(); } break; case 28: -#line 40 "NanorexMMPImportExportRagelTest.rl" - { newMolStructGroup(stringVal/*, stringVal2*/); } +#line 34 "NanorexMMPImportExportRagelTest.rl" + { stringVal2.clear(); } break; case 29: +#line 40 "NanorexMMPImportExportRagelTest.rl" + { newMolStructGroup(stringVal, stringVal2); } + break; + case 30: #line 51 "NanorexMMPImportExportRagelTest.rl" { lineStart = p; } break; - case 30: + case 31: #line 56 "NanorexMMPImportExportRagelTest.rl" { newClipboardGroup(); } break; - case 31: + case 32: #line 60 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 32: + case 33: #line 61 "NanorexMMPImportExportRagelTest.rl" { stringVal.clear(); } break; - case 33: + case 34: #line 67 "NanorexMMPImportExportRagelTest.rl" { endGroup(stringVal); } break; - case 34: + case 35: #line 71 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 35: + case 36: #line 81 "NanorexMMPImportExportRagelTest.rl" { newOpenGroupInfo(stringVal, stringVal2); } break; - case 36: + case 37: #line 757 "NanorexMMPImportExportRagelTest.rl" - { /*cerr << "scanner call: p = " << p << endl;*/ p--; {stack[top++] = cs; cs = 234; goto _again;} } + { /*cerr << "scanner call: p = " << p << endl;*/ p--; {stack[top++] = cs; cs = 246; goto _again;} } break; - case 40: + case 41: #line 1 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 41: + case 42: #line 102 "NanorexMMPImportExportRagelTest.rl" {act = 11;} break; - case 42: + case 43: #line 89 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 43: + case 44: #line 90 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 44: + case 45: #line 91 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{{cs = stack[--top]; goto _again;}}} break; - case 45: + case 46: #line 92 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 46: + case 47: #line 93 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 47: + case 48: #line 94 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 48: + case 49: #line 95 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 49: + case 50: #line 96 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 50: + case 51: #line 97 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 51: + case 52: #line 100 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 52: + case 53: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 53: + case 54: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p;p--;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 54: + case 55: #line 1 "NanorexMMPImportExportRagelTest.rl" { switch( act ) { case 0: @@ -4638,35 +4704,35 @@ _eof_trans: } } break; - case 55: + case 56: #line 754 "NanorexMMPImportExportRagelTest.rl" {act = 16;} break; - case 56: + case 57: #line 745 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 57: + case 58: #line 746 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{/*cerr << "view_data begin, p = '" << p << "' [" << strlen(p) << ']' << endl;*/}} break; - case 58: + case 59: #line 747 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{/*cerr << "clipboard begin, p = '" << p << "' [" << strlen(p) << ']' << endl;*/}} break; - case 59: + case 60: #line 748 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{/*cerr << "mol_struct begin, p = '" << p << "' [" << strlen(p) << ']' << endl;*/}} break; - case 60: + case 61: #line 754 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{/*cerr << "Ignored line, p = " << p << endl;*/}} break; - case 61: + case 62: #line 754 "NanorexMMPImportExportRagelTest.rl" {te = p;p--;{/*cerr << "Ignored line, p = " << p << endl;*/}} break; - case 62: + case 63: #line 1 "NanorexMMPImportExportRagelTest.rl" { switch( act ) { case 0: @@ -4679,7 +4745,7 @@ _eof_trans: } } break; -#line 4683 "NanorexMMPImportExportRagelTest.cpp" +#line 4749 "NanorexMMPImportExportRagelTest.cpp" } } @@ -4700,15 +4766,15 @@ _again: #line 11 "NanorexMMPImportExportRagelTest.rl" { stringVal2.clear(); /* 'style' string optional */ } break; - case 37: + case 38: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = 0;} break; - case 38: + case 39: #line 1 "NanorexMMPImportExportRagelTest.rl" {act = 0;} break; -#line 4712 "NanorexMMPImportExportRagelTest.cpp" +#line 4778 "NanorexMMPImportExportRagelTest.cpp" } } @@ -4727,11 +4793,11 @@ _again: unsigned int __nacts = (unsigned int) *__acts++; while ( __nacts-- > 0 ) { switch ( *__acts++ ) { - case 36: + case 37: #line 757 "NanorexMMPImportExportRagelTest.rl" - { /*cerr << "scanner call: p = " << p << endl;*/ p--; {stack[top++] = cs; cs = 234; goto _again;} } + { /*cerr << "scanner call: p = " << p << endl;*/ p--; {stack[top++] = cs; cs = 246; goto _again;} } break; -#line 4735 "NanorexMMPImportExportRagelTest.cpp" +#line 4801 "NanorexMMPImportExportRagelTest.cpp" } } } @@ -4750,6 +4816,7 @@ void NanorexMMPImportExportRagelTest::newViewDataGroup(void) groupNameStack.push_back(currentGroupName); } + #if 0 void NanorexMMPImportExportRagelTest::endViewDataGroup(void) { @@ -4759,15 +4826,19 @@ groupNameStack.pop_back(); } #endif + void -NanorexMMPImportExportRagelTest::newMolStructGroup(std::string const& name) +NanorexMMPImportExportRagelTest:: +newMolStructGroup(std::string const& name, + std::string const& classification) { ++groupCount; - CERR("group (" + name + ") "); + CERR("group (" + name + ") " + classification); currentGroupName = name; groupNameStack.push_back(currentGroupName); } + #if 0 void NanorexMMPImportExportRagelTest::endMolStructGroup(std::string const& name) { @@ -4780,6 +4851,7 @@ groupNameStack.pop_back(); } #endif + void NanorexMMPImportExportRagelTest::newClipboardGroup(void) { ++groupCount; @@ -4863,7 +4935,7 @@ void NanorexMMPImportExportRagelTest::uncheckedParseTest(void) } -#line 916 "NanorexMMPImportExportRagelTest.rl" +#line 922 "NanorexMMPImportExportRagelTest.rl" @@ -4876,70 +4948,74 @@ NanorexMMPImportExportRagelTest::uncheckedParseTestHelper(char const *const test char const *ts, *te; int cs, stack[128], top, act; - #line 929 "NanorexMMPImportExportRagelTest.rl" + #line 935 "NanorexMMPImportExportRagelTest.rl" -#line 4882 "NanorexMMPImportExportRagelTest.cpp" +#line 4954 "NanorexMMPImportExportRagelTest.cpp" static const char _unchecked_parse_test_actions[] = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 17, 1, 18, 1, 21, 1, 22, 1, - 26, 1, 30, 1, 32, 1, 33, 1, - 40, 1, 42, 1, 56, 1, 57, 2, - 0, 29, 2, 0, 52, 2, 0, 54, - 2, 0, 55, 2, 5, 12, 2, 5, - 13, 2, 5, 14, 2, 6, 7, 2, - 6, 8, 2, 6, 9, 2, 8, 15, - 2, 35, 24, 2, 40, 41, 3, 0, - 16, 50, 3, 0, 19, 53, 3, 0, - 20, 51, 3, 0, 23, 48, 3, 0, - 25, 49, 3, 0, 27, 37, 3, 0, - 28, 38, 3, 0, 28, 45, 3, 0, - 31, 39, 3, 0, 34, 47, 3, 0, - 36, 46, 3, 6, 8, 15, 3, 17, - 0, 52, 3, 43, 0, 44, 4, 9, - 0, 20, 51, 4, 9, 0, 23, 48, - 4, 9, 0, 25, 49, 4, 9, 0, - 36, 46, 4, 33, 0, 34, 47, 5, - 6, 9, 0, 20, 51, 5, 6, 9, - 0, 23, 48, 5, 6, 9, 0, 25, - 49, 5, 6, 9, 0, 36, 46, 5, - 8, 15, 0, 16, 50, 6, 6, 8, - 15, 0, 16, 50 + 26, 1, 28, 1, 31, 1, 33, 1, + 34, 1, 41, 1, 43, 1, 57, 1, + 58, 2, 0, 30, 2, 0, 53, 2, + 0, 55, 2, 0, 56, 2, 5, 12, + 2, 5, 13, 2, 5, 14, 2, 6, + 7, 2, 6, 8, 2, 6, 9, 2, + 8, 15, 2, 36, 24, 2, 41, 42, + 3, 0, 16, 51, 3, 0, 19, 54, + 3, 0, 20, 52, 3, 0, 23, 49, + 3, 0, 25, 50, 3, 0, 27, 38, + 3, 0, 29, 39, 3, 0, 29, 46, + 3, 0, 32, 40, 3, 0, 35, 48, + 3, 0, 37, 47, 3, 6, 8, 15, + 3, 17, 0, 53, 3, 44, 0, 45, + 4, 9, 0, 20, 52, 4, 9, 0, + 23, 49, 4, 9, 0, 25, 50, 4, + 9, 0, 29, 39, 4, 9, 0, 29, + 46, 4, 9, 0, 37, 47, 4, 34, + 0, 35, 48, 5, 6, 9, 0, 20, + 52, 5, 6, 9, 0, 23, 49, 5, + 6, 9, 0, 25, 50, 5, 6, 9, + 0, 29, 39, 5, 6, 9, 0, 29, + 46, 5, 6, 9, 0, 37, 47, 5, + 8, 15, 0, 16, 51, 6, 6, 8, + 15, 0, 16, 51 }; static const short _unchecked_parse_test_key_offsets[] = { 0, 0, 5, 6, 7, 8, 9, 14, 19, 24, 25, 26, 27, 31, 36, 37, 38, 39, 44, 46, 51, 52, 53, 54, - 55, 60, 71, 85, 99, 104, 109, 110, - 111, 112, 117, 122, 123, 124, 125, 126, - 131, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 149, 154, 156, 158, 160, 173, - 187, 189, 191, 202, 205, 208, 211, 216, - 223, 230, 236, 243, 251, 257, 262, 268, - 277, 281, 289, 295, 304, 308, 316, 322, - 331, 335, 343, 349, 355, 368, 370, 385, - 400, 414, 429, 437, 441, 449, 457, 465, - 469, 477, 485, 493, 497, 505, 513, 521, - 528, 531, 534, 537, 545, 550, 557, 565, - 573, 575, 583, 586, 589, 592, 595, 598, - 601, 604, 607, 610, 615, 622, 629, 636, - 644, 650, 652, 660, 667, 670, 673, 676, - 679, 682, 689, 696, 698, 711, 723, 738, - 753, 759, 773, 788, 791, 794, 797, 800, - 806, 818, 833, 848, 854, 856, 870, 885, - 888, 891, 894, 899, 907, 910, 913, 916, - 921, 933, 948, 963, 977, 992, 1004, 1019, - 1034, 1036, 1050, 1065, 1068, 1071, 1074, 1077, - 1082, 1094, 1109, 1124, 1138, 1153, 1165, 1180, - 1195, 1197, 1211, 1226, 1229, 1232, 1235, 1238, - 1241, 1244, 1247, 1250, 1255, 1267, 1282, 1297, - 1311, 1326, 1338, 1353, 1368, 1370, 1384, 1399, - 1402, 1405, 1410, 1416, 1428, 1443, 1458, 1464, - 1477, 1479, 1494, 1509, 1523, 1538, 1552, 1567, - 1569, 1569, 1581 + 55, 60, 65, 76, 90, 104, 109, 121, + 126, 127, 128, 129, 134, 139, 140, 141, + 142, 143, 148, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 166, 171, 173, 175, + 177, 191, 205, 218, 232, 245, 259, 261, + 263, 274, 277, 280, 283, 288, 295, 302, + 308, 315, 323, 329, 334, 340, 349, 353, + 361, 367, 376, 380, 388, 394, 403, 407, + 415, 421, 427, 440, 442, 457, 472, 486, + 501, 509, 513, 521, 529, 537, 541, 549, + 557, 565, 569, 577, 585, 593, 600, 603, + 606, 609, 617, 622, 629, 637, 645, 647, + 655, 658, 661, 664, 667, 670, 673, 676, + 679, 682, 687, 694, 701, 708, 716, 722, + 724, 732, 739, 742, 745, 748, 751, 754, + 761, 768, 770, 783, 795, 810, 825, 831, + 845, 860, 863, 866, 869, 872, 878, 884, + 896, 911, 926, 932, 945, 947, 962, 977, + 991, 1006, 1020, 1035, 1038, 1041, 1044, 1049, + 1057, 1060, 1063, 1066, 1071, 1083, 1098, 1113, + 1127, 1142, 1154, 1169, 1184, 1186, 1200, 1215, + 1218, 1221, 1224, 1227, 1232, 1244, 1259, 1274, + 1288, 1303, 1315, 1330, 1345, 1347, 1361, 1376, + 1379, 1382, 1385, 1388, 1391, 1394, 1397, 1400, + 1405, 1417, 1432, 1447, 1461, 1476, 1488, 1503, + 1518, 1520, 1534, 1549, 1552, 1555, 1560, 1566, + 1578, 1593, 1608, 1614, 1627, 1629, 1644, 1659, + 1673, 1688, 1702, 1717, 1719, 1719, 1731 }; static const char _unchecked_parse_test_trans_keys[] = { @@ -4950,19 +5026,28 @@ static const char _unchecked_parse_test_trans_keys[] = { 32, 68, 11, 13, 97, 116, 97, 9, 32, 41, 11, 13, 10, 35, 10, 32, 103, 9, 13, 114, 111, 117, 112, 9, - 32, 40, 11, 13, 9, 32, 95, 11, - 13, 48, 57, 65, 90, 97, 122, 9, - 32, 41, 95, 11, 13, 45, 46, 48, - 57, 65, 90, 97, 122, 9, 32, 41, - 95, 11, 13, 45, 46, 48, 57, 65, - 90, 97, 122, 10, 32, 35, 9, 13, - 10, 32, 101, 9, 13, 110, 100, 49, - 10, 32, 35, 9, 13, 10, 32, 103, - 9, 13, 114, 111, 117, 112, 9, 32, - 40, 11, 13, 9, 32, 67, 11, 13, - 108, 105, 112, 98, 111, 97, 114, 100, - 9, 32, 41, 11, 13, 10, 32, 35, - 9, 13, -1, 10, -1, 10, -1, 10, + 32, 40, 11, 13, 9, 32, 40, 11, + 13, 9, 32, 95, 11, 13, 48, 57, + 65, 90, 97, 122, 9, 32, 41, 95, + 11, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 9, 32, 41, 95, 11, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 10, 32, 35, 9, 13, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, 10, 32, 101, 9, 13, 110, 100, + 49, 10, 32, 35, 9, 13, 10, 32, + 103, 9, 13, 114, 111, 117, 112, 9, + 32, 40, 11, 13, 9, 32, 67, 11, + 13, 108, 105, 112, 98, 111, 97, 114, + 100, 9, 32, 41, 11, 13, 10, 32, + 35, 9, 13, -1, 10, -1, 10, -1, + 10, 10, 32, 35, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, 10, + 32, 35, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, 9, 32, 95, + 11, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, 9, 32, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, 9, 32, 41, 95, 11, 13, 45, 46, 48, 57, 65, @@ -5044,62 +5129,30 @@ static const char _unchecked_parse_test_trans_keys[] = { 65, 90, 97, 122, -1, 10, 114, -1, 10, 111, -1, 10, 117, -1, 10, 112, -1, 10, 32, 40, 9, 13, -1, 10, - 32, 95, 9, 13, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 41, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 41, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 35, 9, 13, -1, 10, - -1, 10, 32, 95, 9, 13, 45, 46, + 32, 40, 9, 13, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 41, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 41, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 110, - -1, 10, 102, -1, 10, 111, -1, 10, - 32, 9, 13, -1, 10, 32, 97, 99, - 111, 9, 13, -1, 10, 116, -1, 10, - 111, -1, 10, 109, -1, 10, 32, 9, - 13, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 61, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 61, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, -1, 10, 32, 95, + 32, 35, 9, 13, -1, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 104, -1, 10, 117, -1, - 10, 110, -1, 10, 107, -1, 10, 32, - 9, 13, -1, 10, 32, 95, 9, 13, + 122, -1, 10, 32, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 61, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 61, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 35, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, -1, 10, 32, + 32, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 112, -1, 10, 101, - -1, 10, 110, -1, 10, 103, -1, 10, - 114, -1, 10, 111, -1, 10, 117, -1, - 10, 112, -1, 10, 32, 9, 13, -1, + 90, 97, 122, -1, 10, 110, -1, 10, + 102, -1, 10, 111, -1, 10, 32, 9, + 13, -1, 10, 32, 97, 99, 111, 9, + 13, -1, 10, 116, -1, 10, 111, -1, + 10, 109, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, @@ -5118,130 +5171,174 @@ static const char _unchecked_parse_test_trans_keys[] = { 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 111, -1, 10, 108, -1, 10, 32, - 9, 13, -1, 10, 32, 40, 9, 13, + 10, 104, -1, 10, 117, -1, 10, 110, + -1, 10, 107, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, + 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, + 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 35, 9, 13, - -1, 10, 32, 35, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, -1, + 97, 122, -1, 10, 32, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 35, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 112, -1, 10, 101, -1, 10, + 110, -1, 10, 103, -1, 10, 114, -1, + 10, 111, -1, 10, 117, -1, 10, 112, + -1, 10, 32, 9, 13, -1, 10, 32, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 61, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 61, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, + 57, 65, 90, 97, 122, -1, 10, 111, + -1, 10, 108, -1, 10, 32, 9, 13, + -1, 10, 32, 40, 9, 13, -1, 10, + 32, 95, 9, 13, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 41, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 9, 13, -1, 10, + 32, 35, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, -1, 10, 32, + 35, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 95, 9, 13, + 90, 97, 122, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 41, 95, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, -1, 10, 32, 35, 97, 98, 101, - 103, 105, 109, 9, 13, -1, 10, 32, - 97, 98, 101, 103, 105, 109, 9, 13, - 0 + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, + 32, 41, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, -1, + 10, 32, 35, 97, 98, 101, 103, 105, + 109, 9, 13, -1, 10, 32, 97, 98, + 101, 103, 105, 109, 9, 13, 0 }; static const char _unchecked_parse_test_single_lengths[] = { 0, 3, 1, 1, 1, 1, 3, 3, 3, 1, 1, 1, 2, 3, 1, 1, 1, 3, 2, 3, 1, 1, 1, 1, - 3, 3, 4, 4, 3, 3, 1, 1, - 1, 3, 3, 1, 1, 1, 1, 3, - 3, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 3, 2, 2, 2, 3, 4, - 2, 2, 9, 3, 3, 3, 3, 3, - 3, 4, 3, 4, 4, 3, 4, 5, - 2, 4, 4, 5, 2, 4, 4, 5, - 2, 4, 4, 4, 5, 2, 5, 5, - 4, 5, 4, 2, 4, 4, 4, 2, - 4, 4, 4, 2, 4, 4, 4, 3, - 3, 3, 3, 6, 3, 3, 4, 4, - 2, 4, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 4, - 4, 2, 4, 3, 3, 3, 3, 3, - 3, 5, 5, 2, 5, 4, 5, 5, - 4, 4, 5, 3, 3, 3, 3, 4, - 4, 5, 5, 4, 2, 4, 5, 3, - 3, 3, 3, 6, 3, 3, 3, 3, - 4, 5, 5, 4, 5, 4, 5, 5, - 2, 4, 5, 3, 3, 3, 3, 3, - 4, 5, 5, 4, 5, 4, 5, 5, - 2, 4, 5, 3, 3, 3, 3, 3, + 3, 3, 3, 4, 4, 3, 4, 3, + 1, 1, 1, 3, 3, 1, 1, 1, + 1, 3, 3, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 3, 2, 2, 2, + 4, 4, 3, 4, 3, 4, 2, 2, + 9, 3, 3, 3, 3, 3, 3, 4, + 3, 4, 4, 3, 4, 5, 2, 4, + 4, 5, 2, 4, 4, 5, 2, 4, + 4, 4, 5, 2, 5, 5, 4, 5, + 4, 2, 4, 4, 4, 2, 4, 4, + 4, 2, 4, 4, 4, 3, 3, 3, + 3, 6, 3, 3, 4, 4, 2, 4, + 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 4, 4, 2, + 4, 3, 3, 3, 3, 3, 3, 5, + 5, 2, 5, 4, 5, 5, 4, 4, + 5, 3, 3, 3, 3, 4, 4, 4, + 5, 5, 4, 5, 2, 5, 5, 4, + 5, 4, 5, 3, 3, 3, 3, 6, + 3, 3, 3, 3, 4, 5, 5, 4, + 5, 4, 5, 5, 2, 4, 5, 3, 3, 3, 3, 3, 4, 5, 5, 4, 5, 4, 5, 5, 2, 4, 5, 3, - 3, 3, 4, 4, 5, 5, 4, 5, - 2, 5, 5, 4, 5, 4, 5, 2, - 0, 10, 9 + 3, 3, 3, 3, 3, 3, 3, 3, + 4, 5, 5, 4, 5, 4, 5, 5, + 2, 4, 5, 3, 3, 3, 4, 4, + 5, 5, 4, 5, 2, 5, 5, 4, + 5, 4, 5, 2, 0, 10, 9 }; static const char _unchecked_parse_test_range_lengths[] = { 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, - 1, 4, 5, 5, 1, 1, 0, 0, - 0, 1, 1, 0, 0, 0, 0, 1, - 1, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 0, 0, 0, 5, 5, - 0, 0, 1, 0, 0, 0, 1, 2, - 2, 1, 2, 2, 1, 1, 1, 2, + 1, 1, 4, 5, 5, 1, 4, 1, + 0, 0, 0, 1, 1, 0, 0, 0, + 0, 1, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 1, 0, 0, 0, + 5, 5, 5, 5, 5, 5, 0, 0, + 1, 0, 0, 0, 1, 2, 2, 1, + 2, 2, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, - 1, 2, 1, 1, 4, 0, 5, 5, - 5, 5, 2, 1, 2, 2, 2, 1, - 2, 2, 2, 1, 2, 2, 2, 2, - 0, 0, 0, 1, 1, 2, 2, 2, - 0, 2, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 2, 2, 2, 2, - 1, 0, 2, 2, 0, 0, 0, 0, - 0, 1, 1, 0, 4, 4, 5, 5, - 1, 5, 5, 0, 0, 0, 0, 1, - 4, 5, 5, 1, 0, 5, 5, 0, - 0, 0, 1, 1, 0, 0, 0, 1, - 4, 5, 5, 5, 5, 4, 5, 5, - 0, 5, 5, 0, 0, 0, 0, 1, - 4, 5, 5, 5, 5, 4, 5, 5, - 0, 5, 5, 0, 0, 0, 0, 0, + 1, 1, 4, 0, 5, 5, 5, 5, + 2, 1, 2, 2, 2, 1, 2, 2, + 2, 1, 2, 2, 2, 2, 0, 0, + 0, 1, 1, 2, 2, 2, 0, 2, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 2, 2, 2, 2, 1, 0, + 2, 2, 0, 0, 0, 0, 0, 1, + 1, 0, 4, 4, 5, 5, 1, 5, + 5, 0, 0, 0, 0, 1, 1, 4, + 5, 5, 1, 4, 0, 5, 5, 5, + 5, 5, 5, 0, 0, 0, 1, 1, + 0, 0, 0, 1, 4, 5, 5, 5, + 5, 4, 5, 5, 0, 5, 5, 0, 0, 0, 0, 1, 4, 5, 5, 5, 5, 4, 5, 5, 0, 5, 5, 0, - 0, 1, 1, 4, 5, 5, 1, 4, - 0, 5, 5, 5, 5, 5, 5, 0, - 0, 1, 1 + 0, 0, 0, 0, 0, 0, 0, 1, + 4, 5, 5, 5, 5, 4, 5, 5, + 0, 5, 5, 0, 0, 1, 1, 4, + 5, 5, 1, 4, 0, 5, 5, 5, + 5, 5, 5, 0, 0, 1, 1 }; static const short _unchecked_parse_test_index_offsets[] = { 0, 0, 5, 7, 9, 11, 13, 18, 23, 28, 30, 32, 34, 38, 43, 45, 47, 49, 54, 57, 62, 64, 66, 68, - 70, 75, 83, 93, 103, 108, 113, 115, - 117, 119, 124, 129, 131, 133, 135, 137, - 142, 147, 149, 151, 153, 155, 157, 159, - 161, 163, 168, 173, 176, 179, 182, 191, - 201, 204, 207, 218, 222, 226, 230, 235, - 241, 247, 253, 259, 266, 272, 277, 283, - 291, 295, 302, 308, 316, 320, 327, 333, - 341, 345, 352, 358, 364, 374, 377, 388, - 399, 409, 420, 427, 431, 438, 445, 452, - 456, 463, 470, 477, 481, 488, 495, 502, - 508, 512, 516, 520, 528, 533, 539, 546, - 553, 556, 563, 567, 571, 575, 579, 583, - 587, 591, 595, 599, 604, 610, 616, 622, - 629, 635, 638, 645, 651, 655, 659, 663, - 667, 671, 678, 685, 688, 698, 707, 718, - 729, 735, 745, 756, 760, 764, 768, 772, - 778, 787, 798, 809, 815, 818, 828, 839, - 843, 847, 851, 856, 864, 868, 872, 876, - 881, 890, 901, 912, 922, 933, 942, 953, - 964, 967, 977, 988, 992, 996, 1000, 1004, - 1009, 1018, 1029, 1040, 1050, 1061, 1070, 1081, - 1092, 1095, 1105, 1116, 1120, 1124, 1128, 1132, - 1136, 1140, 1144, 1148, 1153, 1162, 1173, 1184, - 1194, 1205, 1214, 1225, 1236, 1239, 1249, 1260, - 1264, 1268, 1273, 1279, 1288, 1299, 1310, 1316, - 1326, 1329, 1340, 1351, 1361, 1372, 1382, 1393, - 1396, 1397, 1409 + 70, 75, 80, 88, 98, 108, 113, 122, + 127, 129, 131, 133, 138, 143, 145, 147, + 149, 151, 156, 161, 163, 165, 167, 169, + 171, 173, 175, 177, 182, 187, 190, 193, + 196, 206, 216, 225, 235, 244, 254, 257, + 260, 271, 275, 279, 283, 288, 294, 300, + 306, 312, 319, 325, 330, 336, 344, 348, + 355, 361, 369, 373, 380, 386, 394, 398, + 405, 411, 417, 427, 430, 441, 452, 462, + 473, 480, 484, 491, 498, 505, 509, 516, + 523, 530, 534, 541, 548, 555, 561, 565, + 569, 573, 581, 586, 592, 599, 606, 609, + 616, 620, 624, 628, 632, 636, 640, 644, + 648, 652, 657, 663, 669, 675, 682, 688, + 691, 698, 704, 708, 712, 716, 720, 724, + 731, 738, 741, 751, 760, 771, 782, 788, + 798, 809, 813, 817, 821, 825, 831, 837, + 846, 857, 868, 874, 884, 887, 898, 909, + 919, 930, 940, 951, 955, 959, 963, 968, + 976, 980, 984, 988, 993, 1002, 1013, 1024, + 1034, 1045, 1054, 1065, 1076, 1079, 1089, 1100, + 1104, 1108, 1112, 1116, 1121, 1130, 1141, 1152, + 1162, 1173, 1182, 1193, 1204, 1207, 1217, 1228, + 1232, 1236, 1240, 1244, 1248, 1252, 1256, 1260, + 1265, 1274, 1285, 1296, 1306, 1317, 1326, 1337, + 1348, 1351, 1361, 1372, 1376, 1380, 1385, 1391, + 1400, 1411, 1422, 1428, 1438, 1441, 1452, 1463, + 1473, 1484, 1494, 1505, 1508, 1509, 1521 }; static const unsigned char _unchecked_parse_test_trans_targs_wi[] = { @@ -5251,178 +5348,192 @@ static const unsigned char _unchecked_parse_test_trans_targs_wi[] = { 8, 9, 8, 0, 10, 0, 11, 0, 12, 0, 13, 13, 13, 0, 13, 13, 14, 13, 0, 15, 0, 16, 0, 17, - 0, 17, 17, 18, 17, 0, 19, 56, + 0, 17, 17, 18, 17, 0, 19, 62, 0, 19, 19, 20, 19, 0, 21, 0, - 22, 0, 23, 0, 24, 0, 24, 24, - 25, 24, 0, 25, 25, 26, 25, 26, - 26, 26, 0, 27, 27, 28, 55, 27, - 54, 55, 55, 55, 0, 27, 27, 28, - 55, 27, 54, 55, 55, 55, 0, 29, - 28, 53, 28, 0, 29, 29, 30, 29, - 0, 31, 0, 32, 0, 33, 0, 34, - 33, 52, 33, 0, 34, 34, 35, 34, - 0, 36, 0, 37, 0, 38, 0, 39, - 0, 39, 39, 40, 39, 0, 40, 40, - 41, 40, 0, 42, 0, 43, 0, 44, - 0, 45, 0, 46, 0, 47, 0, 48, - 0, 49, 0, 49, 49, 50, 49, 0, - 232, 50, 51, 50, 0, 0, 232, 51, - 0, 34, 52, 0, 29, 53, 54, 54, - 55, 54, 54, 55, 55, 55, 0, 27, - 27, 28, 55, 27, 54, 55, 55, 55, - 0, 0, 19, 56, 233, 233, 57, 233, - 234, 58, 59, 104, 132, 147, 159, 215, - 58, 57, 233, 233, 60, 57, 233, 233, - 61, 57, 233, 233, 62, 57, 233, 233, - 63, 63, 57, 233, 233, 63, 63, 64, - 57, 233, 233, 65, 65, 103, 57, 233, - 233, 65, 66, 65, 57, 233, 233, 66, - 66, 67, 57, 233, 233, 68, 69, 68, - 102, 57, 233, 233, 68, 69, 68, 57, - 233, 233, 70, 70, 57, 233, 233, 70, - 71, 70, 57, 233, 233, 71, 72, 99, - 71, 73, 57, 233, 233, 73, 57, 233, - 233, 74, 75, 74, 98, 57, 233, 233, - 74, 75, 74, 57, 233, 233, 75, 76, - 95, 75, 77, 57, 233, 233, 77, 57, - 233, 233, 78, 79, 78, 94, 57, 233, - 233, 78, 79, 78, 57, 233, 233, 79, - 80, 91, 79, 81, 57, 233, 233, 81, - 57, 233, 233, 82, 83, 82, 90, 57, - 233, 233, 82, 83, 82, 57, 233, 233, - 84, 85, 84, 57, 233, 233, 84, 85, - 86, 84, 86, 86, 86, 57, 233, 233, - 85, 233, 233, 87, 85, 89, 87, 88, - 89, 89, 89, 57, 233, 233, 87, 85, - 89, 87, 88, 89, 89, 89, 57, 233, - 233, 88, 89, 88, 88, 89, 89, 89, - 57, 233, 233, 87, 85, 89, 87, 88, - 89, 89, 89, 57, 233, 233, 82, 83, - 82, 90, 57, 233, 233, 92, 57, 233, - 233, 82, 83, 82, 93, 57, 233, 233, - 82, 83, 82, 93, 57, 233, 233, 78, - 79, 78, 94, 57, 233, 233, 96, 57, - 233, 233, 78, 79, 78, 97, 57, 233, - 233, 78, 79, 78, 97, 57, 233, 233, - 74, 75, 74, 98, 57, 233, 233, 100, - 57, 233, 233, 74, 75, 74, 101, 57, - 233, 233, 74, 75, 74, 101, 57, 233, - 233, 68, 69, 68, 102, 57, 233, 233, - 65, 65, 103, 57, 233, 233, 105, 57, - 233, 233, 106, 57, 233, 233, 107, 57, - 233, 233, 114, 108, 108, 108, 108, 57, - 233, 233, 109, 109, 57, 233, 233, 109, - 109, 110, 57, 233, 233, 111, 112, 111, - 113, 57, 233, 233, 111, 112, 111, 110, - 57, 233, 233, 112, 233, 233, 111, 112, - 111, 113, 57, 233, 233, 115, 57, 233, - 233, 116, 57, 233, 233, 117, 57, 233, - 233, 118, 57, 233, 233, 119, 57, 233, - 233, 120, 57, 233, 233, 121, 57, 233, - 233, 122, 57, 233, 233, 123, 57, 233, - 233, 124, 124, 57, 233, 233, 124, 124, - 125, 57, 233, 233, 126, 126, 131, 57, - 233, 233, 126, 126, 127, 57, 233, 233, - 128, 129, 128, 130, 57, 233, 233, 128, - 129, 128, 57, 233, 233, 129, 233, 233, - 128, 129, 128, 130, 57, 233, 233, 126, - 126, 131, 57, 233, 233, 133, 57, 233, - 233, 134, 57, 233, 233, 135, 57, 233, - 233, 136, 57, 233, 233, 137, 57, 233, - 233, 138, 139, 140, 138, 57, 233, 233, - 138, 139, 140, 138, 57, 233, 233, 139, - 233, 233, 141, 144, 142, 141, 142, 142, - 142, 57, 233, 233, 141, 142, 141, 142, - 142, 142, 57, 233, 233, 143, 144, 146, - 143, 145, 146, 146, 146, 57, 233, 233, - 143, 144, 146, 143, 145, 146, 146, 146, - 57, 233, 233, 144, 139, 144, 57, 233, - 233, 145, 146, 145, 145, 146, 146, 146, - 57, 233, 233, 143, 144, 146, 143, 145, - 146, 146, 146, 57, 233, 233, 148, 57, - 233, 233, 149, 57, 233, 233, 150, 57, - 233, 233, 151, 57, 233, 233, 151, 152, - 151, 57, 233, 233, 152, 153, 152, 153, - 153, 153, 57, 233, 233, 154, 155, 158, - 154, 157, 158, 158, 158, 57, 233, 233, - 154, 155, 158, 154, 157, 158, 158, 158, - 57, 233, 233, 155, 156, 155, 57, 233, - 233, 156, 233, 233, 157, 158, 157, 157, - 158, 158, 158, 57, 233, 233, 154, 155, - 158, 154, 157, 158, 158, 158, 57, 233, - 233, 160, 57, 233, 233, 161, 57, 233, - 233, 162, 57, 233, 233, 163, 163, 57, - 233, 233, 163, 164, 179, 195, 163, 57, - 233, 233, 165, 57, 233, 233, 166, 57, - 233, 233, 167, 57, 233, 233, 168, 168, - 57, 233, 233, 168, 169, 168, 169, 169, - 169, 57, 233, 233, 170, 173, 172, 170, - 171, 172, 172, 172, 57, 233, 233, 170, - 173, 172, 170, 171, 172, 172, 172, 57, - 233, 233, 171, 172, 171, 171, 172, 172, - 172, 57, 233, 233, 170, 173, 172, 170, - 171, 172, 172, 172, 57, 233, 233, 173, - 174, 173, 174, 174, 174, 57, 233, 233, - 175, 176, 178, 175, 177, 178, 178, 178, - 57, 233, 233, 175, 176, 178, 175, 177, - 178, 178, 178, 57, 233, 233, 176, 233, - 233, 177, 178, 177, 177, 178, 178, 178, - 57, 233, 233, 175, 176, 178, 175, 177, - 178, 178, 178, 57, 233, 233, 180, 57, - 233, 233, 181, 57, 233, 233, 182, 57, - 233, 233, 183, 57, 233, 233, 184, 184, - 57, 233, 233, 184, 185, 184, 185, 185, - 185, 57, 233, 233, 186, 189, 188, 186, - 187, 188, 188, 188, 57, 233, 233, 186, - 189, 188, 186, 187, 188, 188, 188, 57, - 233, 233, 187, 188, 187, 187, 188, 188, - 188, 57, 233, 233, 186, 189, 188, 186, - 187, 188, 188, 188, 57, 233, 233, 189, - 190, 189, 190, 190, 190, 57, 233, 233, - 191, 192, 194, 191, 193, 194, 194, 194, - 57, 233, 233, 191, 192, 194, 191, 193, - 194, 194, 194, 57, 233, 233, 192, 233, - 233, 193, 194, 193, 193, 194, 194, 194, - 57, 233, 233, 191, 192, 194, 191, 193, - 194, 194, 194, 57, 233, 233, 196, 57, - 233, 233, 197, 57, 233, 233, 198, 57, - 233, 233, 199, 57, 233, 233, 200, 57, - 233, 233, 201, 57, 233, 233, 202, 57, - 233, 233, 203, 57, 233, 233, 204, 204, - 57, 233, 233, 204, 205, 204, 205, 205, - 205, 57, 233, 233, 206, 209, 208, 206, - 207, 208, 208, 208, 57, 233, 233, 206, - 209, 208, 206, 207, 208, 208, 208, 57, - 233, 233, 207, 208, 207, 207, 208, 208, - 208, 57, 233, 233, 206, 209, 208, 206, - 207, 208, 208, 208, 57, 233, 233, 209, - 210, 209, 210, 210, 210, 57, 233, 233, - 211, 212, 214, 211, 213, 214, 214, 214, - 57, 233, 233, 211, 212, 214, 211, 213, - 214, 214, 214, 57, 233, 233, 212, 233, - 233, 213, 214, 213, 213, 214, 214, 214, - 57, 233, 233, 211, 212, 214, 211, 213, - 214, 214, 214, 57, 233, 233, 216, 57, - 233, 233, 217, 57, 233, 233, 218, 218, - 57, 233, 233, 218, 219, 218, 57, 233, - 233, 219, 220, 219, 220, 220, 220, 57, - 233, 233, 221, 222, 230, 221, 229, 230, - 230, 230, 57, 233, 233, 221, 222, 230, - 221, 229, 230, 230, 230, 57, 233, 233, - 223, 224, 223, 57, 233, 233, 223, 224, - 225, 223, 225, 225, 225, 57, 233, 233, - 224, 233, 233, 226, 224, 228, 226, 227, - 228, 228, 228, 57, 233, 233, 226, 224, - 228, 226, 227, 228, 228, 228, 57, 233, - 233, 227, 228, 227, 227, 228, 228, 228, - 57, 233, 233, 226, 224, 228, 226, 227, - 228, 228, 228, 57, 233, 233, 229, 230, - 229, 229, 230, 230, 230, 57, 233, 233, - 221, 222, 230, 221, 229, 230, 230, 230, - 57, 0, 233, 231, 232, 0, 234, 58, - 231, 59, 104, 132, 147, 159, 215, 58, - 57, 233, 234, 58, 59, 104, 132, 147, - 159, 215, 58, 57, 0 + 22, 0, 23, 0, 24, 0, 25, 25, + 26, 25, 0, 25, 25, 26, 25, 0, + 26, 26, 27, 26, 27, 27, 27, 0, + 28, 28, 29, 61, 28, 60, 61, 61, + 61, 0, 28, 28, 29, 61, 28, 60, + 61, 61, 61, 0, 31, 30, 55, 30, + 0, 31, 30, 55, 56, 30, 56, 56, + 56, 0, 31, 31, 32, 31, 0, 33, + 0, 34, 0, 35, 0, 36, 35, 54, + 35, 0, 36, 36, 37, 36, 0, 38, + 0, 39, 0, 40, 0, 41, 0, 41, + 41, 42, 41, 0, 42, 42, 43, 42, + 0, 44, 0, 45, 0, 46, 0, 47, + 0, 48, 0, 49, 0, 50, 0, 51, + 0, 51, 51, 52, 51, 0, 244, 52, + 53, 52, 0, 0, 244, 53, 0, 36, + 54, 0, 31, 55, 31, 57, 55, 59, + 57, 58, 59, 59, 59, 0, 31, 57, + 55, 59, 57, 58, 59, 59, 59, 0, + 58, 58, 59, 58, 58, 59, 59, 59, + 0, 31, 57, 55, 59, 57, 58, 59, + 59, 59, 0, 60, 60, 61, 60, 60, + 61, 61, 61, 0, 28, 28, 29, 61, + 28, 60, 61, 61, 61, 0, 0, 19, + 62, 245, 245, 63, 245, 246, 64, 65, + 110, 138, 153, 171, 227, 64, 63, 245, + 245, 66, 63, 245, 245, 67, 63, 245, + 245, 68, 63, 245, 245, 69, 69, 63, + 245, 245, 69, 69, 70, 63, 245, 245, + 71, 71, 109, 63, 245, 245, 71, 72, + 71, 63, 245, 245, 72, 72, 73, 63, + 245, 245, 74, 75, 74, 108, 63, 245, + 245, 74, 75, 74, 63, 245, 245, 76, + 76, 63, 245, 245, 76, 77, 76, 63, + 245, 245, 77, 78, 105, 77, 79, 63, + 245, 245, 79, 63, 245, 245, 80, 81, + 80, 104, 63, 245, 245, 80, 81, 80, + 63, 245, 245, 81, 82, 101, 81, 83, + 63, 245, 245, 83, 63, 245, 245, 84, + 85, 84, 100, 63, 245, 245, 84, 85, + 84, 63, 245, 245, 85, 86, 97, 85, + 87, 63, 245, 245, 87, 63, 245, 245, + 88, 89, 88, 96, 63, 245, 245, 88, + 89, 88, 63, 245, 245, 90, 91, 90, + 63, 245, 245, 90, 91, 92, 90, 92, + 92, 92, 63, 245, 245, 91, 245, 245, + 93, 91, 95, 93, 94, 95, 95, 95, + 63, 245, 245, 93, 91, 95, 93, 94, + 95, 95, 95, 63, 245, 245, 94, 95, + 94, 94, 95, 95, 95, 63, 245, 245, + 93, 91, 95, 93, 94, 95, 95, 95, + 63, 245, 245, 88, 89, 88, 96, 63, + 245, 245, 98, 63, 245, 245, 88, 89, + 88, 99, 63, 245, 245, 88, 89, 88, + 99, 63, 245, 245, 84, 85, 84, 100, + 63, 245, 245, 102, 63, 245, 245, 84, + 85, 84, 103, 63, 245, 245, 84, 85, + 84, 103, 63, 245, 245, 80, 81, 80, + 104, 63, 245, 245, 106, 63, 245, 245, + 80, 81, 80, 107, 63, 245, 245, 80, + 81, 80, 107, 63, 245, 245, 74, 75, + 74, 108, 63, 245, 245, 71, 71, 109, + 63, 245, 245, 111, 63, 245, 245, 112, + 63, 245, 245, 113, 63, 245, 245, 120, + 114, 114, 114, 114, 63, 245, 245, 115, + 115, 63, 245, 245, 115, 115, 116, 63, + 245, 245, 117, 118, 117, 119, 63, 245, + 245, 117, 118, 117, 116, 63, 245, 245, + 118, 245, 245, 117, 118, 117, 119, 63, + 245, 245, 121, 63, 245, 245, 122, 63, + 245, 245, 123, 63, 245, 245, 124, 63, + 245, 245, 125, 63, 245, 245, 126, 63, + 245, 245, 127, 63, 245, 245, 128, 63, + 245, 245, 129, 63, 245, 245, 130, 130, + 63, 245, 245, 130, 130, 131, 63, 245, + 245, 132, 132, 137, 63, 245, 245, 132, + 132, 133, 63, 245, 245, 134, 135, 134, + 136, 63, 245, 245, 134, 135, 134, 63, + 245, 245, 135, 245, 245, 134, 135, 134, + 136, 63, 245, 245, 132, 132, 137, 63, + 245, 245, 139, 63, 245, 245, 140, 63, + 245, 245, 141, 63, 245, 245, 142, 63, + 245, 245, 143, 63, 245, 245, 144, 145, + 146, 144, 63, 245, 245, 144, 145, 146, + 144, 63, 245, 245, 145, 245, 245, 147, + 150, 148, 147, 148, 148, 148, 63, 245, + 245, 147, 148, 147, 148, 148, 148, 63, + 245, 245, 149, 150, 152, 149, 151, 152, + 152, 152, 63, 245, 245, 149, 150, 152, + 149, 151, 152, 152, 152, 63, 245, 245, + 150, 145, 150, 63, 245, 245, 151, 152, + 151, 151, 152, 152, 152, 63, 245, 245, + 149, 150, 152, 149, 151, 152, 152, 152, + 63, 245, 245, 154, 63, 245, 245, 155, + 63, 245, 245, 156, 63, 245, 245, 157, + 63, 245, 245, 158, 159, 158, 63, 245, + 245, 158, 159, 158, 63, 245, 245, 159, + 160, 159, 160, 160, 160, 63, 245, 245, + 161, 162, 170, 161, 169, 170, 170, 170, + 63, 245, 245, 161, 162, 170, 161, 169, + 170, 170, 170, 63, 245, 245, 163, 164, + 163, 63, 245, 245, 163, 164, 165, 163, + 165, 165, 165, 63, 245, 245, 164, 245, + 245, 166, 164, 168, 166, 167, 168, 168, + 168, 63, 245, 245, 166, 164, 168, 166, + 167, 168, 168, 168, 63, 245, 245, 167, + 168, 167, 167, 168, 168, 168, 63, 245, + 245, 166, 164, 168, 166, 167, 168, 168, + 168, 63, 245, 245, 169, 170, 169, 169, + 170, 170, 170, 63, 245, 245, 161, 162, + 170, 161, 169, 170, 170, 170, 63, 245, + 245, 172, 63, 245, 245, 173, 63, 245, + 245, 174, 63, 245, 245, 175, 175, 63, + 245, 245, 175, 176, 191, 207, 175, 63, + 245, 245, 177, 63, 245, 245, 178, 63, + 245, 245, 179, 63, 245, 245, 180, 180, + 63, 245, 245, 180, 181, 180, 181, 181, + 181, 63, 245, 245, 182, 185, 184, 182, + 183, 184, 184, 184, 63, 245, 245, 182, + 185, 184, 182, 183, 184, 184, 184, 63, + 245, 245, 183, 184, 183, 183, 184, 184, + 184, 63, 245, 245, 182, 185, 184, 182, + 183, 184, 184, 184, 63, 245, 245, 185, + 186, 185, 186, 186, 186, 63, 245, 245, + 187, 188, 190, 187, 189, 190, 190, 190, + 63, 245, 245, 187, 188, 190, 187, 189, + 190, 190, 190, 63, 245, 245, 188, 245, + 245, 189, 190, 189, 189, 190, 190, 190, + 63, 245, 245, 187, 188, 190, 187, 189, + 190, 190, 190, 63, 245, 245, 192, 63, + 245, 245, 193, 63, 245, 245, 194, 63, + 245, 245, 195, 63, 245, 245, 196, 196, + 63, 245, 245, 196, 197, 196, 197, 197, + 197, 63, 245, 245, 198, 201, 200, 198, + 199, 200, 200, 200, 63, 245, 245, 198, + 201, 200, 198, 199, 200, 200, 200, 63, + 245, 245, 199, 200, 199, 199, 200, 200, + 200, 63, 245, 245, 198, 201, 200, 198, + 199, 200, 200, 200, 63, 245, 245, 201, + 202, 201, 202, 202, 202, 63, 245, 245, + 203, 204, 206, 203, 205, 206, 206, 206, + 63, 245, 245, 203, 204, 206, 203, 205, + 206, 206, 206, 63, 245, 245, 204, 245, + 245, 205, 206, 205, 205, 206, 206, 206, + 63, 245, 245, 203, 204, 206, 203, 205, + 206, 206, 206, 63, 245, 245, 208, 63, + 245, 245, 209, 63, 245, 245, 210, 63, + 245, 245, 211, 63, 245, 245, 212, 63, + 245, 245, 213, 63, 245, 245, 214, 63, + 245, 245, 215, 63, 245, 245, 216, 216, + 63, 245, 245, 216, 217, 216, 217, 217, + 217, 63, 245, 245, 218, 221, 220, 218, + 219, 220, 220, 220, 63, 245, 245, 218, + 221, 220, 218, 219, 220, 220, 220, 63, + 245, 245, 219, 220, 219, 219, 220, 220, + 220, 63, 245, 245, 218, 221, 220, 218, + 219, 220, 220, 220, 63, 245, 245, 221, + 222, 221, 222, 222, 222, 63, 245, 245, + 223, 224, 226, 223, 225, 226, 226, 226, + 63, 245, 245, 223, 224, 226, 223, 225, + 226, 226, 226, 63, 245, 245, 224, 245, + 245, 225, 226, 225, 225, 226, 226, 226, + 63, 245, 245, 223, 224, 226, 223, 225, + 226, 226, 226, 63, 245, 245, 228, 63, + 245, 245, 229, 63, 245, 245, 230, 230, + 63, 245, 245, 230, 231, 230, 63, 245, + 245, 231, 232, 231, 232, 232, 232, 63, + 245, 245, 233, 234, 242, 233, 241, 242, + 242, 242, 63, 245, 245, 233, 234, 242, + 233, 241, 242, 242, 242, 63, 245, 245, + 235, 236, 235, 63, 245, 245, 235, 236, + 237, 235, 237, 237, 237, 63, 245, 245, + 236, 245, 245, 238, 236, 240, 238, 239, + 240, 240, 240, 63, 245, 245, 238, 236, + 240, 238, 239, 240, 240, 240, 63, 245, + 245, 239, 240, 239, 239, 240, 240, 240, + 63, 245, 245, 238, 236, 240, 238, 239, + 240, 240, 240, 63, 245, 245, 241, 242, + 241, 241, 242, 242, 242, 63, 245, 245, + 233, 234, 242, 233, 241, 242, 242, 242, + 63, 0, 245, 243, 244, 0, 246, 64, + 243, 65, 110, 138, 153, 171, 227, 64, + 63, 245, 246, 64, 65, 110, 138, 153, + 171, 227, 64, 63, 0 }; static const unsigned char _unchecked_parse_test_trans_actions_wi[] = { @@ -5432,198 +5543,212 @@ static const unsigned char _unchecked_parse_test_trans_actions_wi[] = { 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, 114, 0, + 0, 0, 0, 0, 0, 0, 116, 0, 0, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 41, 41, + 41, 41, 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, 79, 79, 79, 76, 79, - 13, 76, 76, 76, 0, 0, 0, 0, - 15, 0, 0, 15, 15, 15, 0, 118, - 0, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 1, 0, 41, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 81, 81, 81, 78, 81, 13, 78, 78, + 78, 0, 0, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 120, 0, 0, 0, + 0, 120, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 57, 0, 0, + 0, 0, 1, 0, 43, 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, - 126, 0, 0, 0, 0, 0, 126, 0, - 0, 55, 0, 0, 118, 0, 0, 0, - 15, 0, 0, 15, 15, 15, 0, 17, - 17, 17, 15, 17, 0, 15, 15, 15, - 0, 0, 114, 0, 53, 64, 0, 53, - 146, 0, 0, 0, 43, 0, 88, 35, - 0, 0, 53, 64, 0, 0, 53, 64, - 0, 0, 53, 64, 0, 0, 53, 64, - 0, 0, 0, 53, 64, 0, 0, 0, - 0, 53, 64, 21, 21, 5, 0, 53, - 64, 0, 0, 0, 0, 53, 64, 0, - 0, 0, 0, 53, 64, 0, 0, 0, - 5, 0, 53, 64, 0, 0, 0, 0, - 53, 64, 23, 23, 0, 53, 64, 0, - 0, 0, 0, 53, 64, 0, 0, 0, - 0, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 25, 0, 5, 0, 53, 64, - 0, 25, 0, 0, 53, 64, 0, 0, - 0, 0, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 27, 0, 5, 0, 53, - 64, 0, 27, 0, 0, 53, 64, 0, - 0, 0, 0, 0, 0, 53, 64, 0, - 0, 53, 64, 0, 29, 0, 5, 0, - 53, 64, 0, 29, 0, 0, 53, 94, - 0, 0, 0, 0, 53, 94, 0, 0, - 0, 0, 0, 0, 0, 0, 53, 94, - 0, 53, 205, 138, 138, 76, 138, 13, - 76, 76, 76, 0, 53, 94, 0, 0, - 15, 0, 0, 15, 15, 15, 0, 53, - 64, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 199, 85, 85, 15, 85, 0, - 15, 15, 15, 0, 53, 64, 0, 29, - 0, 5, 0, 53, 64, 0, 0, 53, - 64, 11, 73, 11, 5, 0, 53, 64, - 11, 73, 11, 5, 0, 53, 64, 0, - 27, 0, 5, 0, 53, 64, 0, 0, - 53, 64, 11, 70, 11, 5, 0, 53, - 64, 11, 70, 11, 5, 0, 53, 64, - 0, 25, 0, 5, 0, 53, 64, 0, - 0, 53, 64, 11, 67, 11, 5, 0, - 53, 64, 11, 67, 11, 5, 0, 53, - 64, 0, 0, 0, 5, 0, 53, 64, - 21, 21, 5, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 33, 33, 33, 33, 0, - 53, 64, 0, 0, 0, 53, 64, 0, - 0, 0, 0, 53, 142, 31, 31, 31, - 5, 0, 53, 58, 0, 0, 0, 0, - 0, 53, 58, 0, 53, 142, 31, 31, - 31, 5, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 0, 53, 64, 0, 0, - 0, 0, 53, 64, 0, 0, 5, 0, - 53, 64, 0, 0, 0, 0, 53, 98, - 0, 0, 0, 9, 0, 53, 98, 0, - 0, 0, 0, 53, 98, 0, 53, 98, - 0, 0, 0, 9, 0, 53, 64, 0, - 0, 5, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 170, 45, 45, 45, 45, 0, 53, 130, - 0, 0, 0, 0, 0, 53, 130, 0, - 53, 64, 0, 0, 0, 0, 0, 0, - 0, 0, 53, 64, 0, 0, 0, 0, - 0, 0, 0, 53, 64, 79, 79, 76, - 79, 13, 76, 76, 76, 0, 53, 64, - 0, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 130, 0, 0, 0, 0, 53, - 64, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 64, 17, 17, 15, 17, 0, - 15, 15, 15, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 0, 0, 53, 64, 0, 0, 0, 0, - 0, 0, 0, 53, 64, 79, 79, 76, - 79, 13, 76, 76, 76, 0, 53, 64, + 0, 0, 0, 0, 0, 0, 128, 0, + 0, 0, 0, 0, 128, 0, 0, 57, + 0, 0, 120, 0, 205, 84, 84, 78, + 84, 13, 78, 78, 78, 0, 120, 0, + 0, 15, 0, 0, 15, 15, 15, 0, 0, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 122, 0, 0, 0, 0, 53, - 122, 0, 53, 64, 0, 15, 0, 0, - 15, 15, 15, 0, 53, 64, 17, 17, - 15, 17, 0, 15, 15, 15, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 53, - 64, 0, 0, 53, 64, 0, 0, 0, - 53, 64, 0, 0, 0, 0, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 0, 53, 64, 0, 0, 0, 0, 0, - 0, 0, 53, 64, 79, 79, 76, 79, - 13, 76, 76, 76, 0, 53, 64, 0, + 0, 167, 19, 19, 15, 19, 0, 15, + 15, 15, 0, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 17, 17, 17, 15, + 17, 0, 15, 15, 15, 0, 0, 116, + 0, 55, 66, 0, 55, 148, 0, 0, + 0, 45, 0, 90, 35, 0, 0, 55, + 66, 0, 0, 55, 66, 0, 0, 55, + 66, 0, 0, 55, 66, 0, 0, 0, + 55, 66, 0, 0, 0, 0, 55, 66, + 21, 21, 5, 0, 55, 66, 0, 0, + 0, 0, 55, 66, 0, 0, 0, 0, + 55, 66, 0, 0, 0, 5, 0, 55, + 66, 0, 0, 0, 0, 55, 66, 23, + 23, 0, 55, 66, 0, 0, 0, 0, + 55, 66, 0, 0, 0, 0, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 25, + 0, 5, 0, 55, 66, 0, 25, 0, + 0, 55, 66, 0, 0, 0, 0, 0, + 0, 55, 66, 0, 0, 55, 66, 0, + 27, 0, 5, 0, 55, 66, 0, 27, + 0, 0, 55, 66, 0, 0, 0, 0, + 0, 0, 55, 66, 0, 0, 55, 66, + 0, 29, 0, 5, 0, 55, 66, 0, + 29, 0, 0, 55, 96, 0, 0, 0, + 0, 55, 96, 0, 0, 0, 0, 0, + 0, 0, 0, 55, 96, 0, 55, 229, + 140, 140, 78, 140, 13, 78, 78, 78, + 0, 55, 96, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 55, 66, 0, 15, + 0, 0, 15, 15, 15, 0, 55, 223, + 87, 87, 15, 87, 0, 15, 15, 15, + 0, 55, 66, 0, 29, 0, 5, 0, + 55, 66, 0, 0, 55, 66, 11, 75, + 11, 5, 0, 55, 66, 11, 75, 11, + 5, 0, 55, 66, 0, 27, 0, 5, + 0, 55, 66, 0, 0, 55, 66, 11, + 72, 11, 5, 0, 55, 66, 11, 72, + 11, 5, 0, 55, 66, 0, 25, 0, + 5, 0, 55, 66, 0, 0, 55, 66, + 11, 69, 11, 5, 0, 55, 66, 11, + 69, 11, 5, 0, 55, 66, 0, 0, + 0, 5, 0, 55, 66, 21, 21, 5, + 0, 55, 66, 0, 0, 55, 66, 0, + 0, 55, 66, 0, 0, 55, 66, 0, + 33, 33, 33, 33, 0, 55, 66, 0, + 0, 0, 55, 66, 0, 0, 0, 0, + 55, 144, 31, 31, 31, 5, 0, 55, + 60, 0, 0, 0, 0, 0, 55, 60, + 0, 55, 144, 31, 31, 31, 5, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 0, 55, 66, 0, 0, 0, 0, 55, + 66, 0, 0, 5, 0, 55, 66, 0, + 0, 0, 0, 55, 100, 0, 0, 0, + 9, 0, 55, 100, 0, 0, 0, 0, + 55, 100, 0, 55, 100, 0, 0, 0, + 9, 0, 55, 66, 0, 0, 5, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 182, 47, 47, + 47, 47, 0, 55, 132, 0, 0, 0, + 0, 0, 55, 132, 0, 55, 66, 0, + 0, 0, 0, 0, 0, 0, 0, 55, + 66, 0, 0, 0, 0, 0, 0, 0, + 55, 66, 81, 81, 78, 81, 13, 78, + 78, 78, 0, 55, 66, 0, 0, 15, + 0, 0, 15, 15, 15, 0, 55, 132, + 0, 0, 0, 0, 55, 66, 0, 15, + 0, 0, 15, 15, 15, 0, 55, 66, + 17, 17, 15, 17, 0, 15, 15, 15, + 0, 55, 66, 0, 0, 55, 66, 0, + 0, 55, 66, 0, 0, 55, 66, 0, + 0, 55, 66, 41, 41, 41, 0, 55, + 66, 0, 0, 0, 0, 55, 66, 0, + 0, 0, 0, 0, 0, 0, 55, 66, + 81, 81, 78, 81, 13, 78, 78, 78, + 0, 55, 66, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 55, 124, 0, 0, + 0, 0, 55, 124, 0, 0, 0, 0, + 0, 0, 0, 0, 55, 124, 0, 55, + 211, 84, 84, 78, 84, 13, 78, 78, + 78, 0, 55, 124, 0, 0, 15, 0, + 0, 15, 15, 15, 0, 55, 66, 0, + 15, 0, 0, 15, 15, 15, 0, 55, + 172, 19, 19, 15, 19, 0, 15, 15, + 15, 0, 55, 66, 0, 15, 0, 0, + 15, 15, 15, 0, 55, 66, 17, 17, + 15, 17, 0, 15, 15, 15, 0, 55, + 66, 0, 0, 55, 66, 0, 0, 55, + 66, 0, 0, 55, 66, 0, 0, 0, + 55, 66, 0, 0, 0, 0, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 0, 55, 66, 0, 0, 0, 0, 0, + 0, 0, 55, 66, 81, 81, 78, 81, + 13, 78, 78, 78, 0, 55, 66, 0, 0, 15, 0, 0, 15, 15, 15, 0, - 53, 64, 0, 15, 0, 0, 15, 15, - 15, 0, 53, 64, 17, 17, 15, 17, - 0, 15, 15, 15, 0, 53, 64, 0, - 0, 0, 0, 0, 0, 0, 53, 175, - 82, 82, 76, 82, 13, 76, 76, 76, - 0, 53, 102, 0, 0, 15, 0, 0, - 15, 15, 15, 0, 53, 102, 0, 53, - 64, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 150, 19, 19, 15, 19, 0, - 15, 15, 15, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 0, 53, 64, 0, 0, 0, 0, 0, - 0, 0, 53, 64, 79, 79, 76, 79, - 13, 76, 76, 76, 0, 53, 64, 0, + 55, 66, 0, 15, 0, 0, 15, 15, + 15, 0, 55, 66, 17, 17, 15, 17, + 0, 15, 15, 15, 0, 55, 66, 0, + 0, 0, 0, 0, 0, 0, 55, 187, + 84, 84, 78, 84, 13, 78, 78, 78, + 0, 55, 104, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 55, 104, 0, 55, + 66, 0, 15, 0, 0, 15, 15, 15, + 0, 55, 152, 19, 19, 15, 19, 0, + 15, 15, 15, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 0, 55, 66, 0, 0, 0, 0, 0, + 0, 0, 55, 66, 81, 81, 78, 81, + 13, 78, 78, 78, 0, 55, 66, 0, 0, 15, 0, 0, 15, 15, 15, 0, - 53, 64, 0, 15, 0, 0, 15, 15, - 15, 0, 53, 64, 17, 17, 15, 17, - 0, 15, 15, 15, 0, 53, 64, 0, - 0, 0, 0, 0, 0, 0, 53, 187, - 82, 82, 76, 82, 13, 76, 76, 76, - 0, 53, 110, 0, 0, 15, 0, 0, - 15, 15, 15, 0, 53, 110, 0, 53, - 64, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 160, 19, 19, 15, 19, 0, - 15, 15, 15, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 0, 53, 64, 0, 0, 0, 0, 0, - 0, 0, 53, 64, 79, 79, 76, 79, - 13, 76, 76, 76, 0, 53, 64, 0, + 55, 66, 0, 15, 0, 0, 15, 15, + 15, 0, 55, 66, 17, 17, 15, 17, + 0, 15, 15, 15, 0, 55, 66, 0, + 0, 0, 0, 0, 0, 0, 55, 199, + 84, 84, 78, 84, 13, 78, 78, 78, + 0, 55, 112, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 55, 112, 0, 55, + 66, 0, 15, 0, 0, 15, 15, 15, + 0, 55, 162, 19, 19, 15, 19, 0, + 15, 15, 15, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 0, 55, 66, 0, 0, 0, 0, 0, + 0, 0, 55, 66, 81, 81, 78, 81, + 13, 78, 78, 78, 0, 55, 66, 0, 0, 15, 0, 0, 15, 15, 15, 0, - 53, 64, 0, 15, 0, 0, 15, 15, - 15, 0, 53, 64, 17, 17, 15, 17, - 0, 15, 15, 15, 0, 53, 64, 0, - 0, 0, 0, 0, 0, 0, 53, 193, - 82, 82, 76, 82, 13, 76, 76, 76, - 0, 53, 134, 0, 0, 15, 0, 0, - 15, 15, 15, 0, 53, 134, 0, 53, - 64, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 165, 19, 19, 15, 19, 0, - 15, 15, 15, 0, 53, 64, 0, 0, - 53, 64, 0, 0, 53, 64, 0, 0, - 0, 53, 64, 0, 0, 0, 0, 53, - 64, 0, 0, 0, 0, 0, 0, 0, - 53, 64, 79, 79, 76, 79, 13, 76, - 76, 76, 0, 53, 64, 0, 0, 15, - 0, 0, 15, 15, 15, 0, 53, 106, - 0, 0, 0, 0, 53, 106, 0, 0, - 0, 0, 0, 0, 0, 0, 53, 106, - 0, 53, 181, 82, 82, 76, 82, 13, - 76, 76, 76, 0, 53, 106, 0, 0, - 15, 0, 0, 15, 15, 15, 0, 53, - 64, 0, 15, 0, 0, 15, 15, 15, - 0, 53, 155, 19, 19, 15, 19, 0, - 15, 15, 15, 0, 53, 64, 0, 15, - 0, 0, 15, 15, 15, 0, 53, 64, + 55, 66, 0, 15, 0, 0, 15, 15, + 15, 0, 55, 66, 17, 17, 15, 17, + 0, 15, 15, 15, 0, 55, 66, 0, + 0, 0, 0, 0, 0, 0, 55, 217, + 84, 84, 78, 84, 13, 78, 78, 78, + 0, 55, 136, 0, 0, 15, 0, 0, + 15, 15, 15, 0, 55, 136, 0, 55, + 66, 0, 15, 0, 0, 15, 15, 15, + 0, 55, 177, 19, 19, 15, 19, 0, + 15, 15, 15, 0, 55, 66, 0, 0, + 55, 66, 0, 0, 55, 66, 0, 0, + 0, 55, 66, 0, 0, 0, 0, 55, + 66, 0, 0, 0, 0, 0, 0, 0, + 55, 66, 81, 81, 78, 81, 13, 78, + 78, 78, 0, 55, 66, 0, 0, 15, + 0, 0, 15, 15, 15, 0, 55, 108, + 0, 0, 0, 0, 55, 108, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 108, + 0, 55, 193, 84, 84, 78, 84, 13, + 78, 78, 78, 0, 55, 108, 0, 0, + 15, 0, 0, 15, 15, 15, 0, 55, + 66, 0, 15, 0, 0, 15, 15, 15, + 0, 55, 157, 19, 19, 15, 19, 0, + 15, 15, 15, 0, 55, 66, 0, 15, + 0, 0, 15, 15, 15, 0, 55, 66, 17, 17, 15, 17, 0, 15, 15, 15, - 0, 0, 61, 0, 0, 0, 146, 0, - 0, 0, 0, 43, 0, 88, 35, 0, - 0, 51, 146, 0, 0, 0, 43, 0, - 88, 35, 0, 0, 0 + 0, 0, 63, 0, 0, 0, 148, 0, + 0, 0, 0, 45, 0, 90, 35, 0, + 0, 53, 148, 0, 0, 0, 45, 0, + 90, 35, 0, 0, 0 }; static const unsigned char _unchecked_parse_test_to_state_actions[] = { - 0, 47, 0, 0, 0, 0, 0, 0, + 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 47, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 47, 0, 0, + 0, 0, 0, 49, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 49, 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, - 3, 0, 0, 3, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 3, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, + 0, 3, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 7, + 0, 0, 3, 0, 0, 0, 3, 0, + 0, 0, 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 7, 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, @@ -5634,9 +5759,10 @@ static const unsigned char _unchecked_parse_test_to_state_actions[] = { 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, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 47, 91, 0 + 0, 0, 0, 0, 0, 37, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 49, 93, 0 }; static const unsigned char _unchecked_parse_test_from_state_actions[] = { @@ -5669,7 +5795,8 @@ static const unsigned char _unchecked_parse_test_from_state_actions[] = { 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, 49, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 51, 0 }; static const short _unchecked_parse_test_eof_trans[] = { @@ -5680,41 +5807,42 @@ static const short _unchecked_parse_test_eof_trans[] = { 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, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 0, - 0, 0, 356 + 0, 0, 0, 0, 0, 0, 0, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 0, 0, 0, 388 }; static const int unchecked_parse_test_start = 1; -static const int unchecked_parse_test_first_final = 232; +static const int unchecked_parse_test_first_final = 244; static const int unchecked_parse_test_error = 0; -static const int unchecked_parse_test_en_group_scanner = 233; +static const int unchecked_parse_test_en_group_scanner = 245; static const int unchecked_parse_test_en_main = 1; -#line 930 "NanorexMMPImportExportRagelTest.rl" +#line 936 "NanorexMMPImportExportRagelTest.rl" -#line 5718 "NanorexMMPImportExportRagelTest.cpp" +#line 5846 "NanorexMMPImportExportRagelTest.cpp" { cs = unchecked_parse_test_start; top = 0; @@ -5722,9 +5850,9 @@ static const int unchecked_parse_test_en_main = 1; te = 0; act = 0; } -#line 931 "NanorexMMPImportExportRagelTest.rl" +#line 937 "NanorexMMPImportExportRagelTest.rl" -#line 5728 "NanorexMMPImportExportRagelTest.cpp" +#line 5856 "NanorexMMPImportExportRagelTest.cpp" { int _klen; unsigned int _trans; @@ -5741,11 +5869,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 42: + case 43: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = p;} break; -#line 5749 "NanorexMMPImportExportRagelTest.cpp" +#line 5877 "NanorexMMPImportExportRagelTest.cpp" } } @@ -5929,116 +6057,120 @@ _eof_trans: { newViewDataGroup(); } break; case 28: -#line 40 "NanorexMMPImportExportRagelTest.rl" - { newMolStructGroup(stringVal/*, stringVal2*/); } +#line 34 "NanorexMMPImportExportRagelTest.rl" + { stringVal2.clear(); } break; case 29: +#line 40 "NanorexMMPImportExportRagelTest.rl" + { newMolStructGroup(stringVal, stringVal2); } + break; + case 30: #line 47 "NanorexMMPImportExportRagelTest.rl" { end1(); } break; - case 30: + case 31: #line 51 "NanorexMMPImportExportRagelTest.rl" { lineStart = p; } break; - case 31: + case 32: #line 56 "NanorexMMPImportExportRagelTest.rl" { newClipboardGroup(); } break; - case 32: + case 33: #line 60 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 33: + case 34: #line 61 "NanorexMMPImportExportRagelTest.rl" { stringVal.clear(); } break; - case 34: + case 35: #line 67 "NanorexMMPImportExportRagelTest.rl" { endGroup(stringVal); } break; - case 35: + case 36: #line 71 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 36: + case 37: #line 81 "NanorexMMPImportExportRagelTest.rl" { newOpenGroupInfo(stringVal, stringVal2); } break; - case 37: -#line 905 "NanorexMMPImportExportRagelTest.rl" - { /*cerr << "*p=" << *p << endl;*/ p--; {stack[top++] = cs; cs = 233; goto _again;} } - break; case 38: -#line 908 "NanorexMMPImportExportRagelTest.rl" - { p--; {stack[top++] = cs; cs = 233; goto _again;} } +#line 911 "NanorexMMPImportExportRagelTest.rl" + { /*cerr << "*p=" << *p << endl;*/ p--; {stack[top++] = cs; cs = 245; goto _again;} } break; case 39: -#line 913 "NanorexMMPImportExportRagelTest.rl" - { p--; {stack[top++] = cs; cs = 233; goto _again;} } +#line 914 "NanorexMMPImportExportRagelTest.rl" + { p--; {stack[top++] = cs; cs = 245; goto _again;} } break; - case 43: + case 40: +#line 919 "NanorexMMPImportExportRagelTest.rl" + { p--; {stack[top++] = cs; cs = 245; goto _again;} } + break; + case 44: #line 1 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 44: + case 45: #line 102 "NanorexMMPImportExportRagelTest.rl" {act = 11;} break; - case 45: + case 46: #line 89 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 46: + case 47: #line 90 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 47: + case 48: #line 91 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{{cs = stack[--top]; goto _again;}}} break; - case 48: + case 49: #line 92 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 49: + case 50: #line 93 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 50: + case 51: #line 94 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 51: + case 52: #line 95 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 52: + case 53: #line 96 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 53: + case 54: #line 97 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 54: + case 55: #line 100 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 55: + case 56: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 56: + case 57: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p;p--;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 57: + case 58: #line 1 "NanorexMMPImportExportRagelTest.rl" { switch( act ) { case 0: @@ -6054,7 +6186,7 @@ _eof_trans: } } break; -#line 6058 "NanorexMMPImportExportRagelTest.cpp" +#line 6190 "NanorexMMPImportExportRagelTest.cpp" } } @@ -6075,15 +6207,15 @@ _again: #line 11 "NanorexMMPImportExportRagelTest.rl" { stringVal2.clear(); /* 'style' string optional */ } break; - case 40: + case 41: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = 0;} break; - case 41: + case 42: #line 1 "NanorexMMPImportExportRagelTest.rl" {act = 0;} break; -#line 6087 "NanorexMMPImportExportRagelTest.cpp" +#line 6219 "NanorexMMPImportExportRagelTest.cpp" } } @@ -6102,7 +6234,7 @@ _again: _out: {} } -#line 932 "NanorexMMPImportExportRagelTest.rl" +#line 938 "NanorexMMPImportExportRagelTest.rl" } @@ -6144,7 +6276,7 @@ void NanorexMMPImportExportRagelTest::checkedParseTest(void) } -#line 993 "NanorexMMPImportExportRagelTest.rl" +#line 999 "NanorexMMPImportExportRagelTest.rl" @@ -6157,9 +6289,9 @@ NanorexMMPImportExportRagelTest::checkedParseTestHelper(char const *const testIn char const *ts, *te; int cs, stack[128], top, act; - #line 1006 "NanorexMMPImportExportRagelTest.rl" + #line 1012 "NanorexMMPImportExportRagelTest.rl" -#line 6163 "NanorexMMPImportExportRagelTest.cpp" +#line 6295 "NanorexMMPImportExportRagelTest.cpp" static const char _checked_parse_test_actions[] = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, @@ -7521,9 +7653,9 @@ static const int checked_parse_test_error = 0; static const int checked_parse_test_en_checked_group_scanner = 411; static const int checked_parse_test_en_main = 1; -#line 1007 "NanorexMMPImportExportRagelTest.rl" +#line 1013 "NanorexMMPImportExportRagelTest.rl" -#line 7527 "NanorexMMPImportExportRagelTest.cpp" +#line 7659 "NanorexMMPImportExportRagelTest.cpp" { cs = checked_parse_test_start; top = 0; @@ -7531,9 +7663,9 @@ static const int checked_parse_test_en_main = 1; te = 0; act = 0; } -#line 1008 "NanorexMMPImportExportRagelTest.rl" +#line 1014 "NanorexMMPImportExportRagelTest.rl" -#line 7537 "NanorexMMPImportExportRagelTest.cpp" +#line 7669 "NanorexMMPImportExportRagelTest.cpp" { int _klen; unsigned int _trans; @@ -7554,7 +7686,7 @@ _resume: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = p;} break; -#line 7558 "NanorexMMPImportExportRagelTest.cpp" +#line 7690 "NanorexMMPImportExportRagelTest.cpp" } } @@ -7836,7 +7968,7 @@ _eof_trans: break; case 51: #line 50 "NanorexMMPImportExportRagelTest.rl" - { newMolStructGroup(stringVal/*, stringVal2*/); } + { newMolStructGroup(stringVal, stringVal2); } break; case 52: #line 55 "NanorexMMPImportExportRagelTest.rl" @@ -7891,18 +8023,18 @@ _eof_trans: { newOpenGroupInfo(stringVal, stringVal2); } break; case 65: -#line 979 "NanorexMMPImportExportRagelTest.rl" +#line 985 "NanorexMMPImportExportRagelTest.rl" { cerr << "*p=" << *p << endl; p--; {stack[top++] = cs; cs = 411; goto _again;} } break; case 66: -#line 985 "NanorexMMPImportExportRagelTest.rl" +#line 991 "NanorexMMPImportExportRagelTest.rl" { p--; {stack[top++] = cs; cs = 411; goto _again;} } break; case 67: -#line 990 "NanorexMMPImportExportRagelTest.rl" +#line 996 "NanorexMMPImportExportRagelTest.rl" { p--; {stack[top++] = cs; cs = 411; goto _again;} } break; case 70: @@ -7970,7 +8102,7 @@ _eof_trans: cerr << endl; }} break; -#line 7974 "NanorexMMPImportExportRagelTest.cpp" +#line 8106 "NanorexMMPImportExportRagelTest.cpp" } } @@ -7991,7 +8123,7 @@ _again: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = 0;} break; -#line 7995 "NanorexMMPImportExportRagelTest.cpp" +#line 8127 "NanorexMMPImportExportRagelTest.cpp" } } @@ -8098,14 +8230,14 @@ _again: #line 89 "NanorexMMPImportExportRagelTest.rl" { syntaxError("Badly formed 'info opengroup' value"); } break; -#line 8102 "NanorexMMPImportExportRagelTest.cpp" +#line 8234 "NanorexMMPImportExportRagelTest.cpp" } } } _out: {} } -#line 1009 "NanorexMMPImportExportRagelTest.rl" +#line 1015 "NanorexMMPImportExportRagelTest.rl" } @@ -8140,7 +8272,7 @@ void NanorexMMPImportExportRagelTest::charBufParseTest(void) } -#line 1089 "NanorexMMPImportExportRagelTest.rl" +#line 1095 "NanorexMMPImportExportRagelTest.rl" @@ -8227,38 +8359,41 @@ NanorexMMPImportExportRagelTest::charBufParseTestHelper(char const *const testIn char const *ts, *te; int cs, stack[1024], top, act; - #line 1176 "NanorexMMPImportExportRagelTest.rl" + #line 1182 "NanorexMMPImportExportRagelTest.rl" -#line 8233 "NanorexMMPImportExportRagelTest.cpp" +#line 8365 "NanorexMMPImportExportRagelTest.cpp" static const char _parse_tester_actions[] = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 17, 1, 18, 1, 21, 1, 22, 1, - 26, 1, 30, 1, 32, 1, 33, 1, - 37, 1, 41, 1, 43, 1, 57, 1, - 58, 2, 0, 29, 2, 0, 53, 2, - 0, 55, 2, 0, 56, 2, 5, 12, - 2, 5, 13, 2, 5, 14, 2, 6, - 7, 2, 6, 8, 2, 6, 9, 2, - 8, 15, 2, 35, 24, 2, 37, 0, - 2, 41, 42, 3, 0, 16, 51, 3, - 0, 19, 54, 3, 0, 20, 52, 3, - 0, 23, 49, 3, 0, 25, 50, 3, - 0, 27, 38, 3, 0, 28, 39, 3, - 0, 28, 46, 3, 0, 31, 40, 3, - 0, 34, 48, 3, 0, 36, 47, 3, - 6, 8, 15, 3, 17, 0, 53, 3, - 44, 0, 45, 4, 9, 0, 20, 52, - 4, 9, 0, 23, 49, 4, 9, 0, - 25, 50, 4, 9, 0, 36, 47, 4, - 33, 0, 34, 48, 5, 6, 9, 0, - 20, 52, 5, 6, 9, 0, 23, 49, - 5, 6, 9, 0, 25, 50, 5, 6, - 9, 0, 36, 47, 5, 8, 15, 0, - 16, 51, 6, 6, 8, 15, 0, 16, - 51 + 26, 1, 28, 1, 31, 1, 33, 1, + 34, 1, 38, 1, 42, 1, 44, 1, + 58, 1, 59, 2, 0, 30, 2, 0, + 54, 2, 0, 56, 2, 0, 57, 2, + 5, 12, 2, 5, 13, 2, 5, 14, + 2, 6, 7, 2, 6, 8, 2, 6, + 9, 2, 8, 15, 2, 36, 24, 2, + 38, 0, 2, 42, 43, 3, 0, 16, + 52, 3, 0, 19, 55, 3, 0, 20, + 53, 3, 0, 23, 50, 3, 0, 25, + 51, 3, 0, 27, 39, 3, 0, 29, + 40, 3, 0, 29, 47, 3, 0, 32, + 41, 3, 0, 35, 49, 3, 0, 37, + 48, 3, 6, 8, 15, 3, 17, 0, + 54, 3, 45, 0, 46, 4, 9, 0, + 20, 53, 4, 9, 0, 23, 50, 4, + 9, 0, 25, 51, 4, 9, 0, 29, + 40, 4, 9, 0, 29, 47, 4, 9, + 0, 37, 48, 4, 34, 0, 35, 49, + 5, 6, 9, 0, 20, 53, 5, 6, + 9, 0, 23, 50, 5, 6, 9, 0, + 25, 51, 5, 6, 9, 0, 29, 40, + 5, 6, 9, 0, 29, 47, 5, 6, + 9, 0, 37, 48, 5, 8, 15, 0, + 16, 52, 6, 6, 8, 15, 0, 16, + 52 }; static const short _parse_tester_key_offsets[] = { @@ -8268,37 +8403,39 @@ static const short _parse_tester_key_offsets[] = { 47, 48, 49, 55, 61, 62, 63, 64, 65, 70, 75, 80, 81, 82, 83, 87, 92, 93, 94, 95, 100, 102, 107, 108, - 109, 110, 111, 116, 127, 141, 155, 160, - 165, 166, 167, 168, 173, 178, 179, 180, - 181, 182, 187, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 205, 210, 215, 216, - 217, 221, 223, 225, 227, 240, 254, 256, - 257, 258, 259, 260, 261, 265, 271, 278, - 283, 288, 290, 297, 299, 303, 309, 311, - 313, 315, 317, 319, 323, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 341, 343, - 354, 357, 360, 363, 368, 375, 382, 388, - 395, 403, 409, 414, 420, 429, 433, 441, - 447, 456, 460, 468, 474, 483, 487, 495, - 501, 507, 520, 522, 537, 552, 566, 581, - 589, 593, 601, 609, 617, 621, 629, 637, - 645, 649, 657, 665, 673, 680, 683, 686, - 689, 697, 702, 709, 717, 725, 727, 735, - 738, 741, 744, 747, 750, 753, 756, 759, - 762, 767, 774, 781, 788, 796, 802, 804, - 812, 819, 822, 825, 828, 831, 834, 841, - 848, 850, 863, 875, 890, 905, 911, 925, - 940, 943, 946, 949, 952, 958, 970, 985, - 1000, 1006, 1008, 1022, 1037, 1040, 1043, 1046, - 1051, 1059, 1062, 1065, 1068, 1073, 1085, 1100, - 1115, 1129, 1144, 1156, 1171, 1186, 1188, 1202, - 1217, 1220, 1223, 1226, 1229, 1234, 1246, 1261, - 1276, 1290, 1305, 1317, 1332, 1347, 1349, 1363, - 1378, 1381, 1384, 1387, 1390, 1393, 1396, 1399, - 1402, 1407, 1419, 1434, 1449, 1463, 1478, 1490, - 1505, 1520, 1522, 1536, 1551, 1554, 1557, 1562, - 1568, 1580, 1595, 1610, 1616, 1629, 1631, 1646, - 1661, 1675, 1690, 1704, 1719, 1721, 1721, 1733 + 109, 110, 111, 116, 121, 132, 146, 160, + 165, 177, 182, 183, 184, 185, 190, 195, + 196, 197, 198, 199, 204, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 222, 227, + 232, 233, 234, 238, 240, 242, 244, 258, + 272, 285, 299, 312, 326, 328, 329, 330, + 331, 332, 333, 337, 343, 350, 355, 360, + 362, 369, 371, 375, 381, 383, 385, 387, + 389, 391, 395, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 413, 415, 426, 429, + 432, 435, 440, 447, 454, 460, 467, 475, + 481, 486, 492, 501, 505, 513, 519, 528, + 532, 540, 546, 555, 559, 567, 573, 579, + 592, 594, 609, 624, 638, 653, 661, 665, + 673, 681, 689, 693, 701, 709, 717, 721, + 729, 737, 745, 752, 755, 758, 761, 769, + 774, 781, 789, 797, 799, 807, 810, 813, + 816, 819, 822, 825, 828, 831, 834, 839, + 846, 853, 860, 868, 874, 876, 884, 891, + 894, 897, 900, 903, 906, 913, 920, 922, + 935, 947, 962, 977, 983, 997, 1012, 1015, + 1018, 1021, 1024, 1030, 1036, 1048, 1063, 1078, + 1084, 1097, 1099, 1114, 1129, 1143, 1158, 1172, + 1187, 1190, 1193, 1196, 1201, 1209, 1212, 1215, + 1218, 1223, 1235, 1250, 1265, 1279, 1294, 1306, + 1321, 1336, 1338, 1352, 1367, 1370, 1373, 1376, + 1379, 1384, 1396, 1411, 1426, 1440, 1455, 1467, + 1482, 1497, 1499, 1513, 1528, 1531, 1534, 1537, + 1540, 1543, 1546, 1549, 1552, 1557, 1569, 1584, + 1599, 1613, 1628, 1640, 1655, 1670, 1672, 1686, + 1701, 1704, 1707, 1712, 1718, 1730, 1745, 1760, + 1766, 1779, 1781, 1796, 1811, 1825, 1840, 1854, + 1869, 1871, 1871, 1883 }; static const char _parse_tester_trans_keys[] = { @@ -8316,21 +8453,30 @@ static const char _parse_tester_trans_keys[] = { 32, 68, 11, 13, 97, 116, 97, 9, 32, 41, 11, 13, 10, 35, 10, 32, 103, 9, 13, 114, 111, 117, 112, 9, - 32, 40, 11, 13, 9, 32, 95, 11, - 13, 48, 57, 65, 90, 97, 122, 9, - 32, 41, 95, 11, 13, 45, 46, 48, - 57, 65, 90, 97, 122, 9, 32, 41, - 95, 11, 13, 45, 46, 48, 57, 65, - 90, 97, 122, 10, 32, 35, 9, 13, - 10, 32, 101, 9, 13, 110, 100, 49, - 10, 32, 35, 9, 13, 10, 32, 103, - 9, 13, 114, 111, 117, 112, 9, 32, - 40, 11, 13, 9, 32, 67, 11, 13, - 108, 105, 112, 98, 111, 97, 114, 100, - 9, 32, 41, 11, 13, 10, 32, 35, - 9, 13, 10, 32, 101, 9, 13, 110, - 100, 9, 32, 11, 13, -1, 10, -1, - 10, -1, 10, 9, 32, 95, 11, 13, + 32, 40, 11, 13, 9, 32, 40, 11, + 13, 9, 32, 95, 11, 13, 48, 57, + 65, 90, 97, 122, 9, 32, 41, 95, + 11, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 9, 32, 41, 95, 11, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 10, 32, 35, 9, 13, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, 10, 32, 101, 9, 13, 110, 100, + 49, 10, 32, 35, 9, 13, 10, 32, + 103, 9, 13, 114, 111, 117, 112, 9, + 32, 40, 11, 13, 9, 32, 67, 11, + 13, 108, 105, 112, 98, 111, 97, 114, + 100, 9, 32, 41, 11, 13, 10, 32, + 35, 9, 13, 10, 32, 101, 9, 13, + 110, 100, 9, 32, 11, 13, -1, 10, + -1, 10, -1, 10, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 9, 32, 95, 11, 13, 45, 46, 48, + 57, 65, 90, 97, 122, 10, 32, 35, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, 9, 32, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, 9, 32, 41, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, @@ -8422,62 +8568,30 @@ static const char _parse_tester_trans_keys[] = { 65, 90, 97, 122, -1, 10, 114, -1, 10, 111, -1, 10, 117, -1, 10, 112, -1, 10, 32, 40, 9, 13, -1, 10, - 32, 95, 9, 13, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 41, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 41, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 35, 9, 13, -1, 10, - -1, 10, 32, 95, 9, 13, 45, 46, + 32, 40, 9, 13, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 41, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 41, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 110, - -1, 10, 102, -1, 10, 111, -1, 10, - 32, 9, 13, -1, 10, 32, 97, 99, - 111, 9, 13, -1, 10, 116, -1, 10, - 111, -1, 10, 109, -1, 10, 32, 9, - 13, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 61, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 61, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, -1, 10, 32, 95, + 32, 35, 9, 13, -1, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 104, -1, 10, 117, -1, - 10, 110, -1, 10, 107, -1, 10, 32, - 9, 13, -1, 10, 32, 95, 9, 13, + 122, -1, 10, 32, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 61, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 61, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 35, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, -1, 10, 32, + 32, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 112, -1, 10, 101, - -1, 10, 110, -1, 10, 103, -1, 10, - 114, -1, 10, 111, -1, 10, 117, -1, - 10, 112, -1, 10, 32, 9, 13, -1, + 90, 97, 122, -1, 10, 110, -1, 10, + 102, -1, 10, 111, -1, 10, 32, 9, + 13, -1, 10, 32, 97, 99, 111, 9, + 13, -1, 10, 116, -1, 10, 111, -1, + 10, 109, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, @@ -8496,31 +8610,72 @@ static const char _parse_tester_trans_keys[] = { 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 111, -1, 10, 108, -1, 10, 32, - 9, 13, -1, 10, 32, 40, 9, 13, + 10, 104, -1, 10, 117, -1, 10, 110, + -1, 10, 107, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, + 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, + 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 35, 9, 13, - -1, 10, 32, 35, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, -1, + 97, 122, -1, 10, 32, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 35, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 112, -1, 10, 101, -1, 10, + 110, -1, 10, 103, -1, 10, 114, -1, + 10, 111, -1, 10, 117, -1, 10, 112, + -1, 10, 32, 9, 13, -1, 10, 32, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 61, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 61, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, + 57, 65, 90, 97, 122, -1, 10, 111, + -1, 10, 108, -1, 10, 32, 9, 13, + -1, 10, 32, 40, 9, 13, -1, 10, + 32, 95, 9, 13, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 41, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 9, 13, -1, 10, + 32, 35, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, -1, 10, 32, + 35, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 95, 9, 13, + 90, 97, 122, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 41, 95, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, -1, 10, 32, 35, 97, 98, 101, - 103, 105, 109, 9, 13, -1, 10, 32, - 97, 98, 101, 103, 105, 109, 9, 13, - 0 + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, + 32, 41, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, -1, + 10, 32, 35, 97, 98, 101, 103, 105, + 109, 9, 13, -1, 10, 32, 97, 98, + 101, 103, 105, 109, 9, 13, 0 }; static const char _parse_tester_single_lengths[] = { @@ -8530,37 +8685,39 @@ static const char _parse_tester_single_lengths[] = { 1, 1, 4, 4, 1, 1, 1, 1, 3, 3, 3, 1, 1, 1, 2, 3, 1, 1, 1, 3, 2, 3, 1, 1, - 1, 1, 3, 3, 4, 4, 3, 3, + 1, 1, 3, 3, 3, 4, 4, 3, + 4, 3, 1, 1, 1, 3, 3, 1, 1, 1, 1, 3, 3, 1, 1, 1, - 1, 3, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 3, 3, 3, 1, 1, - 2, 2, 2, 2, 3, 4, 2, 1, - 1, 1, 1, 1, 2, 2, 3, 3, - 3, 2, 3, 2, 2, 2, 0, 0, - 0, 0, 0, 2, 3, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 9, - 3, 3, 3, 3, 3, 3, 4, 3, - 4, 4, 3, 4, 5, 2, 4, 4, - 5, 2, 4, 4, 5, 2, 4, 4, - 4, 5, 2, 5, 5, 4, 5, 4, - 2, 4, 4, 4, 2, 4, 4, 4, - 2, 4, 4, 4, 3, 3, 3, 3, - 6, 3, 3, 4, 4, 2, 4, 3, + 1, 1, 1, 1, 1, 3, 3, 3, + 1, 1, 2, 2, 2, 2, 4, 4, + 3, 4, 3, 4, 2, 1, 1, 1, + 1, 1, 2, 2, 3, 3, 3, 2, + 3, 2, 2, 2, 0, 0, 0, 0, + 0, 2, 3, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 2, 9, 3, 3, + 3, 3, 3, 3, 4, 3, 4, 4, + 3, 4, 5, 2, 4, 4, 5, 2, + 4, 4, 5, 2, 4, 4, 4, 5, + 2, 5, 5, 4, 5, 4, 2, 4, + 4, 4, 2, 4, 4, 4, 2, 4, + 4, 4, 3, 3, 3, 3, 6, 3, + 3, 4, 4, 2, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 4, 4, 2, 4, - 3, 3, 3, 3, 3, 3, 5, 5, - 2, 5, 4, 5, 5, 4, 4, 5, - 3, 3, 3, 3, 4, 4, 5, 5, - 4, 2, 4, 5, 3, 3, 3, 3, - 6, 3, 3, 3, 3, 4, 5, 5, - 4, 5, 4, 5, 5, 2, 4, 5, + 3, 3, 4, 4, 2, 4, 3, 3, + 3, 3, 3, 3, 5, 5, 2, 5, + 4, 5, 5, 4, 4, 5, 3, 3, + 3, 3, 4, 4, 4, 5, 5, 4, + 5, 2, 5, 5, 4, 5, 4, 5, + 3, 3, 3, 3, 6, 3, 3, 3, + 3, 4, 5, 5, 4, 5, 4, 5, + 5, 2, 4, 5, 3, 3, 3, 3, + 3, 4, 5, 5, 4, 5, 4, 5, + 5, 2, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 5, 5, 4, 5, 4, 5, 5, 2, 4, 5, - 3, 3, 3, 3, 3, 3, 3, 3, - 3, 4, 5, 5, 4, 5, 4, 5, - 5, 2, 4, 5, 3, 3, 3, 4, - 4, 5, 5, 4, 5, 2, 5, 5, - 4, 5, 4, 5, 2, 0, 10, 9 + 3, 3, 3, 4, 4, 5, 5, 4, + 5, 2, 5, 5, 4, 5, 4, 5, + 2, 0, 10, 9 }; static const char _parse_tester_range_lengths[] = { @@ -8570,37 +8727,39 @@ static const char _parse_tester_range_lengths[] = { 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, - 0, 0, 1, 4, 5, 5, 1, 1, + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, - 0, 1, 1, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 1, 0, 0, 0, 5, 5, 0, 0, - 0, 0, 0, 0, 1, 2, 2, 1, - 1, 0, 2, 0, 1, 2, 1, 1, - 1, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 1, - 0, 0, 0, 1, 2, 2, 1, 2, - 2, 1, 1, 1, 2, 1, 2, 1, - 2, 1, 2, 1, 2, 1, 2, 1, - 1, 4, 0, 5, 5, 5, 5, 2, - 1, 2, 2, 2, 1, 2, 2, 2, - 1, 2, 2, 2, 2, 0, 0, 0, - 1, 1, 2, 2, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 2, 2, 2, 2, 1, 0, 2, - 2, 0, 0, 0, 0, 0, 1, 1, - 0, 4, 4, 5, 5, 1, 5, 5, - 0, 0, 0, 0, 1, 4, 5, 5, - 1, 0, 5, 5, 0, 0, 0, 1, - 1, 0, 0, 0, 1, 4, 5, 5, - 5, 5, 4, 5, 5, 0, 5, 5, + 0, 0, 0, 0, 0, 1, 1, 1, + 0, 0, 1, 0, 0, 0, 5, 5, + 5, 5, 5, 5, 0, 0, 0, 0, + 0, 0, 1, 2, 2, 1, 1, 0, + 2, 0, 1, 2, 1, 1, 1, 1, + 1, 1, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 1, 0, 0, + 0, 1, 2, 2, 1, 2, 2, 1, + 1, 1, 2, 1, 2, 1, 2, 1, + 2, 1, 2, 1, 2, 1, 1, 4, + 0, 5, 5, 5, 5, 2, 1, 2, + 2, 2, 1, 2, 2, 2, 1, 2, + 2, 2, 2, 0, 0, 0, 1, 1, + 2, 2, 2, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 2, + 2, 2, 2, 1, 0, 2, 2, 0, + 0, 0, 0, 0, 1, 1, 0, 4, + 4, 5, 5, 1, 5, 5, 0, 0, + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 0, 5, 5, 5, 5, 5, 5, + 0, 0, 0, 1, 1, 0, 0, 0, + 1, 4, 5, 5, 5, 5, 4, 5, + 5, 0, 5, 5, 0, 0, 0, 0, + 1, 4, 5, 5, 5, 5, 4, 5, + 5, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 5, 5, 5, 5, 4, 5, 5, 0, 5, 5, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 4, 5, 5, 5, 5, 4, 5, - 5, 0, 5, 5, 0, 0, 1, 1, - 4, 5, 5, 1, 4, 0, 5, 5, - 5, 5, 5, 5, 0, 0, 1, 1 + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 0, 5, 5, 5, 5, 5, 5, + 0, 0, 1, 1 }; static const short _parse_tester_index_offsets[] = { @@ -8610,37 +8769,39 @@ static const short _parse_tester_index_offsets[] = { 59, 61, 63, 69, 75, 77, 79, 81, 83, 88, 93, 98, 100, 102, 104, 108, 113, 115, 117, 119, 124, 127, 132, 134, - 136, 138, 140, 145, 153, 163, 173, 178, - 183, 185, 187, 189, 194, 199, 201, 203, - 205, 207, 212, 217, 219, 221, 223, 225, - 227, 229, 231, 233, 238, 243, 248, 250, - 252, 256, 259, 262, 265, 274, 284, 287, - 289, 291, 293, 295, 297, 301, 306, 312, - 317, 322, 325, 331, 334, 338, 343, 345, - 347, 349, 351, 353, 357, 362, 364, 366, - 368, 370, 372, 374, 376, 378, 383, 386, - 397, 401, 405, 409, 414, 420, 426, 432, - 438, 445, 451, 456, 462, 470, 474, 481, - 487, 495, 499, 506, 512, 520, 524, 531, - 537, 543, 553, 556, 567, 578, 588, 599, - 606, 610, 617, 624, 631, 635, 642, 649, - 656, 660, 667, 674, 681, 687, 691, 695, - 699, 707, 712, 718, 725, 732, 735, 742, - 746, 750, 754, 758, 762, 766, 770, 774, - 778, 783, 789, 795, 801, 808, 814, 817, - 824, 830, 834, 838, 842, 846, 850, 857, - 864, 867, 877, 886, 897, 908, 914, 924, - 935, 939, 943, 947, 951, 957, 966, 977, - 988, 994, 997, 1007, 1018, 1022, 1026, 1030, - 1035, 1043, 1047, 1051, 1055, 1060, 1069, 1080, - 1091, 1101, 1112, 1121, 1132, 1143, 1146, 1156, - 1167, 1171, 1175, 1179, 1183, 1188, 1197, 1208, - 1219, 1229, 1240, 1249, 1260, 1271, 1274, 1284, - 1295, 1299, 1303, 1307, 1311, 1315, 1319, 1323, - 1327, 1332, 1341, 1352, 1363, 1373, 1384, 1393, - 1404, 1415, 1418, 1428, 1439, 1443, 1447, 1452, - 1458, 1467, 1478, 1489, 1495, 1505, 1508, 1519, - 1530, 1540, 1551, 1561, 1572, 1575, 1576, 1588 + 136, 138, 140, 145, 150, 158, 168, 178, + 183, 192, 197, 199, 201, 203, 208, 213, + 215, 217, 219, 221, 226, 231, 233, 235, + 237, 239, 241, 243, 245, 247, 252, 257, + 262, 264, 266, 270, 273, 276, 279, 289, + 299, 308, 318, 327, 337, 340, 342, 344, + 346, 348, 350, 354, 359, 365, 370, 375, + 378, 384, 387, 391, 396, 398, 400, 402, + 404, 406, 410, 415, 417, 419, 421, 423, + 425, 427, 429, 431, 436, 439, 450, 454, + 458, 462, 467, 473, 479, 485, 491, 498, + 504, 509, 515, 523, 527, 534, 540, 548, + 552, 559, 565, 573, 577, 584, 590, 596, + 606, 609, 620, 631, 641, 652, 659, 663, + 670, 677, 684, 688, 695, 702, 709, 713, + 720, 727, 734, 740, 744, 748, 752, 760, + 765, 771, 778, 785, 788, 795, 799, 803, + 807, 811, 815, 819, 823, 827, 831, 836, + 842, 848, 854, 861, 867, 870, 877, 883, + 887, 891, 895, 899, 903, 910, 917, 920, + 930, 939, 950, 961, 967, 977, 988, 992, + 996, 1000, 1004, 1010, 1016, 1025, 1036, 1047, + 1053, 1063, 1066, 1077, 1088, 1098, 1109, 1119, + 1130, 1134, 1138, 1142, 1147, 1155, 1159, 1163, + 1167, 1172, 1181, 1192, 1203, 1213, 1224, 1233, + 1244, 1255, 1258, 1268, 1279, 1283, 1287, 1291, + 1295, 1300, 1309, 1320, 1331, 1341, 1352, 1361, + 1372, 1383, 1386, 1396, 1407, 1411, 1415, 1419, + 1423, 1427, 1431, 1435, 1439, 1444, 1453, 1464, + 1475, 1485, 1496, 1505, 1516, 1527, 1530, 1540, + 1551, 1555, 1559, 1564, 1570, 1579, 1590, 1601, + 1607, 1617, 1620, 1631, 1642, 1652, 1663, 1673, + 1684, 1687, 1688, 1700 }; static const short _parse_tester_indicies[] = { @@ -8661,245 +8822,263 @@ static const short _parse_tester_indicies[] = { 1, 48, 1, 49, 1, 50, 1, 50, 50, 51, 50, 1, 52, 53, 1, 55, 54, 56, 54, 1, 57, 1, 58, 1, - 59, 1, 60, 1, 60, 60, 61, 60, - 1, 61, 61, 62, 61, 62, 62, 62, - 1, 63, 63, 64, 66, 63, 65, 66, - 66, 66, 1, 67, 67, 68, 70, 67, - 69, 70, 70, 70, 1, 71, 68, 72, - 68, 1, 74, 73, 75, 73, 1, 76, - 1, 77, 1, 78, 1, 79, 78, 80, - 78, 1, 82, 81, 83, 81, 1, 84, - 1, 85, 1, 86, 1, 87, 1, 87, - 87, 88, 87, 1, 88, 88, 89, 88, - 1, 90, 1, 91, 1, 92, 1, 93, - 1, 94, 1, 95, 1, 96, 1, 97, - 1, 97, 97, 98, 97, 1, 99, 98, - 100, 98, 1, 102, 101, 103, 101, 1, - 104, 1, 105, 1, 106, 106, 106, 1, - 1, 99, 100, 1, 79, 80, 1, 71, - 72, 69, 69, 70, 69, 69, 70, 70, - 70, 1, 107, 107, 108, 70, 107, 69, - 70, 70, 70, 1, 1, 52, 53, 109, - 1, 110, 1, 111, 1, 112, 1, 113, - 1, 114, 114, 114, 1, 114, 114, 114, - 115, 1, 117, 116, 118, 116, 119, 1, - 121, 120, 122, 120, 1, 121, 123, 32, - 123, 1, 1, 121, 122, 117, 116, 118, - 116, 119, 1, 1, 28, 29, 124, 124, - 124, 1, 124, 124, 124, 125, 1, 126, - 1, 127, 1, 128, 1, 129, 1, 130, - 1, 131, 131, 131, 1, 131, 131, 132, - 131, 1, 133, 1, 134, 1, 135, 1, - 136, 1, 137, 1, 138, 1, 139, 1, - 140, 1, 28, 140, 29, 140, 1, 141, - 143, 142, 141, 145, 144, 146, 147, 148, - 149, 150, 151, 144, 142, 141, 143, 152, - 142, 141, 143, 153, 142, 141, 143, 154, - 142, 141, 143, 155, 155, 142, 141, 143, - 155, 155, 156, 142, 141, 143, 157, 157, - 158, 142, 141, 143, 159, 160, 159, 142, - 141, 143, 160, 160, 161, 142, 141, 143, - 162, 163, 162, 164, 142, 141, 143, 162, - 163, 162, 142, 141, 143, 165, 165, 142, - 141, 143, 166, 167, 166, 142, 141, 143, - 167, 168, 169, 167, 170, 142, 141, 143, - 170, 142, 141, 143, 171, 172, 171, 173, - 142, 141, 143, 171, 172, 171, 142, 141, - 143, 174, 175, 176, 174, 177, 142, 141, - 143, 177, 142, 141, 143, 178, 179, 178, - 180, 142, 141, 143, 178, 179, 178, 142, - 141, 143, 181, 182, 183, 181, 184, 142, - 141, 143, 184, 142, 141, 143, 185, 186, - 185, 187, 142, 141, 143, 185, 186, 185, - 142, 141, 189, 188, 190, 188, 142, 141, - 189, 188, 190, 191, 188, 191, 191, 191, - 142, 141, 189, 190, 141, 193, 192, 194, - 196, 192, 195, 196, 196, 196, 142, 141, - 189, 197, 190, 199, 197, 198, 199, 199, - 199, 142, 141, 143, 198, 199, 198, 198, - 199, 199, 199, 142, 141, 201, 200, 202, - 199, 200, 198, 199, 199, 199, 142, 141, - 143, 185, 186, 185, 187, 142, 141, 143, - 203, 142, 141, 143, 204, 205, 204, 206, - 142, 141, 143, 204, 205, 204, 206, 142, - 141, 143, 178, 179, 178, 180, 142, 141, - 143, 207, 142, 141, 143, 208, 209, 208, - 210, 142, 141, 143, 208, 209, 208, 210, - 142, 141, 143, 171, 172, 171, 173, 142, - 141, 143, 211, 142, 141, 143, 212, 213, - 212, 214, 142, 141, 143, 212, 213, 212, - 214, 142, 141, 143, 162, 163, 162, 164, - 142, 141, 143, 157, 157, 158, 142, 141, - 143, 215, 142, 141, 143, 216, 142, 141, - 143, 217, 142, 141, 143, 219, 218, 218, - 218, 218, 142, 141, 143, 220, 220, 142, - 141, 143, 220, 220, 221, 142, 141, 223, - 222, 224, 222, 225, 142, 141, 227, 226, - 228, 226, 221, 142, 141, 227, 228, 141, - 223, 222, 224, 222, 225, 142, 141, 143, - 229, 142, 141, 143, 230, 142, 141, 143, - 231, 142, 141, 143, 232, 142, 141, 143, - 233, 142, 141, 143, 234, 142, 141, 143, - 235, 142, 141, 143, 236, 142, 141, 143, - 237, 142, 141, 143, 238, 238, 142, 141, - 143, 238, 238, 239, 142, 141, 143, 240, - 240, 241, 142, 141, 143, 240, 240, 242, - 142, 141, 244, 243, 245, 243, 246, 142, - 141, 244, 243, 245, 243, 142, 141, 244, - 245, 141, 244, 243, 245, 243, 246, 142, - 141, 143, 240, 240, 241, 142, 141, 143, - 247, 142, 141, 143, 248, 142, 141, 143, - 249, 142, 141, 143, 250, 142, 141, 143, - 251, 142, 141, 253, 252, 254, 255, 252, - 142, 141, 257, 256, 258, 259, 256, 142, - 141, 257, 258, 141, 143, 260, 261, 262, - 260, 262, 262, 262, 142, 141, 143, 260, - 262, 260, 262, 262, 262, 142, 141, 143, - 263, 264, 266, 263, 265, 266, 266, 266, - 142, 141, 143, 267, 261, 269, 267, 268, - 269, 269, 269, 142, 141, 257, 261, 258, - 261, 142, 141, 143, 268, 269, 268, 268, - 269, 269, 269, 142, 141, 143, 270, 271, - 269, 270, 268, 269, 269, 269, 142, 141, - 143, 272, 142, 141, 143, 273, 142, 141, - 143, 274, 142, 141, 143, 275, 142, 141, - 143, 275, 276, 275, 142, 141, 143, 276, - 277, 276, 277, 277, 277, 142, 141, 143, - 278, 279, 281, 278, 280, 281, 281, 281, - 142, 141, 143, 282, 283, 285, 282, 284, - 285, 285, 285, 142, 141, 286, 283, 287, - 283, 142, 141, 286, 287, 141, 143, 284, - 285, 284, 284, 285, 285, 285, 142, 141, - 143, 288, 289, 285, 288, 284, 285, 285, - 285, 142, 141, 143, 290, 142, 141, 143, - 291, 142, 141, 143, 292, 142, 141, 143, - 293, 293, 142, 141, 143, 293, 294, 295, - 296, 293, 142, 141, 143, 297, 142, 141, - 143, 298, 142, 141, 143, 299, 142, 141, - 143, 300, 300, 142, 141, 143, 300, 301, - 300, 301, 301, 301, 142, 141, 143, 302, - 305, 304, 302, 303, 304, 304, 304, 142, - 141, 143, 306, 309, 308, 306, 307, 308, - 308, 308, 142, 141, 143, 307, 308, 307, - 307, 308, 308, 308, 142, 141, 143, 310, - 311, 308, 310, 307, 308, 308, 308, 142, - 141, 143, 309, 312, 309, 312, 312, 312, - 142, 141, 314, 313, 315, 317, 313, 316, - 317, 317, 317, 142, 141, 319, 318, 320, - 322, 318, 321, 322, 322, 322, 142, 141, - 319, 320, 141, 143, 321, 322, 321, 321, - 322, 322, 322, 142, 141, 324, 323, 325, - 322, 323, 321, 322, 322, 322, 142, 141, - 143, 326, 142, 141, 143, 327, 142, 141, - 143, 328, 142, 141, 143, 329, 142, 141, - 143, 330, 330, 142, 141, 143, 330, 331, - 330, 331, 331, 331, 142, 141, 143, 332, - 335, 334, 332, 333, 334, 334, 334, 142, - 141, 143, 336, 339, 338, 336, 337, 338, - 338, 338, 142, 141, 143, 337, 338, 337, - 337, 338, 338, 338, 142, 141, 143, 340, - 341, 338, 340, 337, 338, 338, 338, 142, - 141, 143, 339, 342, 339, 342, 342, 342, - 142, 141, 344, 343, 345, 347, 343, 346, - 347, 347, 347, 142, 141, 349, 348, 350, - 352, 348, 351, 352, 352, 352, 142, 141, - 349, 350, 141, 143, 351, 352, 351, 351, - 352, 352, 352, 142, 141, 354, 353, 355, - 352, 353, 351, 352, 352, 352, 142, 141, - 143, 356, 142, 141, 143, 357, 142, 141, - 143, 358, 142, 141, 143, 359, 142, 141, - 143, 360, 142, 141, 143, 361, 142, 141, - 143, 362, 142, 141, 143, 363, 142, 141, - 143, 364, 364, 142, 141, 143, 364, 365, - 364, 365, 365, 365, 142, 141, 143, 366, - 369, 368, 366, 367, 368, 368, 368, 142, - 141, 143, 370, 373, 372, 370, 371, 372, - 372, 372, 142, 141, 143, 371, 372, 371, - 371, 372, 372, 372, 142, 141, 143, 374, - 375, 372, 374, 371, 372, 372, 372, 142, - 141, 143, 373, 376, 373, 376, 376, 376, - 142, 141, 378, 377, 379, 381, 377, 380, - 381, 381, 381, 142, 141, 383, 382, 384, - 386, 382, 385, 386, 386, 386, 142, 141, - 383, 384, 141, 143, 385, 386, 385, 385, - 386, 386, 386, 142, 141, 388, 387, 389, - 386, 387, 385, 386, 386, 386, 142, 141, - 143, 390, 142, 141, 143, 391, 142, 141, - 143, 392, 392, 142, 141, 143, 392, 393, - 392, 142, 141, 143, 393, 394, 393, 394, - 394, 394, 142, 141, 143, 395, 396, 398, - 395, 397, 398, 398, 398, 142, 141, 143, - 399, 400, 402, 399, 401, 402, 402, 402, - 142, 141, 404, 403, 405, 403, 142, 141, - 404, 403, 405, 406, 403, 406, 406, 406, - 142, 141, 404, 405, 141, 408, 407, 409, - 411, 407, 410, 411, 411, 411, 142, 141, - 404, 412, 405, 414, 412, 413, 414, 414, - 414, 142, 141, 143, 413, 414, 413, 413, - 414, 414, 414, 142, 141, 416, 415, 417, - 414, 415, 413, 414, 414, 414, 142, 141, - 143, 401, 402, 401, 401, 402, 402, 402, - 142, 141, 143, 418, 419, 402, 418, 401, - 402, 402, 402, 142, 1, 421, 420, 106, - 1, 145, 144, 420, 146, 147, 148, 149, - 150, 151, 144, 142, 422, 145, 144, 146, - 147, 148, 149, 150, 151, 144, 142, 0 + 59, 1, 60, 1, 61, 61, 62, 61, + 1, 63, 63, 64, 63, 1, 64, 64, + 65, 64, 65, 65, 65, 1, 66, 66, + 67, 69, 66, 68, 69, 69, 69, 1, + 70, 70, 71, 73, 70, 72, 73, 73, + 73, 1, 75, 74, 76, 74, 1, 75, + 74, 76, 77, 74, 77, 77, 77, 1, + 79, 78, 80, 78, 1, 81, 1, 82, + 1, 83, 1, 84, 83, 85, 83, 1, + 87, 86, 88, 86, 1, 89, 1, 90, + 1, 91, 1, 92, 1, 92, 92, 93, + 92, 1, 93, 93, 94, 93, 1, 95, + 1, 96, 1, 97, 1, 98, 1, 99, + 1, 100, 1, 101, 1, 102, 1, 102, + 102, 103, 102, 1, 104, 103, 105, 103, + 1, 107, 106, 108, 106, 1, 109, 1, + 110, 1, 111, 111, 111, 1, 1, 104, + 105, 1, 84, 85, 1, 75, 76, 113, + 112, 114, 116, 112, 115, 116, 116, 116, + 1, 75, 117, 76, 119, 117, 118, 119, + 119, 119, 1, 118, 118, 119, 118, 118, + 119, 119, 119, 1, 121, 120, 122, 119, + 120, 118, 119, 119, 119, 1, 72, 72, + 73, 72, 72, 73, 73, 73, 1, 123, + 123, 124, 73, 123, 72, 73, 73, 73, + 1, 1, 52, 53, 125, 1, 126, 1, + 127, 1, 128, 1, 129, 1, 130, 130, + 130, 1, 130, 130, 130, 131, 1, 133, + 132, 134, 132, 135, 1, 137, 136, 138, + 136, 1, 137, 139, 32, 139, 1, 1, + 137, 138, 133, 132, 134, 132, 135, 1, + 1, 28, 29, 140, 140, 140, 1, 140, + 140, 140, 141, 1, 142, 1, 143, 1, + 144, 1, 145, 1, 146, 1, 147, 147, + 147, 1, 147, 147, 148, 147, 1, 149, + 1, 150, 1, 151, 1, 152, 1, 153, + 1, 154, 1, 155, 1, 156, 1, 28, + 156, 29, 156, 1, 157, 159, 158, 157, + 161, 160, 162, 163, 164, 165, 166, 167, + 160, 158, 157, 159, 168, 158, 157, 159, + 169, 158, 157, 159, 170, 158, 157, 159, + 171, 171, 158, 157, 159, 171, 171, 172, + 158, 157, 159, 173, 173, 174, 158, 157, + 159, 175, 176, 175, 158, 157, 159, 176, + 176, 177, 158, 157, 159, 178, 179, 178, + 180, 158, 157, 159, 178, 179, 178, 158, + 157, 159, 181, 181, 158, 157, 159, 182, + 183, 182, 158, 157, 159, 183, 184, 185, + 183, 186, 158, 157, 159, 186, 158, 157, + 159, 187, 188, 187, 189, 158, 157, 159, + 187, 188, 187, 158, 157, 159, 190, 191, + 192, 190, 193, 158, 157, 159, 193, 158, + 157, 159, 194, 195, 194, 196, 158, 157, + 159, 194, 195, 194, 158, 157, 159, 197, + 198, 199, 197, 200, 158, 157, 159, 200, + 158, 157, 159, 201, 202, 201, 203, 158, + 157, 159, 201, 202, 201, 158, 157, 205, + 204, 206, 204, 158, 157, 205, 204, 206, + 207, 204, 207, 207, 207, 158, 157, 205, + 206, 157, 209, 208, 210, 212, 208, 211, + 212, 212, 212, 158, 157, 205, 213, 206, + 215, 213, 214, 215, 215, 215, 158, 157, + 159, 214, 215, 214, 214, 215, 215, 215, + 158, 157, 217, 216, 218, 215, 216, 214, + 215, 215, 215, 158, 157, 159, 201, 202, + 201, 203, 158, 157, 159, 219, 158, 157, + 159, 220, 221, 220, 222, 158, 157, 159, + 220, 221, 220, 222, 158, 157, 159, 194, + 195, 194, 196, 158, 157, 159, 223, 158, + 157, 159, 224, 225, 224, 226, 158, 157, + 159, 224, 225, 224, 226, 158, 157, 159, + 187, 188, 187, 189, 158, 157, 159, 227, + 158, 157, 159, 228, 229, 228, 230, 158, + 157, 159, 228, 229, 228, 230, 158, 157, + 159, 178, 179, 178, 180, 158, 157, 159, + 173, 173, 174, 158, 157, 159, 231, 158, + 157, 159, 232, 158, 157, 159, 233, 158, + 157, 159, 235, 234, 234, 234, 234, 158, + 157, 159, 236, 236, 158, 157, 159, 236, + 236, 237, 158, 157, 239, 238, 240, 238, + 241, 158, 157, 243, 242, 244, 242, 237, + 158, 157, 243, 244, 157, 239, 238, 240, + 238, 241, 158, 157, 159, 245, 158, 157, + 159, 246, 158, 157, 159, 247, 158, 157, + 159, 248, 158, 157, 159, 249, 158, 157, + 159, 250, 158, 157, 159, 251, 158, 157, + 159, 252, 158, 157, 159, 253, 158, 157, + 159, 254, 254, 158, 157, 159, 254, 254, + 255, 158, 157, 159, 256, 256, 257, 158, + 157, 159, 256, 256, 258, 158, 157, 260, + 259, 261, 259, 262, 158, 157, 260, 259, + 261, 259, 158, 157, 260, 261, 157, 260, + 259, 261, 259, 262, 158, 157, 159, 256, + 256, 257, 158, 157, 159, 263, 158, 157, + 159, 264, 158, 157, 159, 265, 158, 157, + 159, 266, 158, 157, 159, 267, 158, 157, + 269, 268, 270, 271, 268, 158, 157, 273, + 272, 274, 275, 272, 158, 157, 273, 274, + 157, 159, 276, 277, 278, 276, 278, 278, + 278, 158, 157, 159, 276, 278, 276, 278, + 278, 278, 158, 157, 159, 279, 280, 282, + 279, 281, 282, 282, 282, 158, 157, 159, + 283, 277, 285, 283, 284, 285, 285, 285, + 158, 157, 273, 277, 274, 277, 158, 157, + 159, 284, 285, 284, 284, 285, 285, 285, + 158, 157, 159, 286, 287, 285, 286, 284, + 285, 285, 285, 158, 157, 159, 288, 158, + 157, 159, 289, 158, 157, 159, 290, 158, + 157, 159, 291, 158, 157, 159, 292, 293, + 292, 158, 157, 159, 294, 295, 294, 158, + 157, 159, 295, 296, 295, 296, 296, 296, + 158, 157, 159, 297, 298, 300, 297, 299, + 300, 300, 300, 158, 157, 159, 301, 302, + 304, 301, 303, 304, 304, 304, 158, 157, + 306, 305, 307, 305, 158, 157, 306, 305, + 307, 308, 305, 308, 308, 308, 158, 157, + 306, 307, 157, 310, 309, 311, 313, 309, + 312, 313, 313, 313, 158, 157, 306, 314, + 307, 316, 314, 315, 316, 316, 316, 158, + 157, 159, 315, 316, 315, 315, 316, 316, + 316, 158, 157, 318, 317, 319, 316, 317, + 315, 316, 316, 316, 158, 157, 159, 303, + 304, 303, 303, 304, 304, 304, 158, 157, + 159, 320, 321, 304, 320, 303, 304, 304, + 304, 158, 157, 159, 322, 158, 157, 159, + 323, 158, 157, 159, 324, 158, 157, 159, + 325, 325, 158, 157, 159, 325, 326, 327, + 328, 325, 158, 157, 159, 329, 158, 157, + 159, 330, 158, 157, 159, 331, 158, 157, + 159, 332, 332, 158, 157, 159, 332, 333, + 332, 333, 333, 333, 158, 157, 159, 334, + 337, 336, 334, 335, 336, 336, 336, 158, + 157, 159, 338, 341, 340, 338, 339, 340, + 340, 340, 158, 157, 159, 339, 340, 339, + 339, 340, 340, 340, 158, 157, 159, 342, + 343, 340, 342, 339, 340, 340, 340, 158, + 157, 159, 341, 344, 341, 344, 344, 344, + 158, 157, 346, 345, 347, 349, 345, 348, + 349, 349, 349, 158, 157, 351, 350, 352, + 354, 350, 353, 354, 354, 354, 158, 157, + 351, 352, 157, 159, 353, 354, 353, 353, + 354, 354, 354, 158, 157, 356, 355, 357, + 354, 355, 353, 354, 354, 354, 158, 157, + 159, 358, 158, 157, 159, 359, 158, 157, + 159, 360, 158, 157, 159, 361, 158, 157, + 159, 362, 362, 158, 157, 159, 362, 363, + 362, 363, 363, 363, 158, 157, 159, 364, + 367, 366, 364, 365, 366, 366, 366, 158, + 157, 159, 368, 371, 370, 368, 369, 370, + 370, 370, 158, 157, 159, 369, 370, 369, + 369, 370, 370, 370, 158, 157, 159, 372, + 373, 370, 372, 369, 370, 370, 370, 158, + 157, 159, 371, 374, 371, 374, 374, 374, + 158, 157, 376, 375, 377, 379, 375, 378, + 379, 379, 379, 158, 157, 381, 380, 382, + 384, 380, 383, 384, 384, 384, 158, 157, + 381, 382, 157, 159, 383, 384, 383, 383, + 384, 384, 384, 158, 157, 386, 385, 387, + 384, 385, 383, 384, 384, 384, 158, 157, + 159, 388, 158, 157, 159, 389, 158, 157, + 159, 390, 158, 157, 159, 391, 158, 157, + 159, 392, 158, 157, 159, 393, 158, 157, + 159, 394, 158, 157, 159, 395, 158, 157, + 159, 396, 396, 158, 157, 159, 396, 397, + 396, 397, 397, 397, 158, 157, 159, 398, + 401, 400, 398, 399, 400, 400, 400, 158, + 157, 159, 402, 405, 404, 402, 403, 404, + 404, 404, 158, 157, 159, 403, 404, 403, + 403, 404, 404, 404, 158, 157, 159, 406, + 407, 404, 406, 403, 404, 404, 404, 158, + 157, 159, 405, 408, 405, 408, 408, 408, + 158, 157, 410, 409, 411, 413, 409, 412, + 413, 413, 413, 158, 157, 415, 414, 416, + 418, 414, 417, 418, 418, 418, 158, 157, + 415, 416, 157, 159, 417, 418, 417, 417, + 418, 418, 418, 158, 157, 420, 419, 421, + 418, 419, 417, 418, 418, 418, 158, 157, + 159, 422, 158, 157, 159, 423, 158, 157, + 159, 424, 424, 158, 157, 159, 424, 425, + 424, 158, 157, 159, 425, 426, 425, 426, + 426, 426, 158, 157, 159, 427, 428, 430, + 427, 429, 430, 430, 430, 158, 157, 159, + 431, 432, 434, 431, 433, 434, 434, 434, + 158, 157, 436, 435, 437, 435, 158, 157, + 436, 435, 437, 438, 435, 438, 438, 438, + 158, 157, 436, 437, 157, 440, 439, 441, + 443, 439, 442, 443, 443, 443, 158, 157, + 436, 444, 437, 446, 444, 445, 446, 446, + 446, 158, 157, 159, 445, 446, 445, 445, + 446, 446, 446, 158, 157, 448, 447, 449, + 446, 447, 445, 446, 446, 446, 158, 157, + 159, 433, 434, 433, 433, 434, 434, 434, + 158, 157, 159, 450, 451, 434, 450, 433, + 434, 434, 434, 158, 1, 453, 452, 111, + 1, 161, 160, 452, 162, 163, 164, 165, + 166, 167, 160, 158, 454, 161, 160, 162, + 163, 164, 165, 166, 167, 160, 158, 0 }; static const short _parse_tester_trans_targs_wi[] = { 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 99, 100, 27, - 28, 87, 29, 30, 31, 32, 33, 34, + 23, 24, 25, 26, 27, 105, 106, 27, + 28, 93, 29, 30, 31, 32, 33, 34, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 86, 45, 45, - 46, 47, 48, 49, 50, 51, 52, 53, - 54, 84, 85, 53, 54, 84, 85, 55, - 83, 55, 55, 56, 57, 58, 59, 60, - 82, 60, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 81, 77, 77, 78, - 79, 80, 293, 53, 54, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, - 95, 96, 97, 96, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 294, 118, 294, - 119, 295, 120, 165, 193, 208, 220, 276, - 121, 122, 123, 124, 125, 126, 164, 126, - 127, 128, 129, 130, 163, 131, 131, 132, - 133, 160, 134, 135, 136, 159, 136, 137, - 156, 138, 139, 140, 155, 140, 141, 152, - 142, 143, 144, 151, 145, 294, 146, 147, - 148, 294, 146, 149, 150, 148, 149, 150, - 148, 294, 146, 153, 143, 144, 154, 157, - 139, 140, 158, 161, 135, 136, 162, 166, - 167, 168, 169, 175, 170, 171, 172, 294, - 173, 174, 172, 294, 173, 176, 177, 178, - 179, 180, 181, 182, 183, 184, 185, 186, - 187, 192, 188, 189, 294, 190, 191, 194, - 195, 196, 197, 198, 199, 294, 200, 201, - 199, 294, 200, 201, 202, 205, 203, 204, - 205, 206, 207, 204, 206, 207, 204, 205, - 209, 210, 211, 212, 213, 214, 215, 216, - 218, 219, 215, 216, 218, 219, 294, 217, - 215, 216, 221, 222, 223, 224, 225, 240, - 256, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 231, 232, 233, 234, 231, 234, - 235, 236, 294, 237, 238, 239, 236, 294, - 237, 238, 239, 236, 294, 237, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, - 247, 248, 249, 250, 247, 250, 251, 252, - 294, 253, 254, 255, 252, 294, 253, 254, - 255, 252, 294, 253, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 267, 268, 269, 270, 267, 270, - 271, 272, 294, 273, 274, 275, 272, 294, - 273, 274, 275, 272, 294, 273, 277, 278, - 279, 280, 281, 282, 283, 290, 291, 282, - 283, 290, 291, 284, 294, 285, 286, 287, - 294, 285, 288, 289, 287, 288, 289, 287, - 294, 285, 282, 283, 292, 294, 294 + 41, 42, 43, 44, 45, 92, 45, 45, + 46, 47, 48, 49, 50, 51, 52, 51, + 52, 53, 54, 55, 90, 91, 54, 55, + 90, 91, 56, 57, 85, 86, 57, 57, + 58, 59, 60, 61, 62, 84, 62, 62, + 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, + 79, 83, 79, 79, 80, 81, 82, 305, + 87, 57, 85, 88, 89, 87, 88, 89, + 87, 57, 85, 54, 55, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, + 101, 102, 103, 102, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 306, 124, 306, + 125, 307, 126, 171, 199, 214, 232, 288, + 127, 128, 129, 130, 131, 132, 170, 132, + 133, 134, 135, 136, 169, 137, 137, 138, + 139, 166, 140, 141, 142, 165, 142, 143, + 162, 144, 145, 146, 161, 146, 147, 158, + 148, 149, 150, 157, 151, 306, 152, 153, + 154, 306, 152, 155, 156, 154, 155, 156, + 154, 306, 152, 159, 149, 150, 160, 163, + 145, 146, 164, 167, 141, 142, 168, 172, + 173, 174, 175, 181, 176, 177, 178, 306, + 179, 180, 178, 306, 179, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, + 193, 198, 194, 195, 306, 196, 197, 200, + 201, 202, 203, 204, 205, 306, 206, 207, + 205, 306, 206, 207, 208, 211, 209, 210, + 211, 212, 213, 210, 212, 213, 210, 211, + 215, 216, 217, 218, 219, 220, 219, 220, + 221, 222, 223, 230, 231, 222, 223, 230, + 231, 224, 306, 225, 226, 227, 306, 225, + 228, 229, 227, 228, 229, 227, 306, 225, + 222, 223, 233, 234, 235, 236, 237, 252, + 268, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 243, 244, 245, 246, 243, 246, + 247, 248, 306, 249, 250, 251, 248, 306, + 249, 250, 251, 248, 306, 249, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, + 259, 260, 261, 262, 259, 262, 263, 264, + 306, 265, 266, 267, 264, 306, 265, 266, + 267, 264, 306, 265, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 279, 280, 281, 282, 279, 282, + 283, 284, 306, 285, 286, 287, 284, 306, + 285, 286, 287, 284, 306, 285, 289, 290, + 291, 292, 293, 294, 295, 302, 303, 294, + 295, 302, 303, 296, 306, 297, 298, 299, + 306, 297, 300, 301, 299, 300, 301, 299, + 306, 297, 294, 295, 304, 306, 306 }; static const unsigned char _parse_tester_trans_actions_wi[] = { @@ -8909,80 +9088,86 @@ static const unsigned char _parse_tester_trans_actions_wi[] = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 119, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 81, - 81, 13, 78, 0, 0, 0, 15, 123, - 0, 0, 1, 0, 0, 0, 0, 57, - 0, 0, 1, 41, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 131, 0, 0, 1, 0, - 0, 0, 0, 17, 17, 0, 0, 0, - 0, 0, 0, 0, 47, 93, 47, 5, + 0, 0, 0, 0, 121, 0, 0, 1, + 0, 0, 0, 0, 0, 41, 41, 0, + 0, 0, 83, 83, 13, 80, 0, 0, + 0, 15, 0, 125, 0, 0, 0, 1, + 0, 0, 0, 0, 59, 0, 0, 1, + 43, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 133, 0, 0, 1, 0, 0, 0, 0, + 86, 210, 86, 13, 80, 0, 0, 15, + 19, 172, 19, 17, 17, 0, 0, 0, + 0, 0, 0, 0, 49, 95, 49, 5, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 66, - 0, 151, 0, 0, 43, 0, 90, 35, + 0, 0, 0, 0, 0, 57, 0, 68, + 0, 153, 0, 0, 45, 0, 92, 35, 0, 0, 0, 0, 0, 21, 5, 0, 0, 0, 0, 0, 5, 23, 0, 0, 0, 0, 0, 0, 25, 5, 0, 0, 0, 0, 0, 27, 5, 0, 0, 0, - 0, 0, 29, 5, 0, 99, 0, 0, - 143, 210, 143, 13, 78, 0, 0, 15, - 87, 204, 87, 0, 11, 75, 5, 0, - 11, 72, 5, 0, 11, 69, 5, 0, - 0, 0, 33, 0, 0, 0, 31, 147, - 31, 5, 0, 60, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5, 0, 0, 103, 0, 9, 0, - 0, 0, 0, 0, 45, 175, 45, 45, - 0, 135, 0, 0, 0, 0, 0, 81, - 81, 13, 78, 0, 0, 15, 17, 17, - 0, 0, 0, 0, 0, 0, 81, 81, - 13, 78, 0, 0, 0, 15, 127, 0, + 0, 0, 29, 5, 0, 101, 0, 0, + 145, 234, 145, 13, 80, 0, 0, 15, + 89, 228, 89, 0, 11, 77, 5, 0, + 11, 74, 5, 0, 11, 71, 5, 0, + 0, 0, 33, 0, 0, 0, 31, 149, + 31, 5, 0, 62, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5, 0, 0, 105, 0, 9, 0, + 0, 0, 0, 0, 47, 187, 47, 47, + 0, 137, 0, 0, 0, 0, 0, 83, + 83, 13, 80, 0, 0, 15, 17, 17, + 0, 0, 0, 0, 41, 41, 0, 0, + 0, 83, 83, 13, 80, 0, 0, 0, + 15, 0, 129, 0, 0, 86, 216, 86, + 13, 80, 0, 0, 15, 19, 177, 19, 17, 17, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 81, 13, - 78, 81, 0, 0, 15, 0, 17, 17, - 0, 84, 180, 84, 13, 78, 0, 107, - 0, 0, 15, 19, 155, 19, 0, 0, - 0, 0, 0, 0, 81, 13, 78, 81, - 0, 0, 15, 0, 17, 17, 0, 84, - 192, 84, 13, 78, 0, 115, 0, 0, - 15, 19, 165, 19, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 81, 13, - 78, 81, 0, 0, 15, 0, 17, 17, - 0, 84, 198, 84, 13, 78, 0, 139, - 0, 0, 15, 19, 170, 19, 0, 0, - 0, 0, 0, 81, 81, 13, 78, 0, - 0, 0, 15, 0, 111, 0, 0, 84, - 186, 84, 13, 78, 0, 0, 15, 19, - 160, 19, 17, 17, 0, 63, 53 + 0, 0, 0, 0, 0, 0, 83, 13, + 80, 83, 0, 0, 15, 0, 17, 17, + 0, 86, 192, 86, 13, 80, 0, 109, + 0, 0, 15, 19, 157, 19, 0, 0, + 0, 0, 0, 0, 83, 13, 80, 83, + 0, 0, 15, 0, 17, 17, 0, 86, + 204, 86, 13, 80, 0, 117, 0, 0, + 15, 19, 167, 19, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 83, 13, + 80, 83, 0, 0, 15, 0, 17, 17, + 0, 86, 222, 86, 13, 80, 0, 141, + 0, 0, 15, 19, 182, 19, 0, 0, + 0, 0, 0, 83, 83, 13, 80, 0, + 0, 0, 15, 0, 113, 0, 0, 86, + 198, 86, 13, 80, 0, 0, 15, 19, + 162, 19, 17, 17, 0, 65, 55 }; static const unsigned char _parse_tester_to_state_actions[] = { - 0, 49, 0, 0, 0, 0, 0, 0, + 0, 51, 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, 49, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 49, + 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 49, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 3, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 3, 0, 0, 3, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 3, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 3, 0, 0, 0, 3, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 7, 0, 0, 0, + 3, 0, 7, 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, @@ -8993,9 +9178,9 @@ static const unsigned char _parse_tester_to_state_actions[] = { 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, 37, 0, + 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 96, 0 + 0, 0, 98, 0 }; static const unsigned char _parse_tester_from_state_actions[] = { @@ -9035,7 +9220,9 @@ static const unsigned char _parse_tester_from_state_actions[] = { 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, 51, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 53, 0 }; static const short _parse_tester_eof_trans[] = { @@ -9053,41 +9240,43 @@ static const short _parse_tester_eof_trans[] = { 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, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 0, 0, 0, 423 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 0, 0, 0, 455 }; static const int parse_tester_start = 1; -static const int parse_tester_first_final = 293; +static const int parse_tester_first_final = 305; static const int parse_tester_error = 0; -static const int parse_tester_en_group_scanner = 294; +static const int parse_tester_en_group_scanner = 306; static const int parse_tester_en_main = 1; -#line 1177 "NanorexMMPImportExportRagelTest.rl" +#line 1183 "NanorexMMPImportExportRagelTest.rl" -#line 9091 "NanorexMMPImportExportRagelTest.cpp" +#line 9280 "NanorexMMPImportExportRagelTest.cpp" { cs = parse_tester_start; top = 0; @@ -9095,9 +9284,9 @@ static const int parse_tester_en_main = 1; te = 0; act = 0; } -#line 1178 "NanorexMMPImportExportRagelTest.rl" +#line 1184 "NanorexMMPImportExportRagelTest.rl" -#line 9101 "NanorexMMPImportExportRagelTest.cpp" +#line 9290 "NanorexMMPImportExportRagelTest.cpp" { int _klen; unsigned int _trans; @@ -9114,11 +9303,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 43: + case 44: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = p;} break; -#line 9122 "NanorexMMPImportExportRagelTest.cpp" +#line 9311 "NanorexMMPImportExportRagelTest.cpp" } } @@ -9303,120 +9492,124 @@ _eof_trans: { newViewDataGroup(); } break; case 28: -#line 40 "NanorexMMPImportExportRagelTest.rl" - { newMolStructGroup(stringVal/*, stringVal2*/); } +#line 34 "NanorexMMPImportExportRagelTest.rl" + { stringVal2.clear(); } break; case 29: +#line 40 "NanorexMMPImportExportRagelTest.rl" + { newMolStructGroup(stringVal, stringVal2); } + break; + case 30: #line 47 "NanorexMMPImportExportRagelTest.rl" { end1(); } break; - case 30: + case 31: #line 51 "NanorexMMPImportExportRagelTest.rl" { lineStart = p; } break; - case 31: + case 32: #line 56 "NanorexMMPImportExportRagelTest.rl" { newClipboardGroup(); } break; - case 32: + case 33: #line 60 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 33: + case 34: #line 61 "NanorexMMPImportExportRagelTest.rl" { stringVal.clear(); } break; - case 34: + case 35: #line 67 "NanorexMMPImportExportRagelTest.rl" { endGroup(stringVal); } break; - case 35: + case 36: #line 71 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 36: + case 37: #line 81 "NanorexMMPImportExportRagelTest.rl" { newOpenGroupInfo(stringVal, stringVal2); } break; - case 37: -#line 1061 "NanorexMMPImportExportRagelTest.rl" - { kelvinTemp = intVal; } - break; case 38: -#line 1075 "NanorexMMPImportExportRagelTest.rl" - { /*cerr << "*p=" << *p << endl;*/ p--; {stack[top++] = cs; cs = 294; goto _again;} } +#line 1067 "NanorexMMPImportExportRagelTest.rl" + { kelvinTemp = intVal; } break; case 39: -#line 1078 "NanorexMMPImportExportRagelTest.rl" - { p--; {stack[top++] = cs; cs = 294; goto _again;} } +#line 1081 "NanorexMMPImportExportRagelTest.rl" + { /*cerr << "*p=" << *p << endl;*/ p--; {stack[top++] = cs; cs = 306; goto _again;} } break; case 40: -#line 1083 "NanorexMMPImportExportRagelTest.rl" - { p--; {stack[top++] = cs; cs = 294; goto _again;} } +#line 1084 "NanorexMMPImportExportRagelTest.rl" + { p--; {stack[top++] = cs; cs = 306; goto _again;} } break; - case 44: + case 41: +#line 1089 "NanorexMMPImportExportRagelTest.rl" + { p--; {stack[top++] = cs; cs = 306; goto _again;} } + break; + case 45: #line 1 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 45: + case 46: #line 102 "NanorexMMPImportExportRagelTest.rl" {act = 11;} break; - case 46: + case 47: #line 89 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 47: + case 48: #line 90 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 48: + case 49: #line 91 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{{cs = stack[--top]; goto _again;}}} break; - case 49: + case 50: #line 92 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 50: + case 51: #line 93 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 51: + case 52: #line 94 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 52: + case 53: #line 95 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 53: + case 54: #line 96 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 54: + case 55: #line 97 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 55: + case 56: #line 100 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 56: + case 57: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 57: + case 58: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p;p--;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 58: + case 59: #line 1 "NanorexMMPImportExportRagelTest.rl" { switch( act ) { case 0: @@ -9432,7 +9625,7 @@ _eof_trans: } } break; -#line 9436 "NanorexMMPImportExportRagelTest.cpp" +#line 9629 "NanorexMMPImportExportRagelTest.cpp" } } @@ -9453,15 +9646,15 @@ _again: #line 11 "NanorexMMPImportExportRagelTest.rl" { stringVal2.clear(); /* 'style' string optional */ } break; - case 41: + case 42: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = 0;} break; - case 42: + case 43: #line 1 "NanorexMMPImportExportRagelTest.rl" {act = 0;} break; -#line 9465 "NanorexMMPImportExportRagelTest.cpp" +#line 9658 "NanorexMMPImportExportRagelTest.cpp" } } @@ -9480,7 +9673,7 @@ _again: _out: {} } -#line 1179 "NanorexMMPImportExportRagelTest.rl" +#line 1185 "NanorexMMPImportExportRagelTest.rl" } @@ -9587,38 +9780,41 @@ fileParseTestHelper(RagelIstreamPtr& p, RagelIstreamPtr& pe) RagelIstreamPtr charStringWithSpaceStart, charStringWithSpaceStop; RagelIstreamPtr lineStart; - #line 1286 "NanorexMMPImportExportRagelTest.rl" + #line 1292 "NanorexMMPImportExportRagelTest.rl" -#line 9593 "NanorexMMPImportExportRagelTest.cpp" +#line 9786 "NanorexMMPImportExportRagelTest.cpp" static const char _parse_tester_actions[] = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 17, 1, 18, 1, 21, 1, 22, 1, - 26, 1, 30, 1, 32, 1, 33, 1, - 37, 1, 41, 1, 43, 1, 57, 1, - 58, 2, 0, 29, 2, 0, 53, 2, - 0, 55, 2, 0, 56, 2, 5, 12, - 2, 5, 13, 2, 5, 14, 2, 6, - 7, 2, 6, 8, 2, 6, 9, 2, - 8, 15, 2, 35, 24, 2, 37, 0, - 2, 41, 42, 3, 0, 16, 51, 3, - 0, 19, 54, 3, 0, 20, 52, 3, - 0, 23, 49, 3, 0, 25, 50, 3, - 0, 27, 38, 3, 0, 28, 39, 3, - 0, 28, 46, 3, 0, 31, 40, 3, - 0, 34, 48, 3, 0, 36, 47, 3, - 6, 8, 15, 3, 17, 0, 53, 3, - 44, 0, 45, 4, 9, 0, 20, 52, - 4, 9, 0, 23, 49, 4, 9, 0, - 25, 50, 4, 9, 0, 36, 47, 4, - 33, 0, 34, 48, 5, 6, 9, 0, - 20, 52, 5, 6, 9, 0, 23, 49, - 5, 6, 9, 0, 25, 50, 5, 6, - 9, 0, 36, 47, 5, 8, 15, 0, - 16, 51, 6, 6, 8, 15, 0, 16, - 51 + 26, 1, 28, 1, 31, 1, 33, 1, + 34, 1, 38, 1, 42, 1, 44, 1, + 58, 1, 59, 2, 0, 30, 2, 0, + 54, 2, 0, 56, 2, 0, 57, 2, + 5, 12, 2, 5, 13, 2, 5, 14, + 2, 6, 7, 2, 6, 8, 2, 6, + 9, 2, 8, 15, 2, 36, 24, 2, + 38, 0, 2, 42, 43, 3, 0, 16, + 52, 3, 0, 19, 55, 3, 0, 20, + 53, 3, 0, 23, 50, 3, 0, 25, + 51, 3, 0, 27, 39, 3, 0, 29, + 40, 3, 0, 29, 47, 3, 0, 32, + 41, 3, 0, 35, 49, 3, 0, 37, + 48, 3, 6, 8, 15, 3, 17, 0, + 54, 3, 45, 0, 46, 4, 9, 0, + 20, 53, 4, 9, 0, 23, 50, 4, + 9, 0, 25, 51, 4, 9, 0, 29, + 40, 4, 9, 0, 29, 47, 4, 9, + 0, 37, 48, 4, 34, 0, 35, 49, + 5, 6, 9, 0, 20, 53, 5, 6, + 9, 0, 23, 50, 5, 6, 9, 0, + 25, 51, 5, 6, 9, 0, 29, 40, + 5, 6, 9, 0, 29, 47, 5, 6, + 9, 0, 37, 48, 5, 8, 15, 0, + 16, 52, 6, 6, 8, 15, 0, 16, + 52 }; static const short _parse_tester_key_offsets[] = { @@ -9628,37 +9824,39 @@ static const short _parse_tester_key_offsets[] = { 47, 48, 49, 55, 61, 62, 63, 64, 65, 70, 75, 80, 81, 82, 83, 87, 92, 93, 94, 95, 100, 102, 107, 108, - 109, 110, 111, 116, 127, 141, 155, 160, - 165, 166, 167, 168, 173, 178, 179, 180, - 181, 182, 187, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 205, 210, 215, 216, - 217, 221, 223, 225, 227, 240, 254, 256, - 257, 258, 259, 260, 261, 265, 271, 278, - 283, 288, 290, 297, 299, 303, 309, 311, - 313, 315, 317, 319, 323, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 341, 343, - 354, 357, 360, 363, 368, 375, 382, 388, - 395, 403, 409, 414, 420, 429, 433, 441, - 447, 456, 460, 468, 474, 483, 487, 495, - 501, 507, 520, 522, 537, 552, 566, 581, - 589, 593, 601, 609, 617, 621, 629, 637, - 645, 649, 657, 665, 673, 680, 683, 686, - 689, 697, 702, 709, 717, 725, 727, 735, - 738, 741, 744, 747, 750, 753, 756, 759, - 762, 767, 774, 781, 788, 796, 802, 804, - 812, 819, 822, 825, 828, 831, 834, 841, - 848, 850, 863, 875, 890, 905, 911, 925, - 940, 943, 946, 949, 952, 958, 970, 985, - 1000, 1006, 1008, 1022, 1037, 1040, 1043, 1046, - 1051, 1059, 1062, 1065, 1068, 1073, 1085, 1100, - 1115, 1129, 1144, 1156, 1171, 1186, 1188, 1202, - 1217, 1220, 1223, 1226, 1229, 1234, 1246, 1261, - 1276, 1290, 1305, 1317, 1332, 1347, 1349, 1363, - 1378, 1381, 1384, 1387, 1390, 1393, 1396, 1399, - 1402, 1407, 1419, 1434, 1449, 1463, 1478, 1490, - 1505, 1520, 1522, 1536, 1551, 1554, 1557, 1562, - 1568, 1580, 1595, 1610, 1616, 1629, 1631, 1646, - 1661, 1675, 1690, 1704, 1719, 1721, 1721, 1733 + 109, 110, 111, 116, 121, 132, 146, 160, + 165, 177, 182, 183, 184, 185, 190, 195, + 196, 197, 198, 199, 204, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 222, 227, + 232, 233, 234, 238, 240, 242, 244, 258, + 272, 285, 299, 312, 326, 328, 329, 330, + 331, 332, 333, 337, 343, 350, 355, 360, + 362, 369, 371, 375, 381, 383, 385, 387, + 389, 391, 395, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 413, 415, 426, 429, + 432, 435, 440, 447, 454, 460, 467, 475, + 481, 486, 492, 501, 505, 513, 519, 528, + 532, 540, 546, 555, 559, 567, 573, 579, + 592, 594, 609, 624, 638, 653, 661, 665, + 673, 681, 689, 693, 701, 709, 717, 721, + 729, 737, 745, 752, 755, 758, 761, 769, + 774, 781, 789, 797, 799, 807, 810, 813, + 816, 819, 822, 825, 828, 831, 834, 839, + 846, 853, 860, 868, 874, 876, 884, 891, + 894, 897, 900, 903, 906, 913, 920, 922, + 935, 947, 962, 977, 983, 997, 1012, 1015, + 1018, 1021, 1024, 1030, 1036, 1048, 1063, 1078, + 1084, 1097, 1099, 1114, 1129, 1143, 1158, 1172, + 1187, 1190, 1193, 1196, 1201, 1209, 1212, 1215, + 1218, 1223, 1235, 1250, 1265, 1279, 1294, 1306, + 1321, 1336, 1338, 1352, 1367, 1370, 1373, 1376, + 1379, 1384, 1396, 1411, 1426, 1440, 1455, 1467, + 1482, 1497, 1499, 1513, 1528, 1531, 1534, 1537, + 1540, 1543, 1546, 1549, 1552, 1557, 1569, 1584, + 1599, 1613, 1628, 1640, 1655, 1670, 1672, 1686, + 1701, 1704, 1707, 1712, 1718, 1730, 1745, 1760, + 1766, 1779, 1781, 1796, 1811, 1825, 1840, 1854, + 1869, 1871, 1871, 1883 }; static const char _parse_tester_trans_keys[] = { @@ -9676,21 +9874,30 @@ static const char _parse_tester_trans_keys[] = { 32, 68, 11, 13, 97, 116, 97, 9, 32, 41, 11, 13, 10, 35, 10, 32, 103, 9, 13, 114, 111, 117, 112, 9, - 32, 40, 11, 13, 9, 32, 95, 11, - 13, 48, 57, 65, 90, 97, 122, 9, - 32, 41, 95, 11, 13, 45, 46, 48, - 57, 65, 90, 97, 122, 9, 32, 41, - 95, 11, 13, 45, 46, 48, 57, 65, - 90, 97, 122, 10, 32, 35, 9, 13, - 10, 32, 101, 9, 13, 110, 100, 49, - 10, 32, 35, 9, 13, 10, 32, 103, - 9, 13, 114, 111, 117, 112, 9, 32, - 40, 11, 13, 9, 32, 67, 11, 13, - 108, 105, 112, 98, 111, 97, 114, 100, - 9, 32, 41, 11, 13, 10, 32, 35, - 9, 13, 10, 32, 101, 9, 13, 110, - 100, 9, 32, 11, 13, -1, 10, -1, - 10, -1, 10, 9, 32, 95, 11, 13, + 32, 40, 11, 13, 9, 32, 40, 11, + 13, 9, 32, 95, 11, 13, 48, 57, + 65, 90, 97, 122, 9, 32, 41, 95, + 11, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 9, 32, 41, 95, 11, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 10, 32, 35, 9, 13, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, 10, 32, 101, 9, 13, 110, 100, + 49, 10, 32, 35, 9, 13, 10, 32, + 103, 9, 13, 114, 111, 117, 112, 9, + 32, 40, 11, 13, 9, 32, 67, 11, + 13, 108, 105, 112, 98, 111, 97, 114, + 100, 9, 32, 41, 11, 13, 10, 32, + 35, 9, 13, 10, 32, 101, 9, 13, + 110, 100, 9, 32, 11, 13, -1, 10, + -1, 10, -1, 10, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + 9, 32, 95, 11, 13, 45, 46, 48, + 57, 65, 90, 97, 122, 10, 32, 35, + 95, 9, 13, 45, 46, 48, 57, 65, + 90, 97, 122, 9, 32, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, 9, 32, 41, 95, 11, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, @@ -9782,62 +9989,30 @@ static const char _parse_tester_trans_keys[] = { 65, 90, 97, 122, -1, 10, 114, -1, 10, 111, -1, 10, 117, -1, 10, 112, -1, 10, 32, 40, 9, 13, -1, 10, - 32, 95, 9, 13, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 41, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 41, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 35, 9, 13, -1, 10, - -1, 10, 32, 95, 9, 13, 45, 46, + 32, 40, 9, 13, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 41, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 41, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 110, - -1, 10, 102, -1, 10, 111, -1, 10, - 32, 9, 13, -1, 10, 32, 97, 99, - 111, 9, 13, -1, 10, 116, -1, 10, - 111, -1, 10, 109, -1, 10, 32, 9, - 13, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 61, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 61, 95, 9, 13, - 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, -1, 10, 32, 95, + 32, 35, 9, 13, -1, 10, 32, 35, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 104, -1, 10, 117, -1, - 10, 110, -1, 10, 107, -1, 10, 32, - 9, 13, -1, 10, 32, 95, 9, 13, + 122, -1, 10, 32, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, - 32, 61, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 61, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 61, 95, 9, - 13, 45, 46, 48, 57, 65, 90, 97, - 122, -1, 10, 32, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, 32, - 35, 95, 9, 13, 45, 46, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 35, - 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, -1, 10, 32, + 32, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 41, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 112, -1, 10, 101, - -1, 10, 110, -1, 10, 103, -1, 10, - 114, -1, 10, 111, -1, 10, 117, -1, - 10, 112, -1, 10, 32, 9, 13, -1, + 90, 97, 122, -1, 10, 110, -1, 10, + 102, -1, 10, 111, -1, 10, 32, 9, + 13, -1, 10, 32, 97, 99, 111, 9, + 13, -1, 10, 116, -1, 10, 111, -1, + 10, 109, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, @@ -9856,31 +10031,72 @@ static const char _parse_tester_trans_keys[] = { 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, - 10, 111, -1, 10, 108, -1, 10, 32, - 9, 13, -1, 10, 32, 40, 9, 13, + 10, 104, -1, 10, 117, -1, 10, 110, + -1, 10, 107, -1, 10, 32, 9, 13, -1, 10, 32, 95, 9, 13, 48, 57, - 65, 90, 97, 122, -1, 10, 32, 41, + 65, 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 41, 95, + 90, 97, 122, -1, 10, 32, 61, 95, 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 35, 9, 13, - -1, 10, 32, 35, 95, 9, 13, 48, - 57, 65, 90, 97, 122, -1, 10, -1, + 97, 122, -1, 10, 32, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, 32, 35, 95, + 9, 13, 45, 46, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 35, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 112, -1, 10, 101, -1, 10, + 110, -1, 10, 103, -1, 10, 114, -1, + 10, 111, -1, 10, 117, -1, 10, 112, + -1, 10, 32, 9, 13, -1, 10, 32, + 95, 9, 13, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 61, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 61, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, + 10, 32, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, 32, + 61, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 95, + 9, 13, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 95, 9, 13, 45, + 46, 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, -1, 10, + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, - 57, 65, 90, 97, 122, -1, 10, 32, + 57, 65, 90, 97, 122, -1, 10, 111, + -1, 10, 108, -1, 10, 32, 9, 13, + -1, 10, 32, 40, 9, 13, -1, 10, + 32, 95, 9, 13, 48, 57, 65, 90, + 97, 122, -1, 10, 32, 41, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 41, 95, 9, 13, + 45, 46, 48, 57, 65, 90, 97, 122, + -1, 10, 32, 35, 9, 13, -1, 10, + 32, 35, 95, 9, 13, 48, 57, 65, + 90, 97, 122, -1, 10, -1, 10, 32, + 35, 95, 9, 13, 45, 46, 48, 57, + 65, 90, 97, 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, - 90, 97, 122, -1, 10, 32, 35, 95, - 9, 13, 45, 46, 48, 57, 65, 90, - 97, 122, -1, 10, 32, 95, 9, 13, + 90, 97, 122, -1, 10, 32, 95, 9, + 13, 45, 46, 48, 57, 65, 90, 97, + 122, -1, 10, 32, 35, 95, 9, 13, 45, 46, 48, 57, 65, 90, 97, 122, - -1, 10, 32, 41, 95, 9, 13, 45, - 46, 48, 57, 65, 90, 97, 122, -1, - 10, -1, 10, 32, 35, 97, 98, 101, - 103, 105, 109, 9, 13, -1, 10, 32, - 97, 98, 101, 103, 105, 109, 9, 13, - 0 + -1, 10, 32, 95, 9, 13, 45, 46, + 48, 57, 65, 90, 97, 122, -1, 10, + 32, 41, 95, 9, 13, 45, 46, 48, + 57, 65, 90, 97, 122, -1, 10, -1, + 10, 32, 35, 97, 98, 101, 103, 105, + 109, 9, 13, -1, 10, 32, 97, 98, + 101, 103, 105, 109, 9, 13, 0 }; static const char _parse_tester_single_lengths[] = { @@ -9890,37 +10106,39 @@ static const char _parse_tester_single_lengths[] = { 1, 1, 4, 4, 1, 1, 1, 1, 3, 3, 3, 1, 1, 1, 2, 3, 1, 1, 1, 3, 2, 3, 1, 1, - 1, 1, 3, 3, 4, 4, 3, 3, + 1, 1, 3, 3, 3, 4, 4, 3, + 4, 3, 1, 1, 1, 3, 3, 1, 1, 1, 1, 3, 3, 1, 1, 1, - 1, 3, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 3, 3, 3, 1, 1, - 2, 2, 2, 2, 3, 4, 2, 1, - 1, 1, 1, 1, 2, 2, 3, 3, - 3, 2, 3, 2, 2, 2, 0, 0, - 0, 0, 0, 2, 3, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 9, - 3, 3, 3, 3, 3, 3, 4, 3, - 4, 4, 3, 4, 5, 2, 4, 4, - 5, 2, 4, 4, 5, 2, 4, 4, - 4, 5, 2, 5, 5, 4, 5, 4, - 2, 4, 4, 4, 2, 4, 4, 4, - 2, 4, 4, 4, 3, 3, 3, 3, - 6, 3, 3, 4, 4, 2, 4, 3, + 1, 1, 1, 1, 1, 3, 3, 3, + 1, 1, 2, 2, 2, 2, 4, 4, + 3, 4, 3, 4, 2, 1, 1, 1, + 1, 1, 2, 2, 3, 3, 3, 2, + 3, 2, 2, 2, 0, 0, 0, 0, + 0, 2, 3, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 2, 9, 3, 3, + 3, 3, 3, 3, 4, 3, 4, 4, + 3, 4, 5, 2, 4, 4, 5, 2, + 4, 4, 5, 2, 4, 4, 4, 5, + 2, 5, 5, 4, 5, 4, 2, 4, + 4, 4, 2, 4, 4, 4, 2, 4, + 4, 4, 3, 3, 3, 3, 6, 3, + 3, 4, 4, 2, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 4, 4, 2, 4, - 3, 3, 3, 3, 3, 3, 5, 5, - 2, 5, 4, 5, 5, 4, 4, 5, - 3, 3, 3, 3, 4, 4, 5, 5, - 4, 2, 4, 5, 3, 3, 3, 3, - 6, 3, 3, 3, 3, 4, 5, 5, - 4, 5, 4, 5, 5, 2, 4, 5, + 3, 3, 4, 4, 2, 4, 3, 3, + 3, 3, 3, 3, 5, 5, 2, 5, + 4, 5, 5, 4, 4, 5, 3, 3, + 3, 3, 4, 4, 4, 5, 5, 4, + 5, 2, 5, 5, 4, 5, 4, 5, + 3, 3, 3, 3, 6, 3, 3, 3, + 3, 4, 5, 5, 4, 5, 4, 5, + 5, 2, 4, 5, 3, 3, 3, 3, + 3, 4, 5, 5, 4, 5, 4, 5, + 5, 2, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 5, 5, 4, 5, 4, 5, 5, 2, 4, 5, - 3, 3, 3, 3, 3, 3, 3, 3, - 3, 4, 5, 5, 4, 5, 4, 5, - 5, 2, 4, 5, 3, 3, 3, 4, - 4, 5, 5, 4, 5, 2, 5, 5, - 4, 5, 4, 5, 2, 0, 10, 9 + 3, 3, 3, 4, 4, 5, 5, 4, + 5, 2, 5, 5, 4, 5, 4, 5, + 2, 0, 10, 9 }; static const char _parse_tester_range_lengths[] = { @@ -9930,37 +10148,39 @@ static const char _parse_tester_range_lengths[] = { 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, - 0, 0, 1, 4, 5, 5, 1, 1, + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, - 0, 1, 1, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 1, 0, 0, 0, 5, 5, 0, 0, - 0, 0, 0, 0, 1, 2, 2, 1, - 1, 0, 2, 0, 1, 2, 1, 1, - 1, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 1, - 0, 0, 0, 1, 2, 2, 1, 2, - 2, 1, 1, 1, 2, 1, 2, 1, - 2, 1, 2, 1, 2, 1, 2, 1, - 1, 4, 0, 5, 5, 5, 5, 2, - 1, 2, 2, 2, 1, 2, 2, 2, - 1, 2, 2, 2, 2, 0, 0, 0, - 1, 1, 2, 2, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 2, 2, 2, 2, 1, 0, 2, - 2, 0, 0, 0, 0, 0, 1, 1, - 0, 4, 4, 5, 5, 1, 5, 5, - 0, 0, 0, 0, 1, 4, 5, 5, - 1, 0, 5, 5, 0, 0, 0, 1, - 1, 0, 0, 0, 1, 4, 5, 5, - 5, 5, 4, 5, 5, 0, 5, 5, + 0, 0, 0, 0, 0, 1, 1, 1, + 0, 0, 1, 0, 0, 0, 5, 5, + 5, 5, 5, 5, 0, 0, 0, 0, + 0, 0, 1, 2, 2, 1, 1, 0, + 2, 0, 1, 2, 1, 1, 1, 1, + 1, 1, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 1, 0, 0, + 0, 1, 2, 2, 1, 2, 2, 1, + 1, 1, 2, 1, 2, 1, 2, 1, + 2, 1, 2, 1, 2, 1, 1, 4, + 0, 5, 5, 5, 5, 2, 1, 2, + 2, 2, 1, 2, 2, 2, 1, 2, + 2, 2, 2, 0, 0, 0, 1, 1, + 2, 2, 2, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 2, + 2, 2, 2, 1, 0, 2, 2, 0, + 0, 0, 0, 0, 1, 1, 0, 4, + 4, 5, 5, 1, 5, 5, 0, 0, + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 0, 5, 5, 5, 5, 5, 5, + 0, 0, 0, 1, 1, 0, 0, 0, + 1, 4, 5, 5, 5, 5, 4, 5, + 5, 0, 5, 5, 0, 0, 0, 0, + 1, 4, 5, 5, 5, 5, 4, 5, + 5, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 5, 5, 5, 5, 4, 5, 5, 0, 5, 5, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 4, 5, 5, 5, 5, 4, 5, - 5, 0, 5, 5, 0, 0, 1, 1, - 4, 5, 5, 1, 4, 0, 5, 5, - 5, 5, 5, 5, 0, 0, 1, 1 + 0, 0, 1, 1, 4, 5, 5, 1, + 4, 0, 5, 5, 5, 5, 5, 5, + 0, 0, 1, 1 }; static const short _parse_tester_index_offsets[] = { @@ -9970,37 +10190,39 @@ static const short _parse_tester_index_offsets[] = { 59, 61, 63, 69, 75, 77, 79, 81, 83, 88, 93, 98, 100, 102, 104, 108, 113, 115, 117, 119, 124, 127, 132, 134, - 136, 138, 140, 145, 153, 163, 173, 178, - 183, 185, 187, 189, 194, 199, 201, 203, - 205, 207, 212, 217, 219, 221, 223, 225, - 227, 229, 231, 233, 238, 243, 248, 250, - 252, 256, 259, 262, 265, 274, 284, 287, - 289, 291, 293, 295, 297, 301, 306, 312, - 317, 322, 325, 331, 334, 338, 343, 345, - 347, 349, 351, 353, 357, 362, 364, 366, - 368, 370, 372, 374, 376, 378, 383, 386, - 397, 401, 405, 409, 414, 420, 426, 432, - 438, 445, 451, 456, 462, 470, 474, 481, - 487, 495, 499, 506, 512, 520, 524, 531, - 537, 543, 553, 556, 567, 578, 588, 599, - 606, 610, 617, 624, 631, 635, 642, 649, - 656, 660, 667, 674, 681, 687, 691, 695, - 699, 707, 712, 718, 725, 732, 735, 742, - 746, 750, 754, 758, 762, 766, 770, 774, - 778, 783, 789, 795, 801, 808, 814, 817, - 824, 830, 834, 838, 842, 846, 850, 857, - 864, 867, 877, 886, 897, 908, 914, 924, - 935, 939, 943, 947, 951, 957, 966, 977, - 988, 994, 997, 1007, 1018, 1022, 1026, 1030, - 1035, 1043, 1047, 1051, 1055, 1060, 1069, 1080, - 1091, 1101, 1112, 1121, 1132, 1143, 1146, 1156, - 1167, 1171, 1175, 1179, 1183, 1188, 1197, 1208, - 1219, 1229, 1240, 1249, 1260, 1271, 1274, 1284, - 1295, 1299, 1303, 1307, 1311, 1315, 1319, 1323, - 1327, 1332, 1341, 1352, 1363, 1373, 1384, 1393, - 1404, 1415, 1418, 1428, 1439, 1443, 1447, 1452, - 1458, 1467, 1478, 1489, 1495, 1505, 1508, 1519, - 1530, 1540, 1551, 1561, 1572, 1575, 1576, 1588 + 136, 138, 140, 145, 150, 158, 168, 178, + 183, 192, 197, 199, 201, 203, 208, 213, + 215, 217, 219, 221, 226, 231, 233, 235, + 237, 239, 241, 243, 245, 247, 252, 257, + 262, 264, 266, 270, 273, 276, 279, 289, + 299, 308, 318, 327, 337, 340, 342, 344, + 346, 348, 350, 354, 359, 365, 370, 375, + 378, 384, 387, 391, 396, 398, 400, 402, + 404, 406, 410, 415, 417, 419, 421, 423, + 425, 427, 429, 431, 436, 439, 450, 454, + 458, 462, 467, 473, 479, 485, 491, 498, + 504, 509, 515, 523, 527, 534, 540, 548, + 552, 559, 565, 573, 577, 584, 590, 596, + 606, 609, 620, 631, 641, 652, 659, 663, + 670, 677, 684, 688, 695, 702, 709, 713, + 720, 727, 734, 740, 744, 748, 752, 760, + 765, 771, 778, 785, 788, 795, 799, 803, + 807, 811, 815, 819, 823, 827, 831, 836, + 842, 848, 854, 861, 867, 870, 877, 883, + 887, 891, 895, 899, 903, 910, 917, 920, + 930, 939, 950, 961, 967, 977, 988, 992, + 996, 1000, 1004, 1010, 1016, 1025, 1036, 1047, + 1053, 1063, 1066, 1077, 1088, 1098, 1109, 1119, + 1130, 1134, 1138, 1142, 1147, 1155, 1159, 1163, + 1167, 1172, 1181, 1192, 1203, 1213, 1224, 1233, + 1244, 1255, 1258, 1268, 1279, 1283, 1287, 1291, + 1295, 1300, 1309, 1320, 1331, 1341, 1352, 1361, + 1372, 1383, 1386, 1396, 1407, 1411, 1415, 1419, + 1423, 1427, 1431, 1435, 1439, 1444, 1453, 1464, + 1475, 1485, 1496, 1505, 1516, 1527, 1530, 1540, + 1551, 1555, 1559, 1564, 1570, 1579, 1590, 1601, + 1607, 1617, 1620, 1631, 1642, 1652, 1663, 1673, + 1684, 1687, 1688, 1700 }; static const short _parse_tester_indicies[] = { @@ -10021,245 +10243,263 @@ static const short _parse_tester_indicies[] = { 1, 48, 1, 49, 1, 50, 1, 50, 50, 51, 50, 1, 52, 53, 1, 55, 54, 56, 54, 1, 57, 1, 58, 1, - 59, 1, 60, 1, 60, 60, 61, 60, - 1, 61, 61, 62, 61, 62, 62, 62, - 1, 63, 63, 64, 66, 63, 65, 66, - 66, 66, 1, 67, 67, 68, 70, 67, - 69, 70, 70, 70, 1, 71, 68, 72, - 68, 1, 74, 73, 75, 73, 1, 76, - 1, 77, 1, 78, 1, 79, 78, 80, - 78, 1, 82, 81, 83, 81, 1, 84, - 1, 85, 1, 86, 1, 87, 1, 87, - 87, 88, 87, 1, 88, 88, 89, 88, - 1, 90, 1, 91, 1, 92, 1, 93, - 1, 94, 1, 95, 1, 96, 1, 97, - 1, 97, 97, 98, 97, 1, 99, 98, - 100, 98, 1, 102, 101, 103, 101, 1, - 104, 1, 105, 1, 106, 106, 106, 1, - 1, 99, 100, 1, 79, 80, 1, 71, - 72, 69, 69, 70, 69, 69, 70, 70, - 70, 1, 107, 107, 108, 70, 107, 69, - 70, 70, 70, 1, 1, 52, 53, 109, - 1, 110, 1, 111, 1, 112, 1, 113, - 1, 114, 114, 114, 1, 114, 114, 114, - 115, 1, 117, 116, 118, 116, 119, 1, - 121, 120, 122, 120, 1, 121, 123, 32, - 123, 1, 1, 121, 122, 117, 116, 118, - 116, 119, 1, 1, 28, 29, 124, 124, - 124, 1, 124, 124, 124, 125, 1, 126, - 1, 127, 1, 128, 1, 129, 1, 130, - 1, 131, 131, 131, 1, 131, 131, 132, - 131, 1, 133, 1, 134, 1, 135, 1, - 136, 1, 137, 1, 138, 1, 139, 1, - 140, 1, 28, 140, 29, 140, 1, 141, - 143, 142, 141, 145, 144, 146, 147, 148, - 149, 150, 151, 144, 142, 141, 143, 152, - 142, 141, 143, 153, 142, 141, 143, 154, - 142, 141, 143, 155, 155, 142, 141, 143, - 155, 155, 156, 142, 141, 143, 157, 157, - 158, 142, 141, 143, 159, 160, 159, 142, - 141, 143, 160, 160, 161, 142, 141, 143, - 162, 163, 162, 164, 142, 141, 143, 162, - 163, 162, 142, 141, 143, 165, 165, 142, - 141, 143, 166, 167, 166, 142, 141, 143, - 167, 168, 169, 167, 170, 142, 141, 143, - 170, 142, 141, 143, 171, 172, 171, 173, - 142, 141, 143, 171, 172, 171, 142, 141, - 143, 174, 175, 176, 174, 177, 142, 141, - 143, 177, 142, 141, 143, 178, 179, 178, - 180, 142, 141, 143, 178, 179, 178, 142, - 141, 143, 181, 182, 183, 181, 184, 142, - 141, 143, 184, 142, 141, 143, 185, 186, - 185, 187, 142, 141, 143, 185, 186, 185, - 142, 141, 189, 188, 190, 188, 142, 141, - 189, 188, 190, 191, 188, 191, 191, 191, - 142, 141, 189, 190, 141, 193, 192, 194, - 196, 192, 195, 196, 196, 196, 142, 141, - 189, 197, 190, 199, 197, 198, 199, 199, - 199, 142, 141, 143, 198, 199, 198, 198, - 199, 199, 199, 142, 141, 201, 200, 202, - 199, 200, 198, 199, 199, 199, 142, 141, - 143, 185, 186, 185, 187, 142, 141, 143, - 203, 142, 141, 143, 204, 205, 204, 206, - 142, 141, 143, 204, 205, 204, 206, 142, - 141, 143, 178, 179, 178, 180, 142, 141, - 143, 207, 142, 141, 143, 208, 209, 208, - 210, 142, 141, 143, 208, 209, 208, 210, - 142, 141, 143, 171, 172, 171, 173, 142, - 141, 143, 211, 142, 141, 143, 212, 213, - 212, 214, 142, 141, 143, 212, 213, 212, - 214, 142, 141, 143, 162, 163, 162, 164, - 142, 141, 143, 157, 157, 158, 142, 141, - 143, 215, 142, 141, 143, 216, 142, 141, - 143, 217, 142, 141, 143, 219, 218, 218, - 218, 218, 142, 141, 143, 220, 220, 142, - 141, 143, 220, 220, 221, 142, 141, 223, - 222, 224, 222, 225, 142, 141, 227, 226, - 228, 226, 221, 142, 141, 227, 228, 141, - 223, 222, 224, 222, 225, 142, 141, 143, - 229, 142, 141, 143, 230, 142, 141, 143, - 231, 142, 141, 143, 232, 142, 141, 143, - 233, 142, 141, 143, 234, 142, 141, 143, - 235, 142, 141, 143, 236, 142, 141, 143, - 237, 142, 141, 143, 238, 238, 142, 141, - 143, 238, 238, 239, 142, 141, 143, 240, - 240, 241, 142, 141, 143, 240, 240, 242, - 142, 141, 244, 243, 245, 243, 246, 142, - 141, 244, 243, 245, 243, 142, 141, 244, - 245, 141, 244, 243, 245, 243, 246, 142, - 141, 143, 240, 240, 241, 142, 141, 143, - 247, 142, 141, 143, 248, 142, 141, 143, - 249, 142, 141, 143, 250, 142, 141, 143, - 251, 142, 141, 253, 252, 254, 255, 252, - 142, 141, 257, 256, 258, 259, 256, 142, - 141, 257, 258, 141, 143, 260, 261, 262, - 260, 262, 262, 262, 142, 141, 143, 260, - 262, 260, 262, 262, 262, 142, 141, 143, - 263, 264, 266, 263, 265, 266, 266, 266, - 142, 141, 143, 267, 261, 269, 267, 268, - 269, 269, 269, 142, 141, 257, 261, 258, - 261, 142, 141, 143, 268, 269, 268, 268, - 269, 269, 269, 142, 141, 143, 270, 271, - 269, 270, 268, 269, 269, 269, 142, 141, - 143, 272, 142, 141, 143, 273, 142, 141, - 143, 274, 142, 141, 143, 275, 142, 141, - 143, 275, 276, 275, 142, 141, 143, 276, - 277, 276, 277, 277, 277, 142, 141, 143, - 278, 279, 281, 278, 280, 281, 281, 281, - 142, 141, 143, 282, 283, 285, 282, 284, - 285, 285, 285, 142, 141, 286, 283, 287, - 283, 142, 141, 286, 287, 141, 143, 284, - 285, 284, 284, 285, 285, 285, 142, 141, - 143, 288, 289, 285, 288, 284, 285, 285, - 285, 142, 141, 143, 290, 142, 141, 143, - 291, 142, 141, 143, 292, 142, 141, 143, - 293, 293, 142, 141, 143, 293, 294, 295, - 296, 293, 142, 141, 143, 297, 142, 141, - 143, 298, 142, 141, 143, 299, 142, 141, - 143, 300, 300, 142, 141, 143, 300, 301, - 300, 301, 301, 301, 142, 141, 143, 302, - 305, 304, 302, 303, 304, 304, 304, 142, - 141, 143, 306, 309, 308, 306, 307, 308, - 308, 308, 142, 141, 143, 307, 308, 307, - 307, 308, 308, 308, 142, 141, 143, 310, - 311, 308, 310, 307, 308, 308, 308, 142, - 141, 143, 309, 312, 309, 312, 312, 312, - 142, 141, 314, 313, 315, 317, 313, 316, - 317, 317, 317, 142, 141, 319, 318, 320, - 322, 318, 321, 322, 322, 322, 142, 141, - 319, 320, 141, 143, 321, 322, 321, 321, - 322, 322, 322, 142, 141, 324, 323, 325, - 322, 323, 321, 322, 322, 322, 142, 141, - 143, 326, 142, 141, 143, 327, 142, 141, - 143, 328, 142, 141, 143, 329, 142, 141, - 143, 330, 330, 142, 141, 143, 330, 331, - 330, 331, 331, 331, 142, 141, 143, 332, - 335, 334, 332, 333, 334, 334, 334, 142, - 141, 143, 336, 339, 338, 336, 337, 338, - 338, 338, 142, 141, 143, 337, 338, 337, - 337, 338, 338, 338, 142, 141, 143, 340, - 341, 338, 340, 337, 338, 338, 338, 142, - 141, 143, 339, 342, 339, 342, 342, 342, - 142, 141, 344, 343, 345, 347, 343, 346, - 347, 347, 347, 142, 141, 349, 348, 350, - 352, 348, 351, 352, 352, 352, 142, 141, - 349, 350, 141, 143, 351, 352, 351, 351, - 352, 352, 352, 142, 141, 354, 353, 355, - 352, 353, 351, 352, 352, 352, 142, 141, - 143, 356, 142, 141, 143, 357, 142, 141, - 143, 358, 142, 141, 143, 359, 142, 141, - 143, 360, 142, 141, 143, 361, 142, 141, - 143, 362, 142, 141, 143, 363, 142, 141, - 143, 364, 364, 142, 141, 143, 364, 365, - 364, 365, 365, 365, 142, 141, 143, 366, - 369, 368, 366, 367, 368, 368, 368, 142, - 141, 143, 370, 373, 372, 370, 371, 372, - 372, 372, 142, 141, 143, 371, 372, 371, - 371, 372, 372, 372, 142, 141, 143, 374, - 375, 372, 374, 371, 372, 372, 372, 142, - 141, 143, 373, 376, 373, 376, 376, 376, - 142, 141, 378, 377, 379, 381, 377, 380, - 381, 381, 381, 142, 141, 383, 382, 384, - 386, 382, 385, 386, 386, 386, 142, 141, - 383, 384, 141, 143, 385, 386, 385, 385, - 386, 386, 386, 142, 141, 388, 387, 389, - 386, 387, 385, 386, 386, 386, 142, 141, - 143, 390, 142, 141, 143, 391, 142, 141, - 143, 392, 392, 142, 141, 143, 392, 393, - 392, 142, 141, 143, 393, 394, 393, 394, - 394, 394, 142, 141, 143, 395, 396, 398, - 395, 397, 398, 398, 398, 142, 141, 143, - 399, 400, 402, 399, 401, 402, 402, 402, - 142, 141, 404, 403, 405, 403, 142, 141, - 404, 403, 405, 406, 403, 406, 406, 406, - 142, 141, 404, 405, 141, 408, 407, 409, - 411, 407, 410, 411, 411, 411, 142, 141, - 404, 412, 405, 414, 412, 413, 414, 414, - 414, 142, 141, 143, 413, 414, 413, 413, - 414, 414, 414, 142, 141, 416, 415, 417, - 414, 415, 413, 414, 414, 414, 142, 141, - 143, 401, 402, 401, 401, 402, 402, 402, - 142, 141, 143, 418, 419, 402, 418, 401, - 402, 402, 402, 142, 1, 421, 420, 106, - 1, 145, 144, 420, 146, 147, 148, 149, - 150, 151, 144, 142, 422, 145, 144, 146, - 147, 148, 149, 150, 151, 144, 142, 0 + 59, 1, 60, 1, 61, 61, 62, 61, + 1, 63, 63, 64, 63, 1, 64, 64, + 65, 64, 65, 65, 65, 1, 66, 66, + 67, 69, 66, 68, 69, 69, 69, 1, + 70, 70, 71, 73, 70, 72, 73, 73, + 73, 1, 75, 74, 76, 74, 1, 75, + 74, 76, 77, 74, 77, 77, 77, 1, + 79, 78, 80, 78, 1, 81, 1, 82, + 1, 83, 1, 84, 83, 85, 83, 1, + 87, 86, 88, 86, 1, 89, 1, 90, + 1, 91, 1, 92, 1, 92, 92, 93, + 92, 1, 93, 93, 94, 93, 1, 95, + 1, 96, 1, 97, 1, 98, 1, 99, + 1, 100, 1, 101, 1, 102, 1, 102, + 102, 103, 102, 1, 104, 103, 105, 103, + 1, 107, 106, 108, 106, 1, 109, 1, + 110, 1, 111, 111, 111, 1, 1, 104, + 105, 1, 84, 85, 1, 75, 76, 113, + 112, 114, 116, 112, 115, 116, 116, 116, + 1, 75, 117, 76, 119, 117, 118, 119, + 119, 119, 1, 118, 118, 119, 118, 118, + 119, 119, 119, 1, 121, 120, 122, 119, + 120, 118, 119, 119, 119, 1, 72, 72, + 73, 72, 72, 73, 73, 73, 1, 123, + 123, 124, 73, 123, 72, 73, 73, 73, + 1, 1, 52, 53, 125, 1, 126, 1, + 127, 1, 128, 1, 129, 1, 130, 130, + 130, 1, 130, 130, 130, 131, 1, 133, + 132, 134, 132, 135, 1, 137, 136, 138, + 136, 1, 137, 139, 32, 139, 1, 1, + 137, 138, 133, 132, 134, 132, 135, 1, + 1, 28, 29, 140, 140, 140, 1, 140, + 140, 140, 141, 1, 142, 1, 143, 1, + 144, 1, 145, 1, 146, 1, 147, 147, + 147, 1, 147, 147, 148, 147, 1, 149, + 1, 150, 1, 151, 1, 152, 1, 153, + 1, 154, 1, 155, 1, 156, 1, 28, + 156, 29, 156, 1, 157, 159, 158, 157, + 161, 160, 162, 163, 164, 165, 166, 167, + 160, 158, 157, 159, 168, 158, 157, 159, + 169, 158, 157, 159, 170, 158, 157, 159, + 171, 171, 158, 157, 159, 171, 171, 172, + 158, 157, 159, 173, 173, 174, 158, 157, + 159, 175, 176, 175, 158, 157, 159, 176, + 176, 177, 158, 157, 159, 178, 179, 178, + 180, 158, 157, 159, 178, 179, 178, 158, + 157, 159, 181, 181, 158, 157, 159, 182, + 183, 182, 158, 157, 159, 183, 184, 185, + 183, 186, 158, 157, 159, 186, 158, 157, + 159, 187, 188, 187, 189, 158, 157, 159, + 187, 188, 187, 158, 157, 159, 190, 191, + 192, 190, 193, 158, 157, 159, 193, 158, + 157, 159, 194, 195, 194, 196, 158, 157, + 159, 194, 195, 194, 158, 157, 159, 197, + 198, 199, 197, 200, 158, 157, 159, 200, + 158, 157, 159, 201, 202, 201, 203, 158, + 157, 159, 201, 202, 201, 158, 157, 205, + 204, 206, 204, 158, 157, 205, 204, 206, + 207, 204, 207, 207, 207, 158, 157, 205, + 206, 157, 209, 208, 210, 212, 208, 211, + 212, 212, 212, 158, 157, 205, 213, 206, + 215, 213, 214, 215, 215, 215, 158, 157, + 159, 214, 215, 214, 214, 215, 215, 215, + 158, 157, 217, 216, 218, 215, 216, 214, + 215, 215, 215, 158, 157, 159, 201, 202, + 201, 203, 158, 157, 159, 219, 158, 157, + 159, 220, 221, 220, 222, 158, 157, 159, + 220, 221, 220, 222, 158, 157, 159, 194, + 195, 194, 196, 158, 157, 159, 223, 158, + 157, 159, 224, 225, 224, 226, 158, 157, + 159, 224, 225, 224, 226, 158, 157, 159, + 187, 188, 187, 189, 158, 157, 159, 227, + 158, 157, 159, 228, 229, 228, 230, 158, + 157, 159, 228, 229, 228, 230, 158, 157, + 159, 178, 179, 178, 180, 158, 157, 159, + 173, 173, 174, 158, 157, 159, 231, 158, + 157, 159, 232, 158, 157, 159, 233, 158, + 157, 159, 235, 234, 234, 234, 234, 158, + 157, 159, 236, 236, 158, 157, 159, 236, + 236, 237, 158, 157, 239, 238, 240, 238, + 241, 158, 157, 243, 242, 244, 242, 237, + 158, 157, 243, 244, 157, 239, 238, 240, + 238, 241, 158, 157, 159, 245, 158, 157, + 159, 246, 158, 157, 159, 247, 158, 157, + 159, 248, 158, 157, 159, 249, 158, 157, + 159, 250, 158, 157, 159, 251, 158, 157, + 159, 252, 158, 157, 159, 253, 158, 157, + 159, 254, 254, 158, 157, 159, 254, 254, + 255, 158, 157, 159, 256, 256, 257, 158, + 157, 159, 256, 256, 258, 158, 157, 260, + 259, 261, 259, 262, 158, 157, 260, 259, + 261, 259, 158, 157, 260, 261, 157, 260, + 259, 261, 259, 262, 158, 157, 159, 256, + 256, 257, 158, 157, 159, 263, 158, 157, + 159, 264, 158, 157, 159, 265, 158, 157, + 159, 266, 158, 157, 159, 267, 158, 157, + 269, 268, 270, 271, 268, 158, 157, 273, + 272, 274, 275, 272, 158, 157, 273, 274, + 157, 159, 276, 277, 278, 276, 278, 278, + 278, 158, 157, 159, 276, 278, 276, 278, + 278, 278, 158, 157, 159, 279, 280, 282, + 279, 281, 282, 282, 282, 158, 157, 159, + 283, 277, 285, 283, 284, 285, 285, 285, + 158, 157, 273, 277, 274, 277, 158, 157, + 159, 284, 285, 284, 284, 285, 285, 285, + 158, 157, 159, 286, 287, 285, 286, 284, + 285, 285, 285, 158, 157, 159, 288, 158, + 157, 159, 289, 158, 157, 159, 290, 158, + 157, 159, 291, 158, 157, 159, 292, 293, + 292, 158, 157, 159, 294, 295, 294, 158, + 157, 159, 295, 296, 295, 296, 296, 296, + 158, 157, 159, 297, 298, 300, 297, 299, + 300, 300, 300, 158, 157, 159, 301, 302, + 304, 301, 303, 304, 304, 304, 158, 157, + 306, 305, 307, 305, 158, 157, 306, 305, + 307, 308, 305, 308, 308, 308, 158, 157, + 306, 307, 157, 310, 309, 311, 313, 309, + 312, 313, 313, 313, 158, 157, 306, 314, + 307, 316, 314, 315, 316, 316, 316, 158, + 157, 159, 315, 316, 315, 315, 316, 316, + 316, 158, 157, 318, 317, 319, 316, 317, + 315, 316, 316, 316, 158, 157, 159, 303, + 304, 303, 303, 304, 304, 304, 158, 157, + 159, 320, 321, 304, 320, 303, 304, 304, + 304, 158, 157, 159, 322, 158, 157, 159, + 323, 158, 157, 159, 324, 158, 157, 159, + 325, 325, 158, 157, 159, 325, 326, 327, + 328, 325, 158, 157, 159, 329, 158, 157, + 159, 330, 158, 157, 159, 331, 158, 157, + 159, 332, 332, 158, 157, 159, 332, 333, + 332, 333, 333, 333, 158, 157, 159, 334, + 337, 336, 334, 335, 336, 336, 336, 158, + 157, 159, 338, 341, 340, 338, 339, 340, + 340, 340, 158, 157, 159, 339, 340, 339, + 339, 340, 340, 340, 158, 157, 159, 342, + 343, 340, 342, 339, 340, 340, 340, 158, + 157, 159, 341, 344, 341, 344, 344, 344, + 158, 157, 346, 345, 347, 349, 345, 348, + 349, 349, 349, 158, 157, 351, 350, 352, + 354, 350, 353, 354, 354, 354, 158, 157, + 351, 352, 157, 159, 353, 354, 353, 353, + 354, 354, 354, 158, 157, 356, 355, 357, + 354, 355, 353, 354, 354, 354, 158, 157, + 159, 358, 158, 157, 159, 359, 158, 157, + 159, 360, 158, 157, 159, 361, 158, 157, + 159, 362, 362, 158, 157, 159, 362, 363, + 362, 363, 363, 363, 158, 157, 159, 364, + 367, 366, 364, 365, 366, 366, 366, 158, + 157, 159, 368, 371, 370, 368, 369, 370, + 370, 370, 158, 157, 159, 369, 370, 369, + 369, 370, 370, 370, 158, 157, 159, 372, + 373, 370, 372, 369, 370, 370, 370, 158, + 157, 159, 371, 374, 371, 374, 374, 374, + 158, 157, 376, 375, 377, 379, 375, 378, + 379, 379, 379, 158, 157, 381, 380, 382, + 384, 380, 383, 384, 384, 384, 158, 157, + 381, 382, 157, 159, 383, 384, 383, 383, + 384, 384, 384, 158, 157, 386, 385, 387, + 384, 385, 383, 384, 384, 384, 158, 157, + 159, 388, 158, 157, 159, 389, 158, 157, + 159, 390, 158, 157, 159, 391, 158, 157, + 159, 392, 158, 157, 159, 393, 158, 157, + 159, 394, 158, 157, 159, 395, 158, 157, + 159, 396, 396, 158, 157, 159, 396, 397, + 396, 397, 397, 397, 158, 157, 159, 398, + 401, 400, 398, 399, 400, 400, 400, 158, + 157, 159, 402, 405, 404, 402, 403, 404, + 404, 404, 158, 157, 159, 403, 404, 403, + 403, 404, 404, 404, 158, 157, 159, 406, + 407, 404, 406, 403, 404, 404, 404, 158, + 157, 159, 405, 408, 405, 408, 408, 408, + 158, 157, 410, 409, 411, 413, 409, 412, + 413, 413, 413, 158, 157, 415, 414, 416, + 418, 414, 417, 418, 418, 418, 158, 157, + 415, 416, 157, 159, 417, 418, 417, 417, + 418, 418, 418, 158, 157, 420, 419, 421, + 418, 419, 417, 418, 418, 418, 158, 157, + 159, 422, 158, 157, 159, 423, 158, 157, + 159, 424, 424, 158, 157, 159, 424, 425, + 424, 158, 157, 159, 425, 426, 425, 426, + 426, 426, 158, 157, 159, 427, 428, 430, + 427, 429, 430, 430, 430, 158, 157, 159, + 431, 432, 434, 431, 433, 434, 434, 434, + 158, 157, 436, 435, 437, 435, 158, 157, + 436, 435, 437, 438, 435, 438, 438, 438, + 158, 157, 436, 437, 157, 440, 439, 441, + 443, 439, 442, 443, 443, 443, 158, 157, + 436, 444, 437, 446, 444, 445, 446, 446, + 446, 158, 157, 159, 445, 446, 445, 445, + 446, 446, 446, 158, 157, 448, 447, 449, + 446, 447, 445, 446, 446, 446, 158, 157, + 159, 433, 434, 433, 433, 434, 434, 434, + 158, 157, 159, 450, 451, 434, 450, 433, + 434, 434, 434, 158, 1, 453, 452, 111, + 1, 161, 160, 452, 162, 163, 164, 165, + 166, 167, 160, 158, 454, 161, 160, 162, + 163, 164, 165, 166, 167, 160, 158, 0 }; static const short _parse_tester_trans_targs_wi[] = { 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 99, 100, 27, - 28, 87, 29, 30, 31, 32, 33, 34, + 23, 24, 25, 26, 27, 105, 106, 27, + 28, 93, 29, 30, 31, 32, 33, 34, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 86, 45, 45, - 46, 47, 48, 49, 50, 51, 52, 53, - 54, 84, 85, 53, 54, 84, 85, 55, - 83, 55, 55, 56, 57, 58, 59, 60, - 82, 60, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 81, 77, 77, 78, - 79, 80, 293, 53, 54, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, - 95, 96, 97, 96, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 294, 118, 294, - 119, 295, 120, 165, 193, 208, 220, 276, - 121, 122, 123, 124, 125, 126, 164, 126, - 127, 128, 129, 130, 163, 131, 131, 132, - 133, 160, 134, 135, 136, 159, 136, 137, - 156, 138, 139, 140, 155, 140, 141, 152, - 142, 143, 144, 151, 145, 294, 146, 147, - 148, 294, 146, 149, 150, 148, 149, 150, - 148, 294, 146, 153, 143, 144, 154, 157, - 139, 140, 158, 161, 135, 136, 162, 166, - 167, 168, 169, 175, 170, 171, 172, 294, - 173, 174, 172, 294, 173, 176, 177, 178, - 179, 180, 181, 182, 183, 184, 185, 186, - 187, 192, 188, 189, 294, 190, 191, 194, - 195, 196, 197, 198, 199, 294, 200, 201, - 199, 294, 200, 201, 202, 205, 203, 204, - 205, 206, 207, 204, 206, 207, 204, 205, - 209, 210, 211, 212, 213, 214, 215, 216, - 218, 219, 215, 216, 218, 219, 294, 217, - 215, 216, 221, 222, 223, 224, 225, 240, - 256, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 231, 232, 233, 234, 231, 234, - 235, 236, 294, 237, 238, 239, 236, 294, - 237, 238, 239, 236, 294, 237, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, - 247, 248, 249, 250, 247, 250, 251, 252, - 294, 253, 254, 255, 252, 294, 253, 254, - 255, 252, 294, 253, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 267, 268, 269, 270, 267, 270, - 271, 272, 294, 273, 274, 275, 272, 294, - 273, 274, 275, 272, 294, 273, 277, 278, - 279, 280, 281, 282, 283, 290, 291, 282, - 283, 290, 291, 284, 294, 285, 286, 287, - 294, 285, 288, 289, 287, 288, 289, 287, - 294, 285, 282, 283, 292, 294, 294 + 41, 42, 43, 44, 45, 92, 45, 45, + 46, 47, 48, 49, 50, 51, 52, 51, + 52, 53, 54, 55, 90, 91, 54, 55, + 90, 91, 56, 57, 85, 86, 57, 57, + 58, 59, 60, 61, 62, 84, 62, 62, + 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, + 79, 83, 79, 79, 80, 81, 82, 305, + 87, 57, 85, 88, 89, 87, 88, 89, + 87, 57, 85, 54, 55, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, + 101, 102, 103, 102, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 306, 124, 306, + 125, 307, 126, 171, 199, 214, 232, 288, + 127, 128, 129, 130, 131, 132, 170, 132, + 133, 134, 135, 136, 169, 137, 137, 138, + 139, 166, 140, 141, 142, 165, 142, 143, + 162, 144, 145, 146, 161, 146, 147, 158, + 148, 149, 150, 157, 151, 306, 152, 153, + 154, 306, 152, 155, 156, 154, 155, 156, + 154, 306, 152, 159, 149, 150, 160, 163, + 145, 146, 164, 167, 141, 142, 168, 172, + 173, 174, 175, 181, 176, 177, 178, 306, + 179, 180, 178, 306, 179, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, + 193, 198, 194, 195, 306, 196, 197, 200, + 201, 202, 203, 204, 205, 306, 206, 207, + 205, 306, 206, 207, 208, 211, 209, 210, + 211, 212, 213, 210, 212, 213, 210, 211, + 215, 216, 217, 218, 219, 220, 219, 220, + 221, 222, 223, 230, 231, 222, 223, 230, + 231, 224, 306, 225, 226, 227, 306, 225, + 228, 229, 227, 228, 229, 227, 306, 225, + 222, 223, 233, 234, 235, 236, 237, 252, + 268, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 243, 244, 245, 246, 243, 246, + 247, 248, 306, 249, 250, 251, 248, 306, + 249, 250, 251, 248, 306, 249, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, + 259, 260, 261, 262, 259, 262, 263, 264, + 306, 265, 266, 267, 264, 306, 265, 266, + 267, 264, 306, 265, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 279, 280, 281, 282, 279, 282, + 283, 284, 306, 285, 286, 287, 284, 306, + 285, 286, 287, 284, 306, 285, 289, 290, + 291, 292, 293, 294, 295, 302, 303, 294, + 295, 302, 303, 296, 306, 297, 298, 299, + 306, 297, 300, 301, 299, 300, 301, 299, + 306, 297, 294, 295, 304, 306, 306 }; static const unsigned char _parse_tester_trans_actions_wi[] = { @@ -10269,80 +10509,86 @@ static const unsigned char _parse_tester_trans_actions_wi[] = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 119, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 81, - 81, 13, 78, 0, 0, 0, 15, 123, - 0, 0, 1, 0, 0, 0, 0, 57, - 0, 0, 1, 41, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 131, 0, 0, 1, 0, - 0, 0, 0, 17, 17, 0, 0, 0, - 0, 0, 0, 0, 47, 93, 47, 5, + 0, 0, 0, 0, 121, 0, 0, 1, + 0, 0, 0, 0, 0, 41, 41, 0, + 0, 0, 83, 83, 13, 80, 0, 0, + 0, 15, 0, 125, 0, 0, 0, 1, + 0, 0, 0, 0, 59, 0, 0, 1, + 43, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 133, 0, 0, 1, 0, 0, 0, 0, + 86, 210, 86, 13, 80, 0, 0, 15, + 19, 172, 19, 17, 17, 0, 0, 0, + 0, 0, 0, 0, 49, 95, 49, 5, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 66, - 0, 151, 0, 0, 43, 0, 90, 35, + 0, 0, 0, 0, 0, 57, 0, 68, + 0, 153, 0, 0, 45, 0, 92, 35, 0, 0, 0, 0, 0, 21, 5, 0, 0, 0, 0, 0, 5, 23, 0, 0, 0, 0, 0, 0, 25, 5, 0, 0, 0, 0, 0, 27, 5, 0, 0, 0, - 0, 0, 29, 5, 0, 99, 0, 0, - 143, 210, 143, 13, 78, 0, 0, 15, - 87, 204, 87, 0, 11, 75, 5, 0, - 11, 72, 5, 0, 11, 69, 5, 0, - 0, 0, 33, 0, 0, 0, 31, 147, - 31, 5, 0, 60, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5, 0, 0, 103, 0, 9, 0, - 0, 0, 0, 0, 45, 175, 45, 45, - 0, 135, 0, 0, 0, 0, 0, 81, - 81, 13, 78, 0, 0, 15, 17, 17, - 0, 0, 0, 0, 0, 0, 81, 81, - 13, 78, 0, 0, 0, 15, 127, 0, + 0, 0, 29, 5, 0, 101, 0, 0, + 145, 234, 145, 13, 80, 0, 0, 15, + 89, 228, 89, 0, 11, 77, 5, 0, + 11, 74, 5, 0, 11, 71, 5, 0, + 0, 0, 33, 0, 0, 0, 31, 149, + 31, 5, 0, 62, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5, 0, 0, 105, 0, 9, 0, + 0, 0, 0, 0, 47, 187, 47, 47, + 0, 137, 0, 0, 0, 0, 0, 83, + 83, 13, 80, 0, 0, 15, 17, 17, + 0, 0, 0, 0, 41, 41, 0, 0, + 0, 83, 83, 13, 80, 0, 0, 0, + 15, 0, 129, 0, 0, 86, 216, 86, + 13, 80, 0, 0, 15, 19, 177, 19, 17, 17, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 81, 13, - 78, 81, 0, 0, 15, 0, 17, 17, - 0, 84, 180, 84, 13, 78, 0, 107, - 0, 0, 15, 19, 155, 19, 0, 0, - 0, 0, 0, 0, 81, 13, 78, 81, - 0, 0, 15, 0, 17, 17, 0, 84, - 192, 84, 13, 78, 0, 115, 0, 0, - 15, 19, 165, 19, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 81, 13, - 78, 81, 0, 0, 15, 0, 17, 17, - 0, 84, 198, 84, 13, 78, 0, 139, - 0, 0, 15, 19, 170, 19, 0, 0, - 0, 0, 0, 81, 81, 13, 78, 0, - 0, 0, 15, 0, 111, 0, 0, 84, - 186, 84, 13, 78, 0, 0, 15, 19, - 160, 19, 17, 17, 0, 63, 53 + 0, 0, 0, 0, 0, 0, 83, 13, + 80, 83, 0, 0, 15, 0, 17, 17, + 0, 86, 192, 86, 13, 80, 0, 109, + 0, 0, 15, 19, 157, 19, 0, 0, + 0, 0, 0, 0, 83, 13, 80, 83, + 0, 0, 15, 0, 17, 17, 0, 86, + 204, 86, 13, 80, 0, 117, 0, 0, + 15, 19, 167, 19, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 83, 13, + 80, 83, 0, 0, 15, 0, 17, 17, + 0, 86, 222, 86, 13, 80, 0, 141, + 0, 0, 15, 19, 182, 19, 0, 0, + 0, 0, 0, 83, 83, 13, 80, 0, + 0, 0, 15, 0, 113, 0, 0, 86, + 198, 86, 13, 80, 0, 0, 15, 19, + 162, 19, 17, 17, 0, 65, 55 }; static const unsigned char _parse_tester_to_state_actions[] = { - 0, 49, 0, 0, 0, 0, 0, 0, + 0, 51, 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, 49, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 49, + 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 49, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 3, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 3, 0, 0, 3, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 3, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 3, 0, 0, 0, 3, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 7, 0, 0, 0, + 3, 0, 7, 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, @@ -10353,9 +10599,9 @@ static const unsigned char _parse_tester_to_state_actions[] = { 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, 37, 0, + 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 96, 0 + 0, 0, 98, 0 }; static const unsigned char _parse_tester_from_state_actions[] = { @@ -10395,7 +10641,9 @@ static const unsigned char _parse_tester_from_state_actions[] = { 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, 51, 0 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 53, 0 }; static const short _parse_tester_eof_trans[] = { @@ -10413,41 +10661,43 @@ static const short _parse_tester_eof_trans[] = { 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, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 0, 0, 0, 423 + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, 158, 158, 158, 158, 158, + 0, 0, 0, 455 }; static const int parse_tester_start = 1; -static const int parse_tester_first_final = 293; +static const int parse_tester_first_final = 305; static const int parse_tester_error = 0; -static const int parse_tester_en_group_scanner = 294; +static const int parse_tester_en_group_scanner = 306; static const int parse_tester_en_main = 1; -#line 1287 "NanorexMMPImportExportRagelTest.rl" +#line 1293 "NanorexMMPImportExportRagelTest.rl" -#line 10451 "NanorexMMPImportExportRagelTest.cpp" +#line 10701 "NanorexMMPImportExportRagelTest.cpp" { cs = parse_tester_start; top = 0; @@ -10455,9 +10705,9 @@ static const int parse_tester_en_main = 1; te = 0; act = 0; } -#line 1288 "NanorexMMPImportExportRagelTest.rl" +#line 1294 "NanorexMMPImportExportRagelTest.rl" -#line 10461 "NanorexMMPImportExportRagelTest.cpp" +#line 10711 "NanorexMMPImportExportRagelTest.cpp" { int _klen; unsigned int _trans; @@ -10474,11 +10724,11 @@ _resume: _nacts = (unsigned int) *_acts++; while ( _nacts-- > 0 ) { switch ( *_acts++ ) { - case 43: + case 44: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = p;} break; -#line 10482 "NanorexMMPImportExportRagelTest.cpp" +#line 10732 "NanorexMMPImportExportRagelTest.cpp" } } @@ -10663,120 +10913,124 @@ _eof_trans: { newViewDataGroup(); } break; case 28: -#line 40 "NanorexMMPImportExportRagelTest.rl" - { newMolStructGroup(stringVal/*, stringVal2*/); } +#line 34 "NanorexMMPImportExportRagelTest.rl" + { stringVal2.clear(); } break; case 29: +#line 40 "NanorexMMPImportExportRagelTest.rl" + { newMolStructGroup(stringVal, stringVal2); } + break; + case 30: #line 47 "NanorexMMPImportExportRagelTest.rl" { end1(); } break; - case 30: + case 31: #line 51 "NanorexMMPImportExportRagelTest.rl" { lineStart = p; } break; - case 31: + case 32: #line 56 "NanorexMMPImportExportRagelTest.rl" { newClipboardGroup(); } break; - case 32: + case 33: #line 60 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 33: + case 34: #line 61 "NanorexMMPImportExportRagelTest.rl" { stringVal.clear(); } break; - case 34: + case 35: #line 67 "NanorexMMPImportExportRagelTest.rl" { endGroup(stringVal); } break; - case 35: + case 36: #line 71 "NanorexMMPImportExportRagelTest.rl" {lineStart=p;} break; - case 36: + case 37: #line 81 "NanorexMMPImportExportRagelTest.rl" { newOpenGroupInfo(stringVal, stringVal2); } break; - case 37: -#line 1061 "NanorexMMPImportExportRagelTest.rl" - { kelvinTemp = intVal; } - break; case 38: -#line 1075 "NanorexMMPImportExportRagelTest.rl" - { /*cerr << "*p=" << *p << endl;*/ p--; {stack[top++] = cs; cs = 294; goto _again;} } +#line 1067 "NanorexMMPImportExportRagelTest.rl" + { kelvinTemp = intVal; } break; case 39: -#line 1078 "NanorexMMPImportExportRagelTest.rl" - { p--; {stack[top++] = cs; cs = 294; goto _again;} } +#line 1081 "NanorexMMPImportExportRagelTest.rl" + { /*cerr << "*p=" << *p << endl;*/ p--; {stack[top++] = cs; cs = 306; goto _again;} } break; case 40: -#line 1083 "NanorexMMPImportExportRagelTest.rl" - { p--; {stack[top++] = cs; cs = 294; goto _again;} } +#line 1084 "NanorexMMPImportExportRagelTest.rl" + { p--; {stack[top++] = cs; cs = 306; goto _again;} } break; - case 44: + case 41: +#line 1089 "NanorexMMPImportExportRagelTest.rl" + { p--; {stack[top++] = cs; cs = 306; goto _again;} } + break; + case 45: #line 1 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 45: + case 46: #line 102 "NanorexMMPImportExportRagelTest.rl" {act = 11;} break; - case 46: + case 47: #line 89 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 47: + case 48: #line 90 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 48: + case 49: #line 91 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{{cs = stack[--top]; goto _again;}}} break; - case 49: + case 50: #line 92 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 50: + case 51: #line 93 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 51: + case 52: #line 94 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 52: + case 53: #line 95 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 53: + case 54: #line 96 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 54: + case 55: #line 97 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 55: + case 56: #line 100 "NanorexMMPImportExportRagelTest.rl" {te = p+1;} break; - case 56: + case 57: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p+1;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 57: + case 58: #line 102 "NanorexMMPImportExportRagelTest.rl" {te = p;p--;{ cerr << lineNum << ": Syntax error or unsupported statement:\n\t"; std::copy(ts, te, std::ostream_iterator<char>(cerr)); cerr << endl; }} break; - case 58: + case 59: #line 1 "NanorexMMPImportExportRagelTest.rl" { switch( act ) { case 0: @@ -10792,7 +11046,7 @@ _eof_trans: } } break; -#line 10796 "NanorexMMPImportExportRagelTest.cpp" +#line 11050 "NanorexMMPImportExportRagelTest.cpp" } } @@ -10813,15 +11067,15 @@ _again: #line 11 "NanorexMMPImportExportRagelTest.rl" { stringVal2.clear(); /* 'style' string optional */ } break; - case 41: + case 42: #line 1 "NanorexMMPImportExportRagelTest.rl" {ts = 0;} break; - case 42: + case 43: #line 1 "NanorexMMPImportExportRagelTest.rl" {act = 0;} break; -#line 10825 "NanorexMMPImportExportRagelTest.cpp" +#line 11079 "NanorexMMPImportExportRagelTest.cpp" } } @@ -10840,7 +11094,7 @@ _again: _out: {} } -#line 1289 "NanorexMMPImportExportRagelTest.rl" +#line 1295 "NanorexMMPImportExportRagelTest.rl" } diff --git a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.h b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.h index 3558cd856..809bd2d62 100644 --- a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.h +++ b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.h @@ -147,7 +147,8 @@ private: void newChunkInfo(std::string const& key, std::string const& value); void newViewDataGroup(void); - void newMolStructGroup(std::string const& name); + void newMolStructGroup(std::string const& name, + std::string const& classification); void newClipboardGroup(void); void endGroup(std::string const& name); void newOpenGroupInfo(std::string const& key, std::string const& value); diff --git a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.rl b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.rl index 2f2f9dd70..9b408dc75 100644 --- a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.rl +++ b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/NanorexMMPImportExportRagelTest.rl @@ -12,7 +12,7 @@ CPPUNIT_TEST_SUITE_REGISTRATION(NanorexMMPImportExportRagelTest); CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(NanorexMMPImportExportRagelTest, "NanorexMMPImportExportRagelTestSuite"); -// #define VERBOSE +#define VERBOSE #if defined(VERBOSE) #define CERR(s) \ @@ -669,7 +669,7 @@ void NanorexMMPImportExportRagelTest::groupLineTest(void) char const *testInput = NULL; // #if 0 - testInput = "group (FirstGroup) #FirstGroupStyle\n"; + testInput = "group (FirstGroup) FirstGroupStyle\n"; groupLineTestHelper(testInput); CPPUNIT_ASSERT(groupNameStack.size() == 1); CPPUNIT_ASSERT(groupNameStack.back() == "FirstGroup"); @@ -716,11 +716,11 @@ void NanorexMMPImportExportRagelTest::groupLineTest(void) lineNum = 0; testInput = "group (group 1)\n" - "group (group 1_1) #def\n" + "group (group 1_1) def\n" "egroup (group 1_1)\n" "group (amines)\n" "group (histamines) #def\n" - "group ( histhistamines\t) \t#def\t\n" + "group ( histhistamines\t) \tdef\t\n" "egroup\n" "group (histhistamines siblings)\n" "egroup (histhistamines siblings)\n" @@ -783,6 +783,7 @@ void NanorexMMPImportExportRagelTest::newViewDataGroup(void) groupNameStack.push_back(currentGroupName); } + #if 0 void NanorexMMPImportExportRagelTest::endViewDataGroup(void) { @@ -792,15 +793,19 @@ groupNameStack.pop_back(); } #endif + void -NanorexMMPImportExportRagelTest::newMolStructGroup(std::string const& name) +NanorexMMPImportExportRagelTest:: +newMolStructGroup(std::string const& name, + std::string const& classification) { ++groupCount; - CERR("group (" + name + ") "); + CERR("group (" + name + ") " + classification); currentGroupName = name; groupNameStack.push_back(currentGroupName); } + #if 0 void NanorexMMPImportExportRagelTest::endMolStructGroup(std::string const& name) { @@ -813,6 +818,7 @@ groupNameStack.pop_back(); } #endif + void NanorexMMPImportExportRagelTest::newClipboardGroup(void) { ++groupCount; diff --git a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/checked_group.rl b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/checked_group.rl index 4aed344a9..e792365e3 100644 --- a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/checked_group.rl +++ b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/checked_group.rl @@ -47,7 +47,7 @@ # -- no style -- (nonNEWLINEspace+ checked_group_style)? nonNEWLINEspace* EOL - @ { newMolStructGroup(stringVal/*, stringVal2*/); } + @ { newMolStructGroup(stringVal, stringVal2); } ; diff --git a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/group.rl b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/group.rl index 7f44ab7fb..12043ec28 100644 --- a/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/group.rl +++ b/cad/plugins/NanoVision-1/src/Plugins/NanorexMMPImportExport/group.rl @@ -31,13 +31,13 @@ group_mol_struct_stmt_begin_line = 'group' -# -- no style -- % { stringVal2.clear(); } + % { stringVal2.clear(); } nonNEWLINEspace* '(' nonNEWLINEspace* char_string_with_space nonNEWLINEspace* ')' -# - no style -- (nonNEWLINEspace+ char_string_with_space2)? + (nonNEWLINEspace+ char_string_with_space2)? nonNEWLINEspace* EOL - @ { newMolStructGroup(stringVal/*, stringVal2*/); } + @ { newMolStructGroup(stringVal, stringVal2); } ; end1_line = |