diff -r 000000000000 -r 4f2f89ce4247 WebCore/generated/tokenizer.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/WebCore/generated/tokenizer.cpp Fri Sep 17 09:02:29 2010 +0300 @@ -0,0 +1,1389 @@ +/* + * Copyright (C) 2003 Lars Knoll (knoll@kde.org) + * + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +/* This file is mostly data generated by flex. Unfortunately flex + can't handle 16bit strings directly, so we just copy the part of + the code we need and modify it to our needs. + + Most of the defines below are to make sure we can easily use the + flex generated code, using as little editing as possible. + + The flex syntax to generate the lexer are more or less directly + copied from the CSS2.1 specs, with some fixes for comments and + the important symbol. + + To regenerate, run flex on tokenizer.flex. After this, copy the + data tables and the YY_DECL method over to this file. Remove the + init code from YY_DECL and change the YY_END_OF_BUFFER to only call + yyterminate(). + +*/ + +// --------- begin generated code ------------------- + + +#include "CSSGrammar.h" + +#define INITIAL 0 +#define mediaquery 1 +#define forkeyword 2 + +/* C99 systems have . Non-C99 systems may or may not. */ + +#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L +#include +typedef int8_t flex_int8_t; +typedef uint8_t flex_uint8_t; +typedef int16_t flex_int16_t; +typedef uint16_t flex_uint16_t; +typedef int32_t flex_int32_t; +typedef uint32_t flex_uint32_t; +#else +typedef signed char flex_int8_t; +typedef short int flex_int16_t; +typedef int flex_int32_t; +typedef unsigned char flex_uint8_t; +typedef unsigned short int flex_uint16_t; +typedef unsigned int flex_uint32_t; +#endif /* ! C99 */ +#define YY_NUM_RULES 85 +#define YY_END_OF_BUFFER 86 +static yyconst short int yy_accept[592] = + { 0, + 0, 0, 0, 0, 0, 0, 86, 84, 2, 2, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 73, 84, 84, 84, 84, 15, 15, 15, 84, 84, + 83, 15, 15, 15, 82, 15, 2, 0, 0, 0, + 14, 0, 0, 0, 0, 18, 18, 8, 0, 0, + 9, 0, 16, 0, 0, 15, 15, 15, 74, 0, + 72, 0, 0, 73, 0, 71, 71, 71, 71, 71, + 71, 71, 71, 71, 71, 16, 71, 71, 68, 71, + 0, 0, 0, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 15, 15, 7, 79, 15, 0, + + 0, 15, 15, 0, 15, 6, 5, 15, 15, 15, + 15, 0, 0, 0, 14, 0, 0, 0, 18, 18, + 18, 0, 18, 0, 0, 14, 0, 0, 4, 15, + 0, 0, 71, 71, 71, 0, 71, 58, 71, 53, + 56, 71, 69, 60, 71, 59, 67, 71, 62, 61, + 57, 71, 71, 71, 0, 51, 51, 51, 51, 0, + 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, + 15, 15, 15, 16, 15, 15, 80, 80, 15, 12, + 10, 15, 13, 0, 0, 0, 17, 18, 18, 18, + 17, 0, 0, 15, 0, 1, 71, 71, 71, 71, + + 63, 71, 70, 16, 64, 54, 71, 3, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 15, 15, 75, 0, 80, 80, 80, 79, + 11, 0, 0, 0, 18, 18, 18, 0, 15, 0, + 0, 71, 71, 71, 65, 66, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 20, 51, 51, 15, + 15, 81, 80, 80, 80, 80, 0, 0, 0, 0, + 77, 0, 0, 0, 0, 18, 18, 18, 0, 15, + 71, 71, 55, 51, 51, 51, 51, 51, 51, 51, + 51, 37, 51, 51, 51, 51, 51, 15, 15, 81, + + 80, 80, 80, 80, 80, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 77, 0, 0, 0, 0, 17, + 18, 18, 17, 0, 15, 71, 71, 51, 51, 51, + 51, 51, 51, 19, 51, 51, 51, 51, 51, 51, + 51, 51, 15, 15, 81, 80, 80, 80, 80, 80, + 80, 0, 76, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 18, 18, 0, 15, + 71, 71, 51, 51, 51, 51, 39, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, 15, 81, + 80, 80, 80, 80, 80, 80, 80, 0, 76, 0, + + 0, 0, 76, 0, 0, 0, 0, 18, 15, 71, + 51, 51, 51, 51, 51, 51, 51, 51, 31, 51, + 51, 51, 51, 51, 22, 51, 81, 0, 0, 0, + 52, 15, 51, 51, 51, 51, 51, 51, 51, 51, + 51, 38, 51, 51, 40, 51, 51, 34, 51, 51, + 24, 81, 0, 0, 0, 15, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, 51, 23, + 51, 51, 0, 0, 0, 79, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 27, 51, 33, 32, 51, + 51, 51, 51, 0, 0, 0, 0, 0, 0, 51, + + 51, 51, 51, 41, 51, 51, 51, 51, 51, 29, + 36, 35, 51, 51, 0, 0, 0, 78, 0, 0, + 42, 51, 51, 51, 51, 43, 51, 28, 51, 51, + 51, 51, 0, 0, 0, 0, 47, 51, 51, 51, + 51, 51, 51, 51, 51, 0, 0, 0, 51, 51, + 51, 51, 51, 51, 21, 51, 0, 0, 51, 51, + 45, 51, 51, 51, 25, 0, 0, 51, 49, 51, + 46, 51, 51, 0, 0, 51, 44, 51, 26, 51, + 0, 51, 51, 30, 51, 51, 50, 51, 51, 48, + 0 + + } ; + +static yyconst int yy_ec[256] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, + 1, 4, 5, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 12, 18, 19, 20, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 12, 22, 23, + 24, 25, 26, 27, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 12, 28, 12, 29, 30, 12, 31, 32, 33, 34, + + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 12, 59, 1, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60 + } ; + +static yyconst int yy_meta[61] = + { 0, + 1, 2, 3, 3, 3, 4, 5, 5, 5, 5, + 5, 5, 5, 6, 7, 5, 5, 8, 5, 5, + 9, 5, 5, 5, 5, 10, 5, 11, 5, 11, + 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 5, 5, 5, 11 + } ; + +static yyconst short int yy_base[629] = + { 0, + 0, 0, 39, 41, 2424, 2423, 2458, 2461, 62, 71, + 76, 61, 69, 2433, 78, 2432, 50, 89, 2434, 2438, + 132, 2446, 175, 87, 2417, 81, 110, 97, 2413, 2412, + 2461, 85, 219, 102, 2461, 112, 192, 236, 2378, 84, + 2461, 274, 113, 222, 238, 2392, 265, 2461, 119, 309, + 2461, 114, 119, 2393, 300, 176, 232, 252, 244, 2401, + 2405, 2383, 2363, 0, 317, 124, 2332, 116, 121, 240, + 204, 133, 217, 163, 275, 298, 326, 292, 2321, 216, + 2328, 363, 334, 2308, 206, 253, 301, 261, 257, 328, + 171, 297, 319, 329, 234, 415, 2461, 2461, 347, 351, + + 2309, 350, 365, 406, 380, 2461, 2461, 363, 375, 384, + 376, 2267, 425, 311, 402, 452, 487, 431, 2231, 522, + 2217, 478, 513, 431, 360, 448, 557, 592, 2461, 465, + 2190, 415, 2153, 627, 2150, 548, 447, 2137, 111, 2125, + 2121, 440, 2109, 2101, 442, 2100, 2099, 453, 2098, 2097, + 2096, 256, 473, 454, 2105, 468, 2093, 662, 2077, 583, + 364, 441, 489, 504, 501, 472, 508, 502, 503, 540, + 618, 524, 697, 2081, 656, 559, 546, 2073, 584, 593, + 594, 657, 628, 2045, 629, 688, 704, 713, 2061, 748, + 739, 659, 755, 664, 2072, 2461, 764, 2047, 799, 507, + + 2046, 537, 2012, 546, 2011, 2009, 645, 2461, 571, 790, + 2008, 834, 373, 658, 619, 646, 654, 538, 574, 606, + 572, 583, 825, 841, 2461, 850, 617, 1986, 1978, 885, + 699, 1955, 871, 887, 893, 909, 915, 931, 727, 1986, + 620, 937, 953, 683, 1944, 1943, 647, 959, 975, 714, + 715, 689, 729, 740, 476, 764, 1901, 728, 868, 981, + 997, 1003, 620, 1878, 1876, 1874, 1038, 1052, 786, 780, + 2461, 1079, 1817, 1038, 1070, 1087, 1095, 1103, 1111, 801, + 1119, 1127, 1837, 778, 1135, 1143, 784, 680, 782, 791, + 1036, 1769, 817, 824, 781, 815, 825, 1151, 1159, 1167, + + 891, 1723, 1691, 1690, 1641, 1202, 820, 1207, 1221, 866, + 1256, 1235, 1268, 1295, 1309, 1336, 1371, 1552, 1199, 2461, + 1295, 1327, 1503, 1362, 1034, 1379, 1387, 883, 1395, 1403, + 826, 884, 648, 1501, 850, 1022, 852, 734, 1236, 871, + 903, 1060, 1438, 1424, 1440, 935, 1471, 1439, 1391, 1321, + 1252, 1330, 2461, 929, 927, 1475, 1502, 1537, 1291, 947, + 1483, 1572, 1607, 1481, 1221, 1528, 995, 1563, 1598, 1081, + 1350, 1615, 1071, 1516, 1623, 1420, 1187, 60, 926, 682, + 910, 949, 975, 1188, 976, 931, 955, 1190, 1658, 1644, + 1163, 2461, 2461, 2461, 2461, 2461, 2461, 1679, 1017, 1019, + + 1667, 1706, 1050, 1062, 1692, 1708, 1027, 1522, 1418, 1551, + 1704, 1585, 991, 1161, 1208, 1186, 1048, 733, 951, 1216, + 1169, 1353, 1234, 1247, 1267, 1217, 1727, 1733, 1749, 1755, + 2461, 1419, 1274, 1290, 1315, 1337, 1354, 1423, 1097, 1121, + 1454, 950, 1456, 1265, 821, 1442, 1435, 819, 1218, 1466, + 1362, 2461, 1771, 1777, 1793, 1292, 1515, 450, 1518, 1422, + 1467, 1538, 1564, 1573, 1363, 1504, 1465, 1624, 1539, 779, + 1625, 1588, 1799, 1815, 1821, 1687, 1676, 1587, 1137, 1667, + 1589, 1590, 1594, 1692, 1638, 1609, 1646, 735, 686, 1694, + 1722, 1318, 1669, 1837, 1843, 1878, 1883, 1876, 1888, 1068, + + 1277, 1554, 1640, 653, 1702, 1743, 1705, 1727, 1718, 1877, + 652, 617, 1381, 1745, 1915, 1942, 1920, 2461, 1934, 1920, + 616, 1744, 1746, 1768, 1766, 578, 1767, 548, 1772, 1790, + 1809, 1794, 1977, 1963, 1985, 2012, 547, 1817, 1811, 1870, + 1871, 1773, 1886, 1813, 1831, 1988, 2023, 2021, 1899, 1930, + 1815, 1931, 1941, 1958, 513, 1982, 2028, 2037, 1983, 2037, + 449, 1791, 1932, 2006, 417, 2045, 2061, 2039, 372, 994, + 1914, 2055, 1933, 2077, 2083, 1980, 334, 2007, 332, 2058, + 2099, 1922, 2056, 289, 2072, 1900, 172, 1965, 2073, 34, + 2461, 2134, 2139, 2150, 2155, 2164, 2171, 2182, 2191, 2196, + + 2207, 2219, 2221, 2230, 2235, 2244, 2249, 2258, 2267, 2279, + 2288, 2297, 2302, 2314, 2319, 2330, 2335, 2346, 2357, 2368, + 2373, 2384, 2395, 2400, 2411, 2420, 2431, 2440 + } ; + +static yyconst short int yy_def[629] = + { 0, + 591, 1, 1, 1, 1, 1, 591, 591, 591, 591, + 591, 592, 593, 591, 594, 591, 591, 595, 591, 591, + 591, 591, 591, 596, 591, 597, 597, 597, 591, 591, + 591, 597, 597, 597, 591, 597, 591, 591, 591, 592, + 591, 598, 593, 591, 599, 600, 600, 591, 594, 601, + 591, 591, 591, 591, 596, 597, 597, 597, 21, 602, + 591, 603, 591, 21, 604, 605, 605, 605, 605, 605, + 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, + 591, 23, 606, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 607, 607, 597, 597, 591, 591, 597, 608, + + 591, 597, 597, 591, 597, 591, 591, 597, 597, 597, + 597, 591, 592, 592, 592, 592, 598, 591, 600, 47, + 600, 609, 47, 594, 594, 594, 594, 601, 591, 597, + 602, 610, 605, 605, 605, 611, 605, 605, 605, 605, + 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, + 605, 605, 605, 605, 591, 607, 607, 607, 607, 612, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 96, 597, 96, 591, 597, 597, 613, 591, 597, 597, + 597, 597, 597, 591, 592, 116, 591, 120, 600, 120, + 47, 594, 127, 597, 614, 591, 134, 605, 134, 605, + + 605, 605, 605, 605, 605, 605, 605, 591, 607, 158, + 607, 158, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 96, 173, 591, 591, 615, 591, 591, 616, + 597, 591, 116, 591, 120, 190, 47, 127, 597, 614, + 610, 134, 199, 605, 605, 605, 607, 158, 212, 607, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 96, + 173, 591, 617, 591, 591, 591, 616, 616, 618, 619, + 591, 620, 591, 116, 591, 120, 190, 47, 127, 597, + 134, 199, 605, 607, 158, 212, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 607, 607, 96, 173, 591, + + 621, 591, 591, 591, 591, 591, 618, 591, 622, 619, + 623, 616, 616, 616, 616, 616, 620, 591, 116, 591, + 120, 190, 600, 127, 597, 134, 199, 607, 158, 212, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 597, 173, 591, 624, 591, 591, 591, 591, + 591, 591, 591, 618, 618, 618, 618, 622, 619, 619, + 619, 619, 623, 316, 591, 116, 600, 190, 127, 597, + 605, 199, 607, 607, 212, 607, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 607, 607, 607, 597, 591, + 591, 591, 591, 591, 591, 591, 591, 618, 618, 618, + + 357, 619, 619, 619, 362, 316, 591, 600, 597, 605, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 607, 591, 357, 362, 316, + 591, 597, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 591, 357, 362, 316, 597, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 357, 362, 316, 625, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 607, 357, 362, 625, 496, 626, 627, 607, + + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 607, 607, 627, 627, 591, 591, 627, 628, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 607, 627, 516, 627, 516, 607, 607, 607, 607, + 607, 607, 607, 607, 607, 516, 627, 536, 607, 607, + 607, 607, 607, 607, 607, 607, 516, 536, 607, 607, + 607, 607, 607, 607, 607, 516, 536, 607, 607, 607, + 607, 607, 607, 516, 536, 607, 607, 607, 607, 607, + 536, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 0, 591, 591, 591, 591, 591, 591, 591, 591, 591, + + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591 + } ; + +static yyconst short int yy_nxt[2522] = + { 0, + 8, 9, 10, 9, 9, 9, 11, 12, 13, 14, + 8, 8, 15, 8, 8, 16, 17, 18, 19, 20, + 21, 8, 22, 8, 8, 8, 23, 24, 25, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 27, 26, 26, 26, 26, 26, 26, + 28, 26, 26, 26, 26, 26, 8, 29, 30, 26, + 31, 160, 31, 37, 37, 37, 37, 37, 41, 32, + 52, 32, 37, 37, 37, 37, 37, 38, 38, 38, + 38, 38, 33, 34, 33, 34, 43, 160, 42, 44, + 41, 41, 416, 53, 98, 35, 45, 35, 98, 47, + + 47, 47, 47, 47, 47, 50, 54, 96, 100, 52, + 98, 42, 100, 104, 39, 98, 55, 96, 96, 96, + 96, 96, 96, 98, 100, 98, 101, 102, 108, 100, + 591, 41, 57, 591, 52, 101, 101, 100, 136, 100, + 45, 58, 61, 136, 105, 110, 50, 201, 136, 62, + 63, 136, 64, 137, 103, 139, 111, 53, 138, 65, + 136, 66, 67, 67, 68, 69, 70, 67, 71, 72, + 73, 67, 74, 67, 75, 76, 67, 77, 67, 78, + 79, 80, 67, 67, 67, 67, 67, 67, 143, 98, + 136, 67, 82, 37, 37, 37, 37, 37, 160, 160, + + 145, 167, 83, 100, 84, 84, 85, 86, 84, 84, + 87, 84, 84, 88, 84, 84, 89, 90, 91, 84, + 92, 84, 93, 84, 94, 84, 84, 84, 84, 84, + 84, 136, 98, 160, 84, 101, 102, 38, 38, 38, + 38, 38, 118, 136, 136, 98, 100, 98, 101, 102, + 161, 142, 118, 118, 118, 118, 118, 118, 120, 100, + 144, 100, 591, 109, 59, 98, 154, 136, 120, 120, + 120, 120, 120, 120, 39, 40, 40, 40, 113, 100, + 160, 115, 140, 136, 160, 123, 130, 67, 160, 205, + 162, 165, 122, 141, 116, 123, 123, 123, 123, 123, + + 123, 117, 136, 164, 116, 116, 116, 116, 116, 116, + 49, 49, 49, 124, 101, 148, 160, 146, 41, 136, + 96, 126, 152, 147, 160, 136, 153, 168, 160, 127, + 96, 96, 96, 96, 96, 96, 128, 134, 42, 127, + 127, 127, 127, 127, 127, 163, 160, 134, 134, 134, + 134, 134, 134, 136, 158, 160, 160, 169, 149, 160, + 98, 160, 166, 98, 158, 158, 158, 158, 158, 158, + 175, 173, 41, 170, 100, 150, 98, 100, 98, 151, + 591, 173, 173, 173, 173, 173, 173, 50, 98, 98, + 100, 160, 100, 98, 84, 84, 180, 98, 84, 160, + + 160, 84, 100, 100, 84, 84, 84, 100, 84, 41, + 84, 100, 84, 213, 176, 156, 95, 95, 95, 95, + 95, 179, 250, 183, 181, 182, 177, 40, 98, 42, + 132, 178, 41, 49, 196, 171, 177, 177, 177, 177, + 177, 177, 100, 41, 160, 171, 171, 171, 171, 171, + 171, 187, 42, 114, 185, 185, 185, 114, 50, 41, + 41, 187, 187, 187, 187, 187, 187, 136, 160, 136, + 202, 214, 186, 204, 136, 50, 160, 160, 98, 42, + 136, 136, 186, 186, 186, 186, 186, 186, 40, 40, + 40, 113, 100, 200, 115, 160, 194, 203, 190, 160, + + 136, 207, 209, 160, 479, 218, 292, 116, 190, 190, + 190, 190, 190, 190, 117, 206, 160, 116, 116, 116, + 116, 116, 116, 119, 119, 119, 119, 119, 160, 160, + 160, 160, 215, 191, 136, 160, 217, 98, 220, 221, + 160, 244, 188, 191, 191, 191, 191, 191, 191, 216, + 219, 100, 188, 188, 188, 188, 188, 188, 125, 192, + 192, 192, 125, 226, 136, 160, 204, 160, 199, 41, + 245, 228, 225, 136, 160, 160, 255, 193, 199, 199, + 199, 199, 199, 199, 50, 222, 100, 193, 193, 193, + 193, 193, 193, 49, 49, 49, 124, 230, 160, 160, + + 259, 160, 247, 212, 126, 160, 98, 225, 256, 258, + 160, 100, 127, 212, 212, 212, 212, 212, 212, 128, + 100, 100, 127, 127, 127, 127, 127, 127, 133, 133, + 133, 133, 133, 160, 226, 241, 41, 226, 223, 196, + 257, 98, 264, 160, 160, 302, 160, 197, 223, 223, + 223, 223, 223, 223, 136, 100, 42, 197, 197, 197, + 197, 197, 197, 157, 157, 157, 157, 157, 252, 98, + 98, 41, 136, 160, 160, 160, 175, 98, 378, 160, + 160, 160, 210, 100, 100, 160, 50, 284, 246, 160, + 253, 100, 210, 210, 210, 210, 210, 210, 172, 172, + + 172, 172, 172, 254, 239, 251, 289, 160, 233, 160, + 136, 231, 98, 160, 332, 418, 160, 224, 233, 233, + 233, 233, 233, 233, 234, 283, 100, 224, 224, 224, + 224, 224, 224, 235, 234, 234, 234, 234, 234, 234, + 98, 160, 160, 235, 235, 235, 235, 235, 235, 189, + 189, 189, 189, 189, 100, 160, 160, 291, 287, 237, + 160, 160, 160, 288, 382, 280, 444, 160, 236, 237, + 237, 237, 237, 237, 237, 238, 290, 294, 236, 236, + 236, 236, 236, 236, 242, 238, 238, 238, 238, 238, + 238, 160, 308, 308, 242, 242, 242, 242, 242, 242, + + 198, 198, 198, 198, 198, 160, 160, 311, 160, 160, + 248, 160, 293, 309, 98, 340, 328, 333, 160, 243, + 248, 248, 248, 248, 248, 248, 331, 308, 100, 243, + 243, 243, 243, 243, 243, 211, 211, 211, 211, 211, + 334, 339, 160, 376, 160, 260, 160, 309, 160, 341, + 325, 160, 160, 160, 249, 260, 260, 260, 260, 260, + 260, 261, 338, 342, 249, 249, 249, 249, 249, 249, + 262, 261, 261, 261, 261, 261, 261, 160, 308, 160, + 262, 262, 262, 262, 262, 262, 267, 267, 267, 267, + 267, 274, 269, 311, 379, 160, 381, 270, 160, 271, + + 295, 274, 274, 274, 274, 274, 274, 275, 226, 296, + 160, 160, 272, 276, 386, 297, 347, 275, 275, 275, + 275, 275, 275, 276, 276, 276, 276, 276, 276, 277, + 160, 307, 373, 377, 308, 278, 308, 160, 387, 277, + 277, 277, 277, 277, 277, 278, 278, 278, 278, 278, + 278, 279, 226, 160, 309, 419, 309, 281, 160, 308, + 392, 279, 279, 279, 279, 279, 279, 281, 281, 281, + 281, 281, 281, 282, 311, 417, 160, 160, 160, 285, + 424, 420, 160, 282, 282, 282, 282, 282, 282, 285, + 285, 285, 285, 285, 285, 286, 119, 119, 119, 119, + + 119, 298, 160, 160, 425, 286, 286, 286, 286, 286, + 286, 298, 298, 298, 298, 298, 298, 299, 160, 421, + 423, 160, 122, 300, 308, 439, 308, 299, 299, 299, + 299, 299, 299, 300, 300, 300, 300, 300, 300, 267, + 267, 267, 267, 267, 309, 269, 309, 98, 577, 160, + 270, 370, 271, 306, 306, 306, 306, 306, 319, 591, + 380, 100, 308, 160, 591, 272, 271, 335, 319, 319, + 319, 319, 319, 319, 308, 160, 431, 311, 336, 272, + 306, 306, 306, 306, 312, 337, 314, 160, 411, 311, + 320, 314, 314, 315, 98, 160, 388, 443, 160, 316, + + 320, 320, 320, 320, 320, 320, 317, 321, 100, 316, + 316, 316, 316, 316, 316, 322, 521, 321, 321, 321, + 321, 321, 321, 323, 160, 322, 322, 322, 322, 322, + 322, 324, 409, 323, 323, 323, 323, 323, 323, 326, + 463, 324, 324, 324, 324, 324, 324, 327, 160, 326, + 326, 326, 326, 326, 326, 329, 464, 327, 327, 327, + 327, 327, 327, 330, 160, 329, 329, 329, 329, 329, + 329, 343, 502, 330, 330, 330, 330, 330, 330, 344, + 226, 343, 343, 343, 343, 343, 343, 345, 160, 344, + 344, 344, 344, 344, 344, 440, 160, 345, 345, 345, + + 345, 345, 345, 306, 306, 306, 306, 306, 352, 352, + 352, 352, 352, 160, 160, 160, 271, 160, 446, 366, + 442, 353, 307, 307, 307, 354, 422, 426, 356, 366, + 366, 366, 366, 366, 366, 160, 306, 306, 306, 306, + 306, 357, 591, 160, 160, 160, 441, 591, 358, 271, + 445, 357, 357, 357, 357, 357, 357, 310, 310, 310, + 359, 160, 272, 160, 407, 470, 451, 383, 361, 306, + 306, 306, 306, 306, 160, 591, 362, 397, 384, 448, + 591, 449, 271, 363, 450, 385, 362, 362, 362, 362, + 362, 362, 160, 310, 160, 272, 306, 306, 306, 306, + + 306, 160, 591, 308, 160, 476, 467, 591, 457, 271, + 306, 306, 306, 306, 306, 367, 591, 160, 311, 100, + 522, 591, 272, 271, 458, 367, 367, 367, 367, 367, + 367, 352, 352, 352, 352, 352, 272, 312, 312, 312, + 312, 312, 160, 591, 353, 160, 396, 368, 591, 459, + 271, 133, 133, 133, 133, 133, 364, 368, 368, 368, + 368, 368, 368, 272, 160, 513, 364, 364, 364, 364, + 364, 364, 306, 306, 306, 306, 312, 136, 314, 472, + 160, 160, 369, 314, 314, 315, 447, 460, 461, 160, + 160, 316, 369, 369, 369, 369, 369, 369, 317, 371, + + 487, 316, 316, 316, 316, 316, 316, 372, 160, 371, + 371, 371, 371, 371, 371, 374, 395, 372, 372, 372, + 372, 372, 372, 375, 531, 374, 374, 374, 374, 374, + 374, 98, 98, 375, 375, 375, 375, 375, 375, 95, + 95, 95, 95, 95, 389, 100, 100, 160, 432, 160, + 160, 98, 413, 462, 389, 389, 389, 389, 389, 389, + 390, 414, 160, 481, 394, 100, 456, 415, 469, 160, + 390, 390, 390, 390, 390, 390, 398, 352, 352, 352, + 398, 160, 308, 160, 402, 352, 352, 352, 402, 399, + 465, 468, 160, 160, 160, 308, 393, 403, 471, 489, + + 466, 406, 309, 355, 400, 400, 400, 355, 482, 308, + 311, 406, 406, 406, 406, 406, 406, 157, 157, 157, + 157, 157, 401, 189, 189, 189, 189, 189, 160, 309, + 122, 160, 401, 401, 401, 401, 401, 401, 307, 307, + 307, 354, 160, 160, 356, 160, 488, 477, 40, 122, + 478, 480, 198, 198, 198, 198, 198, 357, 40, 40, + 40, 40, 40, 40, 358, 160, 160, 357, 357, 357, + 357, 357, 357, 360, 404, 404, 404, 360, 136, 483, + 491, 160, 365, 408, 308, 484, 211, 211, 211, 211, + 211, 160, 405, 408, 408, 408, 408, 408, 408, 311, + + 160, 523, 405, 405, 405, 405, 405, 405, 310, 310, + 310, 359, 160, 485, 160, 160, 160, 160, 49, 361, + 493, 160, 486, 504, 505, 501, 509, 362, 49, 49, + 49, 49, 49, 49, 363, 410, 160, 362, 362, 362, + 362, 362, 362, 412, 506, 410, 410, 410, 410, 410, + 410, 160, 160, 412, 412, 412, 412, 412, 412, 172, + 172, 172, 172, 172, 427, 160, 351, 160, 490, 492, + 524, 98, 508, 160, 427, 427, 427, 427, 427, 427, + 398, 352, 352, 352, 398, 100, 308, 428, 496, 496, + 496, 496, 496, 399, 160, 510, 160, 428, 428, 428, + + 428, 428, 428, 160, 497, 503, 309, 402, 352, 352, + 352, 402, 429, 514, 498, 350, 349, 500, 308, 160, + 403, 160, 429, 429, 429, 429, 429, 429, 430, 160, + 507, 160, 160, 311, 525, 527, 511, 433, 430, 430, + 430, 430, 430, 430, 434, 160, 435, 452, 348, 160, + 529, 436, 437, 453, 160, 438, 512, 452, 452, 452, + 452, 452, 452, 453, 453, 453, 453, 453, 453, 454, + 160, 160, 160, 160, 528, 455, 538, 526, 537, 454, + 454, 454, 454, 454, 454, 455, 455, 455, 455, 455, + 455, 473, 532, 160, 160, 160, 160, 474, 541, 160, + + 160, 473, 473, 473, 473, 473, 473, 474, 474, 474, + 474, 474, 474, 475, 539, 540, 542, 160, 160, 494, + 553, 160, 543, 475, 475, 475, 475, 475, 475, 494, + 494, 494, 494, 494, 494, 495, 160, 545, 160, 571, + 160, 268, 160, 544, 160, 495, 495, 495, 495, 495, + 495, 268, 268, 268, 268, 268, 268, 307, 160, 549, + 555, 550, 561, 310, 136, 556, 318, 307, 307, 307, + 307, 307, 307, 310, 310, 310, 310, 310, 310, 496, + 496, 496, 496, 496, 591, 591, 591, 591, 591, 517, + 517, 517, 517, 517, 530, 497, 516, 160, 160, 305, + + 591, 304, 518, 303, 160, 498, 516, 516, 516, 516, + 516, 516, 552, 160, 551, 520, 517, 517, 517, 517, + 517, 517, 517, 517, 517, 517, 160, 160, 160, 518, + 554, 578, 588, 559, 518, 517, 517, 517, 517, 517, + 536, 160, 520, 533, 533, 533, 533, 533, 518, 160, + 536, 536, 536, 536, 536, 536, 518, 160, 160, 160, + 160, 520, 534, 585, 560, 562, 572, 580, 160, 520, + 136, 136, 534, 534, 534, 534, 534, 534, 517, 517, + 517, 517, 517, 546, 563, 160, 517, 517, 517, 517, + 517, 518, 160, 546, 546, 546, 546, 546, 546, 518, + + 568, 241, 273, 266, 520, 564, 589, 160, 557, 160, + 160, 265, 520, 547, 547, 547, 547, 547, 557, 557, + 557, 557, 557, 557, 517, 517, 517, 517, 517, 565, + 582, 569, 548, 160, 160, 160, 136, 518, 136, 136, + 583, 558, 548, 548, 548, 548, 548, 548, 566, 573, + 520, 558, 558, 558, 558, 558, 558, 567, 566, 566, + 566, 566, 566, 566, 160, 574, 160, 567, 567, 567, + 567, 567, 567, 136, 136, 574, 574, 574, 574, 574, + 574, 575, 160, 160, 570, 160, 576, 241, 122, 232, + 586, 575, 575, 575, 575, 575, 575, 519, 229, 160, + + 160, 174, 579, 581, 160, 584, 587, 519, 519, 519, + 519, 519, 519, 581, 581, 581, 581, 581, 581, 519, + 160, 590, 208, 136, 136, 136, 136, 136, 136, 519, + 519, 519, 519, 519, 519, 40, 136, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 46, 46, 136, 46, + 46, 49, 136, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 56, 56, 136, 56, 56, 95, 95, 95, + 95, 95, 95, 95, 95, 95, 99, 136, 99, 99, + 136, 99, 99, 114, 114, 114, 114, 114, 114, 114, + 114, 114, 114, 114, 119, 119, 119, 119, 119, 119, + + 119, 119, 119, 121, 121, 132, 121, 121, 125, 125, + 125, 125, 125, 125, 125, 125, 125, 125, 125, 131, + 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, + 131, 67, 67, 133, 133, 133, 133, 133, 133, 133, + 133, 133, 135, 135, 122, 135, 135, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 159, 159, 122, 159, + 159, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 189, 189, 189, 189, 189, 189, 189, 189, 189, 195, + 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 195, 198, 198, 198, 198, 198, 198, 198, 198, 198, + + 211, 211, 211, 211, 211, 211, 211, 211, 211, 227, + 227, 227, 184, 227, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 263, 263, 263, 174, + 263, 268, 268, 268, 268, 160, 268, 268, 268, 268, + 268, 268, 301, 301, 301, 155, 301, 307, 136, 307, + 307, 307, 307, 307, 307, 307, 307, 307, 310, 136, + 310, 310, 310, 310, 310, 310, 310, 310, 310, 313, + 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, + 346, 346, 346, 59, 346, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 360, 360, 360, 360, + + 360, 360, 360, 360, 360, 360, 360, 391, 391, 391, + 65, 391, 499, 499, 499, 61, 132, 129, 499, 122, + 112, 499, 499, 515, 515, 515, 515, 515, 515, 515, + 515, 515, 519, 519, 519, 107, 106, 519, 519, 519, + 97, 519, 519, 535, 535, 535, 535, 535, 535, 535, + 535, 535, 81, 60, 59, 51, 48, 591, 36, 36, + 7, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591 + } ; + +static yyconst short int yy_chk[2522] = + { 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, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 3, 590, 4, 9, 9, 9, 9, 9, 12, 3, + 17, 4, 10, 10, 10, 10, 10, 11, 11, 11, + 11, 11, 3, 3, 4, 4, 13, 378, 12, 13, + 15, 40, 378, 17, 26, 3, 13, 4, 32, 13, + + 13, 13, 13, 13, 13, 15, 18, 24, 26, 18, + 28, 40, 32, 28, 11, 34, 18, 24, 24, 24, + 24, 24, 24, 27, 28, 36, 27, 27, 32, 34, + 43, 49, 18, 43, 52, 53, 53, 27, 139, 36, + 43, 18, 21, 68, 28, 34, 49, 139, 69, 21, + 21, 66, 21, 66, 27, 69, 36, 52, 68, 21, + 72, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 72, 56, + 74, 21, 23, 37, 37, 37, 37, 37, 91, 587, + + 74, 91, 23, 56, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 71, 33, 85, 23, 33, 33, 38, 38, 38, + 38, 38, 44, 80, 73, 57, 33, 95, 57, 57, + 85, 71, 44, 44, 44, 44, 44, 44, 45, 57, + 73, 95, 59, 33, 59, 58, 80, 70, 45, 45, + 45, 45, 45, 45, 38, 42, 42, 42, 42, 58, + 86, 42, 70, 152, 89, 47, 58, 59, 88, 152, + 86, 89, 47, 70, 42, 47, 47, 47, 47, 47, + + 47, 42, 75, 88, 42, 42, 42, 42, 42, 42, + 50, 50, 50, 50, 76, 76, 584, 75, 114, 78, + 55, 50, 78, 75, 92, 76, 78, 92, 87, 50, + 55, 55, 55, 55, 55, 55, 50, 65, 114, 50, + 50, 50, 50, 50, 50, 87, 93, 65, 65, 65, + 65, 65, 65, 77, 83, 90, 94, 93, 77, 579, + 99, 577, 90, 102, 83, 83, 83, 83, 83, 83, + 102, 100, 125, 94, 99, 77, 108, 102, 103, 77, + 82, 100, 100, 100, 100, 100, 100, 125, 109, 111, + 108, 161, 103, 105, 82, 82, 108, 110, 82, 569, + + 213, 82, 109, 111, 82, 82, 82, 105, 82, 115, + 82, 110, 82, 161, 103, 82, 96, 96, 96, 96, + 96, 105, 213, 111, 109, 110, 104, 113, 96, 115, + 132, 104, 113, 124, 132, 96, 104, 104, 104, 104, + 104, 104, 96, 124, 565, 96, 96, 96, 96, 96, + 96, 118, 113, 116, 116, 116, 116, 116, 124, 116, + 126, 118, 118, 118, 118, 118, 118, 142, 162, 145, + 142, 162, 116, 148, 137, 126, 561, 458, 130, 116, + 148, 154, 116, 116, 116, 116, 116, 116, 117, 117, + 117, 117, 130, 137, 117, 156, 130, 145, 122, 166, + + 153, 154, 156, 255, 458, 166, 255, 117, 122, 122, + 122, 122, 122, 122, 117, 153, 163, 117, 117, 117, + 117, 117, 117, 120, 120, 120, 120, 120, 165, 168, + 169, 164, 163, 123, 200, 167, 165, 172, 168, 169, + 555, 200, 120, 123, 123, 123, 123, 123, 123, 164, + 167, 172, 120, 120, 120, 120, 120, 120, 127, 127, + 127, 127, 127, 177, 202, 218, 204, 170, 136, 127, + 202, 177, 176, 204, 537, 528, 218, 127, 136, 136, + 136, 136, 136, 136, 127, 170, 176, 127, 127, 127, + 127, 127, 127, 128, 128, 128, 128, 179, 209, 221, + + 222, 219, 209, 160, 128, 526, 180, 181, 219, 221, + 222, 179, 128, 160, 160, 160, 160, 160, 160, 128, + 180, 181, 128, 128, 128, 128, 128, 128, 134, 134, + 134, 134, 134, 220, 227, 241, 185, 263, 171, 241, + 220, 183, 227, 521, 512, 263, 215, 134, 171, 171, + 171, 171, 171, 171, 134, 183, 185, 134, 134, 134, + 134, 134, 134, 158, 158, 158, 158, 158, 215, 175, + 182, 192, 207, 216, 247, 333, 175, 194, 333, 511, + 504, 217, 158, 175, 182, 214, 192, 247, 207, 158, + 216, 194, 158, 158, 158, 158, 158, 158, 173, 173, + + 173, 173, 173, 217, 194, 214, 252, 288, 186, 380, + 244, 182, 231, 489, 288, 380, 252, 173, 186, 186, + 186, 186, 186, 186, 187, 244, 231, 173, 173, 173, + 173, 173, 173, 188, 187, 187, 187, 187, 187, 187, + 239, 250, 251, 188, 188, 188, 188, 188, 188, 190, + 190, 190, 190, 190, 239, 258, 253, 254, 250, 191, + 418, 338, 488, 251, 338, 239, 418, 254, 190, 191, + 191, 191, 191, 191, 191, 193, 253, 258, 190, 190, + 190, 190, 190, 190, 197, 193, 193, 193, 193, 193, + 193, 256, 270, 269, 197, 197, 197, 197, 197, 197, + + 199, 199, 199, 199, 199, 284, 470, 270, 295, 289, + 210, 287, 256, 269, 280, 295, 284, 289, 290, 199, + 210, 210, 210, 210, 210, 210, 287, 307, 280, 199, + 199, 199, 199, 199, 199, 212, 212, 212, 212, 212, + 290, 294, 296, 331, 293, 223, 448, 307, 445, 296, + 280, 294, 297, 331, 212, 223, 223, 223, 223, 223, + 223, 224, 293, 297, 212, 212, 212, 212, 212, 212, + 226, 224, 224, 224, 224, 224, 224, 335, 310, 337, + 226, 226, 226, 226, 226, 226, 230, 230, 230, 230, + 230, 233, 230, 310, 335, 259, 337, 230, 340, 230, + + 259, 233, 233, 233, 233, 233, 233, 234, 301, 259, + 328, 332, 230, 235, 340, 259, 301, 234, 234, 234, + 234, 234, 234, 235, 235, 235, 235, 235, 235, 236, + 341, 354, 328, 332, 355, 237, 354, 381, 341, 236, + 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, + 237, 238, 346, 379, 355, 381, 354, 242, 386, 360, + 346, 238, 238, 238, 238, 238, 238, 242, 242, 242, + 242, 242, 242, 243, 360, 379, 382, 442, 419, 248, + 386, 382, 387, 243, 243, 243, 243, 243, 243, 248, + 248, 248, 248, 248, 248, 249, 367, 367, 367, 367, + + 367, 260, 383, 385, 387, 249, 249, 249, 249, 249, + 249, 260, 260, 260, 260, 260, 260, 261, 413, 383, + 385, 570, 367, 262, 399, 413, 400, 261, 261, 261, + 261, 261, 261, 262, 262, 262, 262, 262, 262, 267, + 267, 267, 267, 267, 399, 267, 400, 325, 570, 336, + 267, 325, 267, 268, 268, 268, 268, 268, 274, 268, + 336, 325, 403, 291, 268, 267, 268, 291, 274, 274, + 274, 274, 274, 274, 404, 417, 407, 403, 291, 268, + 272, 272, 272, 272, 272, 291, 272, 342, 373, 404, + 275, 272, 272, 272, 370, 500, 342, 417, 373, 272, + + 275, 275, 275, 275, 275, 275, 272, 276, 370, 272, + 272, 272, 272, 272, 272, 277, 500, 276, 276, 276, + 276, 276, 276, 278, 439, 277, 277, 277, 277, 277, + 277, 279, 370, 278, 278, 278, 278, 278, 278, 281, + 439, 279, 279, 279, 279, 279, 279, 282, 440, 281, + 281, 281, 281, 281, 281, 285, 440, 282, 282, 282, + 282, 282, 282, 286, 479, 285, 285, 285, 285, 285, + 285, 298, 479, 286, 286, 286, 286, 286, 286, 299, + 391, 298, 298, 298, 298, 298, 298, 300, 414, 299, + 299, 299, 299, 299, 299, 414, 421, 300, 300, 300, + + 300, 300, 300, 306, 306, 306, 306, 306, 308, 308, + 308, 308, 308, 416, 377, 384, 306, 388, 421, 319, + 416, 308, 309, 309, 309, 309, 384, 388, 309, 319, + 319, 319, 319, 319, 319, 415, 312, 312, 312, 312, + 312, 309, 312, 420, 426, 449, 415, 312, 309, 312, + 420, 309, 309, 309, 309, 309, 309, 311, 311, 311, + 311, 423, 312, 339, 365, 449, 426, 339, 311, 313, + 313, 313, 313, 313, 424, 313, 311, 351, 339, 423, + 313, 424, 313, 311, 425, 339, 311, 311, 311, 311, + 311, 311, 444, 359, 425, 313, 314, 314, 314, 314, + + 314, 433, 314, 359, 501, 456, 444, 314, 433, 314, + 315, 315, 315, 315, 315, 321, 315, 434, 359, 456, + 501, 315, 314, 315, 434, 321, 321, 321, 321, 321, + 321, 352, 352, 352, 352, 352, 315, 316, 316, 316, + 316, 316, 435, 316, 352, 492, 350, 322, 316, 435, + 316, 371, 371, 371, 371, 371, 316, 322, 322, 322, + 322, 322, 322, 316, 436, 492, 316, 316, 316, 316, + 316, 316, 317, 317, 317, 317, 317, 371, 317, 451, + 422, 437, 324, 317, 317, 317, 422, 436, 437, 451, + 465, 317, 324, 324, 324, 324, 324, 324, 317, 326, + + 465, 317, 317, 317, 317, 317, 317, 327, 513, 326, + 326, 326, 326, 326, 326, 329, 349, 327, 327, 327, + 327, 327, 327, 330, 513, 329, 329, 329, 329, 329, + 329, 409, 432, 330, 330, 330, 330, 330, 330, 343, + 343, 343, 343, 343, 344, 409, 432, 376, 409, 460, + 438, 343, 376, 438, 344, 344, 344, 344, 344, 344, + 345, 376, 447, 460, 348, 343, 432, 376, 447, 446, + 345, 345, 345, 345, 345, 345, 356, 356, 356, 356, + 356, 441, 356, 443, 361, 361, 361, 361, 361, 356, + 441, 446, 467, 450, 461, 361, 347, 361, 450, 467, + + 443, 364, 356, 357, 357, 357, 357, 357, 461, 357, + 361, 364, 364, 364, 364, 364, 364, 374, 374, 374, + 374, 374, 357, 408, 408, 408, 408, 408, 334, 357, + 323, 466, 357, 357, 357, 357, 357, 357, 358, 358, + 358, 358, 457, 374, 358, 459, 466, 457, 366, 408, + 457, 459, 410, 410, 410, 410, 410, 358, 366, 366, + 366, 366, 366, 366, 358, 462, 469, 358, 358, 358, + 358, 358, 358, 362, 362, 362, 362, 362, 410, 462, + 469, 502, 318, 368, 362, 462, 412, 412, 412, 412, + 412, 463, 362, 368, 368, 368, 368, 368, 368, 362, + + 464, 502, 362, 362, 362, 362, 362, 362, 363, 363, + 363, 363, 412, 463, 478, 472, 481, 482, 369, 363, + 472, 483, 464, 481, 482, 478, 486, 363, 369, 369, + 369, 369, 369, 369, 363, 372, 486, 363, 363, 363, + 363, 363, 363, 375, 483, 372, 372, 372, 372, 372, + 372, 468, 471, 375, 375, 375, 375, 375, 375, 389, + 389, 389, 389, 389, 390, 485, 305, 503, 468, 471, + 503, 389, 485, 487, 390, 390, 390, 390, 390, 390, + 398, 398, 398, 398, 398, 389, 398, 401, 476, 476, + 476, 476, 476, 398, 480, 487, 493, 401, 401, 401, + + 401, 401, 401, 477, 476, 480, 398, 402, 402, 402, + 402, 402, 405, 493, 476, 304, 303, 477, 402, 484, + 402, 490, 405, 405, 405, 405, 405, 405, 406, 505, + 484, 411, 507, 402, 505, 507, 490, 411, 406, 406, + 406, 406, 406, 406, 411, 509, 411, 427, 302, 491, + 509, 411, 411, 428, 508, 411, 491, 427, 427, 427, + 427, 427, 427, 428, 428, 428, 428, 428, 428, 429, + 506, 522, 514, 523, 508, 430, 523, 506, 522, 429, + 429, 429, 429, 429, 429, 430, 430, 430, 430, 430, + 430, 453, 514, 525, 527, 524, 292, 454, 527, 529, + + 542, 453, 453, 453, 453, 453, 453, 454, 454, 454, + 454, 454, 454, 455, 524, 525, 529, 530, 562, 473, + 542, 532, 530, 455, 455, 455, 455, 455, 455, 473, + 473, 473, 473, 473, 473, 474, 531, 532, 539, 562, + 544, 475, 551, 531, 538, 474, 474, 474, 474, 474, + 474, 475, 475, 475, 475, 475, 475, 494, 545, 538, + 544, 539, 551, 495, 283, 545, 273, 494, 494, 494, + 494, 494, 494, 495, 495, 495, 495, 495, 495, 496, + 496, 496, 496, 496, 497, 497, 497, 497, 497, 499, + 499, 499, 499, 499, 510, 496, 498, 540, 541, 266, + + 497, 265, 499, 264, 510, 496, 498, 498, 498, 498, + 498, 498, 541, 543, 540, 499, 515, 515, 515, 515, + 515, 517, 517, 517, 517, 517, 549, 586, 257, 515, + 543, 571, 586, 549, 517, 519, 519, 519, 519, 519, + 520, 571, 515, 516, 516, 516, 516, 516, 519, 582, + 520, 520, 520, 520, 520, 520, 516, 550, 552, 563, + 573, 519, 516, 582, 550, 552, 563, 573, 553, 516, + 246, 245, 516, 516, 516, 516, 516, 516, 533, 533, + 533, 533, 533, 534, 553, 554, 535, 535, 535, 535, + 535, 533, 588, 534, 534, 534, 534, 534, 534, 535, + + 559, 240, 232, 229, 533, 554, 588, 576, 546, 556, + 559, 228, 535, 536, 536, 536, 536, 536, 546, 546, + 546, 546, 546, 546, 547, 547, 547, 547, 547, 556, + 576, 559, 536, 564, 578, 211, 206, 547, 205, 203, + 578, 548, 536, 536, 536, 536, 536, 536, 557, 564, + 547, 548, 548, 548, 548, 548, 548, 558, 557, 557, + 557, 557, 557, 557, 560, 566, 568, 558, 558, 558, + 558, 558, 558, 201, 198, 566, 566, 566, 566, 566, + 566, 567, 572, 583, 560, 580, 568, 195, 189, 184, + 583, 567, 567, 567, 567, 567, 567, 574, 178, 585, + + 589, 174, 572, 575, 159, 580, 585, 574, 574, 574, + 574, 574, 574, 575, 575, 575, 575, 575, 575, 581, + 157, 589, 155, 151, 150, 149, 147, 146, 144, 581, + 581, 581, 581, 581, 581, 592, 143, 592, 592, 592, + 592, 592, 592, 592, 592, 592, 593, 593, 141, 593, + 593, 594, 140, 594, 594, 594, 594, 594, 594, 594, + 594, 594, 595, 595, 138, 595, 595, 596, 596, 596, + 596, 596, 596, 596, 596, 596, 597, 135, 597, 597, + 133, 597, 597, 598, 598, 598, 598, 598, 598, 598, + 598, 598, 598, 598, 599, 599, 599, 599, 599, 599, + + 599, 599, 599, 600, 600, 131, 600, 600, 601, 601, + 601, 601, 601, 601, 601, 601, 601, 601, 601, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 603, 603, 604, 604, 604, 604, 604, 604, 604, + 604, 604, 605, 605, 121, 605, 605, 606, 606, 606, + 606, 606, 606, 606, 606, 606, 607, 607, 119, 607, + 607, 608, 608, 608, 608, 608, 608, 608, 608, 608, + 609, 609, 609, 609, 609, 609, 609, 609, 609, 610, + 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, + 610, 611, 611, 611, 611, 611, 611, 611, 611, 611, + + 612, 612, 612, 612, 612, 612, 612, 612, 612, 613, + 613, 613, 112, 613, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 615, 615, 615, 101, + 615, 616, 616, 616, 616, 84, 616, 616, 616, 616, + 616, 616, 617, 617, 617, 81, 617, 618, 79, 618, + 618, 618, 618, 618, 618, 618, 618, 618, 619, 67, + 619, 619, 619, 619, 619, 619, 619, 619, 619, 620, + 620, 620, 620, 620, 620, 620, 620, 620, 620, 620, + 621, 621, 621, 63, 621, 622, 622, 622, 622, 622, + 622, 622, 622, 622, 622, 622, 623, 623, 623, 623, + + 623, 623, 623, 623, 623, 623, 623, 624, 624, 624, + 62, 624, 625, 625, 625, 61, 60, 54, 625, 46, + 39, 625, 625, 626, 626, 626, 626, 626, 626, 626, + 626, 626, 627, 627, 627, 30, 29, 627, 627, 627, + 25, 627, 627, 628, 628, 628, 628, 628, 628, 628, + 628, 628, 22, 20, 19, 16, 14, 7, 6, 5, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, + 591 + } ; + +#line 1 "" +#define INITIAL 0 +#define YY_STACK_USED 1 +#define mediaquery 1 +YY_DECL + { + register yy_state_type yy_current_state; + register UChar *yy_cp, *yy_bp; + register int yy_act; + while ( 1 ) /* loops until end-of-file is reached */ + { + yy_cp = yy_c_buf_p; + + /* Support of yytext. */ + *yy_cp = yy_hold_char; + + /* yy_bp points to the position in yy_ch_buf of the start of + * the current run. + */ + yy_bp = yy_cp; + + yy_current_state = yy_start; + do + { + register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; + yy_last_accepting_cpos = yy_cp; + } + 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 >= 592 ) + yy_c = yy_meta[(unsigned int) yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + ++yy_cp; + } + while ( yy_base[yy_current_state] != 2461 ); + +yy_find_action: + yy_act = yy_accept[yy_current_state]; + if ( yy_act == 0 ) + { /* have to back up */ + yy_cp = yy_last_accepting_cpos; + yy_current_state = yy_last_accepting_state; + yy_act = yy_accept[yy_current_state]; + } + + YY_DO_BEFORE_ACTION; + + + + + switch ( yy_act ) + { /* beginning of action switch */ + case 0: /* must back up */ + /* undo the effects of YY_DO_BEFORE_ACTION */ + *yy_cp = yy_hold_char; + yy_cp = yy_last_accepting_cpos; + yy_current_state = yy_last_accepting_state; + goto yy_find_action; + +case 1: +YY_RULE_SETUP +#line 31 "" +{countLines(); /* ignore comments */ } + YY_BREAK +case 2: +YY_RULE_SETUP +#line 33 "" +{countLines(); yyTok = WHITESPACE; return yyTok;} + YY_BREAK +case 3: +YY_RULE_SETUP +#line 35 "" +{yyTok = SGML_CD; return yyTok;} + YY_BREAK +case 4: +YY_RULE_SETUP +#line 36 "" +{yyTok = SGML_CD; return yyTok;} + YY_BREAK +case 5: +YY_RULE_SETUP +#line 37 "" +{yyTok = INCLUDES; return yyTok;} + YY_BREAK +case 6: +YY_RULE_SETUP +#line 38 "" +{yyTok = DASHMATCH; return yyTok;} + YY_BREAK +case 7: +YY_RULE_SETUP +#line 39 "" +{yyTok = BEGINSWITH; return yyTok;} + YY_BREAK +case 8: +YY_RULE_SETUP +#line 40 "" +{yyTok = ENDSWITH; return yyTok;} + YY_BREAK +case 9: +YY_RULE_SETUP +#line 41 "" +{yyTok = CONTAINS; return yyTok;} + YY_BREAK +case 10: +YY_RULE_SETUP +#line 42 "" +{yyTok = MEDIA_NOT; return yyTok;} + YY_BREAK +case 11: +YY_RULE_SETUP +#line 43 "" +{yyTok = MEDIA_ONLY; return yyTok;} + YY_BREAK +case 12: +YY_RULE_SETUP +#line 44 "" +{yyTok = MEDIA_AND; return yyTok;} + YY_BREAK +case 13: +YY_RULE_SETUP +#line 45 "" +{BEGIN(mediaquery); yyTok = VARIABLES_FOR; return yyTok; } + YY_BREAK +case 14: +YY_RULE_SETUP +#line 47 "" +{yyTok = STRING; return yyTok;} + YY_BREAK +case 15: +YY_RULE_SETUP +#line 48 "" +{yyTok = IDENT; return yyTok;} + YY_BREAK +case 16: +YY_RULE_SETUP +#line 49 "" +{yyTok = NTH; return yyTok;} + YY_BREAK +case 17: +YY_RULE_SETUP +#line 51 "" +{yyTok = HEX; return yyTok;} + YY_BREAK +case 18: +YY_RULE_SETUP +#line 52 "" +{yyTok = IDSEL; return yyTok;} + YY_BREAK +case 19: +YY_RULE_SETUP +#line 54 "" +{BEGIN(mediaquery); yyTok = IMPORT_SYM; return yyTok;} + YY_BREAK +case 20: +YY_RULE_SETUP +#line 55 "" +{yyTok = PAGE_SYM; return yyTok;} + YY_BREAK +case 21: +YY_RULE_SETUP +#line 56 "" +{yyTok = TOPLEFTCORNER_SYM; return yyTok;} + YY_BREAK +case 22: +YY_RULE_SETUP +#line 57 "" +{yyTok = TOPLEFT_SYM; return yyTok;} + YY_BREAK +case 23: +YY_RULE_SETUP +#line 58 "" +{yyTok = TOPCENTER_SYM; return yyTok;} + YY_BREAK +case 24: +YY_RULE_SETUP +#line 59 "" +{yyTok = TOPRIGHT_SYM; return yyTok;} + YY_BREAK +case 25: +YY_RULE_SETUP +#line 60 "" +{yyTok = TOPRIGHTCORNER_SYM; return yyTok;} + YY_BREAK +case 26: +YY_RULE_SETUP +#line 61 "" +{yyTok = BOTTOMLEFTCORNER_SYM; return yyTok;} + YY_BREAK +case 27: +YY_RULE_SETUP +#line 62 "" +{yyTok = BOTTOMLEFT_SYM; return yyTok;} + YY_BREAK +case 28: +YY_RULE_SETUP +#line 63 "" +{yyTok = BOTTOMCENTER_SYM; return yyTok;} + YY_BREAK +case 29: +YY_RULE_SETUP +#line 64 "" +{yyTok = BOTTOMRIGHT_SYM; return yyTok;} + YY_BREAK +case 30: +YY_RULE_SETUP +#line 65 "" +{yyTok = BOTTOMRIGHTCORNER_SYM; return yyTok;} + YY_BREAK +case 31: +YY_RULE_SETUP +#line 66 "" +{yyTok = LEFTTOP_SYM; return yyTok;} + YY_BREAK +case 32: +YY_RULE_SETUP +#line 67 "" +{yyTok = LEFTMIDDLE_SYM; return yyTok;} + YY_BREAK +case 33: +YY_RULE_SETUP +#line 68 "" +{yyTok = LEFTBOTTOM_SYM; return yyTok;} + YY_BREAK +case 34: +YY_RULE_SETUP +#line 69 "" +{yyTok = RIGHTTOP_SYM; return yyTok;} + YY_BREAK +case 35: +YY_RULE_SETUP +#line 70 "" +{yyTok = RIGHTMIDDLE_SYM; return yyTok;} + YY_BREAK +case 36: +YY_RULE_SETUP +#line 71 "" +{yyTok = RIGHTBOTTOM_SYM; return yyTok;} + YY_BREAK +case 37: +YY_RULE_SETUP +#line 72 "" +{BEGIN(mediaquery); yyTok = MEDIA_SYM; return yyTok;} + YY_BREAK +case 38: +YY_RULE_SETUP +#line 73 "" +{yyTok = FONT_FACE_SYM; return yyTok;} + YY_BREAK +case 39: +YY_RULE_SETUP +#line 74 "" +{yyTok = CHARSET_SYM; return yyTok;} + YY_BREAK +case 40: +YY_RULE_SETUP +#line 75 "" +{yyTok = NAMESPACE_SYM; return yyTok; } + YY_BREAK +case 41: +YY_RULE_SETUP +#line 76 "" +{yyTok = WEBKIT_RULE_SYM; return yyTok; } + YY_BREAK +case 42: +YY_RULE_SETUP +#line 77 "" +{yyTok = WEBKIT_DECLS_SYM; return yyTok; } + YY_BREAK +case 43: +YY_RULE_SETUP +#line 78 "" +{yyTok = WEBKIT_VALUE_SYM; return yyTok; } + YY_BREAK +case 44: +YY_RULE_SETUP +#line 79 "" +{BEGIN(mediaquery); yyTok = WEBKIT_MEDIAQUERY_SYM; return yyTok; } + YY_BREAK +case 45: +YY_RULE_SETUP +#line 80 "" +{yyTok = WEBKIT_SELECTOR_SYM; return yyTok; } + YY_BREAK +case 46: +YY_RULE_SETUP +#line 81 "" +{BEGIN(mediaquery); yyTok = WEBKIT_VARIABLES_SYM; return yyTok; } + YY_BREAK +case 47: +YY_RULE_SETUP +#line 82 "" +{BEGIN(forkeyword); yyTok = WEBKIT_DEFINE_SYM; return yyTok; } + YY_BREAK +case 48: +YY_RULE_SETUP +#line 83 "" +{ yyTok = WEBKIT_VARIABLES_DECLS_SYM; return yyTok; } + YY_BREAK +case 49: +YY_RULE_SETUP +#line 84 "" +{yyTok = WEBKIT_KEYFRAMES_SYM; return yyTok; } + YY_BREAK +case 50: +YY_RULE_SETUP +#line 85 "" +{yyTok = WEBKIT_KEYFRAME_RULE_SYM; return yyTok; } + YY_BREAK +case 51: +YY_RULE_SETUP +#line 87 "" +{yyTok = ATKEYWORD; return yyTok; } + YY_BREAK +case 52: +YY_RULE_SETUP +#line 89 "" +{yyTok = IMPORTANT_SYM; return yyTok;} + YY_BREAK +case 53: +YY_RULE_SETUP +#line 91 "" +{yyTok = EMS; return yyTok;} + YY_BREAK +case 54: +YY_RULE_SETUP +#line 92 "" +{yyTok = REMS; return yyTok;} + YY_BREAK +case 55: +YY_RULE_SETUP +#line 93 "" +{yyTok = QEMS; return yyTok;} /* quirky ems */ + YY_BREAK +case 56: +YY_RULE_SETUP +#line 94 "" +{yyTok = EXS; return yyTok;} + YY_BREAK +case 57: +YY_RULE_SETUP +#line 95 "" +{yyTok = PXS; return yyTok;} + YY_BREAK +case 58: +YY_RULE_SETUP +#line 96 "" +{yyTok = CMS; return yyTok;} + YY_BREAK +case 59: +YY_RULE_SETUP +#line 97 "" +{yyTok = MMS; return yyTok;} + YY_BREAK +case 60: +YY_RULE_SETUP +#line 98 "" +{yyTok = INS; return yyTok;} + YY_BREAK +case 61: +YY_RULE_SETUP +#line 99 "" +{yyTok = PTS; return yyTok;} + YY_BREAK +case 62: +YY_RULE_SETUP +#line 100 "" +{yyTok = PCS; return yyTok;} + YY_BREAK +case 63: +YY_RULE_SETUP +#line 101 "" +{yyTok = DEGS; return yyTok;} + YY_BREAK +case 64: +YY_RULE_SETUP +#line 102 "" +{yyTok = RADS; return yyTok;} + YY_BREAK +case 65: +YY_RULE_SETUP +#line 103 "" +{yyTok = GRADS; return yyTok;} + YY_BREAK +case 66: +YY_RULE_SETUP +#line 104 "" +{yyTok = TURNS; return yyTok;} + YY_BREAK +case 67: +YY_RULE_SETUP +#line 105 "" +{yyTok = MSECS; return yyTok;} + YY_BREAK +case 68: +YY_RULE_SETUP +#line 106 "" +{yyTok = SECS; return yyTok;} + YY_BREAK +case 69: +YY_RULE_SETUP +#line 107 "" +{yyTok = HERZ; return yyTok;} + YY_BREAK +case 70: +YY_RULE_SETUP +#line 108 "" +{yyTok = KHERZ; return yyTok;} + YY_BREAK +case 71: +YY_RULE_SETUP +#line 109 "" +{yyTok = DIMEN; return yyTok;} + YY_BREAK +case 72: +YY_RULE_SETUP +#line 110 "" +{yyTok = PERCENTAGE; return yyTok;} + YY_BREAK +case 73: +YY_RULE_SETUP +#line 111 "" +{yyTok = INTEGER; return yyTok;} + YY_BREAK +case 74: +YY_RULE_SETUP +#line 112 "" +{yyTok = FLOATTOKEN; return yyTok;} + YY_BREAK +case 75: +YY_RULE_SETUP +#line 114 "" +{yyTok = NOTFUNCTION; return yyTok;} + YY_BREAK +case 76: +YY_RULE_SETUP +#line 115 "" +{yyTok = URI; return yyTok;} + YY_BREAK +case 77: +YY_RULE_SETUP +#line 116 "" +{yyTok = URI; return yyTok;} + YY_BREAK +case 78: +YY_RULE_SETUP +#line 117 "" +{ yyTok = VARCALL; return yyTok; } + YY_BREAK +case 79: +YY_RULE_SETUP +#line 118 "" +{yyTok = FUNCTION; return yyTok;} + YY_BREAK +case 80: +YY_RULE_SETUP +#line 120 "" +{yyTok = UNICODERANGE; return yyTok;} + YY_BREAK +case 81: +YY_RULE_SETUP +#line 121 "" +{yyTok = UNICODERANGE; return yyTok;} + YY_BREAK +case 82: +#line 124 "" +case 83: +YY_RULE_SETUP +#line 124 "" +{BEGIN(INITIAL); yyTok = *yytext; return yyTok; } + YY_BREAK +case 84: +YY_RULE_SETUP +#line 125 "" +{yyTok = *yytext; return yyTok;} + YY_BREAK +case 85: +YY_RULE_SETUP +#line 127 "" +ECHO; + YY_BREAK +case YY_END_OF_BUFFER: + yy_c_buf_p = yy_cp - 1; + yy_cp = yy_c_buf_p; +case YY_STATE_EOF(INITIAL): +case YY_STATE_EOF(mediaquery): +case YY_STATE_EOF(forkeyword): + yyterminate(); + + default: + YY_FATAL_ERROR( + "fatal flex scanner internal error--no action found" ); + } /* end of action switch */ + } /* end of scanning one token */ + } /* end of yylex */