http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/0957264b/parser/preprocessed/SqlParser_gen.cpp ---------------------------------------------------------------------- diff --git a/parser/preprocessed/SqlParser_gen.cpp b/parser/preprocessed/SqlParser_gen.cpp index 7bdc0ab..fcd070f 100644 --- a/parser/preprocessed/SqlParser_gen.cpp +++ b/parser/preprocessed/SqlParser_gen.cpp @@ -108,6 +108,7 @@ typedef struct YYLTYPE { #include "parser/ParseBasicExpressions.hpp" #include "parser/ParseBlockProperties.hpp" #include "parser/ParseCaseExpressions.hpp" +#include "parser/ParseDataType.hpp" #include "parser/ParseExpression.hpp" #include "parser/ParseGeneratorTableReference.hpp" #include "parser/ParseGroupBy.hpp" @@ -147,7 +148,7 @@ typedef struct YYLTYPE { // Needed for Bison 2.6 and higher, which do not automatically provide this typedef. typedef void* yyscan_t; -#line 151 "SqlParser_gen.cpp" /* yacc.c:339 */ +#line 152 "SqlParser_gen.cpp" /* yacc.c:339 */ # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -209,117 +210,103 @@ extern int quickstep_yydebug; TOKEN_ALTER = 282, TOKEN_AS = 283, TOKEN_ASC = 284, - TOKEN_BIGINT = 285, - TOKEN_BIT = 286, - TOKEN_BITWEAVING = 287, - TOKEN_BLOCKPROPERTIES = 288, - TOKEN_BLOCKSAMPLE = 289, - TOKEN_BLOOM_FILTER = 290, - TOKEN_CSB_TREE = 291, - TOKEN_BY = 292, - TOKEN_CASE = 293, - TOKEN_CAST = 294, - TOKEN_CHARACTER = 295, - TOKEN_CHECK = 296, - TOKEN_COLUMN = 297, - TOKEN_CONSTRAINT = 298, - TOKEN_COPY = 299, - TOKEN_CREATE = 300, - TOKEN_CURRENT = 301, - TOKEN_DATE = 302, - TOKEN_DATETIME = 303, - TOKEN_DAY = 304, - TOKEN_DECIMAL = 305, - TOKEN_DEFAULT = 306, - TOKEN_DELETE = 307, - TOKEN_DESC = 308, - TOKEN_DISTINCT = 309, - TOKEN_DOUBLE = 310, - TOKEN_DOUBLECOLON = 311, - TOKEN_DROP = 312, - TOKEN_ELSE = 313, - TOKEN_END = 314, - TOKEN_EXISTS = 315, - TOKEN_EXTRACT = 316, - TOKEN_FALSE = 317, - TOKEN_FIRST = 318, - TOKEN_FLOAT = 319, - TOKEN_FOLLOWING = 320, - TOKEN_FOR = 321, - TOKEN_FOREIGN = 322, - TOKEN_FROM = 323, - TOKEN_FULL = 324, - TOKEN_GROUP = 325, - TOKEN_HASH = 326, - TOKEN_HAVING = 327, - TOKEN_HOUR = 328, - TOKEN_IN = 329, - TOKEN_INDEX = 330, - TOKEN_INNER = 331, - TOKEN_INSERT = 332, - TOKEN_INTEGER = 333, - TOKEN_INTERVAL = 334, - TOKEN_INTO = 335, - TOKEN_JOIN = 336, - TOKEN_KEY = 337, - TOKEN_LAST = 338, - TOKEN_LBRACE = 339, - TOKEN_LEFT = 340, - TOKEN_LIMIT = 341, - TOKEN_LONG = 342, - TOKEN_MINUTE = 343, - TOKEN_MONTH = 344, - TOKEN_NULL = 345, - TOKEN_NULLS = 346, - TOKEN_OFF = 347, - TOKEN_ON = 348, - TOKEN_ORDER = 349, - TOKEN_OUTER = 350, - TOKEN_OVER = 351, - TOKEN_PARTITION = 352, - TOKEN_PARTITIONS = 353, - TOKEN_PERCENT = 354, - TOKEN_PRECEDING = 355, - TOKEN_PRIMARY = 356, - TOKEN_PRIORITY = 357, - TOKEN_QUIT = 358, - TOKEN_RANGE = 359, - TOKEN_RBRACE = 360, - TOKEN_REAL = 361, - TOKEN_REFERENCES = 362, - TOKEN_RIGHT = 363, - TOKEN_ROW = 364, - TOKEN_ROW_DELIMITER = 365, - TOKEN_ROWS = 366, - TOKEN_SECOND = 367, - TOKEN_SELECT = 368, - TOKEN_SET = 369, - TOKEN_SMA = 370, - TOKEN_SMALLINT = 371, - TOKEN_STDERR = 372, - TOKEN_STDOUT = 373, - TOKEN_SUBSTRING = 374, - TOKEN_TABLE = 375, - TOKEN_THEN = 376, - TOKEN_TIME = 377, - TOKEN_TIMESTAMP = 378, - TOKEN_TO = 379, - TOKEN_TRUE = 380, - TOKEN_TUPLESAMPLE = 381, - TOKEN_UNBOUNDED = 382, - TOKEN_UNIQUE = 383, - TOKEN_UPDATE = 384, - TOKEN_USING = 385, - TOKEN_VALUES = 386, - TOKEN_VARCHAR = 387, - TOKEN_WHEN = 388, - TOKEN_WHERE = 389, - TOKEN_WINDOW = 390, - TOKEN_WITH = 391, - TOKEN_YEAR = 392, - TOKEN_YEARMONTH = 393, - TOKEN_EOF = 394, - TOKEN_LEX_ERROR = 395 + TOKEN_BIT = 285, + TOKEN_BITWEAVING = 286, + TOKEN_BLOCKPROPERTIES = 287, + TOKEN_BLOCKSAMPLE = 288, + TOKEN_BLOOM_FILTER = 289, + TOKEN_CSB_TREE = 290, + TOKEN_BY = 291, + TOKEN_CASE = 292, + TOKEN_CAST = 293, + TOKEN_CHECK = 294, + TOKEN_COLUMN = 295, + TOKEN_CONSTRAINT = 296, + TOKEN_COPY = 297, + TOKEN_CREATE = 298, + TOKEN_CURRENT = 299, + TOKEN_DAY = 300, + TOKEN_DEFAULT = 301, + TOKEN_DELETE = 302, + TOKEN_DESC = 303, + TOKEN_DISTINCT = 304, + TOKEN_DOUBLECOLON = 305, + TOKEN_DROP = 306, + TOKEN_ELSE = 307, + TOKEN_END = 308, + TOKEN_EXISTS = 309, + TOKEN_EXTRACT = 310, + TOKEN_FALSE = 311, + TOKEN_FIRST = 312, + TOKEN_FOLLOWING = 313, + TOKEN_FOR = 314, + TOKEN_FOREIGN = 315, + TOKEN_FROM = 316, + TOKEN_FULL = 317, + TOKEN_GROUP = 318, + TOKEN_HASH = 319, + TOKEN_HAVING = 320, + TOKEN_HOUR = 321, + TOKEN_IN = 322, + TOKEN_INDEX = 323, + TOKEN_INNER = 324, + TOKEN_INSERT = 325, + TOKEN_INTERVAL = 326, + TOKEN_INTO = 327, + TOKEN_JOIN = 328, + TOKEN_KEY = 329, + TOKEN_LAST = 330, + TOKEN_LBRACE = 331, + TOKEN_LEFT = 332, + TOKEN_LIMIT = 333, + TOKEN_MINUTE = 334, + TOKEN_MONTH = 335, + TOKEN_NULL = 336, + TOKEN_NULLS = 337, + TOKEN_OFF = 338, + TOKEN_ON = 339, + TOKEN_ORDER = 340, + TOKEN_OUTER = 341, + TOKEN_OVER = 342, + TOKEN_PARTITION = 343, + TOKEN_PARTITIONS = 344, + TOKEN_PERCENT = 345, + TOKEN_PRECEDING = 346, + TOKEN_PRIMARY = 347, + TOKEN_PRIORITY = 348, + TOKEN_QUIT = 349, + TOKEN_RANGE = 350, + TOKEN_RBRACE = 351, + TOKEN_REAL = 352, + TOKEN_REFERENCES = 353, + TOKEN_RIGHT = 354, + TOKEN_ROW = 355, + TOKEN_ROW_DELIMITER = 356, + TOKEN_ROWS = 357, + TOKEN_SECOND = 358, + TOKEN_SELECT = 359, + TOKEN_SET = 360, + TOKEN_SMA = 361, + TOKEN_STDERR = 362, + TOKEN_STDOUT = 363, + TOKEN_SUBSTRING = 364, + TOKEN_TABLE = 365, + TOKEN_THEN = 366, + TOKEN_TO = 367, + TOKEN_TRUE = 368, + TOKEN_TUPLESAMPLE = 369, + TOKEN_UNBOUNDED = 370, + TOKEN_UNIQUE = 371, + TOKEN_UPDATE = 372, + TOKEN_USING = 373, + TOKEN_VALUES = 374, + TOKEN_WHEN = 375, + TOKEN_WHERE = 376, + TOKEN_WINDOW = 377, + TOKEN_WITH = 378, + TOKEN_YEAR = 379, + TOKEN_EOF = 380, + TOKEN_LEX_ERROR = 381 }; #endif @@ -328,7 +315,7 @@ extern int quickstep_yydebug; union YYSTYPE { -#line 115 "../SqlParser.ypp" /* yacc.c:355 */ +#line 116 "../SqlParser.ypp" /* yacc.c:355 */ quickstep::ParseString *string_value_; @@ -430,7 +417,7 @@ union YYSTYPE quickstep::ParsePriority *opt_priority_clause_; -#line 434 "SqlParser_gen.cpp" /* yacc.c:355 */ +#line 421 "SqlParser_gen.cpp" /* yacc.c:355 */ }; typedef union YYSTYPE YYSTYPE; @@ -459,13 +446,13 @@ int quickstep_yyparse (yyscan_t yyscanner, quickstep::ParseStatement **parsedSta #endif /* !YY_QUICKSTEP_YY_SQLPARSER_GEN_HPP_INCLUDED */ /* Copy the second part of user declarations. */ -#line 217 "../SqlParser.ypp" /* yacc.c:358 */ +#line 218 "../SqlParser.ypp" /* yacc.c:358 */ /* This header needs YYSTYPE, which is defined by the %union directive above */ #include "SqlLexer_gen.hpp" void NotSupported(const YYLTYPE *location, yyscan_t yyscanner, const std::string &feature); -#line 469 "SqlParser_gen.cpp" /* yacc.c:358 */ +#line 456 "SqlParser_gen.cpp" /* yacc.c:358 */ #ifdef short # undef short @@ -709,21 +696,21 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 50 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1626 +#define YYLAST 792 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 152 +#define YYNTOKENS 138 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 113 +#define YYNNTS 115 /* YYNRULES -- Number of rules. */ -#define YYNRULES 308 +#define YYNRULES 296 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 570 +#define YYNSTATES 554 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 395 +#define YYMAXUTOK 381 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -733,11 +720,11 @@ union yyalloc static const yytype_uint8 yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 147, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 133, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 151, 2, 2, - 148, 149, 23, 21, 150, 22, 27, 24, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 146, + 2, 2, 2, 2, 2, 2, 2, 137, 2, 2, + 134, 135, 23, 21, 136, 22, 27, 24, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 132, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -770,45 +757,43 @@ static const yytype_uint8 yytranslate[] = 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145 + 130, 131 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 643, 643, 647, 651, 655, 659, 662, 669, 672, - 675, 678, 681, 684, 687, 690, 693, 696, 702, 708, - 715, 721, 728, 737, 742, 751, 756, 761, 765, 771, - 776, 779, 782, 787, 790, 793, 796, 799, 802, 805, - 808, 811, 814, 826, 829, 832, 850, 870, 873, 876, - 881, 886, 892, 898, 907, 911, 917, 920, 925, 930, - 935, 942, 949, 953, 959, 962, 967, 970, 975, 978, - 983, 986, 1005, 1008, 1013, 1017, 1023, 1026, 1029, 1032, - 1037, 1040, 1043, 1050, 1055, 1066, 1071, 1076, 1080, 1084, - 1090, 1093, 1099, 1107, 1110, 1113, 1119, 1124, 1129, 1133, - 1139, 1143, 1146, 1151, 1154, 1159, 1164, 1169, 1173, 1179, - 1188, 1191, 1196, 1199, 1218, 1223, 1227, 1233, 1239, 1248, - 1253, 1261, 1267, 1273, 1276, 1279, 1284, 1287, 1292, 1296, - 1302, 1305, 1308, 1313, 1318, 1323, 1326, 1329, 1334, 1337, - 1340, 1343, 1346, 1349, 1352, 1355, 1360, 1363, 1368, 1372, - 1376, 1379, 1383, 1386, 1391, 1394, 1399, 1402, 1407, 1411, - 1417, 1420, 1425, 1428, 1433, 1436, 1441, 1444, 1463, 1466, - 1471, 1475, 1481, 1487, 1492, 1495, 1500, 1503, 1508, 1511, - 1516, 1519, 1524, 1525, 1528, 1533, 1534, 1537, 1542, 1546, - 1552, 1559, 1562, 1565, 1570, 1573, 1576, 1582, 1585, 1590, - 1595, 1604, 1609, 1618, 1623, 1626, 1631, 1634, 1639, 1645, - 1651, 1654, 1657, 1660, 1663, 1666, 1672, 1681, 1687, 1692, - 1698, 1703, 1708, 1713, 1716, 1719, 1722, 1725, 1729, 1733, - 1736, 1739, 1742, 1745, 1748, 1753, 1756, 1762, 1766, 1773, - 1777, 1781, 1784, 1789, 1803, 1812, 1826, 1837, 1848, 1856, - 1867, 1870, 1875, 1879, 1885, 1890, 1894, 1900, 1905, 1908, - 1913, 1917, 1923, 1926, 1929, 1932, 1944, 1948, 1967, 1980, - 1995, 1998, 2001, 2004, 2007, 2010, 2015, 2019, 2025, 2028, - 2033, 2037, 2044, 2047, 2050, 2053, 2056, 2059, 2062, 2065, - 2068, 2071, 2076, 2087, 2090, 2095, 2098, 2101, 2107, 2111, - 2117, 2120, 2128, 2131, 2134, 2137, 2143, 2148, 2153 + 0, 632, 632, 636, 640, 644, 648, 651, 658, 661, + 664, 667, 670, 673, 676, 679, 682, 685, 691, 697, + 704, 710, 717, 726, 731, 740, 745, 750, 754, 760, + 763, 768, 774, 780, 785, 792, 795, 798, 803, 806, + 809, 814, 819, 825, 831, 840, 844, 850, 853, 858, + 863, 868, 875, 882, 886, 892, 895, 900, 903, 908, + 911, 916, 919, 938, 941, 946, 950, 956, 959, 962, + 965, 970, 973, 976, 983, 988, 999, 1004, 1009, 1013, + 1017, 1023, 1026, 1032, 1040, 1043, 1046, 1052, 1057, 1062, + 1066, 1072, 1076, 1079, 1084, 1087, 1092, 1097, 1102, 1106, + 1112, 1121, 1124, 1129, 1132, 1151, 1156, 1160, 1166, 1172, + 1181, 1186, 1194, 1200, 1206, 1209, 1212, 1217, 1220, 1225, + 1229, 1235, 1238, 1241, 1246, 1251, 1256, 1259, 1262, 1267, + 1270, 1273, 1276, 1279, 1282, 1285, 1288, 1293, 1296, 1301, + 1305, 1309, 1312, 1316, 1319, 1324, 1327, 1332, 1335, 1340, + 1344, 1350, 1353, 1358, 1361, 1366, 1369, 1374, 1377, 1396, + 1399, 1404, 1408, 1414, 1420, 1425, 1428, 1433, 1436, 1441, + 1444, 1449, 1452, 1457, 1458, 1461, 1466, 1467, 1470, 1475, + 1479, 1485, 1492, 1495, 1498, 1503, 1506, 1509, 1515, 1518, + 1523, 1528, 1537, 1542, 1551, 1556, 1559, 1564, 1567, 1572, + 1578, 1584, 1587, 1590, 1593, 1596, 1599, 1605, 1614, 1620, + 1625, 1631, 1636, 1641, 1646, 1649, 1652, 1655, 1658, 1662, + 1666, 1669, 1672, 1675, 1678, 1681, 1686, 1689, 1695, 1699, + 1706, 1710, 1714, 1717, 1722, 1725, 1730, 1741, 1749, 1760, + 1763, 1768, 1772, 1778, 1783, 1787, 1793, 1798, 1801, 1806, + 1810, 1816, 1819, 1822, 1825, 1837, 1841, 1860, 1875, 1878, + 1881, 1884, 1887, 1890, 1895, 1899, 1905, 1908, 1913, 1917, + 1924, 1927, 1930, 1933, 1936, 1939, 1942, 1945, 1948, 1951, + 1956, 1967, 1970, 1975, 1978, 1981, 1987, 1991, 1997, 2000, + 2008, 2011, 2014, 2017, 2023, 2028, 2033 }; #endif @@ -824,43 +809,40 @@ static const char *const yytname[] = "TOKEN_NEQ", "TOKEN_LIKE", "TOKEN_REGEXP", "TOKEN_BETWEEN", "TOKEN_IS", "'+'", "'-'", "'*'", "'/'", "UNARY_PLUS", "UNARY_MINUS", "'.'", "TOKEN_ALL", "TOKEN_UNION", "TOKEN_INTERSECT", "TOKEN_ADD", - "TOKEN_ALTER", "TOKEN_AS", "TOKEN_ASC", "TOKEN_BIGINT", "TOKEN_BIT", - "TOKEN_BITWEAVING", "TOKEN_BLOCKPROPERTIES", "TOKEN_BLOCKSAMPLE", - "TOKEN_BLOOM_FILTER", "TOKEN_CSB_TREE", "TOKEN_BY", "TOKEN_CASE", - "TOKEN_CAST", "TOKEN_CHARACTER", "TOKEN_CHECK", "TOKEN_COLUMN", - "TOKEN_CONSTRAINT", "TOKEN_COPY", "TOKEN_CREATE", "TOKEN_CURRENT", - "TOKEN_DATE", "TOKEN_DATETIME", "TOKEN_DAY", "TOKEN_DECIMAL", - "TOKEN_DEFAULT", "TOKEN_DELETE", "TOKEN_DESC", "TOKEN_DISTINCT", - "TOKEN_DOUBLE", "TOKEN_DOUBLECOLON", "TOKEN_DROP", "TOKEN_ELSE", - "TOKEN_END", "TOKEN_EXISTS", "TOKEN_EXTRACT", "TOKEN_FALSE", - "TOKEN_FIRST", "TOKEN_FLOAT", "TOKEN_FOLLOWING", "TOKEN_FOR", + "TOKEN_ALTER", "TOKEN_AS", "TOKEN_ASC", "TOKEN_BIT", "TOKEN_BITWEAVING", + "TOKEN_BLOCKPROPERTIES", "TOKEN_BLOCKSAMPLE", "TOKEN_BLOOM_FILTER", + "TOKEN_CSB_TREE", "TOKEN_BY", "TOKEN_CASE", "TOKEN_CAST", "TOKEN_CHECK", + "TOKEN_COLUMN", "TOKEN_CONSTRAINT", "TOKEN_COPY", "TOKEN_CREATE", + "TOKEN_CURRENT", "TOKEN_DAY", "TOKEN_DEFAULT", "TOKEN_DELETE", + "TOKEN_DESC", "TOKEN_DISTINCT", "TOKEN_DOUBLECOLON", "TOKEN_DROP", + "TOKEN_ELSE", "TOKEN_END", "TOKEN_EXISTS", "TOKEN_EXTRACT", + "TOKEN_FALSE", "TOKEN_FIRST", "TOKEN_FOLLOWING", "TOKEN_FOR", "TOKEN_FOREIGN", "TOKEN_FROM", "TOKEN_FULL", "TOKEN_GROUP", "TOKEN_HASH", "TOKEN_HAVING", "TOKEN_HOUR", "TOKEN_IN", "TOKEN_INDEX", "TOKEN_INNER", - "TOKEN_INSERT", "TOKEN_INTEGER", "TOKEN_INTERVAL", "TOKEN_INTO", - "TOKEN_JOIN", "TOKEN_KEY", "TOKEN_LAST", "TOKEN_LBRACE", "TOKEN_LEFT", - "TOKEN_LIMIT", "TOKEN_LONG", "TOKEN_MINUTE", "TOKEN_MONTH", "TOKEN_NULL", - "TOKEN_NULLS", "TOKEN_OFF", "TOKEN_ON", "TOKEN_ORDER", "TOKEN_OUTER", - "TOKEN_OVER", "TOKEN_PARTITION", "TOKEN_PARTITIONS", "TOKEN_PERCENT", + "TOKEN_INSERT", "TOKEN_INTERVAL", "TOKEN_INTO", "TOKEN_JOIN", + "TOKEN_KEY", "TOKEN_LAST", "TOKEN_LBRACE", "TOKEN_LEFT", "TOKEN_LIMIT", + "TOKEN_MINUTE", "TOKEN_MONTH", "TOKEN_NULL", "TOKEN_NULLS", "TOKEN_OFF", + "TOKEN_ON", "TOKEN_ORDER", "TOKEN_OUTER", "TOKEN_OVER", + "TOKEN_PARTITION", "TOKEN_PARTITIONS", "TOKEN_PERCENT", "TOKEN_PRECEDING", "TOKEN_PRIMARY", "TOKEN_PRIORITY", "TOKEN_QUIT", "TOKEN_RANGE", "TOKEN_RBRACE", "TOKEN_REAL", "TOKEN_REFERENCES", "TOKEN_RIGHT", "TOKEN_ROW", "TOKEN_ROW_DELIMITER", "TOKEN_ROWS", - "TOKEN_SECOND", "TOKEN_SELECT", "TOKEN_SET", "TOKEN_SMA", - "TOKEN_SMALLINT", "TOKEN_STDERR", "TOKEN_STDOUT", "TOKEN_SUBSTRING", - "TOKEN_TABLE", "TOKEN_THEN", "TOKEN_TIME", "TOKEN_TIMESTAMP", "TOKEN_TO", - "TOKEN_TRUE", "TOKEN_TUPLESAMPLE", "TOKEN_UNBOUNDED", "TOKEN_UNIQUE", - "TOKEN_UPDATE", "TOKEN_USING", "TOKEN_VALUES", "TOKEN_VARCHAR", + "TOKEN_SECOND", "TOKEN_SELECT", "TOKEN_SET", "TOKEN_SMA", "TOKEN_STDERR", + "TOKEN_STDOUT", "TOKEN_SUBSTRING", "TOKEN_TABLE", "TOKEN_THEN", + "TOKEN_TO", "TOKEN_TRUE", "TOKEN_TUPLESAMPLE", "TOKEN_UNBOUNDED", + "TOKEN_UNIQUE", "TOKEN_UPDATE", "TOKEN_USING", "TOKEN_VALUES", "TOKEN_WHEN", "TOKEN_WHERE", "TOKEN_WINDOW", "TOKEN_WITH", "TOKEN_YEAR", - "TOKEN_YEARMONTH", "TOKEN_EOF", "TOKEN_LEX_ERROR", "';'", "'\\n'", "'('", - "')'", "','", "'%'", "$accept", "start", "sql_statement", - "quit_statement", "alter_table_statement", "create_table_statement", + "TOKEN_EOF", "TOKEN_LEX_ERROR", "';'", "'\\n'", "'('", "')'", "','", + "'%'", "$accept", "start", "sql_statement", "quit_statement", + "alter_table_statement", "create_table_statement", "create_index_statement", "drop_table_statement", "column_def", - "column_def_commalist", "data_type", "column_constraint_def", - "column_constraint_def_list", "opt_column_constraint_def_list", - "table_constraint_def", "table_constraint_def_commalist", - "opt_table_constraint_def_commalist", "opt_column_list", - "opt_block_properties", "opt_partition_clause", "partition_type", - "key_value_list", "key_value", "key_string_value", "key_string_list", - "key_integer_value", "key_bool_value", "index_type", + "column_def_commalist", "data_type", "data_type_parameter_commalist", + "opt_nullable", "column_constraint_def", "column_constraint_def_list", + "opt_column_constraint_def_list", "table_constraint_def", + "table_constraint_def_commalist", "opt_table_constraint_def_commalist", + "opt_column_list", "opt_block_properties", "opt_partition_clause", + "partition_type", "key_value_list", "key_value", "key_string_value", + "key_string_list", "key_integer_value", "key_bool_value", "index_type", "opt_index_properties", "insert_statement", "copy_statement", "copy_to_target", "opt_copy_params", "update_statement", "delete_statement", "assignment_list", "assignment_item", @@ -910,18 +892,16 @@ static const yytype_uint16 yytoknum[] = 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 59, 10, 40, 41, - 44, 37 + 380, 381, 59, 10, 40, 41, 44, 37 }; # endif -#define YYPACT_NINF -280 +#define YYPACT_NINF -257 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-280))) + (!!((Yystate) == (-257))) -#define YYTABLE_NINF -139 +#define YYTABLE_NINF -130 #define yytable_value_is_error(Yytable_value) \ 0 @@ -930,63 +910,62 @@ static const yytype_uint16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - 185, -280, -280, -26, 38, 6, 29, 16, 26, -280, - 47, 210, 210, -280, 215, 84, -280, -280, -280, -280, - -280, -280, -280, -280, -280, -280, 173, 66, 201, -280, - -54, 222, 210, -280, -280, 1, 135, 210, 210, 210, - 210, 210, -280, -280, 768, 138, 113, -280, 236, 117, - -280, -280, -280, 154, 189, 66, 47, 187, -280, 154, - -280, -280, -280, 50, 22, 151, 294, 151, 214, 160, - 177, -280, -14, -280, -280, 314, 317, -280, -280, -280, - 865, 170, 174, -280, 246, -280, -280, 190, -280, -280, - 337, 962, -280, -280, -280, -280, 204, -280, -280, 209, - 279, 1059, 355, 292, 217, -280, -280, 358, 40, -280, - 313, -280, -18, 277, -280, -280, -280, -280, -280, -280, - 1265, 5, 210, 210, 235, 210, 1, 210, -280, 154, - 379, -280, 81, 162, -280, -280, -280, 242, -280, 151, - -280, 210, 210, 671, -280, -280, 260, 210, -280, -280, - -280, 671, 63, 51, -280, 1362, 387, -280, 183, 183, - -280, 276, 1362, 410, -280, -9, 46, -280, 9, 177, - 1362, -280, -280, 210, 1362, -280, -280, -280, -280, 1362, - 340, -280, 1362, 19, 317, 313, 210, 437, 73, -280, - 424, -280, 154, -280, 191, -280, 151, 154, 201, -280, - 210, 172, 210, 210, 210, -280, 288, -280, 200, 1483, - 1168, 235, 562, 430, 431, -280, -280, 525, 419, 1442, - 205, 52, 1362, 54, -280, 1362, -280, 381, 315, 297, - -280, -280, -280, -280, -280, -280, 374, -280, 198, 299, - -280, -280, 18, 220, 253, -280, 300, 220, 2, 377, - -280, -280, 40, -280, -280, -280, -280, 276, 347, -280, - -280, 304, 1362, -280, 276, 221, 210, -280, 1362, -280, - 210, -280, -280, -280, 306, 368, 370, 316, -280, -280, - -280, 223, -280, -280, -280, -280, -280, 12, 210, 327, - 172, 210, 195, -280, -280, 21, 36, 671, 671, 231, - -280, -280, -280, -280, -280, -280, -280, -280, 1362, 318, - 1362, 86, -280, 232, 329, 1362, 67, -280, 405, 276, - -280, 340, -280, 1362, 463, -280, 155, 210, -280, -280, - 371, -280, 375, 376, 388, 9, -280, 471, 477, 220, - 443, 414, 445, 344, 395, -280, 239, -280, 1362, -280, - 276, -280, 671, 350, 351, 210, -280, 210, -280, -280, - -280, -280, -280, -280, -280, 210, -280, -280, -280, 247, - 468, 60, -280, 352, 359, -280, 406, 357, 1442, -280, - 420, 210, -280, -280, 195, -280, -280, 431, -280, -280, - -280, 1362, 360, 237, 1059, -280, 276, 415, -280, -280, - 1442, 361, 276, 1362, -280, 362, 363, 55, -1, -280, - -280, -280, -280, -280, 9, 253, 409, 412, -280, 1362, - 671, 418, 1362, -280, 472, -22, -280, 276, 23, 210, - 210, 249, -280, 252, -280, 210, -280, -280, -280, -280, - 380, 172, 480, 417, -280, 671, -280, -280, 382, -280, - 293, 1059, -280, 1362, 254, -280, -280, 1442, 276, -280, - -280, -280, 515, -280, 425, -280, -280, 383, 430, 482, - 434, 383, 1362, -280, -280, -280, 512, -280, 257, 262, - -280, -280, -280, 210, -280, -280, 386, 507, -280, 35, - 210, 1362, 265, 276, -280, 270, 401, 671, 1362, 544, - 416, 402, -280, 311, 31, 442, -280, 272, 210, 15, - -280, 408, 276, -280, -280, -280, 430, 402, -280, 210, - -280, 416, -280, 1362, -280, -280, 459, 454, 446, 457, - 554, 210, -280, 278, -280, -280, 422, -280, 538, -280, - -280, 37, -280, -280, -280, -280, 62, 427, -280, 210, - 428, -280, -280, 503, 464, 509, -280, 210, 280, 347, - -280, -280, -280, 284, 474, 432, -280, 575, -280, -280 + 653, -257, -257, 37, 86, 4, 58, 84, 157, -257, + 55, 286, 286, -257, 245, 185, -257, -257, -257, -257, + -257, -257, -257, -257, -257, -257, 169, -17, 226, -257, + 144, 276, 286, -257, -257, 10, -22, 286, 286, 286, + 286, 286, -257, -257, 479, 189, 125, -257, 271, 178, + -257, -257, -257, 217, 252, -17, 55, 254, -257, 217, + -257, -257, -257, 174, 79, 207, 354, 207, 281, 251, + 277, -257, -35, -257, -257, 393, 403, -257, 491, 280, + 294, 416, 503, -257, 316, 569, 379, 319, -257, -257, + 386, 7, -257, 396, -257, -39, 360, -257, -257, -257, + -257, -257, -257, 626, 48, 286, 286, 320, 286, 10, + 286, -257, 217, 449, -257, 26, 278, -257, -257, -257, + 323, -257, 207, -257, 286, 286, 472, -257, -257, 324, + 286, -257, -257, -257, 472, 72, 101, -257, 637, 156, + 156, -257, 310, 637, 35, 21, 14, 277, 637, -257, + -257, 286, 637, -257, -257, -257, -257, 637, 286, -257, + 637, 17, 403, 396, 286, 339, 162, -257, 450, -257, + 217, -257, 198, -257, 207, 217, 226, -257, 286, 152, + 286, 286, 286, -257, 326, -257, 206, 286, 576, 320, + 315, 455, 456, -257, -257, 720, 444, 232, 212, 16, + 637, 147, -257, 637, -257, 409, 274, -257, -257, -257, + -257, -257, -257, 402, -257, 39, -257, -257, 9, 74, + 335, -257, 334, 74, 53, 404, -257, -257, 7, -257, + -257, 215, 337, 310, 382, -257, -257, 345, 637, -257, + 310, 228, 286, -257, 637, -257, 286, -257, -257, -257, + 347, 408, 410, 356, -257, -257, -257, 237, -257, -257, + -257, -257, -257, 133, 286, 368, 152, 286, 149, -257, + -257, 6, 36, 472, 472, 283, -257, -257, -257, -257, + -257, -257, -257, -257, 637, 369, 637, 30, -257, 241, + 380, 637, 91, -257, 447, 310, -257, 286, 637, 499, + 151, 286, -257, -257, 425, -257, 426, 427, 441, 14, + -257, 513, 516, 74, 485, 457, -257, 362, 362, 487, + 395, 445, -257, 243, -257, 637, -257, 310, -257, 472, + 406, 407, 286, -257, 286, -257, -257, -257, -257, -257, + -257, -257, 286, -257, -257, -257, 253, 509, 192, -257, + 411, 414, -257, 452, 415, 232, -257, 464, 286, -257, + -257, 149, -257, -257, 456, -257, -257, -257, 637, 418, + 180, 569, -257, 310, 458, -257, -257, 232, 420, 310, + 637, -257, 421, 44, 122, -257, -257, -257, -257, -257, + 14, 335, 462, 466, -257, 637, 472, 460, 77, -257, + 77, -257, 637, -257, 518, 175, -257, 310, 11, 286, + 286, 259, -257, 262, -257, 286, -257, -257, -257, -257, + 428, 152, 527, 473, -257, 472, -257, -257, 434, -257, + 318, 569, -257, 637, 287, -257, -257, 232, 310, -257, + -257, 562, -257, 481, -257, -257, 435, 455, 537, 502, + 501, -257, -257, -257, 435, 637, -257, -257, -257, 573, + -257, 291, 295, -257, -257, -257, 286, -257, -257, 454, + 553, -257, 18, 286, 637, 297, 310, -257, 299, 461, + 472, 637, 588, 474, -257, 463, -257, 190, 49, 497, + -257, 301, 286, 0, -257, 467, 310, -257, -257, -257, + 455, 463, -257, 286, -257, 474, -257, 637, -257, -257, + 520, 507, 504, 512, 601, 286, -257, 306, -257, -257, + 480, -257, 582, -257, -257, 23, -257, -257, -257, -257, + 61, 486, -257, 286, 488, -257, -257, 558, 519, 560, + -257, 286, 308, 382, -257, -257, -257, 311, 532, 492, + -257, 621, -257, -257 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -994,97 +973,96 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 6, 308, 0, 0, 0, 0, 0, 0, 18, - 123, 0, 0, 7, 0, 0, 15, 8, 10, 11, - 13, 14, 9, 17, 12, 16, 0, 112, 119, 121, - 0, 306, 0, 300, 301, 0, 0, 0, 0, 0, - 0, 0, 124, 125, 0, 0, 114, 115, 0, 156, - 1, 3, 2, 0, 0, 112, 123, 0, 110, 0, - 5, 4, 307, 0, 0, 103, 0, 103, 0, 0, - 197, 25, 0, 266, 263, 0, 292, 126, 40, 29, - 0, 0, 0, 30, 31, 34, 36, 0, 37, 39, - 0, 0, 41, 262, 35, 38, 0, 32, 33, 0, - 0, 0, 0, 0, 127, 128, 234, 132, 218, 220, - 222, 225, 0, 226, 229, 230, 231, 232, 224, 223, - 0, 278, 0, 0, 0, 0, 0, 0, 111, 0, - 0, 120, 0, 0, 100, 102, 101, 0, 98, 103, - 97, 0, 0, 0, 106, 198, 0, 0, 94, 264, - 265, 0, 0, 258, 255, 0, 0, 43, 0, 267, - 236, 238, 0, 0, 44, 0, 0, 269, 0, 197, - 0, 293, 294, 0, 0, 131, 296, 297, 295, 0, - 0, 235, 0, 0, 0, 221, 0, 0, 197, 108, - 0, 116, 0, 117, 0, 298, 103, 0, 118, 113, - 0, 0, 0, 0, 0, 96, 66, 27, 0, 0, - 0, 0, 0, 199, 201, 203, 205, 0, 223, 0, - 0, 0, 0, 258, 252, 0, 256, 0, 0, 0, - 272, 273, 274, 271, 275, 270, 0, 268, 0, 0, - 134, 233, 0, 0, 158, 147, 133, 152, 135, 160, - 129, 130, 217, 219, 42, 245, 246, 237, 174, 227, - 279, 0, 0, 239, 260, 0, 0, 105, 0, 157, - 0, 99, 95, 19, 0, 0, 0, 0, 20, 21, - 22, 0, 74, 76, 77, 78, 79, 0, 0, 0, - 64, 0, 56, 204, 212, 0, 0, 0, 0, 0, - 282, 284, 285, 286, 287, 283, 288, 290, 0, 0, - 0, 0, 276, 0, 0, 0, 0, 253, 0, 259, - 251, 0, 45, 0, 0, 46, 138, 0, 148, 154, - 144, 139, 140, 142, 0, 0, 151, 0, 0, 150, - 0, 162, 0, 0, 176, 240, 0, 241, 0, 107, - 109, 299, 0, 0, 0, 0, 104, 0, 81, 84, - 82, 304, 305, 303, 302, 0, 80, 85, 280, 0, - 278, 0, 63, 65, 68, 28, 0, 0, 0, 47, - 0, 0, 49, 55, 57, 26, 211, 200, 202, 289, - 291, 0, 0, 0, 0, 213, 210, 0, 209, 93, - 0, 0, 257, 0, 250, 0, 0, 0, 0, 153, - 155, 145, 141, 143, 0, 159, 0, 0, 149, 0, - 0, 164, 0, 228, 0, 178, 242, 261, 0, 0, - 0, 0, 75, 0, 67, 0, 86, 87, 88, 89, - 90, 0, 0, 70, 48, 0, 51, 50, 0, 54, - 0, 0, 215, 0, 0, 208, 277, 0, 254, 243, - 244, 247, 0, 248, 0, 136, 137, 161, 163, 0, - 166, 175, 0, 181, 180, 173, 0, 61, 0, 0, - 58, 83, 281, 0, 24, 62, 0, 0, 23, 0, - 0, 0, 0, 206, 214, 0, 0, 0, 0, 0, - 168, 177, 188, 191, 0, 0, 59, 0, 0, 0, - 52, 0, 207, 216, 92, 249, 146, 165, 167, 0, - 122, 169, 170, 0, 192, 193, 194, 0, 0, 0, - 0, 0, 91, 0, 72, 73, 0, 53, 0, 171, - 189, 0, 190, 182, 184, 183, 0, 0, 69, 0, - 0, 195, 196, 0, 0, 0, 179, 0, 0, 174, - 185, 187, 186, 0, 0, 0, 60, 0, 172, 71 + 0, 6, 296, 0, 0, 0, 0, 0, 0, 18, + 114, 0, 0, 7, 0, 0, 15, 8, 10, 11, + 13, 14, 9, 17, 12, 16, 0, 103, 110, 112, + 0, 294, 0, 288, 289, 0, 0, 0, 0, 0, + 0, 0, 115, 116, 0, 0, 105, 106, 0, 147, + 1, 3, 2, 0, 0, 103, 114, 0, 101, 0, + 5, 4, 295, 0, 0, 94, 0, 94, 0, 0, + 188, 25, 0, 255, 252, 0, 280, 117, 0, 0, + 0, 0, 0, 251, 0, 0, 0, 118, 119, 225, + 123, 209, 211, 213, 216, 0, 217, 220, 221, 222, + 223, 215, 214, 0, 266, 0, 0, 0, 0, 0, + 0, 102, 0, 0, 111, 0, 0, 91, 93, 92, + 0, 89, 94, 88, 0, 0, 0, 97, 189, 0, + 0, 85, 253, 254, 0, 0, 247, 244, 0, 0, + 256, 227, 229, 0, 0, 0, 0, 188, 0, 281, + 282, 0, 0, 122, 284, 285, 283, 0, 0, 226, + 0, 0, 0, 212, 0, 0, 188, 99, 0, 107, + 0, 108, 0, 286, 94, 0, 109, 104, 0, 0, + 0, 0, 0, 87, 57, 27, 0, 0, 0, 0, + 0, 190, 192, 194, 196, 0, 214, 0, 0, 0, + 0, 247, 241, 0, 245, 0, 0, 260, 261, 262, + 259, 263, 258, 0, 257, 0, 125, 224, 0, 0, + 149, 138, 124, 143, 126, 151, 120, 121, 208, 210, + 235, 0, 29, 228, 165, 218, 267, 0, 0, 230, + 249, 0, 0, 96, 0, 148, 0, 90, 86, 19, + 0, 0, 0, 0, 20, 21, 22, 0, 65, 67, + 68, 69, 70, 0, 0, 0, 55, 0, 47, 195, + 203, 0, 0, 0, 0, 0, 270, 272, 273, 274, + 275, 271, 276, 278, 0, 0, 0, 0, 264, 0, + 0, 0, 0, 242, 0, 248, 240, 0, 0, 0, + 129, 0, 139, 145, 135, 130, 131, 133, 0, 0, + 142, 0, 0, 141, 0, 153, 30, 0, 0, 0, + 0, 167, 231, 0, 232, 0, 98, 100, 287, 0, + 0, 0, 0, 95, 0, 72, 75, 73, 292, 293, + 291, 290, 0, 71, 76, 268, 0, 266, 0, 54, + 56, 59, 28, 0, 0, 0, 38, 0, 0, 40, + 46, 48, 26, 202, 191, 193, 277, 279, 0, 0, + 0, 0, 204, 201, 0, 200, 84, 0, 0, 246, + 0, 239, 0, 0, 0, 144, 146, 136, 132, 134, + 0, 150, 0, 0, 140, 0, 0, 155, 35, 34, + 35, 33, 0, 219, 0, 169, 233, 250, 0, 0, + 0, 0, 66, 0, 58, 0, 77, 78, 79, 80, + 81, 0, 0, 61, 39, 0, 42, 41, 0, 45, + 0, 0, 206, 0, 0, 199, 265, 0, 243, 234, + 236, 0, 237, 0, 127, 128, 152, 154, 0, 157, + 0, 36, 32, 31, 166, 0, 172, 171, 164, 0, + 52, 0, 0, 49, 74, 269, 0, 24, 53, 0, + 0, 23, 0, 0, 0, 0, 197, 205, 0, 0, + 0, 0, 0, 159, 37, 168, 179, 182, 0, 0, + 50, 0, 0, 0, 43, 0, 198, 207, 83, 238, + 137, 156, 158, 0, 113, 160, 161, 0, 183, 184, + 185, 0, 0, 0, 0, 0, 82, 0, 63, 64, + 0, 44, 0, 162, 180, 0, 181, 173, 175, 174, + 0, 0, 60, 0, 0, 186, 187, 0, 0, 0, + 170, 0, 0, 165, 176, 178, 177, 0, 0, 0, + 51, 0, 163, 62 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -280, -280, -280, -280, -280, -280, -280, -280, -126, -280, - -170, 203, -280, -280, -279, -280, -280, -280, -280, -280, - -280, -229, 233, -280, -280, -280, -280, -280, -280, -280, - -280, 42, -41, -280, -280, -280, 322, -280, 534, -280, - -280, 469, 256, 462, 0, 537, -280, -280, 426, -280, - -103, -280, -280, -181, 180, -164, -7, -280, -280, -280, - -280, -280, -280, -280, 74, 41, -280, -280, -280, -280, - -280, -280, 101, 78, -280, -280, -62, -280, -150, 305, - 310, 393, -35, 435, 433, 490, -280, -280, -162, -280, - -280, -280, -280, -280, 390, -280, 458, 396, -248, -217, - 461, 159, -139, -280, -280, -280, -280, -280, -144, -4, - -280, -280, -280 + -257, -257, -257, -257, -257, -257, -257, -257, -105, -257, + -182, -257, 234, 279, -257, -257, -255, -257, -257, -257, + -257, -257, -257, -256, 304, -257, -257, -257, -257, -257, + -257, -257, -257, 5, -40, -257, -257, -257, 397, -257, + 591, -257, -257, 543, 258, 539, -50, 597, -257, -257, + 515, -257, -101, -257, -257, -180, 270, -191, -10, -257, + -257, -257, -257, -257, -257, -257, 159, 118, -257, -257, + -257, -257, -257, -257, 184, 160, -257, -257, 100, -257, + -131, 398, 392, 482, -15, 521, 517, 572, -257, -257, + -142, -257, -257, -257, -257, -257, 471, -257, 540, 476, + -222, -187, 541, 247, -109, -257, -257, -257, -257, -257, + -129, -4, -257, -257, -257 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 14, 15, 16, 17, 18, 19, 20, 207, 208, - 102, 383, 384, 385, 278, 373, 374, 289, 443, 488, - 536, 281, 282, 283, 284, 285, 286, 440, 484, 21, - 22, 65, 138, 23, 24, 188, 189, 25, 58, 26, - 46, 47, 165, 28, 29, 44, 103, 104, 105, 169, - 106, 339, 334, 244, 245, 328, 329, 246, 341, 421, - 470, 500, 520, 521, 522, 343, 344, 425, 475, 476, - 530, 556, 501, 502, 526, 542, 144, 145, 213, 214, - 215, 216, 217, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 223, 224, 153, 154, 227, 265, 118, - 236, 313, 119, 369, 310, 120, 174, 179, 194, 121, - 367, 30, 31 + -1, 14, 15, 16, 17, 18, 19, 20, 185, 186, + 230, 231, 452, 360, 361, 362, 254, 350, 351, 265, + 423, 471, 520, 257, 258, 259, 260, 261, 262, 420, + 467, 21, 22, 65, 121, 23, 24, 166, 167, 25, + 58, 26, 46, 47, 144, 28, 29, 44, 86, 87, + 88, 147, 89, 313, 308, 220, 221, 302, 303, 222, + 315, 397, 449, 483, 504, 505, 506, 320, 321, 405, + 458, 459, 514, 540, 485, 486, 510, 526, 127, 128, + 191, 192, 193, 194, 195, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 201, 202, 136, 137, 205, + 241, 101, 213, 289, 102, 346, 286, 103, 152, 157, + 172, 104, 344, 30, 31 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1092,435 +1070,267 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 36, 221, 312, 220, 218, 48, 247, 45, 49, 107, - 255, 372, 218, 33, 346, 34, 33, 358, 34, 359, - 56, 193, 33, 33, 34, 34, 140, 134, 63, 297, - 56, 297, 186, 68, 69, 70, 71, 72, 527, 292, - 360, 337, 33, 297, 34, 152, 299, 300, 301, 302, - 303, 304, 305, 306, 307, 308, 161, 171, 172, 131, - 297, 326, 295, 176, 177, 243, 166, 171, 172, 553, - 462, 218, 148, 218, 273, 42, 171, 172, 67, 361, - 247, 132, 528, 336, 171, 172, 37, 473, 171, 172, - 60, 534, 181, 61, 474, 56, 397, 436, 205, 32, - 437, 438, 39, 175, 10, 551, 43, 249, 294, 362, - 363, 41, 133, 554, 225, 309, 48, 225, 190, 49, - 228, 195, 146, 197, 535, 552, 267, 238, 200, 201, - 64, 38, 182, 338, 147, 107, 10, 206, 209, 243, - 240, 40, 364, 195, 135, 136, 454, 257, 463, 368, - 187, 405, 264, 187, 415, 271, 10, 242, 218, 218, - 365, 446, 485, 529, 248, 375, 242, 258, 196, 251, - 386, 467, 477, 247, 471, 418, 256, 296, 315, 259, - 439, 398, 260, 456, 510, 241, 1, 316, 2, 151, - 319, 178, 222, 403, 555, 241, 209, 272, 279, 280, - 287, 222, 428, 492, 461, 376, 395, 57, 66, 202, - 203, 431, 143, 218, 33, 50, 34, 3, 274, 171, - 172, 433, 53, 266, 33, 62, 34, 264, 51, 330, - 52, 59, 243, 350, 4, 5, 331, 230, 248, 49, - 312, 377, 6, 49, 275, 332, 453, 7, 389, 390, - 391, 378, 247, 327, 507, 54, 27, 122, 171, 172, - 35, 231, 190, 123, 64, 125, 351, 8, 333, 124, - 468, 324, 10, 393, 127, 396, 232, 233, 276, 533, - 402, 218, 55, 366, 370, 478, 479, 209, 407, 452, - 379, 10, 137, 9, 130, 489, 482, 171, 172, 139, - 234, 380, 491, 10, 409, 277, 218, 381, 142, 126, - 392, 243, 141, 427, 171, 172, 143, 406, 155, 11, - 410, 149, 156, 49, 150, 235, 12, 330, 382, 13, - 157, 248, 171, 172, 331, 49, 171, 172, 158, -138, - 269, 270, 159, 332, 33, 524, 34, 516, 321, 290, - 291, 195, 162, 287, 314, 270, 450, 163, 218, 264, - 167, 195, 33, 164, 34, 168, 333, 170, 458, 525, - 347, 348, 356, 357, 180, 78, 79, 448, 183, 171, - 172, 399, 400, 192, 264, 82, 199, 264, 426, 348, - 204, 173, 83, 84, 229, 85, 434, 435, 480, 270, - 86, 481, 270, 494, 348, 558, 505, 270, 219, 88, - 248, 506, 270, 563, 513, 348, 264, 239, 493, 514, - 400, 532, 357, 89, 254, 195, 195, 548, 357, 564, - 270, 370, 92, 566, 270, 268, 288, 503, 297, 311, - 298, 33, 73, 34, 74, 320, 322, 323, 325, 342, - 335, 94, 340, 345, 352, 353, 512, 354, 75, 76, - 261, 95, 371, 503, 355, 401, 394, 97, 98, 404, - 408, 411, 78, 79, 414, 412, 413, 99, 416, 287, - 80, 81, 82, 100, 417, 419, 511, 422, 503, 83, - 84, 420, 85, 423, 424, 186, 262, 86, 429, 430, - 442, 444, 441, 87, 287, 445, 88, 447, 451, 457, - 455, 459, 460, 465, 472, 538, 466, 469, 486, 487, - 89, 90, 496, 497, 498, 499, 91, 547, 483, 92, - 490, 504, 93, 348, 508, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 195, 171, 172, 94, 509, - 515, 518, 523, 195, 531, 541, 519, 537, 95, 543, - 544, 96, 545, 546, 97, 98, 33, 73, 34, 74, - 549, 550, 210, 560, 99, 557, 559, 567, 561, 562, - 100, 568, 569, 75, 76, 101, 263, 449, 349, 128, - 432, 198, 191, 129, 464, 539, 250, 78, 79, 517, - 565, 540, 387, 293, 309, 80, 81, 82, 388, 252, - 185, 226, 253, 317, 83, 84, 495, 85, 0, 318, - 237, 0, 86, 0, 0, 0, 0, 211, 87, 0, - 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 89, 90, 0, 0, 0, - 0, 91, 0, 0, 92, 0, 0, 93, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 94, 0, 33, 73, 34, 74, 0, - 10, 210, 0, 95, 0, 0, 96, 0, 0, 97, - 98, 0, 75, 76, 0, 0, 0, 0, 0, 99, - 0, 0, 0, 0, 0, 100, 78, 79, 0, 0, - 212, 0, 0, 0, 80, 81, 82, 0, 0, 0, - 0, 0, 0, 83, 84, 0, 85, 0, 0, 0, - 0, 86, 0, 0, 0, 0, 211, 87, 0, 0, - 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 89, 90, 0, 0, 0, 0, - 91, 0, 0, 92, 0, 0, 93, 0, 0, 0, - 0, 0, 33, 73, 34, 74, 0, 0, 0, 0, - 0, 0, 94, 0, 0, 0, 0, 0, 0, 75, - 76, 77, 95, 0, 0, 96, 0, 0, 97, 98, - 0, 0, 0, 78, 79, 0, 0, 0, 99, 0, - 0, 80, 81, 82, 100, 0, 0, 0, 0, 212, - 83, 84, 0, 85, 0, 0, 0, 0, 86, 0, - 0, 0, 0, 0, 87, 0, 0, 88, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 89, 90, 0, 0, 0, 0, 91, 0, 0, - 92, 0, 0, 93, 0, 0, 0, 0, 0, 33, - 73, 34, 74, 0, 0, 0, 0, 0, 0, 94, - 0, 0, 0, 0, 0, 0, 75, 76, 0, 95, - 0, 0, 96, 0, 0, 97, 98, 0, 0, 0, - 78, 79, 0, 0, 0, 99, 0, 0, 80, 81, - 82, 100, 0, 0, 0, 0, 101, 83, 84, 0, - 85, 0, 0, 0, 0, 86, 0, 0, 0, 0, - 0, 87, 0, 0, 88, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 89, 90, - 0, 0, 0, 0, 91, 0, 0, 92, 0, 0, - 93, 0, 0, 0, 0, 0, 33, 73, 34, 74, - 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, - 0, 0, 0, 75, 76, 0, 95, 0, 0, 96, - 0, 0, 97, 98, 0, 0, 0, 78, 79, 0, - 0, 0, 99, 151, 0, 80, 81, 82, 100, 0, - 0, 0, 0, 101, 83, 84, 0, 85, 0, 0, - 0, 0, 86, 0, 0, 0, 0, 0, 87, 0, - 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 89, 90, 0, 0, 0, - 0, 91, 0, 0, 92, 0, 0, 93, 0, 0, - 0, 0, 0, 33, 73, 34, 74, 0, 0, 0, - 0, 0, 160, 94, 0, 0, 0, 0, 0, 0, - 75, 76, 0, 95, 0, 0, 96, 0, 0, 97, - 98, 0, 0, 0, 78, 79, 0, 0, 0, 99, - 0, 0, 80, 81, 82, 100, 0, 0, 0, 0, - 101, 83, 84, 0, 85, 0, 0, 0, 0, 86, - 0, 0, 0, 0, 0, 87, 0, 0, 88, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 89, 90, 0, 0, 0, 0, 91, 0, - 0, 92, 0, 0, 93, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 94, 0, 33, 73, 34, 74, 0, 10, 0, 0, - 95, 0, 0, 96, 0, 0, 97, 98, 0, 75, - 76, 0, 0, 0, 0, 0, 99, 0, 0, 0, - 0, 0, 100, 78, 79, 0, 0, 101, 0, 0, - 0, 80, 81, 82, 0, 0, 0, 0, 0, 0, - 83, 84, 0, 85, 0, 0, 0, 0, 86, 0, - 0, 0, 0, 211, 87, 0, 0, 88, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 89, 90, 0, 0, 0, 0, 91, 0, 0, - 92, 0, 0, 93, 0, 0, 0, 0, 0, 33, - 73, 34, 74, 0, 0, 0, 0, 0, 0, 94, - 0, 0, 0, 0, 0, 0, 75, 184, 0, 95, - 0, 0, 96, 0, 0, 97, 98, 0, 0, 0, - 78, 79, 0, 0, 0, 99, 0, 0, 80, 81, - 82, 100, 0, 0, 0, 0, 212, 83, 84, 0, - 85, 0, 0, 0, 0, 86, 0, 0, 0, 0, - 0, 87, 0, 0, 88, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 89, 90, - 0, 0, 0, 0, 91, 0, 0, 92, 0, 0, - 93, 0, 0, 0, 0, 0, 33, 73, 34, 74, - 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, - 0, 0, 0, 75, 76, 0, 95, 0, 0, 96, - 0, 0, 97, 98, 0, 0, 0, 78, 79, 0, - 0, 0, 99, 0, 0, 80, 81, 82, 100, 0, - 0, 0, 0, 101, 83, 84, 0, 85, 0, 0, - 0, 0, 86, 0, 0, 0, 0, 0, 87, 0, - 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 89, 90, 73, 0, 74, - 0, 91, 0, 0, 92, 0, 0, 93, 0, 0, - 0, 0, 0, 75, 184, 0, 0, 0, 0, 0, - 0, 0, 0, 94, 0, 0, 0, 78, 79, 0, - 0, 0, 0, 95, 0, 0, 96, 82, 0, 97, - 98, 0, 0, 0, 83, 84, 0, 85, 0, 99, - 0, 0, 86, 0, 0, 100, 0, 0, 0, 0, - 101, 88, 0, 0, 0, 0, 0, 0, 78, 79, - 0, 0, 0, 0, 0, 89, 90, 0, 82, 0, - 0, 0, 0, 0, 92, 83, 84, 93, 85, 0, - 0, 0, 0, 86, 0, 0, 0, 0, 0, 0, - 0, 0, 88, 94, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 95, 0, 0, 89, 254, 0, 97, - 98, 0, 0, 0, 0, 92, 0, 0, 0, 99, - 0, 0, 0, 0, 0, 100, 0, 0, 0, 0, - 0, 0, 0, 0, 94, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 95, 0, 0, 0, 0, 0, - 97, 98, 0, 0, 0, 0, 0, 0, 0, 0, - 99, 0, 0, 0, 0, 0, 100 + 36, 198, 48, 199, 223, 268, 171, 45, 49, 114, + 288, 349, 56, 33, 273, 34, 323, 196, 33, 273, + 34, 33, 131, 34, 273, 196, 273, 123, 63, 90, + 154, 155, 310, 68, 69, 70, 71, 72, 300, 56, + 374, 67, 149, 150, 66, 219, 275, 276, 277, 278, + 279, 280, 281, 282, 283, 284, 511, 149, 150, 271, + 149, 150, 159, 135, 56, 149, 150, 142, 537, 518, + 145, 178, 179, 249, 10, 164, 223, 37, 33, 196, + 34, 196, 183, 42, 117, 535, 153, 450, 270, 129, + 33, 311, 34, 149, 150, 64, 48, 160, 512, 130, + 519, 168, 49, 536, 173, 299, 175, 301, 285, 43, + 538, 57, 149, 150, 174, 382, 375, 219, 10, 38, + 184, 187, 394, 206, 39, 248, 173, 64, 215, 391, + 399, 401, 291, 90, 247, 398, 400, 33, 335, 34, + 336, 363, 224, 218, 156, 233, 460, 227, 218, 434, + 240, 234, 32, 494, 232, 345, 217, 235, 203, 353, + 236, 337, 352, 451, 196, 196, 468, 223, 426, 513, + 216, 217, 312, 446, 187, 272, 255, 256, 263, 440, + 454, 539, 165, 232, 372, 292, 441, 165, 295, 433, + 436, 118, 119, 354, 338, 10, 250, 200, 408, 40, + 355, 149, 150, 411, 203, 115, 207, 380, 219, 475, + 491, 149, 150, 413, 224, 49, 53, 251, 304, 49, + 196, 339, 340, 240, 508, 305, 134, 208, 416, 327, + 116, 417, 418, 306, 41, 356, 517, 73, 168, 74, + 209, 210, 328, 509, 54, 50, 357, 225, 223, 252, + 288, 341, 358, 75, 162, 307, 59, 442, 27, 343, + 347, 106, 35, 187, 211, 447, 243, 342, 432, 370, + 359, 373, 200, 253, 60, 456, 379, 61, 10, 62, + 461, 462, 457, 383, 55, 212, 385, 196, 126, 219, + 33, 386, 34, 232, 472, 149, 150, 49, 242, 105, + 366, 367, 368, 419, 107, 224, 465, 297, 81, 49, + 407, 109, 108, 232, 232, 51, 196, 52, 83, 33, + 73, 34, 74, 180, 181, 188, 10, 474, 173, 110, + 263, 149, 150, 245, 246, 120, 75, 76, 173, 149, + 150, 266, 267, 33, 73, 34, 74, 290, 246, 500, + 316, 317, 113, 430, 428, 369, 240, 78, 79, 122, + 75, 76, 237, 324, 325, 438, 33, 73, 34, 74, + 124, 196, 333, 334, 189, 80, 376, 377, 406, 325, + 240, 78, 79, 75, 162, 125, 224, 240, 414, 415, + 33, 81, 34, 238, 463, 246, 82, 464, 246, 80, + 132, 83, 304, 126, 542, 173, 173, 149, 150, 305, + 133, 347, 547, -129, 138, 81, 240, 306, 476, 151, + 82, 140, 477, 325, 10, 83, 489, 246, 139, 84, + 490, 246, 497, 325, 498, 377, 516, 334, 81, 307, + 487, 532, 334, 548, 246, 146, 550, 246, 83, 190, + 143, 158, 161, 84, 170, 148, 177, 182, 197, 496, + 264, 244, 263, 273, 287, 274, 487, 296, 298, 495, + 309, 318, 314, 85, 239, 319, 33, 73, 34, 74, + 322, 329, 188, 33, 73, 34, 74, 330, 263, 331, + 332, 348, 487, 75, 76, 33, 73, 34, 74, 522, + 75, 76, 77, 371, 378, 381, 384, 33, 73, 34, + 74, 531, 75, 76, 78, 79, 387, 388, 389, 390, + 392, 78, 79, 393, 75, 76, 395, 396, 402, 173, + 403, 189, 80, 78, 79, 404, 164, 173, 424, 80, + 409, 410, 422, 427, 435, 78, 79, 421, 81, 425, + 448, 80, 431, 82, 437, 81, 439, 444, 83, 455, + 82, 445, 466, 80, 469, 83, 470, 81, 473, 479, + 480, 325, 82, 33, 73, 34, 74, 83, 481, 81, + 33, 73, 34, 74, 82, 482, 84, 484, 492, 83, + 75, 76, 488, 84, 493, 502, 499, 75, 76, 507, + 515, 503, 521, 527, 141, 84, 190, 525, 529, 528, + 530, 78, 79, 85, 533, 534, 134, 84, 78, 79, + 541, 544, 543, 546, 545, 85, 551, 552, 553, 80, + 33, 73, 34, 74, 453, 189, 80, 85, 412, 326, + 429, 33, 73, 34, 74, 81, 111, 75, 162, 169, + 82, 176, 81, 112, 1, 83, 2, 82, 75, 76, + 443, 549, 83, 226, 523, 501, 365, 524, 78, 79, + 269, 364, 293, 228, 229, 163, 204, 294, 10, 78, + 79, 214, 0, 84, 478, 3, 80, 0, 0, 0, + 84, 0, 0, 0, 0, 0, 0, 80, 0, 0, + 4, 5, 81, 85, 0, 6, 0, 82, 0, 7, + 190, 0, 83, 81, 0, 0, 0, 0, 82, 0, + 0, 0, 0, 83, 0, 0, 0, 0, 8, 0, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 84, 149, 150, 0, 0, 0, 0, 0, 0, 0, + 0, 84, 9, 0, 0, 0, 0, 0, 0, 0, + 85, 0, 10, 0, 0, 0, 0, 0, 0, 0, + 0, 85, 0, 0, 0, 11, 0, 0, 0, 0, + 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, + 0, 0, 285 }; static const yytype_int16 yycheck[] = { - 4, 151, 219, 147, 143, 12, 168, 11, 12, 44, - 180, 290, 151, 4, 262, 6, 4, 5, 6, 7, - 29, 124, 4, 4, 6, 6, 67, 5, 32, 8, - 29, 8, 27, 37, 38, 39, 40, 41, 7, 209, - 28, 39, 4, 8, 6, 80, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 91, 21, 22, 59, - 8, 242, 212, 23, 24, 168, 101, 21, 22, 7, - 71, 210, 72, 212, 200, 28, 21, 22, 36, 67, - 242, 31, 51, 247, 21, 22, 80, 109, 21, 22, - 144, 76, 110, 147, 116, 29, 10, 37, 139, 125, - 40, 41, 73, 107, 118, 68, 59, 169, 211, 97, - 98, 85, 62, 51, 63, 79, 123, 63, 122, 123, - 155, 125, 136, 127, 109, 88, 188, 162, 47, 48, - 129, 125, 150, 131, 148, 170, 118, 141, 142, 242, - 149, 125, 130, 147, 122, 123, 394, 182, 149, 288, - 148, 321, 187, 148, 335, 196, 118, 148, 297, 298, - 148, 378, 441, 132, 168, 291, 148, 148, 126, 173, - 149, 419, 149, 335, 422, 339, 180, 212, 126, 183, - 120, 95, 186, 400, 149, 149, 1, 222, 3, 138, - 225, 151, 138, 126, 132, 149, 200, 197, 202, 203, - 204, 138, 352, 451, 149, 10, 309, 141, 73, 47, - 48, 355, 139, 352, 4, 0, 6, 32, 46, 21, - 22, 365, 49, 150, 4, 3, 6, 262, 144, 74, - 146, 30, 335, 268, 49, 50, 81, 54, 242, 243, - 457, 46, 57, 247, 72, 90, 9, 62, 17, 18, - 19, 56, 414, 33, 483, 82, 0, 119, 21, 22, - 4, 78, 266, 150, 129, 148, 270, 82, 113, 33, - 420, 73, 118, 308, 85, 310, 93, 94, 106, 508, - 315, 420, 26, 287, 288, 429, 430, 291, 323, 392, - 95, 118, 141, 108, 107, 445, 435, 21, 22, 5, - 117, 106, 9, 118, 149, 133, 445, 112, 148, 53, - 79, 414, 98, 348, 21, 22, 139, 321, 148, 134, - 327, 7, 148, 327, 7, 142, 141, 74, 133, 144, - 84, 335, 21, 22, 81, 339, 21, 22, 148, 86, - 149, 150, 5, 90, 4, 34, 6, 497, 33, 149, - 150, 355, 148, 357, 149, 150, 391, 148, 497, 394, - 5, 365, 4, 84, 6, 73, 113, 150, 403, 58, - 149, 150, 149, 150, 61, 35, 36, 381, 101, 21, - 22, 149, 150, 148, 419, 45, 7, 422, 149, 150, - 148, 33, 52, 53, 7, 55, 149, 150, 149, 150, - 60, 149, 150, 149, 150, 549, 149, 150, 148, 69, - 414, 149, 150, 557, 149, 150, 451, 7, 453, 149, - 150, 149, 150, 83, 84, 429, 430, 149, 150, 149, - 150, 435, 92, 149, 150, 11, 148, 472, 8, 20, - 9, 4, 5, 6, 7, 64, 149, 73, 149, 102, - 150, 111, 75, 149, 148, 87, 491, 87, 21, 22, - 23, 121, 135, 498, 148, 136, 148, 127, 128, 64, - 7, 100, 35, 36, 86, 100, 100, 137, 7, 483, - 43, 44, 45, 143, 7, 42, 490, 42, 523, 52, - 53, 77, 55, 149, 99, 27, 59, 60, 148, 148, - 141, 95, 150, 66, 508, 148, 69, 87, 148, 148, - 95, 149, 149, 104, 42, 519, 104, 99, 38, 102, - 83, 84, 7, 98, 42, 91, 89, 531, 148, 92, - 148, 19, 95, 150, 148, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 549, 21, 22, 111, 42, - 149, 7, 150, 557, 112, 96, 140, 149, 121, 105, - 114, 124, 105, 9, 127, 128, 4, 5, 6, 7, - 148, 33, 10, 70, 137, 148, 148, 103, 114, 70, - 143, 149, 7, 21, 22, 148, 149, 384, 266, 55, - 357, 129, 123, 56, 414, 521, 170, 35, 36, 498, - 559, 523, 297, 210, 79, 43, 44, 45, 298, 174, - 120, 153, 179, 223, 52, 53, 457, 55, -1, 223, - 159, -1, 60, -1, -1, -1, -1, 65, 66, -1, - -1, 69, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 83, 84, -1, -1, -1, - -1, 89, -1, -1, 92, -1, -1, 95, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 111, -1, 4, 5, 6, 7, -1, - 118, 10, -1, 121, -1, -1, 124, -1, -1, 127, - 128, -1, 21, 22, -1, -1, -1, -1, -1, 137, - -1, -1, -1, -1, -1, 143, 35, 36, -1, -1, - 148, -1, -1, -1, 43, 44, 45, -1, -1, -1, - -1, -1, -1, 52, 53, -1, 55, -1, -1, -1, - -1, 60, -1, -1, -1, -1, 65, 66, -1, -1, - 69, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 83, 84, -1, -1, -1, -1, - 89, -1, -1, 92, -1, -1, 95, -1, -1, -1, - -1, -1, 4, 5, 6, 7, -1, -1, -1, -1, - -1, -1, 111, -1, -1, -1, -1, -1, -1, 21, - 22, 23, 121, -1, -1, 124, -1, -1, 127, 128, - -1, -1, -1, 35, 36, -1, -1, -1, 137, -1, - -1, 43, 44, 45, 143, -1, -1, -1, -1, 148, - 52, 53, -1, 55, -1, -1, -1, -1, 60, -1, - -1, -1, -1, -1, 66, -1, -1, 69, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 83, 84, -1, -1, -1, -1, 89, -1, -1, - 92, -1, -1, 95, -1, -1, -1, -1, -1, 4, - 5, 6, 7, -1, -1, -1, -1, -1, -1, 111, - -1, -1, -1, -1, -1, -1, 21, 22, -1, 121, - -1, -1, 124, -1, -1, 127, 128, -1, -1, -1, - 35, 36, -1, -1, -1, 137, -1, -1, 43, 44, - 45, 143, -1, -1, -1, -1, 148, 52, 53, -1, - 55, -1, -1, -1, -1, 60, -1, -1, -1, -1, - -1, 66, -1, -1, 69, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 83, 84, - -1, -1, -1, -1, 89, -1, -1, 92, -1, -1, - 95, -1, -1, -1, -1, -1, 4, 5, 6, 7, - -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, - -1, -1, -1, 21, 22, -1, 121, -1, -1, 124, - -1, -1, 127, 128, -1, -1, -1, 35, 36, -1, - -1, -1, 137, 138, -1, 43, 44, 45, 143, -1, - -1, -1, -1, 148, 52, 53, -1, 55, -1, -1, - -1, -1, 60, -1, -1, -1, -1, -1, 66, -1, - -1, 69, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 83, 84, -1, -1, -1, - -1, 89, -1, -1, 92, -1, -1, 95, -1, -1, - -1, -1, -1, 4, 5, 6, 7, -1, -1, -1, - -1, -1, 110, 111, -1, -1, -1, -1, -1, -1, - 21, 22, -1, 121, -1, -1, 124, -1, -1, 127, - 128, -1, -1, -1, 35, 36, -1, -1, -1, 137, - -1, -1, 43, 44, 45, 143, -1, -1, -1, -1, - 148, 52, 53, -1, 55, -1, -1, -1, -1, 60, - -1, -1, -1, -1, -1, 66, -1, -1, 69, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 83, 84, -1, -1, -1, -1, 89, -1, - -1, 92, -1, -1, 95, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 111, -1, 4, 5, 6, 7, -1, 118, -1, -1, - 121, -1, -1, 124, -1, -1, 127, 128, -1, 21, - 22, -1, -1, -1, -1, -1, 137, -1, -1, -1, - -1, -1, 143, 35, 36, -1, -1, 148, -1, -1, - -1, 43, 44, 45, -1, -1, -1, -1, -1, -1, - 52, 53, -1, 55, -1, -1, -1, -1, 60, -1, - -1, -1, -1, 65, 66, -1, -1, 69, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 83, 84, -1, -1, -1, -1, 89, -1, -1, - 92, -1, -1, 95, -1, -1, -1, -1, -1, 4, - 5, 6, 7, -1, -1, -1, -1, -1, -1, 111, - -1, -1, -1, -1, -1, -1, 21, 22, -1, 121, - -1, -1, 124, -1, -1, 127, 128, -1, -1, -1, - 35, 36, -1, -1, -1, 137, -1, -1, 43, 44, - 45, 143, -1, -1, -1, -1, 148, 52, 53, -1, - 55, -1, -1, -1, -1, 60, -1, -1, -1, -1, - -1, 66, -1, -1, 69, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 83, 84, - -1, -1, -1, -1, 89, -1, -1, 92, -1, -1, - 95, -1, -1, -1, -1, -1, 4, 5, 6, 7, - -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, - -1, -1, -1, 21, 22, -1, 121, -1, -1, 124, - -1, -1, 127, 128, -1, -1, -1, 35, 36, -1, - -1, -1, 137, -1, -1, 43, 44, 45, 143, -1, - -1, -1, -1, 148, 52, 53, -1, 55, -1, -1, - -1, -1, 60, -1, -1, -1, -1, -1, 66, -1, - -1, 69, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 83, 84, 5, -1, 7, - -1, 89, -1, -1, 92, -1, -1, 95, -1, -1, - -1, -1, -1, 21, 22, -1, -1, -1, -1, -1, - -1, -1, -1, 111, -1, -1, -1, 35, 36, -1, - -1, -1, -1, 121, -1, -1, 124, 45, -1, 127, - 128, -1, -1, -1, 52, 53, -1, 55, -1, 137, - -1, -1, 60, -1, -1, 143, -1, -1, -1, -1, - 148, 69, -1, -1, -1, -1, -1, -1, 35, 36, - -1, -1, -1, -1, -1, 83, 84, -1, 45, -1, - -1, -1, -1, -1, 92, 52, 53, 95, 55, -1, - -1, -1, -1, 60, -1, -1, -1, -1, -1, -1, - -1, -1, 69, 111, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 121, -1, -1, 83, 84, -1, 127, - 128, -1, -1, -1, -1, 92, -1, -1, -1, 137, - -1, -1, -1, -1, -1, 143, -1, -1, -1, -1, - -1, -1, -1, -1, 111, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 121, -1, -1, -1, -1, -1, - 127, 128, -1, -1, -1, -1, -1, -1, -1, -1, - 137, -1, -1, -1, -1, -1, 143 + 4, 130, 12, 134, 146, 187, 107, 11, 12, 59, + 197, 266, 29, 4, 8, 6, 238, 126, 4, 8, + 6, 4, 72, 6, 8, 134, 8, 67, 32, 44, + 23, 24, 223, 37, 38, 39, 40, 41, 218, 29, + 10, 36, 21, 22, 66, 146, 10, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 7, 21, 22, 190, + 21, 22, 101, 78, 29, 21, 22, 82, 7, 69, + 85, 45, 46, 178, 109, 27, 218, 73, 4, 188, + 6, 190, 122, 28, 5, 62, 90, 10, 189, 124, + 4, 38, 6, 21, 22, 117, 106, 136, 49, 134, + 100, 105, 106, 80, 108, 66, 110, 33, 72, 54, + 49, 128, 21, 22, 109, 297, 86, 218, 109, 115, + 124, 125, 313, 138, 66, 175, 130, 117, 143, 309, + 317, 318, 116, 148, 174, 317, 318, 4, 5, 6, + 7, 135, 146, 134, 137, 160, 135, 151, 134, 371, + 165, 134, 115, 135, 158, 264, 135, 161, 57, 10, + 164, 28, 267, 86, 273, 274, 421, 309, 355, 120, + 135, 135, 119, 395, 178, 190, 180, 181, 182, 135, + 402, 120, 134, 187, 285, 200, 64, 134, 203, 9, + 377, 112, 113, 44, 61, 109, 44, 125, 329, 115, + 51, 21, 22, 332, 57, 31, 50, 116, 309, 431, + 466, 21, 22, 342, 218, 219, 47, 65, 67, 223, + 329, 88, 89, 238, 34, 74, 125, 71, 36, 244, + 56, 39, 40, 82, 77, 86, 492, 5, 242, 7, + 84, 85, 246, 53, 75, 0, 97, 147, 390, 97, + 437, 118, 103, 21, 22, 104, 30, 135, 0, 263, + 264, 136, 4, 267, 108, 396, 166, 134, 369, 284, + 121, 286, 125, 121, 130, 100, 291, 133, 109, 3, + 409, 410, 107, 298, 26, 129, 135, 396, 126, 390, + 4, 301, 6, 297, 425, 21, 22, 301, 136, 110, + 17, 18, 19, 111, 33, 309, 415, 33, 76, 313, + 325, 53, 134, 317, 318, 130, 425, 132, 86, 4, + 5, 6, 7, 45, 46, 10, 109, 9, 332, 77, + 334, 21, 22, 135, 136, 128, 21, 22, 342, 21, + 22, 135, 136, 4, 5, 6, 7, 135, 136, 480, + 135, 136, 98, 368, 358, 72, 371, 42, 43, 5, + 21, 22, 23, 135, 136, 380, 4, 5, 6, 7, + 89, 480, 135, 136, 59, 60, 135, 136, 135, 136, + 395, 42, 43, 21, 22, 134, 390, 402, 135, 136, + 4, 76, 6, 54, 135, 136, 81, 135, 136, 60, + 7, 86, 67, 126, 533, 409, 410, 21, 22, 74, + 7, 415, 541, 78, 134, 76, 431, 82, 433, 33, + 81, 5, 135, 136, 109, 86, 135, 136, 134, 114, + 135, 136, 135, 136, 135, 136, 135, 136, 76, 104, + 455, 135, 136, 135, 136, 66, 135, 136, 86, 134, + 134, 55, 92, 114, 134, 136, 7, 134, 134, 474, + 134, 11, 466, 8, 20, 9, 481, 58, 66, 473, + 136, 134, 68, 134, 135, 93, 4, 5, 6, 7, + 135, 134, 10, 4, 5, 6, 7, 79, 492, 79, + 134, 123, 507, 21, 22, 4, 5, 6, 7, 503, + 21, 22, 23, 134, 124, 58, 7, 4, 5, 6, + 7, 515, 21, 22, 42, 43, 91, 91, 91, 78, + 7, 42, 43, 7, 21, 22, 41, 70, 41, 533, + 135, 59, 60, 42, 43, 90, 27, 541, 86, 60, + 134, 134, 128, 79, 86, 42, 43, 136, 76, 134, + 90, 60, 134, 81, 134, 76, 135, 95, 86, 41, + 81, 95, 134, 60, 37, 86, 93, 76, 134, 7, + 89, 136, 81, 4, 5, 6, 7, 86, 41, 76, + 4, 5, 6, 7, 81, 83, 114, 86, 134, 86, + 21, 22, 19, 114, 41, 7, 135, 21, 22, 136, + 103, 127, 135, 96, 101, 114, 134, 87, 96, 105, + 9, 42, 43, 134, 134, 33, 125, 114, 42, 43, + 134, 63, 134, 63, 105, 134, 94, 135, 7, 60, + 4, 5, 6, 7, 400, 59, 60, 134, 334, 242, + 361, 4, 5, 6, 7, 76, 55, 21, 22, 106, + 81, 112, 76, 56, 1, 86, 3, 81, 21, 22, + 390, 543, 86, 148, 505, 481, 274, 507, 42, 43, + 188, 273, 201, 152, 157, 103, 136, 201, 109, 42, + 43, 140, -1, 114, 437, 32, 60, -1, -1, -1, + 114, -1, -1, -1, -1, -1, -1, 60, -1, -1, + 47, 48, 76, 134, -1, 52, -1, 81, -1, 56, + 134, -1, 86, 76, -1, -1, -1, -1, 81, -1, + -1, -1, -1, 86, -1, -1, -1, -1, 75, -1, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 114, 21, 22, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 99, -1, -1, -1, -1, -1, -1, -1, + 134, -1, 109, -1, -1, -1, -1, -1, -1, -1, + -1, 134, -1, -1, -1, 122, -1, -1, -1, -1, + -1, 128, -1, 130, -1, -1, -1, -1, -1, -1, + -1, -1, 72 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ -static const yytype_uint16 yystos[] = +static const yytype_uint8 yystos[] = { - 0, 1, 3, 32, 49, 50, 57, 62, 82, 108, - 118, 134, 141, 144, 153, 154, 155, 156, 157, 158, - 159, 181, 182, 185, 186, 189, 191, 194, 195, 196, - 263, 264, 125, 4, 6, 194, 261, 80, 125, 73, - 125, 85, 28, 59, 197, 261, 192, 193, 208, 261, - 0, 144, 146, 49, 82, 194, 29, 141, 190, 30, - 144, 147, 3, 261, 129, 183, 73, 183, 261, 261, - 261, 261, 261, 5, 7, 21, 22, 23, 35, 36, - 43, 44, 45, 52, 53, 55, 60, 66, 69, 83, - 84, 89, 92, 95, 111, 121, 124, 127, 128, 137, - 143, 148, 162, 198, 199, 200, 202, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 251, 254, - 257, 261, 119, 150, 33, 148, 194, 85, 190, 197, - 107, 196, 31, 62, 5, 122, 123, 141, 184, 5, - 184, 98, 148, 139, 228, 229, 136, 148, 196, 7, - 7, 138, 234, 247, 248, 148, 148, 84, 148, 5, - 110, 234, 148, 148, 84, 194, 234, 5, 73, 201, - 150, 21, 22, 33, 258, 261, 23, 24, 151, 259, - 61, 110, 150, 101, 22, 237, 27, 148, 187, 188, - 261, 193, 148, 202, 260, 261, 183, 261, 195, 7, - 47, 48, 47, 48, 148, 184, 261, 160, 161, 261, - 10, 65, 148, 230, 231, 232, 233, 234, 254, 148, - 260, 230, 138, 245, 246, 63, 248, 249, 234, 7, - 54, 78, 93, 94, 117, 142, 252, 252, 234, 7, - 149, 149, 148, 202, 205, 206, 209, 240, 261, 228, - 200, 261, 235, 236, 84, 162, 261, 234, 148, 261, - 261, 23, 59, 149, 234, 250, 150, 228, 11, 149, - 150, 184, 196, 160, 46, 72, 106, 133, 166, 261, - 261, 173, 174, 175, 176, 177, 178, 261, 148, 169, - 149, 150, 162, 233, 202, 230, 234, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 79, - 256, 20, 251, 253, 149, 126, 234, 246, 249, 234, - 64, 33, 149, 73, 73, 149, 205, 33, 207, 208, - 74, 81, 90, 113, 204, 150, 207, 39, 131, 203, - 75, 210, 102, 217, 218, 149, 250, 149, 150, 188, - 234, 261, 148, 87, 87, 148, 149, 150, 5, 7, - 28, 67, 97, 98, 130, 148, 261, 262, 254, 255, - 261, 135, 166, 167, 168, 160, 10, 46, 56, 95, - 106, 112, 133, 163, 164, 165, 149, 231, 232, 17, - 18, 19, 79, 234, 148, 202, 234, 10, 95, 149, - 150, 136, 234, 126, 64, 162, 261, 234, 7, 149, - 208, 100, 100, 100, 86, 205, 7, 7, 207, 42, - 77, 211, 42, 149, 99, 219, 149, 234, 230, 148, - 148, 260, 174, 260, 149, 150, 37, 40, 41, 120, - 179, 150, 141, 170, 95, 148, 251, 87, 261, 163, - 234, 148, 202, 9, 250, 95, 251, 148, 234, 149, - 149, 149, 71, 149, 206, 104, 104, 250, 230, 99, - 212, 250, 42, 109, 116, 220, 221, 149, 260, 260, - 149, 149, 254, 148, 180, 166, 38, 102, 171, 230, - 148, 9, 250, 234, 149, 253, 7, 98, 42, 91, - 213, 224, 225, 234, 19, 149, 149, 173, 148, 42, - 149, 261, 234, 149, 149, 149, 230, 224, 7, 140, - 214, 215, 216, 150, 34, 58, 226, 7, 51, 132, - 222, 112, 149, 173, 76, 109, 172, 149, 261, 216, - 225, 96, 227, 105, 114, 105, 9, 261, 149, 148, - 33, 68, 88, 7, 51, 132, 223, 148, 260, 148, - 70, 114, 70, 260, 149, 217, 149, 103, 149, 7 + 0, 1, 3, 32, 47, 48, 52, 56, 75, 99, + 109, 122, 128, 130, 139, 140, 141, 142, 143, 144, + 145, 169, 170, 173, 174, 177, 179, 182, 183, 184, + 251, 252, 115, 4, 6, 182, 249, 73, 115, 66, + 115, 77, 28, 54, 185, 249, 180, 181, 196, 249, + 0, 130, 132, 47, 75, 182, 29, 128, 178, 30, + 130, 133, 3, 249, 117, 171, 66, 171, 249, 249, + 249, 249, 249, 5, 7, 21, 22, 23, 42, 43, + 60, 76, 81, 86, 114, 134, 186, 187, 188, 190, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 239, 242, 245, 249, 110, 136, 33, 134, 182, + 77, 178, 185, 98, 184, 31, 56, 5, 112, 113, + 128, 172, 5, 172, 89, 134, 126, 216, 217, 124, + 134, 184, 7, 7, 125, 222, 235, 236, 134, 134, + 5, 101, 222, 134, 182, 222, 66, 189, 136, 21, + 22, 33, 246, 249, 23, 24, 137, 247, 55, 101, + 136, 92, 22, 225, 27, 134, 175, 176, 249, 181, + 134, 190, 248, 249, 171, 249, 183, 7, 45, 46, + 45, 46, 134, 172, 249, 146, 147, 249, 10, 59, + 134, 218, 219, 220, 221, 222, 242, 134, 248, 218, + 125, 233, 234, 57, 236, 237, 222, 50, 71, 84, + 85, 108, 129, 240, 240, 222, 135, 135, 134, 190, + 193, 194, 197, 228, 249, 216, 188, 249, 223, 224, + 148, 149, 249, 222, 134, 249, 249, 23, 54, 135, + 222, 238, 136, 216, 11, 135, 136, 172, 184, 146, + 44, 65, 97, 121, 154, 249, 249, 161, 162, 163, + 164, 165, 166, 249, 134, 157, 135, 136, 148, 221, + 190, 218, 222, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 72, 244, 20, 239, 241, + 135, 116, 222, 234, 237, 222, 58, 33, 66, 66, + 193, 33, 195, 196, 67, 74, 82, 104, 192, 136, + 195, 38, 119, 191, 68, 198, 135, 136, 134, 93, + 205, 206, 135, 238, 135, 136, 176, 222, 249, 134, + 79, 79, 134, 135, 136, 5, 7, 28, 61, 88, + 89, 118, 134, 249, 250, 242, 243, 249, 123, 154, + 155, 156, 146, 10, 44, 51, 86, 97, 103, 121, + 151, 152, 153, 135, 219, 220, 17, 18, 19, 72, + 222, 134, 190, 222, 10, 86, 135, 136, 124, 222, + 116, 58, 148, 222, 7, 135, 196, 91, 91, 91, + 78, 193, 7, 7, 195, 41, 70, 199, 148, 239, + 148, 239, 41, 135, 90, 207, 135, 222, 218, 134, + 134, 248, 162, 248, 135, 136, 36, 39, 40, 111, + 167, 136, 128, 158, 86, 134, 239, 79, 249, 151, + 222, 134, 190, 9, 238, 86, 239, 134, 222, 135, + 135, 64, 135, 194, 95, 95, 238, 218, 90, 200, + 10, 86, 150, 150, 238, 41, 100, 107, 208, 209, + 135, 248, 248, 135, 135, 242, 134, 168, 154, 37, + 93, 159, 218, 134, 9, 238, 222, 135, 241, 7, + 89, 41, 83, 201, 86, 212, 213, 222, 19, 135, + 135, 161, 134, 41, 135, 249, 222, 135, 135, 135, + 218, 212, 7, 127, 202, 203, 204, 136, 34, 53, + 214, 7, 49, 120, 210, 103, 135, 161, 69, 100, + 160, 135, 249, 204, 213, 87, 215, 96, 105, 96, + 9, 249, 135, 134, 33, 62, 80, 7, 49, 120, + 211, 134, 248, 134, 63, 105, 63, 248, 135, 205, + 135, 94, 135, 7 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const yytype_uint16 yyr1[] = +static const yytype_uint8 yyr1[] = { - 0, 152, 153, 153, 153, 153, 153, 153, 154, 154, - 154, 154, 154, 154, 154, 154, 154, 154, 155, 156, - 156, 156, 156, 157, 158, 159, 160, 161, 161, 162, - 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 163, 163, 163, - 163, 163, 163, 163, 164, 164, 165, 165, 166, 166, - 166, 166, 167, 167, 168, 168, 169, 169, 170, 170, - 171, 171, 172, 172, 173, 173, 174, 174, 174, 174, - 175, 175, 175, 176, 177, 178, 179, 179, 179, 179, - 180, 180, 181, 181, 181, 181, 182, 182, 182, 182, - 183, 183, 183, 184, 184, 185, 186, 187, 187, 188, - 189, 189, 190, 190, 191, 192, 192, 193, 194, 194, - 195, 195, 196, 197, 197, 197, 198, 198, 199, 199, - 200, 200, 200, 201, 202, 203, 203, 203, 204, 204, - 204, 204, 204, 204, 204, 204, 205, 205, 206, 206, - 206, 206, 206, 206, 207, 207, 208, 208, 209, 209, - 210, 210, 211, 211, 212, 212, 213, 213, 214, 214, - 215, 215, 216, 217, 218, 218, 219, 219, 220, 220, - 221, 221, 222, 222, 222, 223, 223, 223, 224, 224, - 225, 226, 226, 226, 227, 227, 227, 228, 228, 229, - 230, 230, 231, 231, 232, 232, 233, 233, 233, 233, - 233, 233, 233, 233, 233, 233, 233, 234, 234, 235, - 235, 236, 236, 237, 237, 237, 237, 237, 237, 237, - 237, 237, 237, 237, 237, 238, 238, 239, 239, 240, - 240, 240, 240, 241, 241, 241, 241, 242, 243, 243, - 244, 244, 245, 245, 246, 247, 247, 248, 249, 249, - 250, 250, 251, 251, 251, 251, 251, 251, 251, 251, - 252, 252, 252, 252, 252, 252, 253, 253, 254, 254, - 255, 255, 256, 256, 256, 256, 256, 256, 256, 256, - 256, 256, 257, 258, 258, 259, 259, 259, 260, 260, - 261, 261, 262, 262, 262, 262, 263, 264, 264 + 0, 138, 139, 139, 139, 139, 139, 139, 140, 140, + 140, 140, 140, 140, 140, 140, 140, 140, 141, 142, + 142, 142, 142, 143, 144, 145, 146, 147, 147, 148, + 148, 149, 149, 149, 149, 150, 150, 150, 151, 151, + 151, 151, 151, 151, 151, 152, 152, 153, 153, 154, + 154, 154, 154, 155, 155, 156, 156, 157, 157, 158, + 158, 159, 159, 160, 160, 161, 161, 162, 162, 162, + 162, 163, 163, 163, 164, 165, 166, 167, 167, 167, + 167, 168, 168, 169, 169, 169, 169, 170, 170, 170, + 170, 171, 171, 171, 172, 172, 173, 174, 175, 175, + 176, 177, 177, 178, 178, 179, 180, 180, 181, 182, + 182, 183, 183, 184, 185, 185, 185, 186, 186, 187, + 187, 188, 188, 188, 189, 190, 191, 191, 191, 192, + 192, 192, 192, 192, 192, 192, 192, 193, 193, 194, + 194, 194, 194, 194, 194, 195, 195, 196, 196, 197, + 197, 198, 198, 199, 199, 200, 200, 201, 201, 202, + 202, 203, 203, 204, 205, 206, 206, 207, 207, 208, + 208, 209, 209, 210, 210, 210, 211, 211, 211, 212, + 212, 213, 214, 214, 214, 215, 215, 215, 216, 216, + 217, 218, 218, 219, 219, 220, 220, 221, 221, 221, + 221, 221, 221, 221, 221, 221, 221, 221, 222, 222, + 223, 223, 224, 224, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 226, 226, 227, 227, + 228, 228, 228, 228, 229, 229, 230, 231, 231, 232, + 232, 233, 233, 234, 235,
<TRUNCATED>
