*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
-#define YY_NUM_RULES 107
-#define YY_END_OF_BUFFER 108
+#define YY_NUM_RULES 130
+#define YY_END_OF_BUFFER 131
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[483] =
+static yyconst flex_int16_t yy_accept[675] =
{ 0,
- 0, 0, 0, 0, 0, 0, 108, 106, 14, 14,
- 104, 106, 104, 104, 104, 106, 105, 104, 104, 104,
- 52, 104, 17, 17, 17, 54, 104, 104, 104, 103,
- 104, 103, 103, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 103, 103, 103, 103, 103, 103, 104, 106,
- 103, 104, 104, 52, 104, 11, 11, 11, 30, 0,
- 6, 0, 41, 28, 0, 0, 42, 37, 38, 36,
- 39, 51, 18, 3, 0, 40, 18, 17, 0, 0,
- 53, 0, 47, 35, 33, 34, 49, 0, 103, 0,
- 102, 103, 103, 103, 103, 103, 25, 103, 103, 103,
-
- 103, 103, 103, 103, 103, 103, 101, 103, 100, 99,
- 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
- 103, 43, 29, 0, 100, 0, 11, 11, 12, 0,
- 3, 8, 40, 0, 12, 11, 0, 31, 50, 0,
- 0, 0, 0, 0, 1, 18, 16, 15, 0, 0,
- 45, 32, 44, 48, 0, 0, 0, 0, 0, 103,
- 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 24, 103, 95, 103, 103, 103, 103, 103,
- 94, 103, 103, 103, 103, 103, 103, 103, 96, 103,
-
- 103, 103, 103, 103, 98, 103, 103, 93, 97, 103,
- 103, 103, 13, 103, 12, 12, 0, 8, 0, 0,
- 0, 8, 0, 8, 8, 12, 10, 9, 0, 0,
- 0, 2, 0, 16, 0, 0, 46, 0, 0, 0,
- 0, 103, 91, 103, 103, 103, 103, 103, 103, 103,
- 86, 90, 103, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 89, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 103, 88, 103, 103, 87, 103, 92, 103,
- 12, 10, 9, 8, 0, 8, 0, 0, 2, 0,
- 8, 8, 10, 0, 2, 19, 0, 21, 0, 0,
-
- 0, 84, 81, 79, 80, 103, 103, 103, 103, 103,
- 83, 82, 103, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 103, 103, 103, 103, 85, 103, 78, 103,
- 103, 26, 103, 10, 0, 0, 2, 0, 8, 8,
- 0, 20, 0, 0, 103, 103, 71, 103, 103, 103,
- 103, 103, 76, 103, 103, 103, 103, 74, 103, 103,
- 103, 103, 73, 72, 75, 27, 77, 103, 103, 8,
- 0, 0, 0, 103, 66, 69, 70, 65, 103, 103,
- 103, 103, 103, 103, 103, 67, 68, 103, 103, 103,
- 8, 0, 0, 22, 61, 64, 103, 103, 103, 63,
-
- 103, 62, 103, 103, 0, 0, 23, 103, 103, 57,
- 58, 59, 60, 0, 0, 0, 0, 0, 0, 56,
- 55, 0, 5, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 5, 0, 0, 0, 0,
- 0, 0, 0, 4, 0, 0, 4, 0, 5, 0,
- 0, 0, 0, 7, 0, 21, 5, 21, 21, 0,
- 0, 0, 7, 0, 20, 5, 20, 20, 0, 0,
- 0, 0, 0, 22, 5, 22, 22, 23, 5, 23,
- 23, 0
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 131, 130, 31, 127, 130, 127, 127, 127,
+ 130, 127, 128, 126, 127, 127, 73, 127, 130, 130,
+ 130, 75, 127, 127, 127, 125, 125, 126, 127, 125,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 29, 127, 126, 130,
+ 130, 125, 129, 31, 127, 129, 127, 127, 127, 129,
+ 127, 128, 126, 127, 127, 73, 127, 129, 129, 129,
+ 75, 127, 127, 127, 125, 125, 126, 127, 125, 125,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+
+ 125, 125, 125, 125, 125, 28, 127, 126, 129, 129,
+ 125, 29, 127, 127, 73, 127, 129, 129, 129, 17,
+ 17, 19, 20, 18, 16, 16, 129, 12, 15, 11,
+ 14, 13, 10, 15, 15, 49, 0, 6, 0, 125,
+ 61, 47, 64, 0, 0, 62, 56, 57, 55, 59,
+ 72, 0, 3, 0, 60, 34, 34, 0, 0, 0,
+ 0, 74, 0, 68, 54, 52, 53, 70, 0, 125,
+ 0, 0, 125, 58, 125, 124, 125, 125, 125, 125,
+ 125, 44, 125, 125, 125, 125, 125, 125, 125, 125,
+ 125, 123, 125, 122, 121, 125, 125, 125, 125, 125,
+
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 63, 48, 31, 0,
+ 122, 0, 0, 0, 0, 0, 3, 23, 60, 0,
+ 26, 26, 0, 0, 0, 0, 17, 0, 0, 9,
+ 15, 0, 15, 50, 125, 71, 35, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0, 0, 0, 0, 66,
+ 51, 65, 69, 0, 0, 0, 0, 0, 0, 36,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+ 125, 125, 125, 125, 43, 125, 117, 125, 125, 125,
+ 125, 125, 116, 125, 125, 125, 125, 125, 125, 125,
+
+ 118, 125, 125, 125, 125, 125, 120, 125, 125, 115,
+ 119, 125, 125, 125, 30, 125, 0, 26, 26, 0,
+ 0, 27, 23, 0, 0, 0, 23, 0, 23, 23,
+ 0, 0, 0, 0, 0, 0, 0, 15, 0, 0,
+ 0, 2, 0, 33, 0, 32, 32, 0, 0, 67,
+ 0, 0, 0, 0, 125, 125, 113, 125, 125, 125,
+ 125, 125, 125, 125, 108, 112, 125, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 111, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 125, 110, 125, 125,
+ 109, 125, 114, 125, 27, 0, 0, 0, 0, 23,
+
+ 0, 23, 0, 0, 2, 0, 23, 23, 25, 0,
+ 24, 24, 0, 0, 0, 0, 2, 37, 0, 39,
+ 0, 0, 0, 125, 106, 103, 101, 102, 125, 125,
+ 125, 125, 125, 105, 104, 125, 125, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 107,
+ 125, 100, 125, 125, 45, 125, 25, 0, 24, 24,
+ 0, 0, 2, 0, 23, 23, 0, 0, 0, 0,
+ 0, 0, 38, 0, 0, 125, 125, 125, 93, 125,
+ 125, 125, 125, 125, 98, 125, 125, 125, 125, 96,
+ 125, 125, 125, 125, 95, 94, 97, 46, 99, 125,
+
+ 125, 23, 0, 0, 0, 0, 0, 0, 125, 125,
+ 88, 91, 92, 87, 125, 125, 125, 125, 125, 125,
+ 125, 89, 90, 125, 125, 125, 23, 8, 21, 0,
+ 0, 0, 40, 125, 83, 0, 0, 86, 125, 125,
+ 125, 85, 125, 84, 125, 125, 0, 0, 0, 0,
+ 41, 82, 0, 125, 125, 78, 80, 79, 81, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 77, 76,
+ 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 42, 0, 0,
+
+ 0, 4, 0, 0, 0, 0, 4, 0, 0, 5,
+ 0, 0, 0, 0, 0, 0, 0, 0, 5, 0,
+ 0, 0, 0, 0, 0, 7, 0, 0, 0, 39,
+ 5, 39, 39, 39, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 22, 0, 7, 0, 38, 5,
+ 38, 38, 38, 0, 0, 0, 5, 0, 22, 0,
+ 0, 0, 0, 40, 5, 40, 40, 40, 41, 5,
+ 41, 41, 41, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
- 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 5, 6, 7, 8, 9, 10, 11, 8,
- 12, 13, 14, 8, 15, 16, 17, 18, 19, 19,
- 20, 19, 19, 19, 19, 19, 19, 21, 8, 22,
- 23, 24, 8, 8, 25, 26, 27, 28, 26, 26,
- 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
- 26, 26, 26, 29, 26, 26, 26, 26, 26, 26,
- 30, 31, 32, 8, 33, 7, 34, 35, 36, 37,
-
- 38, 39, 40, 41, 42, 26, 43, 44, 45, 46,
- 47, 48, 26, 49, 50, 51, 52, 53, 54, 55,
- 56, 26, 8, 57, 8, 8, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 58, 7, 7, 7,
- 59, 7, 7, 7, 7, 7, 7, 7, 7, 7,
-
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 60, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7
+ 1, 5, 6, 7, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, 13, 17, 18, 19, 20, 21, 21,
+ 22, 21, 21, 21, 21, 21, 21, 23, 13, 24,
+ 25, 26, 13, 13, 27, 28, 29, 30, 28, 28,
+ 28, 28, 28, 28, 28, 28, 28, 31, 28, 28,
+ 28, 28, 28, 32, 28, 28, 28, 28, 28, 28,
+ 33, 34, 35, 36, 37, 8, 38, 39, 40, 41,
+
+ 42, 43, 44, 45, 46, 28, 47, 48, 49, 50,
+ 51, 52, 28, 53, 54, 55, 56, 57, 58, 59,
+ 60, 28, 61, 62, 63, 13, 8, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 65,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 66, 64, 64, 64,
+ 67, 64, 64, 68, 64, 64, 64, 64, 64, 64,
+
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 69, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64
} ;
-static yyconst flex_int32_t yy_meta[61] =
+static yyconst flex_int32_t yy_meta[70] =
{ 0,
- 1, 2, 3, 2, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 5, 4, 6, 6, 6,
- 2, 4, 4, 4, 7, 7, 7, 7, 7, 4,
- 8, 4, 8, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 4, 4, 4, 4
+ 1, 2, 3, 2, 2, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 5, 4, 6,
+ 6, 6, 7, 8, 4, 8, 9, 9, 9, 9,
+ 9, 9, 4, 10, 4, 4, 11, 9, 9, 9,
+ 9, 12, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 13, 9,
+ 8, 4, 4, 14, 15, 14, 14, 15, 14
} ;
-static yyconst flex_int16_t yy_base[511] =
+static yyconst flex_int16_t yy_base[718] =
{ 0,
- 0, 526, 47, 54, 61, 68, 567, 2566, 2566, 2566,
- 542, 83, 2566, 537, 545, 80, 2566, 522, 76, 77,
- 85, 85, 97, 102, 107, 523, 107, 506, 70, 129,
- 2566, 132, 136, 139, 142, 163, 167, 172, 192, 170,
- 181, 198, 201, 217, 231, 109, 169, 215, 101, 465,
- 476, 270, 276, 282, 213, 287, 292, 297, 495, 131,
- 2566, 509, 2566, 2566, 150, 504, 2566, 2566, 2566, 2566,
- 2566, 489, 159, 189, 494, 2566, 256, 302, 472, 435,
- 2566, 448, 450, 2566, 442, 2566, 83, 322, 284, 329,
- 299, 302, 311, 317, 326, 336, 328, 345, 353, 355,
-
- 363, 371, 373, 381, 383, 393, 395, 403, 411, 413,
- 421, 429, 441, 431, 453, 448, 459, 462, 468, 474,
- 483, 490, 494, 505, 506, 522, 528, 529, 543, 545,
- 549, 2566, 2566, 405, 563, 317, 587, 599, 335, 78,
- 609, 640, 210, 229, 417, 605, 439, 2566, 2566, 626,
- 631, 634, 437, 444, 2566, 531, 0, 430, 406, 379,
- 2566, 2566, 2566, 381, 660, 349, 346, 334, 346, 607,
- 664, 671, 488, 543, 670, 686, 685, 700, 697, 712,
- 607, 706, 709, 721, 728, 732, 735, 747, 754, 756,
- 763, 770, 777, 789, 786, 793, 808, 809, 812, 815,
-
- 831, 829, 840, 851, 852, 863, 874, 872, 875, 886,
- 895, 902, 2566, 906, 652, 912, 369, 0, 954, 959,
- 962, 360, 967, 0, 998, 963, 0, 354, 134, 1058,
- 1061, 346, 1064, 0, 311, 330, 2566, 0, 290, 286,
- 285, 944, 1038, 1041, 845, 1050, 1045, 1052, 1064, 1063,
- 1073, 1075, 1083, 1092, 1095, 1104, 1113, 1121, 1122, 1131,
- 1136, 1145, 1154, 1157, 1145, 1167, 1174, 1171, 1183, 1186,
- 1195, 1207, 1206, 1221, 1222, 1200, 1226, 1239, 1236, 1245,
- 1050, 0, 303, 0, 394, 1297, 1357, 1360, 297, 1363,
- 1394, 0, 0, 1366, 2566, 2566, 284, 2566, 0, 253,
-
- 253, 1421, 1422, 1423, 1424, 1336, 1433, 1442, 1448, 1452,
- 1451, 1463, 1467, 1339, 1467, 1477, 1485, 1493, 1506, 1495,
- 1506, 1515, 1527, 1534, 1532, 1544, 1546, 1554, 1562, 1564,
- 1564, 1571, 1583, 0, 1625, 1630, 0, 1638, 0, 0,
- 253, 2566, 243, 232, 1602, 1611, 1618, 1630, 1628, 1640,
- 1641, 1642, 1653, 1665, 1664, 1668, 1679, 1680, 1691, 1702,
- 1703, 1700, 1714, 1723, 1725, 1726, 1729, 1658, 1741, 246,
- 229, 211, 0, 1744, 1753, 1756, 1765, 1768, 1777, 1780,
- 1790, 1798, 1806, 1818, 1820, 1828, 1830, 1843, 1845, 1858,
- 212, 190, 0, 2566, 1883, 1894, 1897, 1860, 1872, 1869,
-
- 1875, 1886, 1889, 1895, 1947, 173, 2566, 1915, 1917, 1925,
- 1927, 1935, 1937, 1144, 193, 1987, 1990, 155, 136, 1956,
- 1958, 1291, 1457, 1829, 1941, 194, 2007, 146, 250, 2010,
- 2021, 2032, 2013, 2044, 2035, 2047, 2053, 2057, 2062, 2065,
- 2073, 140, 2076, 2079, 125, 2091, 2096, 2108, 2113, 2144,
- 2123, 2127, 2131, 2566, 234, 2118, 2134, 2137, 2160, 2204,
- 2178, 2186, 87, 253, 2175, 2181, 2189, 2192, 2195, 2220,
- 2235, 2276, 2336, 2238, 2241, 2244, 2247, 2250, 2253, 2263,
- 2266, 2566, 2396, 2404, 2411, 2419, 2427, 2435, 2439, 2446,
- 2450, 2457, 2460, 2463, 90, 2470, 2473, 2480, 2488, 2488,
-
- 2495, 2503, 2508, 2513, 2518, 2526, 2533, 2541, 2549, 2557
+ 0, 2119, 69, 2117, 2062, 93, 124, 131, 152, 155,
+ 216, 0, 2120, 3953, 3953, 2089, 149, 0, 2087, 146,
+ 148, 3953, 3953, 2084, 143, 144, 144, 148, 268, 273,
+ 278, 2077, 164, 2064, 149, 299, 303, 3953, 2057, 331,
+ 133, 142, 149, 271, 302, 152, 158, 307, 259, 290,
+ 297, 320, 312, 264, 339, 334, 3953, 267, 3953, 2001,
+ 1978, 348, 3953, 3953, 2016, 165, 0, 1998, 173, 335,
+ 3953, 3953, 1980, 387, 393, 399, 407, 407, 413, 418,
+ 1966, 418, 1949, 189, 328, 392, 3953, 1929, 0, 341,
+ 399, 414, 410, 432, 437, 444, 454, 427, 461, 447,
+
+ 467, 458, 452, 475, 485, 3953, 327, 3953, 1886, 1863,
+ 491, 3953, 457, 434, 515, 527, 529, 535, 540, 0,
+ 0, 1911, 3953, 3953, 3953, 3953, 1874, 3953, 1855, 3953,
+ 3953, 3953, 3953, 1779, 439, 1749, 304, 3953, 1732, 0,
+ 3953, 3953, 3953, 442, 1715, 3953, 3953, 3953, 3953, 3953,
+ 1667, 543, 565, 569, 3953, 3953, 554, 569, 580, 1661,
+ 1592, 3953, 1609, 1551, 3953, 1548, 3953, 553, 601, 544,
+ 605, 1472, 561, 3953, 568, 563, 576, 572, 581, 583,
+ 596, 578, 588, 600, 598, 602, 614, 611, 618, 624,
+ 626, 622, 630, 632, 635, 641, 639, 650, 657, 660,
+
+ 655, 663, 665, 668, 674, 672, 683, 677, 679, 688,
+ 693, 696, 690, 699, 702, 704, 3953, 3953, 3953, 1468,
+ 711, 740, 749, 754, 757, 624, 782, 814, 626, 754,
+ 3953, 760, 772, 783, 1494, 353, 0, 383, 1500, 3953,
+ 1477, 0, 1469, 3953, 0, 3953, 3953, 808, 818, 874,
+ 1467, 803, 3953, 805, 808, 893, 962, 1423, 1350, 3953,
+ 3953, 3953, 1351, 1030, 1259, 1256, 1188, 1194, 1153, 781,
+ 783, 998, 837, 1000, 795, 827, 1003, 995, 1005, 993,
+ 1008, 1013, 830, 1022, 832, 1024, 834, 991, 1015, 1032,
+ 1037, 1043, 1027, 1039, 1029, 1047, 1049, 1054, 1051, 1057,
+
+ 1061, 1063, 1070, 1066, 1074, 1080, 1076, 1084, 1089, 1082,
+ 1086, 1091, 1093, 1103, 3953, 1101, 1130, 3953, 1138, 1141,
+ 1192, 3953, 0, 1163, 1172, 1192, 1173, 1197, 0, 1213,
+ 1148, 1163, 1273, 1342, 1164, 1162, 1142, 0, 442, 1218,
+ 1411, 1134, 1416, 3953, 0, 3953, 0, 1012, 969, 3953,
+ 0, 943, 884, 881, 1155, 1170, 1135, 1182, 1149, 1160,
+ 1184, 1368, 1195, 1374, 1175, 1379, 1384, 1387, 1391, 1393,
+ 1400, 1396, 1398, 1402, 1404, 1406, 1408, 1411, 1428, 1430,
+ 1425, 1423, 1417, 1434, 1419, 1445, 1436, 1421, 1442, 1448,
+ 1450, 1455, 1452, 1457, 3953, 1494, 1497, 1539, 1608, 0,
+
+ 1675, 1709, 1680, 1685, 873, 1769, 1803, 0, 3953, 0,
+ 3953, 0, 834, 823, 808, 1519, 3953, 3953, 805, 3953,
+ 0, 745, 747, 1638, 1471, 1473, 1475, 1477, 1643, 1653,
+ 1663, 1669, 1667, 1479, 1677, 1680, 1649, 1674, 1692, 1732,
+ 1724, 1690, 1737, 1743, 1726, 1833, 1835, 1739, 1837, 1741,
+ 1829, 1745, 1841, 1839, 1747, 1855, 3953, 0, 3953, 0,
+ 1896, 1901, 0, 1921, 0, 0, 770, 569, 751, 737,
+ 688, 675, 3953, 665, 649, 1826, 1865, 1859, 1853, 1888,
+ 1873, 1878, 1892, 1895, 1880, 1899, 1906, 1909, 1912, 1903,
+ 1917, 1919, 1922, 1914, 1924, 1926, 1928, 1930, 1932, 1937,
+
+ 1946, 628, 772, 798, 591, 593, 568, 0, 1939, 1953,
+ 1999, 1943, 1955, 1957, 1962, 1964, 1971, 1979, 1973, 1982,
+ 1986, 1976, 1984, 1989, 1992, 2045, 564, 3953, 3953, 554,
+ 526, 0, 3953, 2001, 2003, 2056, 467, 2009, 2015, 2020,
+ 2023, 2027, 2030, 2032, 2034, 2037, 2099, 459, 486, 460,
+ 3953, 2039, 426, 2041, 2054, 2063, 2065, 2072, 2074, 2127,
+ 509, 2132, 2136, 2143, 409, 388, 371, 356, 2089, 2096,
+ 2149, 2153, 2157, 2166, 2170, 520, 2178, 380, 536, 2224,
+ 2247, 2252, 2237, 2264, 2270, 2293, 2305, 2321, 2337, 2350,
+ 2363, 2378, 2388, 2407, 324, 307, 1037, 3953, 258, 2392,
+
+ 2422, 2430, 256, 294, 1986, 2434, 2445, 2459, 2463, 2474,
+ 2480, 222, 2548, 2616, 2620, 2624, 2632, 2636, 2642, 2628,
+ 2675, 2710, 2714, 2658, 1151, 3953, 1199, 145, 2725, 2729,
+ 2733, 2743, 2747, 2756, 2824, 2892, 2896, 2900, 2904, 2911,
+ 2918, 2925, 2932, 3000, 3953, 1390, 169, 1875, 2946, 2951,
+ 3022, 3026, 3030, 3034, 3038, 2179, 3042, 3049, 162, 2070,
+ 3055, 3123, 3192, 3260, 3264, 3268, 3272, 3276, 3280, 3284,
+ 3288, 3292, 3296, 3953, 3364, 3379, 3386, 3399, 3414, 3428,
+ 3443, 3458, 3473, 3488, 3498, 3508, 3521, 3536, 3551, 3562,
+ 3575, 3590, 3605, 3616, 3624, 3639, 3654, 3665, 3670, 3683,
+
+ 3698, 3713, 3728, 3743, 3758, 3773, 3788, 3803, 3818, 3833,
+ 3847, 3862, 3877, 3892, 3907, 3922, 3937
} ;
-static yyconst flex_int16_t yy_def[511] =
+static yyconst flex_int16_t yy_def[718] =
{ 0,
- 482, 1, 1, 1, 1, 1, 482, 482, 482, 482,
- 482, 483, 482, 482, 482, 484, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 485,
- 482, 485, 485, 485, 485, 485, 485, 485, 485, 37,
- 37, 37, 37, 37, 37, 39, 37, 37, 482, 482,
- 39, 482, 482, 482, 486, 482, 482, 482, 482, 483,
- 482, 483, 482, 482, 484, 484, 482, 482, 482, 482,
- 482, 482, 482, 487, 488, 482, 482, 482, 489, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 39, 482,
- 39, 39, 39, 37, 39, 39, 39, 39, 39, 39,
-
- 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
- 39, 39, 39, 39, 39, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 482, 482, 482, 39, 482, 482, 482, 482, 486,
- 490, 488, 486, 486, 482, 482, 491, 482, 482, 487,
- 487, 492, 482, 488, 482, 482, 493, 489, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 37,
- 37, 37, 39, 39, 37, 37, 37, 37, 37, 37,
- 39, 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, 482, 37, 482, 482, 494, 495, 490, 490,
- 496, 495, 490, 142, 482, 482, 497, 491, 498, 487,
- 492, 482, 487, 493, 482, 482, 482, 499, 482, 482,
- 482, 37, 37, 37, 39, 39, 37, 37, 37, 39,
- 39, 39, 39, 39, 39, 39, 39, 39, 37, 37,
- 39, 39, 39, 39, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 39, 39, 39, 39, 37,
- 482, 500, 494, 495, 501, 482, 490, 496, 495, 490,
- 482, 225, 497, 487, 482, 482, 482, 482, 502, 482,
-
- 482, 37, 37, 37, 37, 39, 39, 39, 37, 37,
- 37, 37, 37, 39, 39, 39, 39, 39, 39, 37,
- 37, 37, 37, 37, 39, 39, 39, 39, 39, 39,
- 37, 37, 37, 500, 490, 490, 495, 490, 286, 291,
- 482, 482, 482, 482, 37, 37, 37, 37, 39, 39,
- 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 39, 39, 225,
- 482, 482, 503, 39, 39, 39, 39, 39, 39, 39,
- 39, 39, 39, 39, 39, 39, 39, 39, 39, 485,
- 286, 482, 504, 482, 485, 485, 485, 37, 37, 37,
-
- 37, 37, 37, 37, 505, 506, 482, 39, 39, 39,
- 39, 39, 39, 507, 508, 509, 507, 506, 506, 39,
- 39, 482, 482, 507, 507, 508, 482, 508, 510, 510,
- 509, 509, 507, 509, 482, 482, 507, 507, 507, 507,
- 507, 506, 482, 482, 510, 482, 482, 507, 510, 507,
- 507, 507, 507, 482, 506, 482, 482, 507, 507, 507,
- 507, 507, 506, 506, 482, 482, 507, 507, 507, 507,
- 507, 507, 507, 482, 482, 507, 507, 482, 482, 507,
- 507, 0, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
-
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482
+ 674, 1, 674, 3, 3, 3, 3, 3, 675, 675,
+ 674, 11, 674, 674, 674, 674, 676, 677, 674, 674,
+ 678, 674, 674, 674, 674, 674, 674, 674, 679, 679,
+ 679, 674, 674, 674, 674, 680, 680, 674, 674, 680,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 674, 674, 674, 674,
+ 674, 40, 674, 674, 674, 676, 677, 674, 674, 678,
+ 674, 674, 674, 674, 674, 674, 681, 682, 682, 682,
+ 674, 674, 674, 674, 40, 40, 674, 674, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 40, 40, 40, 40, 674, 674, 674, 674, 674,
+ 40, 674, 674, 674, 674, 674, 679, 679, 679, 683,
+ 683, 674, 674, 674, 674, 674, 684, 674, 685, 674,
+ 674, 674, 674, 685, 685, 674, 676, 674, 676, 686,
+ 674, 674, 674, 678, 678, 674, 674, 674, 674, 674,
+ 674, 687, 688, 689, 674, 674, 687, 679, 674, 690,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 40,
+ 674, 674, 40, 674, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 674, 674, 674, 674,
+ 40, 674, 691, 691, 692, 681, 693, 689, 681, 681,
+ 674, 692, 682, 674, 694, 674, 683, 674, 684, 674,
+ 685, 695, 685, 674, 686, 674, 674, 688, 688, 696,
+ 674, 689, 674, 687, 687, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 674, 40, 697, 674, 697, 674,
+ 698, 674, 699, 693, 693, 700, 699, 693, 228, 681,
+ 692, 692, 674, 674, 674, 674, 674, 695, 701, 688,
+ 696, 674, 688, 674, 256, 674, 256, 674, 674, 674,
+ 702, 674, 674, 674, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 674, 697, 697, 674, 674, 699,
+
+ 703, 688, 693, 700, 699, 693, 674, 330, 674, 333,
+ 674, 333, 704, 705, 674, 688, 674, 674, 674, 674,
+ 706, 674, 674, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 674, 398, 674, 398,
+ 693, 693, 699, 693, 402, 407, 704, 704, 705, 705,
+ 674, 674, 674, 674, 674, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 330, 704, 705, 674, 674, 674, 707, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 402, 674, 674, 674,
+ 674, 708, 674, 40, 40, 674, 674, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 709, 674, 674, 710,
+ 674, 40, 674, 40, 40, 40, 40, 40, 40, 711,
+ 712, 713, 711, 711, 714, 710, 710, 674, 40, 40,
+ 674, 674, 711, 711, 711, 712, 674, 712, 715, 715,
+ 713, 713, 711, 713, 713, 674, 674, 711, 711, 711,
+ 711, 711, 711, 716, 714, 714, 710, 674, 674, 711,
+
+ 674, 674, 674, 715, 715, 674, 674, 711, 711, 715,
+ 713, 674, 674, 711, 711, 711, 711, 709, 709, 711,
+ 717, 713, 711, 711, 714, 674, 710, 674, 711, 674,
+ 674, 711, 711, 711, 674, 711, 711, 711, 712, 717,
+ 717, 717, 717, 716, 674, 714, 710, 710, 674, 674,
+ 711, 711, 711, 711, 711, 712, 712, 717, 714, 714,
+ 711, 674, 674, 674, 674, 711, 711, 711, 674, 674,
+ 711, 711, 711, 0, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674
} ;
-static yyconst flex_int16_t yy_nxt[2627] =
+static yyconst flex_int16_t yy_nxt[4023] =
{ 0,
- 8, 9, 10, 9, 11, 12, 8, 13, 14, 15,
- 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 30, 30, 30, 30, 13,
- 8, 31, 30, 32, 33, 34, 35, 36, 37, 38,
- 30, 39, 30, 30, 30, 40, 41, 42, 43, 44,
- 45, 46, 47, 48, 30, 30, 49, 8, 8, 50,
- 52, 53, 54, 55, 56, 57, 58, 52, 53, 54,
- 55, 56, 57, 58, 52, 53, 54, 55, 56, 57,
- 58, 52, 53, 54, 55, 56, 57, 58, 61, 68,
- 61, 70, 86, 87, 218, 51, 284, 74, 69, 71,
-
- 72, 75, 73, 73, 73, 163, 164, 76, 144, 51,
- 66, 82, 77, 62, 78, 78, 78, 77, 419, 78,
- 78, 78, 77, 132, 78, 78, 78, 429, 83, 84,
- 88, 88, 88, 88, 88, 88, 61, 88, 88, 88,
- 88, 88, 88, 88, 88, 88, 294, 89, 426, 90,
- 295, 79, 90, 89, 126, 80, 90, 133, 127, 90,
- 61, 62, 90, 454, 88, 88, 88, 442, 88, 88,
- 88, 455, 93, 88, 88, 88, 73, 73, 73, 96,
- 66, 91, 94, 90, 92, 95, 419, 90, 97, 150,
- 150, 150, 90, 88, 88, 88, 99, 98, 427, 427,
-
- 102, 152, 128, 111, 419, 153, 100, 112, 103, 106,
- 89, 89, 90, 104, 89, 129, 89, 101, 105, 406,
- 89, 113, 89, 428, 428, 141, 218, 89, 153, 142,
- 107, 115, 89, 114, 89, 143, 108, 109, 118, 89,
- 144, 110, 89, 144, 89, 225, 116, 89, 89, 117,
- 89, 393, 89, 392, 119, 130, 131, 463, 89, 144,
- 427, 89, 391, 89, 89, 464, 89, 120, 121, 373,
- 122, 123, 89, 156, 156, 156, 463, 89, 372, 124,
- 445, 371, 89, 68, 442, 136, 125, 137, 138, 138,
- 70, 136, 69, 137, 138, 138, 344, 72, 71, 139,
-
- 139, 139, 145, 343, 146, 146, 146, 145, 341, 146,
- 146, 146, 145, 233, 146, 146, 146, 77, 282, 78,
- 78, 78, 89, 88, 88, 88, 301, 300, 89, 89,
- 165, 165, 165, 89, 215, 215, 215, 89, 299, 170,
- 89, 147, 90, 89, 89, 80, 89, 89, 89, 89,
- 173, 89, 139, 139, 139, 89, 89, 297, 89, 296,
- 171, 172, 233, 89, 89, 166, 89, 167, 89, 227,
- 89, 174, 89, 89, 175, 89, 233, 89, 168, 176,
- 89, 89, 169, 89, 282, 89, 241, 240, 178, 89,
- 177, 89, 239, 89, 89, 238, 233, 89, 89, 89,
-
- 89, 89, 89, 237, 179, 236, 336, 89, 89, 89,
- 337, 89, 89, 180, 181, 89, 89, 89, 182, 89,
- 89, 89, 89, 235, 338, 89, 89, 89, 184, 183,
- 89, 89, 89, 89, 226, 226, 226, 89, 89, 89,
- 89, 89, 89, 185, 89, 157, 155, 89, 89, 89,
- 186, 89, 89, 233, 227, 89, 89, 89, 89, 89,
- 187, 188, 89, 213, 162, 189, 89, 89, 193, 89,
- 89, 190, 161, 89, 89, 89, 89, 160, 89, 89,
- 89, 89, 191, 159, 192, 89, 89, 157, 194, 195,
- 89, 89, 89, 197, 196, 89, 155, 89, 89, 89,
-
- 89, 89, 89, 89, 149, 89, 65, 200, 89, 89,
- 89, 60, 198, 89, 89, 89, 89, 148, 199, 89,
- 89, 135, 134, 89, 89, 89, 89, 89, 85, 89,
- 201, 202, 89, 89, 89, 89, 89, 245, 89, 89,
- 89, 89, 203, 81, 67, 89, 89, 89, 156, 156,
- 156, 89, 89, 206, 64, 89, 204, 89, 207, 63,
- 205, 89, 89, 89, 59, 208, 482, 51, 89, 89,
- 89, 482, 482, 89, 89, 89, 89, 209, 89, 89,
- 89, 89, 89, 482, 210, 482, 211, 89, 89, 89,
- 89, 89, 246, 247, 89, 89, 89, 482, 214, 212,
-
- 89, 89, 216, 482, 138, 138, 138, 89, 89, 219,
- 219, 150, 187, 188, 216, 482, 138, 138, 138, 482,
- 145, 221, 146, 146, 146, 222, 150, 150, 150, 482,
- 482, 150, 150, 150, 230, 230, 230, 482, 229, 223,
- 242, 217, 155, 229, 482, 89, 231, 482, 89, 482,
- 232, 89, 89, 89, 482, 482, 254, 482, 89, 482,
- 482, 165, 165, 165, 224, 224, 224, 224, 224, 215,
- 215, 215, 482, 224, 224, 224, 224, 224, 224, 224,
- 224, 224, 224, 224, 224, 224, 224, 224, 224, 224,
- 224, 224, 224, 224, 224, 224, 166, 89, 167, 482,
-
- 482, 243, 482, 248, 89, 89, 244, 482, 482, 168,
- 89, 89, 89, 169, 482, 89, 89, 89, 250, 89,
- 482, 89, 89, 249, 482, 482, 89, 89, 482, 482,
- 89, 89, 89, 89, 252, 482, 89, 89, 89, 255,
- 251, 89, 89, 89, 482, 89, 89, 89, 89, 253,
- 89, 89, 89, 89, 89, 89, 256, 89, 89, 482,
- 89, 89, 89, 89, 482, 89, 482, 89, 89, 89,
- 482, 482, 89, 89, 89, 257, 89, 482, 258, 89,
- 89, 89, 482, 89, 260, 259, 89, 89, 89, 89,
- 482, 261, 482, 89, 482, 89, 89, 262, 89, 482,
-
- 89, 482, 89, 89, 89, 89, 482, 89, 482, 89,
- 89, 89, 482, 263, 89, 482, 89, 482, 89, 89,
- 482, 89, 89, 89, 482, 264, 89, 89, 89, 482,
- 89, 265, 89, 482, 89, 89, 482, 89, 266, 89,
- 89, 89, 89, 267, 89, 89, 482, 482, 89, 89,
- 89, 268, 482, 89, 89, 89, 89, 482, 89, 89,
- 269, 89, 89, 89, 89, 270, 89, 482, 271, 482,
- 89, 482, 89, 89, 482, 89, 482, 89, 482, 272,
- 89, 89, 89, 89, 89, 89, 273, 482, 274, 89,
- 89, 89, 89, 89, 304, 482, 89, 89, 89, 482,
-
- 275, 482, 89, 89, 89, 89, 482, 89, 89, 89,
- 482, 276, 482, 89, 89, 89, 89, 482, 89, 89,
- 89, 89, 277, 89, 482, 89, 89, 89, 89, 281,
- 281, 281, 89, 482, 482, 89, 89, 89, 278, 89,
- 482, 89, 279, 89, 482, 482, 89, 89, 89, 280,
- 482, 482, 89, 89, 219, 219, 150, 89, 482, 219,
- 219, 150, 287, 287, 230, 482, 285, 219, 219, 150,
- 286, 285, 482, 482, 288, 286, 482, 89, 289, 285,
- 226, 226, 226, 291, 223, 89, 302, 482, 482, 223,
- 89, 482, 290, 482, 482, 89, 482, 223, 140, 140,
-
- 482, 140, 140, 140, 140, 140, 140, 140, 140, 140,
- 140, 140, 140, 140, 218, 140, 140, 140, 140, 140,
- 140, 140, 292, 292, 292, 292, 292, 140, 144, 140,
- 140, 292, 292, 292, 292, 292, 292, 292, 292, 292,
- 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
- 292, 292, 292, 292, 140, 140, 140, 140, 150, 150,
- 150, 230, 230, 230, 150, 150, 150, 281, 281, 281,
- 229, 89, 482, 231, 89, 482, 229, 232, 89, 89,
- 153, 303, 89, 482, 89, 89, 306, 89, 89, 89,
- 482, 89, 89, 89, 89, 89, 89, 89, 89, 89,
-
- 305, 89, 482, 307, 482, 89, 482, 309, 89, 482,
- 89, 89, 89, 89, 308, 89, 482, 89, 89, 89,
- 89, 89, 89, 482, 89, 482, 482, 89, 310, 311,
- 89, 482, 89, 89, 482, 482, 89, 89, 312, 89,
- 89, 89, 89, 482, 89, 422, 423, 424, 89, 89,
- 314, 89, 482, 89, 313, 316, 482, 89, 89, 89,
- 482, 482, 89, 89, 89, 89, 89, 482, 89, 315,
- 89, 482, 89, 89, 89, 482, 482, 89, 321, 317,
- 89, 89, 89, 89, 482, 318, 89, 482, 482, 89,
- 89, 89, 89, 482, 89, 89, 89, 319, 89, 89,
-
- 322, 89, 89, 89, 89, 320, 89, 89, 89, 482,
- 482, 323, 324, 89, 482, 89, 89, 89, 89, 89,
- 89, 482, 89, 482, 89, 89, 482, 326, 89, 89,
- 482, 325, 89, 482, 89, 482, 89, 89, 331, 89,
- 89, 89, 328, 327, 89, 89, 89, 89, 89, 89,
- 482, 482, 89, 89, 89, 89, 482, 89, 89, 329,
- 482, 482, 89, 89, 89, 482, 482, 89, 330, 482,
- 89, 89, 89, 89, 89, 89, 332, 89, 89, 482,
- 89, 89, 482, 89, 89, 89, 89, 482, 89, 482,
- 482, 89, 422, 423, 422, 482, 333, 150, 150, 150,
-
- 151, 151, 151, 151, 151, 151, 151, 151, 151, 229,
- 151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
- 151, 339, 339, 339, 339, 339, 151, 151, 151, 151,
- 339, 339, 339, 339, 339, 339, 339, 339, 339, 339,
- 339, 339, 339, 339, 339, 339, 339, 339, 339, 339,
- 339, 339, 339, 151, 151, 151, 151, 219, 219, 150,
- 287, 287, 230, 219, 219, 150, 150, 150, 150, 285,
- 482, 482, 288, 286, 89, 285, 289, 89, 229, 291,
- 89, 345, 232, 352, 89, 89, 482, 223, 89, 482,
- 290, 482, 482, 223, 219, 219, 150, 220, 220, 220,
-
- 220, 220, 220, 220, 220, 220, 285, 220, 220, 220,
- 286, 220, 220, 220, 220, 220, 220, 220, 340, 340,
- 340, 340, 340, 220, 223, 220, 220, 340, 340, 340,
- 340, 340, 340, 340, 340, 340, 340, 340, 340, 340,
- 340, 340, 340, 340, 340, 340, 340, 340, 340, 340,
- 220, 220, 220, 220, 89, 89, 89, 89, 422, 423,
- 422, 482, 89, 89, 89, 89, 482, 89, 89, 89,
- 89, 89, 89, 89, 89, 89, 346, 89, 89, 347,
- 89, 89, 89, 482, 89, 89, 89, 89, 349, 348,
- 482, 89, 89, 89, 89, 482, 89, 89, 89, 89,
-
- 89, 482, 89, 89, 89, 89, 350, 482, 351, 89,
- 482, 89, 89, 89, 89, 89, 89, 353, 89, 482,
- 482, 89, 354, 355, 482, 482, 89, 482, 89, 89,
- 356, 89, 482, 482, 89, 482, 359, 89, 89, 89,
- 357, 89, 89, 358, 89, 360, 89, 89, 89, 482,
- 89, 89, 89, 482, 482, 89, 89, 89, 482, 482,
- 89, 89, 362, 482, 482, 361, 89, 89, 89, 363,
- 89, 482, 482, 89, 482, 89, 89, 364, 89, 365,
- 89, 89, 89, 482, 89, 89, 482, 482, 89, 89,
- 89, 89, 89, 89, 366, 89, 482, 89, 89, 89,
-
- 89, 482, 367, 89, 89, 368, 89, 89, 89, 89,
- 89, 89, 89, 89, 482, 89, 89, 89, 482, 369,
- 482, 482, 89, 482, 89, 219, 219, 150, 482, 89,
- 219, 219, 150, 482, 89, 89, 482, 285, 219, 219,
- 150, 222, 285, 89, 89, 482, 289, 482, 89, 482,
- 285, 89, 89, 374, 370, 223, 482, 89, 482, 89,
- 223, 375, 89, 89, 89, 376, 89, 482, 223, 89,
- 482, 89, 89, 89, 89, 89, 89, 377, 89, 380,
- 482, 89, 89, 89, 89, 89, 89, 379, 89, 89,
- 482, 482, 89, 89, 89, 378, 89, 382, 89, 89,
-
- 381, 383, 89, 389, 89, 89, 89, 89, 482, 89,
- 89, 89, 384, 89, 89, 89, 89, 482, 482, 89,
- 89, 89, 482, 482, 89, 89, 89, 385, 482, 482,
- 89, 89, 89, 89, 482, 89, 89, 89, 482, 386,
- 387, 89, 89, 89, 89, 482, 89, 89, 89, 89,
- 388, 89, 482, 89, 89, 89, 89, 482, 89, 89,
- 89, 482, 89, 482, 89, 89, 89, 89, 482, 89,
- 89, 89, 89, 482, 89, 89, 89, 89, 390, 89,
- 89, 395, 89, 482, 482, 89, 89, 482, 89, 89,
- 89, 89, 482, 89, 89, 482, 482, 89, 89, 482,
-
- 89, 89, 89, 89, 482, 89, 89, 482, 482, 89,
- 89, 482, 89, 89, 89, 89, 482, 89, 89, 482,
- 482, 89, 396, 482, 89, 397, 89, 398, 89, 89,
- 422, 423, 424, 399, 89, 89, 89, 482, 482, 89,
- 482, 482, 89, 89, 89, 482, 482, 89, 482, 400,
- 89, 89, 482, 401, 482, 89, 89, 402, 89, 405,
- 405, 405, 89, 89, 89, 89, 89, 89, 89, 89,
- 482, 482, 89, 89, 89, 89, 482, 89, 90, 89,
- 403, 89, 404, 89, 88, 88, 88, 89, 89, 89,
- 89, 482, 89, 89, 89, 88, 88, 88, 88, 88,
-
- 88, 89, 89, 90, 482, 89, 409, 482, 89, 410,
- 89, 89, 411, 89, 90, 89, 89, 90, 89, 89,
- 89, 89, 89, 89, 482, 412, 89, 89, 89, 482,
- 89, 413, 89, 482, 482, 89, 89, 89, 482, 482,
- 89, 89, 422, 423, 424, 482, 89, 408, 405, 405,
- 405, 482, 415, 89, 482, 421, 482, 416, 482, 89,
- 89, 89, 89, 89, 420, 89, 89, 417, 482, 89,
- 89, 89, 89, 89, 89, 89, 89, 482, 482, 89,
- 89, 89, 89, 482, 89, 482, 89, 429, 430, 423,
- 431, 435, 436, 437, 89, 482, 89, 433, 482, 482,
-
- 89, 89, 89, 89, 482, 89, 482, 89, 443, 444,
- 443, 430, 423, 430, 446, 447, 448, 434, 482, 482,
- 427, 429, 430, 423, 431, 482, 438, 482, 439, 482,
- 482, 433, 429, 430, 423, 431, 435, 436, 435, 440,
- 445, 482, 433, 441, 429, 430, 449, 431, 435, 436,
- 435, 434, 482, 482, 435, 436, 437, 482, 422, 423,
- 424, 482, 434, 422, 423, 424, 422, 423, 424, 482,
- 482, 166, 482, 167, 422, 423, 424, 443, 444, 443,
- 443, 444, 443, 166, 168, 167, 482, 482, 169, 438,
- 482, 439, 446, 447, 446, 482, 168, 446, 447, 446,
-
- 169, 482, 440, 450, 482, 482, 441, 482, 451, 446,
- 447, 448, 482, 453, 430, 423, 430, 482, 452, 422,
- 423, 422, 482, 427, 422, 423, 424, 482, 422, 423,
- 424, 482, 422, 423, 424, 422, 423, 422, 422, 423,
- 424, 482, 482, 445, 298, 456, 457, 458, 459, 459,
+ 14, 15, 15, 15, 15, 16, 17, 14, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ 30, 31, 32, 33, 34, 35, 36, 36, 36, 36,
+ 37, 36, 22, 14, 38, 39, 36, 40, 41, 42,
+ 43, 44, 45, 46, 36, 47, 36, 36, 36, 48,
+ 49, 50, 51, 52, 53, 54, 55, 56, 36, 36,
+ 57, 58, 59, 14, 15, 14, 14, 60, 61, 63,
+ 64, 15, 64, 64, 65, 66, 63, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, 84, 85, 85, 85, 85, 86,
+
+ 85, 71, 63, 87, 88, 85, 89, 90, 91, 92,
+ 93, 94, 95, 85, 96, 85, 85, 85, 97, 98,
+ 99, 100, 101, 102, 103, 104, 105, 85, 85, 106,
+ 107, 108, 63, 64, 63, 63, 109, 110, 111, 113,
+ 114, 115, 116, 117, 118, 119, 113, 114, 115, 116,
+ 117, 118, 119, 112, 121, 138, 142, 121, 147, 138,
+ 149, 151, 153, 152, 152, 152, 154, 148, 150, 163,
+ 143, 138, 155, 167, 168, 122, 111, 123, 122, 178,
+ 123, 145, 139, 142, 112, 177, 170, 164, 165, 179,
+ 181, 112, 180, 191, 170, 170, 596, 143, 139, 182,
+
+ 192, 170, 170, 567, 170, 170, 193, 194, 183, 606,
+ 170, 195, 124, 167, 168, 124, 63, 125, 126, 125,
+ 125, 63, 127, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 128, 129, 129, 129, 63, 130,
+ 131, 132, 129, 129, 129, 129, 129, 129, 63, 63,
+ 63, 63, 129, 129, 129, 129, 129, 129, 129, 129,
+ 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
+ 129, 129, 129, 129, 129, 129, 133, 63, 63, 129,
+ 134, 129, 129, 135, 129, 157, 586, 158, 158, 158,
+ 157, 217, 158, 158, 158, 157, 579, 158, 158, 158,
+
+ 169, 169, 169, 169, 169, 169, 169, 169, 184, 159,
+ 138, 170, 170, 211, 159, 199, 170, 212, 185, 159,
+ 601, 171, 571, 170, 170, 171, 160, 200, 218, 186,
+ 161, 674, 169, 169, 169, 169, 674, 139, 203, 187,
+ 173, 625, 201, 170, 196, 202, 138, 188, 197, 170,
+ 170, 217, 189, 171, 170, 170, 208, 190, 596, 170,
+ 170, 204, 198, 169, 209, 170, 172, 169, 145, 335,
+ 172, 210, 170, 170, 205, 206, 213, 207, 215, 216,
+ 170, 170, 576, 175, 176, 259, 170, 170, 218, 214,
+ 192, 170, 170, 177, 170, 169, 193, 221, 172, 336,
+
+ 170, 195, 147, 598, 222, 597, 223, 224, 224, 149,
+ 222, 148, 223, 224, 224, 337, 151, 150, 225, 225,
+ 225, 227, 567, 236, 232, 228, 233, 233, 233, 173,
+ 232, 229, 233, 233, 233, 232, 178, 233, 233, 233,
+ 230, 164, 165, 596, 170, 170, 179, 184, 234, 180,
+ 149, 170, 170, 138, 234, 181, 416, 185, 150, 234,
+ 417, 242, 170, 170, 182, 235, 170, 170, 186, 187,
+ 161, 674, 147, 183, 568, 145, 674, 188, 191, 170,
+ 170, 148, 189, 199, 170, 170, 192, 190, 203, 170,
+ 170, 196, 193, 194, 567, 197, 170, 195, 200, 170,
+
+ 170, 211, 208, 243, 170, 212, 170, 170, 204, 198,
+ 209, 170, 213, 201, 170, 577, 202, 210, 565, 170,
+ 170, 205, 206, 547, 207, 214, 577, 170, 170, 215,
+ 216, 536, 151, 192, 152, 152, 152, 170, 170, 193,
+ 221, 153, 578, 170, 195, 154, 157, 577, 158, 158,
+ 158, 155, 157, 578, 158, 158, 158, 157, 550, 158,
+ 158, 158, 152, 152, 152, 248, 248, 248, 248, 604,
+ 159, 253, 253, 254, 254, 254, 159, 262, 263, 250,
+ 549, 159, 251, 251, 159, 503, 157, 160, 158, 158,
+ 158, 270, 161, 674, 674, 159, 170, 170, 674, 255,
+
+ 255, 255, 169, 169, 169, 169, 264, 264, 264, 264,
+ 159, 271, 532, 170, 170, 170, 170, 272, 275, 531,
+ 170, 170, 530, 171, 170, 273, 274, 674, 170, 170,
+ 170, 170, 276, 170, 170, 170, 170, 279, 277, 280,
+ 170, 170, 323, 278, 323, 265, 527, 266, 170, 170,
+ 170, 281, 170, 170, 170, 170, 282, 230, 267, 230,
+ 284, 283, 268, 170, 170, 169, 170, 170, 172, 264,
+ 285, 170, 269, 286, 170, 170, 170, 170, 170, 170,
+ 287, 288, 170, 170, 170, 289, 290, 170, 170, 291,
+ 508, 170, 170, 170, 170, 292, 293, 294, 295, 296,
+
+ 297, 299, 170, 170, 507, 298, 506, 170, 170, 170,
+ 170, 302, 170, 170, 505, 170, 170, 170, 170, 300,
+ 170, 170, 301, 303, 170, 170, 170, 170, 304, 305,
+ 170, 170, 170, 309, 306, 170, 170, 310, 307, 308,
+ 170, 170, 311, 170, 312, 170, 170, 313, 170, 170,
+ 316, 170, 170, 504, 170, 170, 170, 170, 314, 317,
+ 317, 317, 674, 170, 289, 290, 319, 470, 224, 224,
+ 224, 319, 330, 224, 224, 224, 225, 225, 225, 331,
+ 331, 331, 324, 324, 248, 324, 468, 230, 503, 232,
+ 320, 233, 233, 233, 475, 320, 326, 528, 234, 474,
+
+ 327, 234, 332, 332, 332, 253, 253, 321, 248, 248,
+ 248, 248, 674, 234, 504, 328, 253, 253, 248, 248,
+ 248, 248, 339, 529, 254, 254, 254, 255, 255, 255,
+ 674, 472, 339, 170, 170, 170, 170, 471, 355, 470,
+ 329, 329, 329, 329, 329, 329, 159, 170, 359, 674,
+ 468, 329, 329, 329, 329, 329, 329, 329, 329, 329,
+ 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
+ 329, 329, 329, 329, 340, 340, 340, 340, 357, 170,
+ 360, 361, 170, 368, 170, 170, 170, 170, 341, 170,
+ 170, 343, 342, 344, 344, 344, 344, 344, 344, 344,
+
+ 344, 344, 344, 344, 344, 344, 344, 344, 344, 344,
+ 344, 344, 345, 345, 345, 344, 344, 344, 344, 345,
+ 345, 345, 345, 345, 345, 344, 423, 344, 344, 422,
+ 345, 345, 345, 345, 345, 345, 345, 345, 345, 345,
+ 345, 345, 345, 345, 345, 345, 345, 345, 345, 345,
+ 345, 345, 345, 344, 344, 344, 344, 344, 344, 344,
+ 344, 344, 346, 346, 346, 346, 346, 346, 346, 346,
+ 346, 346, 346, 346, 346, 346, 346, 346, 346, 347,
+ 346, 257, 257, 257, 346, 346, 346, 346, 257, 257,
+ 257, 257, 257, 257, 346, 421, 346, 346, 419, 257,
+
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 346, 346, 346, 346, 346, 346, 346, 346,
+ 346, 264, 264, 264, 264, 356, 363, 365, 371, 358,
+ 362, 372, 364, 170, 170, 170, 170, 170, 170, 366,
+ 170, 170, 170, 170, 367, 170, 170, 170, 170, 369,
+ 170, 170, 626, 370, 418, 170, 170, 170, 170, 373,
+ 265, 627, 266, 374, 170, 170, 170, 170, 375, 170,
+ 170, 378, 170, 267, 170, 170, 377, 268, 376, 170,
+ 170, 170, 170, 379, 264, 170, 170, 269, 382, 170,
+
+ 170, 170, 170, 170, 170, 380, 170, 170, 381, 170,
+ 170, 385, 383, 170, 170, 170, 170, 384, 170, 170,
+ 386, 388, 170, 170, 387, 389, 170, 170, 170, 170,
+ 390, 391, 170, 170, 170, 170, 170, 170, 170, 170,
+ 392, 170, 170, 170, 170, 170, 170, 393, 394, 317,
+ 317, 317, 343, 170, 170, 170, 170, 396, 396, 396,
+ 397, 397, 397, 324, 324, 248, 324, 331, 331, 331,
+ 415, 320, 324, 324, 248, 324, 645, 401, 414, 320,
+ 413, 402, 332, 332, 332, 646, 401, 170, 170, 234,
+ 402, 343, 403, 403, 340, 403, 328, 324, 324, 248,
+
+ 324, 170, 427, 424, 674, 328, 404, 170, 170, 398,
+ 405, 401, 170, 170, 428, 407, 425, 264, 248, 248,
+ 248, 248, 170, 170, 647, 406, 426, 170, 170, 429,
+ 328, 323, 339, 648, 170, 170, 170, 170, 354, 408,
+ 408, 408, 408, 408, 408, 353, 230, 170, 170, 431,
+ 408, 408, 408, 408, 408, 408, 408, 408, 408, 408,
+ 408, 408, 408, 408, 408, 408, 408, 408, 408, 408,
+ 408, 408, 408, 409, 409, 409, 409, 409, 409, 409,
+ 409, 409, 409, 409, 409, 409, 409, 409, 409, 409,
+ 409, 409, 410, 410, 410, 409, 409, 409, 409, 410,
+
+ 410, 410, 410, 410, 410, 409, 352, 409, 409, 351,
+ 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
+ 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
+ 410, 410, 410, 409, 409, 409, 409, 409, 409, 409,
+ 409, 409, 411, 411, 411, 411, 411, 411, 411, 411,
+ 411, 411, 411, 411, 411, 411, 411, 411, 411, 412,
+ 411, 334, 334, 334, 411, 411, 411, 411, 334, 334,
+ 334, 334, 334, 334, 411, 350, 411, 411, 349, 334,
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+
+ 334, 334, 411, 411, 411, 411, 411, 411, 411, 411,
+ 411, 340, 340, 340, 340, 659, 248, 248, 248, 248,
+ 170, 170, 432, 430, 660, 341, 170, 170, 434, 342,
+ 339, 170, 170, 433, 251, 439, 170, 170, 435, 170,
+ 170, 437, 348, 170, 170, 170, 170, 436, 438, 170,
+ 170, 170, 170, 170, 440, 170, 170, 441, 170, 170,
+ 170, 170, 442, 443, 170, 444, 446, 445, 447, 448,
+ 170, 450, 170, 170, 170, 170, 170, 170, 170, 449,
+ 170, 170, 170, 170, 451, 343, 170, 170, 170, 170,
+ 454, 242, 453, 452, 170, 170, 455, 170, 170, 242,
+
+ 170, 170, 170, 170, 170, 170, 240, 170, 170, 170,
+ 170, 333, 456, 396, 396, 396, 397, 397, 397, 248,
+ 248, 248, 248, 170, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 339, 315, 320, 169, 342, 674, 457,
+ 457, 457, 457, 457, 457, 457, 457, 457, 457, 457,
+ 457, 457, 457, 457, 457, 457, 457, 457, 458, 458,
+ 458, 457, 457, 457, 457, 458, 458, 458, 458, 458,
+ 458, 457, 261, 457, 457, 260, 458, 458, 458, 458,
+ 458, 458, 458, 458, 458, 458, 458, 458, 458, 458,
+ 458, 458, 458, 458, 458, 458, 458, 458, 458, 457,
+
+ 457, 457, 457, 457, 457, 457, 457, 457, 459, 459,
459, 459, 459, 459, 459, 459, 459, 459, 459, 459,
- 459, 422, 423, 424, 459, 459, 459, 459, 461, 482,
- 482, 460, 462, 459, 482, 459, 422, 423, 422, 422,
- 423, 424, 422, 423, 422, 482, 482, 422, 423, 424,
- 422, 423, 424, 422, 423, 424, 422, 423, 424, 482,
-
- 459, 459, 459, 459, 342, 465, 466, 467, 468, 468,
- 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
- 468, 422, 423, 424, 468, 468, 468, 468, 469, 470,
- 471, 482, 482, 468, 482, 468, 422, 423, 424, 422,
- 423, 422, 422, 423, 422, 422, 423, 424, 422, 423,
- 424, 422, 423, 422, 422, 423, 422, 472, 482, 482,
- 468, 468, 468, 468, 422, 423, 424, 422, 423, 424,
- 482, 482, 482, 482, 482, 473, 394, 474, 475, 476,
- 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,
- 477, 477, 477, 482, 482, 482, 477, 477, 477, 477,
-
- 482, 482, 482, 482, 482, 477, 482, 477, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 477, 477, 477, 477, 407, 478, 479, 480,
- 481, 481, 481, 481, 481, 481, 481, 481, 481, 481,
- 481, 481, 481, 482, 482, 482, 481, 481, 481, 481,
- 482, 482, 482, 482, 482, 481, 482, 481, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 481, 481, 481, 481, 60, 60, 482, 60,
-
- 60, 60, 60, 60, 65, 65, 482, 65, 65, 65,
- 65, 65, 89, 89, 482, 482, 89, 89, 89, 140,
- 140, 482, 140, 140, 140, 140, 140, 151, 151, 151,
- 151, 151, 151, 151, 151, 154, 154, 154, 154, 154,
- 154, 154, 154, 158, 158, 158, 220, 220, 220, 220,
- 220, 220, 220, 220, 228, 228, 228, 150, 150, 150,
- 150, 150, 150, 150, 150, 234, 234, 283, 283, 283,
- 219, 219, 219, 219, 219, 219, 219, 219, 293, 293,
- 233, 233, 233, 233, 233, 233, 233, 233, 298, 298,
- 298, 298, 298, 334, 334, 335, 335, 335, 335, 335,
-
- 335, 335, 335, 342, 342, 342, 342, 342, 394, 394,
- 394, 394, 394, 407, 407, 407, 407, 407, 414, 414,
- 414, 414, 414, 414, 414, 414, 418, 418, 418, 418,
- 418, 418, 418, 418, 425, 425, 425, 425, 425, 425,
- 425, 426, 426, 482, 426, 426, 426, 426, 426, 432,
- 432, 432, 432, 432, 432, 432, 432, 429, 429, 482,
- 429, 429, 429, 429, 429, 7, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
-
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482
+ 459, 459, 459, 459, 459, 460, 459, 399, 399, 399,
+ 459, 459, 459, 459, 399, 399, 399, 399, 399, 399,
+ 459, 259, 459, 459, 258, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 459, 459,
+ 459, 459, 459, 459, 459, 459, 459, 343, 256, 476,
+ 324, 324, 248, 324, 246, 403, 403, 340, 403, 462,
+ 170, 170, 477, 463, 401, 170, 170, 484, 402, 404,
+
+ 478, 170, 170, 405, 479, 170, 170, 481, 464, 248,
+ 248, 248, 248, 328, 480, 170, 170, 144, 406, 170,
+ 170, 170, 170, 339, 482, 483, 170, 170, 485, 170,
+ 170, 490, 170, 170, 137, 465, 465, 465, 465, 465,
+ 465, 486, 170, 170, 170, 170, 465, 465, 465, 465,
+ 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
+ 465, 465, 465, 465, 465, 465, 465, 465, 465, 324,
+ 324, 248, 324, 244, 487, 489, 170, 170, 170, 170,
+ 493, 488, 491, 401, 170, 170, 492, 407, 496, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
+
+ 170, 242, 328, 324, 324, 248, 324, 325, 325, 325,
+ 325, 325, 325, 325, 325, 325, 325, 401, 325, 325,
+ 325, 402, 325, 325, 325, 325, 325, 325, 325, 466,
+ 466, 466, 466, 466, 466, 325, 328, 325, 325, 325,
+ 466, 466, 466, 466, 466, 466, 466, 466, 466, 466,
+ 466, 466, 466, 466, 466, 466, 466, 466, 466, 466,
+ 466, 466, 466, 325, 325, 325, 325, 325, 325, 325,
+ 325, 325, 494, 498, 495, 509, 497, 242, 170, 170,
+ 240, 170, 170, 499, 500, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 501, 324, 324, 248, 324,
+
+ 647, 324, 324, 248, 324, 170, 170, 170, 170, 597,
+ 401, 170, 170, 511, 327, 401, 238, 170, 170, 405,
+ 510, 324, 324, 248, 324, 170, 513, 512, 220, 328,
+ 170, 170, 170, 170, 328, 401, 516, 514, 517, 502,
+ 170, 170, 515, 518, 170, 170, 519, 170, 170, 520,
+ 219, 170, 170, 174, 328, 170, 170, 521, 170, 170,
+ 522, 170, 170, 523, 170, 170, 170, 170, 524, 170,
+ 170, 170, 170, 166, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 525, 526, 162, 170,
+ 170, 170, 170, 534, 535, 170, 170, 577, 170, 170,
+
+ 536, 536, 536, 536, 146, 170, 170, 170, 170, 170,
+ 170, 538, 540, 539, 170, 170, 170, 170, 541, 604,
+ 542, 543, 141, 170, 170, 170, 170, 544, 170, 170,
+ 545, 170, 170, 546, 170, 170, 170, 170, 170, 170,
+ 136, 170, 170, 220, 170, 170, 547, 547, 547, 547,
+ 580, 170, 170, 170, 552, 170, 170, 169, 169, 169,
+ 169, 170, 170, 536, 556, 219, 537, 170, 170, 554,
+ 555, 557, 170, 170, 558, 170, 170, 559, 171, 170,
+ 170, 174, 170, 170, 170, 170, 170, 170, 166, 170,
+ 170, 170, 170, 170, 569, 659, 570, 170, 170, 162,
+
+ 547, 547, 547, 547, 625, 561, 170, 170, 146, 547,
+ 562, 141, 548, 136, 553, 170, 170, 170, 170, 674,
+ 169, 563, 112, 172, 170, 170, 170, 170, 571, 572,
+ 571, 573, 579, 580, 572, 580, 581, 586, 587, 586,
+ 588, 170, 170, 583, 571, 572, 571, 573, 170, 170,
+ 571, 572, 571, 571, 571, 572, 571, 571, 571, 572,
+ 571, 573, 111, 547, 62, 584, 564, 571, 572, 571,
+ 573, 571, 572, 571, 573, 674, 589, 674, 590, 601,
+ 602, 601, 601, 674, 674, 577, 674, 674, 674, 591,
+ 674, 573, 674, 592, 575, 674, 581, 674, 674, 585,
+
+ 588, 674, 674, 593, 674, 674, 674, 594, 674, 674,
+ 575, 674, 578, 571, 674, 674, 599, 571, 674, 674,
+ 599, 573, 674, 674, 575, 580, 572, 580, 580, 674,
+ 573, 674, 674, 575, 600, 577, 674, 575, 606, 607,
+ 606, 608, 601, 639, 674, 603, 674, 579, 580, 572,
+ 580, 581, 579, 580, 572, 580, 581, 604, 583, 674,
+ 674, 674, 674, 583, 579, 580, 610, 580, 581, 674,
+ 579, 580, 572, 580, 581, 674, 674, 674, 674, 674,
+ 584, 583, 674, 674, 674, 584, 674, 674, 580, 674,
+ 674, 605, 674, 674, 586, 587, 586, 586, 674, 674,
+
+ 674, 608, 674, 584, 609, 674, 586, 587, 586, 586,
+ 674, 581, 674, 674, 585, 674, 581, 674, 674, 585,
+ 674, 674, 586, 587, 586, 588, 674, 674, 581, 674,
+ 674, 585, 674, 265, 611, 266, 674, 585, 571, 572,
+ 571, 573, 674, 674, 674, 265, 267, 266, 674, 674,
+ 268, 571, 572, 571, 573, 674, 674, 586, 267, 674,
+ 612, 589, 268, 590, 571, 572, 571, 573, 674, 586,
+ 674, 674, 612, 674, 591, 674, 674, 674, 592, 571,
+ 572, 571, 573, 674, 674, 588, 674, 613, 593, 571,
+ 572, 571, 573, 571, 572, 571, 573, 674, 674, 674,
+
+ 614, 573, 674, 674, 575, 674, 674, 560, 618, 619,
+ 618, 594, 674, 621, 573, 674, 674, 575, 622, 674,
+ 615, 674, 616, 601, 602, 601, 601, 573, 674, 623,
+ 575, 601, 602, 601, 601, 606, 607, 606, 606, 674,
+ 674, 674, 573, 674, 674, 575, 606, 607, 606, 606,
+ 674, 674, 617, 674, 674, 575, 573, 674, 674, 575,
+ 606, 607, 606, 608, 571, 572, 571, 573, 674, 674,
+ 674, 594, 674, 674, 624, 580, 572, 580, 580, 674,
+ 579, 580, 572, 580, 581, 577, 601, 674, 674, 603,
+ 674, 583, 674, 674, 601, 674, 674, 603, 606, 674,
+
+ 674, 628, 674, 674, 674, 674, 674, 604, 674, 606,
+ 674, 674, 628, 584, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 608, 674, 674, 609, 629, 674, 674,
+ 575, 674, 674, 674, 674, 674, 674, 674, 580, 674,
+ 674, 605, 674, 674, 581, 674, 674, 585, 420, 630,
+ 631, 630, 632, 633, 633, 633, 633, 633, 633, 633,
+ 633, 633, 633, 633, 633, 633, 633, 574, 574, 574,
+ 633, 633, 633, 633, 574, 574, 574, 574, 574, 574,
+ 633, 574, 633, 633, 574, 574, 574, 574, 574, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+
+ 574, 574, 574, 574, 574, 574, 574, 574, 633, 633,
+ 633, 633, 632, 633, 633, 634, 633, 571, 572, 571,
+ 573, 571, 572, 571, 573, 571, 572, 571, 573, 571,
+ 572, 571, 573, 586, 587, 586, 588, 618, 619, 618,
+ 618, 674, 561, 618, 619, 618, 618, 562, 561, 674,
+ 674, 674, 674, 562, 674, 674, 674, 674, 563, 571,
+ 572, 571, 573, 674, 563, 636, 674, 674, 635, 637,
+ 674, 674, 589, 674, 590, 576, 639, 572, 639, 640,
+ 573, 583, 674, 575, 573, 591, 674, 575, 573, 592,
+ 674, 575, 573, 674, 674, 575, 588, 674, 674, 593,
+
+ 618, 674, 674, 638, 674, 674, 618, 674, 642, 638,
+ 579, 580, 572, 580, 581, 586, 587, 586, 588, 674,
+ 674, 583, 644, 674, 674, 575, 606, 607, 606, 608,
+ 571, 572, 571, 571, 571, 572, 571, 571, 674, 640,
+ 674, 674, 643, 584, 571, 572, 571, 573, 571, 572,
+ 571, 573, 674, 674, 589, 674, 590, 571, 572, 571,
+ 573, 674, 674, 674, 674, 674, 674, 591, 674, 674,
+ 674, 592, 674, 674, 581, 674, 674, 585, 588, 674,
+ 674, 593, 674, 674, 674, 674, 674, 674, 674, 608,
+ 674, 674, 609, 571, 674, 674, 599, 571, 674, 674,
+
+ 599, 674, 674, 674, 674, 674, 674, 573, 674, 674,
+ 575, 573, 674, 674, 575, 674, 674, 674, 674, 674,
+ 600, 674, 674, 575, 473, 649, 650, 649, 651, 652,
+ 652, 652, 652, 652, 652, 652, 652, 652, 652, 652,
+ 652, 652, 652, 574, 574, 574, 652, 652, 652, 652,
+ 574, 574, 574, 574, 574, 574, 652, 574, 652, 652,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 574, 574, 652, 652, 652, 652, 651, 652,
+ 652, 653, 652, 571, 572, 571, 573, 571, 572, 571,
+
+ 573, 571, 572, 571, 573, 639, 572, 639, 639, 674,
+ 577, 576, 639, 572, 639, 640, 674, 583, 576, 639,
+ 572, 639, 640, 674, 583, 576, 639, 657, 639, 640,
+ 674, 674, 576, 639, 572, 639, 640, 578, 583, 674,
+ 674, 674, 674, 655, 642, 674, 654, 571, 572, 571,
+ 571, 642, 571, 572, 571, 571, 573, 674, 674, 575,
+ 573, 674, 674, 575, 644, 642, 674, 575, 639, 674,
+ 674, 656, 674, 674, 674, 640, 674, 674, 643, 674,
+ 674, 674, 640, 674, 674, 643, 674, 674, 674, 640,
+ 674, 674, 643, 674, 674, 674, 658, 674, 674, 643,
+
+ 560, 618, 619, 618, 594, 674, 621, 674, 674, 674,
+ 571, 622, 674, 599, 674, 571, 674, 674, 599, 674,
+ 674, 674, 623, 571, 572, 571, 573, 571, 572, 571,
+ 573, 571, 572, 571, 573, 571, 572, 571, 573, 571,
+ 572, 571, 573, 639, 572, 639, 639, 674, 577, 576,
+ 639, 572, 639, 640, 674, 583, 571, 572, 571, 573,
+ 674, 674, 674, 674, 594, 674, 674, 624, 674, 674,
+ 674, 674, 674, 661, 674, 578, 674, 674, 674, 662,
+ 674, 674, 642, 674, 674, 674, 573, 674, 674, 575,
+ 573, 674, 674, 575, 600, 674, 674, 575, 573, 663,
+
+ 674, 575, 573, 674, 674, 575, 639, 674, 674, 656,
+ 674, 674, 674, 640, 674, 674, 643, 674, 674, 573,
+ 674, 674, 575, 533, 664, 665, 664, 666, 667, 667,
+ 667, 667, 667, 667, 667, 667, 667, 667, 667, 667,
+ 667, 667, 574, 574, 574, 667, 667, 667, 667, 574,
+ 574, 574, 574, 574, 574, 667, 574, 667, 667, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 574, 667, 667, 667, 667, 666, 667, 667,
+ 668, 667, 551, 669, 670, 669, 671, 672, 672, 672,
+
+ 672, 672, 672, 672, 672, 672, 672, 672, 672, 672,
+ 672, 574, 574, 574, 672, 672, 672, 672, 574, 574,
+ 574, 574, 574, 574, 672, 574, 672, 672, 574, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 672, 672, 672, 672, 671, 672, 672, 673,
+ 672, 571, 572, 571, 571, 571, 572, 571, 571, 571,
+ 572, 571, 573, 571, 572, 571, 573, 571, 572, 571,
+ 573, 571, 572, 571, 571, 571, 572, 571, 571, 571,
+ 572, 571, 573, 571, 572, 571, 573, 571, 572, 571,
+
+ 573, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 571, 674, 674, 599, 571, 674,
+ 674, 599, 573, 674, 674, 575, 573, 674, 674, 575,
+ 600, 674, 674, 575, 571, 674, 674, 599, 571, 674,
+ 674, 599, 573, 674, 674, 575, 573, 674, 674, 575,
+ 600, 674, 674, 575, 120, 120, 120, 120, 120, 120,
+ 120, 120, 120, 120, 120, 120, 120, 120, 120, 137,
+ 137, 674, 137, 137, 137, 137, 137, 137, 137, 137,
+ 137, 137, 137, 137, 140, 674, 140, 140, 140, 144,
+
+ 144, 674, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 156, 156, 156, 156, 156, 156,
+ 156, 156, 674, 674, 674, 156, 156, 156, 156, 170,
+ 170, 674, 674, 170, 170, 674, 170, 170, 170, 170,
+ 170, 674, 170, 226, 226, 674, 226, 226, 226, 226,
+ 226, 226, 226, 226, 226, 226, 226, 226, 231, 231,
+ 231, 231, 231, 231, 231, 231, 674, 674, 674, 231,
+ 231, 231, 231, 237, 237, 237, 237, 237, 237, 237,
+ 674, 237, 237, 237, 237, 237, 237, 237, 239, 239,
+ 239, 239, 239, 239, 239, 239, 239, 239, 239, 239,
+
+ 239, 239, 239, 241, 241, 674, 241, 674, 241, 241,
+ 241, 241, 241, 245, 674, 674, 245, 245, 245, 245,
+ 245, 247, 247, 247, 247, 247, 247, 247, 247, 674,
+ 674, 674, 247, 674, 247, 247, 249, 249, 249, 249,
+ 249, 249, 249, 249, 249, 249, 249, 249, 249, 249,
+ 249, 252, 252, 252, 252, 252, 252, 252, 252, 252,
+ 252, 252, 252, 252, 252, 252, 257, 257, 674, 674,
+ 257, 674, 674, 257, 257, 318, 318, 318, 318, 318,
+ 318, 318, 318, 674, 674, 674, 318, 318, 318, 318,
+ 322, 322, 322, 322, 322, 322, 322, 322, 674, 674,
+
+ 674, 322, 674, 322, 322, 325, 325, 325, 325, 325,
+ 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
+ 334, 334, 674, 674, 334, 674, 674, 334, 334, 338,
+ 674, 674, 338, 674, 338, 338, 338, 338, 338, 248,
+ 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
+ 248, 248, 248, 248, 395, 395, 395, 395, 395, 395,
+ 395, 395, 674, 674, 674, 395, 674, 395, 395, 399,
+ 399, 674, 674, 399, 674, 674, 399, 399, 400, 674,
+ 674, 400, 400, 324, 324, 324, 324, 324, 324, 324,
+ 324, 324, 324, 324, 324, 324, 324, 324, 343, 343,
+
+ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343,
+ 343, 343, 343, 420, 420, 420, 420, 420, 674, 420,
+ 420, 674, 674, 674, 674, 674, 420, 420, 461, 461,
+ 461, 461, 461, 461, 461, 461, 461, 461, 461, 461,
+ 461, 461, 461, 467, 467, 467, 467, 467, 467, 467,
+ 467, 467, 467, 467, 467, 467, 467, 467, 469, 469,
+ 469, 469, 469, 469, 469, 469, 469, 469, 469, 469,
+ 469, 469, 469, 473, 473, 473, 473, 473, 674, 473,
+ 473, 674, 674, 674, 674, 674, 473, 473, 533, 533,
+ 533, 533, 533, 674, 533, 533, 674, 674, 674, 674,
+
+ 674, 533, 533, 551, 551, 551, 551, 551, 674, 551,
+ 551, 674, 674, 674, 674, 674, 551, 551, 560, 560,
+ 560, 560, 560, 560, 560, 560, 560, 560, 560, 560,
+ 560, 560, 560, 566, 566, 566, 566, 566, 566, 566,
+ 566, 566, 566, 566, 566, 566, 566, 566, 574, 574,
+ 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
+ 574, 574, 576, 576, 674, 576, 576, 576, 576, 576,
+ 576, 576, 576, 576, 576, 576, 576, 582, 582, 582,
+ 582, 582, 582, 582, 582, 582, 582, 582, 582, 582,
+ 582, 582, 595, 595, 595, 595, 595, 595, 595, 595,
+
+ 595, 595, 595, 595, 595, 595, 595, 579, 579, 674,
+ 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
+ 579, 579, 620, 620, 620, 620, 620, 620, 620, 620,
+ 620, 620, 620, 620, 620, 620, 620, 641, 641, 641,
+ 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
+ 641, 641, 13, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674
} ;
-static yyconst flex_int16_t yy_chk[2627] =
+static yyconst flex_int16_t yy_chk[4023] =
{ 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, 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,
- 3, 3, 3, 3, 3, 3, 3, 4, 4, 4,
- 4, 4, 4, 4, 5, 5, 5, 5, 5, 5,
- 5, 6, 6, 6, 6, 6, 6, 6, 12, 19,
- 16, 20, 29, 29, 140, 4, 495, 22, 19, 20,
-
- 21, 22, 21, 21, 21, 87, 87, 22, 140, 6,
- 16, 27, 23, 12, 23, 23, 23, 24, 463, 24,
- 24, 24, 25, 49, 25, 25, 25, 445, 27, 27,
- 30, 30, 30, 32, 32, 32, 60, 33, 33, 33,
- 34, 34, 34, 35, 35, 35, 229, 46, 428, 30,
- 229, 23, 32, 46, 46, 25, 33, 49, 46, 34,
- 65, 60, 35, 442, 36, 36, 36, 419, 37, 37,
- 37, 442, 34, 38, 38, 38, 73, 73, 73, 35,
- 65, 32, 34, 36, 33, 34, 418, 37, 35, 74,
- 74, 74, 38, 39, 39, 39, 36, 35, 415, 426,
-
- 37, 74, 47, 40, 406, 74, 36, 40, 37, 38,
- 47, 40, 39, 37, 41, 47, 40, 36, 37, 392,
- 47, 40, 41, 415, 426, 55, 143, 41, 391, 55,
- 39, 42, 41, 41, 43, 55, 39, 39, 43, 42,
- 143, 39, 43, 55, 42, 144, 42, 43, 48, 42,
- 44, 372, 43, 371, 44, 48, 48, 455, 44, 144,
- 429, 48, 370, 44, 45, 455, 48, 44, 44, 344,
- 44, 45, 45, 77, 77, 77, 464, 45, 343, 45,
- 429, 341, 45, 52, 464, 52, 45, 52, 52, 52,
- 53, 53, 52, 53, 53, 53, 301, 54, 53, 54,
-
- 54, 54, 56, 300, 56, 56, 56, 57, 297, 57,
- 57, 57, 58, 289, 58, 58, 58, 78, 283, 78,
- 78, 78, 89, 88, 88, 88, 241, 240, 89, 89,
- 90, 90, 90, 89, 136, 136, 136, 91, 239, 92,
- 92, 56, 88, 91, 91, 58, 92, 92, 91, 93,
- 94, 92, 139, 139, 139, 93, 93, 236, 94, 235,
- 93, 93, 232, 94, 95, 90, 97, 90, 94, 228,
- 95, 95, 97, 97, 96, 95, 222, 97, 90, 96,
- 96, 96, 90, 98, 217, 96, 169, 168, 99, 98,
- 98, 99, 167, 100, 98, 166, 285, 99, 99, 100,
-
- 100, 101, 99, 164, 100, 160, 285, 101, 101, 102,
- 285, 103, 101, 101, 102, 102, 102, 103, 103, 104,
- 102, 105, 103, 159, 285, 104, 104, 105, 105, 104,
- 104, 106, 105, 107, 145, 145, 145, 106, 106, 107,
- 107, 108, 106, 106, 107, 158, 154, 108, 108, 109,
- 108, 110, 108, 153, 147, 109, 109, 110, 110, 111,
- 109, 109, 110, 134, 85, 111, 111, 112, 114, 114,
- 111, 111, 83, 112, 112, 114, 114, 82, 112, 113,
- 114, 116, 112, 80, 113, 113, 113, 79, 115, 116,
- 113, 115, 117, 117, 116, 118, 75, 115, 115, 116,
-
- 117, 119, 115, 118, 72, 117, 66, 120, 118, 119,
- 117, 62, 118, 118, 119, 120, 121, 59, 119, 119,
- 120, 51, 50, 122, 121, 120, 173, 123, 28, 121,
- 121, 122, 173, 173, 121, 123, 122, 173, 124, 125,
- 123, 122, 123, 26, 18, 123, 124, 125, 156, 156,
- 156, 124, 125, 125, 15, 126, 124, 125, 126, 14,
- 124, 127, 128, 126, 11, 127, 7, 2, 126, 127,
- 128, 0, 0, 126, 127, 128, 129, 128, 130, 127,
- 128, 174, 131, 0, 129, 0, 130, 174, 174, 129,
- 131, 130, 174, 174, 129, 131, 130, 0, 135, 131,
-
- 131, 135, 137, 0, 137, 137, 137, 135, 135, 141,
- 141, 141, 135, 135, 138, 0, 138, 138, 138, 0,
- 146, 141, 146, 146, 146, 141, 150, 150, 150, 0,
- 0, 151, 151, 151, 152, 152, 152, 0, 150, 141,
- 170, 137, 142, 151, 0, 181, 152, 0, 170, 0,
- 152, 181, 181, 170, 0, 0, 181, 0, 170, 0,
- 0, 165, 165, 165, 142, 142, 142, 142, 142, 215,
- 215, 215, 0, 142, 142, 142, 142, 142, 142, 142,
- 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
- 142, 142, 142, 142, 142, 142, 165, 171, 165, 0,
-
- 0, 171, 0, 175, 172, 171, 172, 0, 0, 165,
- 171, 175, 172, 165, 0, 171, 175, 172, 177, 176,
- 0, 175, 172, 176, 0, 0, 177, 176, 0, 0,
- 179, 177, 176, 178, 179, 0, 177, 176, 179, 182,
- 178, 178, 183, 179, 0, 180, 178, 182, 179, 180,
- 183, 178, 182, 180, 184, 183, 184, 182, 180, 0,
- 183, 185, 184, 180, 0, 186, 0, 184, 187, 185,
- 0, 0, 184, 186, 185, 186, 187, 0, 186, 185,
- 188, 187, 0, 186, 188, 187, 187, 189, 188, 190,
- 0, 189, 0, 188, 0, 189, 191, 190, 188, 0,
-
- 189, 0, 190, 192, 191, 189, 0, 190, 0, 191,
- 193, 192, 0, 192, 191, 0, 192, 0, 193, 195,
- 0, 192, 194, 193, 0, 193, 196, 195, 193, 0,
- 194, 194, 195, 0, 196, 194, 0, 195, 195, 196,
- 194, 197, 198, 196, 196, 199, 0, 0, 200, 197,
- 198, 197, 0, 199, 197, 198, 200, 0, 199, 197,
- 198, 200, 202, 199, 201, 200, 200, 0, 201, 0,
- 202, 0, 201, 203, 0, 202, 0, 201, 0, 202,
- 202, 203, 201, 245, 204, 205, 203, 0, 204, 245,
- 245, 203, 204, 205, 245, 0, 206, 204, 205, 0,
-
- 206, 0, 204, 205, 206, 208, 0, 207, 209, 206,
- 0, 207, 0, 208, 206, 207, 209, 0, 208, 210,
- 207, 209, 210, 208, 0, 207, 209, 210, 211, 216,
- 216, 216, 210, 0, 0, 212, 211, 210, 211, 214,
- 0, 211, 212, 212, 0, 0, 211, 214, 212, 214,
- 0, 0, 214, 212, 219, 219, 219, 214, 0, 220,
- 220, 220, 221, 221, 221, 0, 219, 223, 223, 223,
- 219, 220, 0, 0, 221, 220, 0, 242, 221, 223,
- 226, 226, 226, 223, 219, 242, 242, 0, 0, 220,
- 242, 0, 221, 0, 0, 242, 0, 223, 225, 225,
-
- 0, 225, 225, 225, 225, 225, 225, 225, 225, 225,
- 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
- 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
- 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
- 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
- 225, 225, 225, 225, 225, 225, 225, 225, 230, 230,
- 230, 231, 231, 231, 233, 233, 233, 281, 281, 281,
- 230, 243, 0, 231, 244, 0, 233, 231, 247, 243,
- 233, 244, 244, 0, 243, 248, 247, 244, 246, 243,
- 0, 247, 244, 248, 246, 246, 247, 249, 248, 246,
-
- 246, 250, 0, 248, 0, 249, 0, 250, 250, 0,
- 249, 251, 250, 252, 249, 249, 0, 251, 251, 252,
- 252, 253, 251, 0, 252, 0, 0, 253, 253, 254,
- 254, 0, 253, 255, 0, 0, 254, 254, 255, 255,
- 255, 254, 256, 0, 255, 414, 414, 414, 256, 256,
- 257, 257, 0, 256, 256, 259, 0, 257, 257, 258,
- 0, 0, 257, 259, 260, 258, 258, 0, 259, 258,
- 258, 0, 260, 259, 261, 0, 0, 260, 265, 260,
- 261, 261, 260, 262, 0, 261, 265, 0, 0, 262,
- 262, 265, 263, 0, 262, 264, 265, 262, 263, 263,
-
- 266, 264, 264, 263, 268, 264, 264, 267, 266, 0,
- 0, 267, 268, 266, 0, 267, 269, 268, 266, 270,
- 267, 0, 268, 0, 269, 267, 0, 270, 271, 269,
- 0, 269, 270, 0, 269, 0, 271, 270, 276, 273,
- 272, 271, 272, 271, 276, 276, 271, 273, 272, 276,
- 0, 0, 273, 272, 274, 275, 0, 273, 272, 273,
- 0, 0, 274, 275, 277, 0, 0, 274, 275, 0,
- 277, 277, 274, 275, 279, 277, 278, 278, 280, 0,
- 279, 279, 0, 278, 278, 279, 280, 0, 278, 0,
- 0, 280, 422, 422, 422, 0, 280, 286, 286, 286,
-
- 286, 286, 286, 286, 286, 286, 286, 286, 286, 286,
- 286, 286, 286, 286, 286, 286, 286, 286, 286, 286,
- 286, 286, 286, 286, 286, 286, 286, 286, 286, 286,
- 286, 286, 286, 286, 286, 286, 286, 286, 286, 286,
- 286, 286, 286, 286, 286, 286, 286, 286, 286, 286,
- 286, 286, 286, 286, 286, 286, 286, 287, 287, 287,
- 288, 288, 288, 290, 290, 290, 294, 294, 294, 287,
- 0, 0, 288, 287, 306, 290, 288, 314, 294, 290,
- 306, 306, 294, 314, 314, 306, 0, 287, 314, 0,
- 288, 0, 0, 290, 291, 291, 291, 291, 291, 291,
-
- 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
- 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
- 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
- 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
- 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
- 291, 291, 291, 291, 302, 303, 304, 305, 423, 423,
- 423, 0, 302, 303, 304, 305, 0, 302, 303, 304,
- 305, 307, 302, 303, 304, 305, 307, 307, 307, 308,
- 308, 309, 307, 0, 311, 310, 308, 308, 310, 309,
- 0, 308, 311, 310, 309, 0, 312, 311, 310, 309,
-
- 313, 0, 311, 310, 312, 315, 312, 0, 313, 312,
- 0, 315, 315, 313, 312, 316, 315, 315, 313, 0,
- 0, 316, 316, 317, 0, 0, 316, 0, 320, 317,
- 317, 318, 0, 0, 317, 0, 320, 318, 318, 321,
- 318, 320, 318, 319, 319, 321, 320, 321, 322, 0,
- 319, 319, 321, 0, 0, 319, 322, 321, 0, 0,
- 323, 322, 323, 0, 0, 322, 322, 324, 323, 324,
- 325, 0, 0, 323, 0, 324, 325, 325, 323, 326,
- 324, 325, 326, 0, 327, 324, 0, 0, 326, 326,
- 327, 327, 328, 326, 328, 327, 0, 331, 328, 328,
-
- 329, 0, 330, 328, 332, 331, 329, 329, 330, 330,
- 331, 329, 332, 330, 0, 331, 333, 332, 0, 333,
- 0, 0, 332, 0, 333, 335, 335, 335, 0, 333,
- 336, 336, 336, 0, 333, 345, 0, 335, 338, 338,
- 338, 335, 336, 345, 346, 0, 336, 0, 345, 0,
- 338, 347, 346, 345, 338, 335, 0, 346, 0, 347,
- 336, 346, 346, 348, 347, 348, 349, 0, 338, 347,
- 0, 348, 349, 349, 351, 352, 348, 349, 350, 352,
- 0, 348, 351, 352, 350, 350, 353, 351, 352, 350,
- 0, 0, 351, 352, 353, 350, 368, 355, 354, 353,
-
- 354, 356, 368, 368, 353, 355, 354, 368, 0, 356,
- 355, 354, 357, 358, 356, 355, 354, 0, 0, 356,
- 357, 358, 0, 0, 359, 357, 358, 359, 0, 0,
- 357, 358, 359, 362, 0, 360, 361, 359, 0, 360,
- 361, 362, 359, 360, 361, 0, 362, 363, 360, 361,
- 362, 362, 0, 360, 361, 363, 364, 0, 365, 366,
- 363, 0, 367, 0, 364, 363, 365, 366, 0, 364,
- 367, 365, 366, 0, 364, 367, 365, 366, 369, 369,
- 367, 374, 374, 0, 0, 369, 369, 0, 374, 374,
- 369, 375, 0, 374, 376, 0, 0, 375, 375, 0,
-
- 376, 376, 375, 377, 0, 376, 378, 0, 0, 377,
- 377, 0, 378, 378, 377, 379, 0, 378, 380, 0,
- 0, 379, 379, 0, 380, 380, 379, 381, 381, 380,
- 424, 424, 424, 382, 381, 381, 382, 0, 0, 381,
- 0, 0, 382, 382, 383, 0, 0, 382, 0, 383,
- 383, 383, 0, 384, 0, 383, 384, 385, 385, 390,
- 390, 390, 384, 384, 385, 385, 386, 384, 387, 385,
- 0, 0, 386, 386, 387, 387, 0, 386, 390, 387,
- 388, 388, 389, 389, 395, 395, 395, 388, 388, 389,
- 389, 0, 388, 398, 389, 396, 396, 396, 397, 397,
-
- 397, 398, 400, 395, 0, 399, 398, 0, 401, 399,
- 400, 398, 401, 399, 396, 400, 401, 397, 399, 402,
- 400, 401, 403, 399, 0, 403, 401, 402, 404, 0,
- 403, 404, 402, 0, 0, 403, 404, 402, 0, 0,
- 403, 404, 425, 425, 425, 0, 404, 397, 405, 405,
- 405, 0, 405, 408, 0, 409, 0, 405, 0, 408,
- 408, 409, 409, 410, 408, 411, 409, 405, 0, 410,
- 410, 411, 411, 412, 410, 413, 411, 0, 0, 412,
- 412, 413, 413, 0, 412, 0, 413, 416, 416, 416,
- 416, 417, 417, 417, 420, 0, 421, 416, 0, 0,
-
- 420, 420, 421, 421, 0, 420, 0, 421, 427, 427,
- 427, 430, 430, 430, 433, 433, 433, 416, 0, 0,
- 430, 431, 431, 431, 431, 0, 417, 0, 417, 0,
- 0, 431, 432, 432, 432, 432, 435, 435, 435, 417,
- 430, 0, 432, 417, 434, 434, 434, 434, 436, 436,
- 436, 431, 0, 0, 437, 437, 437, 0, 438, 438,
- 438, 0, 432, 439, 439, 439, 440, 440, 440, 0,
- 0, 435, 0, 435, 441, 441, 441, 443, 443, 443,
- 444, 444, 444, 436, 435, 436, 0, 0, 435, 437,
- 0, 437, 446, 446, 446, 0, 436, 447, 447, 447,
-
- 436, 0, 437, 438, 0, 0, 437, 0, 439, 448,
- 448, 448, 0, 441, 449, 449, 449, 0, 440, 456,
- 456, 456, 0, 449, 451, 451, 451, 0, 452, 452,
- 452, 0, 453, 453, 453, 457, 457, 457, 458, 458,
- 458, 0, 0, 449, 450, 450, 450, 450, 450, 450,
- 450, 450, 450, 450, 450, 450, 450, 450, 450, 450,
- 450, 459, 459, 459, 450, 450, 450, 450, 452, 0,
- 0, 451, 453, 450, 0, 450, 465, 465, 465, 461,
- 461, 461, 466, 466, 466, 0, 0, 462, 462, 462,
- 467, 467, 467, 468, 468, 468, 469, 469, 469, 0,
-
- 450, 450, 450, 450, 460, 460, 460, 460, 460, 460,
- 460, 460, 460, 460, 460, 460, 460, 460, 460, 460,
- 460, 470, 470, 470, 460, 460, 460, 460, 461, 462,
- 469, 0, 0, 460, 0, 460, 471, 471, 471, 474,
- 474, 474, 475, 475, 475, 476, 476, 476, 477, 477,
- 477, 478, 478, 478, 479, 479, 479, 470, 0, 0,
- 460, 460, 460, 460, 480, 480, 480, 481, 481, 481,
- 0, 0, 0, 0, 0, 471, 472, 472, 472, 472,
- 472, 472, 472, 472, 472, 472, 472, 472, 472, 472,
- 472, 472, 472, 0, 0, 0, 472, 472, 472, 472,
-
- 0, 0, 0, 0, 0, 472, 0, 472, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 472, 472, 472, 472, 473, 473, 473, 473,
- 473, 473, 473, 473, 473, 473, 473, 473, 473, 473,
- 473, 473, 473, 0, 0, 0, 473, 473, 473, 473,
- 0, 0, 0, 0, 0, 473, 0, 473, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 6, 7,
+ 7, 7, 7, 7, 7, 7, 8, 8, 8, 8,
+ 8, 8, 8, 6, 9, 17, 20, 10, 25, 21,
+ 26, 27, 28, 27, 27, 27, 28, 25, 26, 33,
+ 20, 66, 28, 35, 35, 9, 8, 9, 10, 42,
+ 10, 21, 17, 69, 7, 41, 41, 33, 33, 42,
+ 43, 8, 42, 46, 42, 42, 659, 69, 66, 43,
+
+ 47, 43, 43, 647, 46, 46, 47, 47, 43, 628,
+ 47, 47, 9, 84, 84, 10, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 11, 11, 11, 11, 29, 612, 29, 29, 29,
+ 30, 58, 30, 30, 30, 31, 604, 31, 31, 31,
+
+ 36, 36, 36, 36, 37, 37, 37, 37, 44, 29,
+ 137, 49, 49, 54, 30, 49, 54, 54, 44, 31,
+ 603, 36, 599, 44, 44, 37, 29, 50, 58, 44,
+ 31, 30, 40, 40, 40, 40, 31, 137, 51, 45,
+ 37, 596, 50, 50, 48, 50, 70, 45, 48, 51,
+ 51, 107, 45, 40, 45, 45, 53, 45, 595, 48,
+ 48, 52, 48, 36, 53, 53, 36, 37, 70, 236,
+ 37, 53, 52, 52, 52, 52, 55, 52, 56, 56,
+ 85, 85, 578, 40, 40, 236, 56, 56, 107, 55,
+ 62, 55, 55, 90, 90, 40, 62, 62, 40, 238,
+
+ 62, 62, 74, 568, 74, 567, 74, 74, 74, 75,
+ 75, 74, 75, 75, 75, 238, 76, 75, 76, 76,
+ 76, 77, 566, 82, 78, 77, 78, 78, 78, 86,
+ 79, 77, 79, 79, 79, 80, 91, 80, 80, 80,
+ 77, 82, 82, 565, 86, 86, 91, 93, 78, 91,
+ 114, 91, 91, 144, 79, 92, 339, 93, 114, 80,
+ 339, 135, 93, 93, 92, 78, 92, 92, 93, 94,
+ 80, 79, 113, 92, 553, 144, 80, 94, 95, 98,
+ 98, 113, 94, 98, 94, 94, 96, 94, 100, 95,
+ 95, 97, 96, 96, 550, 97, 96, 96, 99, 100,
+
+ 100, 103, 102, 135, 103, 103, 97, 97, 101, 97,
+ 102, 102, 104, 99, 99, 561, 99, 102, 549, 101,
+ 101, 101, 101, 548, 101, 104, 576, 104, 104, 105,
+ 105, 537, 115, 111, 115, 115, 115, 105, 105, 111,
+ 111, 116, 561, 111, 111, 116, 117, 579, 117, 117,
+ 117, 116, 118, 576, 118, 118, 118, 119, 531, 119,
+ 119, 119, 152, 152, 152, 153, 153, 153, 153, 579,
+ 117, 154, 154, 157, 157, 157, 118, 168, 168, 153,
+ 530, 119, 527, 153, 152, 468, 158, 117, 158, 158,
+ 158, 173, 119, 118, 468, 157, 170, 170, 119, 159,
+
+ 159, 159, 169, 169, 169, 169, 171, 171, 171, 171,
+ 158, 175, 507, 173, 173, 176, 176, 177, 179, 506,
+ 175, 175, 505, 169, 178, 178, 178, 158, 177, 177,
+ 182, 182, 180, 179, 179, 180, 180, 183, 181, 184,
+ 183, 183, 226, 181, 229, 171, 502, 171, 181, 181,
+ 185, 185, 184, 184, 186, 186, 186, 226, 171, 229,
+ 188, 187, 171, 188, 188, 169, 187, 187, 169, 171,
+ 189, 189, 171, 190, 192, 192, 190, 190, 191, 191,
+ 191, 193, 193, 193, 194, 194, 194, 195, 195, 196,
+ 475, 197, 197, 196, 196, 196, 197, 198, 199, 200,
+
+ 201, 202, 198, 198, 474, 201, 472, 201, 201, 199,
+ 199, 205, 200, 200, 471, 202, 202, 203, 203, 203,
+ 204, 204, 204, 206, 206, 206, 205, 205, 207, 208,
+ 208, 209, 209, 211, 209, 207, 207, 212, 209, 210,
+ 210, 210, 213, 213, 214, 211, 211, 215, 212, 212,
+ 221, 214, 214, 470, 215, 215, 216, 216, 216, 222,
+ 222, 222, 470, 221, 221, 221, 223, 469, 223, 223,
+ 223, 224, 230, 224, 224, 224, 225, 225, 225, 232,
+ 232, 232, 227, 227, 227, 227, 467, 230, 503, 233,
+ 223, 233, 233, 233, 423, 224, 227, 503, 225, 422,
+
+ 227, 232, 234, 234, 234, 252, 252, 223, 248, 248,
+ 248, 248, 224, 233, 504, 227, 228, 228, 249, 249,
+ 249, 249, 248, 504, 254, 254, 254, 255, 255, 255,
+ 233, 419, 249, 270, 270, 271, 271, 415, 271, 414,
+ 228, 228, 228, 228, 228, 228, 254, 275, 275, 255,
+ 413, 228, 228, 228, 228, 228, 228, 228, 228, 228,
+ 228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
+ 228, 228, 228, 228, 250, 250, 250, 250, 273, 276,
+ 276, 276, 283, 283, 285, 285, 287, 287, 250, 273,
+ 273, 405, 250, 256, 256, 256, 256, 256, 256, 256,
+
+ 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
+ 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
+ 256, 256, 256, 256, 256, 256, 354, 256, 256, 353,
+ 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
+ 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
+ 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
+ 256, 256, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 257, 257, 257, 352, 257, 257, 349, 257,
+
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 264, 264, 264, 264, 272, 278, 280, 288, 274,
+ 277, 288, 279, 288, 288, 280, 280, 278, 278, 281,
+ 272, 272, 274, 274, 282, 277, 277, 279, 279, 284,
+ 281, 281, 597, 286, 348, 282, 282, 289, 289, 289,
+ 264, 597, 264, 290, 284, 284, 286, 286, 291, 293,
+ 293, 295, 295, 264, 290, 290, 294, 264, 292, 291,
+ 291, 294, 294, 296, 264, 292, 292, 264, 299, 296,
+
+ 296, 297, 297, 299, 299, 297, 298, 298, 298, 300,
+ 300, 303, 300, 301, 301, 302, 302, 302, 304, 304,
+ 304, 306, 303, 303, 305, 308, 305, 305, 307, 307,
+ 309, 312, 306, 306, 310, 310, 308, 308, 311, 311,
+ 313, 309, 309, 312, 312, 313, 313, 314, 316, 317,
+ 317, 317, 342, 316, 316, 314, 314, 319, 319, 319,
+ 320, 320, 320, 324, 324, 324, 324, 331, 331, 331,
+ 337, 317, 325, 325, 325, 325, 625, 324, 336, 319,
+ 335, 324, 332, 332, 332, 625, 325, 357, 357, 331,
+ 325, 327, 326, 326, 326, 326, 324, 328, 328, 328,
+
+ 328, 359, 359, 355, 332, 325, 326, 355, 355, 321,
+ 326, 328, 360, 360, 360, 328, 356, 269, 340, 340,
+ 340, 340, 356, 356, 627, 326, 358, 365, 365, 361,
+ 328, 330, 340, 627, 358, 358, 361, 361, 268, 330,
+ 330, 330, 330, 330, 330, 267, 330, 363, 363, 363,
+ 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
+ 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
+ 330, 330, 330, 333, 333, 333, 333, 333, 333, 333,
+ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
+ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
+
+ 333, 333, 333, 333, 333, 333, 266, 333, 333, 265,
+ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
+ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
+ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
+ 333, 333, 334, 334, 334, 334, 334, 334, 334, 334,
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+ 334, 334, 334, 334, 334, 263, 334, 334, 259, 334,
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+
+ 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
+ 334, 341, 341, 341, 341, 646, 343, 343, 343, 343,
+ 362, 362, 364, 362, 646, 341, 364, 364, 368, 341,
+ 343, 366, 366, 367, 343, 373, 367, 367, 369, 368,
+ 368, 371, 258, 369, 369, 370, 370, 370, 372, 372,
+ 373, 373, 371, 371, 374, 374, 375, 375, 376, 376,
+ 377, 377, 376, 378, 378, 379, 381, 380, 382, 383,
+ 383, 385, 385, 388, 388, 382, 382, 381, 381, 384,
+ 379, 379, 380, 380, 386, 251, 384, 384, 387, 387,
+ 390, 243, 389, 387, 389, 389, 392, 386, 386, 241,
+
+ 390, 390, 391, 391, 393, 393, 239, 392, 392, 394,
+ 394, 235, 394, 396, 396, 396, 397, 397, 397, 416,
+ 416, 416, 416, 425, 425, 426, 426, 427, 427, 428,
+ 428, 434, 434, 416, 220, 396, 172, 416, 397, 398,
+ 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
+ 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
+ 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
+ 398, 398, 166, 398, 398, 164, 398, 398, 398, 398,
+ 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
+ 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
+
+ 398, 398, 398, 398, 398, 398, 398, 398, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,
+ 399, 163, 399, 399, 161, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,
+ 399, 399, 399, 399, 399, 399, 399, 401, 160, 424,
+ 403, 403, 403, 403, 151, 404, 404, 404, 404, 401,
+ 424, 424, 429, 401, 403, 429, 429, 437, 403, 404,
+
+ 430, 437, 437, 404, 431, 430, 430, 433, 401, 402,
+ 402, 402, 402, 403, 432, 431, 431, 145, 404, 433,
+ 433, 432, 432, 402, 435, 436, 438, 438, 438, 435,
+ 435, 442, 436, 436, 139, 402, 402, 402, 402, 402,
+ 402, 439, 442, 442, 439, 439, 402, 402, 402, 402,
+ 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
+ 402, 402, 402, 402, 402, 402, 402, 402, 402, 406,
+ 406, 406, 406, 136, 440, 441, 441, 441, 445, 445,
+ 445, 440, 443, 406, 440, 440, 444, 406, 448, 443,
+ 443, 448, 448, 450, 450, 444, 444, 452, 452, 455,
+
+ 455, 134, 406, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
+ 407, 407, 446, 451, 447, 476, 449, 129, 476, 476,
+ 127, 451, 451, 453, 454, 446, 446, 447, 447, 449,
+ 449, 454, 454, 453, 453, 456, 461, 461, 461, 461,
+
+ 648, 462, 462, 462, 462, 479, 479, 456, 456, 648,
+ 461, 478, 478, 478, 461, 462, 122, 477, 477, 462,
+ 477, 464, 464, 464, 464, 481, 481, 480, 110, 461,
+ 482, 482, 485, 485, 462, 464, 484, 482, 486, 464,
+ 480, 480, 483, 487, 483, 483, 488, 484, 484, 489,
+ 109, 486, 486, 88, 464, 490, 490, 491, 487, 487,
+ 492, 488, 488, 493, 489, 489, 494, 494, 494, 491,
+ 491, 492, 492, 83, 493, 493, 495, 495, 496, 496,
+ 497, 497, 498, 498, 499, 499, 500, 501, 81, 500,
+ 500, 509, 509, 509, 510, 512, 512, 605, 501, 501,
+
+ 511, 511, 511, 511, 73, 510, 510, 513, 513, 514,
+ 514, 515, 517, 516, 515, 515, 516, 516, 518, 605,
+ 519, 520, 68, 517, 517, 519, 519, 521, 522, 522,
+ 524, 518, 518, 525, 520, 520, 523, 523, 521, 521,
+ 65, 524, 524, 61, 525, 525, 526, 526, 526, 526,
+ 605, 511, 511, 534, 534, 535, 535, 536, 536, 536,
+ 536, 538, 538, 511, 541, 60, 511, 539, 539, 539,
+ 540, 543, 540, 540, 545, 541, 541, 546, 536, 542,
+ 542, 39, 543, 543, 544, 544, 545, 545, 34, 546,
+ 546, 552, 552, 554, 554, 660, 555, 526, 526, 32,
+
+ 547, 547, 547, 547, 660, 547, 555, 555, 24, 526,
+ 547, 19, 526, 16, 536, 556, 556, 557, 557, 13,
+ 536, 547, 5, 536, 558, 558, 559, 559, 560, 560,
+ 560, 560, 562, 562, 562, 562, 562, 563, 563, 563,
+ 563, 569, 569, 562, 564, 564, 564, 564, 570, 570,
+ 571, 571, 571, 571, 572, 572, 572, 572, 573, 573,
+ 573, 573, 4, 547, 2, 562, 547, 574, 574, 574,
+ 574, 575, 575, 575, 575, 0, 563, 0, 563, 577,
+ 577, 577, 577, 0, 0, 656, 0, 0, 0, 563,
+ 0, 560, 0, 563, 560, 0, 562, 0, 0, 562,
+
+ 563, 0, 0, 563, 0, 0, 0, 564, 0, 0,
+ 564, 0, 656, 571, 0, 0, 571, 572, 0, 0,
+ 572, 573, 0, 0, 573, 580, 580, 580, 580, 0,
+ 574, 0, 0, 574, 575, 580, 0, 575, 583, 583,
+ 583, 583, 577, 656, 0, 577, 0, 581, 581, 581,
+ 581, 581, 582, 582, 582, 582, 582, 580, 581, 0,
+ 0, 0, 0, 582, 584, 584, 584, 584, 584, 0,
+ 585, 585, 585, 585, 585, 0, 0, 0, 0, 0,
+ 581, 585, 0, 0, 0, 582, 0, 0, 580, 0,
+ 0, 580, 0, 0, 586, 586, 586, 586, 0, 0,
+
+ 0, 583, 0, 585, 583, 0, 587, 587, 587, 587,
+ 0, 581, 0, 0, 581, 0, 582, 0, 0, 582,
+ 0, 0, 588, 588, 588, 588, 0, 0, 584, 0,
+ 0, 584, 0, 586, 585, 586, 0, 585, 589, 589,
+ 589, 589, 0, 0, 0, 587, 586, 587, 0, 0,
+ 586, 590, 590, 590, 590, 0, 0, 586, 587, 0,
+ 586, 588, 587, 588, 591, 591, 591, 591, 0, 587,
+ 0, 0, 587, 0, 588, 0, 0, 0, 588, 592,
+ 592, 592, 592, 0, 0, 588, 0, 589, 588, 593,
+ 593, 593, 593, 600, 600, 600, 600, 0, 0, 0,
+
+ 590, 589, 0, 0, 589, 0, 0, 594, 594, 594,
+ 594, 594, 0, 594, 590, 0, 0, 590, 594, 0,
+ 591, 0, 592, 601, 601, 601, 601, 591, 0, 594,
+ 591, 602, 602, 602, 602, 606, 606, 606, 606, 0,
+ 0, 0, 592, 0, 0, 592, 607, 607, 607, 607,
+ 0, 0, 593, 0, 0, 593, 600, 0, 0, 600,
+ 608, 608, 608, 608, 609, 609, 609, 609, 0, 0,
+ 0, 594, 0, 0, 594, 610, 610, 610, 610, 0,
+ 611, 611, 611, 611, 611, 610, 601, 0, 0, 601,
+ 0, 611, 0, 0, 602, 0, 0, 602, 606, 0,
+
+ 0, 606, 0, 0, 0, 0, 0, 610, 0, 607,
+ 0, 0, 607, 611, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 608, 0, 0, 608, 609, 0, 0,
+ 609, 0, 0, 0, 0, 0, 0, 0, 610, 0,
+ 0, 610, 0, 0, 611, 0, 0, 611, 613, 613,
+ 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
+ 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
+ 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
+ 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
+ 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
+
+ 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
+ 613, 613, 613, 613, 613, 613, 613, 614, 614, 614,
+ 614, 615, 615, 615, 615, 616, 616, 616, 616, 620,
+ 620, 620, 620, 617, 617, 617, 617, 618, 618, 618,
+ 618, 0, 618, 619, 619, 619, 619, 618, 619, 0,
+ 0, 0, 0, 619, 0, 0, 0, 0, 618, 624,
+ 624, 624, 624, 0, 619, 615, 0, 0, 614, 616,
+ 0, 0, 617, 0, 617, 621, 621, 621, 621, 621,
+ 614, 621, 0, 614, 615, 617, 0, 615, 616, 617,
+ 0, 616, 620, 0, 0, 620, 617, 0, 0, 617,
+
+ 618, 0, 0, 618, 0, 0, 619, 0, 621, 619,
+ 622, 622, 622, 622, 622, 623, 623, 623, 623, 0,
+ 0, 622, 624, 0, 0, 624, 629, 629, 629, 629,
+ 630, 630, 630, 630, 631, 631, 631, 631, 0, 621,
+ 0, 0, 621, 622, 632, 632, 632, 632, 633, 633,
+ 633, 633, 0, 0, 623, 0, 623, 634, 634, 634,
+ 634, 0, 0, 0, 0, 0, 0, 623, 0, 0,
+ 0, 623, 0, 0, 622, 0, 0, 622, 623, 0,
+ 0, 623, 0, 0, 0, 0, 0, 0, 0, 629,
+ 0, 0, 629, 630, 0, 0, 630, 631, 0, 0,
+
+ 631, 0, 0, 0, 0, 0, 0, 632, 0, 0,
+ 632, 633, 0, 0, 633, 0, 0, 0, 0, 0,
+ 634, 0, 0, 634, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
+ 635, 635, 635, 636, 636, 636, 636, 637, 637, 637,
+
+ 637, 638, 638, 638, 638, 639, 639, 639, 639, 0,
+ 639, 640, 640, 640, 640, 640, 0, 640, 641, 641,
+ 641, 641, 641, 0, 641, 642, 642, 642, 642, 642,
+ 0, 0, 643, 643, 643, 643, 643, 639, 643, 0,
+ 0, 0, 0, 637, 640, 0, 636, 649, 649, 649,
+ 649, 641, 650, 650, 650, 650, 636, 0, 0, 636,
+ 637, 0, 0, 637, 638, 643, 0, 638, 639, 0,
+ 0, 639, 0, 0, 0, 640, 0, 0, 640, 0,
+ 0, 0, 641, 0, 0, 641, 0, 0, 0, 642,
+ 0, 0, 642, 0, 0, 0, 643, 0, 0, 643,
+
+ 644, 644, 644, 644, 644, 0, 644, 0, 0, 0,
+ 649, 644, 0, 649, 0, 650, 0, 0, 650, 0,
+ 0, 0, 644, 651, 651, 651, 651, 652, 652, 652,
+ 652, 653, 653, 653, 653, 654, 654, 654, 654, 655,
+ 655, 655, 655, 657, 657, 657, 657, 0, 657, 658,
+ 658, 658, 658, 658, 0, 658, 661, 661, 661, 661,
+ 0, 0, 0, 0, 644, 0, 0, 644, 0, 0,
+ 0, 0, 0, 654, 0, 657, 0, 0, 0, 655,
+ 0, 0, 658, 0, 0, 0, 651, 0, 0, 651,
+ 652, 0, 0, 652, 653, 0, 0, 653, 654, 661,
+
+ 0, 654, 655, 0, 0, 655, 657, 0, 0, 657,
+ 0, 0, 0, 658, 0, 0, 658, 0, 0, 661,
+ 0, 0, 661, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 662, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 662, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 662, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 662, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 662, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 662, 662, 662, 662, 662, 662, 662, 662,
+ 662, 662, 663, 663, 663, 663, 663, 663, 663, 663,
+
+ 663, 663, 663, 663, 663, 663, 663, 663, 663, 663,
+ 663, 663, 663, 663, 663, 663, 663, 663, 663, 663,
+ 663, 663, 663, 663, 663, 663, 663, 663, 663, 663,
+ 663, 663, 663, 663, 663, 663, 663, 663, 663, 663,
+ 663, 663, 663, 663, 663, 663, 663, 663, 663, 663,
+ 663, 663, 663, 663, 663, 663, 663, 663, 663, 663,
+ 663, 664, 664, 664, 664, 665, 665, 665, 665, 666,
+ 666, 666, 666, 667, 667, 667, 667, 668, 668, 668,
+ 668, 669, 669, 669, 669, 670, 670, 670, 670, 671,
+ 671, 671, 671, 672, 672, 672, 672, 673, 673, 673,
+
+ 673, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 473, 473, 473, 473, 483, 483, 0, 483,
-
- 483, 483, 483, 483, 484, 484, 0, 484, 484, 484,
- 484, 484, 485, 485, 0, 0, 485, 485, 485, 486,
- 486, 0, 486, 486, 486, 486, 486, 487, 487, 487,
- 487, 487, 487, 487, 487, 488, 488, 488, 488, 488,
- 488, 488, 488, 489, 489, 489, 490, 490, 490, 490,
- 490, 490, 490, 490, 491, 491, 491, 492, 492, 492,
- 492, 492, 492, 492, 492, 493, 493, 494, 494, 494,
- 496, 496, 496, 496, 496, 496, 496, 496, 497, 497,
- 498, 498, 498, 498, 498, 498, 498, 498, 499, 499,
- 499, 499, 499, 500, 500, 501, 501, 501, 501, 501,
-
- 501, 501, 501, 502, 502, 502, 502, 502, 503, 503,
- 503, 503, 503, 504, 504, 504, 504, 504, 505, 505,
- 505, 505, 505, 505, 505, 505, 506, 506, 506, 506,
- 506, 506, 506, 506, 507, 507, 507, 507, 507, 507,
- 507, 508, 508, 0, 508, 508, 508, 508, 508, 509,
- 509, 509, 509, 509, 509, 509, 509, 510, 510, 0,
- 510, 510, 510, 510, 510, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
-
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
- 482, 482, 482, 482, 482, 482
+ 0, 0, 0, 0, 664, 0, 0, 664, 665, 0,
+ 0, 665, 666, 0, 0, 666, 667, 0, 0, 667,
+ 668, 0, 0, 668, 669, 0, 0, 669, 670, 0,
+ 0, 670, 671, 0, 0, 671, 672, 0, 0, 672,
+ 673, 0, 0, 673, 675, 675, 675, 675, 675, 675,
+ 675, 675, 675, 675, 675, 675, 675, 675, 675, 676,
+ 676, 0, 676, 676, 676, 676, 676, 676, 676, 676,
+ 676, 676, 676, 676, 677, 0, 677, 677, 677, 678,
+
+ 678, 0, 678, 678, 678, 678, 678, 678, 678, 678,
+ 678, 678, 678, 678, 679, 679, 679, 679, 679, 679,
+ 679, 679, 0, 0, 0, 679, 679, 679, 679, 680,
+ 680, 0, 0, 680, 680, 0, 680, 680, 680, 680,
+ 680, 0, 680, 681, 681, 0, 681, 681, 681, 681,
+ 681, 681, 681, 681, 681, 681, 681, 681, 682, 682,
+ 682, 682, 682, 682, 682, 682, 0, 0, 0, 682,
+ 682, 682, 682, 683, 683, 683, 683, 683, 683, 683,
+ 0, 683, 683, 683, 683, 683, 683, 683, 684, 684,
+ 684, 684, 684, 684, 684, 684, 684, 684, 684, 684,
+
+ 684, 684, 684, 685, 685, 0, 685, 0, 685, 685,
+ 685, 685, 685, 686, 0, 0, 686, 686, 686, 686,
+ 686, 687, 687, 687, 687, 687, 687, 687, 687, 0,
+ 0, 0, 687, 0, 687, 687, 688, 688, 688, 688,
+ 688, 688, 688, 688, 688, 688, 688, 688, 688, 688,
+ 688, 689, 689, 689, 689, 689, 689, 689, 689, 689,
+ 689, 689, 689, 689, 689, 689, 690, 690, 0, 0,
+ 690, 0, 0, 690, 690, 691, 691, 691, 691, 691,
+ 691, 691, 691, 0, 0, 0, 691, 691, 691, 691,
+ 692, 692, 692, 692, 692, 692, 692, 692, 0, 0,
+
+ 0, 692, 0, 692, 692, 693, 693, 693, 693, 693,
+ 693, 693, 693, 693, 693, 693, 693, 693, 693, 693,
+ 694, 694, 0, 0, 694, 0, 0, 694, 694, 695,
+ 0, 0, 695, 0, 695, 695, 695, 695, 695, 696,
+ 696, 696, 696, 696, 696, 696, 696, 696, 696, 696,
+ 696, 696, 696, 696, 697, 697, 697, 697, 697, 697,
+ 697, 697, 0, 0, 0, 697, 0, 697, 697, 698,
+ 698, 0, 0, 698, 0, 0, 698, 698, 699, 0,
+ 0, 699, 699, 700, 700, 700, 700, 700, 700, 700,
+ 700, 700, 700, 700, 700, 700, 700, 700, 701, 701,
+
+ 701, 701, 701, 701, 701, 701, 701, 701, 701, 701,
+ 701, 701, 701, 702, 702, 702, 702, 702, 0, 702,
+ 702, 0, 0, 0, 0, 0, 702, 702, 703, 703,
+ 703, 703, 703, 703, 703, 703, 703, 703, 703, 703,
+ 703, 703, 703, 704, 704, 704, 704, 704, 704, 704,
+ 704, 704, 704, 704, 704, 704, 704, 704, 705, 705,
+ 705, 705, 705, 705, 705, 705, 705, 705, 705, 705,
+ 705, 705, 705, 706, 706, 706, 706, 706, 0, 706,
+ 706, 0, 0, 0, 0, 0, 706, 706, 707, 707,
+ 707, 707, 707, 0, 707, 707, 0, 0, 0, 0,
+
+ 0, 707, 707, 708, 708, 708, 708, 708, 0, 708,
+ 708, 0, 0, 0, 0, 0, 708, 708, 709, 709,
+ 709, 709, 709, 709, 709, 709, 709, 709, 709, 709,
+ 709, 709, 709, 710, 710, 710, 710, 710, 710, 710,
+ 710, 710, 710, 710, 710, 710, 710, 710, 711, 711,
+ 711, 711, 711, 711, 711, 711, 711, 711, 711, 711,
+ 711, 711, 712, 712, 0, 712, 712, 712, 712, 712,
+ 712, 712, 712, 712, 712, 712, 712, 713, 713, 713,
+ 713, 713, 713, 713, 713, 713, 713, 713, 713, 713,
+ 713, 713, 714, 714, 714, 714, 714, 714, 714, 714,
+
+ 714, 714, 714, 714, 714, 714, 714, 715, 715, 0,
+ 715, 715, 715, 715, 715, 715, 715, 715, 715, 715,
+ 715, 715, 716, 716, 716, 716, 716, 716, 716, 716,
+ 716, 716, 716, 716, 716, 716, 716, 717, 717, 717,
+ 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
+ 717, 717, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674, 674, 674, 674, 674, 674, 674, 674, 674,
+ 674, 674
} ;
static yy_state_type yy_last_accepting_state;
#include <stdio.h>
#include <stdarg.h>
#include "../utf8.h"
+#include "common.h"
#include "tokenizer.h"
#include "files.h"
-int as3_pass = 0;
-int as3_verbosity = 1;
unsigned int as3_tokencount = 0;
-void as3_error(const char*format, ...)
-{
- char buf[1024];
- int l;
- va_list arglist;
- if(as3_verbosity<0)
- exit(1);
- va_start(arglist, format);
- vsprintf(buf, format, arglist);
- va_end(arglist);
- fprintf(stderr, "%s:%d:%d: error: %s\n", current_filename_short, current_line, current_column, buf);
- fflush(stderr);
- exit(1);
-}
-void as3_warning(const char*format, ...)
-{
- char buf[1024];
- int l;
- va_list arglist;
- if(as3_verbosity<1)
- return;
- va_start(arglist, format);
- vsprintf(buf, format, arglist);
- va_end(arglist);
- fprintf(stderr, "%s:%d:%d: warning: %s\n", current_filename_short, current_line, current_column, buf);
- fflush(stderr);
-}
-void as3_softwarning(const char*format, ...)
-{
- char buf[1024];
- int l;
- va_list arglist;
- if(as3_verbosity<2)
- return;
- va_start(arglist, format);
- vsprintf(buf, format, arglist);
- va_end(arglist);
- fprintf(stderr, "%s:%d:%d: warning: %s\n", current_filename_short, current_line, current_column, buf);
- fflush(stderr);
-}
static void dbg(const char*format, ...)
{
char buf[1024];
if(as3_verbosity<3)
return;
va_start(arglist, format);
- vsprintf(buf, format, arglist);
+ vsnprintf(buf, sizeof(buf)-1, format, arglist);
va_end(arglist);
l = strlen(buf);
while(l && buf[l-1]=='\n') {
fflush(stdout);
}
-
-
#ifndef YY_CURRENT_BUFFER
#define YY_CURRENT_BUFFER yy_current_buffer
#endif
+static void*as3_buffer=0;
+static int as3_buffer_pos=0;
+static int as3_buffer_len=0;
+void as3_file_input(FILE*fi)
+{
+ as3_in = fi;
+ as3_buffer = 0;
+}
+void as3_buffer_input(void*buffer, int len)
+{
+ if(!buffer)
+ syntaxerror("trying to parse zero bytearray");
+ as3_buffer = buffer;
+ as3_buffer_len = len;
+ as3_buffer_pos = 0;
+ as3_in = 0;
+}
+
+//#undef BEGIN
+//#define BEGIN(x) {(yy_start) = 1 + 2 *x;dbg("entering state %d", x);}
+
+#define YY_INPUT(buf,result,max_size) { \
+ if(!as3_buffer) { \
+ errno=0; \
+ while((result = fread(buf, 1, max_size, as3_in))==0 && ferror(as3_in)) \
+ { if(errno != EINTR) {YY_FATAL_ERROR("input in flex scanner failed"); break;} \
+ errno=0; clearerr(as3_in); \
+ } \
+ } else { \
+ int to_read = max_size; \
+ if(to_read + as3_buffer_pos > as3_buffer_len) \
+ to_read = as3_buffer_len - as3_buffer_pos; \
+ memcpy(buf, as3_buffer+as3_buffer_pos, to_read); \
+ as3_buffer_pos += to_read; \
+ result=to_read; \
+ } \
+}
+
void handleInclude(char*text, int len, char quotes)
{
char*filename = 0;
} else {
int i1=0,i2=len;
// find start
- while(!strchr(" \n\r\t", text[i1])) i1++;
+ while(!strchr(" \n\r\t\xa0", text[i1])) i1++;
// strip
- while(strchr(" \n\r\t", text[i1])) i1++;
- while(strchr(" \n\r\t", text[i2-1])) i2--;
+ while(strchr(" \n\r\t\xa0", text[i1])) i1++;
+ while(strchr(" \n\r\t\xa0", text[i2-1])) i2--;
if(i2!=len) text[i2]=0;
filename = strdup(&text[i1]);
}
- char*fullfilename = enter_file(filename, YY_CURRENT_BUFFER);
+ char*fullfilename = find_file(filename, 1);
+ enter_file2(filename, fullfilename, YY_CURRENT_BUFFER);
as3_in = fopen(fullfilename, "rb");
if (!as3_in) {
syntaxerror("Couldn't open include file \"%s\"\n", fullfilename);
}
as3__switch_to_buffer(as3__create_buffer(as3_in,YY_BUF_SIZE ) );
- //BEGIN(INITIAL); keep context
+ //BEGIN(DEFAULT); keep context
}
static int do_unescape(const char*s, const char*end, char*n)
}
break;
}
- default:
- syntaxerror("unknown escape sequence: \"\\%c\"", *s);
+ default: {
+ if(o) {
+ o[len+0] = '\\';
+ o[len+1] = *s;
+ }
+ s++;
+ len+=2;
+ break;
+ }
}
}
if(o) o[len]=0;
{
a3_lval.str.str = s+9; // <![CDATA[
a3_lval.str.len = len-9-3;// ]]>
+ a3_lval.str.str = strdup_n(a3_lval.str.str, a3_lval.str.len);
}
-static void handleString(char*s, int len)
+static void handleRaw(char*s, int len)
{
- if(as3_pass < 2) {
- // don't bother decoding strings in pass 1
- memset(&a3_lval, 0, sizeof(a3_lval));
- return;
- }
+ a3_lval.str.len = len;
+ a3_lval.str.str = strdup_n(s, a3_lval.str.len);
+}
+static void handleString(char*s, int len)
+{
if(s[0]=='"') {
if(s[len-1]!='"') syntaxerror("String doesn't end with '\"'");
s++;len-=2;
s++;len-=2;
}
else syntaxerror("String incorrectly terminated");
-
a3_lval.str = string_unescape(s, len);
}
char start_of_expression;
-static inline int mkid(int type)
-{
- char*s = malloc(as3_leng+1);
- memcpy(s, as3_text, as3_leng);
- s[as3_leng]=0;
- a3_lval.id = s;
- return type;
-}
-
static inline int m(int type)
{
a3_lval.token = type;
return type;
}
-
static char numberbuf[64];
static char*nrbuf()
{
static inline int setint(int v)
{
a3_lval.number_int = v;
- if(v>-128)
- return T_BYTE;
- else if(v>=-32768)
- return T_SHORT;
- else
- return T_INT;
-}
-static inline int setuint(unsigned int v)
-{
- a3_lval.number_uint = v;
- if(v<128)
- return T_BYTE;
- else if(v<32768)
- return T_SHORT;
- else
- return T_UINT;
+ return T_INT;
}
static inline int setfloat(double v)
{
char*s = nrbuf();
char l = (as3_text[0]=='-');
- char*max = l?"1073741824":"2147483647";
+ //char*max = l?"1073741824":"2147483647";
+ char*max = l?"2147483648":"2147483647";
+
if(as3_leng-l>10) {
- as3_warning("integer overflow: %s (converted to Number)", s);
+ as3_softwarning("integer overflow: %s (converted to Number)", s);
return handlefloat();
}
if(as3_leng-l==10) {
int t;
for(t=0;t<as3_leng-l;t++) {
if(as3_text[l+t]>max[t]) {
- as3_warning("integer overflow: %s (converted to Number)", s);
+ as3_softwarning("integer overflow: %s (converted to Number)", s);
return handlefloat();
}
else if(as3_text[l+t]<max[t])
v*=10;
v+=as3_text[t]-'0';
}
- return setuint(v);
+ return setint(v);
}
}
else if((c>='a' && c<='f') || (c>='A' && c<='F'))
v|=(c&0x0f)+9;
}
- if(l && v>1073741824) {
+ if(l && v>=0x80000000) {
char*s = nrbuf();
- as3_warning("signed integer overflow: %s (converted to Number)", s);
+ as3_softwarning("integer overflow: %s (converted to Number)", s);
return setfloat(v);
}
- if(!l && v>2147483647) {
+ if(!l && v>0x7fffffff) {
char*s = nrbuf();
- as3_warning("unsigned integer overflow: %s (converted to Number)", s);
+ as3_softwarning("integer overflow: %s (converted to Number)", s);
return setfloat(v);
}
if(l==3) {
return setint(-(int)v);
} else {
- return setuint(v);
+ return setint(v);
}
}
current_column+=as3_leng;
}
+trie_t*active_namespaces = 0;
+/*void tokenizer_register_namespace(const char*id)
+{
+ trie_put(namespaces, id, 0);
+}
+void tokenizer_unregister_namespace(const char*id)
+{
+ trie_remove(namespaces, id);
+}*/
+static inline char tokenizer_is_namespace(const char*id)
+{
+ return trie_contains(active_namespaces, (const unsigned char*)id);
+}
+
+static inline int handleIdentifier()
+{
+ char*s = malloc(as3_leng+1);
+ memcpy(s, as3_text, as3_leng);
+ s[as3_leng]=0;
+ a3_lval.id = s;
+ if(tokenizer_is_namespace(s))
+ return T_NAMESPACE;
+ else
+ return T_IDENTIFIER;
+}
+static int tokenerror();
+
+
//Boolean {c();return m(KW_BOOLEAN);}
//int {c();return m(KW_INT);}
//uint {c();return m(KW_UINT);}
//Number {c();return m(KW_NUMBER);}
+//XMLCOMMENT <!--([^->]|(-/[^-])|(--/[^>]))*-->
+
+//{XMLCOMMENT}
+
-#line 1712 "tokenizer.yy.c"
+
+#line 2101 "tokenizer.yy.c"
#define INITIAL 0
#define REGEXPOK 1
#define BEGINNING 2
+#define DEFAULT 3
+#define XMLTEXT 4
+#define XML 5
#ifndef YY_NO_UNISTD_H
/* Special case for "unistd.h", since it is non-ANSI. We include it way
register char *yy_cp, *yy_bp;
register int yy_act;
-#line 523 "tokenizer.lex"
+#line 541 "tokenizer.lex"
-#line 1903 "tokenizer.yy.c"
+#line 2295 "tokenizer.yy.c"
if ( !(yy_init) )
{
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 >= 483 )
+ if ( yy_current_state >= 675 )
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_current_state != 482 );
+ while ( yy_current_state != 674 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
case 1:
/* rule 1 can match eol */
YY_RULE_SETUP
-#line 526 "tokenizer.lex"
+#line 544 "tokenizer.lex"
{l(); /* single line comment */}
YY_BREAK
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 527 "tokenizer.lex"
+#line 545 "tokenizer.lex"
{l(); /* multi line comment */}
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 528 "tokenizer.lex"
+#line 546 "tokenizer.lex"
{syntaxerror("syntax error: unterminated comment", as3_text);}
YY_BREAK
case 4:
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 530 "tokenizer.lex"
+#line 548 "tokenizer.lex"
{l();handleInclude(as3_text, as3_leng, 1);}
YY_BREAK
case 5:
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 531 "tokenizer.lex"
+#line 549 "tokenizer.lex"
{l();handleInclude(as3_text, as3_leng, 0);}
YY_BREAK
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 532 "tokenizer.lex"
-{l(); BEGIN(INITIAL);handleString(as3_text, as3_leng);return T_STRING;}
+#line 550 "tokenizer.lex"
+{l(); BEGIN(DEFAULT);handleString(as3_text, as3_leng);return T_STRING;}
YY_BREAK
case 7:
/* rule 7 can match eol */
YY_RULE_SETUP
-#line 533 "tokenizer.lex"
-{l(); BEGIN(INITIAL);handleCData(as3_text, as3_leng);return T_STRING;}
+#line 551 "tokenizer.lex"
+{l(); BEGIN(DEFAULT);handleCData(as3_text, as3_leng);return T_STRING;}
YY_BREAK
case 8:
+/* rule 8 can match eol */
YY_RULE_SETUP
-#line 536 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handleregexp();}
+#line 554 "tokenizer.lex"
+{l(); BEGIN(DEFAULT);handleRaw(as3_text, as3_leng);return T_STRING;}
YY_BREAK
+
+
case 9:
+/* rule 9 can match eol */
YY_RULE_SETUP
-#line 537 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handlehex();}
+#line 558 "tokenizer.lex"
+{l(); handleRaw(as3_text, as3_leng);return T_STRING;}
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 538 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handlehexfloat();}
+#line 559 "tokenizer.lex"
+{c(); BEGIN(REGEXPOK);return m('{');}
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 539 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handleint();}
+#line 560 "tokenizer.lex"
+{c(); return m('<');}
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 540 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handlefloat();}
+#line 561 "tokenizer.lex"
+{c(); return m('/');}
YY_BREAK
-
case 13:
YY_RULE_SETUP
-#line 543 "tokenizer.lex"
-{/* utf 8 bom */}
+#line 562 "tokenizer.lex"
+{c(); return m('>');}
YY_BREAK
case 14:
-/* rule 14 can match eol */
YY_RULE_SETUP
-#line 544 "tokenizer.lex"
-{l();}
+#line 563 "tokenizer.lex"
+{c(); return m('=');}
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 546 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handlehex();}
+#line 564 "tokenizer.lex"
+{c(); handleRaw(as3_text, as3_leng);return T_IDENTIFIER;}
YY_BREAK
case 16:
+/* rule 16 can match eol */
YY_RULE_SETUP
-#line 547 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handlehexfloat();}
+#line 565 "tokenizer.lex"
+{l();}
+ YY_BREAK
+case YY_STATE_EOF(XML):
+#line 566 "tokenizer.lex"
+{syntaxerror("unexpected end of file");}
YY_BREAK
+
+
case 17:
+/* rule 17 can match eol */
YY_RULE_SETUP
-#line 548 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handleint();}
+#line 570 "tokenizer.lex"
+{l(); handleRaw(as3_text, as3_leng);return T_STRING;}
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 549 "tokenizer.lex"
-{c(); BEGIN(INITIAL);return handlefloat();}
+#line 571 "tokenizer.lex"
+{c(); BEGIN(REGEXPOK);return m('{');}
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 551 "tokenizer.lex"
-{/* for debugging: generates a tokenizer-level error */
- syntaxerror("3rr0r");}
+#line 572 "tokenizer.lex"
+{c(); BEGIN(XML);return m('<');}
YY_BREAK
case 20:
-/* rule 20 can match eol */
-*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
-(yy_c_buf_p) = yy_cp -= 1;
-YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 554 "tokenizer.lex"
-{l();handleLabel(as3_text, as3_leng-3);return T_FOR;}
+#line 573 "tokenizer.lex"
+{c(); return m('>');}
YY_BREAK
case 21:
/* rule 21 can match eol */
-*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
-(yy_c_buf_p) = yy_cp -= 1;
-YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 555 "tokenizer.lex"
-{l();handleLabel(as3_text, as3_leng-2);return T_DO;}
+#line 574 "tokenizer.lex"
+{l(); handleRaw(as3_text, as3_leng);return T_STRING;}
YY_BREAK
case 22:
/* rule 22 can match eol */
-*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
-(yy_c_buf_p) = yy_cp -= 1;
-YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 556 "tokenizer.lex"
-{l();handleLabel(as3_text, as3_leng-5);return T_WHILE;}
+#line 575 "tokenizer.lex"
+{l(); handleRaw(as3_text, as3_leng);return T_STRING;}
+ YY_BREAK
+case YY_STATE_EOF(XMLTEXT):
+#line 576 "tokenizer.lex"
+{syntaxerror("unexpected end of file");}
YY_BREAK
+
+
case 23:
-/* rule 23 can match eol */
-*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
-(yy_c_buf_p) = yy_cp -= 1;
-YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 557 "tokenizer.lex"
-{l();handleLabel(as3_text, as3_leng-6);return T_SWITCH;}
+#line 580 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handleregexp();}
YY_BREAK
case 24:
+/* rule 24 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 558 "tokenizer.lex"
-{c();a3_lval.id="";return T_FOR;}
+#line 581 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handlehex();}
YY_BREAK
case 25:
+/* rule 25 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 559 "tokenizer.lex"
-{c();a3_lval.id="";return T_DO;}
+#line 582 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handlehexfloat();}
YY_BREAK
case 26:
+/* rule 26 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 560 "tokenizer.lex"
-{c();a3_lval.id="";return T_WHILE;}
+#line 583 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handleint();}
YY_BREAK
case 27:
+/* rule 27 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 561 "tokenizer.lex"
-{c();a3_lval.id="";return T_SWITCH;}
+#line 584 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handlefloat();}
YY_BREAK
+
case 28:
YY_RULE_SETUP
-#line 563 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(T_ANDAND);}
+#line 587 "tokenizer.lex"
+{c(); BEGIN(REGEXPOK);return m(T_DICTSTART);}
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 564 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(T_OROR);}
+#line 588 "tokenizer.lex"
+{c(); BEGIN(DEFAULT); return m('{');}
YY_BREAK
case 30:
YY_RULE_SETUP
-#line 565 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(T_NE);}
+#line 590 "tokenizer.lex"
+{/* utf 8 bom */}
YY_BREAK
case 31:
+/* rule 31 can match eol */
YY_RULE_SETUP
-#line 566 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(T_NEE);}
+#line 591 "tokenizer.lex"
+{l();}
YY_BREAK
case 32:
+/* rule 32 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 567 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(T_EQEQEQ);}
+#line 593 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handlehex();}
YY_BREAK
case 33:
+/* rule 33 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 568 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(T_EQEQ);}
+#line 594 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handlehexfloat();}
YY_BREAK
case 34:
+/* rule 34 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 569 "tokenizer.lex"
-{c();return m(T_GE);}
+#line 595 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handleint();}
YY_BREAK
case 35:
+/* rule 35 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 570 "tokenizer.lex"
-{c();return m(T_LE);}
+#line 596 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return handlefloat();}
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 571 "tokenizer.lex"
-{c();BEGIN(INITIAL);return m(T_MINUSMINUS);}
+#line 597 "tokenizer.lex"
+{c(); BEGIN(DEFAULT);return m(KW_NAN);}
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 572 "tokenizer.lex"
-{c();BEGIN(INITIAL);return m(T_PLUSPLUS);}
+#line 599 "tokenizer.lex"
+{/* for debugging: generates a tokenizer-level error */
+ syntaxerror("3rr0r");}
YY_BREAK
case 38:
+/* rule 38 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 573 "tokenizer.lex"
-{c();return m(T_PLUSBY);}
+#line 602 "tokenizer.lex"
+{l();BEGIN(DEFAULT);handleLabel(as3_text, as3_leng-3);return T_FOR;}
YY_BREAK
case 39:
+/* rule 39 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 574 "tokenizer.lex"
-{c();return m(T_MINUSBY);}
+#line 603 "tokenizer.lex"
+{l();BEGIN(DEFAULT);handleLabel(as3_text, as3_leng-2);return T_DO;}
YY_BREAK
case 40:
+/* rule 40 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 575 "tokenizer.lex"
-{c();return m(T_DIVBY);}
+#line 604 "tokenizer.lex"
+{l();BEGIN(DEFAULT);handleLabel(as3_text, as3_leng-5);return T_WHILE;}
YY_BREAK
case 41:
+/* rule 41 can match eol */
+*yy_cp = (yy_hold_char); /* undo effects of setting up as3_text */
+(yy_c_buf_p) = yy_cp -= 1;
+YY_DO_BEFORE_ACTION; /* set up as3_text again */
YY_RULE_SETUP
-#line 576 "tokenizer.lex"
-{c();return m(T_MODBY);}
+#line 605 "tokenizer.lex"
+{l();BEGIN(DEFAULT);handleLabel(as3_text, as3_leng-6);return T_SWITCH;}
YY_BREAK
case 42:
+/* rule 42 can match eol */
YY_RULE_SETUP
-#line 577 "tokenizer.lex"
-{c();return m(T_MULBY);}
+#line 606 "tokenizer.lex"
+{l();BEGIN(DEFAULT);return m(KW_DEFAULT_XML);}
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 578 "tokenizer.lex"
-{c();return m(T_ORBY);}
+#line 607 "tokenizer.lex"
+{c();BEGIN(DEFAULT);a3_lval.id="";return T_FOR;}
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 579 "tokenizer.lex"
-{c();return m(T_SHRBY);}
+#line 608 "tokenizer.lex"
+{c();BEGIN(DEFAULT);a3_lval.id="";return T_DO;}
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 580 "tokenizer.lex"
-{c();return m(T_SHLBY);}
+#line 609 "tokenizer.lex"
+{c();BEGIN(DEFAULT);a3_lval.id="";return T_WHILE;}
YY_BREAK
case 46:
YY_RULE_SETUP
-#line 581 "tokenizer.lex"
-{c();return m(T_USHRBY);}
+#line 610 "tokenizer.lex"
+{c();BEGIN(DEFAULT);a3_lval.id="";return T_SWITCH;}
YY_BREAK
case 47:
YY_RULE_SETUP
-#line 582 "tokenizer.lex"
-{c();return m(T_SHL);}
+#line 612 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_ANDAND);}
YY_BREAK
case 48:
YY_RULE_SETUP
-#line 583 "tokenizer.lex"
-{c();return m(T_USHR);}
+#line 613 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_OROR);}
YY_BREAK
case 49:
YY_RULE_SETUP
-#line 584 "tokenizer.lex"
-{c();return m(T_SHR);}
+#line 614 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_NE);}
YY_BREAK
case 50:
YY_RULE_SETUP
-#line 585 "tokenizer.lex"
-{c();return m(T_DOTDOTDOT);}
+#line 615 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_NEE);}
YY_BREAK
case 51:
YY_RULE_SETUP
-#line 586 "tokenizer.lex"
-{c();return m(T_DOTDOT);}
+#line 616 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_EQEQEQ);}
YY_BREAK
case 52:
YY_RULE_SETUP
-#line 587 "tokenizer.lex"
-{c();return m('.');}
+#line 617 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_EQEQ);}
YY_BREAK
case 53:
YY_RULE_SETUP
-#line 588 "tokenizer.lex"
-{c();return m(T_COLONCOLON);}
+#line 618 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_GE);}
YY_BREAK
case 54:
YY_RULE_SETUP
-#line 589 "tokenizer.lex"
-{c();return m(':');}
+#line 619 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_LE);}
YY_BREAK
case 55:
YY_RULE_SETUP
-#line 590 "tokenizer.lex"
-{c();return m(KW_INSTANCEOF);}
+#line 620 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(T_MINUSMINUS);}
YY_BREAK
case 56:
YY_RULE_SETUP
-#line 591 "tokenizer.lex"
-{c();return m(KW_IMPLEMENTS);}
+#line 621 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(T_PLUSPLUS);}
YY_BREAK
case 57:
YY_RULE_SETUP
-#line 592 "tokenizer.lex"
-{c();return m(KW_INTERFACE);}
+#line 622 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_PLUSBY);}
YY_BREAK
case 58:
YY_RULE_SETUP
-#line 593 "tokenizer.lex"
-{c();return m(KW_NAMESPACE);}
+#line 623 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_XORBY);}
YY_BREAK
case 59:
YY_RULE_SETUP
-#line 594 "tokenizer.lex"
-{c();return m(KW_PROTECTED);}
+#line 624 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_MINUSBY);}
YY_BREAK
case 60:
YY_RULE_SETUP
-#line 595 "tokenizer.lex"
-{c();return m(KW_UNDEFINED);}
+#line 625 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_DIVBY);}
YY_BREAK
case 61:
YY_RULE_SETUP
-#line 596 "tokenizer.lex"
-{c();return m(KW_CONTINUE);}
+#line 626 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_MODBY);}
YY_BREAK
case 62:
YY_RULE_SETUP
-#line 597 "tokenizer.lex"
-{c();return m(KW_OVERRIDE);}
+#line 627 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_MULBY);}
YY_BREAK
case 63:
YY_RULE_SETUP
-#line 598 "tokenizer.lex"
-{c();return m(KW_INTERNAL);}
+#line 628 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_ORBY);}
YY_BREAK
case 64:
YY_RULE_SETUP
-#line 599 "tokenizer.lex"
-{c();return m(KW_FUNCTION);}
+#line 629 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_ANDBY);}
YY_BREAK
case 65:
YY_RULE_SETUP
-#line 600 "tokenizer.lex"
-{c();return m(KW_FINALLY);}
+#line 630 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_SHRBY);}
YY_BREAK
case 66:
YY_RULE_SETUP
-#line 601 "tokenizer.lex"
-{c();return m(KW_DEFAULT);}
+#line 631 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_SHLBY);}
YY_BREAK
case 67:
YY_RULE_SETUP
-#line 602 "tokenizer.lex"
-{c();return m(KW_PACKAGE);}
+#line 632 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_USHRBY);}
YY_BREAK
case 68:
YY_RULE_SETUP
-#line 603 "tokenizer.lex"
-{c();return m(KW_PRIVATE);}
+#line 633 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_SHL);}
YY_BREAK
case 69:
YY_RULE_SETUP
-#line 604 "tokenizer.lex"
-{c();return m(KW_DYNAMIC);}
+#line 634 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_USHR);}
YY_BREAK
case 70:
YY_RULE_SETUP
-#line 605 "tokenizer.lex"
-{c();return m(KW_EXTENDS);}
+#line 635 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_SHR);}
YY_BREAK
case 71:
YY_RULE_SETUP
-#line 606 "tokenizer.lex"
-{c();return m(KW_DELETE);}
+#line 636 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_DOTDOTDOT);}
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 607 "tokenizer.lex"
-{c();return m(KW_RETURN);}
+#line 637 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_DOTDOT);}
YY_BREAK
case 73:
YY_RULE_SETUP
-#line 608 "tokenizer.lex"
-{c();return m(KW_PUBLIC);}
+#line 638 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m('.');}
YY_BREAK
case 74:
YY_RULE_SETUP
-#line 609 "tokenizer.lex"
-{c();return m(KW_NATIVE);}
+#line 639 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(T_COLONCOLON);}
YY_BREAK
case 75:
YY_RULE_SETUP
-#line 610 "tokenizer.lex"
-{c();return m(KW_STATIC);}
+#line 640 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(':');}
YY_BREAK
case 76:
YY_RULE_SETUP
-#line 611 "tokenizer.lex"
-{c();return m(KW_IMPORT);}
+#line 641 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_INSTANCEOF);}
YY_BREAK
case 77:
YY_RULE_SETUP
-#line 612 "tokenizer.lex"
-{c();return m(KW_TYPEOF);}
+#line 642 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_IMPLEMENTS);}
YY_BREAK
case 78:
YY_RULE_SETUP
-#line 613 "tokenizer.lex"
-{c();return m(KW_THROW);}
+#line 643 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_INTERFACE);}
YY_BREAK
case 79:
YY_RULE_SETUP
-#line 614 "tokenizer.lex"
-{c();return m(KW_CLASS);}
+#line 644 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_PROTECTED);}
YY_BREAK
case 80:
YY_RULE_SETUP
-#line 615 "tokenizer.lex"
-{c();return m(KW_CONST);}
+#line 645 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_NAMESPACE);}
YY_BREAK
case 81:
YY_RULE_SETUP
-#line 616 "tokenizer.lex"
-{c();return m(KW_CATCH);}
+#line 646 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_UNDEFINED);}
YY_BREAK
case 82:
YY_RULE_SETUP
-#line 617 "tokenizer.lex"
-{c();return m(KW_FINAL);}
+#line 647 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_ARGUMENTS);}
YY_BREAK
case 83:
YY_RULE_SETUP
-#line 618 "tokenizer.lex"
-{c();return m(KW_FALSE);}
+#line 648 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_CONTINUE);}
YY_BREAK
case 84:
YY_RULE_SETUP
-#line 619 "tokenizer.lex"
-{c();return m(KW_BREAK);}
+#line 649 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_OVERRIDE);}
YY_BREAK
case 85:
YY_RULE_SETUP
-#line 620 "tokenizer.lex"
-{c();return m(KW_SUPER);}
+#line 650 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_INTERNAL);}
YY_BREAK
case 86:
YY_RULE_SETUP
-#line 621 "tokenizer.lex"
-{c();return m(KW_EACH);}
+#line 651 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_FUNCTION);}
YY_BREAK
case 87:
YY_RULE_SETUP
-#line 622 "tokenizer.lex"
-{c();return m(KW_VOID);}
+#line 652 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_FINALLY);}
YY_BREAK
case 88:
YY_RULE_SETUP
-#line 623 "tokenizer.lex"
-{c();return m(KW_TRUE);}
+#line 653 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_DEFAULT);}
YY_BREAK
case 89:
YY_RULE_SETUP
-#line 624 "tokenizer.lex"
-{c();return m(KW_NULL);}
+#line 654 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_PACKAGE);}
YY_BREAK
case 90:
YY_RULE_SETUP
-#line 625 "tokenizer.lex"
-{c();return m(KW_ELSE);}
+#line 655 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_PRIVATE);}
YY_BREAK
case 91:
YY_RULE_SETUP
-#line 626 "tokenizer.lex"
-{c();return m(KW_CASE);}
+#line 656 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_DYNAMIC);}
YY_BREAK
case 92:
YY_RULE_SETUP
-#line 627 "tokenizer.lex"
-{c();return m(KW_WITH);}
+#line 657 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_EXTENDS);}
YY_BREAK
case 93:
YY_RULE_SETUP
-#line 628 "tokenizer.lex"
-{c();return m(KW_USE);}
+#line 658 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_DELETE);}
YY_BREAK
case 94:
YY_RULE_SETUP
-#line 629 "tokenizer.lex"
-{c();return m(KW_NEW);}
+#line 659 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_RETURN);}
YY_BREAK
case 95:
YY_RULE_SETUP
-#line 630 "tokenizer.lex"
-{c();return m(KW_GET);}
+#line 660 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_PUBLIC);}
YY_BREAK
case 96:
YY_RULE_SETUP
-#line 631 "tokenizer.lex"
-{c();return m(KW_SET);}
+#line 661 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_NATIVE);}
YY_BREAK
case 97:
YY_RULE_SETUP
-#line 632 "tokenizer.lex"
-{c();return m(KW_VAR);}
+#line 662 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_STATIC);}
YY_BREAK
case 98:
YY_RULE_SETUP
-#line 633 "tokenizer.lex"
-{c();return m(KW_TRY);}
+#line 663 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_IMPORT);}
YY_BREAK
case 99:
YY_RULE_SETUP
-#line 634 "tokenizer.lex"
-{c();return m(KW_IS) ;}
+#line 664 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_TYPEOF);}
YY_BREAK
case 100:
YY_RULE_SETUP
-#line 635 "tokenizer.lex"
-{c();return m(KW_IN) ;}
+#line 665 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_THROW);}
YY_BREAK
case 101:
YY_RULE_SETUP
-#line 636 "tokenizer.lex"
-{c();return m(KW_IF) ;}
+#line 666 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_CLASS);}
YY_BREAK
case 102:
YY_RULE_SETUP
-#line 637 "tokenizer.lex"
-{c();return m(KW_AS);}
+#line 667 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_CONST);}
YY_BREAK
case 103:
YY_RULE_SETUP
-#line 638 "tokenizer.lex"
-{c();BEGIN(INITIAL);return mkid(T_IDENTIFIER);}
+#line 668 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_CATCH);}
YY_BREAK
case 104:
YY_RULE_SETUP
-#line 640 "tokenizer.lex"
-{c();BEGIN(REGEXPOK);return m(as3_text[0]);}
+#line 669 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_FINAL);}
YY_BREAK
case 105:
YY_RULE_SETUP
-#line 641 "tokenizer.lex"
-{c();BEGIN(INITIAL);return m(as3_text[0]);}
+#line 670 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_FALSE);}
YY_BREAK
case 106:
YY_RULE_SETUP
-#line 643 "tokenizer.lex"
-{/* ERROR */
- char c1=as3_text[0];
- char buf[128];
- buf[0] = as3_text[0];
- int t;
- for(t=1;t<128;t++) {
- char c = buf[t]=input();
- if(c=='\n' || c==EOF) {
- buf[t] = 0;
- break;
- }
- }
- if(c1>='0' && c1<='9')
- syntaxerror("syntax error: %s (identifiers must not start with a digit)");
- else
- syntaxerror("syntax error: %s", buf);
- printf("\n");
- exit(1);
- yyterminate();
- }
+#line 671 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_BREAK);}
+ YY_BREAK
+case 107:
+YY_RULE_SETUP
+#line 672 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_SUPER);}
+ YY_BREAK
+case 108:
+YY_RULE_SETUP
+#line 673 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_EACH);}
+ YY_BREAK
+case 109:
+YY_RULE_SETUP
+#line 674 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_VOID);}
+ YY_BREAK
+case 110:
+YY_RULE_SETUP
+#line 675 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_TRUE);}
+ YY_BREAK
+case 111:
+YY_RULE_SETUP
+#line 676 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_NULL);}
YY_BREAK
+case 112:
+YY_RULE_SETUP
+#line 677 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_ELSE);}
+ YY_BREAK
+case 113:
+YY_RULE_SETUP
+#line 678 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_CASE);}
+ YY_BREAK
+case 114:
+YY_RULE_SETUP
+#line 679 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_WITH);}
+ YY_BREAK
+case 115:
+YY_RULE_SETUP
+#line 680 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_USE);}
+ YY_BREAK
+case 116:
+YY_RULE_SETUP
+#line 681 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_NEW);}
+ YY_BREAK
+case 117:
+YY_RULE_SETUP
+#line 682 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_GET);}
+ YY_BREAK
+case 118:
+YY_RULE_SETUP
+#line 683 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_SET);}
+ YY_BREAK
+case 119:
+YY_RULE_SETUP
+#line 684 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_VAR);}
+ YY_BREAK
+case 120:
+YY_RULE_SETUP
+#line 685 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_TRY);}
+ YY_BREAK
+case 121:
+YY_RULE_SETUP
+#line 686 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_IS) ;}
+ YY_BREAK
+case 122:
+YY_RULE_SETUP
+#line 687 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_IN) ;}
+ YY_BREAK
+case 123:
+YY_RULE_SETUP
+#line 688 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(KW_IF) ;}
+ YY_BREAK
+case 124:
+YY_RULE_SETUP
+#line 689 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(KW_AS);}
+ YY_BREAK
+case 125:
+YY_RULE_SETUP
+#line 690 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return handleIdentifier();}
+ YY_BREAK
+case 126:
+YY_RULE_SETUP
+#line 692 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(as3_text[0]);}
+ YY_BREAK
+case 127:
+YY_RULE_SETUP
+#line 693 "tokenizer.lex"
+{c();BEGIN(REGEXPOK);return m(as3_text[0]);}
+ YY_BREAK
+case 128:
+YY_RULE_SETUP
+#line 694 "tokenizer.lex"
+{c();BEGIN(DEFAULT);return m(as3_text[0]);}
+ YY_BREAK
+
+case 129:
+YY_RULE_SETUP
+#line 697 "tokenizer.lex"
+{tokenerror();}
+ YY_BREAK
+
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(REGEXPOK):
case YY_STATE_EOF(BEGINNING):
-#line 663 "tokenizer.lex"
+case YY_STATE_EOF(DEFAULT):
+#line 699 "tokenizer.lex"
{l();
void*b = leave_file();
if (!b) {
}
}
YY_BREAK
-case 107:
+case 130:
YY_RULE_SETUP
-#line 675 "tokenizer.lex"
+#line 711 "tokenizer.lex"
ECHO;
YY_BREAK
-#line 2585 "tokenizer.yy.c"
+#line 3129 "tokenizer.yy.c"
case YY_END_OF_BUFFER:
{
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 >= 483 )
+ if ( yy_current_state >= 675 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
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 >= 483 )
+ if ( yy_current_state >= 675 )
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 == 482);
+ yy_is_jam = (yy_current_state == 674);
return yy_is_jam ? 0 : yy_current_state;
}
as3_free((void *) b );
}
-#ifndef _UNISTD_H /* assume unistd.h has isatty() for us */
-#ifdef __cplusplus
-extern "C" {
-#endif
-#ifdef __THROW /* this is a gnuism */
-extern int isatty (int ) __THROW;
-#else
+#ifndef __cplusplus
extern int isatty (int );
-#endif
-#ifdef __cplusplus
-}
-#endif
-#endif
+#endif /* __cplusplus */
/* Initializes or reinitializes a buffer.
* This function is sometimes called more than once on the same buffer,
#define YYTABLES_NAME "yytables"
-#line 675 "tokenizer.lex"
+#line 711 "tokenizer.lex"
return 1;
}
+static int tokenerror()
+{
+ char c1=as3_text[0];
+ char buf[128];
+ buf[0] = as3_text[0];
+ int t;
+ for(t=1;t<128;t++) {
+ char c = buf[t]=input();
+ if(c=='\n' || c==EOF) {
+ buf[t] = 0;
+ break;
+ }
+ }
+ if(c1>='0' && c1<='9')
+ syntaxerror("syntax error: %s (identifiers must not start with a digit)");
+ else
+ syntaxerror("syntax error [state=%d]: %s", (yy_start-1)/2, buf);
+ printf("\n");
+ exit(1);
+ yyterminate();
+}
+
+
static char mbuf[256];
char*token2string(enum yytokentype nr, YYSTYPE v)
{
- if(nr==T_STRING) return "<string>";
+ if(nr==T_STRING) {
+ char*s = malloc(v.str.len+10);
+ strcpy(s, "<string>");
+ memcpy(s+8, v.str.str, v.str.len);
+ sprintf(s+8+v.str.len, " (%d bytes)", v.str.len);
+ return s;
+ }
+ else if(nr==T_REGEXP) {
+ char*s = malloc(strlen(v.regexp.pattern)+10);
+ sprintf(s, "<regexp>%s", v.regexp.pattern);
+ return s;
+ }
+ else if(nr==T_IDENTIFIER) {
+ char*s = malloc(strlen(v.id)+10);
+ sprintf(s, "<ID>%s", v.id);
+ return s;
+ }
else if(nr==T_INT) return "<int>";
else if(nr==T_UINT) return "<uint>";
- else if(nr==T_BYTE) return "<byte>";
else if(nr==T_FLOAT) return "<float>";
- else if(nr==T_REGEXP) return "REGEXP";
else if(nr==T_EOF) return "***END***";
else if(nr==T_GE) return ">=";
else if(nr==T_LE) return "<=";
else if(nr==KW_VAR) return "var";
else if(nr==KW_IS) return "is";
else if(nr==KW_AS) return "as";
- else if(nr==T_IDENTIFIER) return "ID";
else {
sprintf(mbuf, "%d", nr);
return mbuf;
}
}
+void tokenizer_begin_xml()
+{
+ dbg("begin reading xml");
+ BEGIN(XML);
+}
+void tokenizer_begin_xmltext()
+{
+ dbg("begin reading xml text");
+ BEGIN(XMLTEXT);
+}
+void tokenizer_end_xmltext()
+{
+ dbg("end reading xml text");
+ BEGIN(XML);
+}
+void tokenizer_end_xml()
+{
+ dbg("end reading xml");
+ BEGIN(DEFAULT);
+}
+
void initialize_scanner()
{
BEGIN(BEGINNING);
}
+