X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/538180328b36f798ccc1e5085f6831092edadfe9..2c5c14ffd2b2af540f201434bd4d32f9c197507f:/src/xbt/graphxml.c diff --git a/src/xbt/graphxml.c b/src/xbt/graphxml.c index 68d922d5da..c3353c3761 100644 --- a/src/xbt/graphxml.c +++ b/src/xbt/graphxml.c @@ -1,15 +1,33 @@ -#line 2 "xbt/graphxml.c" -#line 4 "xbt/graphxml.c" +#line 3 "src/xbt/graphxml.c" #define YY_INT_ALIGNED short int /* A lexical scanner generated by flex */ +#define yy_create_buffer xbt_graph_parse__create_buffer +#define yy_delete_buffer xbt_graph_parse__delete_buffer +#define yy_flex_debug xbt_graph_parse__flex_debug +#define yy_init_buffer xbt_graph_parse__init_buffer +#define yy_flush_buffer xbt_graph_parse__flush_buffer +#define yy_load_buffer_state xbt_graph_parse__load_buffer_state +#define yy_switch_to_buffer xbt_graph_parse__switch_to_buffer +#define yyin xbt_graph_parse_in +#define yyleng xbt_graph_parse_leng +#define yylex xbt_graph_parse_lex +#define yylineno xbt_graph_parse_lineno +#define yyout xbt_graph_parse_out +#define yyrestart xbt_graph_parse_restart +#define yytext xbt_graph_parse_text +#define yywrap xbt_graph_parse_wrap +#define yyalloc xbt_graph_parse_alloc +#define yyrealloc xbt_graph_parse_realloc +#define yyfree xbt_graph_parse_free + #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 33 +#define YY_FLEX_SUBMINOR_VERSION 35 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -31,7 +49,7 @@ /* C99 systems have . Non-C99 systems may or may not. */ -#if __STDC_VERSION__ >= 199901L +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, * if you want the limit (max/min) macros for int types. @@ -54,7 +72,6 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; -#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -85,6 +102,8 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#endif /* ! C99 */ + #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -94,11 +113,12 @@ typedef unsigned int flex_uint32_t; #else /* ! __cplusplus */ -#if __STDC__ +/* C99 requires __STDC__ to be defined as 1. */ +#if defined (__STDC__) #define YY_USE_CONST -#endif /* __STDC__ */ +#endif /* defined (__STDC__) */ #endif /* ! __cplusplus */ #ifdef YY_USE_CONST @@ -140,7 +160,15 @@ typedef unsigned int flex_uint32_t; /* Size of default input buffer. */ #ifndef YY_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k. + * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. + * Ditto for the __ia64__ case accordingly. + */ +#define YY_BUF_SIZE 32768 +#else #define YY_BUF_SIZE 16384 +#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -191,14 +219,9 @@ extern FILE *xbt_graph_parse_in, *xbt_graph_parse_out; #define unput(c) yyunput( c, (yytext_ptr) ) -/* The following is because we cannot portably get our hands on size_t - * (without autoconf's help, which isn't available because we want - * flex-generated scanners to compile on their own). - */ - #ifndef YY_TYPEDEF_YY_SIZE_T #define YY_TYPEDEF_YY_SIZE_T -typedef unsigned int yy_size_t; +typedef size_t yy_size_t; #endif #ifndef YY_STRUCT_YY_BUFFER_STATE @@ -349,7 +372,7 @@ void xbt_graph_parse_free (void * ); /* Begin user sect3 */ -#define xbt_graph_parse_wrap() 1 +#define xbt_graph_parse_wrap(n) 1 #define YY_SKIP_YYWRAP typedef unsigned char YY_CHAR; @@ -380,8 +403,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 89 -#define YY_END_OF_BUFFER 90 +#define YY_NUM_RULES 92 +#define YY_END_OF_BUFFER 93 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -389,59 +412,59 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[546] = +static yyconst flex_int16_t yy_accept[564] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 90, 88, 17, 10, 10, 17, 17, 68, 10, 68, - 5, 6, 5, 8, 9, 8, 84, 76, 77, 85, - 82, 85, 83, 87, 76, 77, 87, 88, 25, 10, - 25, 25, 25, 23, 25, 29, 10, 29, 29, 88, - 88, 29, 43, 10, 43, 43, 43, 41, 43, 43, - - 43, 43, 47, 10, 47, 63, 10, 63, 63, 63, - 61, 63, 63, 63, 63, 63, 67, 10, 67, 85, - 84, 10, 0, 2, 2, 0, 4, 7, 79, 78, - 0, 0, 0, 0, 0, 0, 0, 24, 26, 26, - 0, 0, 0, 42, 44, 44, 44, 44, 44, 0, - 62, 64, 64, 64, 64, 64, 64, 64, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 86, 0, 26, 0, 0, 0, 0, - 44, 44, 44, 44, 0, 0, 64, 64, 64, 64, - 64, 64, 0, 0, 0, 81, 0, 16, 1, 0, - - 0, 74, 0, 0, 0, 71, 70, 0, 0, 26, - 0, 0, 28, 0, 0, 0, 44, 44, 44, 44, - 0, 0, 46, 0, 64, 64, 64, 64, 64, 64, - 0, 0, 66, 0, 0, 0, 0, 75, 69, 0, - 0, 0, 26, 0, 48, 30, 0, 0, 44, 0, - 0, 44, 0, 0, 0, 64, 64, 0, 0, 64, - 64, 0, 0, 0, 0, 0, 12, 0, 72, 73, - 18, 26, 0, 48, 30, 0, 36, 35, 0, 0, - 0, 34, 33, 44, 0, 0, 60, 59, 0, 0, - 64, 0, 52, 51, 64, 64, 0, 0, 0, 0, - - 0, 11, 18, 26, 0, 0, 32, 31, 44, 0, - 45, 0, 50, 49, 0, 0, 0, 0, 0, 0, - 0, 65, 0, 0, 0, 0, 26, 0, 27, 44, - 0, 58, 57, 0, 54, 53, 0, 56, 55, 0, - 0, 0, 0, 26, 44, 80, 0, 0, 0, 26, - 44, 44, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 38, 37, 0, 40, 39, 0, 0, 0, + 93, 91, 17, 10, 10, 17, 17, 71, 10, 71, + 5, 6, 5, 8, 9, 8, 87, 79, 80, 88, + 85, 88, 86, 90, 79, 80, 90, 91, 26, 10, + 26, 26, 26, 24, 26, 30, 10, 30, 30, 91, + 91, 30, 91, 45, 10, 45, 45, 45, 43, 45, + + 45, 45, 45, 49, 10, 49, 91, 66, 10, 66, + 66, 66, 64, 66, 66, 66, 66, 66, 70, 10, + 70, 88, 87, 10, 0, 2, 2, 0, 4, 7, + 82, 81, 0, 0, 0, 0, 0, 0, 0, 25, + 27, 27, 0, 0, 0, 0, 0, 0, 44, 46, + 46, 46, 46, 46, 0, 65, 67, 67, 67, 67, + 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, 0, 0, 89, 0, + 27, 0, 0, 0, 0, 0, 0, 0, 46, 46, + 46, 46, 0, 0, 67, 67, 67, 67, 67, 67, + + 0, 0, 0, 84, 0, 16, 1, 0, 0, 77, + 0, 0, 0, 74, 73, 0, 0, 27, 0, 0, + 29, 0, 0, 0, 0, 0, 0, 46, 46, 46, + 46, 0, 0, 48, 0, 67, 67, 67, 67, 67, + 67, 0, 0, 69, 0, 0, 0, 0, 78, 72, + 0, 0, 0, 27, 0, 51, 0, 32, 31, 50, + 0, 0, 46, 0, 0, 46, 0, 0, 0, 67, + 67, 0, 0, 67, 67, 0, 0, 0, 0, 0, + 12, 0, 75, 76, 19, 27, 0, 51, 18, 32, + 31, 50, 0, 38, 37, 0, 0, 0, 36, 35, + + 46, 0, 0, 63, 62, 0, 0, 67, 0, 55, + 54, 67, 67, 0, 0, 0, 0, 0, 11, 19, + 27, 0, 18, 0, 34, 33, 46, 0, 47, 0, + 53, 52, 0, 0, 0, 0, 0, 0, 0, 68, + 0, 0, 0, 0, 27, 0, 28, 46, 0, 61, + 60, 0, 57, 56, 0, 59, 58, 0, 0, 0, + 0, 27, 46, 83, 0, 0, 0, 27, 46, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 40, 39, 0, 42, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, - 20, 0, 19, 0, 0, 0, 0, 0, 0, 0, - 22, 21, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 12, 0, 12, 0, 0, 21, 0, + 20, 0, 0, 0, 0, 0, 0, 0, 23, 22, + 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -449,8 +472,10 @@ static yyconst flex_int16_t yy_accept[546] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, - 0, 14, 0, 15, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 13, 0, 0, 14, + 0, 15, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -495,508 +520,524 @@ static yyconst flex_int32_t yy_meta[56] = 5, 5, 5, 5, 5 } ; -static yyconst flex_int16_t yy_base[576] = +static yyconst flex_int16_t yy_base[594] = { 0, 0, 0, 0, 3, 6, 9, 24, 27, 11, 14, 15, 17, 29, 38, 45, 52, 59, 61, 67, 70, 93, 135, 73, 76, 111, 114, 117, 153, 156, 159, 176, 179, 182, 185, 200, 203, 206, 209, 225, 0, 279, 282, 285, 288, 304, 0, 358, 361, 363, 365, - 1541, 1542, 1542, 380, 383, 47, 62, 1542, 386, 171, - 1542, 1542, 1530, 1542, 1542, 1521, 1542, 1534, 1534, 365, - 1542, 1542, 1542, 1542, 1532, 1532, 1502, 375, 1542, 389, - 1515, 0, 195, 1542, 1482, 1542, 398, 391, 399, 393, - 401, 402, 1542, 420, 1513, 0, 411, 1542, 1496, 1495, - - 1494, 1481, 1542, 423, 423, 1542, 429, 1508, 0, 429, - 1542, 1491, 1, 1490, 1477, 1488, 1542, 441, 435, 1516, - 1488, 447, 34, 1465, 1542, 1508, 1499, 1542, 1542, 1542, - 69, 40, 1465, 1464, 1462, 1495, 1463, 1542, 0, 1488, - 1470, 1472, 1462, 1542, 0, 1456, 1471, 1461, 1454, 1458, - 1542, 0, 1451, 1466, 1455, 1455, 1446, 1448, 1458, 1464, - 1476, 1475, 1482, 108, 1447, 1542, 75, 0, 1443, 1443, - 1473, 1472, 1440, 1542, 1451, 1442, 453, 456, 1443, 1445, - 1447, 1442, 1441, 1436, 459, 462, 1443, 1438, 1435, 1436, - 1424, 1432, 465, 482, 1449, 1542, 1452, 1542, 1542, 110, - - 1426, 1542, 1453, 1452, 1416, 1542, 1542, 1414, 1417, 1414, - 485, 488, 1542, 491, 1424, 1355, 494, 1349, 510, 1331, - 513, 518, 1542, 526, 530, 1336, 1325, 535, 1337, 1328, - 538, 546, 1542, 551, 1338, 423, 555, 1542, 1542, 1341, - 1259, 1232, 1233, 558, 563, 568, 575, 578, 586, 591, - 595, 1228, 607, 610, 613, 626, 1228, 629, 632, 1229, - 1215, 645, 1244, 452, 1245, 648, 1542, 1225, 1542, 1542, - 651, 1195, 654, 657, 665, 671, 1542, 1542, 685, 688, - 701, 1542, 1542, 1183, 696, 709, 1542, 1542, 717, 720, - 728, 733, 1542, 1542, 744, 747, 750, 1199, 32, 104, - - 153, 1542, 753, 1174, 756, 763, 1542, 1542, 1069, 773, - 1542, 776, 1542, 1542, 784, 790, 800, 803, 811, 816, - 827, 1542, 1055, 146, 179, 147, 1026, 830, 1542, 1013, - 833, 1542, 1542, 847, 1542, 1542, 855, 1542, 1542, 1001, - 863, 175, 428, 987, 119, 1542, 866, 181, 89, 869, - 872, 875, 435, 360, 455, 457, 458, 891, 894, 910, - 913, 921, 926, 484, 489, 508, 557, 578, 937, 567, - 625, 945, 1542, 1542, 953, 1542, 1542, 582, 176, 606, - 528, 961, 961, 901, 908, 887, 964, 621, 967, 970, - 973, 990, 856, 830, 812, 788, 998, 1001, 1007, 1010, - - 1027, 1035, 1053, 1085, 688, 687, 592, 548, 652, 1045, - 663, 1103, 678, 284, 1121, 1153, 545, 475, 381, 408, - 688, 710, 699, 765, 278, 369, 285, 291, 1048, 293, - 1542, 211, 1542, 608, 715, 744, 162, 110, 76, 1077, - 1542, 1542, 352, 752, 647, 5, 199, 661, 772, 1542, - 1116, 798, 1145, 1171, 1179, 1184, 567, 723, 1192, 771, - 803, 461, 660, 806, 820, 777, 792, 517, 766, 834, - 836, 829, 873, 780, 862, 884, 887, 913, 934, 869, - 943, 968, 971, 965, 979, 690, 790, 980, 999, 872, - 883, 844, 1064, 926, 989, 1123, 1132, 500, 902, 1148, - - 1160, 915, 1056, 1065, 1124, 1173, 1181, 1133, 1189, 603, - 916, 1194, 1195, 1005, 1059, 1060, 1080, 1095, 1127, 1092, - 1128, 1185, 1190, 1191, 1193, 1196, 1197, 1016, 1208, 1200, - 1201, 1214, 1212, 1237, 1217, 1227, 1244, 1247, 1542, 1250, - 1254, 1542, 1257, 1542, 1542, 1275, 1282, 1289, 1296, 1303, - 1310, 1317, 1324, 1331, 1338, 1345, 1350, 1355, 1360, 1367, - 1370, 1373, 1376, 1383, 1387, 1393, 1399, 1405, 1412, 1419, - 1426, 1433, 1440, 1447, 1454 + 1585, 1586, 1586, 380, 383, 47, 62, 1586, 386, 171, + 1586, 1586, 1574, 1586, 1586, 1565, 1586, 1578, 1578, 365, + 1586, 1586, 1586, 1586, 1576, 1576, 1546, 375, 1586, 389, + 1559, 0, 195, 1586, 1526, 1586, 398, 391, 399, 402, + 411, 414, 393, 1586, 420, 1557, 0, 401, 1586, 1540, + + 1539, 1538, 1525, 1586, 458, 422, 427, 1586, 464, 1552, + 0, 409, 1586, 1535, 1, 1534, 1521, 1532, 1586, 467, + 438, 1560, 1532, 470, 34, 1509, 1586, 1552, 1543, 1586, + 1586, 1586, 69, 40, 1509, 1508, 1506, 1539, 1507, 1586, + 0, 1532, 1514, 1516, 1503, 1505, 1504, 1512, 1586, 0, + 1497, 1512, 1502, 1495, 1499, 1586, 0, 1492, 1507, 1496, + 1496, 1487, 1489, 1499, 1505, 1517, 1516, 1523, 108, 1488, + 1586, 75, 0, 1484, 1484, 1514, 1513, 1481, 1586, 1492, + 1483, 473, 476, 1484, 1489, 1485, 1484, 1480, 1485, 1480, + 1479, 1474, 479, 482, 1481, 1476, 1473, 1474, 1462, 1470, + + 485, 502, 1487, 1586, 1490, 1586, 1586, 110, 1464, 1586, + 1491, 1490, 1454, 1586, 1586, 1452, 1455, 1452, 505, 508, + 1586, 511, 1462, 1452, 1460, 1459, 1458, 514, 1452, 530, + 1443, 533, 538, 1586, 546, 550, 1450, 1373, 555, 1387, + 1375, 558, 566, 1586, 571, 1387, 435, 575, 1586, 1586, + 1392, 1389, 1356, 1354, 578, 583, 1346, 588, 595, 598, + 601, 604, 612, 617, 624, 1263, 620, 633, 637, 645, + 1263, 649, 661, 1264, 1250, 653, 1280, 472, 1280, 657, + 1586, 1279, 1586, 1586, 670, 1260, 674, 677, 680, 683, + 686, 694, 697, 1586, 1586, 705, 710, 721, 1586, 1586, + + 1248, 729, 732, 1586, 1586, 740, 746, 756, 759, 1586, + 1586, 767, 772, 775, 1264, 32, 104, 153, 1586, 778, + 1226, 783, 788, 793, 1586, 1586, 1230, 801, 1586, 804, + 1586, 1586, 812, 818, 828, 831, 839, 844, 855, 1586, + 1234, 146, 179, 147, 1212, 858, 1586, 1215, 861, 1586, + 1586, 875, 1586, 1586, 883, 1586, 1586, 1111, 891, 175, + 445, 1066, 119, 1586, 894, 181, 89, 897, 900, 903, + 501, 360, 399, 480, 475, 919, 922, 938, 941, 949, + 954, 506, 509, 526, 599, 624, 965, 654, 678, 973, + 1586, 1586, 981, 1586, 1586, 417, 176, 594, 548, 989, + + 1058, 1003, 1016, 937, 992, 407, 995, 998, 1001, 1018, + 930, 918, 922, 910, 1026, 1029, 1035, 1038, 1055, 1063, + 1081, 1113, 819, 790, 733, 616, 710, 1073, 721, 1131, + 748, 284, 1149, 1181, 557, 565, 458, 449, 537, 770, + 676, 805, 278, 369, 285, 291, 1076, 293, 1586, 211, + 1586, 708, 693, 727, 162, 110, 76, 1105, 1586, 1586, + 352, 735, 794, 5, 199, 820, 474, 1586, 1144, 850, + 1173, 1199, 1207, 1212, 591, 754, 1220, 799, 831, 749, + 833, 834, 848, 862, 897, 684, 791, 900, 912, 895, + 901, 483, 808, 920, 930, 836, 890, 627, 892, 941, + + 962, 971, 993, 818, 873, 1005, 1007, 954, 960, 702, + 872, 963, 1008, 1027, 1092, 1017, 1025, 1151, 1160, 1031, + 1084, 1093, 1152, 1176, 1188, 1161, 1209, 1033, 1087, 1217, + 1221, 1123, 1155, 1088, 1108, 1215, 1216, 1120, 1156, 1218, + 1219, 1222, 1223, 1224, 1225, 1239, 1240, 1226, 1228, 1241, + 1242, 1264, 1258, 1260, 1268, 1277, 1586, 1281, 1285, 1586, + 1288, 1586, 1586, 1306, 1313, 1320, 1327, 1334, 1341, 1348, + 1355, 1362, 1369, 1376, 1381, 1386, 1391, 1398, 1401, 1404, + 1407, 1414, 1418, 1424, 1430, 1436, 1443, 1450, 1457, 1464, + 1471, 1478, 1485 + } ; -static yyconst flex_int16_t yy_def[576] = +static yyconst flex_int16_t yy_def[594] = { 0, - 546, 546, 547, 547, 547, 547, 548, 548, 549, 549, - 550, 550, 551, 551, 551, 551, 552, 552, 546, 546, - 553, 553, 554, 554, 554, 554, 546, 546, 554, 554, - 546, 546, 554, 554, 554, 554, 546, 546, 545, 39, - 555, 555, 546, 546, 545, 45, 556, 556, 551, 551, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 557, 545, 545, 557, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 558, 545, 545, 558, 558, - - 558, 558, 545, 545, 545, 545, 545, 545, 559, 545, - 545, 559, 559, 559, 559, 559, 545, 545, 545, 545, - 545, 545, 560, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 557, 557, - 561, 545, 545, 545, 558, 558, 558, 558, 558, 562, - 545, 559, 559, 559, 559, 559, 559, 559, 563, 545, - 545, 564, 545, 564, 545, 545, 545, 565, 545, 545, - 545, 545, 545, 545, 545, 557, 566, 566, 545, 545, - 558, 558, 558, 558, 567, 567, 559, 559, 559, 559, - 559, 559, 568, 568, 545, 545, 564, 545, 545, 564, - - 545, 545, 565, 545, 545, 545, 545, 545, 545, 557, - 545, 566, 545, 566, 545, 545, 558, 558, 558, 558, - 545, 567, 545, 567, 559, 559, 559, 559, 559, 559, - 545, 568, 545, 568, 545, 564, 569, 545, 545, 545, - 545, 545, 557, 566, 545, 545, 545, 545, 558, 545, - 545, 558, 567, 545, 545, 559, 559, 545, 545, 559, - 559, 568, 545, 564, 569, 569, 545, 569, 545, 545, - 545, 557, 566, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 558, 567, 545, 545, 545, 545, 545, - 559, 545, 545, 545, 559, 559, 568, 545, 564, 569, - - 569, 545, 545, 557, 566, 545, 545, 545, 558, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 564, 569, 569, 557, 545, 545, 558, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 564, 569, 569, 557, 558, 545, 564, 569, 569, 557, - 558, 558, 564, 564, 564, 569, 569, 545, 545, 545, - 545, 545, 545, 564, 564, 564, 569, 569, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 564, 564, 564, - 569, 569, 545, 545, 545, 545, 564, 564, 564, 569, - 569, 569, 545, 545, 545, 545, 564, 564, 564, 569, - - 569, 569, 570, 571, 545, 545, 545, 545, 564, 564, - 564, 569, 572, 573, 570, 571, 545, 545, 545, 545, - 564, 564, 564, 572, 569, 574, 573, 575, 569, 545, - 545, 545, 545, 564, 564, 564, 574, 545, 575, 569, - 545, 545, 564, 564, 564, 545, 564, 564, 564, 545, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, 564, 564, 564, 545, 564, - 564, 545, 564, 545, 0, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545 + 564, 564, 565, 565, 565, 565, 566, 566, 567, 567, + 568, 568, 569, 569, 569, 569, 570, 570, 564, 564, + 571, 571, 572, 572, 572, 572, 564, 564, 572, 572, + 564, 564, 572, 572, 572, 572, 564, 564, 563, 39, + 573, 573, 564, 564, 563, 45, 574, 574, 569, 569, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 575, 563, 563, 575, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 576, 563, 563, 576, + + 576, 576, 576, 563, 563, 563, 563, 563, 563, 563, + 577, 563, 563, 577, 577, 577, 577, 577, 563, 563, + 563, 563, 563, 563, 578, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 575, 575, 579, 563, 563, 563, 563, 563, 563, 576, + 576, 576, 576, 576, 580, 563, 577, 577, 577, 577, + 577, 577, 577, 581, 563, 563, 582, 563, 582, 563, + 563, 563, 583, 563, 563, 563, 563, 563, 563, 563, + 575, 584, 584, 563, 563, 563, 563, 563, 576, 576, + 576, 576, 585, 585, 577, 577, 577, 577, 577, 577, + + 586, 586, 563, 563, 582, 563, 563, 582, 563, 563, + 583, 563, 563, 563, 563, 563, 563, 575, 563, 584, + 563, 584, 563, 563, 563, 563, 563, 576, 576, 576, + 576, 563, 585, 563, 585, 577, 577, 577, 577, 577, + 577, 563, 586, 563, 586, 563, 582, 587, 563, 563, + 563, 563, 563, 575, 584, 563, 563, 563, 563, 563, + 563, 563, 576, 563, 563, 576, 585, 563, 563, 577, + 577, 563, 563, 577, 577, 586, 563, 582, 587, 587, + 563, 587, 563, 563, 563, 575, 584, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + + 576, 585, 563, 563, 563, 563, 563, 577, 563, 563, + 563, 577, 577, 586, 563, 582, 587, 587, 563, 563, + 575, 584, 563, 563, 563, 563, 576, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 582, 587, 587, 575, 563, 563, 576, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 582, 587, + 587, 575, 576, 563, 582, 587, 587, 575, 576, 576, + 582, 582, 582, 587, 587, 563, 563, 563, 563, 563, + 563, 582, 582, 582, 587, 587, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 582, 582, 582, 587, 587, + + 563, 563, 563, 563, 582, 582, 582, 587, 587, 587, + 563, 563, 563, 563, 582, 582, 582, 587, 587, 587, + 588, 589, 563, 563, 563, 563, 582, 582, 582, 587, + 590, 591, 588, 589, 563, 563, 563, 563, 582, 582, + 582, 590, 587, 592, 591, 593, 587, 563, 563, 563, + 563, 582, 582, 582, 592, 563, 593, 587, 563, 563, + 582, 582, 582, 563, 582, 582, 582, 563, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 563, 582, 582, 563, + 582, 563, 0, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563 + } ; -static yyconst flex_int16_t yy_nxt[1598] = +static yyconst flex_int16_t yy_nxt[1642] = { 0, - 545, 54, 55, 54, 54, 55, 54, 54, 55, 54, - 54, 55, 54, 62, 545, 56, 62, 65, 56, 65, - 63, 57, 450, 63, 57, 59, 55, 59, 59, 55, - 59, 68, 69, 66, 154, 66, 70, 71, 155, 60, - 68, 69, 60, 163, 72, 70, 71, 68, 69, 198, - 73, 123, 70, 72, 68, 69, 164, 73, 324, 70, - 72, 75, 76, 75, 76, 124, 123, 72, 55, 55, + 563, 54, 55, 54, 54, 55, 54, 54, 55, 54, + 54, 55, 54, 62, 563, 56, 62, 65, 56, 65, + 63, 57, 468, 63, 57, 59, 55, 59, 59, 55, + 59, 68, 69, 66, 159, 66, 70, 71, 160, 60, + 68, 69, 60, 168, 72, 70, 71, 68, 69, 206, + 73, 125, 70, 72, 68, 69, 169, 73, 342, 70, + 72, 75, 76, 75, 76, 126, 125, 72, 55, 55, 55, 55, 55, 55, 87, 55, 87, 87, 55, 87, - 125, 167, 78, 169, 438, 78, 170, 167, 88, 202, + 127, 172, 78, 174, 456, 78, 175, 172, 88, 210, 77, 88, 77, 79, 80, 55, 80, 79, 79, 79, - 79, 79, 79, 79, 81, 79, 267, 79, 83, 79, + 79, 79, 79, 79, 81, 79, 281, 79, 83, 79, 84, 79, 87, 55, 87, 87, 55, 87, 55, 55, - 55, 267, 168, 79, 79, 198, 89, 198, 446, 89, - 357, 236, 90, 200, 85, 79, 80, 55, 80, 79, - 79, 79, 79, 79, 79, 79, 81, 79, 325, 79, + 55, 281, 173, 79, 79, 206, 89, 206, 464, 89, + 375, 247, 90, 208, 85, 79, 80, 55, 80, 79, + 79, 79, 79, 79, 79, 79, 81, 79, 343, 79, 83, 79, 84, 79, 55, 55, 55, 87, 55, 87, - 87, 55, 87, 198, 267, 79, 79, 438, 90, 341, - 267, 88, 351, 352, 88, 126, 85, 55, 55, 55, - 55, 55, 55, 87, 55, 87, 87, 55, 87, 125, - 326, 91, 267, 198, 91, 343, 267, 89, 267, 126, + 87, 55, 87, 206, 281, 79, 79, 456, 90, 359, + 281, 88, 369, 370, 88, 128, 85, 55, 55, 55, + 55, 55, 55, 87, 55, 87, 87, 55, 87, 127, + 344, 91, 281, 206, 91, 361, 281, 89, 281, 128, 89, 87, 55, 87, 87, 55, 87, 55, 55, 55, - 55, 55, 55, 125, 342, 92, 198, 356, 92, 442, - 348, 90, 388, 451, 90, 93, 94, 55, 94, 93, - 93, 93, 93, 93, 93, 93, 95, 93, 96, 93, - 97, 93, 98, 93, 96, 96, 96, 96, 96, 96, - 96, 96, 96, 96, 96, 93, 93, 96, 96, 96, - 96, 99, 96, 96, 96, 96, 96, 100, 96, 101, - 96, 102, 96, 96, 96, 96, 96, 96, 96, 96, - 104, 55, 104, 104, 55, 104, 55, 55, 55, 55, - 55, 55, 425, 425, 105, 267, 268, 105, 441, 438, - - 91, 428, 428, 91, 106, 107, 55, 107, 106, 106, - 106, 106, 106, 106, 106, 108, 106, 109, 106, 110, - 106, 111, 106, 109, 109, 109, 109, 109, 109, 109, - 109, 109, 109, 109, 106, 106, 109, 109, 109, 109, - 112, 109, 109, 109, 109, 109, 113, 109, 114, 109, - 109, 109, 109, 115, 116, 109, 109, 109, 109, 118, - 55, 118, 118, 55, 118, 68, 69, 68, 69, 198, - 70, 131, 70, 119, 438, 447, 119, 198, 120, 126, - 120, 122, 122, 122, 122, 122, 122, 122, 122, 122, - 122, 122, 122, 125, 121, 126, 121, 126, 132, 122, - - 122, 122, 141, 126, 133, 126, 126, 134, 365, 125, - 141, 125, 135, 141, 137, 126, 433, 125, 432, 125, - 125, 122, 122, 122, 122, 122, 122, 126, 142, 125, - 122, 122, 122, 126, 150, 143, 142, 143, 142, 126, - 198, 125, 122, 122, 122, 267, 159, 125, 122, 122, - 122, 264, 198, 125, 211, 211, 211, 211, 211, 211, - 221, 221, 221, 221, 221, 221, 231, 231, 231, 198, - 213, 364, 198, 213, 267, 267, 223, 349, 198, 223, - 431, 299, 233, 231, 231, 231, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 247, 247, 247, 367, 233, - - 366, 198, 213, 368, 214, 213, 198, 224, 213, 468, - 248, 250, 250, 250, 221, 221, 221, 198, 234, 221, - 221, 221, 379, 378, 244, 198, 251, 221, 221, 221, - 223, 254, 254, 254, 198, 223, 258, 258, 258, 231, - 231, 231, 504, 223, 380, 267, 255, 231, 231, 231, - 474, 259, 231, 231, 231, 233, 266, 266, 266, 211, - 211, 211, 253, 233, 274, 274, 274, 390, 233, 275, - 275, 275, 267, 268, 267, 213, 247, 247, 247, 276, - 276, 276, 430, 277, 198, 420, 278, 279, 279, 279, - 262, 248, 250, 250, 250, 267, 281, 281, 281, 198, - - 282, 381, 280, 283, 273, 383, 462, 251, 221, 221, - 221, 254, 254, 254, 286, 286, 286, 384, 287, 387, - 198, 288, 382, 198, 223, 198, 255, 289, 289, 289, - 258, 258, 258, 292, 292, 292, 443, 293, 198, 516, - 294, 419, 290, 389, 285, 259, 231, 231, 231, 266, - 266, 266, 303, 303, 303, 211, 211, 211, 274, 274, - 274, 398, 233, 385, 198, 267, 275, 275, 275, 198, - 449, 213, 276, 276, 276, 386, 277, 198, 198, 278, - 198, 421, 297, 425, 452, 300, 279, 279, 279, 306, - 306, 306, 423, 307, 305, 426, 308, 310, 310, 310, - - 301, 280, 281, 281, 281, 198, 282, 198, 469, 283, - 286, 286, 286, 311, 287, 434, 198, 288, 289, 289, - 289, 312, 312, 312, 418, 313, 436, 198, 314, 315, - 315, 315, 198, 290, 292, 292, 292, 417, 293, 435, - 198, 294, 444, 492, 316, 317, 317, 317, 319, 319, - 319, 321, 321, 321, 303, 303, 303, 328, 328, 328, - 318, 198, 463, 320, 306, 306, 306, 322, 307, 198, - 425, 308, 445, 329, 310, 310, 310, 312, 312, 312, - 448, 313, 426, 198, 314, 315, 315, 315, 198, 198, - 311, 331, 331, 331, 198, 332, 453, 198, 333, 475, - - 316, 317, 317, 317, 334, 334, 334, 198, 335, 198, - 466, 336, 319, 319, 319, 198, 318, 337, 337, 337, - 198, 338, 455, 198, 339, 472, 480, 320, 321, 321, - 321, 328, 328, 328, 331, 331, 331, 198, 332, 408, - 473, 333, 467, 493, 322, 470, 198, 329, 334, 334, - 334, 198, 335, 198, 407, 336, 337, 337, 337, 471, - 338, 198, 478, 339, 347, 347, 347, 347, 347, 347, - 358, 358, 358, 360, 360, 360, 362, 362, 362, 198, - 198, 406, 476, 198, 477, 359, 198, 498, 361, 198, - 198, 363, 358, 358, 358, 369, 369, 369, 405, 370, - - 198, 198, 371, 353, 198, 354, 479, 359, 481, 486, - 355, 360, 360, 360, 372, 372, 372, 482, 373, 198, - 483, 374, 362, 362, 362, 496, 361, 375, 375, 375, - 198, 376, 198, 198, 377, 396, 497, 363, 369, 369, - 369, 395, 370, 198, 505, 371, 372, 372, 372, 394, - 373, 198, 517, 374, 375, 375, 375, 508, 376, 484, - 198, 377, 391, 391, 391, 397, 397, 397, 399, 399, - 399, 400, 400, 400, 391, 391, 391, 392, 267, 500, - 485, 198, 198, 487, 198, 198, 401, 267, 198, 392, - 267, 402, 402, 402, 393, 403, 198, 198, 404, 397, - - 397, 397, 410, 410, 410, 490, 198, 267, 399, 399, - 399, 400, 400, 400, 488, 198, 198, 489, 198, 491, - 494, 534, 198, 350, 198, 409, 401, 267, 412, 412, - 412, 346, 413, 198, 411, 414, 402, 402, 402, 495, - 403, 520, 501, 404, 267, 345, 410, 410, 410, 440, - 440, 440, 267, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 198, 344, 265, 267, 268, 265, 265, 265, - 267, 265, 422, 198, 340, 510, 198, 198, 440, 440, - 440, 198, 198, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 265, 265, 267, 521, 265, 198, 509, 265, - - 265, 265, 267, 265, 412, 412, 412, 499, 413, 198, - 522, 414, 198, 330, 300, 265, 265, 454, 454, 454, - 267, 265, 265, 265, 265, 265, 429, 265, 265, 265, - 523, 524, 265, 198, 511, 265, 265, 265, 267, 265, - 198, 198, 526, 514, 198, 198, 456, 456, 456, 198, - 198, 265, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 429, 198, 525, 265, 198, 502, 265, 265, 265, - 267, 265, 454, 454, 454, 503, 457, 198, 527, 458, - 459, 459, 459, 265, 265, 456, 456, 456, 198, 460, - 198, 506, 461, 459, 459, 459, 198, 464, 198, 515, - - 465, 198, 198, 507, 518, 519, 198, 198, 198, 198, - 198, 198, 198, 198, 198, 512, 534, 198, 198, 537, - 537, 528, 540, 513, 327, 198, 529, 323, 309, 198, - 304, 198, 532, 533, 198, 540, 535, 536, 538, 538, - 538, 530, 302, 531, 198, 541, 541, 541, 538, 538, - 538, 543, 543, 543, 539, 541, 541, 541, 543, 543, - 543, 542, 267, 298, 539, 296, 295, 544, 291, 284, - 272, 542, 271, 270, 544, 52, 52, 52, 52, 52, - 52, 52, 53, 53, 53, 53, 53, 53, 53, 58, - 58, 58, 58, 58, 58, 58, 61, 61, 61, 61, - - 61, 61, 61, 64, 64, 64, 64, 64, 64, 64, - 67, 67, 67, 67, 67, 67, 67, 74, 74, 74, - 74, 74, 74, 74, 82, 82, 82, 82, 82, 82, - 82, 86, 86, 86, 86, 86, 86, 86, 103, 103, - 103, 103, 103, 103, 103, 117, 117, 117, 117, 117, - 117, 117, 139, 139, 139, 269, 139, 145, 145, 145, - 263, 145, 152, 152, 152, 261, 152, 162, 162, 162, - 162, 162, 260, 162, 177, 257, 177, 185, 256, 185, - 193, 252, 193, 197, 197, 197, 197, 197, 197, 197, - 203, 249, 246, 203, 212, 212, 212, 212, 212, 212, - - 222, 222, 222, 222, 222, 222, 232, 232, 232, 232, - 232, 232, 265, 265, 265, 265, 265, 265, 265, 415, - 415, 415, 415, 415, 415, 415, 416, 416, 416, 416, - 416, 416, 416, 424, 424, 424, 424, 424, 424, 424, - 427, 427, 427, 427, 427, 427, 427, 437, 437, 437, - 437, 437, 437, 437, 439, 439, 439, 439, 439, 439, - 439, 245, 243, 242, 241, 240, 239, 238, 237, 198, - 235, 230, 229, 228, 227, 226, 225, 220, 219, 218, - 217, 216, 215, 210, 209, 208, 207, 206, 205, 204, - 201, 199, 198, 196, 195, 194, 192, 191, 190, 189, - - 188, 187, 186, 184, 183, 182, 181, 180, 179, 178, - 176, 175, 174, 173, 172, 171, 166, 163, 165, 161, - 160, 158, 157, 156, 153, 151, 149, 148, 147, 146, - 144, 140, 138, 136, 130, 129, 130, 129, 128, 127, - 545, 51, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545 - + 55, 55, 55, 127, 360, 92, 206, 374, 92, 460, + 366, 93, 406, 469, 93, 94, 95, 55, 95, 94, + 94, 94, 94, 94, 94, 94, 96, 94, 97, 94, + 98, 94, 99, 94, 97, 97, 97, 97, 97, 97, + 97, 97, 97, 97, 97, 94, 94, 97, 97, 97, + 97, 100, 97, 97, 97, 97, 97, 101, 97, 102, + 97, 103, 97, 97, 97, 97, 97, 97, 97, 97, + 105, 55, 105, 105, 55, 105, 55, 55, 55, 55, + 55, 55, 443, 443, 106, 281, 282, 106, 459, 456, + + 107, 446, 446, 107, 108, 109, 55, 109, 108, 108, + 108, 108, 108, 108, 108, 110, 108, 111, 108, 112, + 108, 113, 108, 111, 111, 111, 111, 111, 111, 111, + 111, 111, 111, 111, 108, 108, 111, 111, 111, 111, + 114, 111, 111, 111, 111, 111, 115, 111, 116, 111, + 111, 111, 111, 117, 118, 111, 111, 111, 111, 120, + 55, 120, 120, 55, 120, 68, 69, 68, 69, 206, + 70, 133, 70, 121, 456, 465, 121, 206, 122, 128, + 122, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 127, 123, 128, 123, 128, 134, 124, + + 124, 124, 143, 128, 135, 128, 128, 136, 383, 127, + 143, 127, 137, 128, 139, 128, 206, 127, 128, 127, + 127, 124, 124, 124, 206, 143, 128, 127, 144, 127, + 145, 128, 127, 155, 206, 146, 144, 146, 145, 148, + 127, 145, 128, 147, 384, 127, 146, 416, 144, 164, + 145, 148, 206, 145, 405, 147, 127, 451, 147, 124, + 124, 124, 281, 278, 144, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 219, 219, 219, 219, 219, 219, + 232, 232, 232, 232, 232, 232, 242, 242, 242, 206, + 221, 206, 281, 221, 367, 450, 234, 281, 471, 234, + + 206, 316, 244, 242, 242, 242, 219, 219, 219, 219, + 219, 219, 219, 219, 219, 261, 261, 261, 206, 244, + 386, 385, 221, 206, 222, 221, 206, 235, 221, 498, + 262, 264, 264, 264, 232, 232, 232, 382, 245, 232, + 232, 232, 397, 206, 255, 396, 265, 232, 232, 232, + 234, 268, 268, 268, 206, 234, 272, 272, 272, 242, + 242, 242, 398, 234, 452, 281, 269, 242, 242, 242, + 449, 273, 242, 242, 242, 244, 280, 280, 280, 219, + 219, 219, 267, 244, 288, 288, 288, 408, 244, 290, + 290, 290, 281, 282, 448, 221, 291, 291, 291, 292, + + 292, 292, 261, 261, 261, 293, 293, 293, 206, 294, + 276, 206, 295, 296, 296, 296, 281, 262, 264, 264, + 264, 232, 232, 232, 287, 298, 298, 298, 297, 299, + 480, 407, 300, 265, 268, 268, 268, 234, 303, 303, + 303, 281, 304, 399, 206, 305, 306, 306, 306, 269, + 272, 272, 272, 438, 242, 242, 242, 302, 280, 280, + 280, 307, 309, 309, 309, 273, 310, 504, 400, 311, + 244, 320, 320, 320, 281, 219, 219, 219, 288, 288, + 288, 323, 323, 323, 290, 290, 290, 291, 291, 291, + 314, 221, 401, 206, 317, 292, 292, 292, 293, 293, + + 293, 206, 294, 454, 402, 295, 296, 296, 296, 318, + 206, 324, 324, 324, 322, 325, 403, 492, 326, 206, + 462, 297, 298, 298, 298, 206, 299, 206, 404, 300, + 328, 328, 328, 303, 303, 303, 461, 304, 206, 439, + 305, 306, 306, 306, 206, 516, 329, 330, 330, 330, + 441, 331, 206, 443, 332, 463, 307, 333, 333, 333, + 309, 309, 309, 466, 310, 444, 206, 311, 335, 335, + 335, 206, 334, 337, 337, 337, 339, 339, 339, 320, + 320, 320, 437, 336, 346, 346, 346, 206, 338, 323, + 323, 323, 340, 481, 324, 324, 324, 486, 325, 453, + + 347, 326, 328, 328, 328, 330, 330, 330, 206, 331, + 443, 206, 332, 333, 333, 333, 206, 467, 329, 349, + 349, 349, 444, 350, 493, 206, 351, 436, 334, 335, + 335, 335, 352, 352, 352, 206, 353, 206, 484, 354, + 337, 337, 337, 470, 336, 355, 355, 355, 206, 356, + 206, 206, 357, 206, 499, 338, 339, 339, 339, 346, + 346, 346, 349, 349, 349, 206, 350, 206, 435, 351, + 485, 510, 340, 488, 473, 347, 352, 352, 352, 206, + 353, 487, 502, 354, 355, 355, 355, 489, 356, 206, + 206, 357, 365, 365, 365, 365, 365, 365, 376, 376, + + 376, 378, 378, 378, 380, 380, 380, 206, 206, 206, + 490, 206, 206, 377, 206, 517, 379, 206, 206, 381, + 376, 376, 376, 387, 387, 387, 511, 388, 496, 206, + 389, 371, 505, 372, 497, 377, 503, 206, 373, 378, + 378, 378, 390, 390, 390, 491, 391, 206, 494, 392, + 380, 380, 380, 500, 379, 393, 393, 393, 206, 394, + 495, 426, 395, 501, 425, 381, 387, 387, 387, 424, + 388, 206, 423, 389, 390, 390, 390, 206, 391, 206, + 206, 392, 393, 393, 393, 414, 394, 506, 206, 395, + 409, 409, 409, 415, 415, 415, 417, 417, 417, 418, + + 418, 418, 409, 409, 409, 410, 281, 514, 507, 206, + 206, 508, 206, 515, 419, 281, 518, 410, 281, 420, + 420, 420, 206, 421, 206, 206, 422, 415, 415, 415, + 428, 428, 428, 509, 206, 281, 417, 417, 417, 418, + 418, 418, 206, 206, 206, 512, 206, 513, 206, 413, + 206, 412, 206, 427, 419, 281, 430, 430, 430, 522, + 431, 519, 429, 432, 420, 420, 420, 523, 421, 534, + 520, 422, 281, 526, 428, 428, 428, 458, 458, 458, + 281, 279, 279, 279, 279, 279, 279, 279, 279, 279, + 206, 411, 279, 281, 282, 279, 279, 279, 281, 279, + + 440, 206, 368, 528, 206, 206, 458, 458, 458, 206, + 206, 279, 279, 279, 279, 279, 279, 279, 279, 279, + 279, 279, 281, 535, 279, 206, 527, 279, 279, 279, + 281, 279, 430, 430, 430, 521, 431, 206, 540, 432, + 206, 364, 317, 279, 279, 472, 472, 472, 281, 279, + 279, 279, 279, 279, 447, 279, 279, 279, 541, 538, + 279, 206, 529, 279, 279, 279, 281, 279, 206, 206, + 544, 532, 206, 206, 474, 474, 474, 206, 206, 279, + 279, 279, 279, 279, 279, 279, 279, 279, 279, 447, + 206, 539, 279, 206, 524, 279, 279, 279, 281, 279, + + 472, 472, 472, 525, 475, 206, 545, 476, 477, 477, + 477, 279, 279, 474, 474, 474, 206, 478, 530, 533, + 479, 477, 477, 477, 206, 482, 206, 536, 483, 206, + 531, 537, 206, 206, 206, 206, 206, 206, 206, 206, + 206, 206, 206, 206, 552, 206, 555, 363, 552, 362, + 555, 542, 543, 358, 546, 547, 206, 206, 206, 206, + 550, 551, 553, 558, 554, 556, 556, 556, 558, 559, + 559, 559, 548, 549, 348, 206, 345, 206, 556, 556, + 556, 557, 561, 561, 561, 560, 559, 559, 559, 561, + 561, 561, 341, 327, 557, 321, 319, 281, 562, 315, + + 313, 312, 560, 308, 301, 562, 52, 52, 52, 52, + 52, 52, 52, 53, 53, 53, 53, 53, 53, 53, + 58, 58, 58, 58, 58, 58, 58, 61, 61, 61, + 61, 61, 61, 61, 64, 64, 64, 64, 64, 64, + 64, 67, 67, 67, 67, 67, 67, 67, 74, 74, + 74, 74, 74, 74, 74, 82, 82, 82, 82, 82, + 82, 82, 86, 86, 86, 86, 86, 86, 86, 104, + 104, 104, 104, 104, 104, 104, 119, 119, 119, 119, + 119, 119, 119, 141, 141, 141, 289, 141, 150, 150, + 150, 286, 150, 157, 157, 157, 285, 157, 167, 167, + + 167, 167, 167, 284, 167, 182, 283, 182, 193, 277, + 193, 201, 275, 201, 205, 205, 205, 205, 205, 205, + 205, 211, 274, 271, 211, 220, 220, 220, 220, 220, + 220, 233, 233, 233, 233, 233, 233, 243, 243, 243, + 243, 243, 243, 279, 279, 279, 279, 279, 279, 279, + 433, 433, 433, 433, 433, 433, 433, 434, 434, 434, + 434, 434, 434, 434, 442, 442, 442, 442, 442, 442, + 442, 445, 445, 445, 445, 445, 445, 445, 455, 455, + 455, 455, 455, 455, 455, 457, 457, 457, 457, 457, + 457, 457, 270, 266, 263, 260, 259, 258, 257, 256, + + 254, 253, 252, 251, 250, 249, 248, 206, 246, 241, + 240, 239, 238, 237, 236, 231, 230, 229, 228, 227, + 226, 225, 224, 223, 218, 217, 216, 215, 214, 213, + 212, 209, 207, 206, 204, 203, 202, 200, 199, 198, + 197, 196, 195, 194, 192, 191, 190, 189, 188, 187, + 186, 185, 184, 183, 181, 180, 179, 178, 177, 176, + 171, 168, 170, 166, 165, 163, 162, 161, 158, 156, + 154, 153, 152, 151, 149, 142, 140, 138, 132, 131, + 132, 131, 130, 129, 563, 51, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563 } ; -static yyconst flex_int16_t yy_chk[1598] = +static yyconst flex_int16_t yy_chk[1642] = { 0, 0, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 9, 0, 3, 10, 11, 4, 12, - 9, 5, 446, 10, 6, 7, 7, 7, 8, 8, - 8, 13, 13, 11, 113, 12, 13, 13, 113, 7, - 14, 14, 8, 123, 13, 14, 14, 15, 15, 299, - 15, 56, 15, 14, 16, 16, 123, 16, 299, 16, + 9, 5, 464, 10, 6, 7, 7, 7, 8, 8, + 8, 13, 13, 11, 115, 12, 13, 13, 115, 7, + 14, 14, 8, 125, 13, 14, 14, 15, 15, 316, + 15, 56, 15, 14, 16, 16, 125, 16, 316, 16, 15, 17, 17, 18, 18, 56, 57, 16, 19, 19, 19, 20, 20, 20, 23, 23, 23, 24, 24, 24, - 57, 131, 19, 132, 439, 20, 132, 167, 23, 167, + 57, 133, 19, 134, 457, 20, 134, 172, 23, 172, 17, 24, 18, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 21, 21, 21, 349, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 367, 21, 21, 21, 21, 21, 25, 25, 25, 26, 26, 26, 27, 27, - 27, 300, 131, 21, 21, 164, 25, 200, 438, 26, - 349, 200, 27, 164, 21, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 300, 22, + 27, 317, 133, 21, 21, 169, 25, 208, 456, 26, + 367, 208, 27, 169, 21, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 317, 22, 22, 22, 22, 22, 28, 28, 28, 29, 29, 29, - 30, 30, 30, 324, 326, 22, 22, 437, 28, 324, - 301, 29, 345, 345, 30, 60, 22, 31, 31, 31, + 30, 30, 30, 342, 344, 22, 22, 455, 28, 342, + 318, 29, 363, 363, 30, 60, 22, 31, 31, 31, 32, 32, 32, 33, 33, 33, 34, 34, 34, 60, - 301, 31, 342, 379, 32, 326, 325, 33, 348, 83, + 318, 31, 360, 397, 32, 344, 343, 33, 366, 83, 34, 35, 35, 35, 36, 36, 36, 37, 37, 37, - 38, 38, 38, 83, 325, 35, 447, 348, 36, 432, - 342, 37, 379, 447, 38, 39, 39, 39, 39, 39, + 38, 38, 38, 83, 343, 35, 465, 366, 36, 450, + 360, 37, 397, 465, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 41, 41, 41, 42, 42, 42, 43, 43, 43, 44, - 44, 44, 414, 427, 41, 425, 425, 42, 430, 428, + 44, 44, 432, 445, 41, 443, 443, 42, 448, 446, - 43, 414, 427, 44, 45, 45, 45, 45, 45, 45, + 43, 432, 445, 44, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 47, - 47, 47, 48, 48, 48, 49, 49, 50, 50, 443, - 49, 70, 50, 47, 426, 443, 48, 354, 49, 78, + 47, 47, 48, 48, 48, 49, 49, 50, 50, 461, + 49, 70, 50, 47, 444, 461, 48, 372, 49, 78, 50, 54, 54, 54, 55, 55, 55, 59, 59, 59, - 80, 80, 80, 78, 49, 88, 50, 90, 70, 87, - - 87, 87, 88, 89, 70, 91, 92, 70, 354, 88, - 89, 90, 70, 92, 78, 97, 420, 89, 419, 91, - 92, 94, 94, 94, 104, 104, 104, 105, 88, 97, - 107, 107, 107, 110, 105, 88, 89, 90, 91, 119, - 236, 105, 118, 118, 118, 343, 119, 110, 122, 122, - 122, 236, 353, 119, 177, 177, 177, 178, 178, 178, - 185, 185, 185, 186, 186, 186, 193, 193, 193, 264, - 177, 353, 355, 178, 356, 357, 185, 343, 462, 186, - 418, 264, 193, 194, 194, 194, 211, 211, 211, 212, - 212, 212, 214, 214, 214, 217, 217, 217, 356, 194, - - 355, 364, 211, 357, 178, 212, 365, 186, 214, 462, - 217, 219, 219, 219, 221, 221, 221, 498, 194, 222, - 222, 222, 365, 364, 214, 366, 219, 224, 224, 224, - 221, 225, 225, 225, 468, 222, 228, 228, 228, 231, - 231, 231, 498, 224, 366, 381, 225, 232, 232, 232, - 468, 228, 234, 234, 234, 231, 237, 237, 237, 244, - 244, 244, 224, 232, 245, 245, 245, 381, 234, 246, - 246, 246, 237, 237, 367, 244, 247, 247, 247, 248, - 248, 248, 417, 248, 457, 408, 248, 249, 249, 249, - 234, 247, 250, 250, 250, 368, 251, 251, 251, 378, - - 251, 367, 249, 251, 244, 370, 457, 250, 253, 253, - 253, 254, 254, 254, 255, 255, 255, 370, 255, 378, - 510, 255, 368, 380, 253, 434, 254, 256, 256, 256, - 258, 258, 258, 259, 259, 259, 434, 259, 388, 510, - 259, 407, 256, 380, 253, 258, 262, 262, 262, 266, - 266, 266, 271, 271, 271, 273, 273, 273, 274, 274, - 274, 388, 262, 371, 445, 266, 275, 275, 275, 409, - 445, 273, 276, 276, 276, 371, 276, 463, 448, 276, - 411, 409, 262, 413, 448, 266, 279, 279, 279, 280, - 280, 280, 411, 280, 273, 413, 280, 285, 285, 285, - - 266, 279, 281, 281, 281, 421, 281, 486, 463, 281, - 286, 286, 286, 285, 286, 421, 423, 286, 289, 289, - 289, 290, 290, 290, 406, 290, 423, 422, 290, 291, - 291, 291, 435, 289, 292, 292, 292, 405, 292, 422, - 458, 292, 435, 486, 291, 295, 295, 295, 296, 296, - 296, 297, 297, 297, 303, 303, 303, 305, 305, 305, - 295, 436, 458, 296, 306, 306, 306, 297, 306, 444, - 424, 306, 436, 305, 310, 310, 310, 312, 312, 312, - 444, 312, 424, 469, 312, 315, 315, 315, 460, 449, - 310, 316, 316, 316, 466, 316, 449, 474, 316, 469, - - 315, 317, 317, 317, 318, 318, 318, 487, 318, 467, - 460, 318, 319, 319, 319, 452, 317, 320, 320, 320, - 461, 320, 452, 464, 320, 466, 474, 319, 321, 321, - 321, 328, 328, 328, 331, 331, 331, 465, 331, 396, - 467, 331, 461, 487, 321, 464, 472, 328, 334, 334, - 334, 470, 334, 471, 395, 334, 337, 337, 337, 465, - 337, 492, 472, 337, 341, 341, 341, 347, 347, 347, - 350, 350, 350, 351, 351, 351, 352, 352, 352, 475, - 341, 394, 470, 347, 471, 350, 480, 492, 351, 490, - 473, 352, 358, 358, 358, 359, 359, 359, 393, 359, - - 491, 476, 359, 347, 477, 347, 473, 358, 475, 480, - 347, 360, 360, 360, 361, 361, 361, 476, 361, 499, - 477, 361, 362, 362, 362, 490, 360, 363, 363, 363, - 478, 363, 502, 511, 363, 386, 491, 362, 369, 369, - 369, 385, 369, 494, 499, 369, 372, 372, 372, 384, - 372, 479, 511, 372, 375, 375, 375, 502, 375, 478, - 481, 375, 382, 382, 382, 387, 387, 387, 389, 389, - 389, 390, 390, 390, 391, 391, 391, 382, 382, 494, - 479, 387, 484, 481, 389, 482, 390, 390, 483, 391, - 391, 392, 392, 392, 383, 392, 485, 488, 392, 397, - - 397, 397, 398, 398, 398, 484, 495, 392, 399, 399, - 399, 400, 400, 400, 482, 397, 489, 483, 398, 485, - 488, 528, 514, 344, 399, 397, 400, 400, 401, 401, - 401, 340, 401, 528, 399, 401, 402, 402, 402, 489, - 402, 514, 495, 402, 401, 330, 410, 410, 410, 429, - 429, 429, 402, 403, 403, 403, 403, 403, 403, 403, - 403, 403, 410, 327, 403, 429, 429, 403, 403, 403, - 403, 403, 410, 503, 323, 504, 515, 516, 440, 440, - 440, 493, 504, 403, 403, 404, 404, 404, 404, 404, - 404, 404, 404, 404, 440, 515, 404, 517, 503, 404, - - 404, 404, 404, 404, 412, 412, 412, 493, 412, 520, - 516, 412, 518, 309, 440, 404, 404, 451, 451, 451, - 412, 415, 415, 415, 415, 415, 415, 415, 415, 415, - 517, 518, 415, 451, 505, 415, 415, 415, 415, 415, - 496, 505, 520, 508, 519, 521, 453, 453, 453, 497, - 508, 415, 415, 416, 416, 416, 416, 416, 416, 416, - 416, 416, 453, 519, 416, 500, 496, 416, 416, 416, - 416, 416, 454, 454, 454, 497, 454, 501, 521, 454, - 455, 455, 455, 416, 416, 456, 456, 456, 454, 456, - 506, 500, 456, 459, 459, 459, 455, 459, 507, 509, - - 459, 456, 522, 501, 512, 513, 509, 523, 524, 459, - 525, 512, 513, 526, 527, 506, 529, 530, 531, 532, - 533, 522, 535, 507, 304, 529, 523, 298, 284, 533, - 272, 532, 526, 527, 535, 536, 530, 531, 534, 534, - 534, 524, 268, 525, 536, 537, 537, 537, 538, 538, - 538, 540, 540, 540, 534, 541, 541, 541, 543, 543, - 543, 537, 265, 263, 538, 261, 260, 540, 257, 252, - 243, 541, 242, 241, 543, 546, 546, 546, 546, 546, - 546, 546, 547, 547, 547, 547, 547, 547, 547, 548, - 548, 548, 548, 548, 548, 548, 549, 549, 549, 549, - - 549, 549, 549, 550, 550, 550, 550, 550, 550, 550, - 551, 551, 551, 551, 551, 551, 551, 552, 552, 552, - 552, 552, 552, 552, 553, 553, 553, 553, 553, 553, - 553, 554, 554, 554, 554, 554, 554, 554, 555, 555, - 555, 555, 555, 555, 555, 556, 556, 556, 556, 556, - 556, 556, 557, 557, 557, 240, 557, 558, 558, 558, - 235, 558, 559, 559, 559, 230, 559, 560, 560, 560, - 560, 560, 229, 560, 561, 227, 561, 562, 226, 562, - 563, 220, 563, 564, 564, 564, 564, 564, 564, 564, - 565, 218, 216, 565, 566, 566, 566, 566, 566, 566, - - 567, 567, 567, 567, 567, 567, 568, 568, 568, 568, - 568, 568, 569, 569, 569, 569, 569, 569, 569, 570, - 570, 570, 570, 570, 570, 570, 571, 571, 571, 571, - 571, 571, 571, 572, 572, 572, 572, 572, 572, 572, - 573, 573, 573, 573, 573, 573, 573, 574, 574, 574, - 574, 574, 574, 574, 575, 575, 575, 575, 575, 575, - 575, 215, 210, 209, 208, 205, 204, 203, 201, 197, - 195, 192, 191, 190, 189, 188, 187, 184, 183, 182, - 181, 180, 179, 176, 175, 173, 172, 171, 170, 169, - 165, 163, 162, 161, 160, 159, 158, 157, 156, 155, - - 154, 153, 150, 149, 148, 147, 146, 143, 142, 141, - 140, 137, 136, 135, 134, 133, 127, 126, 124, 121, - 120, 116, 115, 114, 112, 108, 102, 101, 100, 99, - 95, 85, 81, 77, 76, 75, 69, 68, 66, 63, - 51, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545, 545, 545, 545, - 545, 545, 545, 545, 545, 545, 545 - + 80, 80, 80, 78, 49, 88, 50, 93, 70, 87, + + 87, 87, 88, 89, 70, 98, 90, 70, 372, 88, + 89, 93, 70, 112, 78, 91, 373, 89, 92, 98, + 90, 95, 95, 95, 406, 92, 106, 112, 88, 91, + 88, 107, 92, 106, 396, 88, 89, 93, 89, 90, + 106, 90, 121, 89, 373, 107, 90, 406, 91, 121, + 91, 92, 247, 92, 396, 91, 121, 438, 92, 105, + 105, 105, 361, 247, 107, 109, 109, 109, 120, 120, + 120, 124, 124, 124, 182, 182, 182, 183, 183, 183, + 193, 193, 193, 194, 194, 194, 201, 201, 201, 278, + 182, 467, 375, 183, 361, 437, 193, 374, 467, 194, + + 492, 278, 201, 202, 202, 202, 219, 219, 219, 220, + 220, 220, 222, 222, 222, 228, 228, 228, 371, 202, + 375, 374, 219, 382, 183, 220, 383, 194, 222, 492, + 228, 230, 230, 230, 232, 232, 232, 371, 202, 233, + 233, 233, 383, 384, 222, 382, 230, 235, 235, 235, + 232, 236, 236, 236, 439, 233, 239, 239, 239, 242, + 242, 242, 384, 235, 439, 399, 236, 243, 243, 243, + 436, 239, 245, 245, 245, 242, 248, 248, 248, 255, + 255, 255, 235, 243, 256, 256, 256, 399, 245, 258, + 258, 258, 248, 248, 435, 255, 259, 259, 259, 260, + + 260, 260, 261, 261, 261, 262, 262, 262, 475, 262, + 245, 398, 262, 263, 263, 263, 385, 261, 264, 264, + 264, 267, 267, 267, 255, 265, 265, 265, 263, 265, + 475, 398, 265, 264, 268, 268, 268, 267, 269, 269, + 269, 386, 269, 385, 498, 269, 270, 270, 270, 268, + 272, 272, 272, 426, 276, 276, 276, 267, 280, 280, + 280, 270, 273, 273, 273, 272, 273, 498, 386, 273, + 276, 285, 285, 285, 280, 287, 287, 287, 288, 288, + 288, 289, 289, 289, 290, 290, 290, 291, 291, 291, + 276, 287, 388, 441, 280, 292, 292, 292, 293, 293, + + 293, 486, 293, 441, 388, 293, 296, 296, 296, 280, + 453, 297, 297, 297, 287, 297, 389, 486, 297, 510, + 453, 296, 298, 298, 298, 452, 298, 427, 389, 298, + 302, 302, 302, 303, 303, 303, 452, 303, 429, 427, + 303, 306, 306, 306, 454, 510, 302, 307, 307, 307, + 429, 307, 462, 431, 307, 454, 306, 308, 308, 308, + 309, 309, 309, 462, 309, 431, 480, 309, 312, 312, + 312, 476, 308, 313, 313, 313, 314, 314, 314, 320, + 320, 320, 425, 312, 322, 322, 322, 440, 313, 323, + 323, 323, 314, 476, 324, 324, 324, 480, 324, 440, + + 322, 324, 328, 328, 328, 330, 330, 330, 487, 330, + 442, 463, 330, 333, 333, 333, 478, 463, 328, 334, + 334, 334, 442, 334, 487, 493, 334, 424, 333, 335, + 335, 335, 336, 336, 336, 504, 336, 466, 478, 336, + 337, 337, 337, 466, 335, 338, 338, 338, 479, 338, + 481, 482, 338, 496, 493, 337, 339, 339, 339, 346, + 346, 346, 349, 349, 349, 483, 349, 470, 423, 349, + 479, 504, 339, 482, 470, 346, 352, 352, 352, 484, + 352, 481, 496, 352, 355, 355, 355, 483, 355, 511, + 505, 355, 359, 359, 359, 365, 365, 365, 368, 368, + + 368, 369, 369, 369, 370, 370, 370, 497, 359, 499, + 484, 365, 490, 368, 485, 511, 369, 488, 491, 370, + 376, 376, 376, 377, 377, 377, 505, 377, 490, 489, + 377, 365, 499, 365, 491, 376, 497, 494, 365, 378, + 378, 378, 379, 379, 379, 485, 379, 495, 488, 379, + 380, 380, 380, 494, 378, 381, 381, 381, 500, 381, + 489, 414, 381, 495, 413, 380, 387, 387, 387, 412, + 387, 508, 411, 387, 390, 390, 390, 509, 390, 501, + 512, 390, 393, 393, 393, 404, 393, 500, 502, 393, + 400, 400, 400, 405, 405, 405, 407, 407, 407, 408, + + 408, 408, 409, 409, 409, 400, 400, 508, 501, 405, + 503, 502, 407, 509, 408, 408, 512, 409, 409, 410, + 410, 410, 506, 410, 507, 513, 410, 415, 415, 415, + 416, 416, 416, 503, 516, 410, 417, 417, 417, 418, + 418, 418, 517, 415, 514, 506, 416, 507, 520, 403, + 528, 402, 417, 415, 418, 418, 419, 419, 419, 516, + 419, 513, 417, 419, 420, 420, 420, 517, 420, 528, + 514, 420, 419, 520, 428, 428, 428, 447, 447, 447, + 420, 421, 421, 421, 421, 421, 421, 421, 421, 421, + 428, 401, 421, 447, 447, 421, 421, 421, 421, 421, + + 428, 521, 362, 522, 529, 534, 458, 458, 458, 515, + 522, 421, 421, 422, 422, 422, 422, 422, 422, 422, + 422, 422, 458, 529, 422, 535, 521, 422, 422, 422, + 422, 422, 430, 430, 430, 515, 430, 538, 534, 430, + 532, 358, 458, 422, 422, 469, 469, 469, 430, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 535, 532, + 433, 469, 523, 433, 433, 433, 433, 433, 518, 523, + 538, 526, 533, 539, 471, 471, 471, 519, 526, 433, + 433, 434, 434, 434, 434, 434, 434, 434, 434, 434, + 471, 533, 434, 524, 518, 434, 434, 434, 434, 434, + + 472, 472, 472, 519, 472, 525, 539, 472, 473, 473, + 473, 434, 434, 474, 474, 474, 472, 474, 524, 527, + 474, 477, 477, 477, 473, 477, 527, 530, 477, 474, + 525, 531, 536, 537, 530, 540, 541, 477, 531, 542, + 543, 544, 545, 548, 546, 549, 550, 348, 547, 345, + 551, 536, 537, 341, 540, 541, 546, 547, 550, 551, + 544, 545, 548, 553, 549, 552, 552, 552, 554, 555, + 555, 555, 542, 543, 327, 553, 321, 554, 556, 556, + 556, 552, 558, 558, 558, 555, 559, 559, 559, 561, + 561, 561, 315, 301, 556, 286, 282, 279, 558, 277, + + 275, 274, 559, 271, 266, 561, 564, 564, 564, 564, + 564, 564, 564, 565, 565, 565, 565, 565, 565, 565, + 566, 566, 566, 566, 566, 566, 566, 567, 567, 567, + 567, 567, 567, 567, 568, 568, 568, 568, 568, 568, + 568, 569, 569, 569, 569, 569, 569, 569, 570, 570, + 570, 570, 570, 570, 570, 571, 571, 571, 571, 571, + 571, 571, 572, 572, 572, 572, 572, 572, 572, 573, + 573, 573, 573, 573, 573, 573, 574, 574, 574, 574, + 574, 574, 574, 575, 575, 575, 257, 575, 576, 576, + 576, 254, 576, 577, 577, 577, 253, 577, 578, 578, + + 578, 578, 578, 252, 578, 579, 251, 579, 580, 246, + 580, 581, 241, 581, 582, 582, 582, 582, 582, 582, + 582, 583, 240, 238, 583, 584, 584, 584, 584, 584, + 584, 585, 585, 585, 585, 585, 585, 586, 586, 586, + 586, 586, 586, 587, 587, 587, 587, 587, 587, 587, + 588, 588, 588, 588, 588, 588, 588, 589, 589, 589, + 589, 589, 589, 589, 590, 590, 590, 590, 590, 590, + 590, 591, 591, 591, 591, 591, 591, 591, 592, 592, + 592, 592, 592, 592, 592, 593, 593, 593, 593, 593, + 593, 593, 237, 231, 229, 227, 226, 225, 224, 223, + + 218, 217, 216, 213, 212, 211, 209, 205, 203, 200, + 199, 198, 197, 196, 195, 192, 191, 190, 189, 188, + 187, 186, 185, 184, 181, 180, 178, 177, 176, 175, + 174, 170, 168, 167, 166, 165, 164, 163, 162, 161, + 160, 159, 158, 155, 154, 153, 152, 151, 148, 147, + 146, 145, 144, 143, 142, 139, 138, 137, 136, 135, + 129, 128, 126, 123, 122, 118, 117, 116, 114, 110, + 103, 102, 101, 100, 96, 85, 81, 77, 76, 75, + 69, 68, 66, 63, 51, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563 } ; /* Table of booleans, true if rule could match eol. */ -static yyconst flex_int32_t yy_rule_can_match_eol[90] = +static yyconst flex_int32_t yy_rule_can_match_eol[93] = { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 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, 0, 0, 0, 0, 1, 1, 0, 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, 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, }; + 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; @@ -1012,13 +1053,12 @@ int xbt_graph_parse__flex_debug = 0; #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *xbt_graph_parse_text; -#line 1 "xbt/graphxml.l" -/* Validating XML processor for graphxml.dtd. - * Generated 2006/03/28 12:29:32. +/* Validating XML processor for src/xbt/graphxml.dtd. * * This program was generated with the FleXML XML processor generator. - * FleXML is Copyright © 1999-2005 Kristoffer Rose. All rights reserved. - * (Id: flexml.pl,v 1.47 2006/03/21 11:12:57 legranda Exp). + * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved. + * FleXML is Copyright (C) 2003-2011 Martin Quinson. All rights reserved. + * (Id: flexml.pl,v 1.67 2011/11/01 20:49:21 mquinson Exp). * * There are two, intertwined parts to this program, part A and part B. * @@ -1026,8 +1066,8 @@ char *xbt_graph_parse_text; * ------ * * Some parts, here collectively called "Part A", are found in the - * FleXML package. They are Copyright © 1999-2005 Kristoffer Rose. - * All rights reserved. + * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose + * and Copyright (C) 2003-2011 Martin Quinson. All rights reserved. * * You can redistribute, use, perform, display and/or modify "Part A" * provided the following two conditions hold: @@ -1058,41 +1098,82 @@ char *xbt_graph_parse_text; * by the author of or contributors to FleXML. * */ -#line 48 "xbt/graphxml.l" /* Version strings. */ const char rcs_graphxml_flexml_skeleton[] = - "$" "Id: skel,v 1.28 2006/03/21 12:04:13 legranda Exp $"; + "$" "Id: skel,v 1.40 2007/10/11 09:57:24 mquinson Exp $"; const char rcs_graphxml_flexml[] = - "$" "Id: flexml.pl,v 1.47 2006/03/21 11:12:57 legranda Exp $"; + "$" "Id: flexml.pl,v 1.67 2011/11/01 20:49:21 mquinson Exp $"; /* ANSI headers. */ -#include +#include /* for realloc() -- needed here when using flex 2.5.4 */ #include #include #include #include #include + +#if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__) +# ifndef __STRICT_ANSI__ +# include +# include +# endif +#else +# include +#endif + +#ifndef FLEXML_INDEXSTACKSIZE +#define FLEXML_INDEXSTACKSIZE 1000 +#endif /* Generated definitions. */ #define FLEXML_yylineno +#ifndef FLEXML_BUFFERSTACKSIZE #define FLEXML_BUFFERSTACKSIZE 1000000 +#endif +#define FLEXML_NEED_BUFFERLIT /* XML processor api. */ /* FleXML-provided data. */ -const char* pcdata; -AT_graphxml_node_name A_graphxml_node_name; -AT_graphxml_edge_source A_graphxml_edge_source; -AT_graphxml_node_position_y A_graphxml_node_position_y; -AT_graphxml_node_position_x A_graphxml_node_position_x; -AT_graphxml_edge_data A_graphxml_edge_data; -AT_graphxml_edge_target A_graphxml_edge_target; -AT_graphxml_graph_isDirected A_graphxml_graph_isDirected; -AT_graphxml_node_label A_graphxml_node_label; -AT_graphxml_node_data A_graphxml_node_data; -AT_graphxml_edge_label A_graphxml_edge_label; -AT_graphxml_edge_length A_graphxml_edge_length; -AT_graphxml_edge_name A_graphxml_edge_name; +int graphxml_pcdata_ix; +extern char *graphxml_bufferstack; +#define graphxml_pcdata (graphxml_bufferstack + graphxml_pcdata_ix) +AT_graphxml_node_name AX_graphxml_node_name; +#define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name) +short int graphxml_node_name_isset; +AT_graphxml_edge_source AX_graphxml_edge_source; +#define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source) +short int graphxml_edge_source_isset; +AT_graphxml_node_position_y AX_graphxml_node_position_y; +#define A_graphxml_node_position_y (graphxml_bufferstack + AX_graphxml_node_position_y) +short int graphxml_node_position_y_isset; +AT_graphxml_node_position_x AX_graphxml_node_position_x; +#define A_graphxml_node_position_x (graphxml_bufferstack + AX_graphxml_node_position_x) +short int graphxml_node_position_x_isset; +AT_graphxml_edge_data AX_graphxml_edge_data; +#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) +short int graphxml_edge_data_isset; +AT_graphxml_edge_target AX_graphxml_edge_target; +#define A_graphxml_edge_target (graphxml_bufferstack + AX_graphxml_edge_target) +short int graphxml_edge_target_isset; +AT_graphxml_graph_isDirected AX_graphxml_graph_isDirected; +#define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected +short int graphxml_graph_isDirected_isset; +AT_graphxml_node_label AX_graphxml_node_label; +#define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) +short int graphxml_node_label_isset; +AT_graphxml_node_data AX_graphxml_node_data; +#define A_graphxml_node_data (graphxml_bufferstack + AX_graphxml_node_data) +short int graphxml_node_data_isset; +AT_graphxml_edge_label AX_graphxml_edge_label; +#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) +short int graphxml_edge_label_isset; +AT_graphxml_edge_length AX_graphxml_edge_length; +#define A_graphxml_edge_length (graphxml_bufferstack + AX_graphxml_edge_length) +short int graphxml_edge_length_isset; +AT_graphxml_edge_name AX_graphxml_edge_name; +#define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) +short int graphxml_edge_name_isset; /* XML state. */ #ifdef FLEX_DEBUG @@ -1114,64 +1195,97 @@ AT_graphxml_edge_name A_graphxml_edge_name; #define FAIL return fail static int fail(const char*, ...); -const char * graphxml_parse_err_msg(void); + +enum {flexml_max_err_msg_size = 512}; +static char flexml_err_msg[flexml_max_err_msg_size]; +const char * graphxml_parse_err_msg() +{ + return flexml_err_msg; +} +static void reset_graphxml_parse_err_msg() +{ + flexml_err_msg[0] = '\0'; +} /* Cleanup */ static void cleanup(void); #define CLEANUP cleanup() /* Text buffer stack handling. */ -char bufferstack[FLEXML_BUFFERSTACKSIZE]; -static char* limit = bufferstack + FLEXML_BUFFERSTACKSIZE; -typedef struct BufferLast_s { - struct BufferLast_s *old; char* saved; char new1[1]; -} BufferLast; -#ifdef FLEXML_HasMixed -static BufferLast* last = (BufferLast*)0; -#endif -static char* next = bufferstack; +char *graphxml_bufferstack = NULL; +static int blimit = FLEXML_BUFFERSTACKSIZE; +static int bnext = 1; + +static int *indexstack = NULL; +static int ilimit = FLEXML_INDEXSTACKSIZE; +static int inext = 1; -#define BUFFERSET(P) (P = next) -#define BUFFERPUTC(C) (assert(next= blimit) { + blimit += FLEXML_BUFFERSTACKSIZE + 2; + { + char *temp = (char *) realloc(graphxml_bufferstack, blimit); + assert(temp); + graphxml_bufferstack = temp; + } + } + return 0; +} + +/* after this is called, there are at least 2 slots left in the stack */ +static int ck_ilimit() { - char *s = strchr(text,c), *e = strrchr(text,c); + if (inext >= ilimit) { + ilimit += FLEXML_INDEXSTACKSIZE + 2; + { + int *temp = (int *) realloc(indexstack, ilimit); + assert(temp); + indexstack = temp; + } + } + return 0; +} + +#ifdef FLEXML_NEED_BUFFERLIT +static void graphxml_bufferliteral(char c, int* pp, const char* text) +{ + const char *s = (c ? strchr(text,c) : text-1), *e = strrchr(text,c); assert(s <= e); BUFFERSET(*pp); while (++sold = last; - l->saved = p; - next = l->new1; - last = l; + ck_ilimit(); + indexstack[inext++] = p; + indexstack[inext++] = bnext; } -static char* popbuffer(void) +static int popbuffer(void) { - BufferLast* l = last; - assert(last != (BufferLast*)0); - last = l->old; - next = (char*)l; - return l->saved; + assert(inext >= 2); + bnext = indexstack[--inext]; + return indexstack[--inext]; } -#endif /* General internal entities are `unput' back onto the input stream... */ #define ENTITYTEXT(T) \ { char *s = (T), *e = s+strlen(s);\ while (--e >= s) { unput(*e); }} + /* Flex standard options. */ #define YY_NO_INPUT 1 /* Flex user-requested options. */ @@ -1195,14 +1309,8 @@ static char* popbuffer(void) * IMPOSSIBLE dummy to permit disabling rules; must be last */ - - - - -#line 215 "xbt/graphxml.l" /* State names. */ const char* *graphxml_statenames=NULL; -#line 1206 "xbt/graphxml.c" #define INITIAL 0 #define PROLOG 1 @@ -1235,7 +1343,14 @@ const char* *graphxml_statenames=NULL; * down here because we want the user's section 1 to have been scanned first. * The user has a chance to override it with an option. */ -#include +#if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__) +# ifndef __STRICT_ANSI__ +# include +# include +# endif +#else +# include +#endif #endif #ifndef YY_EXTRA_TYPE @@ -1244,6 +1359,35 @@ const char* *graphxml_statenames=NULL; static int yy_init_globals (void ); +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int xbt_graph_parse_lex_destroy (void ); + +int xbt_graph_parse_get_debug (void ); + +void xbt_graph_parse_set_debug (int debug_flag ); + +YY_EXTRA_TYPE xbt_graph_parse_get_extra (void ); + +void xbt_graph_parse_set_extra (YY_EXTRA_TYPE user_defined ); + +FILE *xbt_graph_parse_get_in (void ); + +void xbt_graph_parse_set_in (FILE * in_str ); + +FILE *xbt_graph_parse_get_out (void ); + +void xbt_graph_parse_set_out (FILE * out_str ); + +int xbt_graph_parse_get_leng (void ); + +char *xbt_graph_parse_get_text (void ); + +int xbt_graph_parse_get_lineno (void ); + +void xbt_graph_parse_set_lineno (int line_number ); + /* Macros after this point can all be overridden by user definitions in * section 1. */ @@ -1284,7 +1428,12 @@ static int input (void ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k */ +#define YY_READ_BUF_SIZE 16384 +#else #define YY_READ_BUF_SIZE 8192 +#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -1292,7 +1441,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO (void) fwrite( xbt_graph_parse_text, xbt_graph_parse_leng, 1, xbt_graph_parse_out ) +#define ECHO do { if (fwrite( xbt_graph_parse_text, xbt_graph_parse_leng, 1, xbt_graph_parse_out )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1385,13 +1534,29 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 219 "xbt/graphxml.l" - - /* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */ SET(PROLOG); + reset_graphxml_parse_err_msg(); + graphxml_bufferstack = (char *) malloc(FLEXML_BUFFERSTACKSIZE); + assert(graphxml_bufferstack); + #ifdef FLEX_DEBUG + { + int i; + for (i = 0; i < blimit; i++) { + graphxml_bufferstack[i] = '\377'; + } + } + #endif + graphxml_bufferstack[0] = '\0'; + indexstack = (int *) malloc(FLEXML_INDEXSTACKSIZE * sizeof(int)); + assert(indexstack); + indexstack[0] = 0; + /* FleXML_init */ - next = bufferstack; + bnext = inext = 1; + graphxml_bufferliteral('\0', &bnext, "-1.0"); + graphxml_bufferliteral('\0', &bnext, "-1.0"); + graphxml_bufferliteral('\0', &bnext, "-1.0"); if(!graphxml_statenames) {graphxml_statenames= (const char **)calloc(IMPOSSIBLE,sizeof(char*)); graphxml_statenames[PROLOG] = NULL; graphxml_statenames[DOCTYPE] = NULL; @@ -1420,8 +1585,6 @@ YY_DECL /* COMMENTS and PIs: handled uniformly for efficiency. */ -#line 1424 "xbt/graphxml.c" - if ( !(yy_init) ) { (yy_init) = 1; @@ -1473,13 +1636,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 546 ) + if ( yy_current_state >= 564 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 1542 ); + while ( yy_base[yy_current_state] != 1586 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1515,52 +1678,39 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 254 "xbt/graphxml.l" ENTER(INCOMMENT); YY_BREAK case 2: YY_RULE_SETUP -#line 255 "xbt/graphxml.l" ENTER(INPI); YY_BREAK - case 3: YY_RULE_SETUP -#line 258 "xbt/graphxml.l" LEAVE; YY_BREAK case 4: -#line 260 "xbt/graphxml.l" case 5: -#line 261 "xbt/graphxml.l" case 6: /* rule 6 can match eol */ YY_RULE_SETUP -#line 261 "xbt/graphxml.l" SKIP; YY_BREAK case YY_STATE_EOF(INCOMMENT): -#line 262 "xbt/graphxml.l" FAIL("EOF in comment."); YY_BREAK - case 7: YY_RULE_SETUP -#line 265 "xbt/graphxml.l" LEAVE; YY_BREAK case 8: -#line 267 "xbt/graphxml.l" case 9: /* rule 9 can match eol */ YY_RULE_SETUP -#line 267 "xbt/graphxml.l" SKIP; YY_BREAK case YY_STATE_EOF(INPI): -#line 268 "xbt/graphxml.l" FAIL("EOF in PI (processing instruction)."); YY_BREAK @@ -1568,7 +1718,6 @@ FAIL("EOF in PI (processing instruction)."); case 10: /* rule 10 can match eol */ YY_RULE_SETUP -#line 273 "xbt/graphxml.l" SKIP; YY_BREAK /* PROLOG: determine root element and process it. */ @@ -1576,49 +1725,40 @@ SKIP; case 11: /* rule 11 can match eol */ YY_RULE_SETUP -#line 278 "xbt/graphxml.l" SET(DOCTYPE); YY_BREAK case 12: /* rule 12 can match eol */ YY_RULE_SETUP -#line 279 "xbt/graphxml.l" FAIL("Bad declaration %s.",xbt_graph_parse_text); YY_BREAK - case 13: /* rule 13 can match eol */ YY_RULE_SETUP -#line 283 "xbt/graphxml.l" SET(ROOT_graphxml_edge); YY_BREAK case 14: /* rule 14 can match eol */ YY_RULE_SETUP -#line 284 "xbt/graphxml.l" SET(ROOT_graphxml_node); YY_BREAK case 15: /* rule 15 can match eol */ YY_RULE_SETUP -#line 285 "xbt/graphxml.l" SET(ROOT_graphxml_graph); YY_BREAK case 16: /* rule 16 can match eol */ YY_RULE_SETUP -#line 286 "xbt/graphxml.l" FAIL("Bad declaration %s.",xbt_graph_parse_text); YY_BREAK case 17: YY_RULE_SETUP -#line 287 "xbt/graphxml.l" FAIL("Unexpected character `%c' in prolog.", xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(PROLOG): case YY_STATE_EOF(DOCTYPE): -#line 288 "xbt/graphxml.l" FAIL("EOF in prolog."); YY_BREAK @@ -1629,85 +1769,78 @@ FAIL("EOF in prolog."); case 18: /* rule 18 can match eol */ YY_RULE_SETUP -#line 298 "xbt/graphxml.l" +FAIL("Starting tag is not allowed here."); + YY_BREAK +case 19: +/* rule 19 can match eol */ +YY_RULE_SETUP { - A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true; - ENTER(AL_graphxml_graph); + AX_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true; + graphxml_graph_isDirected_isset = 0; + ENTER(AL_graphxml_graph); pushbuffer(0); } YY_BREAK -case 19: -/* rule 19 can match eol */ -#line 305 "xbt/graphxml.l" case 20: /* rule 20 can match eol */ +case 21: +/* rule 21 can match eol */ YY_RULE_SETUP -#line 305 "xbt/graphxml.l" A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true; YY_BREAK -case 21: -/* rule 21 can match eol */ -#line 307 "xbt/graphxml.l" case 22: /* rule 22 can match eol */ +case 23: +/* rule 23 can match eol */ YY_RULE_SETUP -#line 307 "xbt/graphxml.l" A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_false; YY_BREAK -case 23: +case 24: YY_RULE_SETUP -#line 309 "xbt/graphxml.l" { - LEAVE; STag_graphxml_graph();pcdata = NULL; ENTER(S_graphxml_graph); + LEAVE; STag_graphxml_graph();graphxml_pcdata_ix = 0; ENTER(S_graphxml_graph); } YY_BREAK -case 24: +case 25: YY_RULE_SETUP -#line 312 "xbt/graphxml.l" { - LEAVE; STag_graphxml_graph(); pcdata = NULL; ETag_graphxml_graph(); + LEAVE; STag_graphxml_graph(); graphxml_pcdata_ix = 0; ETag_graphxml_graph(); popbuffer(); /* attribute */ switch (YY_START) { case ROOT_graphxml_graph: SET(EPILOG); break; } } YY_BREAK -case 25: +case 26: YY_RULE_SETUP -#line 318 "xbt/graphxml.l" FAIL("Unexpected character `%c' in attribute list of graph element.", xbt_graph_parse_text[0]); YY_BREAK -case 26: +case 27: YY_RULE_SETUP -#line 319 "xbt/graphxml.l" FAIL("Bad attribute `%s' in `graph' element start tag.",xbt_graph_parse_text); YY_BREAK case YY_STATE_EOF(AL_graphxml_graph): -#line 320 "xbt/graphxml.l" FAIL("EOF in attribute list of `graph' element."); YY_BREAK - -case 27: -/* rule 27 can match eol */ +case 28: +/* rule 28 can match eol */ YY_RULE_SETUP -#line 324 "xbt/graphxml.l" { LEAVE; ETag_graphxml_graph(); + popbuffer(); /* attribute */ switch (YY_START) { case ROOT_graphxml_graph: SET(EPILOG); break; } } YY_BREAK -case 28: -/* rule 28 can match eol */ +case 29: +/* rule 29 can match eol */ YY_RULE_SETUP -#line 331 "xbt/graphxml.l" FAIL("Unexpected end-tag `%s': `' expected.",xbt_graph_parse_text); YY_BREAK -case 29: +case 30: YY_RULE_SETUP -#line 332 "xbt/graphxml.l" FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(S_graphxml_graph_1): @@ -1715,7 +1848,6 @@ case YY_STATE_EOF(E_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_3): case YY_STATE_EOF(S_graphxml_graph_5): case YY_STATE_EOF(S_graphxml_graph): -#line 333 "xbt/graphxml.l" FAIL("Premature EOF: `' expected."); YY_BREAK @@ -1725,142 +1857,132 @@ FAIL("Premature EOF: `' expected."); * position_x CDATA "-1.0" * position_y CDATA "-1.0" * > */ -case 30: -/* rule 30 can match eol */ -YY_RULE_SETUP -#line 343 "xbt/graphxml.l" -{ - A_graphxml_node_label = NULL; - A_graphxml_node_name = NULL; - A_graphxml_node_data = NULL; - A_graphxml_node_position_x = "-1.0"; - A_graphxml_node_position_y = "-1.0"; - ENTER(AL_graphxml_node); - } - YY_BREAK - case 31: /* rule 31 can match eol */ YY_RULE_SETUP -#line 353 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_label); +FAIL("Starting tag is not allowed here."); YY_BREAK case 32: /* rule 32 can match eol */ YY_RULE_SETUP -#line 354 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_label); +{ + AX_graphxml_node_label = 0; + graphxml_node_label_isset = 0; + AX_graphxml_node_name = 0; + graphxml_node_name_isset = 0; + AX_graphxml_node_data = 0; + graphxml_node_data_isset = 0; + AX_graphxml_node_position_x = 1; + graphxml_node_position_x_isset = 0; + AX_graphxml_node_position_y = 6; + graphxml_node_position_y_isset = 0; + ENTER(AL_graphxml_node); pushbuffer(0); + } YY_BREAK + case 33: /* rule 33 can match eol */ YY_RULE_SETUP -#line 356 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_name); +if (graphxml_node_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_node_label_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_label); YY_BREAK case 34: /* rule 34 can match eol */ YY_RULE_SETUP -#line 357 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_name); +if (graphxml_node_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_node_label_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_label); YY_BREAK case 35: /* rule 35 can match eol */ YY_RULE_SETUP -#line 359 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_data); +if (graphxml_node_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_node_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_name); YY_BREAK case 36: /* rule 36 can match eol */ YY_RULE_SETUP -#line 360 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_data); +if (graphxml_node_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_node_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_name); YY_BREAK case 37: /* rule 37 can match eol */ YY_RULE_SETUP -#line 362 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_position_x); +if (graphxml_node_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_node_data_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_data); YY_BREAK case 38: /* rule 38 can match eol */ YY_RULE_SETUP -#line 363 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_position_x); +if (graphxml_node_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_node_data_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_data); YY_BREAK case 39: /* rule 39 can match eol */ YY_RULE_SETUP -#line 365 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_position_y); +if (graphxml_node_position_x_isset != 0) {FAIL("Multiple definition of attribute position_x in ");} graphxml_node_position_x_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position_x); YY_BREAK case 40: /* rule 40 can match eol */ YY_RULE_SETUP -#line 366 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_position_y); +if (graphxml_node_position_x_isset != 0) {FAIL("Multiple definition of attribute position_x in ");} graphxml_node_position_x_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position_x); YY_BREAK case 41: +/* rule 41 can match eol */ +YY_RULE_SETUP +if (graphxml_node_position_y_isset != 0) {FAIL("Multiple definition of attribute position_y in ");} graphxml_node_position_y_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position_y); + YY_BREAK +case 42: +/* rule 42 can match eol */ +YY_RULE_SETUP +if (graphxml_node_position_y_isset != 0) {FAIL("Multiple definition of attribute position_y in ");} graphxml_node_position_y_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position_y); + YY_BREAK +case 43: YY_RULE_SETUP -#line 368 "xbt/graphxml.l" { - if (!A_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); - LEAVE; STag_graphxml_node();pcdata = NULL; ENTER(E_graphxml_node); + if (!AX_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); + LEAVE; STag_graphxml_node();graphxml_pcdata_ix = 0; ENTER(E_graphxml_node); } YY_BREAK -case 42: +case 44: YY_RULE_SETUP -#line 372 "xbt/graphxml.l" { - if (!A_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); - LEAVE; STag_graphxml_node(); pcdata = NULL; ETag_graphxml_node(); + if (!AX_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); + LEAVE; STag_graphxml_node(); graphxml_pcdata_ix = 0; ETag_graphxml_node(); popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_2: case S_graphxml_graph_3: case S_graphxml_graph: SET(S_graphxml_graph_3); break; case ROOT_graphxml_node: SET(EPILOG); break; } } YY_BREAK -case 43: +case 45: YY_RULE_SETUP -#line 380 "xbt/graphxml.l" FAIL("Unexpected character `%c' in attribute list of node element.", xbt_graph_parse_text[0]); YY_BREAK -case 44: +case 46: YY_RULE_SETUP -#line 381 "xbt/graphxml.l" FAIL("Bad attribute `%s' in `node' element start tag.",xbt_graph_parse_text); YY_BREAK case YY_STATE_EOF(AL_graphxml_node): -#line 382 "xbt/graphxml.l" FAIL("EOF in attribute list of `node' element."); YY_BREAK - -case 45: -/* rule 45 can match eol */ +case 47: +/* rule 47 can match eol */ YY_RULE_SETUP -#line 386 "xbt/graphxml.l" { LEAVE; ETag_graphxml_node(); + popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_2: case S_graphxml_graph_3: case S_graphxml_graph: SET(S_graphxml_graph_3); break; case ROOT_graphxml_node: SET(EPILOG); break; } } YY_BREAK -case 46: -/* rule 46 can match eol */ +case 48: +/* rule 48 can match eol */ YY_RULE_SETUP -#line 394 "xbt/graphxml.l" FAIL("Unexpected end-tag `%s': `' expected.",xbt_graph_parse_text); YY_BREAK -case 47: +case 49: YY_RULE_SETUP -#line 395 "xbt/graphxml.l" FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(E_graphxml_node): -#line 396 "xbt/graphxml.l" FAIL("Premature EOF: `' expected."); YY_BREAK @@ -1871,290 +1993,249 @@ FAIL("Premature EOF: `' expected."); * length CDATA "-1.0" * data CDATA "" * > */ -case 48: -/* rule 48 can match eol */ -YY_RULE_SETUP -#line 407 "xbt/graphxml.l" -{ - A_graphxml_edge_label = NULL; - A_graphxml_edge_name = NULL; - A_graphxml_edge_source = NULL; - A_graphxml_edge_target = NULL; - A_graphxml_edge_length = "-1.0"; - A_graphxml_edge_data = NULL; - ENTER(AL_graphxml_edge); - } - YY_BREAK - -case 49: -/* rule 49 can match eol */ -YY_RULE_SETUP -#line 418 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_label); - YY_BREAK case 50: /* rule 50 can match eol */ YY_RULE_SETUP -#line 419 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_label); +FAIL("Starting tag is not allowed here."); YY_BREAK case 51: /* rule 51 can match eol */ YY_RULE_SETUP -#line 421 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_name); +{ + AX_graphxml_edge_label = 0; + graphxml_edge_label_isset = 0; + AX_graphxml_edge_name = 0; + graphxml_edge_name_isset = 0; + AX_graphxml_edge_source = 0; + graphxml_edge_source_isset = 0; + AX_graphxml_edge_target = 0; + graphxml_edge_target_isset = 0; + AX_graphxml_edge_length = 11; + graphxml_edge_length_isset = 0; + AX_graphxml_edge_data = 0; + graphxml_edge_data_isset = 0; + ENTER(AL_graphxml_edge); pushbuffer(0); + } YY_BREAK + case 52: /* rule 52 can match eol */ YY_RULE_SETUP -#line 422 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_name); +if (graphxml_edge_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_edge_label_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_label); YY_BREAK case 53: /* rule 53 can match eol */ YY_RULE_SETUP -#line 424 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_source); +if (graphxml_edge_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_edge_label_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_label); YY_BREAK case 54: /* rule 54 can match eol */ YY_RULE_SETUP -#line 425 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_source); +if (graphxml_edge_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_edge_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_name); YY_BREAK case 55: /* rule 55 can match eol */ YY_RULE_SETUP -#line 427 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_target); +if (graphxml_edge_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_edge_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_name); YY_BREAK case 56: /* rule 56 can match eol */ YY_RULE_SETUP -#line 428 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_target); +if (graphxml_edge_source_isset != 0) {FAIL("Multiple definition of attribute source in ");} graphxml_edge_source_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_source); YY_BREAK case 57: /* rule 57 can match eol */ YY_RULE_SETUP -#line 430 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_length); +if (graphxml_edge_source_isset != 0) {FAIL("Multiple definition of attribute source in ");} graphxml_edge_source_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_source); YY_BREAK case 58: /* rule 58 can match eol */ YY_RULE_SETUP -#line 431 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_length); +if (graphxml_edge_target_isset != 0) {FAIL("Multiple definition of attribute target in ");} graphxml_edge_target_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_target); YY_BREAK case 59: /* rule 59 can match eol */ YY_RULE_SETUP -#line 433 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_data); +if (graphxml_edge_target_isset != 0) {FAIL("Multiple definition of attribute target in ");} graphxml_edge_target_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_target); YY_BREAK case 60: /* rule 60 can match eol */ YY_RULE_SETUP -#line 434 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_data); +if (graphxml_edge_length_isset != 0) {FAIL("Multiple definition of attribute length in ");} graphxml_edge_length_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_length); YY_BREAK case 61: +/* rule 61 can match eol */ +YY_RULE_SETUP +if (graphxml_edge_length_isset != 0) {FAIL("Multiple definition of attribute length in ");} graphxml_edge_length_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_length); + YY_BREAK +case 62: +/* rule 62 can match eol */ +YY_RULE_SETUP +if (graphxml_edge_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_edge_data_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_data); + YY_BREAK +case 63: +/* rule 63 can match eol */ +YY_RULE_SETUP +if (graphxml_edge_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_edge_data_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_data); + YY_BREAK +case 64: YY_RULE_SETUP -#line 436 "xbt/graphxml.l" { - if (!A_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); - if (!A_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); - LEAVE; STag_graphxml_edge();pcdata = NULL; ENTER(E_graphxml_edge); + if (!AX_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); + if (!AX_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); + LEAVE; STag_graphxml_edge();graphxml_pcdata_ix = 0; ENTER(E_graphxml_edge); } YY_BREAK -case 62: +case 65: YY_RULE_SETUP -#line 441 "xbt/graphxml.l" { - if (!A_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); - if (!A_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); - LEAVE; STag_graphxml_edge(); pcdata = NULL; ETag_graphxml_edge(); + if (!AX_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); + if (!AX_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); + LEAVE; STag_graphxml_edge(); graphxml_pcdata_ix = 0; ETag_graphxml_edge(); popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_5: case S_graphxml_graph_4: case S_graphxml_graph: SET(S_graphxml_graph_5); break; case ROOT_graphxml_edge: SET(EPILOG); break; } } YY_BREAK -case 63: +case 66: YY_RULE_SETUP -#line 450 "xbt/graphxml.l" FAIL("Unexpected character `%c' in attribute list of edge element.", xbt_graph_parse_text[0]); YY_BREAK -case 64: +case 67: YY_RULE_SETUP -#line 451 "xbt/graphxml.l" FAIL("Bad attribute `%s' in `edge' element start tag.",xbt_graph_parse_text); YY_BREAK case YY_STATE_EOF(AL_graphxml_edge): -#line 452 "xbt/graphxml.l" FAIL("EOF in attribute list of `edge' element."); YY_BREAK - -case 65: -/* rule 65 can match eol */ +case 68: +/* rule 68 can match eol */ YY_RULE_SETUP -#line 456 "xbt/graphxml.l" { LEAVE; ETag_graphxml_edge(); + popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_5: case S_graphxml_graph_4: case S_graphxml_graph: SET(S_graphxml_graph_5); break; case ROOT_graphxml_edge: SET(EPILOG); break; } } YY_BREAK -case 66: -/* rule 66 can match eol */ +case 69: +/* rule 69 can match eol */ YY_RULE_SETUP -#line 464 "xbt/graphxml.l" FAIL("Unexpected end-tag `%s': `' expected.",xbt_graph_parse_text); YY_BREAK -case 67: +case 70: YY_RULE_SETUP -#line 465 "xbt/graphxml.l" FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(E_graphxml_edge): -#line 466 "xbt/graphxml.l" FAIL("Premature EOF: `' expected."); YY_BREAK /* EPILOG: after the root element. */ -case 68: +case 71: YY_RULE_SETUP -#line 472 "xbt/graphxml.l" {SET(PROLOG); yyless(0); CLEANUP; return -1;} YY_BREAK case YY_STATE_EOF(EPILOG): -#line 473 "xbt/graphxml.l" SUCCEED; YY_BREAK /* CHARACTER DATA. */ /* Non-defined standard entities... */ -case 69: +case 72: YY_RULE_SETUP -#line 480 "xbt/graphxml.l" BUFFERPUTC('&'); YY_BREAK -case 70: +case 73: YY_RULE_SETUP -#line 481 "xbt/graphxml.l" BUFFERPUTC('<'); YY_BREAK -case 71: +case 74: YY_RULE_SETUP -#line 482 "xbt/graphxml.l" BUFFERPUTC('>'); YY_BREAK -case 72: +case 75: YY_RULE_SETUP -#line 483 "xbt/graphxml.l" BUFFERPUTC('\''); YY_BREAK -case 73: +case 76: YY_RULE_SETUP -#line 484 "xbt/graphxml.l" BUFFERPUTC('"'); YY_BREAK /* Character entities. */ -case 74: +case 77: YY_RULE_SETUP -#line 487 "xbt/graphxml.l" BUFFERPUTC((unsigned char)atoi(xbt_graph_parse_text+2)); YY_BREAK -case 75: +case 78: YY_RULE_SETUP -#line 488 "xbt/graphxml.l" BUFFERPUTC((unsigned char)strtol(xbt_graph_parse_text+3,NULL,16)); YY_BREAK - -case 76: -/* rule 76 can match eol */ -#line 493 "xbt/graphxml.l" -case 77: -/* rule 77 can match eol */ -#line 494 "xbt/graphxml.l" -case 78: -/* rule 78 can match eol */ -#line 495 "xbt/graphxml.l" case 79: /* rule 79 can match eol */ +case 80: +/* rule 80 can match eol */ +case 81: +/* rule 81 can match eol */ +case 82: +/* rule 82 can match eol */ YY_RULE_SETUP -#line 495 "xbt/graphxml.l" BUFFERPUTC('\n'); YY_BREAK - -case 80: +case 83: YY_RULE_SETUP -#line 499 "xbt/graphxml.l" ENTER(CDATA); YY_BREAK -case 81: +case 84: YY_RULE_SETUP -#line 500 "xbt/graphxml.l" FAIL("Unexpected `]""]>' in character data."); YY_BREAK - -case 82: +case 85: YY_RULE_SETUP -#line 504 "xbt/graphxml.l" BUFFERDONE; LEAVE; YY_BREAK case YY_STATE_EOF(VALUE1): -#line 505 "xbt/graphxml.l" FAIL("EOF in literal (\"'\" expected)."); YY_BREAK - -case 83: +case 86: YY_RULE_SETUP -#line 509 "xbt/graphxml.l" BUFFERDONE; LEAVE; YY_BREAK case YY_STATE_EOF(VALUE2): -#line 510 "xbt/graphxml.l" FAIL("EOF in literal (`\"' expected)."); YY_BREAK - -case 84: -/* rule 84 can match eol */ +case 87: +/* rule 87 can match eol */ YY_RULE_SETUP -#line 514 "xbt/graphxml.l" BUFFERPUTC(xbt_graph_parse_text[0]); YY_BREAK -case 85: +case 88: YY_RULE_SETUP -#line 515 "xbt/graphxml.l" FAIL("Spurious `%c' in character data.",xbt_graph_parse_text[0]); YY_BREAK - -case 86: +case 89: YY_RULE_SETUP -#line 519 "xbt/graphxml.l" LEAVE; YY_BREAK /* "]""]" BUFFERPUTC(xbt_graph_parse_text[0]); BUFFERPUTC(xbt_graph_parse_text[1]); */ -case 87: +case 90: YY_RULE_SETUP -#line 521 "xbt/graphxml.l" BUFFERPUTC(xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(CDATA): -#line 522 "xbt/graphxml.l" FAIL("EOF in CDATA section."); YY_BREAK @@ -2162,19 +2243,16 @@ FAIL("EOF in CDATA section."); /* Ideally, this should be replaced by code in flexml.pl that generates just the states not covered by other rules. */ -case 88: -/* rule 88 can match eol */ +case 91: +/* rule 91 can match eol */ YY_RULE_SETUP -#line 529 "xbt/graphxml.l" FAIL("Syntax error on character `%c'.", xbt_graph_parse_text[0]); YY_BREAK -case 89: +case 92: YY_RULE_SETUP -#line 532 "xbt/graphxml.l" ECHO; YY_BREAK -#line 2178 "xbt/graphxml.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(ROOT_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_2): @@ -2411,7 +2489,7 @@ static int yy_get_next_buffer (void) /* Read in more data. */ YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), - (yy_n_chars), num_to_read ); + (yy_n_chars), (size_t) num_to_read ); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } @@ -2435,6 +2513,14 @@ static int yy_get_next_buffer (void) else ret_val = EOB_ACT_CONTINUE_SCAN; + if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) xbt_graph_parse_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + } + (yy_n_chars) += number_to_move; YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; @@ -2464,7 +2550,7 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 546 ) + if ( yy_current_state >= 564 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2492,11 +2578,11 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 546 ) + if ( yy_current_state >= 564 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 545); + yy_is_jam = (yy_current_state == 563); return yy_is_jam ? 0 : yy_current_state; } @@ -2818,7 +2904,9 @@ static void xbt_graph_parse_ensure_buffer_stack (void) (yy_buffer_stack) = (struct yy_buffer_state**)xbt_graph_parse_alloc (num_to_alloc * sizeof(struct yy_buffer_state*) ); - + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in xbt_graph_parse_ensure_buffer_stack()" ); + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); (yy_buffer_stack_max) = num_to_alloc; @@ -2836,6 +2924,8 @@ static void xbt_graph_parse_ensure_buffer_stack (void) ((yy_buffer_stack), num_to_alloc * sizeof(struct yy_buffer_state*) ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in xbt_graph_parse_ensure_buffer_stack()" ); /* zero only the new slots.*/ memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); @@ -2894,8 +2984,8 @@ YY_BUFFER_STATE xbt_graph_parse__scan_string (yyconst char * yystr ) /** Setup the input buffer state to scan the given bytes. The next call to xbt_graph_parse_lex() will * scan from a @e copy of @a bytes. - * @param bytes the byte buffer to scan - * @param len the number of bytes in the buffer pointed to by @a bytes. + * @param yybytes the byte buffer to scan + * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ @@ -2945,8 +3035,7 @@ YY_BUFFER_STATE xbt_graph_parse__scan_bytes (yyconst char * yybytes, int _yyby (yy_start_stack) = (int *) xbt_graph_parse_realloc((void *) (yy_start_stack),new_size ); if ( ! (yy_start_stack) ) - YY_FATAL_ERROR( - "out of memory expanding start-condition stack" ); + YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); } (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START; @@ -3178,10 +3267,6 @@ void xbt_graph_parse_free (void * ptr ) #define YYTABLES_NAME "yytables" -#line 532 "xbt/graphxml.l" - - - /* Element context stack lookup. */ int graphxml_element_context(int i) { @@ -3195,19 +3280,39 @@ void print_yy_stack(char* fmt, ...) { int i = 0; va_list ap; va_start(ap, fmt); vfprintf(stderr, fmt, ap); - for (i=1; i