From: Martin Quinson Date: Tue, 19 Nov 2019 00:15:21 +0000 (+0100) Subject: Inventive hack to get flex raising exceptions on parse error X-Git-Tag: v3.25~382 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/7e1931bdf65d5bc5f13b64688dc215e1585931c9 Inventive hack to get flex raising exceptions on parse error The core of this (over 2500 lines) patch reads as follows: - fprintf(stderr, "%s\n", flexml_err_msg); + surf_parse_error(flexml_err_msg); But the code we want to change is generated by Flex, so ... I have to augment the perl script that rewrite some parts of the Flex result for that purpose. Because yes, we do have such a perl script. At the end, we need to regenerate the flex parser with the latest version of Flex to apply this patch, resulting in that jumbo patch. --- diff --git a/src/simdag/dax_dtd.c b/src/simdag/dax_dtd.c index 853e760e0c..73b43cdc9a 100644 --- a/src/simdag/dax_dtd.c +++ b/src/simdag/dax_dtd.c @@ -639,472 +639,838 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; - static const flex_int16_t yy_accept[775] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 141, 139, 15, 10, 10, 15, 15, 119, 10, 119, 5, 6, 5, 8, 9, 8, 135, - 127, 128, 136, 133, 136, 134, 138, 127, 128, 138, 139, 40, 10, 40, 40, 40, 38, - - 40, 40, 40, 40, 40, 40, 40, 44, 10, 44, 44, 139, 139, 44, 61, 10, 61, 61, 61, 59, 61, - 61, 61, 61, 61, 65, 10, 65, 139, 65, 92, 10, 92, 92, 92, 90, 92, 92, 92, 92, 92, 92, - 96, 10, 96, 103, 10, 103, 103, 103, 101, 103, 107, 10, 107, 139, 107, 114, 10, 114, 114, 114, 112, - 114, 118, 10, 118, 136, 135, 10, 0, 2, 2, 0, 4, 7, 130, 129, 0, 0, 0, 0, 0, 0, - 0, 39, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 0, 0, 0, 0, - - 0, 0, 0, 0, 60, 62, 62, 62, 62, 62, 62, 0, 0, 91, 93, 93, 93, 93, 93, 93, 93, - 93, 0, 102, 104, 104, 0, 0, 113, 115, 115, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 137, 0, 41, 41, 41, 41, 41, 41, 41, 41, 41, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 62, 62, 62, 62, 0, 0, 0, 93, 93, 93, 93, 93, 93, 93, 0, 0, - 104, 0, 0, 0, 115, 0, 0, 0, 132, 0, 14, 1, 0, 0, 125, 0, - - 0, 0, 122, 121, 0, 0, 41, 41, 41, 41, 41, 41, 41, 41, 41, 0, 0, 43, 0, 0, 0, - 46, 0, 0, 45, 0, 0, 48, 47, 62, 62, 62, 62, 0, 0, 64, 0, 0, 93, 93, 93, 93, - 93, 93, 93, 0, 0, 95, 0, 0, 0, 0, 0, 106, 0, 0, 0, 0, 0, 0, 117, 0, 0, - 0, 0, 126, 120, 0, 0, 17, 41, 41, 41, 41, 41, 0, 0, 41, 41, 41, 0, 16, 0, 46, - 0, 66, 45, 0, 62, 0, 0, 62, 62, 62, 0, 67, 0, 0, 0, 0, - - 93, 93, 0, 0, 93, 0, 0, 0, 0, 100, 99, 0, 0, 0, 111, 110, 0, 0, 0, 0, 0, - 12, 0, 123, 124, 17, 41, 0, 0, 41, 0, 0, 41, 0, 31, 30, 41, 0, 41, 0, 41, 0, - 16, 98, 0, 66, 97, 0, 0, 0, 52, 51, 62, 62, 62, 0, 63, 67, 0, 69, 68, 0, 0, - 0, 93, 93, 0, 89, 88, 93, 0, 87, 86, 0, 0, 0, 0, 0, 0, 0, 0, 11, 41, 0, - 27, 26, 41, 0, 29, 28, 41, 41, 41, 0, 19, 18, 41, 0, 42, 98, - - 108, 97, 0, 58, 57, 62, 62, 62, 0, 0, 0, 0, 93, 93, 93, 0, 94, 0, 109, 0, 0, - 0, 0, 0, 41, 41, 41, 0, 0, 41, 41, 108, 62, 0, 0, 0, 0, 0, 0, 0, 0, 93, - 93, 93, 0, 105, 109, 0, 0, 0, 0, 0, 41, 41, 0, 0, 0, 25, 24, 41, 41, 62, 0, - 56, 55, 0, 54, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 131, 0, 0, 0, - 41, 0, 0, 0, 33, 32, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, - - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 34, 0, 21, 20, 41, 0, - 50, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 37, 36, 41, 71, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 41, 73, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - - 0, 0, 0, 41, 0, 85, 0, 84, 0, 77, 0, 76, 0, 81, 0, 80, 0, 0, 0, 0, 0, - 0, 41, 83, 82, 75, 74, 79, 78, 0, 0, 0, 12, 0, 12, 0, 41, 0, 0, 0, 0, 0, - 41, 0, 0, 0, 0, 0, 11, 0, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0}; - - static const YY_CHAR yy_ec[256] = { - 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 2, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 2, 5, 6, 7, 1, 1, 8, 9, 1, 1, 1, 1, 1, 10, 11, 12, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 13, 14, 15, 16, 17, 18, 19, 1, 20, 21, 22, 23, 24, 21, 25, 25, 25, 25, 25, 26, 27, - 25, 28, 29, 25, 25, 30, 31, 25, 25, 25, 25, 32, 25, 33, 1, 34, 1, 25, 1, 35, 36, 37, 38, - - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 25, 57, 58, 59, 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, 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, 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, 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, 1, 1, 1, 1, 1, 1, - 1, 1, 1}; - - static const YY_CHAR yy_meta[60] = {0, 1, 2, 2, 2, 1, 1, 1, 1, 1, 3, 3, 1, 4, 5, 1, 1, 1, 6, 1, - 7, 7, 7, 7, 7, 5, 5, 5, 5, 5, 5, 5, 5, 1, 1, 7, 7, 7, 7, 7, - 7, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5}; - - static const flex_int16_t yy_base[814] = { - 0, 0, 0, 0, 3, 6, 9, 24, 27, 11, 14, 15, 17, 29, 38, 45, 52, - 59, 61, 67, 70, 95, 0, 73, 76, 153, 156, 159, 162, 177, 180, 183, 186, 201, - 204, 207, 210, 226, 0, 284, 287, 290, 293, 308, 311, 314, 317, 333, 0, 391, 394, - 410, 462, 429, 432, 435, 438, 481, 484, 487, 490, 514, 566, 533, 536, 585, 587, 1886, - 2164, 2164, 397, 400, 47, 62, 2164, 453, 172, 2164, 2164, 1875, 2164, 2164, 1865, 2164, 1866, - 1863, 551, 2164, 2164, 2164, 2164, 1861, 1861, 1829, 441, 2164, 505, 1844, 0, 196, 2164, - - 8, 1818, 1812, 1810, 1823, 1813, 35, 2164, 508, 593, 601, 589, 622, 630, 2164, 539, 1833, - 0, 303, 2164, 1811, 1809, 1793, 1772, 1786, 2164, 542, 649, 657, 676, 2164, 551, 1798, 0, - 442, 2164, 1772, 1770, 1750, 1760, 1751, 32, 2164, 557, 545, 2164, 607, 1775, 0, 494, 2164, - 1752, 2164, 612, 684, 703, 711, 2164, 667, 1764, 0, 546, 2164, 1722, 2164, 733, 641, 1752, - 1721, 739, 594, 1690, 2164, 1735, 1723, 2164, 2164, 2164, 2, 44, 1685, 1684, 1675, 1711, 1689, - 2164, 0, 1678, 1663, 1670, 1677, 1676, 1664, 1658, 1650, 1652, 1658, 1650, 1645, 1636, - - 1645, 1626, 1628, 1630, 2164, 0, 747, 1615, 1618, 1615, 1610, 1616, 1599, 2164, 0, 1605, 1601, - 1590, 1602, 1582, 1601, 1585, 1578, 2164, 0, 1588, 1590, 1590, 2164, 0, 1584, 1572, 1584, 1594, - 1593, 1599, 431, 1554, 2164, 72, 0, 1549, 1549, 1581, 1576, 1541, 2164, 1553, 1540, 1535, 1533, - 1528, 1544, 1525, 1503, 1507, 1539, 765, 768, 1517, 1507, 1509, 1488, 1500, 1501, 1486, 771, 775, - 1489, 1487, 1467, 1467, 787, 790, 1479, 1477, 1470, 1470, 1459, 1462, 1445, 1429, 793, 796, 799, - 815, 818, 1415, 821, 824, 827, 1443, 2164, 1446, 2164, 2164, 17, 1400, 2164, 1428, - - 1426, 1384, 2164, 2164, 1381, 1389, 1391, 1373, 1394, 1358, 1364, 844, 1368, 1357, 1344, 848, 851, - 2164, 854, 1355, 1344, 861, 1350, 1318, 871, 1324, 874, 2164, 2164, 1322, 882, 1317, 1316, 888, - 891, 2164, 894, 1301, 898, 901, 1304, 1295, 917, 1290, 920, 923, 929, 2164, 936, 940, 946, - 956, 959, 2164, 962, 1301, 965, 981, 968, 989, 2164, 992, 1309, 616, 995, 2164, 2164, 1316, - 1314, 998, 1302, 1013, 1274, 1016, 1266, 1019, 1022, 1269, 1035, 1279, 1038, 1043, 1274, 1051, 1253, - 1055, 1058, 1262, 1061, 1064, 1067, 1248, 1246, 1243, 1080, 1083, 1086, 1090, 1098, 1102, - - 1242, 1231, 1110, 1114, 1244, 1122, 1126, 1134, 1138, 2164, 2164, 1146, 1234, 1151, 2164, 2164, 1159, - 1257, 632, 1258, 1163, 2164, 1256, 2164, 2164, 1166, 1224, 1169, 1176, 1216, 1172, 1191, 1212, 1201, - 2164, 2164, 1211, 1209, 1196, 1212, 1209, 1220, 1225, 1228, 1196, 1231, 1237, 1240, 1243, 1252, 2164, - 2164, 1213, 1198, 1188, 1260, 2164, 1263, 1266, 2164, 2164, 1277, 124, 125, 1190, 1181, 1285, 2164, - 2164, 1178, 1293, 2164, 2164, 1301, 1304, 1155, 1307, 1177, 578, 152, 5, 2164, 1151, 1311, 2164, - 2164, 1153, 1324, 2164, 2164, 1145, 1332, 1143, 1335, 2164, 2164, 1152, 1343, 2164, 1348, - - 1354, 1360, 1363, 2164, 2164, 1153, 1371, 1374, 1140, 1129, 1135, 1104, 1112, 1104, 1099, 1377, 2164, - 1380, 1383, 1390, 1126, 174, 158, 280, 1097, 1089, 1397, 1400, 1403, 1091, 1086, 1416, 1092, 1419, - 1422, 1430, 1436, 1072, 1067, 1069, 1056, 1446, 1449, 1452, 1455, 2164, 1458, 1468, 1076, 1472, 176, - 510, 1053, 1475, 1478, 1485, 1494, 2164, 2164, 1502, 1062, 1505, 1508, 2164, 2164, 1521, 2164, 2164, - 1040, 1041, 1025, 1027, 1529, 1532, 1540, 1545, 1556, 1559, 1481, 2164, 2164, 1567, 287, 179, 1572, - 1575, 1578, 1591, 2164, 2164, 1601, 1604, 1049, 1612, 1617, 1020, 1017, 997, 995, 1628, - - 633, 643, 1636, 651, 660, 1644, 670, 675, 412, 283, 538, 1652, 1655, 1664, 2164, 2164, 1672, - 2164, 2164, 999, 1680, 2164, 2164, 1037, 981, 1025, 978, 994, 975, 977, 959, 974, 956, 971, - 952, 968, 937, 953, 929, 605, 281, 434, 1688, 2164, 2164, 942, 2164, 972, 2164, 967, 927, - 901, 907, 896, 900, 890, 890, 874, 882, 859, 867, 856, 611, 614, 1696, 875, 2164, 2164, - 855, 820, 760, 773, 757, 770, 732, 713, 674, 686, 664, 670, 1699, 1702, 1705, 1722, 652, - 659, 673, 619, 616, 541, 556, 495, 496, 463, 495, 419, 444, 1730, 1733, 1740, - - 1750, 1768, 1802, 381, 403, 2164, 399, 2164, 400, 2164, 396, 2164, 325, 2164, 319, 2164, 700, - 1820, 657, 613, 1838, 1872, 274, 2164, 2164, 2164, 2164, 2164, 2164, 660, 727, 200, 301, 745, - 295, 1760, 254, 726, 218, 202, 207, 1794, 1865, 480, 153, 1890, 1786, 738, 2164, 1828, 2164, - 2164, 1763, 1893, 664, 742, 741, 769, 814, 822, 823, 826, 744, 797, 789, 863, 849, 850, - 864, 898, 1906, 1910, 2164, 2164, 1928, 1935, 1942, 1949, 1956, 1963, 1970, 1977, 1984, 1991, 1998, - 2005, 2012, 2019, 2024, 2029, 2034, 2039, 2044, 2051, 2054, 2057, 2060, 2063, 2066, 2073, - - 2077, 2083, 2089, 2095, 2101, 2107, 2114, 2121, 2128, 2135, 2142, 2149, 2156}; - - static const flex_int16_t yy_def[814] = { - 0, 775, 775, 776, 776, 776, 776, 777, 777, 778, 778, 779, 779, 780, 780, 780, 780, 781, 781, 775, 775, - 774, 21, 782, 782, 782, 782, 775, 775, 782, 782, 775, 775, 782, 782, 782, 782, 774, 37, 783, 783, 775, - 775, 783, 783, 783, 783, 774, 47, 784, 784, 785, 785, 786, 786, 775, 775, 786, 786, 786, 786, 787, 787, - 788, 788, 780, 780, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 789, 774, 774, - - 789, 789, 789, 789, 789, 789, 789, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 790, 774, 774, 790, - 790, 790, 790, 790, 774, 774, 774, 774, 774, 774, 774, 774, 791, 774, 774, 791, 791, 791, 791, 791, 791, - 774, 774, 774, 774, 774, 774, 792, 774, 774, 792, 774, 774, 774, 774, 774, 774, 774, 774, 793, 774, 774, - 793, 774, 774, 774, 774, 774, 774, 794, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 789, 789, 789, 789, 789, 789, 789, 789, 789, 789, 795, 774, 774, 774, - - 774, 774, 774, 774, 774, 790, 790, 790, 790, 790, 790, 796, 774, 774, 791, 791, 791, 791, 791, 791, 791, - 791, 797, 774, 792, 792, 798, 774, 774, 793, 793, 799, 774, 774, 800, 774, 800, 774, 774, 774, 801, 774, - 774, 774, 774, 774, 774, 774, 789, 789, 789, 789, 789, 789, 789, 789, 789, 802, 802, 774, 774, 774, 774, - 774, 774, 774, 774, 774, 790, 790, 790, 790, 803, 803, 774, 791, 791, 791, 791, 791, 791, 791, 804, 804, - 792, 805, 805, 774, 793, 806, 806, 774, 774, 800, 774, 774, 800, 774, 774, 801, - - 774, 774, 774, 774, 774, 774, 789, 789, 789, 789, 789, 789, 789, 789, 789, 774, 802, 774, 802, 774, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 790, 790, 790, 790, 774, 803, 774, 803, 774, 791, 791, 791, 791, - 791, 791, 791, 774, 804, 774, 804, 774, 774, 774, 805, 774, 805, 774, 774, 774, 774, 806, 774, 806, 774, - 800, 807, 774, 774, 774, 774, 774, 789, 789, 789, 789, 789, 774, 774, 789, 789, 789, 802, 774, 774, 774, - 774, 774, 774, 774, 790, 774, 774, 790, 790, 790, 803, 774, 774, 774, 774, 774, - - 791, 791, 774, 774, 791, 774, 774, 804, 774, 774, 774, 805, 774, 774, 774, 774, 806, 774, 800, 807, 807, - 774, 807, 774, 774, 774, 789, 774, 774, 789, 774, 774, 789, 774, 774, 774, 789, 774, 789, 774, 789, 802, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 790, 790, 790, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 791, 791, 774, 774, 774, 791, 774, 774, 774, 804, 805, 774, 806, 774, 800, 807, 807, 774, 789, 774, - 774, 774, 789, 774, 774, 774, 789, 789, 789, 774, 774, 774, 789, 774, 774, 774, - - 774, 774, 774, 774, 774, 790, 790, 790, 774, 774, 774, 774, 791, 791, 791, 774, 774, 805, 774, 806, 774, - 800, 807, 807, 789, 789, 789, 774, 774, 789, 789, 774, 790, 774, 774, 774, 774, 774, 774, 774, 774, 791, - 791, 791, 774, 774, 774, 806, 774, 800, 807, 807, 789, 789, 774, 774, 774, 774, 774, 789, 789, 790, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, 807, - 789, 774, 774, 774, 774, 774, 774, 774, 789, 774, 774, 774, 774, 774, 774, 774, - - 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, 807, 774, 774, 774, 774, 774, 774, 774, 774, 789, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, 807, - 774, 774, 774, 789, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, - 807, 807, 789, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, 807, 807, - 789, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, 807, - - 807, 808, 809, 789, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, 810, 811, 808, - 809, 789, 774, 774, 774, 774, 774, 774, 800, 810, 807, 812, 811, 813, 807, 789, 800, 812, 774, 813, 807, - 789, 800, 774, 774, 774, 800, 774, 774, 774, 774, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, - 800, 800, 800, 800, 800, 800, 800, 800, 800, 774, 0, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774}; - - static const flex_int16_t yy_nxt[2224] = { - 0, 774, 70, 71, 70, 70, 71, 70, 70, 71, 70, 70, 71, 70, 78, 240, 72, 78, 81, 72, 81, - 79, 73, 422, 79, 73, 75, 71, 75, 75, 71, 75, 84, 85, 82, 295, 82, 86, 87, 364, 76, 84, - 85, 76, 524, 88, 86, 87, 84, 85, 188, 89, 171, 86, 88, 84, 85, 189, 89, 241, 86, 88, 91, - 92, 91, 92, 172, 171, 88, 71, 71, 71, 71, 71, 71, 109, 71, 109, 109, 71, 109, 173, 195, 94, - 221, 240, 94, 299, 196, 110, 222, 242, 110, 93, 243, 93, 95, 96, 71, 96, 95, - - 95, 95, 95, 95, 95, 95, 97, 95, 98, 95, 99, 95, 100, 95, 98, 98, 98, 98, 98, 98, 98, - 98, 98, 98, 98, 98, 98, 95, 95, 98, 98, 101, 98, 98, 102, 98, 98, 103, 104, 98, 98, 98, - 105, 98, 98, 98, 98, 98, 98, 98, 106, 107, 98, 98, 109, 71, 109, 109, 71, 109, 71, 71, 71, - 71, 71, 71, 509, 511, 111, 422, 749, 111, 510, 512, 112, 422, 174, 112, 109, 71, 109, 109, 71, 109, - 71, 71, 71, 71, 71, 71, 173, 295, 110, 422, 551, 110, 422, 550, 113, 523, - - 174, 113, 109, 71, 109, 109, 71, 109, 109, 71, 109, 109, 71, 109, 173, 740, 111, 422, 423, 111, 745, - 611, 114, 740, 583, 114, 115, 116, 71, 116, 115, 115, 115, 115, 115, 115, 115, 117, 115, 118, 115, 119, - 115, 120, 115, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 115, 115, 118, 118, 118, - 118, 118, 118, 118, 118, 121, 118, 118, 122, 118, 123, 118, 118, 118, 124, 118, 118, 118, 125, 118, 118, - 118, 127, 71, 127, 127, 71, 127, 71, 71, 71, 71, 71, 71, 422, 422, 128, - - 422, 743, 128, 740, 422, 129, 740, 174, 129, 127, 71, 127, 127, 71, 127, 127, 71, 127, 127, 71, 127, - 173, 737, 128, 610, 641, 128, 729, 664, 130, 728, 552, 130, 131, 132, 71, 132, 131, 131, 131, 131, 131, - 131, 131, 133, 131, 134, 131, 135, 131, 136, 131, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, - 134, 134, 131, 131, 134, 134, 134, 134, 134, 137, 134, 134, 134, 134, 134, 138, 134, 134, 139, 134, 134, - 140, 141, 142, 134, 134, 134, 134, 134, 144, 71, 144, 144, 71, 144, 170, 170, - - 170, 170, 170, 170, 727, 726, 145, 725, 724, 145, 146, 147, 71, 147, 146, 146, 146, 146, 146, 146, 146, - 148, 146, 723, 146, 150, 146, 151, 146, 295, 154, 71, 154, 154, 71, 154, 71, 71, 71, 71, 71, 71, - 146, 146, 155, 174, 174, 155, 295, 640, 156, 422, 716, 156, 170, 170, 170, 715, 297, 173, 173, 152, 146, - 147, 71, 147, 146, 146, 146, 146, 146, 146, 146, 148, 146, 185, 146, 150, 146, 151, 146, 665, 154, 71, - 154, 154, 71, 154, 154, 71, 154, 154, 71, 154, 146, 146, 155, 295, 174, 155, - - 714, 713, 157, 748, 712, 157, 170, 170, 170, 170, 170, 170, 173, 152, 158, 159, 71, 159, 158, 158, 158, - 158, 158, 158, 158, 160, 158, 422, 158, 162, 158, 163, 158, 711, 166, 71, 166, 166, 71, 166, 170, 170, - 170, 170, 170, 170, 158, 158, 167, 174, 174, 167, 170, 170, 170, 422, 223, 179, 170, 170, 170, 710, 584, - 173, 173, 164, 158, 159, 71, 159, 158, 158, 158, 158, 158, 158, 158, 160, 158, 709, 158, 162, 158, 163, - 158, 180, 642, 84, 85, 84, 85, 181, 86, 174, 86, 295, 182, 174, 158, 158, - - 168, 183, 168, 236, 197, 174, 522, 173, 170, 170, 170, 173, 197, 170, 170, 170, 237, 164, 169, 173, 169, - 732, 295, 198, 708, 204, 174, 198, 295, 199, 735, 422, 200, 295, 174, 198, 200, 199, 201, 663, 173, 197, - 201, 202, 203, 174, 419, 202, 173, 295, 201, 681, 232, 174, 682, 202, 198, 707, 199, 173, 212, 174, 732, - 479, 198, 203, 204, 173, 170, 170, 170, 201, 628, 203, 733, 173, 202, 295, 706, 201, 174, 295, 630, 198, - 202, 204, 629, 212, 174, 738, 632, 198, 203, 204, 173, 227, 631, 705, 201, 634, - - 203, 757, 173, 213, 633, 704, 201, 174, 697, 636, 198, 213, 204, 635, 638, 174, 696, 295, 198, 203, 204, - 173, 227, 637, 695, 201, 694, 203, 639, 173, 202, 730, 732, 228, 170, 170, 170, 198, 202, 204, 170, 170, - 170, 295, 733, 198, 203, 204, 267, 267, 267, 693, 228, 732, 203, 295, 744, 202, 295, 295, 201, 295, 735, - 268, 753, 202, 316, 316, 316, 316, 316, 316, 267, 267, 267, 759, 327, 327, 327, 758, 328, 765, 318, 329, - 692, 318, 295, 268, 334, 334, 334, 334, 334, 334, 346, 346, 346, 346, 346, 346, - - 350, 350, 350, 760, 336, 319, 295, 336, 691, 690, 348, 689, 688, 348, 295, 351, 352, 352, 352, 352, 352, - 352, 357, 357, 357, 359, 359, 359, 359, 359, 359, 295, 354, 763, 766, 354, 764, 358, 337, 295, 295, 361, - 767, 295, 361, 376, 376, 376, 349, 316, 316, 316, 316, 316, 316, 316, 316, 316, 687, 355, 377, 362, 384, - 384, 384, 318, 295, 295, 318, 771, 761, 318, 387, 387, 387, 327, 327, 327, 762, 328, 295, 295, 329, 390, - 390, 390, 769, 770, 381, 334, 334, 334, 334, 334, 334, 334, 334, 334, 391, 397, - - 397, 397, 399, 399, 399, 336, 771, 686, 336, 685, 680, 336, 679, 678, 398, 295, 768, 400, 403, 403, 403, - 406, 406, 406, 346, 346, 346, 677, 676, 395, 346, 346, 346, 404, 392, 675, 407, 346, 346, 346, 348, 350, - 350, 350, 674, 673, 348, 409, 409, 409, 672, 410, 671, 348, 411, 670, 351, 352, 352, 352, 352, 352, 352, - 352, 352, 352, 357, 357, 357, 359, 359, 359, 669, 354, 408, 668, 354, 667, 666, 354, 662, 358, 414, 414, - 414, 361, 415, 661, 660, 416, 359, 359, 359, 359, 359, 359, 421, 421, 421, 426, - - 426, 426, 659, 658, 412, 657, 361, 656, 655, 361, 654, 653, 422, 423, 428, 428, 428, 431, 431, 431, 376, - 376, 376, 434, 434, 434, 652, 435, 651, 429, 436, 650, 432, 649, 648, 377, 438, 438, 438, 316, 316, 316, - 647, 417, 443, 443, 443, 646, 439, 627, 626, 440, 384, 384, 384, 318, 446, 446, 446, 387, 387, 387, 448, - 448, 448, 390, 390, 390, 450, 450, 450, 625, 451, 624, 620, 452, 599, 449, 442, 598, 391, 456, 456, 456, - 458, 458, 458, 397, 397, 397, 597, 459, 459, 459, 596, 460, 593, 457, 461, 399, - - 399, 399, 398, 462, 462, 462, 585, 463, 581, 572, 464, 403, 403, 403, 400, 467, 467, 467, 571, 468, 570, - 569, 469, 406, 406, 406, 404, 471, 471, 471, 562, 472, 561, 560, 473, 346, 346, 346, 407, 409, 409, 409, - 554, 410, 553, 549, 411, 352, 352, 352, 544, 348, 414, 414, 414, 543, 415, 542, 541, 416, 359, 359, 359, - 354, 421, 421, 421, 426, 426, 426, 428, 428, 428, 431, 431, 431, 361, 484, 484, 484, 422, 485, 540, 539, - 486, 429, 474, 538, 432, 533, 531, 475, 488, 488, 488, 530, 489, 477, 527, 490, - - 526, 480, 434, 434, 434, 525, 435, 521, 519, 436, 438, 438, 438, 494, 494, 494, 515, 495, 481, 514, 496, - 498, 498, 498, 513, 440, 443, 443, 443, 500, 500, 500, 446, 446, 446, 508, 507, 499, 502, 502, 502, 448, - 448, 448, 503, 503, 503, 506, 504, 501, 497, 505, 493, 450, 450, 450, 449, 451, 492, 491, 452, 456, 456, - 456, 458, 458, 458, 459, 459, 459, 487, 460, 483, 482, 461, 422, 478, 457, 462, 462, 462, 476, 463, 470, - 466, 464, 467, 467, 467, 465, 468, 455, 454, 469, 471, 471, 471, 453, 472, 447, - - 445, 473, 516, 516, 516, 352, 352, 352, 359, 359, 359, 444, 484, 484, 484, 441, 485, 437, 517, 486, 433, - 354, 430, 427, 361, 488, 488, 488, 425, 489, 424, 418, 490, 528, 528, 528, 494, 494, 494, 413, 495, 518, - 405, 496, 498, 498, 498, 402, 529, 500, 500, 500, 401, 396, 520, 532, 532, 532, 394, 393, 499, 502, 502, - 502, 503, 503, 503, 389, 504, 388, 386, 505, 534, 534, 534, 536, 536, 536, 516, 516, 516, 545, 545, 545, - 547, 547, 547, 535, 385, 383, 537, 359, 359, 359, 517, 382, 380, 546, 555, 555, - - 555, 528, 528, 528, 557, 557, 557, 361, 558, 379, 378, 559, 375, 556, 374, 373, 529, 532, 532, 532, 534, - 534, 534, 563, 563, 563, 372, 564, 371, 370, 565, 536, 536, 536, 369, 535, 368, 566, 566, 566, 367, 567, - 366, 548, 568, 365, 537, 573, 573, 573, 575, 575, 575, 577, 577, 577, 545, 545, 545, 547, 547, 547, 574, - 295, 363, 576, 356, 345, 578, 579, 579, 579, 546, 582, 582, 582, 586, 586, 586, 555, 555, 555, 579, 579, - 579, 580, 588, 588, 588, 295, 589, 587, 344, 590, 556, 557, 557, 557, 580, 558, - - 343, 342, 559, 591, 591, 591, 594, 594, 594, 563, 563, 563, 341, 564, 340, 339, 565, 338, 592, 333, 332, - 595, 566, 566, 566, 331, 567, 330, 326, 568, 573, 573, 573, 600, 600, 600, 325, 601, 324, 323, 602, 575, - 575, 575, 322, 574, 603, 603, 603, 321, 604, 320, 315, 605, 314, 313, 576, 577, 577, 577, 606, 606, 606, - 312, 607, 311, 310, 608, 582, 582, 582, 309, 578, 612, 612, 612, 586, 586, 586, 614, 614, 614, 308, 615, - 295, 307, 616, 306, 613, 305, 304, 587, 588, 588, 588, 303, 589, 302, 301, 590, - - 298, 609, 591, 591, 591, 617, 617, 617, 296, 618, 295, 293, 619, 594, 594, 594, 292, 592, 621, 621, 621, - 291, 622, 289, 288, 623, 287, 285, 595, 600, 600, 600, 284, 601, 282, 281, 602, 603, 603, 603, 280, 604, - 279, 278, 605, 606, 606, 606, 277, 607, 276, 275, 608, 612, 612, 612, 643, 643, 643, 274, 644, 272, 271, - 645, 270, 614, 614, 614, 613, 615, 269, 266, 616, 617, 617, 617, 265, 618, 264, 263, 619, 621, 621, 621, - 262, 622, 261, 260, 623, 643, 643, 643, 259, 644, 257, 256, 645, 683, 683, 683, - - 698, 698, 698, 699, 699, 699, 683, 683, 683, 255, 254, 253, 684, 422, 252, 251, 295, 250, 700, 422, 249, - 684, 422, 701, 701, 701, 248, 702, 247, 246, 703, 698, 698, 698, 699, 699, 699, 245, 244, 422, 239, 718, - 718, 718, 236, 719, 238, 295, 720, 700, 422, 701, 701, 701, 234, 702, 233, 422, 703, 717, 231, 742, 742, - 742, 754, 754, 754, 422, 420, 420, 420, 420, 420, 420, 420, 420, 420, 422, 423, 420, 295, 229, 420, 420, - 420, 422, 420, 750, 750, 750, 226, 751, 224, 220, 752, 742, 742, 742, 219, 218, - - 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 422, 217, 420, 216, 214, 420, 420, 420, 422, 420, - 718, 718, 718, 211, 719, 210, 209, 720, 750, 750, 750, 480, 751, 420, 420, 752, 422, 420, 420, 420, 420, - 420, 736, 420, 420, 420, 208, 207, 420, 205, 194, 420, 420, 420, 422, 420, 193, 192, 191, 190, 186, 184, - 178, 177, 178, 746, 746, 746, 177, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 736, 747, 176, 420, - 175, 774, 420, 420, 420, 422, 420, 746, 746, 746, 754, 754, 754, 774, 755, 774, - - 774, 756, 774, 774, 420, 420, 747, 772, 772, 772, 295, 772, 772, 772, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 773, 774, 774, 774, 773, 68, 68, 68, 68, 68, 68, 68, 69, 69, 69, 69, 69, 69, 69, - 74, 74, 74, 74, 74, 74, 74, 77, 77, 77, 77, 77, 77, 77, 80, 80, 80, 80, 80, 80, 80, - 83, 83, 83, 83, 83, 83, 83, 90, 90, 90, 90, 90, 90, 90, 108, 108, 108, 108, 108, 108, 108, - 126, 126, 126, 126, 126, 126, 126, 143, 143, 143, 143, 143, 143, 143, 149, 149, - - 149, 149, 149, 149, 149, 153, 153, 153, 153, 153, 153, 153, 161, 161, 161, 161, 161, 161, 161, 165, 165, - 165, 165, 165, 165, 165, 187, 187, 187, 774, 187, 206, 206, 206, 774, 206, 215, 215, 215, 774, 215, 225, - 225, 225, 774, 225, 230, 230, 230, 774, 230, 235, 235, 235, 235, 235, 774, 235, 258, 774, 258, 273, 774, - 273, 283, 774, 283, 286, 774, 286, 290, 774, 290, 294, 294, 294, 294, 294, 294, 294, 300, 774, 774, 300, - 317, 317, 317, 317, 317, 317, 335, 335, 335, 335, 335, 335, 347, 347, 347, 347, - - 347, 347, 353, 353, 353, 353, 353, 353, 360, 360, 360, 360, 360, 360, 420, 420, 420, 420, 420, 420, 420, - 721, 721, 721, 721, 721, 721, 721, 722, 722, 722, 722, 722, 722, 722, 731, 731, 731, 731, 731, 731, 731, - 734, 734, 734, 734, 734, 734, 734, 739, 739, 739, 739, 739, 739, 739, 741, 741, 741, 741, 741, 741, 741, - 67, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774}; - - static const flex_int16_t yy_chk[2224] = { - 0, 0, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 9, 179, 3, 10, 11, 4, 12, - 9, 5, 481, 10, 6, 7, 7, 7, 8, 8, 8, 13, 13, 11, 297, 12, 13, 13, 297, 7, 14, - 14, 8, 481, 13, 14, 14, 15, 15, 101, 15, 72, 15, 14, 16, 16, 101, 16, 179, 16, 15, 17, - 17, 18, 18, 72, 73, 16, 19, 19, 19, 20, 20, 20, 23, 23, 23, 24, 24, 24, 73, 107, 19, - 142, 240, 20, 240, 107, 23, 142, 180, 24, 17, 180, 18, 21, 21, 21, 21, 21, - - 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 25, 25, 25, 26, 26, 26, 27, 27, 27, - 28, 28, 28, 463, 464, 25, 480, 745, 26, 463, 464, 27, 523, 76, 28, 29, 29, 29, 30, 30, 30, - 31, 31, 31, 32, 32, 32, 76, 522, 29, 551, 523, 30, 584, 522, 31, 480, - - 99, 32, 33, 33, 33, 34, 34, 34, 35, 35, 35, 36, 36, 36, 99, 741, 33, 732, 732, 34, 740, - 584, 35, 739, 551, 36, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 39, 39, 39, 40, 40, 40, 41, 41, 41, 42, 42, 42, 524, 641, 39, - - 610, 737, 40, 735, 583, 41, 733, 119, 42, 43, 43, 43, 44, 44, 44, 45, 45, 45, 46, 46, 46, - 119, 723, 43, 583, 610, 44, 715, 641, 45, 713, 524, 46, 47, 47, 47, 47, 47, 47, 47, 47, 47, - 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, - 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, - 47, 47, 47, 47, 47, 47, 47, 47, 49, 49, 49, 50, 50, 50, 70, 70, - - 70, 71, 71, 71, 711, 709, 49, 707, 705, 50, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, - 51, 51, 704, 51, 51, 51, 51, 51, 609, 53, 53, 53, 54, 54, 54, 55, 55, 55, 56, 56, 56, - 51, 51, 53, 94, 135, 54, 237, 609, 55, 642, 697, 56, 75, 75, 75, 696, 237, 94, 135, 51, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 94, 52, 52, 52, 52, 52, 642, 57, 57, - 57, 58, 58, 58, 59, 59, 59, 60, 60, 60, 52, 52, 57, 744, 150, 58, - - 695, 694, 59, 744, 693, 60, 96, 96, 96, 109, 109, 109, 150, 52, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 552, 61, 61, 61, 61, 61, 692, 63, 63, 63, 64, 64, 64, 116, 116, - 116, 127, 127, 127, 61, 61, 63, 145, 162, 64, 132, 132, 132, 611, 145, 86, 144, 144, 144, 691, 552, - 145, 162, 61, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 690, 62, 62, 62, 62, - 62, 86, 611, 65, 65, 66, 66, 86, 65, 112, 66, 479, 86, 110, 62, 62, - - 65, 86, 66, 171, 110, 111, 479, 112, 147, 147, 147, 110, 111, 154, 154, 154, 171, 62, 65, 111, 66, - 720, 640, 112, 689, 112, 113, 110, 663, 110, 720, 664, 112, 364, 114, 111, 110, 111, 112, 640, 113, 114, - 110, 112, 111, 167, 364, 110, 114, 419, 111, 663, 167, 128, 664, 111, 113, 688, 113, 167, 128, 129, 719, - 419, 114, 113, 114, 128, 159, 159, 159, 113, 601, 114, 719, 129, 113, 730, 687, 114, 130, 755, 602, 128, - 114, 128, 601, 130, 155, 730, 604, 129, 128, 129, 130, 155, 602, 686, 128, 605, - - 129, 755, 155, 128, 604, 685, 129, 156, 680, 607, 130, 129, 130, 605, 608, 157, 679, 717, 155, 130, 155, - 156, 157, 607, 678, 130, 677, 155, 608, 157, 130, 717, 731, 155, 166, 166, 166, 156, 155, 156, 170, 170, - 170, 738, 731, 157, 156, 157, 207, 207, 207, 676, 156, 734, 157, 748, 738, 156, 757, 756, 157, 763, 734, - 207, 748, 157, 258, 258, 258, 259, 259, 259, 267, 267, 267, 757, 268, 268, 268, 756, 268, 763, 258, 268, - 675, 259, 758, 267, 273, 273, 273, 274, 274, 274, 283, 283, 283, 284, 284, 284, - - 285, 285, 285, 758, 273, 259, 765, 274, 674, 673, 283, 672, 671, 284, 764, 285, 286, 286, 286, 287, 287, - 287, 289, 289, 289, 290, 290, 290, 291, 291, 291, 759, 286, 761, 764, 287, 762, 289, 274, 760, 761, 290, - 765, 762, 291, 312, 312, 312, 284, 316, 316, 316, 317, 317, 317, 319, 319, 319, 670, 287, 312, 291, 322, - 322, 322, 316, 767, 768, 317, 769, 759, 319, 325, 325, 325, 327, 327, 327, 760, 327, 766, 769, 327, 331, - 331, 331, 767, 768, 319, 334, 334, 334, 335, 335, 335, 337, 337, 337, 331, 339, - - 339, 339, 340, 340, 340, 334, 770, 669, 335, 666, 662, 337, 661, 660, 339, 770, 766, 340, 343, 343, 343, - 345, 345, 345, 346, 346, 346, 659, 658, 337, 347, 347, 347, 343, 331, 657, 345, 349, 349, 349, 346, 350, - 350, 350, 656, 655, 347, 351, 351, 351, 654, 351, 653, 349, 351, 652, 350, 352, 352, 352, 353, 353, 353, - 355, 355, 355, 357, 357, 357, 359, 359, 359, 651, 352, 349, 650, 353, 648, 646, 355, 639, 357, 358, 358, - 358, 359, 358, 638, 637, 358, 360, 360, 360, 362, 362, 362, 365, 365, 365, 370, - - 370, 370, 636, 635, 355, 634, 360, 633, 632, 362, 631, 630, 365, 365, 372, 372, 372, 374, 374, 374, 376, - 376, 376, 377, 377, 377, 629, 377, 628, 372, 377, 627, 374, 626, 625, 376, 379, 379, 379, 381, 381, 381, - 624, 362, 382, 382, 382, 620, 379, 599, 598, 379, 384, 384, 384, 381, 386, 386, 386, 387, 387, 387, 389, - 389, 389, 390, 390, 390, 391, 391, 391, 597, 391, 596, 593, 391, 572, 389, 381, 571, 390, 395, 395, 395, - 396, 396, 396, 397, 397, 397, 570, 398, 398, 398, 569, 398, 561, 395, 398, 399, - - 399, 399, 397, 400, 400, 400, 553, 400, 549, 541, 400, 403, 403, 403, 399, 404, 404, 404, 540, 404, 539, - 538, 404, 406, 406, 406, 403, 407, 407, 407, 533, 407, 531, 530, 407, 408, 408, 408, 406, 409, 409, 409, - 526, 409, 525, 521, 409, 412, 412, 412, 515, 408, 414, 414, 414, 514, 414, 513, 512, 414, 417, 417, 417, - 412, 421, 421, 421, 426, 426, 426, 428, 428, 428, 431, 431, 431, 417, 429, 429, 429, 421, 429, 511, 510, - 429, 428, 408, 509, 431, 506, 497, 412, 432, 432, 432, 493, 432, 417, 491, 432, - - 487, 421, 434, 434, 434, 483, 434, 478, 476, 434, 438, 438, 438, 440, 440, 440, 470, 440, 421, 466, 440, - 442, 442, 442, 465, 438, 443, 443, 443, 444, 444, 444, 446, 446, 446, 455, 454, 442, 447, 447, 447, 448, - 448, 448, 449, 449, 449, 453, 449, 445, 441, 449, 439, 450, 450, 450, 448, 450, 437, 433, 450, 456, 456, - 456, 458, 458, 458, 459, 459, 459, 430, 459, 427, 423, 459, 420, 418, 456, 462, 462, 462, 413, 462, 405, - 402, 462, 467, 467, 467, 401, 467, 394, 393, 467, 471, 471, 471, 392, 471, 388, - - 385, 471, 474, 474, 474, 475, 475, 475, 477, 477, 477, 383, 484, 484, 484, 380, 484, 378, 474, 484, 375, - 475, 373, 371, 477, 488, 488, 488, 369, 488, 368, 363, 488, 492, 492, 492, 494, 494, 494, 356, 494, 475, - 344, 494, 498, 498, 498, 342, 492, 500, 500, 500, 341, 338, 477, 501, 501, 501, 333, 332, 498, 502, 502, - 502, 503, 503, 503, 330, 503, 326, 324, 503, 507, 507, 507, 508, 508, 508, 516, 516, 516, 518, 518, 518, - 519, 519, 519, 507, 323, 321, 508, 520, 520, 520, 516, 320, 315, 518, 527, 527, - - 527, 528, 528, 528, 529, 529, 529, 520, 529, 314, 313, 529, 311, 527, 310, 309, 528, 532, 532, 532, 534, - 534, 534, 535, 535, 535, 308, 535, 307, 306, 535, 536, 536, 536, 305, 534, 302, 537, 537, 537, 301, 537, - 300, 520, 537, 298, 536, 542, 542, 542, 543, 543, 543, 544, 544, 544, 545, 545, 545, 547, 547, 547, 542, - 294, 292, 543, 288, 282, 544, 548, 548, 548, 545, 550, 550, 550, 554, 554, 554, 555, 555, 555, 579, 579, - 579, 548, 556, 556, 556, 550, 556, 554, 281, 556, 555, 557, 557, 557, 579, 557, - - 280, 279, 557, 560, 560, 560, 562, 562, 562, 563, 563, 563, 278, 563, 277, 276, 563, 275, 560, 272, 271, - 562, 566, 566, 566, 270, 566, 269, 266, 566, 573, 573, 573, 574, 574, 574, 265, 574, 264, 263, 574, 575, - 575, 575, 262, 573, 576, 576, 576, 261, 576, 260, 257, 576, 256, 255, 575, 577, 577, 577, 578, 578, 578, - 254, 578, 253, 252, 578, 582, 582, 582, 251, 577, 585, 585, 585, 586, 586, 586, 587, 587, 587, 250, 587, - 582, 249, 587, 248, 585, 246, 245, 586, 588, 588, 588, 244, 588, 243, 242, 588, - - 238, 582, 591, 591, 591, 592, 592, 592, 236, 592, 235, 234, 592, 594, 594, 594, 233, 591, 595, 595, 595, - 232, 595, 231, 228, 595, 227, 226, 594, 600, 600, 600, 223, 600, 222, 221, 600, 603, 603, 603, 220, 603, - 219, 218, 603, 606, 606, 606, 217, 606, 216, 213, 606, 612, 612, 612, 613, 613, 613, 212, 613, 211, 210, - 613, 209, 614, 614, 614, 612, 614, 208, 204, 614, 617, 617, 617, 203, 617, 202, 201, 617, 621, 621, 621, - 200, 621, 199, 198, 621, 643, 643, 643, 197, 643, 196, 195, 643, 665, 665, 665, - - 681, 681, 681, 682, 682, 682, 683, 683, 683, 194, 193, 192, 665, 665, 191, 190, 681, 189, 682, 682, 188, - 683, 683, 684, 684, 684, 185, 684, 184, 183, 684, 698, 698, 698, 699, 699, 699, 182, 181, 684, 175, 700, - 700, 700, 174, 700, 172, 698, 700, 699, 699, 701, 701, 701, 169, 701, 168, 700, 701, 698, 164, 736, 736, - 736, 753, 753, 753, 701, 702, 702, 702, 702, 702, 702, 702, 702, 702, 736, 736, 702, 753, 160, 702, 702, - 702, 702, 702, 747, 747, 747, 152, 747, 148, 141, 747, 742, 742, 742, 140, 139, - - 702, 702, 703, 703, 703, 703, 703, 703, 703, 703, 703, 742, 138, 703, 137, 133, 703, 703, 703, 703, 703, - 718, 718, 718, 125, 718, 124, 123, 718, 750, 750, 750, 742, 750, 703, 703, 750, 718, 721, 721, 721, 721, - 721, 721, 721, 721, 721, 122, 121, 721, 117, 106, 721, 721, 721, 721, 721, 105, 104, 103, 102, 97, 93, - 92, 91, 85, 743, 743, 743, 84, 721, 721, 722, 722, 722, 722, 722, 722, 722, 722, 722, 743, 82, 722, - 79, 67, 722, 722, 722, 722, 722, 746, 746, 746, 754, 754, 754, 0, 754, 0, - - 0, 754, 0, 0, 722, 722, 746, 771, 771, 771, 754, 772, 772, 772, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 771, 0, 0, 0, 772, 775, 775, 775, 775, 775, 775, 775, 776, 776, 776, 776, 776, 776, 776, - 777, 777, 777, 777, 777, 777, 777, 778, 778, 778, 778, 778, 778, 778, 779, 779, 779, 779, 779, 779, 779, - 780, 780, 780, 780, 780, 780, 780, 781, 781, 781, 781, 781, 781, 781, 782, 782, 782, 782, 782, 782, 782, - 783, 783, 783, 783, 783, 783, 783, 784, 784, 784, 784, 784, 784, 784, 785, 785, - - 785, 785, 785, 785, 785, 786, 786, 786, 786, 786, 786, 786, 787, 787, 787, 787, 787, 787, 787, 788, 788, - 788, 788, 788, 788, 788, 789, 789, 789, 0, 789, 790, 790, 790, 0, 790, 791, 791, 791, 0, 791, 792, - 792, 792, 0, 792, 793, 793, 793, 0, 793, 794, 794, 794, 794, 794, 0, 794, 795, 0, 795, 796, 0, - 796, 797, 0, 797, 798, 0, 798, 799, 0, 799, 800, 800, 800, 800, 800, 800, 800, 801, 0, 0, 801, - 802, 802, 802, 802, 802, 802, 803, 803, 803, 803, 803, 803, 804, 804, 804, 804, - - 804, 804, 805, 805, 805, 805, 805, 805, 806, 806, 806, 806, 806, 806, 807, 807, 807, 807, 807, 807, 807, - 808, 808, 808, 808, 808, 808, 808, 809, 809, 809, 809, 809, 809, 809, 810, 810, 810, 810, 810, 810, 810, - 811, 811, 811, 811, 811, 811, 811, 812, 812, 812, 812, 812, 812, 812, 813, 813, 813, 813, 813, 813, 813, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774}; - - /* Table of booleans, true if rule could match eol. */ - static const flex_int32_t yy_rule_can_match_eol[141] = { - 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 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, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, - 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, - }; - - static yy_state_type yy_last_accepting_state; - static char* yy_last_accepting_cpos; - - extern int yy_flex_debug; - int yy_flex_debug = 0; - - /* The intent behind this definition is that it'll catch - * any uses of REJECT which flex missed. - */ +static const flex_int16_t yy_accept[775] = + { 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 141, 139, 15, 10, + 10, 15, 15, 119, 10, 119, 5, 6, 5, 8, + 9, 8, 135, 127, 128, 136, 133, 136, 134, 138, + 127, 128, 138, 139, 40, 10, 40, 40, 40, 38, + + 40, 40, 40, 40, 40, 40, 40, 44, 10, 44, + 44, 139, 139, 44, 51, 10, 51, 51, 51, 49, + 51, 55, 10, 55, 139, 55, 72, 10, 72, 72, + 72, 70, 72, 72, 72, 72, 72, 76, 10, 76, + 139, 76, 83, 10, 83, 83, 83, 81, 83, 87, + 10, 87, 114, 10, 114, 114, 114, 112, 114, 114, + 114, 114, 114, 114, 118, 10, 118, 136, 135, 10, + 0, 2, 2, 0, 4, 7, 130, 129, 0, 0, + 0, 0, 0, 0, 0, 39, 41, 41, 41, 41, + 41, 41, 41, 41, 41, 41, 0, 0, 0, 0, + + 0, 0, 0, 0, 50, 52, 52, 0, 0, 71, + 73, 73, 73, 73, 73, 73, 0, 0, 82, 84, + 84, 0, 113, 115, 115, 115, 115, 115, 115, 115, + 115, 0, 0, 0, 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, 137, 0, 41, 41, + 41, 41, 41, 41, 41, 41, 41, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, + 0, 0, 73, 73, 73, 73, 0, 0, 0, 84, + 0, 0, 115, 115, 115, 115, 115, 115, 115, 0, + 0, 0, 132, 0, 14, 1, 0, 0, 125, 0, + + 0, 0, 122, 121, 0, 0, 41, 41, 41, 41, + 41, 41, 41, 41, 41, 0, 0, 43, 0, 0, + 0, 57, 0, 0, 56, 0, 0, 0, 0, 0, + 54, 0, 0, 0, 59, 58, 73, 73, 73, 73, + 0, 0, 75, 0, 0, 0, 0, 0, 0, 86, + 0, 115, 115, 115, 115, 115, 115, 115, 0, 0, + 117, 0, 0, 0, 0, 126, 120, 0, 0, 17, + 41, 41, 41, 41, 41, 0, 0, 41, 41, 41, + 0, 16, 0, 57, 0, 88, 56, 0, 0, 48, + 47, 0, 0, 73, 0, 0, 73, 73, 73, 0, + + 89, 0, 80, 79, 0, 0, 0, 0, 0, 115, + 115, 0, 0, 115, 0, 0, 0, 0, 0, 0, + 0, 12, 0, 123, 124, 17, 41, 0, 0, 41, + 0, 0, 41, 0, 29, 28, 41, 0, 41, 0, + 41, 0, 16, 46, 0, 88, 45, 0, 0, 0, + 0, 0, 63, 62, 73, 73, 73, 0, 74, 89, + 0, 0, 91, 90, 0, 0, 0, 115, 115, 0, + 105, 104, 115, 0, 111, 110, 0, 0, 0, 0, + 0, 11, 41, 0, 21, 20, 41, 0, 25, 24, + 41, 41, 41, 0, 33, 32, 41, 0, 42, 46, + + 77, 45, 0, 78, 0, 61, 60, 73, 73, 73, + 0, 0, 0, 0, 0, 115, 115, 115, 0, 116, + 0, 0, 0, 0, 41, 41, 41, 0, 0, 41, + 41, 77, 0, 53, 78, 73, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 115, 115, 115, 0, 0, + 0, 0, 41, 41, 0, 0, 0, 31, 30, 41, + 41, 73, 0, 67, 66, 0, 69, 68, 0, 85, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 131, 0, 0, 0, 41, 0, 0, 0, 27, 26, + 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, + + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 23, 22, 0, 35, 34, 41, + 0, 65, 64, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 19, 18, 41, 93, 0, 92, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 41, 95, 94, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + + 0, 0, 0, 41, 0, 99, 0, 98, 0, 103, + 0, 102, 0, 109, 0, 108, 0, 0, 0, 0, + 0, 0, 41, 97, 96, 101, 100, 107, 106, 0, + 0, 0, 12, 0, 12, 0, 41, 0, 0, 0, + 0, 0, 41, 0, 0, 0, 0, 0, 11, 0, + 37, 36, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 13, 0 + } ; + +static const YY_CHAR yy_ec[256] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, + 1, 2, 4, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 5, 6, 7, 1, 1, 8, 9, 1, + 1, 1, 1, 1, 10, 11, 12, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 14, 15, 16, + 17, 18, 19, 1, 20, 21, 22, 23, 24, 21, + 25, 25, 25, 25, 25, 26, 27, 25, 28, 29, + 25, 25, 30, 31, 25, 25, 25, 25, 32, 25, + 33, 1, 34, 1, 25, 1, 35, 36, 37, 38, + + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 25, 57, + 58, 59, 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, 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, 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, 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, 1, 1, 1, 1, + 1, 1, 1, 1, 1 + } ; + +static const YY_CHAR yy_meta[60] = + { 0, + 1, 2, 2, 2, 1, 1, 1, 1, 1, 3, + 3, 1, 4, 5, 1, 1, 1, 6, 1, 7, + 7, 7, 7, 7, 5, 5, 5, 5, 5, 5, + 5, 5, 1, 1, 7, 7, 7, 7, 7, 7, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5 + } ; + +static const flex_int16_t yy_base[814] = + { 0, + 0, 0, 0, 3, 6, 9, 24, 27, 11, 14, + 15, 17, 29, 38, 45, 52, 59, 61, 67, 70, + 95, 0, 73, 76, 153, 156, 159, 162, 177, 180, + 183, 186, 201, 204, 207, 210, 226, 278, 245, 248, + 251, 254, 297, 300, 303, 306, 330, 0, 388, 391, + 394, 397, 412, 415, 418, 421, 437, 489, 456, 459, + 541, 0, 462, 465, 598, 600, 2053, 2135, 2135, 269, + 272, 47, 62, 2135, 321, 172, 2135, 2135, 2033, 2135, + 2135, 2022, 2135, 2033, 2031, 475, 2135, 2135, 2135, 2135, + 2027, 2025, 1987, 468, 2135, 324, 1998, 0, 196, 2135, + + 8, 1968, 1958, 1952, 1863, 1858, 35, 2135, 481, 600, + 608, 604, 612, 641, 2135, 509, 1878, 0, 258, 2135, + 1855, 2135, 515, 660, 663, 682, 2135, 525, 1875, 0, + 310, 2135, 1854, 1852, 1855, 1834, 1849, 2135, 528, 704, + 701, 723, 2135, 531, 1869, 0, 407, 2135, 1847, 2135, + 534, 606, 2135, 626, 1857, 0, 469, 2135, 1831, 1829, + 1821, 1830, 1814, 32, 2135, 667, 621, 1851, 1820, 671, + 628, 1784, 2135, 1827, 1818, 2135, 2135, 2135, 2, 44, + 1781, 1780, 1778, 1814, 1793, 2135, 0, 1787, 1774, 1777, + 1784, 1784, 1772, 1747, 1752, 1753, 1752, 1748, 1742, 1722, + + 1735, 1712, 1715, 1720, 2135, 0, 1713, 1695, 1693, 2135, + 0, 686, 1670, 1671, 1668, 1660, 1666, 1656, 2135, 0, + 1661, 1650, 2135, 0, 1652, 1644, 1635, 1646, 1627, 1648, + 1632, 1626, 1634, 1648, 1646, 1649, 458, 1611, 2135, 72, + 0, 1606, 1602, 1635, 1633, 1594, 2135, 1607, 1590, 1586, + 1594, 1592, 1601, 1583, 1567, 1567, 1600, 759, 762, 1577, + 1564, 1570, 1547, 1559, 1560, 1544, 727, 766, 772, 1534, + 779, 783, 1545, 1536, 1520, 1519, 791, 795, 1528, 799, + 802, 808, 1527, 1517, 1517, 1513, 1506, 1496, 1503, 815, + 819, 1519, 2135, 1521, 2135, 2135, 17, 1488, 2135, 1514, + + 1513, 1473, 2135, 2135, 1464, 1475, 1477, 1459, 1490, 1453, + 1450, 825, 1455, 1443, 1438, 828, 832, 2135, 836, 1449, + 1442, 845, 1447, 1432, 849, 1437, 853, 856, 864, 871, + 2135, 874, 1433, 877, 2135, 2135, 1425, 891, 1426, 1421, + 894, 897, 2135, 900, 1410, 903, 907, 919, 922, 2135, + 925, 928, 931, 1411, 1406, 947, 1404, 950, 953, 956, + 2135, 966, 1422, 646, 976, 2135, 2135, 1429, 1427, 959, + 1419, 979, 1386, 983, 1379, 986, 995, 1374, 1004, 1381, + 1007, 989, 1379, 1010, 1367, 1013, 1020, 1369, 1024, 2135, + 2135, 1032, 1357, 1035, 1038, 1054, 1352, 1353, 1347, 1041, + + 1062, 1065, 2135, 2135, 1073, 1077, 1080, 1093, 1096, 1333, + 1325, 1104, 1111, 1334, 1120, 1123, 1131, 1352, 507, 1353, + 1136, 2135, 1347, 2135, 2135, 1139, 1315, 1142, 1149, 1291, + 1159, 1162, 1297, 1176, 2135, 2135, 1295, 1170, 1285, 1187, + 1298, 1195, 1198, 1201, 1275, 1204, 1207, 1212, 1274, 1215, + 1218, 1231, 2135, 2135, 1282, 1273, 1263, 1239, 2135, 1242, + 1245, 1249, 2135, 2135, 1258, 124, 125, 1274, 1262, 1266, + 2135, 2135, 1259, 1274, 2135, 2135, 1282, 1261, 491, 152, + 5, 2135, 1235, 1285, 2135, 2135, 1234, 1293, 2135, 2135, + 1227, 1301, 1226, 1304, 2135, 2135, 1235, 1312, 2135, 1317, + + 1320, 1323, 1329, 1332, 1335, 2135, 2135, 1236, 1346, 1349, + 1352, 1223, 1211, 1217, 1204, 1210, 1202, 1187, 1355, 2135, + 1218, 174, 158, 384, 1188, 1177, 1358, 1365, 1374, 1186, + 1181, 1382, 1385, 2135, 1388, 1187, 1391, 1395, 1407, 1410, + 1418, 1175, 1169, 1162, 1141, 1423, 1426, 1429, 1161, 1435, + 176, 461, 1134, 1445, 1448, 1452, 1464, 2135, 2135, 1472, + 1151, 1475, 1478, 2135, 2135, 1491, 2135, 2135, 1499, 2135, + 1128, 1131, 1122, 1120, 1502, 1505, 1518, 1521, 1529, 1534, + 2135, 1545, 228, 179, 1548, 1551, 1555, 1567, 2135, 2135, + 1575, 1579, 1143, 1587, 1591, 1113, 1105, 1103, 1101, 1599, + + 567, 570, 1607, 582, 626, 1615, 668, 671, 280, 222, + 643, 1623, 1626, 1635, 2135, 2135, 1643, 2135, 2135, 1101, + 1651, 2135, 2135, 1142, 1093, 1127, 1077, 1095, 1076, 1084, + 1066, 1081, 1059, 1074, 1052, 1068, 1049, 1058, 1040, 715, + 244, 385, 1659, 2135, 2135, 1053, 2135, 1082, 2135, 1078, + 1026, 1015, 1016, 1006, 1008, 992, 1000, 974, 973, 921, + 929, 918, 388, 391, 1667, 937, 2135, 2135, 912, 907, + 889, 902, 861, 851, 835, 848, 832, 830, 792, 776, + 1670, 1673, 1676, 1693, 753, 714, 746, 695, 712, 666, + 678, 644, 648, 603, 609, 501, 471, 1701, 1704, 1711, + + 1721, 1739, 1773, 408, 429, 2135, 421, 2135, 421, 2135, + 402, 2135, 402, 2135, 396, 2135, 725, 1791, 675, 506, + 1809, 1843, 272, 2135, 2135, 2135, 2135, 2135, 2135, 684, + 706, 200, 311, 731, 260, 1731, 220, 668, 218, 202, + 207, 1765, 1836, 296, 153, 1861, 1757, 728, 2135, 1799, + 2135, 2135, 1734, 1864, 439, 709, 753, 773, 806, 807, + 761, 873, 823, 901, 948, 1031, 1013, 1035, 1014, 929, + 1877, 1881, 2135, 2135, 1899, 1906, 1913, 1920, 1927, 1934, + 1941, 1948, 1955, 1962, 1969, 1976, 1983, 1990, 1995, 2000, + 2005, 2010, 2015, 2022, 2025, 2028, 2031, 2034, 2037, 2044, + + 2048, 2054, 2060, 2066, 2072, 2078, 2085, 2092, 2099, 2106, + 2113, 2120, 2127 + } ; + +static const flex_int16_t yy_def[814] = + { 0, + 775, 775, 776, 776, 776, 776, 777, 777, 778, 778, + 779, 779, 780, 780, 780, 780, 781, 781, 775, 775, + 774, 21, 782, 782, 782, 782, 775, 775, 782, 782, + 775, 775, 782, 782, 782, 782, 783, 783, 784, 784, + 775, 775, 784, 784, 784, 784, 774, 47, 785, 785, + 775, 775, 785, 785, 785, 785, 786, 786, 787, 787, + 774, 61, 788, 788, 780, 780, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 789, 774, 774, + + 789, 789, 789, 789, 789, 789, 789, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 790, 774, 774, + 790, 774, 774, 774, 774, 774, 774, 774, 774, 791, + 774, 774, 791, 791, 791, 791, 791, 774, 774, 774, + 774, 774, 774, 774, 774, 792, 774, 774, 792, 774, + 774, 774, 774, 774, 774, 793, 774, 774, 793, 793, + 793, 793, 793, 793, 774, 774, 774, 774, 774, 774, + 794, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 789, 789, 789, 789, + 789, 789, 789, 789, 789, 789, 795, 774, 774, 774, + + 774, 774, 774, 774, 774, 790, 790, 796, 774, 774, + 791, 791, 791, 791, 791, 791, 797, 774, 774, 792, + 792, 798, 774, 793, 793, 793, 793, 793, 793, 793, + 793, 799, 774, 774, 800, 774, 800, 774, 774, 774, + 801, 774, 774, 774, 774, 774, 774, 774, 789, 789, + 789, 789, 789, 789, 789, 789, 789, 802, 802, 774, + 774, 774, 774, 774, 774, 774, 790, 803, 803, 774, + 774, 774, 791, 791, 791, 791, 804, 804, 774, 792, + 805, 805, 793, 793, 793, 793, 793, 793, 793, 806, + 806, 774, 774, 800, 774, 774, 800, 774, 774, 801, + + 774, 774, 774, 774, 774, 774, 789, 789, 789, 789, + 789, 789, 789, 789, 789, 774, 802, 774, 802, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 803, + 774, 803, 774, 774, 774, 774, 791, 791, 791, 791, + 774, 804, 774, 804, 774, 774, 774, 774, 805, 774, + 805, 793, 793, 793, 793, 793, 793, 793, 774, 806, + 774, 806, 774, 800, 807, 774, 774, 774, 774, 774, + 789, 789, 789, 789, 789, 774, 774, 789, 789, 789, + 802, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 803, 774, 791, 774, 774, 791, 791, 791, 804, + + 774, 774, 774, 774, 805, 774, 774, 774, 774, 793, + 793, 774, 774, 793, 774, 774, 806, 774, 800, 807, + 807, 774, 807, 774, 774, 774, 789, 774, 774, 789, + 774, 774, 789, 774, 774, 774, 789, 774, 789, 774, + 789, 802, 774, 774, 774, 774, 774, 803, 774, 774, + 774, 774, 774, 774, 791, 791, 791, 774, 774, 774, + 805, 774, 774, 774, 774, 774, 774, 793, 793, 774, + 774, 774, 793, 774, 774, 774, 806, 774, 800, 807, + 807, 774, 789, 774, 774, 774, 789, 774, 774, 774, + 789, 789, 789, 774, 774, 774, 789, 774, 774, 774, + + 774, 774, 803, 774, 774, 774, 774, 791, 791, 791, + 805, 774, 774, 774, 774, 793, 793, 793, 774, 774, + 774, 800, 807, 807, 789, 789, 789, 774, 774, 789, + 789, 774, 774, 774, 774, 791, 774, 774, 774, 774, + 805, 774, 774, 774, 774, 793, 793, 793, 774, 800, + 807, 807, 789, 789, 774, 774, 774, 774, 774, 789, + 789, 791, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 800, 807, 807, 789, 774, 774, 774, 774, 774, + 774, 774, 789, 774, 774, 774, 774, 774, 774, 774, + + 774, 774, 774, 774, 774, 774, 774, 774, 800, 807, + 807, 774, 774, 774, 774, 774, 774, 774, 774, 789, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 800, + 807, 807, 774, 774, 774, 789, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 800, 807, 807, 789, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 800, 807, 807, 807, 789, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 800, 807, 807, + + 807, 808, 809, 789, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 800, 807, 810, 811, + 808, 809, 789, 774, 774, 774, 774, 774, 774, 800, + 810, 807, 812, 811, 813, 807, 789, 800, 812, 774, + 813, 807, 789, 800, 774, 774, 774, 800, 774, 774, + 774, 774, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 774, 0, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774 + } ; + +static const flex_int16_t yy_nxt[2195] = + { 0, + 774, 70, 71, 70, 70, 71, 70, 70, 71, 70, + 70, 71, 70, 78, 240, 72, 78, 81, 72, 81, + 79, 73, 422, 79, 73, 75, 71, 75, 75, 71, + 75, 84, 85, 82, 295, 82, 86, 87, 364, 76, + 84, 85, 76, 524, 88, 86, 87, 84, 85, 188, + 89, 171, 86, 88, 84, 85, 189, 89, 241, 86, + 88, 91, 92, 91, 92, 172, 171, 88, 71, 71, + 71, 71, 71, 71, 109, 71, 109, 109, 71, 109, + 173, 195, 94, 230, 240, 94, 299, 196, 110, 231, + 242, 110, 93, 243, 93, 95, 96, 71, 96, 95, + + 95, 95, 95, 95, 95, 95, 97, 95, 98, 95, + 99, 95, 100, 95, 98, 98, 98, 98, 98, 98, + 98, 98, 98, 98, 98, 98, 98, 95, 95, 98, + 98, 101, 98, 98, 102, 98, 98, 103, 104, 98, + 98, 98, 105, 98, 98, 98, 98, 98, 98, 98, + 106, 107, 98, 98, 109, 71, 109, 109, 71, 109, + 71, 71, 71, 71, 71, 71, 512, 514, 111, 422, + 749, 111, 513, 515, 112, 422, 174, 112, 109, 71, + 109, 109, 71, 109, 71, 71, 71, 71, 71, 71, + 173, 295, 110, 422, 551, 110, 422, 550, 113, 523, + + 174, 113, 109, 71, 109, 109, 71, 109, 109, 71, + 109, 109, 71, 109, 173, 740, 111, 422, 423, 111, + 745, 611, 114, 740, 583, 114, 115, 116, 71, 116, + 115, 115, 115, 115, 115, 115, 115, 117, 115, 422, + 115, 119, 115, 120, 115, 422, 123, 71, 123, 123, + 71, 123, 71, 71, 71, 71, 71, 71, 115, 115, + 124, 422, 174, 124, 641, 610, 125, 743, 740, 125, + 170, 170, 170, 170, 170, 170, 173, 121, 115, 116, + 71, 116, 115, 115, 115, 115, 115, 115, 115, 117, + 115, 664, 115, 119, 115, 120, 115, 295, 123, 71, + + 123, 123, 71, 123, 123, 71, 123, 123, 71, 123, + 115, 115, 124, 295, 174, 124, 740, 640, 126, 748, + 737, 126, 170, 170, 170, 170, 170, 170, 173, 121, + 127, 128, 71, 128, 127, 127, 127, 127, 127, 127, + 127, 129, 127, 130, 127, 131, 127, 132, 127, 130, + 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, + 130, 130, 127, 127, 130, 130, 130, 130, 130, 130, + 130, 130, 133, 130, 130, 134, 130, 135, 130, 130, + 130, 136, 130, 130, 130, 137, 130, 130, 130, 139, + 71, 139, 139, 71, 139, 71, 71, 71, 71, 71, + + 71, 422, 422, 140, 729, 295, 140, 728, 422, 141, + 727, 174, 141, 139, 71, 139, 139, 71, 139, 139, + 71, 139, 139, 71, 139, 173, 726, 140, 681, 725, + 140, 682, 665, 142, 724, 552, 142, 143, 144, 71, + 144, 143, 143, 143, 143, 143, 143, 143, 145, 143, + 723, 143, 147, 143, 148, 143, 295, 151, 71, 151, + 151, 71, 151, 166, 71, 166, 166, 71, 166, 143, + 143, 152, 174, 174, 152, 295, 757, 167, 422, 716, + 167, 179, 170, 170, 170, 297, 173, 173, 149, 143, + 144, 71, 144, 143, 143, 143, 143, 143, 143, 143, + + 145, 143, 185, 143, 147, 143, 148, 143, 295, 180, + 170, 170, 170, 584, 732, 181, 170, 170, 170, 522, + 182, 143, 143, 735, 295, 183, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 170, 479, 715, + 149, 153, 154, 71, 154, 153, 153, 153, 153, 153, + 153, 153, 155, 153, 156, 153, 157, 153, 158, 153, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 153, 153, 156, 156, 156, 156, 156, + 159, 156, 156, 156, 156, 156, 160, 156, 156, 161, + 156, 156, 162, 163, 164, 156, 156, 156, 156, 156, + + 84, 85, 84, 85, 174, 86, 628, 86, 174, 630, + 174, 197, 174, 168, 714, 168, 174, 222, 173, 197, + 629, 632, 173, 631, 173, 174, 173, 170, 170, 170, + 173, 169, 232, 169, 198, 633, 199, 236, 198, 173, + 204, 713, 198, 200, 199, 174, 198, 200, 199, 201, + 237, 203, 197, 201, 202, 203, 712, 201, 202, 173, + 422, 201, 202, 295, 174, 634, 202, 174, 170, 170, + 170, 208, 170, 170, 170, 198, 419, 204, 173, 635, + 732, 173, 711, 710, 203, 295, 174, 271, 271, 271, + 201, 642, 733, 208, 198, 202, 204, 198, 744, 204, + + 173, 295, 272, 203, 709, 174, 203, 636, 174, 209, + 638, 732, 209, 738, 202, 217, 198, 202, 204, 173, + 708, 637, 173, 733, 639, 203, 295, 174, 327, 327, + 327, 201, 295, 707, 217, 198, 202, 204, 198, 732, + 204, 173, 295, 328, 203, 295, 758, 203, 735, 663, + 201, 706, 705, 201, 753, 218, 730, 198, 218, 204, + 316, 316, 316, 316, 316, 316, 203, 329, 329, 329, + 295, 763, 201, 329, 329, 329, 318, 202, 295, 318, + 271, 271, 271, 331, 334, 334, 334, 759, 335, 331, + 295, 336, 341, 341, 341, 272, 341, 341, 341, 319, + + 346, 346, 346, 348, 348, 348, 704, 760, 343, 348, + 348, 348, 343, 332, 697, 347, 359, 359, 359, 350, + 359, 359, 359, 295, 295, 350, 376, 376, 376, 316, + 316, 316, 361, 316, 316, 316, 361, 316, 316, 316, + 295, 377, 351, 344, 696, 318, 384, 384, 384, 318, + 387, 387, 387, 318, 327, 327, 327, 389, 389, 389, + 765, 390, 761, 762, 391, 329, 329, 329, 695, 328, + 381, 362, 329, 329, 329, 329, 329, 329, 334, 334, + 334, 331, 335, 764, 694, 336, 693, 692, 331, 691, + 295, 331, 395, 395, 395, 341, 341, 341, 341, 341, + + 341, 341, 341, 341, 346, 346, 346, 396, 402, 402, + 402, 343, 403, 690, 343, 404, 392, 343, 295, 347, + 348, 348, 348, 348, 348, 348, 348, 348, 348, 406, + 406, 406, 408, 408, 408, 400, 350, 771, 766, 350, + 689, 688, 350, 397, 407, 687, 295, 409, 412, 412, + 412, 415, 415, 415, 359, 359, 359, 359, 359, 359, + 426, 426, 426, 413, 686, 295, 416, 359, 359, 359, + 361, 685, 680, 361, 679, 678, 405, 421, 421, 421, + 428, 428, 428, 361, 431, 431, 431, 376, 376, 376, + 443, 443, 443, 422, 423, 429, 434, 434, 434, 432, + + 435, 767, 377, 436, 417, 438, 438, 438, 316, 316, + 316, 384, 384, 384, 446, 446, 446, 439, 677, 771, + 440, 387, 387, 387, 318, 389, 389, 389, 676, 390, + 295, 295, 391, 329, 329, 329, 450, 450, 450, 395, + 395, 395, 458, 458, 458, 675, 674, 442, 295, 331, + 769, 451, 295, 673, 396, 452, 452, 452, 459, 453, + 672, 671, 454, 460, 460, 460, 402, 402, 402, 670, + 403, 669, 770, 404, 348, 348, 348, 448, 406, 406, + 406, 462, 462, 462, 768, 463, 668, 667, 464, 666, + 350, 662, 661, 407, 408, 408, 408, 465, 465, 465, + + 660, 466, 659, 658, 467, 412, 412, 412, 657, 409, + 656, 461, 470, 470, 470, 655, 471, 654, 653, 472, + 413, 415, 415, 415, 474, 474, 474, 652, 475, 651, + 650, 476, 359, 359, 359, 649, 416, 421, 421, 421, + 426, 426, 426, 428, 428, 428, 648, 647, 361, 646, + 484, 484, 484, 422, 485, 627, 626, 486, 429, 625, + 431, 431, 431, 488, 488, 488, 624, 489, 620, 599, + 490, 438, 438, 438, 480, 432, 598, 434, 434, 434, + 597, 435, 596, 477, 436, 593, 440, 585, 494, 494, + 494, 481, 495, 581, 574, 496, 498, 498, 498, 443, + + 443, 443, 500, 500, 500, 446, 446, 446, 502, 502, + 502, 573, 499, 329, 329, 329, 450, 450, 450, 505, + 505, 505, 572, 506, 571, 562, 507, 561, 560, 331, + 554, 451, 452, 452, 452, 553, 453, 549, 548, 454, + 458, 458, 458, 460, 460, 460, 348, 348, 348, 503, + 462, 462, 462, 547, 463, 546, 459, 464, 545, 465, + 465, 465, 350, 466, 544, 543, 467, 470, 470, 470, + 542, 471, 536, 531, 472, 474, 474, 474, 530, 475, + 527, 526, 476, 519, 519, 519, 484, 484, 484, 525, + 485, 521, 511, 486, 488, 488, 488, 518, 489, 520, + + 517, 490, 528, 528, 528, 494, 494, 494, 516, 495, + 510, 509, 496, 498, 498, 498, 508, 529, 500, 500, + 500, 532, 532, 532, 502, 502, 502, 504, 501, 499, + 533, 533, 533, 535, 535, 535, 505, 505, 505, 497, + 506, 493, 492, 507, 491, 487, 534, 537, 537, 537, + 539, 539, 539, 348, 348, 348, 519, 519, 519, 555, + 555, 555, 538, 483, 482, 540, 528, 528, 528, 350, + 422, 478, 520, 473, 556, 557, 557, 557, 469, 558, + 468, 529, 559, 532, 532, 532, 533, 533, 533, 535, + 535, 535, 537, 537, 537, 457, 563, 563, 563, 456, + + 564, 455, 534, 565, 449, 541, 447, 538, 539, 539, + 539, 566, 566, 566, 445, 567, 444, 441, 568, 569, + 569, 569, 437, 540, 575, 575, 575, 577, 577, 577, + 579, 579, 579, 433, 430, 570, 582, 582, 582, 576, + 427, 425, 578, 424, 418, 580, 586, 586, 586, 555, + 555, 555, 295, 588, 588, 588, 414, 589, 411, 410, + 590, 587, 401, 399, 556, 557, 557, 557, 398, 558, + 394, 393, 559, 591, 591, 591, 594, 594, 594, 563, + 563, 563, 388, 564, 386, 385, 565, 383, 592, 382, + 380, 595, 566, 566, 566, 379, 567, 378, 375, 568, + + 569, 569, 569, 575, 575, 575, 600, 600, 600, 374, + 601, 373, 372, 602, 371, 370, 570, 369, 576, 577, + 577, 577, 603, 603, 603, 368, 604, 367, 366, 605, + 579, 579, 579, 365, 578, 606, 606, 606, 295, 607, + 363, 358, 608, 357, 356, 580, 582, 582, 582, 612, + 612, 612, 586, 586, 586, 355, 614, 614, 614, 354, + 615, 353, 295, 616, 613, 352, 345, 587, 588, 588, + 588, 340, 589, 339, 338, 590, 591, 591, 591, 609, + 617, 617, 617, 337, 618, 333, 326, 619, 594, 594, + 594, 592, 621, 621, 621, 325, 622, 324, 323, 623, + + 600, 600, 600, 595, 601, 322, 321, 602, 603, 603, + 603, 320, 604, 315, 314, 605, 606, 606, 606, 313, + 607, 312, 311, 608, 612, 612, 612, 643, 643, 643, + 310, 644, 309, 308, 645, 307, 614, 614, 614, 613, + 615, 306, 305, 616, 617, 617, 617, 304, 618, 303, + 302, 619, 621, 621, 621, 301, 622, 298, 296, 623, + 643, 643, 643, 295, 644, 293, 292, 645, 683, 683, + 683, 698, 698, 698, 699, 699, 699, 683, 683, 683, + 291, 289, 288, 684, 422, 287, 286, 295, 285, 700, + 422, 284, 684, 422, 701, 701, 701, 283, 702, 282, + + 280, 703, 698, 698, 698, 699, 699, 699, 279, 278, + 422, 276, 718, 718, 718, 275, 719, 274, 295, 720, + 700, 422, 701, 701, 701, 273, 702, 270, 422, 703, + 717, 269, 742, 742, 742, 754, 754, 754, 422, 420, + 420, 420, 420, 420, 420, 420, 420, 420, 422, 423, + 420, 295, 267, 420, 420, 420, 422, 420, 750, 750, + 750, 266, 751, 265, 264, 752, 742, 742, 742, 263, + 262, 420, 420, 420, 420, 420, 420, 420, 420, 420, + 420, 420, 422, 261, 420, 260, 259, 420, 420, 420, + 422, 420, 718, 718, 718, 257, 719, 256, 255, 720, + + 750, 750, 750, 480, 751, 420, 420, 752, 422, 420, + 420, 420, 420, 420, 736, 420, 420, 420, 254, 253, + 420, 252, 251, 420, 420, 420, 422, 420, 250, 249, + 248, 247, 246, 245, 244, 239, 236, 746, 746, 746, + 238, 420, 420, 420, 420, 420, 420, 420, 420, 420, + 420, 736, 747, 234, 420, 233, 229, 420, 420, 420, + 422, 420, 746, 746, 746, 754, 754, 754, 228, 755, + 227, 226, 756, 225, 223, 420, 420, 747, 772, 772, + 772, 295, 772, 772, 772, 221, 219, 216, 215, 214, + 213, 212, 210, 207, 773, 205, 194, 193, 773, 68, + + 68, 68, 68, 68, 68, 68, 69, 69, 69, 69, + 69, 69, 69, 74, 74, 74, 74, 74, 74, 74, + 77, 77, 77, 77, 77, 77, 77, 80, 80, 80, + 80, 80, 80, 80, 83, 83, 83, 83, 83, 83, + 83, 90, 90, 90, 90, 90, 90, 90, 108, 108, + 108, 108, 108, 108, 108, 118, 118, 118, 118, 118, + 118, 118, 122, 122, 122, 122, 122, 122, 122, 138, + 138, 138, 138, 138, 138, 138, 146, 146, 146, 146, + 146, 146, 146, 150, 150, 150, 150, 150, 150, 150, + 165, 165, 165, 165, 165, 165, 165, 187, 187, 187, + + 192, 187, 206, 206, 206, 191, 206, 211, 211, 211, + 190, 211, 220, 220, 220, 186, 220, 224, 224, 224, + 184, 224, 235, 235, 235, 235, 235, 178, 235, 258, + 177, 258, 268, 178, 268, 277, 177, 277, 281, 176, + 281, 290, 175, 290, 294, 294, 294, 294, 294, 294, + 294, 300, 774, 774, 300, 317, 317, 317, 317, 317, + 317, 330, 330, 330, 330, 330, 330, 342, 342, 342, + 342, 342, 342, 349, 349, 349, 349, 349, 349, 360, + 360, 360, 360, 360, 360, 420, 420, 420, 420, 420, + 420, 420, 721, 721, 721, 721, 721, 721, 721, 722, + + 722, 722, 722, 722, 722, 722, 731, 731, 731, 731, + 731, 731, 731, 734, 734, 734, 734, 734, 734, 734, + 739, 739, 739, 739, 739, 739, 739, 741, 741, 741, + 741, 741, 741, 741, 67, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774 + + } ; + +static const flex_int16_t yy_chk[2195] = + { 0, + 0, 3, 3, 3, 4, 4, 4, 5, 5, 5, + 6, 6, 6, 9, 179, 3, 10, 11, 4, 12, + 9, 5, 481, 10, 6, 7, 7, 7, 8, 8, + 8, 13, 13, 11, 297, 12, 13, 13, 297, 7, + 14, 14, 8, 481, 13, 14, 14, 15, 15, 101, + 15, 72, 15, 14, 16, 16, 101, 16, 179, 16, + 15, 17, 17, 18, 18, 72, 73, 16, 19, 19, + 19, 20, 20, 20, 23, 23, 23, 24, 24, 24, + 73, 107, 19, 164, 240, 20, 240, 107, 23, 164, + 180, 24, 17, 180, 18, 21, 21, 21, 21, 21, + + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 25, 25, 25, 26, 26, 26, + 27, 27, 27, 28, 28, 28, 466, 467, 25, 480, + 745, 26, 466, 467, 27, 523, 76, 28, 29, 29, + 29, 30, 30, 30, 31, 31, 31, 32, 32, 32, + 76, 522, 29, 551, 523, 30, 584, 522, 31, 480, + + 99, 32, 33, 33, 33, 34, 34, 34, 35, 35, + 35, 36, 36, 36, 99, 741, 33, 732, 732, 34, + 740, 584, 35, 739, 551, 36, 37, 37, 37, 37, + 37, 37, 37, 37, 37, 37, 37, 37, 37, 610, + 37, 37, 37, 37, 37, 583, 39, 39, 39, 40, + 40, 40, 41, 41, 41, 42, 42, 42, 37, 37, + 39, 641, 119, 40, 610, 583, 41, 737, 735, 42, + 70, 70, 70, 71, 71, 71, 119, 37, 38, 38, + 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, + 38, 641, 38, 38, 38, 38, 38, 609, 43, 43, + + 43, 44, 44, 44, 45, 45, 45, 46, 46, 46, + 38, 38, 43, 744, 131, 44, 733, 609, 45, 744, + 723, 46, 75, 75, 75, 96, 96, 96, 131, 38, + 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, 47, 49, + 49, 49, 50, 50, 50, 51, 51, 51, 52, 52, + + 52, 524, 642, 49, 715, 663, 50, 713, 664, 51, + 711, 147, 52, 53, 53, 53, 54, 54, 54, 55, + 55, 55, 56, 56, 56, 147, 709, 53, 663, 707, + 54, 664, 642, 55, 705, 524, 56, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, + 704, 57, 57, 57, 57, 57, 755, 59, 59, 59, + 60, 60, 60, 63, 63, 63, 64, 64, 64, 57, + 57, 59, 94, 157, 60, 237, 755, 63, 552, 697, + 64, 86, 109, 109, 109, 237, 94, 157, 57, 58, + 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, + + 58, 58, 94, 58, 58, 58, 58, 58, 479, 86, + 116, 116, 116, 552, 720, 86, 123, 123, 123, 479, + 86, 58, 58, 720, 419, 86, 128, 128, 128, 139, + 139, 139, 144, 144, 144, 151, 151, 151, 419, 696, + 58, 61, 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, + + 65, 65, 66, 66, 110, 65, 601, 66, 112, 602, + 152, 110, 111, 65, 695, 66, 113, 152, 110, 111, + 601, 604, 112, 602, 152, 167, 111, 154, 154, 154, + 113, 65, 167, 66, 110, 604, 110, 171, 112, 167, + 112, 694, 111, 110, 111, 114, 113, 112, 113, 110, + 171, 111, 114, 112, 110, 113, 693, 111, 112, 114, + 611, 113, 111, 364, 124, 605, 113, 125, 166, 166, + 166, 124, 170, 170, 170, 114, 364, 114, 124, 605, + 719, 125, 692, 691, 114, 738, 126, 212, 212, 212, + 114, 611, 719, 126, 124, 114, 124, 125, 738, 125, + + 126, 730, 212, 124, 690, 141, 125, 607, 140, 124, + 608, 731, 125, 730, 124, 140, 126, 125, 126, 141, + 689, 607, 140, 731, 608, 126, 756, 142, 267, 267, + 267, 126, 640, 688, 142, 141, 126, 141, 140, 734, + 140, 142, 717, 267, 141, 748, 756, 140, 734, 640, + 141, 687, 686, 140, 748, 141, 717, 142, 140, 142, + 258, 258, 258, 259, 259, 259, 142, 268, 268, 268, + 757, 761, 142, 269, 269, 269, 258, 142, 761, 259, + 271, 271, 271, 268, 272, 272, 272, 757, 272, 269, + 758, 272, 277, 277, 277, 271, 278, 278, 278, 259, + + 280, 280, 280, 281, 281, 281, 685, 758, 277, 282, + 282, 282, 278, 269, 680, 280, 290, 290, 290, 281, + 291, 291, 291, 759, 760, 282, 312, 312, 312, 316, + 316, 316, 290, 317, 317, 317, 291, 319, 319, 319, + 763, 312, 282, 278, 679, 316, 322, 322, 322, 317, + 325, 325, 325, 319, 327, 327, 327, 328, 328, 328, + 763, 328, 759, 760, 328, 329, 329, 329, 678, 327, + 319, 291, 330, 330, 330, 332, 332, 332, 334, 334, + 334, 329, 334, 762, 677, 334, 676, 675, 330, 674, + 762, 332, 338, 338, 338, 341, 341, 341, 342, 342, + + 342, 344, 344, 344, 346, 346, 346, 338, 347, 347, + 347, 341, 347, 673, 342, 347, 332, 344, 764, 346, + 348, 348, 348, 349, 349, 349, 351, 351, 351, 352, + 352, 352, 353, 353, 353, 344, 348, 770, 764, 349, + 672, 671, 351, 338, 352, 670, 770, 353, 356, 356, + 356, 358, 358, 358, 359, 359, 359, 360, 360, 360, + 370, 370, 370, 356, 669, 765, 358, 362, 362, 362, + 359, 666, 662, 360, 661, 660, 351, 365, 365, 365, + 372, 372, 372, 362, 374, 374, 374, 376, 376, 376, + 382, 382, 382, 365, 365, 372, 377, 377, 377, 374, + + 377, 765, 376, 377, 362, 379, 379, 379, 381, 381, + 381, 384, 384, 384, 386, 386, 386, 379, 659, 769, + 379, 387, 387, 387, 381, 389, 389, 389, 658, 389, + 767, 769, 389, 392, 392, 392, 394, 394, 394, 395, + 395, 395, 400, 400, 400, 657, 656, 381, 766, 392, + 767, 394, 768, 655, 395, 396, 396, 396, 400, 396, + 654, 653, 396, 401, 401, 401, 402, 402, 402, 652, + 402, 651, 768, 402, 405, 405, 405, 392, 406, 406, + 406, 407, 407, 407, 766, 407, 650, 648, 407, 646, + 405, 639, 638, 406, 408, 408, 408, 409, 409, 409, + + 637, 409, 636, 635, 409, 412, 412, 412, 634, 408, + 633, 405, 413, 413, 413, 632, 413, 631, 630, 413, + 412, 415, 415, 415, 416, 416, 416, 629, 416, 628, + 627, 416, 417, 417, 417, 626, 415, 421, 421, 421, + 426, 426, 426, 428, 428, 428, 625, 624, 417, 620, + 429, 429, 429, 421, 429, 599, 598, 429, 428, 597, + 431, 431, 431, 432, 432, 432, 596, 432, 593, 574, + 432, 438, 438, 438, 421, 431, 573, 434, 434, 434, + 572, 434, 571, 417, 434, 561, 438, 553, 440, 440, + 440, 421, 440, 549, 545, 440, 442, 442, 442, 443, + + 443, 443, 444, 444, 444, 446, 446, 446, 447, 447, + 447, 544, 442, 448, 448, 448, 450, 450, 450, 451, + 451, 451, 543, 451, 542, 536, 451, 531, 530, 448, + 526, 450, 452, 452, 452, 525, 452, 521, 518, 452, + 458, 458, 458, 460, 460, 460, 461, 461, 461, 448, + 462, 462, 462, 517, 462, 516, 458, 462, 515, 465, + 465, 465, 461, 465, 514, 513, 465, 470, 470, 470, + 512, 470, 508, 497, 470, 474, 474, 474, 493, 474, + 491, 487, 474, 477, 477, 477, 484, 484, 484, 483, + 484, 478, 461, 484, 488, 488, 488, 473, 488, 477, + + 469, 488, 492, 492, 492, 494, 494, 494, 468, 494, + 457, 456, 494, 498, 498, 498, 455, 492, 500, 500, + 500, 501, 501, 501, 502, 502, 502, 449, 445, 498, + 503, 503, 503, 504, 504, 504, 505, 505, 505, 441, + 505, 439, 437, 505, 433, 430, 503, 509, 509, 509, + 510, 510, 510, 511, 511, 511, 519, 519, 519, 527, + 527, 527, 509, 427, 423, 510, 528, 528, 528, 511, + 420, 418, 519, 414, 527, 529, 529, 529, 411, 529, + 410, 528, 529, 532, 532, 532, 533, 533, 533, 535, + 535, 535, 537, 537, 537, 399, 538, 538, 538, 398, + + 538, 397, 533, 538, 393, 511, 388, 537, 539, 539, + 539, 540, 540, 540, 385, 540, 383, 380, 540, 541, + 541, 541, 378, 539, 546, 546, 546, 547, 547, 547, + 548, 548, 548, 375, 373, 541, 550, 550, 550, 546, + 371, 369, 547, 368, 363, 548, 554, 554, 554, 555, + 555, 555, 550, 556, 556, 556, 357, 556, 355, 354, + 556, 554, 345, 340, 555, 557, 557, 557, 339, 557, + 337, 333, 557, 560, 560, 560, 562, 562, 562, 563, + 563, 563, 326, 563, 324, 323, 563, 321, 560, 320, + 315, 562, 566, 566, 566, 314, 566, 313, 311, 566, + + 569, 569, 569, 575, 575, 575, 576, 576, 576, 310, + 576, 309, 308, 576, 307, 306, 569, 305, 575, 577, + 577, 577, 578, 578, 578, 302, 578, 301, 300, 578, + 579, 579, 579, 298, 577, 580, 580, 580, 294, 580, + 292, 289, 580, 288, 287, 579, 582, 582, 582, 585, + 585, 585, 586, 586, 586, 286, 587, 587, 587, 285, + 587, 284, 582, 587, 585, 283, 279, 586, 588, 588, + 588, 276, 588, 275, 274, 588, 591, 591, 591, 582, + 592, 592, 592, 273, 592, 270, 266, 592, 594, 594, + 594, 591, 595, 595, 595, 265, 595, 264, 263, 595, + + 600, 600, 600, 594, 600, 262, 261, 600, 603, 603, + 603, 260, 603, 257, 256, 603, 606, 606, 606, 255, + 606, 254, 253, 606, 612, 612, 612, 613, 613, 613, + 252, 613, 251, 250, 613, 249, 614, 614, 614, 612, + 614, 248, 246, 614, 617, 617, 617, 245, 617, 244, + 243, 617, 621, 621, 621, 242, 621, 238, 236, 621, + 643, 643, 643, 235, 643, 234, 233, 643, 665, 665, + 665, 681, 681, 681, 682, 682, 682, 683, 683, 683, + 232, 231, 230, 665, 665, 229, 228, 681, 227, 682, + 682, 226, 683, 683, 684, 684, 684, 225, 684, 222, + + 221, 684, 698, 698, 698, 699, 699, 699, 218, 217, + 684, 216, 700, 700, 700, 215, 700, 214, 698, 700, + 699, 699, 701, 701, 701, 213, 701, 209, 700, 701, + 698, 208, 736, 736, 736, 753, 753, 753, 701, 702, + 702, 702, 702, 702, 702, 702, 702, 702, 736, 736, + 702, 753, 207, 702, 702, 702, 702, 702, 747, 747, + 747, 204, 747, 203, 202, 747, 742, 742, 742, 201, + 200, 702, 702, 703, 703, 703, 703, 703, 703, 703, + 703, 703, 742, 199, 703, 198, 197, 703, 703, 703, + 703, 703, 718, 718, 718, 196, 718, 195, 194, 718, + + 750, 750, 750, 742, 750, 703, 703, 750, 718, 721, + 721, 721, 721, 721, 721, 721, 721, 721, 193, 192, + 721, 191, 190, 721, 721, 721, 721, 721, 189, 188, + 185, 184, 183, 182, 181, 175, 174, 743, 743, 743, + 172, 721, 721, 722, 722, 722, 722, 722, 722, 722, + 722, 722, 743, 169, 722, 168, 163, 722, 722, 722, + 722, 722, 746, 746, 746, 754, 754, 754, 162, 754, + 161, 160, 754, 159, 155, 722, 722, 746, 771, 771, + 771, 754, 772, 772, 772, 149, 145, 137, 136, 135, + 134, 133, 129, 121, 771, 117, 106, 105, 772, 775, + + 775, 775, 775, 775, 775, 775, 776, 776, 776, 776, + 776, 776, 776, 777, 777, 777, 777, 777, 777, 777, + 778, 778, 778, 778, 778, 778, 778, 779, 779, 779, + 779, 779, 779, 779, 780, 780, 780, 780, 780, 780, + 780, 781, 781, 781, 781, 781, 781, 781, 782, 782, + 782, 782, 782, 782, 782, 783, 783, 783, 783, 783, + 783, 783, 784, 784, 784, 784, 784, 784, 784, 785, + 785, 785, 785, 785, 785, 785, 786, 786, 786, 786, + 786, 786, 786, 787, 787, 787, 787, 787, 787, 787, + 788, 788, 788, 788, 788, 788, 788, 789, 789, 789, + + 104, 789, 790, 790, 790, 103, 790, 791, 791, 791, + 102, 791, 792, 792, 792, 97, 792, 793, 793, 793, + 93, 793, 794, 794, 794, 794, 794, 92, 794, 795, + 91, 795, 796, 85, 796, 797, 84, 797, 798, 82, + 798, 799, 79, 799, 800, 800, 800, 800, 800, 800, + 800, 801, 67, 0, 801, 802, 802, 802, 802, 802, + 802, 803, 803, 803, 803, 803, 803, 804, 804, 804, + 804, 804, 804, 805, 805, 805, 805, 805, 805, 806, + 806, 806, 806, 806, 806, 807, 807, 807, 807, 807, + 807, 807, 808, 808, 808, 808, 808, 808, 808, 809, + + 809, 809, 809, 809, 809, 809, 810, 810, 810, 810, + 810, 810, 810, 811, 811, 811, 811, 811, 811, 811, + 812, 812, 812, 812, 812, 812, 812, 813, 813, 813, + 813, 813, 813, 813, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774 + + } ; + +/* Table of booleans, true if rule could match eol. */ +static const flex_int32_t yy_rule_can_match_eol[141] = + { 0, +0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, + 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, + 1, 0, 0, 0, 0, 1, 1, 0, 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, 0, 0, 0, 1, 1, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, + 0, }; + +static yy_state_type yy_last_accepting_state; +static char *yy_last_accepting_cpos; + +extern int yy_flex_debug; +int yy_flex_debug = 0; + +/* The intent behind this definition is that it'll catch + * any uses of REJECT which flex missed. + */ #define REJECT reject_used_but_not_detected #define yymore() yymore_used_but_not_detected #define YY_MORE_ADJ 0 @@ -1192,81 +1558,81 @@ const char dax__flexml_version[] = "1.9.6"; int dax__pcdata_ix; extern char *dax__bufferstack; #define dax__pcdata (dax__bufferstack + dax__pcdata_ix) +AT_dax__adag_childCount AX_dax__adag_childCount; +#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) +short int dax__adag_childCount_isset; +AT_dax__adag_count AX_dax__adag_count; +#define A_dax__adag_count (dax__bufferstack + AX_dax__adag_count) +short int dax__adag_count_isset; +AT_dax__adag_fileCount AX_dax__adag_fileCount; +#define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) +short int dax__adag_fileCount_isset; +AT_dax__adag_index AX_dax__adag_index; +#define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) +short int dax__adag_index_isset; +AT_dax__adag_jobCount AX_dax__adag_jobCount; +#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) +short int dax__adag_jobCount_isset; +AT_dax__adag_name AX_dax__adag_name; +#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) +short int dax__adag_name_isset; +AT_dax__adag_version AX_dax__adag_version; +#define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) +short int dax__adag_version_isset; +AT_dax__adag_xmlns AX_dax__adag_xmlns; +#define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) +short int dax__adag_xmlns_isset; +AT_dax__adag_xmlns_c_xsi AX_dax__adag_xmlns_c_xsi; +#define A_dax__adag_xmlns_c_xsi (dax__bufferstack + AX_dax__adag_xmlns_c_xsi) +short int dax__adag_xmlns_c_xsi_isset; +AT_dax__adag_xsi_c_schemaLocation AX_dax__adag_xsi_c_schemaLocation; +#define A_dax__adag_xsi_c_schemaLocation (dax__bufferstack + AX_dax__adag_xsi_c_schemaLocation) +short int dax__adag_xsi_c_schemaLocation_isset; +AT_dax__child_ref AX_dax__child_ref; +#define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) +short int dax__child_ref_isset; +AT_dax__job_id AX_dax__job_id; +#define A_dax__job_id (dax__bufferstack + AX_dax__job_id) +short int dax__job_id_isset; +AT_dax__job_level AX_dax__job_level; +#define A_dax__job_level (dax__bufferstack + AX_dax__job_level) +short int dax__job_level_isset; AT_dax__job_name AX_dax__job_name; #define A_dax__job_name (dax__bufferstack + AX_dax__job_name) short int dax__job_name_isset; +AT_dax__job_namespace AX_dax__job_namespace; +#define A_dax__job_namespace (dax__bufferstack + AX_dax__job_namespace) +short int dax__job_namespace_isset; +AT_dax__job_runtime AX_dax__job_runtime; +#define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) +short int dax__job_runtime_isset; +AT_dax__job_version AX_dax__job_version; +#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) +short int dax__job_version_isset; +AT_dax__parent_ref AX_dax__parent_ref; +#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) +short int dax__parent_ref_isset; +AT_dax__uses_file AX_dax__uses_file; +#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) +short int dax__uses_file_isset; AT_dax__uses_link AX_dax__uses_link; #define A_dax__uses_link AX_dax__uses_link short int dax__uses_link_isset; -AT_dax__uses_transfer AX_dax__uses_transfer; -#define A_dax__uses_transfer AX_dax__uses_transfer -short int dax__uses_transfer_isset; -AT_dax__adag_xmlns_c_xsi AX_dax__adag_xmlns_c_xsi; -#define A_dax__adag_xmlns_c_xsi (dax__bufferstack + AX_dax__adag_xmlns_c_xsi) -short int dax__adag_xmlns_c_xsi_isset; AT_dax__uses_optional AX_dax__uses_optional; #define A_dax__uses_optional AX_dax__uses_optional short int dax__uses_optional_isset; -AT_dax__parent_ref AX_dax__parent_ref; -#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) -short int dax__parent_ref_isset; AT_dax__uses_register AX_dax__uses_register; #define A_dax__uses_register AX_dax__uses_register short int dax__uses_register_isset; -AT_dax__uses_file AX_dax__uses_file; -#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) -short int dax__uses_file_isset; -AT_dax__uses_type AX_dax__uses_type; -#define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) -short int dax__uses_type_isset; -AT_dax__adag_xmlns AX_dax__adag_xmlns; -#define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) -short int dax__adag_xmlns_isset; -AT_dax__adag_fileCount AX_dax__adag_fileCount; -#define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) -short int dax__adag_fileCount_isset; -AT_dax__job_version AX_dax__job_version; -#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) -short int dax__job_version_isset; -AT_dax__adag_count AX_dax__adag_count; -#define A_dax__adag_count (dax__bufferstack + AX_dax__adag_count) -short int dax__adag_count_isset; -AT_dax__child_ref AX_dax__child_ref; -#define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) -short int dax__child_ref_isset; -AT_dax__adag_xsi_c_schemaLocation AX_dax__adag_xsi_c_schemaLocation; -#define A_dax__adag_xsi_c_schemaLocation (dax__bufferstack + AX_dax__adag_xsi_c_schemaLocation) -short int dax__adag_xsi_c_schemaLocation_isset; -AT_dax__job_runtime AX_dax__job_runtime; -#define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) -short int dax__job_runtime_isset; -AT_dax__adag_childCount AX_dax__adag_childCount; -#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) -short int dax__adag_childCount_isset; AT_dax__uses_size AX_dax__uses_size; #define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) short int dax__uses_size_isset; -AT_dax__job_namespace AX_dax__job_namespace; -#define A_dax__job_namespace (dax__bufferstack + AX_dax__job_namespace) -short int dax__job_namespace_isset; -AT_dax__adag_jobCount AX_dax__adag_jobCount; -#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) -short int dax__adag_jobCount_isset; -AT_dax__job_id AX_dax__job_id; -#define A_dax__job_id (dax__bufferstack + AX_dax__job_id) -short int dax__job_id_isset; -AT_dax__job_level AX_dax__job_level; -#define A_dax__job_level (dax__bufferstack + AX_dax__job_level) -short int dax__job_level_isset; -AT_dax__adag_index AX_dax__adag_index; -#define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) -short int dax__adag_index_isset; -AT_dax__adag_name AX_dax__adag_name; -#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) -short int dax__adag_name_isset; -AT_dax__adag_version AX_dax__adag_version; -#define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) -short int dax__adag_version_isset; +AT_dax__uses_transfer AX_dax__uses_transfer; +#define A_dax__uses_transfer AX_dax__uses_transfer +short int dax__uses_transfer_isset; +AT_dax__uses_type AX_dax__uses_type; +#define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) +short int dax__uses_type_isset; /* XML state. */ #ifdef FLEX_DEBUG @@ -1434,20 +1800,20 @@ const char* *dax__statenames=NULL; #define S_dax__adag_4 15 #define S_dax__adag_5 16 #define E_dax__adag 17 -#define AL_dax__job 18 -#define S_dax__job 19 -#define S_dax__job_1 20 -#define S_dax__job_2 21 -#define E_dax__job 22 -#define AL_dax__uses 23 -#define E_dax__uses 24 -#define AL_dax__child 25 -#define S_dax__child 26 -#define S_dax__child_1 27 -#define S_dax__child_2 28 -#define E_dax__child 29 -#define AL_dax__parent 30 -#define E_dax__parent 31 +#define AL_dax__child 18 +#define S_dax__child 19 +#define S_dax__child_1 20 +#define S_dax__child_2 21 +#define E_dax__child 22 +#define AL_dax__job 23 +#define S_dax__job 24 +#define S_dax__job_1 25 +#define S_dax__job_2 26 +#define E_dax__job 27 +#define AL_dax__parent 28 +#define E_dax__parent 29 +#define AL_dax__uses 30 +#define E_dax__uses 31 #define IMPOSSIBLE 32 #ifndef YY_NO_UNISTD_H @@ -1721,20 +2087,20 @@ YY_DECL dax__statenames[S_dax__adag_4] = "adag"; dax__statenames[S_dax__adag_5] = "adag"; dax__statenames[E_dax__adag] = "adag"; + dax__statenames[AL_dax__child] = NULL; + dax__statenames[S_dax__child] = "child"; + dax__statenames[S_dax__child_1] = "child"; + dax__statenames[S_dax__child_2] = "child"; + dax__statenames[E_dax__child] = "child"; dax__statenames[AL_dax__job] = NULL; dax__statenames[S_dax__job] = "job"; dax__statenames[S_dax__job_1] = "job"; dax__statenames[S_dax__job_2] = "job"; dax__statenames[E_dax__job] = "job"; + dax__statenames[AL_dax__parent] = NULL; + dax__statenames[E_dax__parent] = "parent"; dax__statenames[AL_dax__uses] = NULL; dax__statenames[E_dax__uses] = "uses"; - dax__statenames[AL_dax__child] = NULL; - dax__statenames[S_dax__child] = "child"; - dax__statenames[S_dax__child_1] = "child"; - dax__statenames[S_dax__child_2] = "child"; - dax__statenames[E_dax__child] = "child"; - dax__statenames[AL_dax__parent] = NULL; - dax__statenames[E_dax__parent] = "parent"; } /* COMMENTS and PIs: handled uniformly for efficiency. */ @@ -1769,7 +2135,8 @@ yy_match: } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; ++yy_cp; - } while (yy_base[yy_current_state] != 2164); + } + while ( yy_base[yy_current_state] != 2135 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1890,26 +2257,26 @@ case 17: /* rule 17 can match eol */ YY_RULE_SETUP { + AX_dax__adag_childCount = 0; + dax__adag_childCount_isset = 0; + AX_dax__adag_count = 0; + dax__adag_count_isset = 0; + AX_dax__adag_fileCount = 0; + dax__adag_fileCount_isset = 0; + AX_dax__adag_index = 0; + dax__adag_index_isset = 0; + AX_dax__adag_jobCount = 0; + dax__adag_jobCount_isset = 0; + AX_dax__adag_name = 0; + dax__adag_name_isset = 0; + AX_dax__adag_version = 153; + dax__adag_version_isset = 0; AX_dax__adag_xmlns = 1; dax__adag_xmlns_isset = 0; AX_dax__adag_xmlns_c_xsi = 35; dax__adag_xmlns_c_xsi_isset = 0; AX_dax__adag_xsi_c_schemaLocation = 77; dax__adag_xsi_c_schemaLocation_isset = 0; - AX_dax__adag_version = 153; - dax__adag_version_isset = 0; - AX_dax__adag_count = 0; - dax__adag_count_isset = 0; - AX_dax__adag_index = 0; - dax__adag_index_isset = 0; - AX_dax__adag_name = 0; - dax__adag_name_isset = 0; - AX_dax__adag_jobCount = 0; - dax__adag_jobCount_isset = 0; - AX_dax__adag_fileCount = 0; - dax__adag_fileCount_isset = 0; - AX_dax__adag_childCount = 0; - dax__adag_childCount_isset = 0; ENTER(AL_dax__adag); pushbuffer(0); } YY_BREAK @@ -1917,203 +2284,103 @@ YY_RULE_SETUP case 18: /* rule 18 can match eol */ YY_RULE_SETUP -if (dax__adag_xmlns_isset != 0) { - FAIL("Multiple definition of attribute xmlns in "); -} -dax__adag_xmlns_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_xmlns); -YY_BREAK +if (dax__adag_childCount_isset != 0) {FAIL("Multiple definition of attribute childCount in ");} dax__adag_childCount_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_childCount); + YY_BREAK case 19: /* rule 19 can match eol */ YY_RULE_SETUP -if (dax__adag_xmlns_isset != 0) { - FAIL("Multiple definition of attribute xmlns in "); -} -dax__adag_xmlns_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_xmlns); -YY_BREAK +if (dax__adag_childCount_isset != 0) {FAIL("Multiple definition of attribute childCount in ");} dax__adag_childCount_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_childCount); + YY_BREAK case 20: /* rule 20 can match eol */ YY_RULE_SETUP -if (dax__adag_xmlns_c_xsi_isset != 0) { - FAIL("Multiple definition of attribute xmlns:xsi in "); -} -dax__adag_xmlns_c_xsi_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_xmlns_c_xsi); -YY_BREAK +if (dax__adag_count_isset != 0) {FAIL("Multiple definition of attribute count in ");} dax__adag_count_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_count); + YY_BREAK case 21: /* rule 21 can match eol */ YY_RULE_SETUP -if (dax__adag_xmlns_c_xsi_isset != 0) { - FAIL("Multiple definition of attribute xmlns:xsi in "); -} -dax__adag_xmlns_c_xsi_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_xmlns_c_xsi); -YY_BREAK +if (dax__adag_count_isset != 0) {FAIL("Multiple definition of attribute count in ");} dax__adag_count_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_count); + YY_BREAK case 22: /* rule 22 can match eol */ YY_RULE_SETUP -if (dax__adag_xsi_c_schemaLocation_isset != 0) { - FAIL("Multiple definition of attribute xsi:schemaLocation in "); -} -dax__adag_xsi_c_schemaLocation_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_xsi_c_schemaLocation); -YY_BREAK +if (dax__adag_fileCount_isset != 0) {FAIL("Multiple definition of attribute fileCount in ");} dax__adag_fileCount_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_fileCount); + YY_BREAK case 23: /* rule 23 can match eol */ YY_RULE_SETUP -if (dax__adag_xsi_c_schemaLocation_isset != 0) { - FAIL("Multiple definition of attribute xsi:schemaLocation in "); -} -dax__adag_xsi_c_schemaLocation_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_xsi_c_schemaLocation); -YY_BREAK +if (dax__adag_fileCount_isset != 0) {FAIL("Multiple definition of attribute fileCount in ");} dax__adag_fileCount_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_fileCount); + YY_BREAK case 24: /* rule 24 can match eol */ YY_RULE_SETUP -if (dax__adag_version_isset != 0) { - FAIL("Multiple definition of attribute version in "); -} -dax__adag_version_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_version); -YY_BREAK +if (dax__adag_index_isset != 0) {FAIL("Multiple definition of attribute index in ");} dax__adag_index_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_index); + YY_BREAK case 25: /* rule 25 can match eol */ YY_RULE_SETUP -if (dax__adag_version_isset != 0) { - FAIL("Multiple definition of attribute version in "); -} -dax__adag_version_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_version); -YY_BREAK +if (dax__adag_index_isset != 0) {FAIL("Multiple definition of attribute index in ");} dax__adag_index_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_index); + YY_BREAK case 26: /* rule 26 can match eol */ YY_RULE_SETUP -if (dax__adag_count_isset != 0) { - FAIL("Multiple definition of attribute count in "); -} -dax__adag_count_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_count); -YY_BREAK +if (dax__adag_jobCount_isset != 0) {FAIL("Multiple definition of attribute jobCount in ");} dax__adag_jobCount_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_jobCount); + YY_BREAK case 27: /* rule 27 can match eol */ YY_RULE_SETUP -if (dax__adag_count_isset != 0) { - FAIL("Multiple definition of attribute count in "); -} -dax__adag_count_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_count); -YY_BREAK +if (dax__adag_jobCount_isset != 0) {FAIL("Multiple definition of attribute jobCount in ");} dax__adag_jobCount_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_jobCount); + YY_BREAK case 28: /* rule 28 can match eol */ YY_RULE_SETUP -if (dax__adag_index_isset != 0) { - FAIL("Multiple definition of attribute index in "); -} -dax__adag_index_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_index); -YY_BREAK +if (dax__adag_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} dax__adag_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_name); + YY_BREAK case 29: /* rule 29 can match eol */ YY_RULE_SETUP -if (dax__adag_index_isset != 0) { - FAIL("Multiple definition of attribute index in "); -} -dax__adag_index_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_index); -YY_BREAK +if (dax__adag_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} dax__adag_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_name); + YY_BREAK case 30: /* rule 30 can match eol */ YY_RULE_SETUP -if (dax__adag_name_isset != 0) { - FAIL("Multiple definition of attribute name in "); -} -dax__adag_name_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_name); -YY_BREAK +if (dax__adag_version_isset != 0) {FAIL("Multiple definition of attribute version in ");} dax__adag_version_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_version); + YY_BREAK case 31: /* rule 31 can match eol */ YY_RULE_SETUP -if (dax__adag_name_isset != 0) { - FAIL("Multiple definition of attribute name in "); -} -dax__adag_name_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_name); -YY_BREAK +if (dax__adag_version_isset != 0) {FAIL("Multiple definition of attribute version in ");} dax__adag_version_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_version); + YY_BREAK case 32: /* rule 32 can match eol */ YY_RULE_SETUP -if (dax__adag_jobCount_isset != 0) { - FAIL("Multiple definition of attribute jobCount in "); -} -dax__adag_jobCount_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_jobCount); -YY_BREAK +if (dax__adag_xmlns_isset != 0) {FAIL("Multiple definition of attribute xmlns in ");} dax__adag_xmlns_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_xmlns); + YY_BREAK case 33: /* rule 33 can match eol */ YY_RULE_SETUP -if (dax__adag_jobCount_isset != 0) { - FAIL("Multiple definition of attribute jobCount in "); -} -dax__adag_jobCount_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_jobCount); -YY_BREAK +if (dax__adag_xmlns_isset != 0) {FAIL("Multiple definition of attribute xmlns in ");} dax__adag_xmlns_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_xmlns); + YY_BREAK case 34: /* rule 34 can match eol */ YY_RULE_SETUP -if (dax__adag_fileCount_isset != 0) { - FAIL("Multiple definition of attribute fileCount in "); -} -dax__adag_fileCount_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_fileCount); -YY_BREAK +if (dax__adag_xmlns_c_xsi_isset != 0) {FAIL("Multiple definition of attribute xmlns:xsi in ");} dax__adag_xmlns_c_xsi_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_xmlns_c_xsi); + YY_BREAK case 35: /* rule 35 can match eol */ YY_RULE_SETUP -if (dax__adag_fileCount_isset != 0) { - FAIL("Multiple definition of attribute fileCount in "); -} -dax__adag_fileCount_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_fileCount); -YY_BREAK +if (dax__adag_xmlns_c_xsi_isset != 0) {FAIL("Multiple definition of attribute xmlns:xsi in ");} dax__adag_xmlns_c_xsi_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_xmlns_c_xsi); + YY_BREAK case 36: /* rule 36 can match eol */ YY_RULE_SETUP -if (dax__adag_childCount_isset != 0) { - FAIL("Multiple definition of attribute childCount in "); -} -dax__adag_childCount_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__adag_childCount); -YY_BREAK +if (dax__adag_xsi_c_schemaLocation_isset != 0) {FAIL("Multiple definition of attribute xsi:schemaLocation in ");} dax__adag_xsi_c_schemaLocation_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__adag_xsi_c_schemaLocation); + YY_BREAK case 37: /* rule 37 can match eol */ YY_RULE_SETUP -if (dax__adag_childCount_isset != 0) { - FAIL("Multiple definition of attribute childCount in "); -} -dax__adag_childCount_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__adag_childCount); -YY_BREAK +if (dax__adag_xsi_c_schemaLocation_isset != 0) {FAIL("Multiple definition of attribute xsi:schemaLocation in ");} dax__adag_xsi_c_schemaLocation_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__adag_xsi_c_schemaLocation); + YY_BREAK case 38: YY_RULE_SETUP { @@ -2162,683 +2429,491 @@ case 44: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",yytext[0]); YY_BREAK +case YY_STATE_EOF(E_dax__adag): +case YY_STATE_EOF(S_dax__adag): case YY_STATE_EOF(S_dax__adag_1): case YY_STATE_EOF(S_dax__adag_3): case YY_STATE_EOF(S_dax__adag_5): -case YY_STATE_EOF(S_dax__adag): -case YY_STATE_EOF(E_dax__adag): - FAIL("Premature EOF: `' expected."); - YY_BREAK +FAIL("Premature EOF: `' expected."); + YY_BREAK case 45: /* rule 45 can match eol */ YY_RULE_SETUP -FAIL("Starting tag is not allowed here."); -YY_BREAK +FAIL("Starting tag is not allowed here."); + YY_BREAK case 46: /* rule 46 can match eol */ YY_RULE_SETUP { - AX_dax__job_id = 0; - dax__job_id_isset = 0; - AX_dax__job_namespace = 0; - dax__job_namespace_isset = 0; - AX_dax__job_name = 0; - dax__job_name_isset = 0; - AX_dax__job_version = 157; - dax__job_version_isset = 0; - AX_dax__job_runtime = 0; - dax__job_runtime_isset = 0; - AX_dax__job_level = 0; - dax__job_level_isset = 0; - ENTER(AL_dax__job); - pushbuffer(0); + AX_dax__child_ref = 0; + dax__child_ref_isset = 0; + ENTER(AL_dax__child); pushbuffer(0); } YY_BREAK case 47: /* rule 47 can match eol */ YY_RULE_SETUP -if (dax__job_id_isset != 0) { - FAIL("Multiple definition of attribute id in "); -} -dax__job_id_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__job_id); -YY_BREAK +if (dax__child_ref_isset != 0) {FAIL("Multiple definition of attribute ref in ");} dax__child_ref_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__child_ref); + YY_BREAK case 48: /* rule 48 can match eol */ YY_RULE_SETUP -if (dax__job_id_isset != 0) { - FAIL("Multiple definition of attribute id in "); -} -dax__job_id_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__job_id); -YY_BREAK +if (dax__child_ref_isset != 0) {FAIL("Multiple definition of attribute ref in ");} dax__child_ref_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__child_ref); + YY_BREAK case 49: - /* rule 49 can match eol */ - YY_RULE_SETUP - if (dax__job_namespace_isset != 0) { - FAIL("Multiple definition of attribute namespace in "); - } - dax__job_namespace_isset = 1; - ENTER(VALUE1); - BUFFERSET(AX_dax__job_namespace); - YY_BREAK +YY_RULE_SETUP +{ + if (!AX_dax__child_ref) FAIL("Required attribute `ref' not set for `child' element."); + LEAVE; STag_dax__child();dax__pcdata_ix = 0; ENTER(S_dax__child); + } + YY_BREAK case 50: - /* rule 50 can match eol */ - YY_RULE_SETUP - if (dax__job_namespace_isset != 0) { - FAIL("Multiple definition of attribute namespace in "); +YY_RULE_SETUP +{ + if (!AX_dax__child_ref) FAIL("Required attribute `ref' not set for `child' element."); + LEAVE; STag_dax__child(); dax__pcdata_ix = 0; ETag_dax__child(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_dax__adag: case S_dax__adag_1: case S_dax__adag_3: case S_dax__adag_4: case S_dax__adag_5: SET(S_dax__adag_5); break; } - dax__job_namespace_isset = 1; - ENTER(VALUE2); - BUFFERSET(AX_dax__job_namespace); - YY_BREAK + } + YY_BREAK case 51: - /* rule 51 can match eol */ - YY_RULE_SETUP - if (dax__job_name_isset != 0) { - FAIL("Multiple definition of attribute name in "); - } - dax__job_name_isset = 1; - ENTER(VALUE1); - BUFFERSET(AX_dax__job_name); - YY_BREAK +YY_RULE_SETUP +FAIL("Unexpected character `%c' in attribute list of child element.", yytext[0]); + YY_BREAK case 52: - /* rule 52 can match eol */ - YY_RULE_SETUP - if (dax__job_name_isset != 0) { - FAIL("Multiple definition of attribute name in "); - } - dax__job_name_isset = 1; - ENTER(VALUE2); - BUFFERSET(AX_dax__job_name); - YY_BREAK +YY_RULE_SETUP +FAIL("Bad attribute `%s' in `child' element start tag.",yytext); + YY_BREAK +case YY_STATE_EOF(AL_dax__child): +FAIL("EOF in attribute list of `child' element."); + YY_BREAK + case 53: /* rule 53 can match eol */ YY_RULE_SETUP -if (dax__job_version_isset != 0) { - FAIL("Multiple definition of attribute version in "); -} -dax__job_version_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__job_version); -YY_BREAK +{ + LEAVE; + ETag_dax__child(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_dax__adag: case S_dax__adag_1: case S_dax__adag_3: case S_dax__adag_4: case S_dax__adag_5: SET(S_dax__adag_5); break; + } + } + YY_BREAK case 54: /* rule 54 can match eol */ YY_RULE_SETUP -if (dax__job_version_isset != 0) { - FAIL("Multiple definition of attribute version in "); -} -dax__job_version_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__job_version); -YY_BREAK +FAIL("Unexpected end-tag `%s': `' expected.",yytext); + YY_BREAK case 55: - /* rule 55 can match eol */ - YY_RULE_SETUP - if (dax__job_runtime_isset != 0) { - FAIL("Multiple definition of attribute runtime in "); - } - dax__job_runtime_isset = 1; - ENTER(VALUE1); - BUFFERSET(AX_dax__job_runtime); - YY_BREAK +YY_RULE_SETUP +FAIL("Unexpected character `%c': `' expected.",yytext[0]); + YY_BREAK +case YY_STATE_EOF(E_dax__child): +case YY_STATE_EOF(S_dax__child): +case YY_STATE_EOF(S_dax__child_2): +FAIL("Premature EOF: `' expected."); + YY_BREAK + case 56: /* rule 56 can match eol */ YY_RULE_SETUP -if (dax__job_runtime_isset != 0) { - FAIL("Multiple definition of attribute runtime in "); -} -dax__job_runtime_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__job_runtime); -YY_BREAK +FAIL("Starting tag is not allowed here."); + YY_BREAK case 57: /* rule 57 can match eol */ YY_RULE_SETUP -if (dax__job_level_isset != 0) { - FAIL("Multiple definition of attribute level in "); -} -dax__job_level_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__job_level); -YY_BREAK +{ + AX_dax__job_id = 0; + dax__job_id_isset = 0; + AX_dax__job_level = 0; + dax__job_level_isset = 0; + AX_dax__job_name = 0; + dax__job_name_isset = 0; + AX_dax__job_namespace = 0; + dax__job_namespace_isset = 0; + AX_dax__job_runtime = 0; + dax__job_runtime_isset = 0; + AX_dax__job_version = 157; + dax__job_version_isset = 0; + ENTER(AL_dax__job); pushbuffer(0); + } + YY_BREAK + case 58: /* rule 58 can match eol */ YY_RULE_SETUP -if (dax__job_level_isset != 0) { - FAIL("Multiple definition of attribute level in "); -} -dax__job_level_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__job_level); -YY_BREAK +if (dax__job_id_isset != 0) {FAIL("Multiple definition of attribute id in ");} dax__job_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__job_id); + YY_BREAK case 59: +/* rule 59 can match eol */ YY_RULE_SETUP -{ - if (!AX_dax__job_id) - FAIL("Required attribute `id' not set for `job' element."); - if (!AX_dax__job_name) - FAIL("Required attribute `name' not set for `job' element."); - if (!AX_dax__job_runtime) - FAIL("Required attribute `runtime' not set for `job' element."); - LEAVE; - STag_dax__job(); - dax__pcdata_ix = 0; - ENTER(S_dax__job); -} - YY_BREAK +if (dax__job_id_isset != 0) {FAIL("Multiple definition of attribute id in ");} dax__job_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__job_id); + YY_BREAK case 60: +/* rule 60 can match eol */ YY_RULE_SETUP -{ - if (!AX_dax__job_id) - FAIL("Required attribute `id' not set for `job' element."); - if (!AX_dax__job_name) - FAIL("Required attribute `name' not set for `job' element."); - if (!AX_dax__job_runtime) - FAIL("Required attribute `runtime' not set for `job' element."); - LEAVE; - STag_dax__job(); - dax__pcdata_ix = 0; - ETag_dax__job(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_dax__adag: - case S_dax__adag_2: - case S_dax__adag_3: - SET(S_dax__adag_3); - break; - } -} - YY_BREAK +if (dax__job_level_isset != 0) {FAIL("Multiple definition of attribute level in ");} dax__job_level_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__job_level); + YY_BREAK case 61: +/* rule 61 can match eol */ YY_RULE_SETUP -FAIL("Unexpected character `%c' in attribute list of job element.", yytext[0]); -YY_BREAK +if (dax__job_level_isset != 0) {FAIL("Multiple definition of attribute level in ");} dax__job_level_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__job_level); + YY_BREAK case 62: +/* rule 62 can match eol */ YY_RULE_SETUP -FAIL("Bad attribute `%s' in `job' element start tag.", yytext); -YY_BREAK -case YY_STATE_EOF(AL_dax__job): - FAIL("EOF in attribute list of `job' element."); - YY_BREAK - +if (dax__job_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} dax__job_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__job_name); + YY_BREAK case 63: /* rule 63 can match eol */ YY_RULE_SETUP -{ - LEAVE; - ETag_dax__job(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_dax__adag: - case S_dax__adag_2: - case S_dax__adag_3: - SET(S_dax__adag_3); - break; - } -} - YY_BREAK +if (dax__job_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} dax__job_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__job_name); + YY_BREAK case 64: /* rule 64 can match eol */ YY_RULE_SETUP -FAIL("Unexpected end-tag `%s': `' expected.", yytext); -YY_BREAK +if (dax__job_namespace_isset != 0) {FAIL("Multiple definition of attribute namespace in ");} dax__job_namespace_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__job_namespace); + YY_BREAK case 65: +/* rule 65 can match eol */ YY_RULE_SETUP -FAIL("Unexpected character `%c': `' expected.", yytext[0]); -YY_BREAK -case YY_STATE_EOF(S_dax__job_2): -case YY_STATE_EOF(S_dax__job): -case YY_STATE_EOF(E_dax__job): - FAIL("Premature EOF: `' expected."); - YY_BREAK - -/* - * */ +if (dax__job_namespace_isset != 0) {FAIL("Multiple definition of attribute namespace in ");} dax__job_namespace_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__job_namespace); + YY_BREAK case 66: /* rule 66 can match eol */ YY_RULE_SETUP -FAIL("Starting tag is not allowed here."); -YY_BREAK +if (dax__job_runtime_isset != 0) {FAIL("Multiple definition of attribute runtime in ");} dax__job_runtime_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__job_runtime); + YY_BREAK case 67: /* rule 67 can match eol */ YY_RULE_SETUP -{ - AX_dax__uses_file = 0; - dax__uses_file_isset = 0; - AX_dax__uses_link = AU_dax__uses_link; - dax__uses_link_isset = 0; - AX_dax__uses_register = A_dax__uses_register_true; - dax__uses_register_isset = 0; - AX_dax__uses_transfer = A_dax__uses_transfer_true; - dax__uses_transfer_isset = 0; - AX_dax__uses_optional = A_dax__uses_optional_false; - dax__uses_optional_isset = 0; - AX_dax__uses_type = 161; - dax__uses_type_isset = 0; - AX_dax__uses_size = 0; - dax__uses_size_isset = 0; - ENTER(AL_dax__uses); - pushbuffer(0); -} - YY_BREAK - +if (dax__job_runtime_isset != 0) {FAIL("Multiple definition of attribute runtime in ");} dax__job_runtime_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__job_runtime); + YY_BREAK case 68: /* rule 68 can match eol */ YY_RULE_SETUP -if (dax__uses_file_isset != 0) { - FAIL("Multiple definition of attribute file in "); -} -dax__uses_file_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__uses_file); -YY_BREAK +if (dax__job_version_isset != 0) {FAIL("Multiple definition of attribute version in ");} dax__job_version_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__job_version); + YY_BREAK case 69: /* rule 69 can match eol */ YY_RULE_SETUP -if (dax__uses_file_isset != 0) { - FAIL("Multiple definition of attribute file in "); -} -dax__uses_file_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__uses_file); -YY_BREAK +if (dax__job_version_isset != 0) {FAIL("Multiple definition of attribute version in ");} dax__job_version_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__job_version); + YY_BREAK case 70: -/* rule 70 can match eol */ +YY_RULE_SETUP +{ + if (!AX_dax__job_id) FAIL("Required attribute `id' not set for `job' element."); + if (!AX_dax__job_name) FAIL("Required attribute `name' not set for `job' element."); + if (!AX_dax__job_runtime) FAIL("Required attribute `runtime' not set for `job' element."); + LEAVE; STag_dax__job();dax__pcdata_ix = 0; ENTER(S_dax__job); + } + YY_BREAK case 71: - /* rule 71 can match eol */ - YY_RULE_SETUP - A_dax__uses_link = A_dax__uses_link_input; - YY_BREAK +YY_RULE_SETUP +{ + if (!AX_dax__job_id) FAIL("Required attribute `id' not set for `job' element."); + if (!AX_dax__job_name) FAIL("Required attribute `name' not set for `job' element."); + if (!AX_dax__job_runtime) FAIL("Required attribute `runtime' not set for `job' element."); + LEAVE; STag_dax__job(); dax__pcdata_ix = 0; ETag_dax__job(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_dax__adag: case S_dax__adag_2: case S_dax__adag_3: SET(S_dax__adag_3); break; + } + } + YY_BREAK case 72: -/* rule 72 can match eol */ +YY_RULE_SETUP +FAIL("Unexpected character `%c' in attribute list of job element.", yytext[0]); + YY_BREAK case 73: - /* rule 73 can match eol */ - YY_RULE_SETUP - A_dax__uses_link = A_dax__uses_link_output; - YY_BREAK +YY_RULE_SETUP +FAIL("Bad attribute `%s' in `job' element start tag.",yytext); + YY_BREAK +case YY_STATE_EOF(AL_dax__job): +FAIL("EOF in attribute list of `job' element."); + YY_BREAK + case 74: /* rule 74 can match eol */ +YY_RULE_SETUP +{ + LEAVE; + ETag_dax__job(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_dax__adag: case S_dax__adag_2: case S_dax__adag_3: SET(S_dax__adag_3); break; + } + } + YY_BREAK case 75: /* rule 75 can match eol */ YY_RULE_SETUP -A_dax__uses_register = A_dax__uses_register_false; -YY_BREAK +FAIL("Unexpected end-tag `%s': `' expected.",yytext); + YY_BREAK case 76: -/* rule 76 can match eol */ +YY_RULE_SETUP +FAIL("Unexpected character `%c': `' expected.",yytext[0]); + YY_BREAK +case YY_STATE_EOF(E_dax__job): +case YY_STATE_EOF(S_dax__job): +case YY_STATE_EOF(S_dax__job_2): +FAIL("Premature EOF: `' expected."); + YY_BREAK + case 77: /* rule 77 can match eol */ YY_RULE_SETUP -A_dax__uses_register = A_dax__uses_register_true; -YY_BREAK +FAIL("Starting tag is not allowed here."); + YY_BREAK case 78: /* rule 78 can match eol */ +YY_RULE_SETUP +{ + AX_dax__parent_ref = 0; + dax__parent_ref_isset = 0; + ENTER(AL_dax__parent); pushbuffer(0); + } + YY_BREAK + case 79: /* rule 79 can match eol */ YY_RULE_SETUP -A_dax__uses_transfer = A_dax__uses_transfer_false; -YY_BREAK +if (dax__parent_ref_isset != 0) {FAIL("Multiple definition of attribute ref in ");} dax__parent_ref_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__parent_ref); + YY_BREAK case 80: /* rule 80 can match eol */ +YY_RULE_SETUP +if (dax__parent_ref_isset != 0) {FAIL("Multiple definition of attribute ref in ");} dax__parent_ref_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__parent_ref); + YY_BREAK case 81: - /* rule 81 can match eol */ - YY_RULE_SETUP - A_dax__uses_transfer = A_dax__uses_transfer_true; - YY_BREAK +YY_RULE_SETUP +{ + if (!AX_dax__parent_ref) FAIL("Required attribute `ref' not set for `parent' element."); + LEAVE; STag_dax__parent();dax__pcdata_ix = 0; ENTER(E_dax__parent); + } + YY_BREAK case 82: -/* rule 82 can match eol */ +YY_RULE_SETUP +{ + if (!AX_dax__parent_ref) FAIL("Required attribute `ref' not set for `parent' element."); + LEAVE; STag_dax__parent(); dax__pcdata_ix = 0; ETag_dax__parent(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_dax__child: case S_dax__child_1: case S_dax__child_2: SET(S_dax__child_2); break; + } + } + YY_BREAK case 83: - /* rule 83 can match eol */ - YY_RULE_SETUP - A_dax__uses_optional = A_dax__uses_optional_false; - YY_BREAK +YY_RULE_SETUP +FAIL("Unexpected character `%c' in attribute list of parent element.", yytext[0]); + YY_BREAK case 84: -/* rule 84 can match eol */ +YY_RULE_SETUP +FAIL("Bad attribute `%s' in `parent' element start tag.",yytext); + YY_BREAK +case YY_STATE_EOF(AL_dax__parent): +FAIL("EOF in attribute list of `parent' element."); + YY_BREAK + case 85: /* rule 85 can match eol */ YY_RULE_SETUP -A_dax__uses_optional = A_dax__uses_optional_true; -YY_BREAK +{ + LEAVE; + ETag_dax__parent(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_dax__child: case S_dax__child_1: case S_dax__child_2: SET(S_dax__child_2); break; + } + } + YY_BREAK case 86: /* rule 86 can match eol */ YY_RULE_SETUP -if (dax__uses_type_isset != 0) { - FAIL("Multiple definition of attribute type in "); -} -dax__uses_type_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__uses_type); -YY_BREAK +FAIL("Unexpected end-tag `%s': `' expected.",yytext); + YY_BREAK case 87: - /* rule 87 can match eol */ - YY_RULE_SETUP - if (dax__uses_type_isset != 0) { - FAIL("Multiple definition of attribute type in "); - } - dax__uses_type_isset = 1; - ENTER(VALUE2); - BUFFERSET(AX_dax__uses_type); - YY_BREAK +YY_RULE_SETUP +FAIL("Unexpected character `%c': `' expected.",yytext[0]); + YY_BREAK +case YY_STATE_EOF(E_dax__parent): +FAIL("Premature EOF: `' expected."); + YY_BREAK + +/* + * */ case 88: /* rule 88 can match eol */ YY_RULE_SETUP -if (dax__uses_size_isset != 0) { - FAIL("Multiple definition of attribute size in "); -} -dax__uses_size_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__uses_size); -YY_BREAK +FAIL("Starting tag is not allowed here."); + YY_BREAK case 89: /* rule 89 can match eol */ YY_RULE_SETUP -if (dax__uses_size_isset != 0) { - FAIL("Multiple definition of attribute size in "); -} -dax__uses_size_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__uses_size); -YY_BREAK +{ + AX_dax__uses_file = 0; + dax__uses_file_isset = 0; + AX_dax__uses_link = AU_dax__uses_link; + dax__uses_link_isset = 0; + AX_dax__uses_optional = A_dax__uses_optional_false; + dax__uses_optional_isset = 0; + AX_dax__uses_register = A_dax__uses_register_true; + dax__uses_register_isset = 0; + AX_dax__uses_size = 0; + dax__uses_size_isset = 0; + AX_dax__uses_transfer = A_dax__uses_transfer_true; + dax__uses_transfer_isset = 0; + AX_dax__uses_type = 161; + dax__uses_type_isset = 0; + ENTER(AL_dax__uses); pushbuffer(0); + } + YY_BREAK + case 90: +/* rule 90 can match eol */ YY_RULE_SETUP -{ - if (!AX_dax__uses_file) - FAIL("Required attribute `file' not set for `uses' element."); - if (!AX_dax__uses_size) - FAIL("Required attribute `size' not set for `uses' element."); - LEAVE; - STag_dax__uses(); - dax__pcdata_ix = 0; - ENTER(E_dax__uses); -} - YY_BREAK +if (dax__uses_file_isset != 0) {FAIL("Multiple definition of attribute file in ");} dax__uses_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__uses_file); + YY_BREAK case 91: +/* rule 91 can match eol */ YY_RULE_SETUP -{ - if (!AX_dax__uses_file) - FAIL("Required attribute `file' not set for `uses' element."); - if (!AX_dax__uses_size) - FAIL("Required attribute `size' not set for `uses' element."); - LEAVE; - STag_dax__uses(); - dax__pcdata_ix = 0; - ETag_dax__uses(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_dax__job_1: - case S_dax__job_2: - case S_dax__job: - SET(S_dax__job_2); - break; - } -} - YY_BREAK +if (dax__uses_file_isset != 0) {FAIL("Multiple definition of attribute file in ");} dax__uses_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__uses_file); + YY_BREAK case 92: - YY_RULE_SETUP - FAIL("Unexpected character `%c' in attribute list of uses element.", yytext[0]); - YY_BREAK +/* rule 92 can match eol */ case 93: +/* rule 93 can match eol */ YY_RULE_SETUP -FAIL("Bad attribute `%s' in `uses' element start tag.", yytext); -YY_BREAK -case YY_STATE_EOF(AL_dax__uses): - FAIL("EOF in attribute list of `uses' element."); - YY_BREAK - +A_dax__uses_link = A_dax__uses_link_input; + YY_BREAK case 94: /* rule 94 can match eol */ -YY_RULE_SETUP -{ - LEAVE; - ETag_dax__uses(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_dax__job_1: - case S_dax__job_2: - case S_dax__job: - SET(S_dax__job_2); - break; - } -} -YY_BREAK case 95: /* rule 95 can match eol */ YY_RULE_SETUP -FAIL("Unexpected end-tag `%s': `' expected.", yytext); -YY_BREAK +A_dax__uses_link = A_dax__uses_link_output; + YY_BREAK case 96: - YY_RULE_SETUP - FAIL("Unexpected character `%c': `' expected.", yytext[0]); - YY_BREAK -case YY_STATE_EOF(E_dax__uses): - FAIL("Premature EOF: `' expected."); - YY_BREAK - +/* rule 96 can match eol */ case 97: /* rule 97 can match eol */ YY_RULE_SETUP -FAIL("Starting tag is not allowed here."); -YY_BREAK +A_dax__uses_optional = A_dax__uses_optional_false; + YY_BREAK case 98: /* rule 98 can match eol */ -YY_RULE_SETUP -{ - AX_dax__child_ref = 0; - dax__child_ref_isset = 0; - ENTER(AL_dax__child); - pushbuffer(0); -} -YY_BREAK - case 99: /* rule 99 can match eol */ YY_RULE_SETUP -if (dax__child_ref_isset != 0) { - FAIL("Multiple definition of attribute ref in "); -} -dax__child_ref_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__child_ref); -YY_BREAK +A_dax__uses_optional = A_dax__uses_optional_true; + YY_BREAK case 100: /* rule 100 can match eol */ -YY_RULE_SETUP -if (dax__child_ref_isset != 0) { - FAIL("Multiple definition of attribute ref in "); -} -dax__child_ref_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__child_ref); -YY_BREAK case 101: +/* rule 101 can match eol */ YY_RULE_SETUP -{ - if (!AX_dax__child_ref) - FAIL("Required attribute `ref' not set for `child' element."); - LEAVE; - STag_dax__child(); - dax__pcdata_ix = 0; - ENTER(S_dax__child); -} - YY_BREAK +A_dax__uses_register = A_dax__uses_register_false; + YY_BREAK case 102: - YY_RULE_SETUP - { - if (!AX_dax__child_ref) - FAIL("Required attribute `ref' not set for `child' element."); - LEAVE; - STag_dax__child(); - dax__pcdata_ix = 0; - ETag_dax__child(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_dax__adag_1: - case S_dax__adag_3: - case S_dax__adag_4: - case S_dax__adag: - case S_dax__adag_5: - SET(S_dax__adag_5); - break; - } - } - YY_BREAK +/* rule 102 can match eol */ case 103: +/* rule 103 can match eol */ YY_RULE_SETUP -FAIL("Unexpected character `%c' in attribute list of child element.", yytext[0]); -YY_BREAK +A_dax__uses_register = A_dax__uses_register_true; + YY_BREAK case 104: +/* rule 104 can match eol */ YY_RULE_SETUP -FAIL("Bad attribute `%s' in `child' element start tag.", yytext); -YY_BREAK -case YY_STATE_EOF(AL_dax__child): - FAIL("EOF in attribute list of `child' element."); - YY_BREAK - +if (dax__uses_size_isset != 0) {FAIL("Multiple definition of attribute size in ");} dax__uses_size_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__uses_size); + YY_BREAK case 105: /* rule 105 can match eol */ YY_RULE_SETUP -{ - LEAVE; - ETag_dax__child(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_dax__adag_1: - case S_dax__adag_3: - case S_dax__adag_4: - case S_dax__adag: - case S_dax__adag_5: - SET(S_dax__adag_5); - break; - } -} - YY_BREAK +if (dax__uses_size_isset != 0) {FAIL("Multiple definition of attribute size in ");} dax__uses_size_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__uses_size); + YY_BREAK case 106: /* rule 106 can match eol */ -YY_RULE_SETUP -FAIL("Unexpected end-tag `%s': `' expected.", yytext); -YY_BREAK case 107: +/* rule 107 can match eol */ YY_RULE_SETUP -FAIL("Unexpected character `%c': `' expected.", yytext[0]); -YY_BREAK -case YY_STATE_EOF(S_dax__child_2): -case YY_STATE_EOF(S_dax__child): -case YY_STATE_EOF(E_dax__child): - FAIL("Premature EOF: `' expected."); - YY_BREAK - +A_dax__uses_transfer = A_dax__uses_transfer_false; + YY_BREAK case 108: /* rule 108 can match eol */ -YY_RULE_SETUP -FAIL("Starting tag is not allowed here."); -YY_BREAK case 109: /* rule 109 can match eol */ YY_RULE_SETUP -{ - AX_dax__parent_ref = 0; - dax__parent_ref_isset = 0; - ENTER(AL_dax__parent); - pushbuffer(0); -} - YY_BREAK - +A_dax__uses_transfer = A_dax__uses_transfer_true; + YY_BREAK case 110: /* rule 110 can match eol */ YY_RULE_SETUP -if (dax__parent_ref_isset != 0) { - FAIL("Multiple definition of attribute ref in "); -} -dax__parent_ref_isset = 1; -ENTER(VALUE1); -BUFFERSET(AX_dax__parent_ref); -YY_BREAK +if (dax__uses_type_isset != 0) {FAIL("Multiple definition of attribute type in ");} dax__uses_type_isset = 1; ENTER(VALUE1); BUFFERSET(AX_dax__uses_type); + YY_BREAK case 111: /* rule 111 can match eol */ YY_RULE_SETUP -if (dax__parent_ref_isset != 0) { - FAIL("Multiple definition of attribute ref in "); -} -dax__parent_ref_isset = 1; -ENTER(VALUE2); -BUFFERSET(AX_dax__parent_ref); -YY_BREAK +if (dax__uses_type_isset != 0) {FAIL("Multiple definition of attribute type in ");} dax__uses_type_isset = 1; ENTER(VALUE2); BUFFERSET(AX_dax__uses_type); + YY_BREAK case 112: YY_RULE_SETUP { - if (!AX_dax__parent_ref) - FAIL("Required attribute `ref' not set for `parent' element."); - LEAVE; - STag_dax__parent(); - dax__pcdata_ix = 0; - ENTER(E_dax__parent); + if (!AX_dax__uses_file) FAIL("Required attribute `file' not set for `uses' element."); + if (!AX_dax__uses_size) FAIL("Required attribute `size' not set for `uses' element."); + LEAVE; STag_dax__uses();dax__pcdata_ix = 0; ENTER(E_dax__uses); } YY_BREAK case 113: YY_RULE_SETUP { - if (!AX_dax__parent_ref) - FAIL("Required attribute `ref' not set for `parent' element."); - LEAVE; - STag_dax__parent(); - dax__pcdata_ix = 0; - ETag_dax__parent(); - popbuffer(); /* attribute */ + if (!AX_dax__uses_file) FAIL("Required attribute `file' not set for `uses' element."); + if (!AX_dax__uses_size) FAIL("Required attribute `size' not set for `uses' element."); + LEAVE; STag_dax__uses(); dax__pcdata_ix = 0; ETag_dax__uses(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__child: - case S_dax__child_1: - case S_dax__child_2: - SET(S_dax__child_2); - break; + case S_dax__job: case S_dax__job_1: case S_dax__job_2: SET(S_dax__job_2); break; } } YY_BREAK case 114: YY_RULE_SETUP -FAIL("Unexpected character `%c' in attribute list of parent element.", yytext[0]); -YY_BREAK +FAIL("Unexpected character `%c' in attribute list of uses element.", yytext[0]); + YY_BREAK case 115: YY_RULE_SETUP -FAIL("Bad attribute `%s' in `parent' element start tag.", yytext); -YY_BREAK -case YY_STATE_EOF(AL_dax__parent): - FAIL("EOF in attribute list of `parent' element."); - YY_BREAK +FAIL("Bad attribute `%s' in `uses' element start tag.",yytext); + YY_BREAK +case YY_STATE_EOF(AL_dax__uses): +FAIL("EOF in attribute list of `uses' element."); + YY_BREAK case 116: /* rule 116 can match eol */ YY_RULE_SETUP { LEAVE; - ETag_dax__parent(); + ETag_dax__uses(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__child: - case S_dax__child_1: - case S_dax__child_2: - SET(S_dax__child_2); - break; + case S_dax__job: case S_dax__job_1: case S_dax__job_2: SET(S_dax__job_2); break; } } YY_BREAK case 117: /* rule 117 can match eol */ YY_RULE_SETUP -FAIL("Unexpected end-tag `%s': `' expected.", yytext); -YY_BREAK +FAIL("Unexpected end-tag `%s': `' expected.",yytext); + YY_BREAK case 118: YY_RULE_SETUP -FAIL("Unexpected character `%c': `' expected.", yytext[0]); -YY_BREAK -case YY_STATE_EOF(E_dax__parent): - FAIL("Premature EOF: `' expected."); - YY_BREAK +FAIL("Unexpected character `%c': `' expected.",yytext[0]); + YY_BREAK +case YY_STATE_EOF(E_dax__uses): +FAIL("Premature EOF: `' expected."); + YY_BREAK - /* EPILOG: after the root element. */ +/* EPILOG: after the root element. */ case 119: YY_RULE_SETUP @@ -2959,8 +3034,8 @@ case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(ROOT_dax__adag): case YY_STATE_EOF(S_dax__adag_2): case YY_STATE_EOF(S_dax__adag_4): -case YY_STATE_EOF(S_dax__job_1): case YY_STATE_EOF(S_dax__child_1): +case YY_STATE_EOF(S_dax__job_1): case YY_STATE_EOF(IMPOSSIBLE): yyterminate(); @@ -4050,9 +4125,13 @@ static int fail(const char* fmt, ...) int chars_left, used; va_list ap; va_start(ap, fmt); #ifdef FLEXML_yylineno - used = sprintf(flexml_err_msg, "Invalid XML (XML input line %d, state %d): ", yylineno, YY_START); + used = snprintf(flexml_err_msg,flexml_max_err_msg_size, + "Invalid XML (XML input line %d, state %d): ", + yylineno, YY_START); #else - used = sprintf(flexml_err_msg, "Invalid XML (state %d): ", YY_START); + used = snprintf(flexml_err_msg,flexml_max_err_msg_size, + "Invalid XML (state %d): ", + YY_START); #endif chars_left = flexml_max_err_msg_size - used - 1; vsnprintf(flexml_err_msg + used, chars_left, fmt, ap); diff --git a/src/simdag/dax_dtd.h b/src/simdag/dax_dtd.h index bf09b131a9..1d218f10e8 100644 --- a/src/simdag/dax_dtd.h +++ b/src/simdag/dax_dtd.h @@ -50,142 +50,142 @@ /* XML application entry points. */ XBT_PUBLIC void STag_dax__adag(void); XBT_PUBLIC void ETag_dax__adag(void); -XBT_PUBLIC void STag_dax__job(void); -XBT_PUBLIC void ETag_dax__job(void); -XBT_PUBLIC void STag_dax__uses(void); -XBT_PUBLIC void ETag_dax__uses(void); XBT_PUBLIC void STag_dax__child(void); XBT_PUBLIC void ETag_dax__child(void); +XBT_PUBLIC void STag_dax__job(void); +XBT_PUBLIC void ETag_dax__job(void); XBT_PUBLIC void STag_dax__parent(void); XBT_PUBLIC void ETag_dax__parent(void); +XBT_PUBLIC void STag_dax__uses(void); +XBT_PUBLIC void ETag_dax__uses(void); /* XML application data. */ -typedef int AT_dax__uses_size; -#define AU_dax__uses_size NULL -typedef int AT_dax__job_level; -#define AU_dax__job_level NULL -typedef int AT_dax__adag_name; -#define AU_dax__adag_name NULL -typedef int AT_dax__adag_jobCount; -#define AU_dax__adag_jobCount NULL +typedef int AT_dax__adag_childCount; +#define AU_dax__adag_childCount NULL typedef int AT_dax__adag_count; #define AU_dax__adag_count NULL -typedef int AT_dax__job_namespace; -#define AU_dax__job_namespace NULL -typedef int AT_dax__adag_version; -#define AU_dax__adag_version NULL -typedef enum { AU_dax__uses_optional, A_dax__uses_optional_false, A_dax__uses_optional_true } AT_dax__uses_optional; -typedef int AT_dax__adag_xmlns_c_xsi; -#define AU_dax__adag_xmlns_c_xsi NULL typedef int AT_dax__adag_fileCount; #define AU_dax__adag_fileCount NULL -typedef int AT_dax__uses_file; -#define AU_dax__uses_file NULL -typedef int AT_dax__job_version; -#define AU_dax__job_version NULL -typedef int AT_dax__parent_ref; -#define AU_dax__parent_ref NULL +typedef int AT_dax__adag_index; +#define AU_dax__adag_index NULL +typedef int AT_dax__adag_jobCount; +#define AU_dax__adag_jobCount NULL +typedef int AT_dax__adag_name; +#define AU_dax__adag_name NULL +typedef int AT_dax__adag_version; +#define AU_dax__adag_version NULL typedef int AT_dax__adag_xmlns; #define AU_dax__adag_xmlns NULL -typedef int AT_dax__uses_type; -#define AU_dax__uses_type NULL -typedef enum { AU_dax__uses_register, A_dax__uses_register_false, A_dax__uses_register_true } AT_dax__uses_register; -typedef enum { AU_dax__uses_link, A_dax__uses_link_input, A_dax__uses_link_output } AT_dax__uses_link; -typedef int AT_dax__adag_childCount; -#define AU_dax__adag_childCount NULL -typedef int AT_dax__child_ref; -#define AU_dax__child_ref NULL -typedef enum { AU_dax__uses_transfer, A_dax__uses_transfer_false, A_dax__uses_transfer_true } AT_dax__uses_transfer; +typedef int AT_dax__adag_xmlns_c_xsi; +#define AU_dax__adag_xmlns_c_xsi NULL typedef int AT_dax__adag_xsi_c_schemaLocation; #define AU_dax__adag_xsi_c_schemaLocation NULL +typedef int AT_dax__child_ref; +#define AU_dax__child_ref NULL typedef int AT_dax__job_id; #define AU_dax__job_id NULL +typedef int AT_dax__job_level; +#define AU_dax__job_level NULL typedef int AT_dax__job_name; #define AU_dax__job_name NULL +typedef int AT_dax__job_namespace; +#define AU_dax__job_namespace NULL typedef int AT_dax__job_runtime; #define AU_dax__job_runtime NULL -typedef int AT_dax__adag_index; -#define AU_dax__adag_index NULL +typedef int AT_dax__job_version; +#define AU_dax__job_version NULL +typedef int AT_dax__parent_ref; +#define AU_dax__parent_ref NULL +typedef int AT_dax__uses_file; +#define AU_dax__uses_file NULL +typedef enum { AU_dax__uses_link, A_dax__uses_link_input,A_dax__uses_link_output } AT_dax__uses_link; +typedef enum { AU_dax__uses_optional, A_dax__uses_optional_false,A_dax__uses_optional_true } AT_dax__uses_optional; +typedef enum { AU_dax__uses_register, A_dax__uses_register_false,A_dax__uses_register_true } AT_dax__uses_register; +typedef int AT_dax__uses_size; +#define AU_dax__uses_size NULL +typedef enum { AU_dax__uses_transfer, A_dax__uses_transfer_false,A_dax__uses_transfer_true } AT_dax__uses_transfer; +typedef int AT_dax__uses_type; +#define AU_dax__uses_type NULL /* FleXML-provided data. */ XBT_PUBLIC_DATA int dax__pcdata_ix; XBT_PUBLIC_DATA char *dax__bufferstack; #define dax__pcdata (dax__bufferstack + dax__pcdata_ix) -XBT_PUBLIC_DATA AT_dax__uses_size AX_dax__uses_size; -#define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) -XBT_PUBLIC_DATA short int dax__uses_size_isset; -XBT_PUBLIC_DATA AT_dax__job_level AX_dax__job_level; -#define A_dax__job_level (dax__bufferstack + AX_dax__job_level) -XBT_PUBLIC_DATA short int dax__job_level_isset; -XBT_PUBLIC_DATA AT_dax__adag_name AX_dax__adag_name; -#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) -XBT_PUBLIC_DATA short int dax__adag_name_isset; -XBT_PUBLIC_DATA AT_dax__adag_jobCount AX_dax__adag_jobCount; -#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) -XBT_PUBLIC_DATA short int dax__adag_jobCount_isset; +XBT_PUBLIC_DATA AT_dax__adag_childCount AX_dax__adag_childCount; +#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) +XBT_PUBLIC_DATA short int dax__adag_childCount_isset; XBT_PUBLIC_DATA AT_dax__adag_count AX_dax__adag_count; #define A_dax__adag_count (dax__bufferstack + AX_dax__adag_count) XBT_PUBLIC_DATA short int dax__adag_count_isset; -XBT_PUBLIC_DATA AT_dax__job_namespace AX_dax__job_namespace; -#define A_dax__job_namespace (dax__bufferstack + AX_dax__job_namespace) -XBT_PUBLIC_DATA short int dax__job_namespace_isset; -XBT_PUBLIC_DATA AT_dax__adag_version AX_dax__adag_version; -#define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) -XBT_PUBLIC_DATA short int dax__adag_version_isset; -XBT_PUBLIC_DATA AT_dax__uses_optional AX_dax__uses_optional; -#define A_dax__uses_optional AX_dax__uses_optional -XBT_PUBLIC_DATA short int dax__uses_optional_isset; -XBT_PUBLIC_DATA AT_dax__adag_xmlns_c_xsi AX_dax__adag_xmlns_c_xsi; -#define A_dax__adag_xmlns_c_xsi (dax__bufferstack + AX_dax__adag_xmlns_c_xsi) -XBT_PUBLIC_DATA short int dax__adag_xmlns_c_xsi_isset; XBT_PUBLIC_DATA AT_dax__adag_fileCount AX_dax__adag_fileCount; #define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) XBT_PUBLIC_DATA short int dax__adag_fileCount_isset; -XBT_PUBLIC_DATA AT_dax__uses_file AX_dax__uses_file; -#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) -XBT_PUBLIC_DATA short int dax__uses_file_isset; -XBT_PUBLIC_DATA AT_dax__job_version AX_dax__job_version; -#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) -XBT_PUBLIC_DATA short int dax__job_version_isset; -XBT_PUBLIC_DATA AT_dax__parent_ref AX_dax__parent_ref; -#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) -XBT_PUBLIC_DATA short int dax__parent_ref_isset; +XBT_PUBLIC_DATA AT_dax__adag_index AX_dax__adag_index; +#define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) +XBT_PUBLIC_DATA short int dax__adag_index_isset; +XBT_PUBLIC_DATA AT_dax__adag_jobCount AX_dax__adag_jobCount; +#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) +XBT_PUBLIC_DATA short int dax__adag_jobCount_isset; +XBT_PUBLIC_DATA AT_dax__adag_name AX_dax__adag_name; +#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) +XBT_PUBLIC_DATA short int dax__adag_name_isset; +XBT_PUBLIC_DATA AT_dax__adag_version AX_dax__adag_version; +#define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) +XBT_PUBLIC_DATA short int dax__adag_version_isset; XBT_PUBLIC_DATA AT_dax__adag_xmlns AX_dax__adag_xmlns; #define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) XBT_PUBLIC_DATA short int dax__adag_xmlns_isset; -XBT_PUBLIC_DATA AT_dax__uses_type AX_dax__uses_type; -#define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) -XBT_PUBLIC_DATA short int dax__uses_type_isset; -XBT_PUBLIC_DATA AT_dax__uses_register AX_dax__uses_register; -#define A_dax__uses_register AX_dax__uses_register -XBT_PUBLIC_DATA short int dax__uses_register_isset; -XBT_PUBLIC_DATA AT_dax__uses_link AX_dax__uses_link; -#define A_dax__uses_link AX_dax__uses_link -XBT_PUBLIC_DATA short int dax__uses_link_isset; -XBT_PUBLIC_DATA AT_dax__adag_childCount AX_dax__adag_childCount; -#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) -XBT_PUBLIC_DATA short int dax__adag_childCount_isset; -XBT_PUBLIC_DATA AT_dax__child_ref AX_dax__child_ref; -#define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) -XBT_PUBLIC_DATA short int dax__child_ref_isset; -XBT_PUBLIC_DATA AT_dax__uses_transfer AX_dax__uses_transfer; -#define A_dax__uses_transfer AX_dax__uses_transfer -XBT_PUBLIC_DATA short int dax__uses_transfer_isset; +XBT_PUBLIC_DATA AT_dax__adag_xmlns_c_xsi AX_dax__adag_xmlns_c_xsi; +#define A_dax__adag_xmlns_c_xsi (dax__bufferstack + AX_dax__adag_xmlns_c_xsi) +XBT_PUBLIC_DATA short int dax__adag_xmlns_c_xsi_isset; XBT_PUBLIC_DATA AT_dax__adag_xsi_c_schemaLocation AX_dax__adag_xsi_c_schemaLocation; #define A_dax__adag_xsi_c_schemaLocation (dax__bufferstack + AX_dax__adag_xsi_c_schemaLocation) XBT_PUBLIC_DATA short int dax__adag_xsi_c_schemaLocation_isset; +XBT_PUBLIC_DATA AT_dax__child_ref AX_dax__child_ref; +#define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) +XBT_PUBLIC_DATA short int dax__child_ref_isset; XBT_PUBLIC_DATA AT_dax__job_id AX_dax__job_id; #define A_dax__job_id (dax__bufferstack + AX_dax__job_id) XBT_PUBLIC_DATA short int dax__job_id_isset; +XBT_PUBLIC_DATA AT_dax__job_level AX_dax__job_level; +#define A_dax__job_level (dax__bufferstack + AX_dax__job_level) +XBT_PUBLIC_DATA short int dax__job_level_isset; XBT_PUBLIC_DATA AT_dax__job_name AX_dax__job_name; #define A_dax__job_name (dax__bufferstack + AX_dax__job_name) XBT_PUBLIC_DATA short int dax__job_name_isset; +XBT_PUBLIC_DATA AT_dax__job_namespace AX_dax__job_namespace; +#define A_dax__job_namespace (dax__bufferstack + AX_dax__job_namespace) +XBT_PUBLIC_DATA short int dax__job_namespace_isset; XBT_PUBLIC_DATA AT_dax__job_runtime AX_dax__job_runtime; #define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) XBT_PUBLIC_DATA short int dax__job_runtime_isset; -XBT_PUBLIC_DATA AT_dax__adag_index AX_dax__adag_index; -#define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) -XBT_PUBLIC_DATA short int dax__adag_index_isset; +XBT_PUBLIC_DATA AT_dax__job_version AX_dax__job_version; +#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) +XBT_PUBLIC_DATA short int dax__job_version_isset; +XBT_PUBLIC_DATA AT_dax__parent_ref AX_dax__parent_ref; +#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) +XBT_PUBLIC_DATA short int dax__parent_ref_isset; +XBT_PUBLIC_DATA AT_dax__uses_file AX_dax__uses_file; +#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) +XBT_PUBLIC_DATA short int dax__uses_file_isset; +XBT_PUBLIC_DATA AT_dax__uses_link AX_dax__uses_link; +#define A_dax__uses_link AX_dax__uses_link +XBT_PUBLIC_DATA short int dax__uses_link_isset; +XBT_PUBLIC_DATA AT_dax__uses_optional AX_dax__uses_optional; +#define A_dax__uses_optional AX_dax__uses_optional +XBT_PUBLIC_DATA short int dax__uses_optional_isset; +XBT_PUBLIC_DATA AT_dax__uses_register AX_dax__uses_register; +#define A_dax__uses_register AX_dax__uses_register +XBT_PUBLIC_DATA short int dax__uses_register_isset; +XBT_PUBLIC_DATA AT_dax__uses_size AX_dax__uses_size; +#define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) +XBT_PUBLIC_DATA short int dax__uses_size_isset; +XBT_PUBLIC_DATA AT_dax__uses_transfer AX_dax__uses_transfer; +#define A_dax__uses_transfer AX_dax__uses_transfer +XBT_PUBLIC_DATA short int dax__uses_transfer_isset; +XBT_PUBLIC_DATA AT_dax__uses_type AX_dax__uses_type; +#define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) +XBT_PUBLIC_DATA short int dax__uses_type_isset; /* XML application utilities. */ XBT_PUBLIC int dax__element_context(int); diff --git a/src/surf/xml/platf.hpp b/src/surf/xml/platf.hpp index f0462932bf..d488e55c94 100644 --- a/src/surf/xml/platf.hpp +++ b/src/surf/xml/platf.hpp @@ -6,7 +6,9 @@ #ifndef SURF_SURFXML_PARSE_HPP #define SURF_SURFXML_PARSE_HPP +#include #include +#include /* Module management functions */ XBT_PUBLIC void sg_platf_init(); @@ -15,6 +17,9 @@ XBT_PUBLIC void sg_platf_exit(); XBT_PUBLIC void surf_parse_open(const std::string& file); XBT_PUBLIC void surf_parse_close(); XBT_PUBLIC void surf_parse_assert(bool cond, std::string&& msg); +SG_BEGIN_DECL +XBT_ATTRIB_NORETURN XBT_PUBLIC void surf_parse_error(const char* msg); +SG_END_DECL XBT_ATTRIB_NORETURN XBT_PUBLIC void surf_parse_error(std::string&& msg); XBT_PUBLIC void surf_parse_assert_netpoint(const std::string& hostname, const std::string& pre, const std::string& post); diff --git a/src/surf/xml/simgrid_dtd.c b/src/surf/xml/simgrid_dtd.c index df742830e3..88a2760443 100644 --- a/src/surf/xml/simgrid_dtd.c +++ b/src/surf/xml/simgrid_dtd.c @@ -7446,10 +7446,10 @@ YY_RULE_SETUP if (!AX_surfxml_backbone_latency) FAIL("Required attribute `latency' not set for `backbone' element."); LEAVE; STag_surfxml_backbone(); surfxml_pcdata_ix = 0; ETag_surfxml_backbone(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_1: case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; } } YY_BREAK @@ -7473,10 +7473,10 @@ YY_RULE_SETUP ETag_surfxml_backbone(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_1: case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; } } YY_BREAK @@ -7962,8 +7962,8 @@ YY_RULE_SETUP if (!AX_surfxml_cabinet_suffix) FAIL("Required attribute `suffix' not set for `cabinet' element."); LEAVE; STag_surfxml_cabinet(); surfxml_pcdata_ix = 0; ETag_surfxml_cabinet(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: case S_surfxml_zone_3: SET(S_surfxml_zone_14); break; @@ -7990,8 +7990,8 @@ YY_RULE_SETUP ETag_surfxml_cabinet(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: case S_surfxml_zone_3: SET(S_surfxml_zone_14); break; @@ -8859,12 +8859,12 @@ YY_RULE_SETUP if (!AX_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element."); LEAVE; STag_surfxml_include(); surfxml_pcdata_ix = 0; ETag_surfxml_include(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_1: case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; + case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; } } YY_BREAK @@ -8888,12 +8888,12 @@ YY_RULE_SETUP ETag_surfxml_include(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_1: case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; + case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; } } YY_BREAK @@ -9049,10 +9049,10 @@ YY_RULE_SETUP if (!AX_surfxml_link_id) FAIL("Required attribute `id' not set for `link' element."); LEAVE; STag_surfxml_link(); surfxml_pcdata_ix = 0; ETag_surfxml_link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_1: case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; } } YY_BREAK @@ -9076,10 +9076,10 @@ YY_RULE_SETUP ETag_surfxml_link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_1: case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_zone: case S_surfxml_zone_13: case S_surfxml_zone_14: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_3: case S_surfxml_zone_5: case S_surfxml_zone_6: SET(S_surfxml_zone_6); break; } } YY_BREAK @@ -10697,18 +10697,18 @@ YY_RULE_SETUP if (!AX_surfxml_trace_periodicity) FAIL("Required attribute `periodicity' not set for `trace' element."); LEAVE; STag_surfxml_trace(); surfxml_pcdata_ix = 0; ETag_surfxml_trace(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_7: case S_surfxml_AS_9: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_4: case S_surfxml_AS_6: case S_surfxml_AS_7: SET(S_surfxml_AS_11); break; case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_4: case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; + case S_surfxml_AS: case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_3: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_1: case S_surfxml_AS_8: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_4: case S_surfxml_zone_6: case S_surfxml_zone_7: case S_surfxml_zone_9: SET(S_surfxml_zone_11); break; - case S_surfxml_zone_13: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: case S_surfxml_zone_1: SET(S_surfxml_zone_16); break; + case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_6: case S_surfxml_zone_7: SET(S_surfxml_zone_11); break; + case S_surfxml_zone_13: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: SET(S_surfxml_zone_16); break; case S_surfxml_zone_3: case S_surfxml_zone_5: SET(S_surfxml_zone_6); break; - case S_surfxml_zone_8: SET(S_surfxml_zone_9); break; + case S_surfxml_zone_4: case S_surfxml_zone_8: case S_surfxml_zone_9: SET(S_surfxml_zone_9); break; } } YY_BREAK @@ -10734,18 +10734,18 @@ YY_RULE_SETUP surfxml_pcdata_ix = popbuffer(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_7: case S_surfxml_AS_9: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_4: case S_surfxml_AS_6: case S_surfxml_AS_7: SET(S_surfxml_AS_11); break; case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_4: case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; + case S_surfxml_AS: case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_3: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_1: case S_surfxml_AS_8: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_4: case S_surfxml_zone_6: case S_surfxml_zone_7: case S_surfxml_zone_9: SET(S_surfxml_zone_11); break; - case S_surfxml_zone_13: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: case S_surfxml_zone_1: SET(S_surfxml_zone_16); break; + case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_6: case S_surfxml_zone_7: SET(S_surfxml_zone_11); break; + case S_surfxml_zone_13: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: SET(S_surfxml_zone_16); break; case S_surfxml_zone_3: case S_surfxml_zone_5: SET(S_surfxml_zone_6); break; - case S_surfxml_zone_8: SET(S_surfxml_zone_9); break; + case S_surfxml_zone_4: case S_surfxml_zone_8: case S_surfxml_zone_9: SET(S_surfxml_zone_9); break; } } YY_BREAK @@ -10847,18 +10847,18 @@ YY_RULE_SETUP if (!AX_surfxml_trace___connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); LEAVE; STag_surfxml_trace___connect(); surfxml_pcdata_ix = 0; ETag_surfxml_trace___connect(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_7: case S_surfxml_AS_9: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_4: case S_surfxml_AS_6: case S_surfxml_AS_7: SET(S_surfxml_AS_11); break; case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_4: case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; + case S_surfxml_AS: case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_3: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_1: case S_surfxml_AS_8: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_4: case S_surfxml_zone_6: case S_surfxml_zone_7: case S_surfxml_zone_9: SET(S_surfxml_zone_11); break; - case S_surfxml_zone_13: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: case S_surfxml_zone_1: SET(S_surfxml_zone_16); break; + case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_6: case S_surfxml_zone_7: SET(S_surfxml_zone_11); break; + case S_surfxml_zone_13: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: SET(S_surfxml_zone_16); break; case S_surfxml_zone_3: case S_surfxml_zone_5: SET(S_surfxml_zone_6); break; - case S_surfxml_zone_8: SET(S_surfxml_zone_9); break; + case S_surfxml_zone_4: case S_surfxml_zone_8: case S_surfxml_zone_9: SET(S_surfxml_zone_9); break; } } YY_BREAK @@ -10882,18 +10882,18 @@ YY_RULE_SETUP ETag_surfxml_trace___connect(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_7: case S_surfxml_AS_9: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_10: case S_surfxml_AS_11: case S_surfxml_AS_4: case S_surfxml_AS_6: case S_surfxml_AS_7: SET(S_surfxml_AS_11); break; case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_4: case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; + case S_surfxml_AS: case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_3: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_1: case S_surfxml_AS_8: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_4: case S_surfxml_zone_6: case S_surfxml_zone_7: case S_surfxml_zone_9: SET(S_surfxml_zone_11); break; - case S_surfxml_zone_13: SET(S_surfxml_zone_14); break; - case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: case S_surfxml_zone_1: SET(S_surfxml_zone_16); break; + case S_surfxml_zone: case S_surfxml_zone_10: case S_surfxml_zone_11: case S_surfxml_zone_6: case S_surfxml_zone_7: SET(S_surfxml_zone_11); break; + case S_surfxml_zone_13: case S_surfxml_zone_1: SET(S_surfxml_zone_14); break; + case S_surfxml_zone_12: case S_surfxml_zone_14: case S_surfxml_zone_15: case S_surfxml_zone_16: SET(S_surfxml_zone_16); break; case S_surfxml_zone_3: case S_surfxml_zone_5: SET(S_surfxml_zone_6); break; - case S_surfxml_zone_8: SET(S_surfxml_zone_9); break; + case S_surfxml_zone_4: case S_surfxml_zone_8: case S_surfxml_zone_9: SET(S_surfxml_zone_9); break; } } YY_BREAK @@ -12495,7 +12495,7 @@ static int fail(const char* fmt, ...) #ifndef FLEXML_quiet_parser /* print directly to sdterr */ - fprintf(stderr, "%s\n", flexml_err_msg); + surf_parse_error(flexml_err_msg); flexml_err_msg[0] = '\0'; #endif diff --git a/src/surf/xml/surfxml_sax_cb.cpp b/src/surf/xml/surfxml_sax_cb.cpp index d28c427308..0b49682258 100644 --- a/src/surf/xml/surfxml_sax_cb.cpp +++ b/src/surf/xml/surfxml_sax_cb.cpp @@ -40,6 +40,10 @@ void surf_parse_assert(bool cond, std::string&& msg) surf_parse_error(std::move(msg)); } +void surf_parse_error(const char* msg) { + throw simgrid::ParseError(surf_parse_lineno, surf_parsed_filename, std::string(msg)); +} + void surf_parse_error(std::string&& msg) { throw simgrid::ParseError(surf_parse_lineno, surf_parsed_filename, std::move(msg)); diff --git a/tools/cmake/scripts/fixup_simgrid_dtd_l.pl b/tools/cmake/scripts/fixup_simgrid_dtd_l.pl index 5e2aa770a0..bf486fb35d 100755 --- a/tools/cmake/scripts/fixup_simgrid_dtd_l.pl +++ b/tools/cmake/scripts/fixup_simgrid_dtd_l.pl @@ -10,8 +10,14 @@ while (<>) { # Accept the alternative DTD location if (/DOCTYPE.*simgrid.org.simgrid.dtd/) { - print ' "" SET(ROOT_surfxml_platform);'."\n"; + print ' "" SET(ROOT_surfxml_platform);'."\n"; } + + # Completely rewrite the error handling mechanism to use exceptions instead of printing to stderr + if (/fprintf.stderr, .*? flexml_err_msg.;/) { + print(' surf_parse_error(flexml_err_msg);'."\n"); + next; + } # Actually outputs the resulting line print;