diff --git a/src/parser/bison_parser.cpp b/src/parser/bison_parser.cpp index 70b07d5..539b436 100644 --- a/src/parser/bison_parser.cpp +++ b/src/parser/bison_parser.cpp @@ -196,128 +196,127 @@ extern int hsql_debug; SQL_DEFAULT = 276, SQL_EXECUTE = 277, SQL_EXPLAIN = 278, - SQL_HISTORY = 279, - SQL_INTEGER = 280, - SQL_NATURAL = 281, - SQL_PREPARE = 282, - SQL_PRIMARY = 283, - SQL_SCHEMAS = 284, - SQL_SPATIAL = 285, - SQL_VARCHAR = 286, - SQL_VIRTUAL = 287, - SQL_BEFORE = 288, - SQL_COLUMN = 289, - SQL_CREATE = 290, - SQL_DELETE = 291, - SQL_DIRECT = 292, - SQL_DOUBLE = 293, - SQL_ESCAPE = 294, - SQL_EXCEPT = 295, - SQL_EXISTS = 296, - SQL_EXTRACT = 297, - SQL_GLOBAL = 298, - SQL_HAVING = 299, - SQL_IMPORT = 300, - SQL_INSERT = 301, - SQL_ISNULL = 302, - SQL_OFFSET = 303, - SQL_RENAME = 304, - SQL_SCHEMA = 305, - SQL_SELECT = 306, - SQL_SORTED = 307, - SQL_TABLES = 308, - SQL_UNIQUE = 309, - SQL_UNLOAD = 310, - SQL_UPDATE = 311, - SQL_VALUES = 312, - SQL_AFTER = 313, - SQL_ALTER = 314, - SQL_CROSS = 315, - SQL_DELTA = 316, - SQL_FLOAT = 317, - SQL_GROUP = 318, - SQL_INDEX = 319, - SQL_INNER = 320, - SQL_LIMIT = 321, - SQL_LOCAL = 322, - SQL_MERGE = 323, - SQL_MINUS = 324, - SQL_ORDER = 325, - SQL_OUTER = 326, - SQL_RIGHT = 327, - SQL_TABLE = 328, - SQL_UNION = 329, - SQL_USING = 330, - SQL_WHERE = 331, - SQL_CALL = 332, - SQL_CASE = 333, - SQL_CHAR = 334, - SQL_DATE = 335, - SQL_DESC = 336, - SQL_DROP = 337, - SQL_ELSE = 338, - SQL_FILE = 339, - SQL_FROM = 340, - SQL_FULL = 341, - SQL_HASH = 342, - SQL_HINT = 343, - SQL_INTO = 344, - SQL_JOIN = 345, - SQL_LEFT = 346, - SQL_LIKE = 347, - SQL_LOAD = 348, - SQL_LONG = 349, - SQL_NULL = 350, - SQL_PLAN = 351, - SQL_SHOW = 352, - SQL_TEXT = 353, - SQL_THEN = 354, - SQL_TIME = 355, - SQL_VIEW = 356, - SQL_WHEN = 357, - SQL_WITH = 358, - SQL_ADD = 359, - SQL_ALL = 360, - SQL_AND = 361, - SQL_ASC = 362, - SQL_CSV = 363, - SQL_END = 364, - SQL_FOR = 365, - SQL_INT = 366, - SQL_KEY = 367, - SQL_NOT = 368, - SQL_OFF = 369, - SQL_SET = 370, - SQL_TBL = 371, - SQL_TOP = 372, - SQL_AS = 373, - SQL_BY = 374, - SQL_IF = 375, - SQL_IN = 376, - SQL_IS = 377, - SQL_OF = 378, - SQL_ON = 379, - SQL_OR = 380, - SQL_TO = 381, - SQL_ARRAY = 382, - SQL_CONCAT = 383, - SQL_ILIKE = 384, - SQL_SECOND = 385, - SQL_MINUTE = 386, - SQL_HOUR = 387, - SQL_DAY = 388, - SQL_MONTH = 389, - SQL_YEAR = 390, - SQL_TRUE = 391, - SQL_FALSE = 392, - SQL_EQUALS = 393, - SQL_NOTEQUALS = 394, - SQL_LESS = 395, - SQL_GREATER = 396, - SQL_LESSEQ = 397, - SQL_GREATEREQ = 398, - SQL_NOTNULL = 399, - SQL_UMINUS = 400 + SQL_INTEGER = 279, + SQL_NATURAL = 280, + SQL_PREPARE = 281, + SQL_PRIMARY = 282, + SQL_SCHEMAS = 283, + SQL_SPATIAL = 284, + SQL_VARCHAR = 285, + SQL_VIRTUAL = 286, + SQL_BEFORE = 287, + SQL_COLUMN = 288, + SQL_CREATE = 289, + SQL_DELETE = 290, + SQL_DIRECT = 291, + SQL_DOUBLE = 292, + SQL_ESCAPE = 293, + SQL_EXCEPT = 294, + SQL_EXISTS = 295, + SQL_EXTRACT = 296, + SQL_GLOBAL = 297, + SQL_HAVING = 298, + SQL_IMPORT = 299, + SQL_INSERT = 300, + SQL_ISNULL = 301, + SQL_OFFSET = 302, + SQL_RENAME = 303, + SQL_SCHEMA = 304, + SQL_SELECT = 305, + SQL_SORTED = 306, + SQL_TABLES = 307, + SQL_UNIQUE = 308, + SQL_UNLOAD = 309, + SQL_UPDATE = 310, + SQL_VALUES = 311, + SQL_AFTER = 312, + SQL_ALTER = 313, + SQL_CROSS = 314, + SQL_DELTA = 315, + SQL_FLOAT = 316, + SQL_GROUP = 317, + SQL_INDEX = 318, + SQL_INNER = 319, + SQL_LIMIT = 320, + SQL_LOCAL = 321, + SQL_MERGE = 322, + SQL_MINUS = 323, + SQL_ORDER = 324, + SQL_OUTER = 325, + SQL_RIGHT = 326, + SQL_TABLE = 327, + SQL_UNION = 328, + SQL_USING = 329, + SQL_WHERE = 330, + SQL_CALL = 331, + SQL_CASE = 332, + SQL_CHAR = 333, + SQL_DATE = 334, + SQL_DESC = 335, + SQL_DROP = 336, + SQL_ELSE = 337, + SQL_FILE = 338, + SQL_FROM = 339, + SQL_FULL = 340, + SQL_HASH = 341, + SQL_HINT = 342, + SQL_INTO = 343, + SQL_JOIN = 344, + SQL_LEFT = 345, + SQL_LIKE = 346, + SQL_LOAD = 347, + SQL_LONG = 348, + SQL_NULL = 349, + SQL_PLAN = 350, + SQL_SHOW = 351, + SQL_TEXT = 352, + SQL_THEN = 353, + SQL_TIME = 354, + SQL_VIEW = 355, + SQL_WHEN = 356, + SQL_WITH = 357, + SQL_ADD = 358, + SQL_ALL = 359, + SQL_AND = 360, + SQL_ASC = 361, + SQL_CSV = 362, + SQL_END = 363, + SQL_FOR = 364, + SQL_INT = 365, + SQL_KEY = 366, + SQL_NOT = 367, + SQL_OFF = 368, + SQL_SET = 369, + SQL_TBL = 370, + SQL_TOP = 371, + SQL_AS = 372, + SQL_BY = 373, + SQL_IF = 374, + SQL_IN = 375, + SQL_IS = 376, + SQL_OF = 377, + SQL_ON = 378, + SQL_OR = 379, + SQL_TO = 380, + SQL_ARRAY = 381, + SQL_CONCAT = 382, + SQL_ILIKE = 383, + SQL_SECOND = 384, + SQL_MINUTE = 385, + SQL_HOUR = 386, + SQL_DAY = 387, + SQL_MONTH = 388, + SQL_YEAR = 389, + SQL_TRUE = 390, + SQL_FALSE = 391, + SQL_EQUALS = 392, + SQL_NOTEQUALS = 393, + SQL_LESS = 394, + SQL_GREATER = 395, + SQL_LESSEQ = 396, + SQL_GREATEREQ = 397, + SQL_NOTNULL = 398, + SQL_UMINUS = 399 }; #endif @@ -370,7 +369,7 @@ union HSQL_STYPE std::vector* order_vec; std::vector* with_description_vec; -#line 374 "bison_parser.cpp" /* yacc.c:352 */ +#line 373 "bison_parser.cpp" /* yacc.c:352 */ }; typedef union HSQL_STYPE HSQL_STYPE; @@ -633,10 +632,10 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 49 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 669 +#define YYLAST 729 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 163 +#define YYNTOKENS 162 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 100 /* YYNRULES -- Number of rules. */ @@ -645,7 +644,7 @@ union yyalloc #define YYNSTATES 440 #define YYUNDEFTOK 2 -#define YYMAXUTOK 400 +#define YYMAXUTOK 399 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. */ @@ -659,13 +658,13 @@ static const yytype_uint8 yytranslate[] = 0, 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, 2, 2, 2, 2, 2, 2, 152, 2, 2, - 157, 158, 150, 148, 161, 149, 159, 151, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 160, - 141, 138, 142, 162, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 151, 2, 2, + 156, 157, 149, 147, 160, 148, 158, 150, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 159, + 140, 137, 141, 161, 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, 155, 2, 156, 153, 2, 2, 2, 2, 2, + 2, 154, 2, 155, 152, 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, 2, 2, 2, 2, 2, @@ -695,8 +694,7 @@ static const yytype_uint8 yytranslate[] = 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, 139, 140, 143, 144, 145, 146, 147, - 154 + 135, 136, 138, 139, 142, 143, 144, 145, 146, 153 }; #if HSQL_DEBUG @@ -740,23 +738,23 @@ static const char *const yytname[] = "INTVAL", "DEALLOCATE", "PARAMETERS", "INTERSECT", "TEMPORARY", "TIMESTAMP", "DISTINCT", "NVARCHAR", "RESTRICT", "TRUNCATE", "ANALYZE", "BETWEEN", "CASCADE", "COLUMNS", "CONTROL", "DEFAULT", "EXECUTE", - "EXPLAIN", "HISTORY", "INTEGER", "NATURAL", "PREPARE", "PRIMARY", - "SCHEMAS", "SPATIAL", "VARCHAR", "VIRTUAL", "BEFORE", "COLUMN", "CREATE", - "DELETE", "DIRECT", "DOUBLE", "ESCAPE", "EXCEPT", "EXISTS", "EXTRACT", - "GLOBAL", "HAVING", "IMPORT", "INSERT", "ISNULL", "OFFSET", "RENAME", - "SCHEMA", "SELECT", "SORTED", "TABLES", "UNIQUE", "UNLOAD", "UPDATE", - "VALUES", "AFTER", "ALTER", "CROSS", "DELTA", "FLOAT", "GROUP", "INDEX", - "INNER", "LIMIT", "LOCAL", "MERGE", "MINUS", "ORDER", "OUTER", "RIGHT", - "TABLE", "UNION", "USING", "WHERE", "CALL", "CASE", "CHAR", "DATE", - "DESC", "DROP", "ELSE", "FILE", "FROM", "FULL", "HASH", "HINT", "INTO", - "JOIN", "LEFT", "LIKE", "LOAD", "LONG", "NULL", "PLAN", "SHOW", "TEXT", - "THEN", "TIME", "VIEW", "WHEN", "WITH", "ADD", "ALL", "AND", "ASC", - "CSV", "END", "FOR", "INT", "KEY", "NOT", "OFF", "SET", "TBL", "TOP", - "AS", "BY", "IF", "IN", "IS", "OF", "ON", "OR", "TO", "ARRAY", "CONCAT", - "ILIKE", "SECOND", "MINUTE", "HOUR", "DAY", "MONTH", "YEAR", "TRUE", - "FALSE", "'='", "EQUALS", "NOTEQUALS", "'<'", "'>'", "LESS", "GREATER", - "LESSEQ", "GREATEREQ", "NOTNULL", "'+'", "'-'", "'*'", "'/'", "'%'", - "'^'", "UMINUS", "'['", "']'", "'('", "')'", "'.'", "';'", "','", "'?'", + "EXPLAIN", "INTEGER", "NATURAL", "PREPARE", "PRIMARY", "SCHEMAS", + "SPATIAL", "VARCHAR", "VIRTUAL", "BEFORE", "COLUMN", "CREATE", "DELETE", + "DIRECT", "DOUBLE", "ESCAPE", "EXCEPT", "EXISTS", "EXTRACT", "GLOBAL", + "HAVING", "IMPORT", "INSERT", "ISNULL", "OFFSET", "RENAME", "SCHEMA", + "SELECT", "SORTED", "TABLES", "UNIQUE", "UNLOAD", "UPDATE", "VALUES", + "AFTER", "ALTER", "CROSS", "DELTA", "FLOAT", "GROUP", "INDEX", "INNER", + "LIMIT", "LOCAL", "MERGE", "MINUS", "ORDER", "OUTER", "RIGHT", "TABLE", + "UNION", "USING", "WHERE", "CALL", "CASE", "CHAR", "DATE", "DESC", + "DROP", "ELSE", "FILE", "FROM", "FULL", "HASH", "HINT", "INTO", "JOIN", + "LEFT", "LIKE", "LOAD", "LONG", "NULL", "PLAN", "SHOW", "TEXT", "THEN", + "TIME", "VIEW", "WHEN", "WITH", "ADD", "ALL", "AND", "ASC", "CSV", "END", + "FOR", "INT", "KEY", "NOT", "OFF", "SET", "TBL", "TOP", "AS", "BY", "IF", + "IN", "IS", "OF", "ON", "OR", "TO", "ARRAY", "CONCAT", "ILIKE", "SECOND", + "MINUTE", "HOUR", "DAY", "MONTH", "YEAR", "TRUE", "FALSE", "'='", + "EQUALS", "NOTEQUALS", "'<'", "'>'", "LESS", "GREATER", "LESSEQ", + "GREATEREQ", "NOTNULL", "'+'", "'-'", "'*'", "'/'", "'%'", "'^'", + "UMINUS", "'['", "']'", "'('", "')'", "'.'", "';'", "','", "'?'", "$accept", "input", "statement_list", "statement", "preparable_statement", "opt_hints", "hint_list", "hint", "prepare_statement", "prepare_target_query", "execute_statement", @@ -805,17 +803,17 @@ static const yytype_uint16 yytoknum[] = 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, 61, 393, - 394, 60, 62, 395, 396, 397, 398, 399, 43, 45, - 42, 47, 37, 94, 400, 91, 93, 40, 41, 46, - 59, 44, 63 + 385, 386, 387, 388, 389, 390, 391, 61, 392, 393, + 60, 62, 394, 395, 396, 397, 398, 43, 45, 42, + 47, 37, 94, 399, 91, 93, 40, 41, 46, 59, + 44, 63 }; # endif -#define YYPACT_NINF -210 +#define YYPACT_NINF -275 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-210))) + (!!((Yystate) == (-275))) #define YYTABLE_NINF -242 @@ -826,50 +824,50 @@ static const yytype_uint16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - 566, 22, 59, 60, 113, -40, -47, 39, 36, 59, - 40, 126, 127, 131, -14, -210, 50, 50, -210, -210, - -210, -210, -210, -210, -210, -210, -210, -210, -30, -210, - 175, 51, -210, 42, 130, 99, 99, 59, 119, 59, - 124, -210, 108, 108, 59, -210, 141, 106, -210, -210, - 549, -210, 172, -210, -210, 160, -30, 103, -210, 102, - -210, 272, 11, 280, 169, 59, 59, 216, -210, 212, - 145, 309, 281, 59, 59, -210, 156, 127, -210, 166, - 318, 325, 182, 186, -210, -210, -210, -30, 234, 227, - -30, -8, -210, -210, -210, -210, -210, -210, -210, -210, - 194, 187, -210, -210, -210, -210, -210, -210, -210, -210, - -210, 312, -62, 145, 232, -210, 346, 352, -4, 218, - -57, -210, -210, -210, -210, -210, -210, 354, -210, -210, - 232, -210, -210, -210, 288, -210, -210, -210, 232, 288, - 232, 31, -210, -210, 11, -210, 244, 260, 361, 247, - 35, 210, 214, 129, 248, 217, 25, -210, 192, 98, - 278, -210, -210, -210, -210, -210, -210, -210, -210, -210, - -210, -210, -210, -210, -210, -210, 284, -210, -210, -44, - 219, -210, 232, 309, -210, 221, 68, -210, 289, 222, - -210, 95, -8, 225, -210, -61, -8, 98, 332, -6, - -210, 303, -210, 268, 110, -210, 260, -1, 1, 337, - 483, 232, 84, 123, 233, 25, 364, 232, 181, 235, - 44, 232, 232, 25, -210, 25, -67, 238, 26, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 318, 59, -210, 389, 11, 98, - -210, 11, -210, 354, 6, 216, -210, 232, -210, 393, - -210, -210, -210, 232, -210, -210, -210, -210, 232, 232, - 346, -210, 245, -210, -210, 246, -210, -210, -210, 27, - -210, 361, -210, -210, 232, -210, -210, 250, -210, -210, - -210, -210, -210, -210, 319, 115, 139, 232, 232, -210, - 337, 317, -46, -210, -210, -210, 306, 330, 402, 25, - 256, 192, -210, 320, 259, 402, 402, 402, 402, 417, - 417, 417, 417, 181, 181, -96, -96, -96, -27, 265, - -210, -210, 136, 140, -210, 260, -210, 190, -210, 264, - -210, 19, -210, 369, -210, -210, -210, 98, 98, -210, - 428, 431, -210, 343, -210, -210, 142, -210, 232, 232, - 232, -210, -54, 158, 283, -210, 25, 402, 192, 286, - 146, -210, -210, -210, -210, 287, 349, -210, -210, -210, - 371, 377, 379, 363, 6, 448, -210, -210, -210, 335, - -210, 297, 299, -210, -210, 105, 98, 163, -210, 232, - -210, 364, 302, 150, -210, -210, 19, 6, -210, -210, - -210, 6, 375, 310, 232, -210, -210, -210, -210, 98, - -210, -210, -210, -210, 436, 352, -32, 316, 232, 159, - 232, -210, 15, 98, -210, -210, 98, 304, 326, -210 + 627, 7, 61, 108, 125, -38, 49, 78, 28, 61, + 40, 3, 161, 179, -55, -275, 88, 88, -275, -275, + -275, -275, -275, -275, -275, -275, -275, -275, -35, -275, + 189, 48, -275, 42, 123, 110, 110, 61, 132, 61, + 147, -275, 151, 151, 61, -275, 152, 65, -275, -275, + 610, -275, 197, -275, -275, 170, -35, 113, -275, 62, + -275, 285, 12, 287, 180, 61, 61, 219, -275, 212, + 140, 295, 259, 61, 61, -275, 144, 161, -275, 145, + 296, 291, 148, 154, -275, -275, -275, -35, 204, 191, + -35, -2, -275, -275, -275, -275, -275, -275, -275, -275, + 155, 153, -275, -275, -275, -275, -275, -275, -275, -275, + -275, 281, -56, 140, 216, -275, 320, 322, -10, 186, + -46, -275, -275, -275, -275, -275, -275, 326, -275, -275, + 216, -275, -275, -275, 261, -275, -275, -275, 216, 261, + 216, 32, -275, -275, 12, -275, 218, 229, 331, 220, + -106, 182, 183, 171, 249, 187, 276, -275, 210, -73, + 301, -275, -275, -275, -275, -275, -275, -275, -275, -275, + -275, -275, -275, -275, -275, -275, 252, -275, -275, -33, + 192, -275, 216, 295, -275, 193, -7, -275, 266, 194, + -275, 8, -2, 195, -275, 37, -2, -73, 309, -26, + -275, 274, -275, 393, 81, -275, 229, 13, 16, 312, + 101, 216, 86, 38, 207, 276, 411, 216, 45, 203, + -6, 216, 216, 276, -275, 276, -61, 211, 29, 276, + 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, + 276, 276, 276, 276, 296, 61, -275, 365, 12, -73, + -275, 12, -275, 326, 1, 219, -275, 216, -275, 370, + -275, -275, -275, 216, -275, -275, -275, -275, 216, 216, + 320, -275, 223, -275, -275, 226, -275, -275, -275, 124, + -275, 331, -275, -275, 216, -275, -275, 230, -275, -275, + -275, -275, -275, -275, 292, 80, 100, 216, 216, -275, + 312, 300, -113, -275, -275, -275, 288, 368, 445, 276, + 238, 210, -275, 302, 232, 445, 445, 445, 445, 479, + 479, 479, 479, 45, 45, -96, -96, -96, -24, 246, + -275, -275, 102, 106, -275, 229, -275, 310, -275, 243, + -275, 17, -275, 344, -275, -275, -275, -73, -73, -275, + 401, 409, -275, 324, -275, -275, 107, -275, 216, 216, + 216, -275, 118, 104, 262, -275, 276, 445, 210, 263, + 111, -275, -275, -275, -275, 269, 327, -275, -275, -275, + 357, 361, 363, 345, 1, 432, -275, -275, -275, 318, + -275, 286, 290, -275, -275, 14, -73, 119, -275, 216, + -275, 411, 299, 116, -275, -275, 17, 1, -275, -275, + -275, 1, 319, 304, 216, -275, -275, -275, -275, -73, + -275, -275, -275, -275, 517, 322, -31, 305, 216, 117, + 216, -275, 20, -73, -275, -275, -73, 306, 308, -275 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -926,16 +924,16 @@ static const yytype_uint8 yydefact[] = /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -210, -210, -210, 424, -210, 470, -210, 236, -210, -210, - -210, -210, -210, 220, -210, -210, 452, -210, 237, -210, - -210, -210, 454, -210, -210, -210, 378, -210, -210, 315, - -146, 23, 405, -53, 440, -210, -210, 231, 293, -210, - -210, -210, -70, -210, -210, -16, -210, 257, -210, -210, - 16, -209, -210, 87, 266, -114, -149, -210, -210, -210, - -210, -210, -210, 313, -210, -210, -210, -210, -210, -210, - -210, -210, 89, -48, -106, -210, -210, -78, -210, -210, - -210, -193, 121, -210, -210, -210, 4, -210, 120, 338, - -210, -210, -210, -210, 455, -210, -210, -210, -210, 109 + -275, -275, -275, 394, -275, 441, -275, 209, -275, -275, + -275, -275, -275, 196, -275, -275, 427, -275, 188, -275, + -275, -275, 424, -275, -275, -275, 355, -275, -275, 289, + -146, 39, 384, -53, 416, -275, -275, 150, 270, -275, + -275, -275, -110, -275, -275, -85, -275, 213, -275, -275, + -139, -209, -275, 27, 221, -114, -149, -275, -275, -275, + -275, -275, -275, 271, -275, -275, -275, -275, -275, -275, + -275, -275, 50, -48, -107, -275, -275, -78, -275, -275, + -275, -274, 74, -275, -275, -275, 4, -275, 79, 293, + -275, -275, -275, -275, 410, -275, -275, -275, -275, 63 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -958,68 +956,74 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 159, 202, 128, 83, 285, 216, 32, 218, 302, 31, - 177, 129, 430, 41, 102, 93, 94, 95, 437, 114, - 264, 55, 258, 146, 195, 309, 197, 199, 150, 93, - 94, 95, 229, 35, 150, 93, 94, 95, 37, 212, - 140, 67, 269, 70, 220, 221, 265, 55, 75, 30, - 184, 57, 221, 180, 310, 398, 147, 243, 141, 244, - 282, 36, 31, 33, 222, 181, 216, 152, 249, 112, - 113, 222, 151, 152, 307, 356, 308, 123, 124, 82, + 159, 202, 128, 83, 31, 216, 32, 218, 302, 177, + 184, 258, 430, 41, 102, 55, 93, 94, 95, 285, + 258, 269, 44, 437, 195, 129, 197, 199, 146, 114, + 309, 229, 221, 30, 35, 150, 93, 94, 95, 212, + 55, 67, 365, 70, 220, 140, 180, 257, 75, 192, + 207, 222, 208, 262, 196, 45, 243, 267, 244, 310, + 282, 147, 36, 141, 31, 181, 216, 57, 249, 112, + 113, 84, 151, 152, 307, 356, 308, 123, 124, 221, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 148, 200, 295, 258, 125, - 221, 229, 370, 153, 183, 219, 96, 305, 306, 153, - 365, 84, 84, 42, 246, 257, 34, 247, 192, 222, - 96, 312, 352, 196, 38, 39, 96, 56, 244, 257, - 46, 49, 150, 93, 94, 95, 198, 385, 215, 313, - 353, 43, 85, 85, 154, 44, 50, 97, 98, 195, - 221, 286, 155, 52, 347, 348, 287, 283, 155, 403, - 367, 97, 98, 335, 177, 157, 329, 97, 98, 222, - 151, 152, 89, 99, 156, 157, 86, 86, 60, 45, - 156, 157, 158, 362, 363, 343, 211, 99, 158, 375, - 221, 412, 207, 99, 208, 150, 93, 94, 95, 62, - 102, 221, 304, 102, 221, 426, 297, 153, 262, 222, - 61, 221, 267, 259, 359, 63, 376, 401, 424, 64, - 222, 221, 360, 222, 96, 298, 252, 68, 72, 253, - 222, 211, 299, 151, 152, 150, 93, 94, 95, 71, - 222, 298, 154, 55, 395, 396, 397, 364, 361, 330, - 377, 150, 93, 94, 95, 378, 155, 399, 369, 76, - 79, 379, 380, 417, 221, 97, 98, 77, 280, 221, - 153, 281, 418, 151, 152, 92, 381, 80, 156, 157, - -239, 382, 111, 222, 109, 419, 158, 96, 222, 214, - 152, 99, 114, 271, 373, 223, 116, 144, 374, 272, - 394, 144, 117, 257, 405, 154, 273, 257, 421, 229, - 153, 257, 119, 56, 433, 402, 436, 435, 135, 155, - 247, 135, 122, 127, 95, 224, 153, 96, 97, 98, - 274, 240, 241, 242, 243, 332, 244, 129, 333, 136, - 131, 156, 157, 96, 132, 154, 138, 275, 144, 158, - 93, -207, 143, 145, 99, 178, 182, 185, 89, 155, - 201, 215, 276, 12, 203, 206, 277, 209, 97, 98, - 225, 210, 217, 245, 254, 155, 248, 224, 251, 278, - 268, 156, 157, 257, 97, 98, 263, 270, 55, 158, - 300, 226, 331, 303, 99, 311, 345, 156, 157, 227, - 228, 376, 350, 351, 358, 158, 229, 230, 357, 309, - 99, 224, 221, 368, 244, 371, 231, 232, 233, 234, - 235, 372, 225, 236, 237, 384, 238, 239, 240, 241, - 242, 243, 389, 244, 391, 377, 366, 392, 393, 407, - 378, 400, 408, 301, 404, 406, 379, 380, 409, 224, - 410, 413, 228, 411, 414, 415, 225, 416, 229, 230, - 420, 381, 376, 208, 224, -239, 382, 425, 231, 232, - 233, 234, 235, 432, 78, 236, 237, 301, 238, 239, - 240, 241, 242, 243, 439, 244, 228, 54, 66, 334, - 349, 149, 229, 230, -242, 139, 377, 74, 250, 90, - 284, 378, 231, 232, 233, 234, 235, 379, 380, 236, - 237, 427, 238, 239, 240, 241, 242, 243, 355, 244, - 346, 438, 381, 344, 228, 296, 422, 382, 423, 260, - 229, -242, 126, 0, 429, 0, -208, 0, 0, 228, - -242, -242, -242, 234, 235, 229, 0, 236, 237, -241, - 238, 239, 240, 241, 242, 243, 1, 244, -242, -242, - 428, 0, -242, -242, 2, 238, 239, 240, 241, 242, - 243, 3, 244, 1, 0, 0, 4, 0, 0, 0, - 0, 2, 0, 0, 5, 6, 0, 0, 3, 0, + 324, 325, 326, 327, 328, 82, 200, 295, 222, 221, + 148, 85, 370, 229, 50, 219, 96, 305, 306, 153, + 412, 33, 42, 221, 183, 125, 39, 264, 222, 221, + 297, 56, 84, 312, 246, 259, 96, 247, 34, 257, + 244, 89, 222, 37, 385, 86, 198, 424, 222, 298, + 43, 313, 221, 265, 154, 343, 299, 97, 98, 195, + 252, 304, 85, 253, 347, 348, 287, 335, 155, 403, + 367, 222, 38, 177, 46, 286, 329, 97, 98, 157, + 283, 417, 229, 99, 150, 93, 94, 95, 359, 49, + 156, 157, 360, 362, 363, 221, 86, 211, 158, 375, + 52, 221, 60, 99, 240, 241, 242, 243, 62, 244, + 102, 298, 399, 102, 222, 426, 61, 63, 361, 221, + 222, 151, 152, 150, 93, 94, 95, 401, 352, 150, + 93, 94, 95, 221, 221, 77, 398, 418, 222, 64, + 288, 289, 290, 291, 292, 293, 353, 135, 280, 68, + 135, 281, 222, 222, 395, 396, 397, 364, 153, 330, + 151, 152, 150, 93, 94, 95, 151, 152, 369, 373, + 55, 71, 144, 374, 394, 96, 144, 257, 405, 76, + 72, 257, 211, 421, 435, 332, 257, 247, 333, 150, + 93, 94, 95, 154, 79, 419, 80, 153, 92, 214, + 152, 109, 111, 153, 114, 116, 117, 155, 119, 122, + 56, 127, 95, 129, 96, 131, 97, 98, 136, 138, + 96, 132, 143, 144, 433, 402, 436, 152, 223, 156, + 157, 145, 154, 182, 93, 178, 153, 158, 154, 185, + 89, 12, 99, 201, 203, 376, 155, 206, 209, 210, + 245, 217, 155, 96, 376, 97, 98, 224, 248, 251, + 254, 97, 98, 153, 257, 263, 268, 270, 156, 157, + 303, 215, 55, 300, 156, 157, 158, 311, 331, 377, + 96, 99, 158, 345, 378, 155, 358, 99, 377, 350, + 379, 380, 351, 378, 97, 98, 244, 357, 215, 379, + 380, 309, 225, 221, 368, 381, 371, 156, 157, -239, + 382, 372, 155, 384, 381, 158, 389, 391, -239, 382, + 99, 97, 98, 226, 224, 392, 407, 271, 393, 400, + 404, 227, 228, 272, 156, 157, 406, 408, 229, 230, + 273, 409, 158, 410, 411, 413, 414, 99, 231, 232, + 233, 234, 235, 415, 78, 236, 237, 416, 238, 239, + 240, 241, 242, 243, 274, 244, 420, 224, 54, 225, + 425, 432, 334, 66, 208, 439, 349, 74, 149, 355, + -207, 275, 250, 366, 139, 90, 346, 284, 344, -208, + 301, 423, 438, 296, 260, 422, 276, 126, 429, 228, + 277, 224, 0, 0, 0, 229, 230, 0, 0, 0, + 0, 0, 225, 278, 0, 231, 232, 233, 234, 235, + 0, 0, 236, 237, 0, 238, 239, 240, 241, 242, + 243, 0, 244, 301, 0, 224, 0, 0, 0, 0, + 0, 0, 228, 0, 0, 0, -242, 0, 229, 230, + 0, 0, 376, 0, 0, 0, 0, 0, 231, 232, + 233, 234, 235, 0, 0, 236, 237, 0, 238, 239, + 240, 241, 242, 243, 0, 244, 228, 0, 0, 0, + 0, 0, 229, -242, 0, 0, 377, 0, 0, 0, + 0, 378, -242, -242, -242, 234, 235, 379, 380, 236, + 237, 427, 238, 239, 240, 241, 242, 243, 0, 244, + 228, 0, 381, 0, 0, 0, 229, 382, 0, 0, + -241, 0, 0, 0, 0, 0, 0, 1, 0, -242, + -242, 0, 0, -242, -242, 2, 238, 239, 240, 241, + 242, 243, 3, 244, 1, 0, 4, 0, 0, 0, + 428, 0, 2, 0, 5, 6, 0, 0, 0, 3, 0, 0, 0, 4, 7, 8, 0, 0, 0, 0, 0, 5, 6, 0, 0, 9, 0, 0, 0, 0, - 0, 7, 8, 288, 289, 290, 291, 292, 293, 0, + 0, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 10, 0, @@ -1029,153 +1033,159 @@ static const yytype_int16 yytable[] = static const yytype_int16 yycheck[] = { - 114, 147, 80, 56, 3, 154, 2, 156, 217, 3, - 116, 12, 44, 9, 62, 4, 5, 6, 3, 76, - 81, 51, 3, 85, 138, 92, 140, 141, 3, 4, - 5, 6, 128, 73, 3, 4, 5, 6, 85, 153, - 48, 37, 48, 39, 158, 106, 107, 51, 44, 27, - 120, 28, 106, 57, 121, 109, 118, 153, 66, 155, - 206, 101, 3, 3, 125, 118, 215, 42, 182, 65, - 66, 125, 41, 42, 223, 284, 225, 73, 74, 56, + 114, 147, 80, 56, 3, 154, 2, 156, 217, 116, + 120, 3, 43, 9, 62, 50, 4, 5, 6, 3, + 3, 47, 19, 3, 138, 12, 140, 141, 84, 75, + 91, 127, 105, 26, 72, 3, 4, 5, 6, 153, + 50, 37, 155, 39, 158, 47, 56, 160, 44, 134, + 156, 124, 158, 192, 139, 52, 152, 196, 154, 120, + 206, 117, 100, 65, 3, 118, 215, 28, 182, 65, + 66, 9, 40, 41, 223, 284, 225, 73, 74, 105, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 157, 144, 211, 3, 76, - 106, 128, 311, 78, 161, 158, 95, 221, 222, 78, - 156, 9, 9, 73, 158, 161, 3, 161, 134, 125, - 95, 95, 95, 139, 85, 89, 95, 157, 155, 161, - 3, 0, 3, 4, 5, 6, 105, 118, 113, 113, - 113, 101, 40, 40, 113, 19, 160, 136, 137, 263, - 106, 150, 127, 103, 268, 269, 209, 158, 127, 368, - 309, 136, 137, 157, 270, 150, 244, 136, 137, 125, - 41, 42, 70, 162, 149, 150, 74, 74, 3, 53, - 149, 150, 157, 297, 298, 255, 102, 162, 157, 335, - 106, 384, 157, 162, 159, 3, 4, 5, 6, 157, - 248, 106, 158, 251, 106, 414, 83, 78, 192, 125, - 159, 106, 196, 118, 99, 85, 26, 366, 411, 120, - 125, 106, 83, 125, 95, 102, 158, 108, 120, 161, - 125, 102, 109, 41, 42, 3, 4, 5, 6, 115, - 125, 102, 113, 51, 358, 359, 360, 300, 109, 245, - 60, 3, 4, 5, 6, 65, 127, 99, 311, 118, - 88, 71, 72, 158, 106, 136, 137, 161, 158, 106, - 78, 161, 109, 41, 42, 3, 86, 117, 149, 150, - 90, 91, 113, 125, 4, 399, 157, 95, 125, 41, - 42, 162, 76, 25, 158, 17, 84, 161, 158, 31, - 158, 161, 157, 161, 158, 113, 38, 161, 158, 128, - 78, 161, 3, 157, 428, 368, 430, 158, 87, 127, - 161, 90, 41, 157, 6, 47, 78, 95, 136, 137, - 62, 150, 151, 152, 153, 248, 155, 12, 251, 105, - 158, 149, 150, 95, 158, 113, 119, 79, 161, 157, - 4, 161, 158, 41, 162, 3, 138, 3, 70, 127, - 116, 113, 94, 103, 3, 118, 98, 157, 136, 137, - 92, 157, 155, 89, 85, 127, 157, 47, 157, 111, - 48, 149, 150, 161, 136, 137, 161, 84, 51, 157, - 157, 113, 3, 158, 162, 157, 3, 149, 150, 121, - 122, 26, 157, 157, 85, 157, 128, 129, 158, 92, - 162, 47, 106, 157, 155, 95, 138, 139, 140, 141, - 142, 156, 92, 145, 146, 161, 148, 149, 150, 151, - 152, 153, 63, 155, 6, 60, 106, 6, 95, 90, - 65, 158, 71, 113, 158, 158, 71, 72, 71, 47, - 71, 3, 122, 90, 119, 158, 92, 158, 128, 129, - 158, 86, 26, 159, 47, 90, 91, 157, 138, 139, - 140, 141, 142, 157, 50, 145, 146, 113, 148, 149, - 150, 151, 152, 153, 158, 155, 122, 17, 36, 253, - 270, 113, 128, 129, 92, 90, 60, 43, 183, 59, - 207, 65, 138, 139, 140, 141, 142, 71, 72, 145, - 146, 75, 148, 149, 150, 151, 152, 153, 281, 155, - 263, 432, 86, 257, 122, 212, 406, 91, 407, 191, - 128, 129, 77, -1, 425, -1, 161, -1, -1, 122, - 138, 139, 140, 141, 142, 128, -1, 145, 146, 0, - 148, 149, 150, 151, 152, 153, 7, 155, 141, 142, - 124, -1, 145, 146, 15, 148, 149, 150, 151, 152, - 153, 22, 155, 7, -1, -1, 27, -1, -1, -1, - -1, 15, -1, -1, 35, 36, -1, -1, 22, -1, - -1, -1, -1, 27, 45, 46, -1, -1, -1, -1, - -1, 35, 36, -1, -1, 56, -1, -1, -1, -1, - -1, 45, 46, 130, 131, 132, 133, 134, 135, -1, - -1, -1, 56, -1, -1, -1, -1, -1, -1, -1, - -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 97, -1, 82, -1, - -1, -1, 103, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 97, -1, -1, -1, -1, -1, 103 + 239, 240, 241, 242, 243, 56, 144, 211, 124, 105, + 156, 39, 311, 127, 159, 158, 94, 221, 222, 77, + 384, 3, 72, 105, 160, 76, 88, 80, 124, 105, + 82, 156, 9, 94, 157, 117, 94, 160, 3, 160, + 154, 69, 124, 84, 117, 73, 104, 411, 124, 101, + 100, 112, 105, 106, 112, 255, 108, 135, 136, 263, + 157, 157, 39, 160, 268, 269, 209, 156, 126, 368, + 309, 124, 84, 270, 3, 149, 244, 135, 136, 149, + 157, 157, 127, 161, 3, 4, 5, 6, 98, 0, + 148, 149, 82, 297, 298, 105, 73, 101, 156, 335, + 102, 105, 3, 161, 149, 150, 151, 152, 156, 154, + 248, 101, 98, 251, 124, 414, 158, 84, 108, 105, + 124, 40, 41, 3, 4, 5, 6, 366, 94, 3, + 4, 5, 6, 105, 105, 160, 108, 108, 124, 119, + 129, 130, 131, 132, 133, 134, 112, 87, 157, 107, + 90, 160, 124, 124, 358, 359, 360, 300, 77, 245, + 40, 41, 3, 4, 5, 6, 40, 41, 311, 157, + 50, 114, 160, 157, 157, 94, 160, 160, 157, 117, + 119, 160, 101, 157, 157, 248, 160, 160, 251, 3, + 4, 5, 6, 112, 87, 399, 116, 77, 3, 40, + 41, 4, 112, 77, 75, 83, 156, 126, 3, 40, + 156, 156, 6, 12, 94, 157, 135, 136, 104, 118, + 94, 157, 157, 160, 428, 368, 430, 41, 17, 148, + 149, 40, 112, 137, 4, 3, 77, 156, 112, 3, + 69, 102, 161, 115, 3, 25, 126, 117, 156, 156, + 88, 154, 126, 94, 25, 135, 136, 46, 156, 156, + 84, 135, 136, 77, 160, 160, 47, 83, 148, 149, + 157, 112, 50, 156, 148, 149, 156, 156, 3, 59, + 94, 161, 156, 3, 64, 126, 84, 161, 59, 156, + 70, 71, 156, 64, 135, 136, 154, 157, 112, 70, + 71, 91, 91, 105, 156, 85, 94, 148, 149, 89, + 90, 155, 126, 160, 85, 156, 62, 6, 89, 90, + 161, 135, 136, 112, 46, 6, 89, 24, 94, 157, + 157, 120, 121, 30, 148, 149, 157, 70, 127, 128, + 37, 70, 156, 70, 89, 3, 118, 161, 137, 138, + 139, 140, 141, 157, 50, 144, 145, 157, 147, 148, + 149, 150, 151, 152, 61, 154, 157, 46, 17, 91, + 156, 156, 253, 36, 158, 157, 270, 43, 113, 281, + 160, 78, 183, 105, 90, 59, 263, 207, 257, 160, + 112, 407, 432, 212, 191, 406, 93, 77, 425, 121, + 97, 46, -1, -1, -1, 127, 128, -1, -1, -1, + -1, -1, 91, 110, -1, 137, 138, 139, 140, 141, + -1, -1, 144, 145, -1, 147, 148, 149, 150, 151, + 152, -1, 154, 112, -1, 46, -1, -1, -1, -1, + -1, -1, 121, -1, -1, -1, 91, -1, 127, 128, + -1, -1, 25, -1, -1, -1, -1, -1, 137, 138, + 139, 140, 141, -1, -1, 144, 145, -1, 147, 148, + 149, 150, 151, 152, -1, 154, 121, -1, -1, -1, + -1, -1, 127, 128, -1, -1, 59, -1, -1, -1, + -1, 64, 137, 138, 139, 140, 141, 70, 71, 144, + 145, 74, 147, 148, 149, 150, 151, 152, -1, 154, + 121, -1, 85, -1, -1, -1, 127, 90, -1, -1, + 0, -1, -1, -1, -1, -1, -1, 7, -1, 140, + 141, -1, -1, 144, 145, 15, 147, 148, 149, 150, + 151, 152, 22, 154, 7, -1, 26, -1, -1, -1, + 123, -1, 15, -1, 34, 35, -1, -1, -1, 22, + -1, -1, -1, 26, 44, 45, -1, -1, -1, -1, + -1, 34, 35, -1, -1, 55, -1, -1, -1, -1, + -1, 44, 45, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 55, -1, -1, -1, -1, -1, -1, -1, + -1, 81, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 96, -1, 81, -1, + -1, -1, 102, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 96, -1, -1, -1, -1, -1, 102 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 7, 15, 22, 27, 35, 36, 45, 46, 56, - 82, 97, 103, 164, 165, 166, 167, 171, 173, 174, - 177, 178, 184, 186, 187, 188, 190, 193, 254, 255, - 27, 3, 249, 3, 3, 73, 101, 85, 85, 89, - 248, 249, 73, 101, 19, 53, 3, 256, 257, 0, - 160, 261, 103, 168, 168, 51, 157, 194, 196, 200, - 3, 159, 157, 85, 120, 179, 179, 249, 108, 175, - 249, 115, 120, 185, 185, 249, 118, 161, 166, 88, - 117, 212, 194, 196, 9, 40, 74, 197, 198, 70, - 197, 208, 3, 4, 5, 6, 95, 136, 137, 162, - 215, 216, 236, 237, 238, 239, 240, 241, 242, 4, - 172, 113, 249, 249, 76, 205, 84, 157, 189, 3, - 191, 192, 41, 249, 249, 194, 257, 157, 240, 12, - 201, 158, 158, 194, 195, 200, 105, 199, 119, 195, - 48, 66, 213, 158, 161, 41, 85, 118, 157, 189, - 3, 41, 42, 78, 113, 127, 149, 150, 157, 218, - 219, 220, 221, 222, 223, 224, 225, 227, 228, 229, - 230, 232, 233, 234, 235, 236, 176, 237, 3, 262, - 57, 196, 138, 161, 205, 3, 169, 170, 202, 214, - 217, 218, 208, 209, 210, 218, 208, 218, 105, 218, - 236, 116, 193, 3, 180, 181, 118, 157, 159, 157, - 157, 102, 218, 226, 41, 113, 219, 155, 219, 196, - 218, 106, 125, 17, 47, 92, 113, 121, 122, 128, - 129, 138, 139, 140, 141, 142, 145, 146, 148, 149, - 150, 151, 152, 153, 155, 89, 158, 161, 157, 218, - 192, 157, 158, 161, 85, 203, 204, 161, 3, 118, - 252, 253, 213, 161, 81, 107, 211, 213, 48, 48, - 84, 25, 31, 38, 62, 79, 94, 98, 111, 182, - 158, 161, 193, 158, 201, 3, 150, 196, 130, 131, - 132, 133, 134, 135, 231, 218, 226, 83, 102, 109, - 157, 113, 214, 158, 158, 218, 218, 219, 219, 92, - 121, 157, 95, 113, 219, 219, 219, 219, 219, 219, - 219, 219, 219, 219, 219, 219, 219, 219, 219, 240, - 249, 3, 216, 216, 170, 157, 243, 244, 245, 246, - 247, 249, 258, 205, 217, 3, 210, 218, 218, 176, - 157, 157, 95, 113, 183, 181, 214, 158, 85, 99, - 83, 109, 218, 218, 196, 156, 106, 219, 157, 196, - 214, 95, 156, 158, 158, 193, 26, 60, 65, 71, - 72, 86, 91, 259, 161, 118, 250, 251, 252, 63, - 206, 6, 6, 95, 158, 218, 218, 218, 109, 99, - 158, 219, 196, 214, 158, 158, 158, 90, 71, 71, - 71, 90, 244, 3, 119, 158, 158, 158, 109, 218, - 158, 158, 251, 245, 244, 157, 214, 75, 124, 262, - 44, 207, 157, 218, 260, 158, 218, 3, 235, 158 + 0, 7, 15, 22, 26, 34, 35, 44, 45, 55, + 81, 96, 102, 163, 164, 165, 166, 170, 172, 173, + 176, 177, 183, 185, 186, 187, 189, 192, 253, 254, + 26, 3, 248, 3, 3, 72, 100, 84, 84, 88, + 247, 248, 72, 100, 19, 52, 3, 255, 256, 0, + 159, 260, 102, 167, 167, 50, 156, 193, 195, 199, + 3, 158, 156, 84, 119, 178, 178, 248, 107, 174, + 248, 114, 119, 184, 184, 248, 117, 160, 165, 87, + 116, 211, 193, 195, 9, 39, 73, 196, 197, 69, + 196, 207, 3, 4, 5, 6, 94, 135, 136, 161, + 214, 215, 235, 236, 237, 238, 239, 240, 241, 4, + 171, 112, 248, 248, 75, 204, 83, 156, 188, 3, + 190, 191, 40, 248, 248, 193, 256, 156, 239, 12, + 200, 157, 157, 193, 194, 199, 104, 198, 118, 194, + 47, 65, 212, 157, 160, 40, 84, 117, 156, 188, + 3, 40, 41, 77, 112, 126, 148, 149, 156, 217, + 218, 219, 220, 221, 222, 223, 224, 226, 227, 228, + 229, 231, 232, 233, 234, 235, 175, 236, 3, 261, + 56, 195, 137, 160, 204, 3, 168, 169, 201, 213, + 216, 217, 207, 208, 209, 217, 207, 217, 104, 217, + 235, 115, 192, 3, 179, 180, 117, 156, 158, 156, + 156, 101, 217, 225, 40, 112, 218, 154, 218, 195, + 217, 105, 124, 17, 46, 91, 112, 120, 121, 127, + 128, 137, 138, 139, 140, 141, 144, 145, 147, 148, + 149, 150, 151, 152, 154, 88, 157, 160, 156, 217, + 191, 156, 157, 160, 84, 202, 203, 160, 3, 117, + 251, 252, 212, 160, 80, 106, 210, 212, 47, 47, + 83, 24, 30, 37, 61, 78, 93, 97, 110, 181, + 157, 160, 192, 157, 200, 3, 149, 195, 129, 130, + 131, 132, 133, 134, 230, 217, 225, 82, 101, 108, + 156, 112, 213, 157, 157, 217, 217, 218, 218, 91, + 120, 156, 94, 112, 218, 218, 218, 218, 218, 218, + 218, 218, 218, 218, 218, 218, 218, 218, 218, 239, + 248, 3, 215, 215, 169, 156, 242, 243, 244, 245, + 246, 248, 257, 204, 216, 3, 209, 217, 217, 175, + 156, 156, 94, 112, 182, 180, 213, 157, 84, 98, + 82, 108, 217, 217, 195, 155, 105, 218, 156, 195, + 213, 94, 155, 157, 157, 192, 25, 59, 64, 70, + 71, 85, 90, 258, 160, 117, 249, 250, 251, 62, + 205, 6, 6, 94, 157, 217, 217, 217, 108, 98, + 157, 218, 195, 213, 157, 157, 157, 89, 70, 70, + 70, 89, 243, 3, 118, 157, 157, 157, 108, 217, + 157, 157, 250, 244, 243, 156, 213, 74, 123, 261, + 43, 206, 156, 217, 259, 157, 217, 3, 234, 157 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 163, 164, 165, 165, 166, 166, 166, 167, 167, - 167, 167, 167, 167, 167, 167, 167, 168, 168, 169, - 169, 170, 170, 171, 172, 173, 173, 174, 175, 176, - 177, 177, 178, 178, 178, 178, 179, 179, 180, 180, - 181, 182, 182, 182, 182, 182, 182, 182, 182, 183, - 183, 183, 184, 184, 184, 185, 185, 186, 187, 188, - 188, 189, 189, 190, 191, 191, 192, 193, 193, 193, - 194, 194, 195, 195, 196, 196, 197, 198, 198, 198, - 199, 199, 200, 201, 201, 202, 203, 203, 204, 205, - 205, 206, 206, 207, 207, 208, 208, 209, 209, 210, - 211, 211, 211, 212, 212, 213, 213, 213, 213, 213, - 213, 214, 214, 215, 215, 216, 216, 217, 218, 218, - 218, 218, 218, 219, 219, 219, 219, 219, 219, 219, - 219, 219, 219, 220, 220, 221, 221, 221, 221, 221, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 223, 223, 224, 224, 224, 224, 225, 225, 225, - 225, 226, 226, 227, 227, 228, 228, 228, 228, 228, - 228, 228, 229, 229, 230, 231, 231, 231, 231, 231, - 231, 232, 233, 234, 235, 235, 235, 235, 236, 236, - 236, 236, 236, 237, 238, 238, 239, 239, 240, 241, - 242, 243, 243, 244, 244, 245, 245, 246, 246, 247, - 248, 249, 249, 250, 250, 251, 251, 252, 252, 253, - 253, 254, 254, 255, 256, 256, 257, 258, 258, 258, - 259, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 260, 261, 261, 262, 262 + 0, 162, 163, 164, 164, 165, 165, 165, 166, 166, + 166, 166, 166, 166, 166, 166, 166, 167, 167, 168, + 168, 169, 169, 170, 171, 172, 172, 173, 174, 175, + 176, 176, 177, 177, 177, 177, 178, 178, 179, 179, + 180, 181, 181, 181, 181, 181, 181, 181, 181, 182, + 182, 182, 183, 183, 183, 184, 184, 185, 186, 187, + 187, 188, 188, 189, 190, 190, 191, 192, 192, 192, + 193, 193, 194, 194, 195, 195, 196, 197, 197, 197, + 198, 198, 199, 200, 200, 201, 202, 202, 203, 204, + 204, 205, 205, 206, 206, 207, 207, 208, 208, 209, + 210, 210, 210, 211, 211, 212, 212, 212, 212, 212, + 212, 213, 213, 214, 214, 215, 215, 216, 217, 217, + 217, 217, 217, 218, 218, 218, 218, 218, 218, 218, + 218, 218, 218, 219, 219, 220, 220, 220, 220, 220, + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, + 221, 222, 222, 223, 223, 223, 223, 224, 224, 224, + 224, 225, 225, 226, 226, 227, 227, 227, 227, 227, + 227, 227, 228, 228, 229, 230, 230, 230, 230, 230, + 230, 231, 232, 233, 234, 234, 234, 234, 235, 235, + 235, 235, 235, 236, 237, 237, 238, 238, 239, 240, + 241, 242, 242, 243, 243, 244, 244, 245, 245, 246, + 247, 248, 248, 249, 249, 250, 250, 251, 251, 252, + 252, 253, 253, 254, 255, 255, 256, 257, 257, 257, + 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, + 259, 260, 260, 261, 261 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -1709,28 +1719,28 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio case 3: /* IDENTIFIER */ #line 145 "bison_parser.y" /* yacc.c:1257 */ { free( (((*yyvaluep).sval)) ); } -#line 1713 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1723 "bison_parser.cpp" /* yacc.c:1257 */ break; case 4: /* STRING */ #line 145 "bison_parser.y" /* yacc.c:1257 */ { free( (((*yyvaluep).sval)) ); } -#line 1719 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1729 "bison_parser.cpp" /* yacc.c:1257 */ break; case 5: /* FLOATVAL */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1725 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1735 "bison_parser.cpp" /* yacc.c:1257 */ break; case 6: /* INTVAL */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1731 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1741 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 165: /* statement_list */ + case 164: /* statement_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).stmt_vec)) != nullptr) { @@ -1740,22 +1750,22 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).stmt_vec)); } -#line 1744 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1754 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 166: /* statement */ + case 165: /* statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).statement)); } -#line 1750 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1760 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 167: /* preparable_statement */ + case 166: /* preparable_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).statement)); } -#line 1756 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1766 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 168: /* opt_hints */ + case 167: /* opt_hints */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).expr_vec)) != nullptr) { @@ -1765,10 +1775,10 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).expr_vec)); } -#line 1769 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1779 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 169: /* hint_list */ + case 168: /* hint_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).expr_vec)) != nullptr) { @@ -1778,70 +1788,70 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).expr_vec)); } -#line 1782 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1792 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 170: /* hint */ + case 169: /* hint */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 1788 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1798 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 171: /* prepare_statement */ + case 170: /* prepare_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).prep_stmt)); } -#line 1794 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1804 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 172: /* prepare_target_query */ + case 171: /* prepare_target_query */ #line 145 "bison_parser.y" /* yacc.c:1257 */ { free( (((*yyvaluep).sval)) ); } -#line 1800 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1810 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 173: /* execute_statement */ + case 172: /* execute_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).exec_stmt)); } -#line 1806 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1816 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 174: /* import_statement */ + case 173: /* import_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).import_stmt)); } -#line 1812 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1822 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 175: /* import_file_type */ + case 174: /* import_file_type */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1818 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1828 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 176: /* file_path */ + case 175: /* file_path */ #line 145 "bison_parser.y" /* yacc.c:1257 */ { free( (((*yyvaluep).sval)) ); } -#line 1824 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1834 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 177: /* show_statement */ + case 176: /* show_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).show_stmt)); } -#line 1830 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1840 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 178: /* create_statement */ + case 177: /* create_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).create_stmt)); } -#line 1836 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1846 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 179: /* opt_not_exists */ + case 178: /* opt_not_exists */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1842 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1852 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 180: /* column_def_commalist */ + case 179: /* column_def_commalist */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).column_vec)) != nullptr) { @@ -1851,58 +1861,58 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).column_vec)); } -#line 1855 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1865 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 181: /* column_def */ + case 180: /* column_def */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).column_t)); } -#line 1861 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1871 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 182: /* column_type */ + case 181: /* column_type */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1867 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1877 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 183: /* opt_column_nullable */ + case 182: /* opt_column_nullable */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1873 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1883 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 184: /* drop_statement */ + case 183: /* drop_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).drop_stmt)); } -#line 1879 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1889 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 185: /* opt_exists */ + case 184: /* opt_exists */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1885 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1895 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 186: /* delete_statement */ + case 185: /* delete_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).delete_stmt)); } -#line 1891 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1901 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 187: /* truncate_statement */ + case 186: /* truncate_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).delete_stmt)); } -#line 1897 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1907 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 188: /* insert_statement */ + case 187: /* insert_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).insert_stmt)); } -#line 1903 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1913 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 189: /* opt_column_list */ + case 188: /* opt_column_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).str_vec)) != nullptr) { @@ -1912,16 +1922,16 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).str_vec)); } -#line 1916 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1926 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 190: /* update_statement */ + case 189: /* update_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).update_stmt)); } -#line 1922 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1932 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 191: /* update_clause_commalist */ + case 190: /* update_clause_commalist */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).update_vec)) != nullptr) { @@ -1931,52 +1941,52 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).update_vec)); } -#line 1935 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1945 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 192: /* update_clause */ + case 191: /* update_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).update_t)); } -#line 1941 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1951 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 193: /* select_statement */ + case 192: /* select_statement */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).select_stmt)); } -#line 1947 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1957 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 194: /* select_with_paren */ + case 193: /* select_with_paren */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).select_stmt)); } -#line 1953 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1963 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 195: /* select_paren_or_clause */ + case 194: /* select_paren_or_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).select_stmt)); } -#line 1959 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1969 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 196: /* select_no_paren */ + case 195: /* select_no_paren */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).select_stmt)); } -#line 1965 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1975 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 200: /* select_clause */ + case 199: /* select_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).select_stmt)); } -#line 1971 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1981 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 201: /* opt_distinct */ + case 200: /* opt_distinct */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 1977 "bison_parser.cpp" /* yacc.c:1257 */ +#line 1987 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 202: /* select_list */ + case 201: /* select_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).expr_vec)) != nullptr) { @@ -1986,40 +1996,40 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).expr_vec)); } -#line 1990 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2000 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 203: /* opt_from_clause */ + case 202: /* opt_from_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 1996 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2006 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 204: /* from_clause */ + case 203: /* from_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2002 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2012 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 205: /* opt_where */ + case 204: /* opt_where */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2008 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2018 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 206: /* opt_group */ + case 205: /* opt_group */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).group_t)); } -#line 2014 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2024 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 207: /* opt_having */ + case 206: /* opt_having */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2020 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2030 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 208: /* opt_order */ + case 207: /* opt_order */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).order_vec)) != nullptr) { @@ -2029,10 +2039,10 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).order_vec)); } -#line 2033 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2043 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 209: /* order_list */ + case 208: /* order_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).order_vec)) != nullptr) { @@ -2042,34 +2052,34 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).order_vec)); } -#line 2046 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2056 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 210: /* order_desc */ + case 209: /* order_desc */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).order)); } -#line 2052 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2062 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 211: /* opt_order_type */ + case 210: /* opt_order_type */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 2058 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2068 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 212: /* opt_top */ + case 211: /* opt_top */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).limit)); } -#line 2064 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2074 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 213: /* opt_limit */ + case 212: /* opt_limit */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).limit)); } -#line 2070 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2080 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 214: /* expr_list */ + case 213: /* expr_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).expr_vec)) != nullptr) { @@ -2079,10 +2089,10 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).expr_vec)); } -#line 2083 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2093 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 215: /* opt_literal_list */ + case 214: /* opt_literal_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).expr_vec)) != nullptr) { @@ -2092,10 +2102,10 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).expr_vec)); } -#line 2096 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2106 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 216: /* literal_list */ + case 215: /* literal_list */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).expr_vec)) != nullptr) { @@ -2105,184 +2115,184 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).expr_vec)); } -#line 2109 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2119 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 217: /* expr_alias */ + case 216: /* expr_alias */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2115 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2125 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 218: /* expr */ + case 217: /* expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2121 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2131 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 219: /* operand */ + case 218: /* operand */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2127 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2137 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 220: /* scalar_expr */ + case 219: /* scalar_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2133 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2143 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 221: /* unary_expr */ + case 220: /* unary_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2139 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2149 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 222: /* binary_expr */ + case 221: /* binary_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2145 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2155 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 223: /* logic_expr */ + case 222: /* logic_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2151 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2161 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 224: /* in_expr */ + case 223: /* in_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2157 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2167 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 225: /* case_expr */ + case 224: /* case_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2163 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2173 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 226: /* case_list */ + case 225: /* case_list */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2169 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2179 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 227: /* exists_expr */ + case 226: /* exists_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2175 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2185 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 228: /* comp_expr */ + case 227: /* comp_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2181 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2191 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 229: /* function_expr */ + case 228: /* function_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2187 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2197 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 230: /* extract_expr */ + case 229: /* extract_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2193 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2203 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 231: /* datetime_field */ + case 230: /* datetime_field */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 2199 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2209 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 232: /* array_expr */ + case 231: /* array_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2205 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2215 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 233: /* array_index */ + case 232: /* array_index */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2211 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2221 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 234: /* between_expr */ + case 233: /* between_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2217 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2227 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 235: /* column_name */ + case 234: /* column_name */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2223 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2233 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 236: /* literal */ + case 235: /* literal */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2229 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2239 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 237: /* string_literal */ + case 236: /* string_literal */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2235 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2245 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 238: /* bool_literal */ + case 237: /* bool_literal */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2241 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2251 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 239: /* num_literal */ + case 238: /* num_literal */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2247 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2257 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 240: /* int_literal */ + case 239: /* int_literal */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2253 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2263 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 241: /* null_literal */ + case 240: /* null_literal */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2259 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2269 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 242: /* param_expr */ + case 241: /* param_expr */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2265 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2275 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 243: /* table_ref */ + case 242: /* table_ref */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2271 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2281 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 244: /* table_ref_atomic */ + case 243: /* table_ref_atomic */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2277 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2287 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 245: /* nonjoin_table_ref_atomic */ + case 244: /* nonjoin_table_ref_atomic */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2283 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2293 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 246: /* table_ref_commalist */ + case 245: /* table_ref_commalist */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).table_vec)) != nullptr) { @@ -2292,94 +2302,94 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).table_vec)); } -#line 2296 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2306 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 247: /* table_ref_name */ + case 246: /* table_ref_name */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2302 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2312 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 248: /* table_ref_name_no_alias */ + case 247: /* table_ref_name_no_alias */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2308 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2318 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 249: /* table_name */ + case 248: /* table_name */ #line 144 "bison_parser.y" /* yacc.c:1257 */ { free( (((*yyvaluep).table_name).name) ); free( (((*yyvaluep).table_name).schema) ); } -#line 2314 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2324 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 250: /* table_alias */ + case 249: /* table_alias */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).alias_t)); } -#line 2320 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2330 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 251: /* opt_table_alias */ + case 250: /* opt_table_alias */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).alias_t)); } -#line 2326 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2336 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 252: /* alias */ + case 251: /* alias */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).alias_t)); } -#line 2332 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2342 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 253: /* opt_alias */ + case 252: /* opt_alias */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).alias_t)); } -#line 2338 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2348 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 254: /* opt_with_clause */ + case 253: /* opt_with_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).with_description_vec)); } -#line 2344 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2354 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 255: /* with_clause */ + case 254: /* with_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).with_description_vec)); } -#line 2350 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2360 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 256: /* with_description_list */ + case 255: /* with_description_list */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).with_description_vec)); } -#line 2356 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2366 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 257: /* with_description */ + case 256: /* with_description */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).with_description_t)); } -#line 2362 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2372 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 258: /* join_clause */ + case 257: /* join_clause */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).table)); } -#line 2368 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2378 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 259: /* opt_join_type */ + case 258: /* opt_join_type */ #line 143 "bison_parser.y" /* yacc.c:1257 */ { } -#line 2374 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2384 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 260: /* join_condition */ + case 259: /* join_condition */ #line 154 "bison_parser.y" /* yacc.c:1257 */ { delete (((*yyvaluep).expr)); } -#line 2380 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2390 "bison_parser.cpp" /* yacc.c:1257 */ break; - case 262: /* ident_commalist */ + case 261: /* ident_commalist */ #line 146 "bison_parser.y" /* yacc.c:1257 */ { if ((((*yyvaluep).str_vec)) != nullptr) { @@ -2389,7 +2399,7 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio } delete (((*yyvaluep).str_vec)); } -#line 2393 "bison_parser.cpp" /* yacc.c:1257 */ +#line 2403 "bison_parser.cpp" /* yacc.c:1257 */ break; default: @@ -2496,7 +2506,7 @@ YYLTYPE yylloc = yyloc_default; yychar = YYEMPTY; /* Cause a token to be read. */ /* User initialization code. */ -#line 73 "bison_parser.y" /* yacc.c:1431 */ +#line 73 "bison_parser.y" /* yacc.c:1437 */ { // Initialize yylloc.first_column = 0; @@ -2507,7 +2517,7 @@ YYLTYPE yylloc = yyloc_default; yylloc.string_length = 0; } -#line 2511 "bison_parser.cpp" /* yacc.c:1431 */ +#line 2521 "bison_parser.cpp" /* yacc.c:1437 */ yylsp[0] = yylloc; goto yysetstate; @@ -2699,7 +2709,7 @@ yyreduce: switch (yyn) { case 2: -#line 258 "bison_parser.y" /* yacc.c:1652 */ +#line 258 "bison_parser.y" /* yacc.c:1667 */ { for (SQLStatement* stmt : *(yyvsp[-1].stmt_vec)) { // Transfers ownership of the statement. @@ -2717,226 +2727,226 @@ yyreduce: } delete (yyvsp[-1].stmt_vec); } -#line 2721 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2731 "bison_parser.cpp" /* yacc.c:1667 */ break; case 3: -#line 279 "bison_parser.y" /* yacc.c:1652 */ +#line 279 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[0].statement)->stringLength = yylloc.string_length; yylloc.string_length = 0; (yyval.stmt_vec) = new std::vector(); (yyval.stmt_vec)->push_back((yyvsp[0].statement)); } -#line 2732 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2742 "bison_parser.cpp" /* yacc.c:1667 */ break; case 4: -#line 285 "bison_parser.y" /* yacc.c:1652 */ +#line 285 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[0].statement)->stringLength = yylloc.string_length; yylloc.string_length = 0; (yyvsp[-2].stmt_vec)->push_back((yyvsp[0].statement)); (yyval.stmt_vec) = (yyvsp[-2].stmt_vec); } -#line 2743 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2753 "bison_parser.cpp" /* yacc.c:1667 */ break; case 5: -#line 294 "bison_parser.y" /* yacc.c:1652 */ +#line 294 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[-1].prep_stmt); (yyval.statement)->hints = (yyvsp[0].expr_vec); } -#line 2752 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2762 "bison_parser.cpp" /* yacc.c:1667 */ break; case 6: -#line 298 "bison_parser.y" /* yacc.c:1652 */ +#line 298 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[-1].statement); (yyval.statement)->hints = (yyvsp[0].expr_vec); } -#line 2761 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2771 "bison_parser.cpp" /* yacc.c:1667 */ break; case 7: -#line 302 "bison_parser.y" /* yacc.c:1652 */ +#line 302 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].show_stmt); } -#line 2769 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2779 "bison_parser.cpp" /* yacc.c:1667 */ break; case 8: -#line 309 "bison_parser.y" /* yacc.c:1652 */ +#line 309 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].select_stmt); } -#line 2775 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2785 "bison_parser.cpp" /* yacc.c:1667 */ break; case 9: -#line 310 "bison_parser.y" /* yacc.c:1652 */ +#line 310 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].import_stmt); } -#line 2781 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2791 "bison_parser.cpp" /* yacc.c:1667 */ break; case 10: -#line 311 "bison_parser.y" /* yacc.c:1652 */ +#line 311 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].create_stmt); } -#line 2787 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2797 "bison_parser.cpp" /* yacc.c:1667 */ break; case 11: -#line 312 "bison_parser.y" /* yacc.c:1652 */ +#line 312 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].insert_stmt); } -#line 2793 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2803 "bison_parser.cpp" /* yacc.c:1667 */ break; case 12: -#line 313 "bison_parser.y" /* yacc.c:1652 */ +#line 313 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].delete_stmt); } -#line 2799 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2809 "bison_parser.cpp" /* yacc.c:1667 */ break; case 13: -#line 314 "bison_parser.y" /* yacc.c:1652 */ +#line 314 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].delete_stmt); } -#line 2805 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2815 "bison_parser.cpp" /* yacc.c:1667 */ break; case 14: -#line 315 "bison_parser.y" /* yacc.c:1652 */ +#line 315 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].update_stmt); } -#line 2811 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2821 "bison_parser.cpp" /* yacc.c:1667 */ break; case 15: -#line 316 "bison_parser.y" /* yacc.c:1652 */ +#line 316 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].drop_stmt); } -#line 2817 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2827 "bison_parser.cpp" /* yacc.c:1667 */ break; case 16: -#line 317 "bison_parser.y" /* yacc.c:1652 */ +#line 317 "bison_parser.y" /* yacc.c:1667 */ { (yyval.statement) = (yyvsp[0].exec_stmt); } -#line 2823 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2833 "bison_parser.cpp" /* yacc.c:1667 */ break; case 17: -#line 326 "bison_parser.y" /* yacc.c:1652 */ +#line 326 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = (yyvsp[-1].expr_vec); } -#line 2829 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2839 "bison_parser.cpp" /* yacc.c:1667 */ break; case 18: -#line 327 "bison_parser.y" /* yacc.c:1652 */ +#line 327 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = nullptr; } -#line 2835 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2845 "bison_parser.cpp" /* yacc.c:1667 */ break; case 19: -#line 332 "bison_parser.y" /* yacc.c:1652 */ +#line 332 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = new std::vector(); (yyval.expr_vec)->push_back((yyvsp[0].expr)); } -#line 2841 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2851 "bison_parser.cpp" /* yacc.c:1667 */ break; case 20: -#line 333 "bison_parser.y" /* yacc.c:1652 */ +#line 333 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].expr_vec)->push_back((yyvsp[0].expr)); (yyval.expr_vec) = (yyvsp[-2].expr_vec); } -#line 2847 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2857 "bison_parser.cpp" /* yacc.c:1667 */ break; case 21: -#line 337 "bison_parser.y" /* yacc.c:1652 */ +#line 337 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::make(kExprHint); (yyval.expr)->name = (yyvsp[0].sval); } -#line 2856 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2866 "bison_parser.cpp" /* yacc.c:1667 */ break; case 22: -#line 341 "bison_parser.y" /* yacc.c:1652 */ +#line 341 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::make(kExprHint); (yyval.expr)->name = (yyvsp[-3].sval); (yyval.expr)->exprList = (yyvsp[-1].expr_vec); } -#line 2866 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2876 "bison_parser.cpp" /* yacc.c:1667 */ break; case 23: -#line 353 "bison_parser.y" /* yacc.c:1652 */ +#line 353 "bison_parser.y" /* yacc.c:1667 */ { (yyval.prep_stmt) = new PrepareStatement(); (yyval.prep_stmt)->name = (yyvsp[-2].sval); (yyval.prep_stmt)->query = (yyvsp[0].sval); } -#line 2876 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2886 "bison_parser.cpp" /* yacc.c:1667 */ break; case 25: -#line 363 "bison_parser.y" /* yacc.c:1652 */ +#line 363 "bison_parser.y" /* yacc.c:1667 */ { (yyval.exec_stmt) = new ExecuteStatement(); (yyval.exec_stmt)->name = (yyvsp[0].sval); } -#line 2885 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2895 "bison_parser.cpp" /* yacc.c:1667 */ break; case 26: -#line 367 "bison_parser.y" /* yacc.c:1652 */ +#line 367 "bison_parser.y" /* yacc.c:1667 */ { (yyval.exec_stmt) = new ExecuteStatement(); (yyval.exec_stmt)->name = (yyvsp[-3].sval); (yyval.exec_stmt)->parameters = (yyvsp[-1].expr_vec); } -#line 2895 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2905 "bison_parser.cpp" /* yacc.c:1667 */ break; case 27: -#line 379 "bison_parser.y" /* yacc.c:1652 */ +#line 379 "bison_parser.y" /* yacc.c:1667 */ { (yyval.import_stmt) = new ImportStatement((ImportType) (yyvsp[-4].uval)); (yyval.import_stmt)->filePath = (yyvsp[-2].sval); (yyval.import_stmt)->schema = (yyvsp[0].table_name).schema; (yyval.import_stmt)->tableName = (yyvsp[0].table_name).name; } -#line 2906 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2916 "bison_parser.cpp" /* yacc.c:1667 */ break; case 28: -#line 388 "bison_parser.y" /* yacc.c:1652 */ +#line 388 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kImportCSV; } -#line 2912 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2922 "bison_parser.cpp" /* yacc.c:1667 */ break; case 29: -#line 392 "bison_parser.y" /* yacc.c:1652 */ +#line 392 "bison_parser.y" /* yacc.c:1667 */ { (yyval.sval) = strdup((yyvsp[0].expr)->name); delete (yyvsp[0].expr); } -#line 2918 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2928 "bison_parser.cpp" /* yacc.c:1667 */ break; case 30: -#line 402 "bison_parser.y" /* yacc.c:1652 */ +#line 402 "bison_parser.y" /* yacc.c:1667 */ { (yyval.show_stmt) = new ShowStatement(kShowTables); } -#line 2926 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2936 "bison_parser.cpp" /* yacc.c:1667 */ break; case 31: -#line 405 "bison_parser.y" /* yacc.c:1652 */ +#line 405 "bison_parser.y" /* yacc.c:1667 */ { (yyval.show_stmt) = new ShowStatement(kShowColumns); (yyval.show_stmt)->schema = (yyvsp[0].table_name).schema; (yyval.show_stmt)->name = (yyvsp[0].table_name).name; } -#line 2936 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2946 "bison_parser.cpp" /* yacc.c:1667 */ break; case 32: -#line 419 "bison_parser.y" /* yacc.c:1652 */ +#line 419 "bison_parser.y" /* yacc.c:1667 */ { (yyval.create_stmt) = new CreateStatement(kCreateTableFromTbl); (yyval.create_stmt)->ifNotExists = (yyvsp[-5].bval); @@ -2944,11 +2954,11 @@ yyreduce: (yyval.create_stmt)->tableName = (yyvsp[-4].table_name).name; (yyval.create_stmt)->filePath = (yyvsp[0].sval); } -#line 2948 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2958 "bison_parser.cpp" /* yacc.c:1667 */ break; case 33: -#line 426 "bison_parser.y" /* yacc.c:1652 */ +#line 426 "bison_parser.y" /* yacc.c:1667 */ { (yyval.create_stmt) = new CreateStatement(kCreateTable); (yyval.create_stmt)->ifNotExists = (yyvsp[-4].bval); @@ -2956,11 +2966,11 @@ yyreduce: (yyval.create_stmt)->tableName = (yyvsp[-3].table_name).name; (yyval.create_stmt)->columns = (yyvsp[-1].column_vec); } -#line 2960 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2970 "bison_parser.cpp" /* yacc.c:1667 */ break; case 34: -#line 433 "bison_parser.y" /* yacc.c:1652 */ +#line 433 "bison_parser.y" /* yacc.c:1667 */ { (yyval.create_stmt) = new CreateStatement(kCreateTable); (yyval.create_stmt)->ifNotExists = (yyvsp[-3].bval); @@ -2968,11 +2978,11 @@ yyreduce: (yyval.create_stmt)->tableName = (yyvsp[-2].table_name).name; (yyval.create_stmt)->select = (yyvsp[0].select_stmt); } -#line 2972 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2982 "bison_parser.cpp" /* yacc.c:1667 */ break; case 35: -#line 440 "bison_parser.y" /* yacc.c:1652 */ +#line 440 "bison_parser.y" /* yacc.c:1667 */ { (yyval.create_stmt) = new CreateStatement(kCreateView); (yyval.create_stmt)->ifNotExists = (yyvsp[-4].bval); @@ -2981,174 +2991,174 @@ yyreduce: (yyval.create_stmt)->viewColumns = (yyvsp[-2].str_vec); (yyval.create_stmt)->select = (yyvsp[0].select_stmt); } -#line 2985 "bison_parser.cpp" /* yacc.c:1652 */ +#line 2995 "bison_parser.cpp" /* yacc.c:1667 */ break; case 36: -#line 451 "bison_parser.y" /* yacc.c:1652 */ +#line 451 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = true; } -#line 2991 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3001 "bison_parser.cpp" /* yacc.c:1667 */ break; case 37: -#line 452 "bison_parser.y" /* yacc.c:1652 */ +#line 452 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = false; } -#line 2997 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3007 "bison_parser.cpp" /* yacc.c:1667 */ break; case 38: -#line 456 "bison_parser.y" /* yacc.c:1652 */ +#line 456 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_vec) = new std::vector(); (yyval.column_vec)->push_back((yyvsp[0].column_t)); } -#line 3003 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3013 "bison_parser.cpp" /* yacc.c:1667 */ break; case 39: -#line 457 "bison_parser.y" /* yacc.c:1652 */ +#line 457 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].column_vec)->push_back((yyvsp[0].column_t)); (yyval.column_vec) = (yyvsp[-2].column_vec); } -#line 3009 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3019 "bison_parser.cpp" /* yacc.c:1667 */ break; case 40: -#line 461 "bison_parser.y" /* yacc.c:1652 */ +#line 461 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_t) = new ColumnDefinition((yyvsp[-2].sval), (yyvsp[-1].column_type_t), (yyvsp[0].bval)); } -#line 3017 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3027 "bison_parser.cpp" /* yacc.c:1667 */ break; case 41: -#line 467 "bison_parser.y" /* yacc.c:1652 */ +#line 467 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::INT}; } -#line 3023 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3033 "bison_parser.cpp" /* yacc.c:1667 */ break; case 42: -#line 468 "bison_parser.y" /* yacc.c:1652 */ +#line 468 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::INT}; } -#line 3029 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3039 "bison_parser.cpp" /* yacc.c:1667 */ break; case 43: -#line 469 "bison_parser.y" /* yacc.c:1652 */ +#line 469 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::LONG}; } -#line 3035 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3045 "bison_parser.cpp" /* yacc.c:1667 */ break; case 44: -#line 470 "bison_parser.y" /* yacc.c:1652 */ +#line 470 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::FLOAT}; } -#line 3041 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3051 "bison_parser.cpp" /* yacc.c:1667 */ break; case 45: -#line 471 "bison_parser.y" /* yacc.c:1652 */ +#line 471 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::DOUBLE}; } -#line 3047 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3057 "bison_parser.cpp" /* yacc.c:1667 */ break; case 46: -#line 472 "bison_parser.y" /* yacc.c:1652 */ +#line 472 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::VARCHAR, (yyvsp[-1].ival)}; } -#line 3053 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3063 "bison_parser.cpp" /* yacc.c:1667 */ break; case 47: -#line 473 "bison_parser.y" /* yacc.c:1652 */ +#line 473 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::CHAR, (yyvsp[-1].ival)}; } -#line 3059 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3069 "bison_parser.cpp" /* yacc.c:1667 */ break; case 48: -#line 474 "bison_parser.y" /* yacc.c:1652 */ +#line 474 "bison_parser.y" /* yacc.c:1667 */ { (yyval.column_type_t) = ColumnType{DataType::TEXT}; } -#line 3065 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3075 "bison_parser.cpp" /* yacc.c:1667 */ break; case 49: -#line 478 "bison_parser.y" /* yacc.c:1652 */ +#line 478 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = true; } -#line 3071 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3081 "bison_parser.cpp" /* yacc.c:1667 */ break; case 50: -#line 479 "bison_parser.y" /* yacc.c:1652 */ +#line 479 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = false; } -#line 3077 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3087 "bison_parser.cpp" /* yacc.c:1667 */ break; case 51: -#line 480 "bison_parser.y" /* yacc.c:1652 */ +#line 480 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = false; } -#line 3083 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3093 "bison_parser.cpp" /* yacc.c:1667 */ break; case 52: -#line 490 "bison_parser.y" /* yacc.c:1652 */ +#line 490 "bison_parser.y" /* yacc.c:1667 */ { (yyval.drop_stmt) = new DropStatement(kDropTable); (yyval.drop_stmt)->ifExists = (yyvsp[-1].bval); (yyval.drop_stmt)->schema = (yyvsp[0].table_name).schema; (yyval.drop_stmt)->name = (yyvsp[0].table_name).name; } -#line 3094 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3104 "bison_parser.cpp" /* yacc.c:1667 */ break; case 53: -#line 496 "bison_parser.y" /* yacc.c:1652 */ +#line 496 "bison_parser.y" /* yacc.c:1667 */ { (yyval.drop_stmt) = new DropStatement(kDropView); (yyval.drop_stmt)->ifExists = (yyvsp[-1].bval); (yyval.drop_stmt)->schema = (yyvsp[0].table_name).schema; (yyval.drop_stmt)->name = (yyvsp[0].table_name).name; } -#line 3105 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3115 "bison_parser.cpp" /* yacc.c:1667 */ break; case 54: -#line 502 "bison_parser.y" /* yacc.c:1652 */ +#line 502 "bison_parser.y" /* yacc.c:1667 */ { (yyval.drop_stmt) = new DropStatement(kDropPreparedStatement); (yyval.drop_stmt)->ifExists = false; (yyval.drop_stmt)->name = (yyvsp[0].sval); } -#line 3115 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3125 "bison_parser.cpp" /* yacc.c:1667 */ break; case 55: -#line 510 "bison_parser.y" /* yacc.c:1652 */ +#line 510 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = true; } -#line 3121 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3131 "bison_parser.cpp" /* yacc.c:1667 */ break; case 56: -#line 511 "bison_parser.y" /* yacc.c:1652 */ +#line 511 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = false; } -#line 3127 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3137 "bison_parser.cpp" /* yacc.c:1667 */ break; case 57: -#line 520 "bison_parser.y" /* yacc.c:1652 */ +#line 520 "bison_parser.y" /* yacc.c:1667 */ { (yyval.delete_stmt) = new DeleteStatement(); (yyval.delete_stmt)->schema = (yyvsp[-1].table_name).schema; (yyval.delete_stmt)->tableName = (yyvsp[-1].table_name).name; (yyval.delete_stmt)->expr = (yyvsp[0].expr); } -#line 3138 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3148 "bison_parser.cpp" /* yacc.c:1667 */ break; case 58: -#line 529 "bison_parser.y" /* yacc.c:1652 */ +#line 529 "bison_parser.y" /* yacc.c:1667 */ { (yyval.delete_stmt) = new DeleteStatement(); (yyval.delete_stmt)->schema = (yyvsp[0].table_name).schema; (yyval.delete_stmt)->tableName = (yyvsp[0].table_name).name; } -#line 3148 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3158 "bison_parser.cpp" /* yacc.c:1667 */ break; case 59: -#line 542 "bison_parser.y" /* yacc.c:1652 */ +#line 542 "bison_parser.y" /* yacc.c:1667 */ { (yyval.insert_stmt) = new InsertStatement(kInsertValues); (yyval.insert_stmt)->schema = (yyvsp[-5].table_name).schema; @@ -3156,11 +3166,11 @@ yyreduce: (yyval.insert_stmt)->columns = (yyvsp[-4].str_vec); (yyval.insert_stmt)->values = (yyvsp[-1].expr_vec); } -#line 3160 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3170 "bison_parser.cpp" /* yacc.c:1667 */ break; case 60: -#line 549 "bison_parser.y" /* yacc.c:1652 */ +#line 549 "bison_parser.y" /* yacc.c:1667 */ { (yyval.insert_stmt) = new InsertStatement(kInsertSelect); (yyval.insert_stmt)->schema = (yyvsp[-2].table_name).schema; @@ -3168,74 +3178,74 @@ yyreduce: (yyval.insert_stmt)->columns = (yyvsp[-1].str_vec); (yyval.insert_stmt)->select = (yyvsp[0].select_stmt); } -#line 3172 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3182 "bison_parser.cpp" /* yacc.c:1667 */ break; case 61: -#line 560 "bison_parser.y" /* yacc.c:1652 */ +#line 560 "bison_parser.y" /* yacc.c:1667 */ { (yyval.str_vec) = (yyvsp[-1].str_vec); } -#line 3178 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3188 "bison_parser.cpp" /* yacc.c:1667 */ break; case 62: -#line 561 "bison_parser.y" /* yacc.c:1652 */ +#line 561 "bison_parser.y" /* yacc.c:1667 */ { (yyval.str_vec) = nullptr; } -#line 3184 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3194 "bison_parser.cpp" /* yacc.c:1667 */ break; case 63: -#line 571 "bison_parser.y" /* yacc.c:1652 */ +#line 571 "bison_parser.y" /* yacc.c:1667 */ { (yyval.update_stmt) = new UpdateStatement(); (yyval.update_stmt)->table = (yyvsp[-3].table); (yyval.update_stmt)->updates = (yyvsp[-1].update_vec); (yyval.update_stmt)->where = (yyvsp[0].expr); } -#line 3195 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3205 "bison_parser.cpp" /* yacc.c:1667 */ break; case 64: -#line 580 "bison_parser.y" /* yacc.c:1652 */ +#line 580 "bison_parser.y" /* yacc.c:1667 */ { (yyval.update_vec) = new std::vector(); (yyval.update_vec)->push_back((yyvsp[0].update_t)); } -#line 3201 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3211 "bison_parser.cpp" /* yacc.c:1667 */ break; case 65: -#line 581 "bison_parser.y" /* yacc.c:1652 */ +#line 581 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].update_vec)->push_back((yyvsp[0].update_t)); (yyval.update_vec) = (yyvsp[-2].update_vec); } -#line 3207 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3217 "bison_parser.cpp" /* yacc.c:1667 */ break; case 66: -#line 585 "bison_parser.y" /* yacc.c:1652 */ +#line 585 "bison_parser.y" /* yacc.c:1667 */ { (yyval.update_t) = new UpdateClause(); (yyval.update_t)->column = (yyvsp[-2].sval); (yyval.update_t)->value = (yyvsp[0].expr); } -#line 3217 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3227 "bison_parser.cpp" /* yacc.c:1667 */ break; case 67: -#line 597 "bison_parser.y" /* yacc.c:1652 */ +#line 597 "bison_parser.y" /* yacc.c:1667 */ { (yyval.select_stmt) = (yyvsp[0].select_stmt); (yyval.select_stmt)->withDescriptions = (yyvsp[-1].with_description_vec); } -#line 3226 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3236 "bison_parser.cpp" /* yacc.c:1667 */ break; case 68: -#line 601 "bison_parser.y" /* yacc.c:1652 */ +#line 601 "bison_parser.y" /* yacc.c:1667 */ { (yyval.select_stmt) = (yyvsp[0].select_stmt); (yyval.select_stmt)->withDescriptions = (yyvsp[-1].with_description_vec); } -#line 3235 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3245 "bison_parser.cpp" /* yacc.c:1667 */ break; case 69: -#line 605 "bison_parser.y" /* yacc.c:1652 */ +#line 605 "bison_parser.y" /* yacc.c:1667 */ { // TODO: allow multiple unions (through linked list) // TODO: capture type of set_operator @@ -3251,23 +3261,23 @@ yyreduce: (yyval.select_stmt)->limit = (yyvsp[0].limit); } } -#line 3255 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3265 "bison_parser.cpp" /* yacc.c:1667 */ break; case 70: -#line 623 "bison_parser.y" /* yacc.c:1652 */ +#line 623 "bison_parser.y" /* yacc.c:1667 */ { (yyval.select_stmt) = (yyvsp[-1].select_stmt); } -#line 3261 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3271 "bison_parser.cpp" /* yacc.c:1667 */ break; case 71: -#line 624 "bison_parser.y" /* yacc.c:1652 */ +#line 624 "bison_parser.y" /* yacc.c:1667 */ { (yyval.select_stmt) = (yyvsp[-1].select_stmt); } -#line 3267 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3277 "bison_parser.cpp" /* yacc.c:1667 */ break; case 74: -#line 633 "bison_parser.y" /* yacc.c:1652 */ +#line 633 "bison_parser.y" /* yacc.c:1667 */ { (yyval.select_stmt) = (yyvsp[-2].select_stmt); (yyval.select_stmt)->order = (yyvsp[-1].order_vec); @@ -3278,11 +3288,11 @@ yyreduce: (yyval.select_stmt)->limit = (yyvsp[0].limit); } } -#line 3282 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3292 "bison_parser.cpp" /* yacc.c:1667 */ break; case 75: -#line 643 "bison_parser.y" /* yacc.c:1652 */ +#line 643 "bison_parser.y" /* yacc.c:1667 */ { // TODO: allow multiple unions (through linked list) // TODO: capture type of set_operator @@ -3297,11 +3307,11 @@ yyreduce: (yyval.select_stmt)->limit = (yyvsp[0].limit); } } -#line 3301 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3311 "bison_parser.cpp" /* yacc.c:1667 */ break; case 82: -#line 675 "bison_parser.y" /* yacc.c:1652 */ +#line 675 "bison_parser.y" /* yacc.c:1667 */ { (yyval.select_stmt) = new SelectStatement(); (yyval.select_stmt)->limit = (yyvsp[-5].limit); @@ -3311,213 +3321,213 @@ yyreduce: (yyval.select_stmt)->whereClause = (yyvsp[-1].expr); (yyval.select_stmt)->groupBy = (yyvsp[0].group_t); } -#line 3315 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3325 "bison_parser.cpp" /* yacc.c:1667 */ break; case 83: -#line 687 "bison_parser.y" /* yacc.c:1652 */ +#line 687 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = true; } -#line 3321 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3331 "bison_parser.cpp" /* yacc.c:1667 */ break; case 84: -#line 688 "bison_parser.y" /* yacc.c:1652 */ +#line 688 "bison_parser.y" /* yacc.c:1667 */ { (yyval.bval) = false; } -#line 3327 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3337 "bison_parser.cpp" /* yacc.c:1667 */ break; case 86: -#line 696 "bison_parser.y" /* yacc.c:1652 */ +#line 696 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = (yyvsp[0].table); } -#line 3333 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3343 "bison_parser.cpp" /* yacc.c:1667 */ break; case 87: -#line 697 "bison_parser.y" /* yacc.c:1652 */ +#line 697 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = nullptr; } -#line 3339 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3349 "bison_parser.cpp" /* yacc.c:1667 */ break; case 88: -#line 700 "bison_parser.y" /* yacc.c:1652 */ +#line 700 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = (yyvsp[0].table); } -#line 3345 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3355 "bison_parser.cpp" /* yacc.c:1667 */ break; case 89: -#line 705 "bison_parser.y" /* yacc.c:1652 */ +#line 705 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = (yyvsp[0].expr); } -#line 3351 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3361 "bison_parser.cpp" /* yacc.c:1667 */ break; case 90: -#line 706 "bison_parser.y" /* yacc.c:1652 */ +#line 706 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = nullptr; } -#line 3357 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3367 "bison_parser.cpp" /* yacc.c:1667 */ break; case 91: -#line 710 "bison_parser.y" /* yacc.c:1652 */ +#line 710 "bison_parser.y" /* yacc.c:1667 */ { (yyval.group_t) = new GroupByDescription(); (yyval.group_t)->columns = (yyvsp[-1].expr_vec); (yyval.group_t)->having = (yyvsp[0].expr); } -#line 3367 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3377 "bison_parser.cpp" /* yacc.c:1667 */ break; case 92: -#line 715 "bison_parser.y" /* yacc.c:1652 */ +#line 715 "bison_parser.y" /* yacc.c:1667 */ { (yyval.group_t) = nullptr; } -#line 3373 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3383 "bison_parser.cpp" /* yacc.c:1667 */ break; case 93: -#line 719 "bison_parser.y" /* yacc.c:1652 */ +#line 719 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = (yyvsp[0].expr); } -#line 3379 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3389 "bison_parser.cpp" /* yacc.c:1667 */ break; case 94: -#line 720 "bison_parser.y" /* yacc.c:1652 */ +#line 720 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = nullptr; } -#line 3385 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3395 "bison_parser.cpp" /* yacc.c:1667 */ break; case 95: -#line 723 "bison_parser.y" /* yacc.c:1652 */ +#line 723 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order_vec) = (yyvsp[0].order_vec); } -#line 3391 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3401 "bison_parser.cpp" /* yacc.c:1667 */ break; case 96: -#line 724 "bison_parser.y" /* yacc.c:1652 */ +#line 724 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order_vec) = nullptr; } -#line 3397 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3407 "bison_parser.cpp" /* yacc.c:1667 */ break; case 97: -#line 728 "bison_parser.y" /* yacc.c:1652 */ +#line 728 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order_vec) = new std::vector(); (yyval.order_vec)->push_back((yyvsp[0].order)); } -#line 3403 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3413 "bison_parser.cpp" /* yacc.c:1667 */ break; case 98: -#line 729 "bison_parser.y" /* yacc.c:1652 */ +#line 729 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].order_vec)->push_back((yyvsp[0].order)); (yyval.order_vec) = (yyvsp[-2].order_vec); } -#line 3409 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3419 "bison_parser.cpp" /* yacc.c:1667 */ break; case 99: -#line 733 "bison_parser.y" /* yacc.c:1652 */ +#line 733 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order) = new OrderDescription((yyvsp[0].order_type), (yyvsp[-1].expr)); } -#line 3415 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3425 "bison_parser.cpp" /* yacc.c:1667 */ break; case 100: -#line 737 "bison_parser.y" /* yacc.c:1652 */ +#line 737 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order_type) = kOrderAsc; } -#line 3421 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3431 "bison_parser.cpp" /* yacc.c:1667 */ break; case 101: -#line 738 "bison_parser.y" /* yacc.c:1652 */ +#line 738 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order_type) = kOrderDesc; } -#line 3427 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3437 "bison_parser.cpp" /* yacc.c:1667 */ break; case 102: -#line 739 "bison_parser.y" /* yacc.c:1652 */ +#line 739 "bison_parser.y" /* yacc.c:1667 */ { (yyval.order_type) = kOrderAsc; } -#line 3433 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3443 "bison_parser.cpp" /* yacc.c:1667 */ break; case 103: -#line 745 "bison_parser.y" /* yacc.c:1652 */ +#line 745 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = new LimitDescription((yyvsp[0].expr), nullptr); } -#line 3439 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3449 "bison_parser.cpp" /* yacc.c:1667 */ break; case 104: -#line 746 "bison_parser.y" /* yacc.c:1652 */ +#line 746 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = nullptr; } -#line 3445 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3455 "bison_parser.cpp" /* yacc.c:1667 */ break; case 105: -#line 750 "bison_parser.y" /* yacc.c:1652 */ +#line 750 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = new LimitDescription((yyvsp[0].expr), nullptr); } -#line 3451 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3461 "bison_parser.cpp" /* yacc.c:1667 */ break; case 106: -#line 751 "bison_parser.y" /* yacc.c:1652 */ +#line 751 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = new LimitDescription(nullptr, (yyvsp[0].expr)); } -#line 3457 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3467 "bison_parser.cpp" /* yacc.c:1667 */ break; case 107: -#line 752 "bison_parser.y" /* yacc.c:1652 */ +#line 752 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = new LimitDescription((yyvsp[-2].expr), (yyvsp[0].expr)); } -#line 3463 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3473 "bison_parser.cpp" /* yacc.c:1667 */ break; case 108: -#line 753 "bison_parser.y" /* yacc.c:1652 */ +#line 753 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = new LimitDescription(nullptr, nullptr); } -#line 3469 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3479 "bison_parser.cpp" /* yacc.c:1667 */ break; case 109: -#line 754 "bison_parser.y" /* yacc.c:1652 */ +#line 754 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = new LimitDescription(nullptr, (yyvsp[0].expr)); } -#line 3475 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3485 "bison_parser.cpp" /* yacc.c:1667 */ break; case 110: -#line 755 "bison_parser.y" /* yacc.c:1652 */ +#line 755 "bison_parser.y" /* yacc.c:1667 */ { (yyval.limit) = nullptr; } -#line 3481 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3491 "bison_parser.cpp" /* yacc.c:1667 */ break; case 111: -#line 762 "bison_parser.y" /* yacc.c:1652 */ +#line 762 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = new std::vector(); (yyval.expr_vec)->push_back((yyvsp[0].expr)); } -#line 3487 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3497 "bison_parser.cpp" /* yacc.c:1667 */ break; case 112: -#line 763 "bison_parser.y" /* yacc.c:1652 */ +#line 763 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].expr_vec)->push_back((yyvsp[0].expr)); (yyval.expr_vec) = (yyvsp[-2].expr_vec); } -#line 3493 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3503 "bison_parser.cpp" /* yacc.c:1667 */ break; case 113: -#line 767 "bison_parser.y" /* yacc.c:1652 */ +#line 767 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = (yyvsp[0].expr_vec); } -#line 3499 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3509 "bison_parser.cpp" /* yacc.c:1667 */ break; case 114: -#line 768 "bison_parser.y" /* yacc.c:1652 */ +#line 768 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = nullptr; } -#line 3505 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3515 "bison_parser.cpp" /* yacc.c:1667 */ break; case 115: -#line 772 "bison_parser.y" /* yacc.c:1652 */ +#line 772 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr_vec) = new std::vector(); (yyval.expr_vec)->push_back((yyvsp[0].expr)); } -#line 3511 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3521 "bison_parser.cpp" /* yacc.c:1667 */ break; case 116: -#line 773 "bison_parser.y" /* yacc.c:1652 */ +#line 773 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].expr_vec)->push_back((yyvsp[0].expr)); (yyval.expr_vec) = (yyvsp[-2].expr_vec); } -#line 3517 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3527 "bison_parser.cpp" /* yacc.c:1667 */ break; case 117: -#line 777 "bison_parser.y" /* yacc.c:1652 */ +#line 777 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = (yyvsp[-1].expr); if ((yyvsp[0].alias_t)) { @@ -3525,415 +3535,415 @@ yyreduce: delete (yyvsp[0].alias_t); } } -#line 3529 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3539 "bison_parser.cpp" /* yacc.c:1667 */ break; case 123: -#line 795 "bison_parser.y" /* yacc.c:1652 */ +#line 795 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = (yyvsp[-1].expr); } -#line 3535 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3545 "bison_parser.cpp" /* yacc.c:1667 */ break; case 132: -#line 804 "bison_parser.y" /* yacc.c:1652 */ +#line 804 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeSelect((yyvsp[-1].select_stmt)); } -#line 3541 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3551 "bison_parser.cpp" /* yacc.c:1667 */ break; case 135: -#line 813 "bison_parser.y" /* yacc.c:1652 */ +#line 813 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpUnaryMinus, (yyvsp[0].expr)); } -#line 3547 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3557 "bison_parser.cpp" /* yacc.c:1667 */ break; case 136: -#line 814 "bison_parser.y" /* yacc.c:1652 */ +#line 814 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpNot, (yyvsp[0].expr)); } -#line 3553 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3563 "bison_parser.cpp" /* yacc.c:1667 */ break; case 137: -#line 815 "bison_parser.y" /* yacc.c:1652 */ +#line 815 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpIsNull, (yyvsp[-1].expr)); } -#line 3559 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3569 "bison_parser.cpp" /* yacc.c:1667 */ break; case 138: -#line 816 "bison_parser.y" /* yacc.c:1652 */ +#line 816 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpIsNull, (yyvsp[-2].expr)); } -#line 3565 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3575 "bison_parser.cpp" /* yacc.c:1667 */ break; case 139: -#line 817 "bison_parser.y" /* yacc.c:1652 */ +#line 817 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpNot, Expr::makeOpUnary(kOpIsNull, (yyvsp[-3].expr))); } -#line 3571 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3581 "bison_parser.cpp" /* yacc.c:1667 */ break; case 141: -#line 822 "bison_parser.y" /* yacc.c:1652 */ +#line 822 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpMinus, (yyvsp[0].expr)); } -#line 3577 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3587 "bison_parser.cpp" /* yacc.c:1667 */ break; case 142: -#line 823 "bison_parser.y" /* yacc.c:1652 */ +#line 823 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpPlus, (yyvsp[0].expr)); } -#line 3583 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3593 "bison_parser.cpp" /* yacc.c:1667 */ break; case 143: -#line 824 "bison_parser.y" /* yacc.c:1652 */ +#line 824 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpSlash, (yyvsp[0].expr)); } -#line 3589 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3599 "bison_parser.cpp" /* yacc.c:1667 */ break; case 144: -#line 825 "bison_parser.y" /* yacc.c:1652 */ +#line 825 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpAsterisk, (yyvsp[0].expr)); } -#line 3595 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3605 "bison_parser.cpp" /* yacc.c:1667 */ break; case 145: -#line 826 "bison_parser.y" /* yacc.c:1652 */ +#line 826 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpPercentage, (yyvsp[0].expr)); } -#line 3601 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3611 "bison_parser.cpp" /* yacc.c:1667 */ break; case 146: -#line 827 "bison_parser.y" /* yacc.c:1652 */ +#line 827 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpCaret, (yyvsp[0].expr)); } -#line 3607 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3617 "bison_parser.cpp" /* yacc.c:1667 */ break; case 147: -#line 828 "bison_parser.y" /* yacc.c:1652 */ +#line 828 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpLike, (yyvsp[0].expr)); } -#line 3613 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3623 "bison_parser.cpp" /* yacc.c:1667 */ break; case 148: -#line 829 "bison_parser.y" /* yacc.c:1652 */ +#line 829 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-3].expr), kOpNotLike, (yyvsp[0].expr)); } -#line 3619 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3629 "bison_parser.cpp" /* yacc.c:1667 */ break; case 149: -#line 830 "bison_parser.y" /* yacc.c:1652 */ +#line 830 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpILike, (yyvsp[0].expr)); } -#line 3625 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3635 "bison_parser.cpp" /* yacc.c:1667 */ break; case 150: -#line 831 "bison_parser.y" /* yacc.c:1652 */ +#line 831 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpConcat, (yyvsp[0].expr)); } -#line 3631 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3641 "bison_parser.cpp" /* yacc.c:1667 */ break; case 151: -#line 835 "bison_parser.y" /* yacc.c:1652 */ +#line 835 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpAnd, (yyvsp[0].expr)); } -#line 3637 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3647 "bison_parser.cpp" /* yacc.c:1667 */ break; case 152: -#line 836 "bison_parser.y" /* yacc.c:1652 */ +#line 836 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpOr, (yyvsp[0].expr)); } -#line 3643 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3653 "bison_parser.cpp" /* yacc.c:1667 */ break; case 153: -#line 840 "bison_parser.y" /* yacc.c:1652 */ +#line 840 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeInOperator((yyvsp[-4].expr), (yyvsp[-1].expr_vec)); } -#line 3649 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3659 "bison_parser.cpp" /* yacc.c:1667 */ break; case 154: -#line 841 "bison_parser.y" /* yacc.c:1652 */ +#line 841 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpNot, Expr::makeInOperator((yyvsp[-5].expr), (yyvsp[-1].expr_vec))); } -#line 3655 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3665 "bison_parser.cpp" /* yacc.c:1667 */ break; case 155: -#line 842 "bison_parser.y" /* yacc.c:1652 */ +#line 842 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeInOperator((yyvsp[-4].expr), (yyvsp[-1].select_stmt)); } -#line 3661 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3671 "bison_parser.cpp" /* yacc.c:1667 */ break; case 156: -#line 843 "bison_parser.y" /* yacc.c:1652 */ +#line 843 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpNot, Expr::makeInOperator((yyvsp[-5].expr), (yyvsp[-1].select_stmt))); } -#line 3667 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3677 "bison_parser.cpp" /* yacc.c:1667 */ break; case 157: -#line 849 "bison_parser.y" /* yacc.c:1652 */ +#line 849 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeCase((yyvsp[-2].expr), (yyvsp[-1].expr), nullptr); } -#line 3673 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3683 "bison_parser.cpp" /* yacc.c:1667 */ break; case 158: -#line 850 "bison_parser.y" /* yacc.c:1652 */ +#line 850 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeCase((yyvsp[-4].expr), (yyvsp[-3].expr), (yyvsp[-1].expr)); } -#line 3679 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3689 "bison_parser.cpp" /* yacc.c:1667 */ break; case 159: -#line 851 "bison_parser.y" /* yacc.c:1652 */ +#line 851 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeCase(nullptr, (yyvsp[-1].expr), nullptr); } -#line 3685 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3695 "bison_parser.cpp" /* yacc.c:1667 */ break; case 160: -#line 852 "bison_parser.y" /* yacc.c:1652 */ +#line 852 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeCase(nullptr, (yyvsp[-3].expr), (yyvsp[-1].expr)); } -#line 3691 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3701 "bison_parser.cpp" /* yacc.c:1667 */ break; case 161: -#line 856 "bison_parser.y" /* yacc.c:1652 */ +#line 856 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeCaseList(Expr::makeCaseListElement((yyvsp[-2].expr), (yyvsp[0].expr))); } -#line 3697 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3707 "bison_parser.cpp" /* yacc.c:1667 */ break; case 162: -#line 857 "bison_parser.y" /* yacc.c:1652 */ +#line 857 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::caseListAppend((yyvsp[-4].expr), Expr::makeCaseListElement((yyvsp[-2].expr), (yyvsp[0].expr))); } -#line 3703 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3713 "bison_parser.cpp" /* yacc.c:1667 */ break; case 163: -#line 861 "bison_parser.y" /* yacc.c:1652 */ +#line 861 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeExists((yyvsp[-1].select_stmt)); } -#line 3709 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3719 "bison_parser.cpp" /* yacc.c:1667 */ break; case 164: -#line 862 "bison_parser.y" /* yacc.c:1652 */ +#line 862 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpUnary(kOpNot, Expr::makeExists((yyvsp[-1].select_stmt))); } -#line 3715 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3725 "bison_parser.cpp" /* yacc.c:1667 */ break; case 165: -#line 866 "bison_parser.y" /* yacc.c:1652 */ +#line 866 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpEquals, (yyvsp[0].expr)); } -#line 3721 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3731 "bison_parser.cpp" /* yacc.c:1667 */ break; case 166: -#line 867 "bison_parser.y" /* yacc.c:1652 */ +#line 867 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpEquals, (yyvsp[0].expr)); } -#line 3727 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3737 "bison_parser.cpp" /* yacc.c:1667 */ break; case 167: -#line 868 "bison_parser.y" /* yacc.c:1652 */ +#line 868 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpNotEquals, (yyvsp[0].expr)); } -#line 3733 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3743 "bison_parser.cpp" /* yacc.c:1667 */ break; case 168: -#line 869 "bison_parser.y" /* yacc.c:1652 */ +#line 869 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpLess, (yyvsp[0].expr)); } -#line 3739 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3749 "bison_parser.cpp" /* yacc.c:1667 */ break; case 169: -#line 870 "bison_parser.y" /* yacc.c:1652 */ +#line 870 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpGreater, (yyvsp[0].expr)); } -#line 3745 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3755 "bison_parser.cpp" /* yacc.c:1667 */ break; case 170: -#line 871 "bison_parser.y" /* yacc.c:1652 */ +#line 871 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpLessEq, (yyvsp[0].expr)); } -#line 3751 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3761 "bison_parser.cpp" /* yacc.c:1667 */ break; case 171: -#line 872 "bison_parser.y" /* yacc.c:1652 */ +#line 872 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeOpBinary((yyvsp[-2].expr), kOpGreaterEq, (yyvsp[0].expr)); } -#line 3757 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3767 "bison_parser.cpp" /* yacc.c:1667 */ break; case 172: -#line 876 "bison_parser.y" /* yacc.c:1652 */ +#line 876 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeFunctionRef((yyvsp[-2].sval), new std::vector(), false); } -#line 3763 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3773 "bison_parser.cpp" /* yacc.c:1667 */ break; case 173: -#line 877 "bison_parser.y" /* yacc.c:1652 */ +#line 877 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeFunctionRef((yyvsp[-4].sval), (yyvsp[-1].expr_vec), (yyvsp[-2].bval)); } -#line 3769 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3779 "bison_parser.cpp" /* yacc.c:1667 */ break; case 174: -#line 881 "bison_parser.y" /* yacc.c:1652 */ +#line 881 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeExtract((yyvsp[-3].datetime_field), (yyvsp[-1].expr)); } -#line 3775 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3785 "bison_parser.cpp" /* yacc.c:1667 */ break; case 175: -#line 885 "bison_parser.y" /* yacc.c:1652 */ +#line 885 "bison_parser.y" /* yacc.c:1667 */ { (yyval.datetime_field) = kDatetimeSecond; } -#line 3781 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3791 "bison_parser.cpp" /* yacc.c:1667 */ break; case 176: -#line 886 "bison_parser.y" /* yacc.c:1652 */ +#line 886 "bison_parser.y" /* yacc.c:1667 */ { (yyval.datetime_field) = kDatetimeMinute; } -#line 3787 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3797 "bison_parser.cpp" /* yacc.c:1667 */ break; case 177: -#line 887 "bison_parser.y" /* yacc.c:1652 */ +#line 887 "bison_parser.y" /* yacc.c:1667 */ { (yyval.datetime_field) = kDatetimeHour; } -#line 3793 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3803 "bison_parser.cpp" /* yacc.c:1667 */ break; case 178: -#line 888 "bison_parser.y" /* yacc.c:1652 */ +#line 888 "bison_parser.y" /* yacc.c:1667 */ { (yyval.datetime_field) = kDatetimeDay; } -#line 3799 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3809 "bison_parser.cpp" /* yacc.c:1667 */ break; case 179: -#line 889 "bison_parser.y" /* yacc.c:1652 */ +#line 889 "bison_parser.y" /* yacc.c:1667 */ { (yyval.datetime_field) = kDatetimeMonth; } -#line 3805 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3815 "bison_parser.cpp" /* yacc.c:1667 */ break; case 180: -#line 890 "bison_parser.y" /* yacc.c:1652 */ +#line 890 "bison_parser.y" /* yacc.c:1667 */ { (yyval.datetime_field) = kDatetimeYear; } -#line 3811 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3821 "bison_parser.cpp" /* yacc.c:1667 */ break; case 181: -#line 893 "bison_parser.y" /* yacc.c:1652 */ +#line 893 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeArray((yyvsp[-1].expr_vec)); } -#line 3817 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3827 "bison_parser.cpp" /* yacc.c:1667 */ break; case 182: -#line 897 "bison_parser.y" /* yacc.c:1652 */ +#line 897 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeArrayIndex((yyvsp[-3].expr), (yyvsp[-1].expr)->ival); } -#line 3823 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3833 "bison_parser.cpp" /* yacc.c:1667 */ break; case 183: -#line 901 "bison_parser.y" /* yacc.c:1652 */ +#line 901 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeBetween((yyvsp[-4].expr), (yyvsp[-2].expr), (yyvsp[0].expr)); } -#line 3829 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3839 "bison_parser.cpp" /* yacc.c:1667 */ break; case 184: -#line 905 "bison_parser.y" /* yacc.c:1652 */ +#line 905 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeColumnRef((yyvsp[0].sval)); } -#line 3835 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3845 "bison_parser.cpp" /* yacc.c:1667 */ break; case 185: -#line 906 "bison_parser.y" /* yacc.c:1652 */ +#line 906 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeColumnRef((yyvsp[-2].sval), (yyvsp[0].sval)); } -#line 3841 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3851 "bison_parser.cpp" /* yacc.c:1667 */ break; case 186: -#line 907 "bison_parser.y" /* yacc.c:1652 */ +#line 907 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeStar(); } -#line 3847 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3857 "bison_parser.cpp" /* yacc.c:1667 */ break; case 187: -#line 908 "bison_parser.y" /* yacc.c:1652 */ +#line 908 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeStar((yyvsp[-2].sval)); } -#line 3853 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3863 "bison_parser.cpp" /* yacc.c:1667 */ break; case 193: -#line 920 "bison_parser.y" /* yacc.c:1652 */ +#line 920 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeLiteral((yyvsp[0].sval)); } -#line 3859 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3869 "bison_parser.cpp" /* yacc.c:1667 */ break; case 194: -#line 924 "bison_parser.y" /* yacc.c:1652 */ +#line 924 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeLiteral(true); } -#line 3865 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3875 "bison_parser.cpp" /* yacc.c:1667 */ break; case 195: -#line 925 "bison_parser.y" /* yacc.c:1652 */ +#line 925 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeLiteral(false); } -#line 3871 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3881 "bison_parser.cpp" /* yacc.c:1667 */ break; case 196: -#line 929 "bison_parser.y" /* yacc.c:1652 */ +#line 929 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeLiteral((yyvsp[0].fval)); } -#line 3877 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3887 "bison_parser.cpp" /* yacc.c:1667 */ break; case 198: -#line 934 "bison_parser.y" /* yacc.c:1652 */ +#line 934 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeLiteral((yyvsp[0].ival)); } -#line 3883 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3893 "bison_parser.cpp" /* yacc.c:1667 */ break; case 199: -#line 938 "bison_parser.y" /* yacc.c:1652 */ +#line 938 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeNullLiteral(); } -#line 3889 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3899 "bison_parser.cpp" /* yacc.c:1667 */ break; case 200: -#line 942 "bison_parser.y" /* yacc.c:1652 */ +#line 942 "bison_parser.y" /* yacc.c:1667 */ { (yyval.expr) = Expr::makeParameter(yylloc.total_column); (yyval.expr)->ival2 = yyloc.param_list.size(); yyloc.param_list.push_back((yyval.expr)); } -#line 3899 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3909 "bison_parser.cpp" /* yacc.c:1667 */ break; case 202: -#line 955 "bison_parser.y" /* yacc.c:1652 */ +#line 955 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].table_vec)->push_back((yyvsp[0].table)); auto tbl = new TableRef(kTableCrossProduct); tbl->list = (yyvsp[-2].table_vec); (yyval.table) = tbl; } -#line 3910 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3920 "bison_parser.cpp" /* yacc.c:1667 */ break; case 206: -#line 971 "bison_parser.y" /* yacc.c:1652 */ +#line 971 "bison_parser.y" /* yacc.c:1667 */ { auto tbl = new TableRef(kTableSelect); tbl->select = (yyvsp[-2].select_stmt); tbl->alias = (yyvsp[0].alias_t); (yyval.table) = tbl; } -#line 3921 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3931 "bison_parser.cpp" /* yacc.c:1667 */ break; case 207: -#line 980 "bison_parser.y" /* yacc.c:1652 */ +#line 980 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table_vec) = new std::vector(); (yyval.table_vec)->push_back((yyvsp[0].table)); } -#line 3927 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3937 "bison_parser.cpp" /* yacc.c:1667 */ break; case 208: -#line 981 "bison_parser.y" /* yacc.c:1652 */ +#line 981 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].table_vec)->push_back((yyvsp[0].table)); (yyval.table_vec) = (yyvsp[-2].table_vec); } -#line 3933 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3943 "bison_parser.cpp" /* yacc.c:1667 */ break; case 209: -#line 986 "bison_parser.y" /* yacc.c:1652 */ +#line 986 "bison_parser.y" /* yacc.c:1667 */ { auto tbl = new TableRef(kTableName); tbl->schema = (yyvsp[-1].table_name).schema; @@ -3941,103 +3951,103 @@ yyreduce: tbl->alias = (yyvsp[0].alias_t); (yyval.table) = tbl; } -#line 3945 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3955 "bison_parser.cpp" /* yacc.c:1667 */ break; case 210: -#line 997 "bison_parser.y" /* yacc.c:1652 */ +#line 997 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = new TableRef(kTableName); (yyval.table)->schema = (yyvsp[0].table_name).schema; (yyval.table)->name = (yyvsp[0].table_name).name; } -#line 3955 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3965 "bison_parser.cpp" /* yacc.c:1667 */ break; case 211: -#line 1006 "bison_parser.y" /* yacc.c:1652 */ +#line 1006 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table_name).schema = nullptr; (yyval.table_name).name = (yyvsp[0].sval);} -#line 3961 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3971 "bison_parser.cpp" /* yacc.c:1667 */ break; case 212: -#line 1007 "bison_parser.y" /* yacc.c:1652 */ +#line 1007 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table_name).schema = (yyvsp[-2].sval); (yyval.table_name).name = (yyvsp[0].sval); } -#line 3967 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3977 "bison_parser.cpp" /* yacc.c:1667 */ break; case 214: -#line 1013 "bison_parser.y" /* yacc.c:1652 */ +#line 1013 "bison_parser.y" /* yacc.c:1667 */ { (yyval.alias_t) = new Alias((yyvsp[-3].sval), (yyvsp[-1].str_vec)); } -#line 3973 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3983 "bison_parser.cpp" /* yacc.c:1667 */ break; case 216: -#line 1019 "bison_parser.y" /* yacc.c:1652 */ +#line 1019 "bison_parser.y" /* yacc.c:1667 */ { (yyval.alias_t) = nullptr; } -#line 3979 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3989 "bison_parser.cpp" /* yacc.c:1667 */ break; case 217: -#line 1023 "bison_parser.y" /* yacc.c:1652 */ +#line 1023 "bison_parser.y" /* yacc.c:1667 */ { (yyval.alias_t) = new Alias((yyvsp[0].sval)); } -#line 3985 "bison_parser.cpp" /* yacc.c:1652 */ +#line 3995 "bison_parser.cpp" /* yacc.c:1667 */ break; case 218: -#line 1024 "bison_parser.y" /* yacc.c:1652 */ +#line 1024 "bison_parser.y" /* yacc.c:1667 */ { (yyval.alias_t) = new Alias((yyvsp[0].sval)); } -#line 3991 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4001 "bison_parser.cpp" /* yacc.c:1667 */ break; case 220: -#line 1030 "bison_parser.y" /* yacc.c:1652 */ +#line 1030 "bison_parser.y" /* yacc.c:1667 */ { (yyval.alias_t) = nullptr; } -#line 3997 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4007 "bison_parser.cpp" /* yacc.c:1667 */ break; case 222: -#line 1039 "bison_parser.y" /* yacc.c:1652 */ +#line 1039 "bison_parser.y" /* yacc.c:1667 */ { (yyval.with_description_vec) = nullptr; } -#line 4003 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4013 "bison_parser.cpp" /* yacc.c:1667 */ break; case 223: -#line 1043 "bison_parser.y" /* yacc.c:1652 */ +#line 1043 "bison_parser.y" /* yacc.c:1667 */ { (yyval.with_description_vec) = (yyvsp[0].with_description_vec); } -#line 4009 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4019 "bison_parser.cpp" /* yacc.c:1667 */ break; case 224: -#line 1047 "bison_parser.y" /* yacc.c:1652 */ +#line 1047 "bison_parser.y" /* yacc.c:1667 */ { (yyval.with_description_vec) = new std::vector(); (yyval.with_description_vec)->push_back((yyvsp[0].with_description_t)); } -#line 4018 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4028 "bison_parser.cpp" /* yacc.c:1667 */ break; case 225: -#line 1051 "bison_parser.y" /* yacc.c:1652 */ +#line 1051 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].with_description_vec)->push_back((yyvsp[0].with_description_t)); (yyval.with_description_vec) = (yyvsp[-2].with_description_vec); } -#line 4027 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4037 "bison_parser.cpp" /* yacc.c:1667 */ break; case 226: -#line 1058 "bison_parser.y" /* yacc.c:1652 */ +#line 1058 "bison_parser.y" /* yacc.c:1667 */ { (yyval.with_description_t) = new WithDescription(); (yyval.with_description_t)->alias = (yyvsp[-2].sval); (yyval.with_description_t)->select = (yyvsp[0].select_stmt); } -#line 4037 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4047 "bison_parser.cpp" /* yacc.c:1667 */ break; case 227: -#line 1072 "bison_parser.y" /* yacc.c:1652 */ +#line 1072 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = new TableRef(kTableJoin); (yyval.table)->join = new JoinDefinition(); @@ -4045,11 +4055,11 @@ yyreduce: (yyval.table)->join->left = (yyvsp[-3].table); (yyval.table)->join->right = (yyvsp[0].table); } -#line 4049 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4059 "bison_parser.cpp" /* yacc.c:1667 */ break; case 228: -#line 1080 "bison_parser.y" /* yacc.c:1652 */ +#line 1080 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = new TableRef(kTableJoin); (yyval.table)->join = new JoinDefinition(); @@ -4058,11 +4068,11 @@ yyreduce: (yyval.table)->join->right = (yyvsp[-2].table); (yyval.table)->join->condition = (yyvsp[0].expr); } -#line 4062 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4072 "bison_parser.cpp" /* yacc.c:1667 */ break; case 229: -#line 1090 "bison_parser.y" /* yacc.c:1652 */ +#line 1090 "bison_parser.y" /* yacc.c:1667 */ { (yyval.table) = new TableRef(kTableJoin); (yyval.table)->join = new JoinDefinition(); @@ -4078,83 +4088,83 @@ yyreduce: (yyval.table)->join->condition = Expr::makeOpBinary(left_col, kOpEquals, right_col); delete (yyvsp[-1].expr); } -#line 4082 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4092 "bison_parser.cpp" /* yacc.c:1667 */ break; case 230: -#line 1108 "bison_parser.y" /* yacc.c:1652 */ +#line 1108 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinInner; } -#line 4088 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4098 "bison_parser.cpp" /* yacc.c:1667 */ break; case 231: -#line 1109 "bison_parser.y" /* yacc.c:1652 */ +#line 1109 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinLeft; } -#line 4094 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4104 "bison_parser.cpp" /* yacc.c:1667 */ break; case 232: -#line 1110 "bison_parser.y" /* yacc.c:1652 */ +#line 1110 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinLeft; } -#line 4100 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4110 "bison_parser.cpp" /* yacc.c:1667 */ break; case 233: -#line 1111 "bison_parser.y" /* yacc.c:1652 */ +#line 1111 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinRight; } -#line 4106 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4116 "bison_parser.cpp" /* yacc.c:1667 */ break; case 234: -#line 1112 "bison_parser.y" /* yacc.c:1652 */ +#line 1112 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinRight; } -#line 4112 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4122 "bison_parser.cpp" /* yacc.c:1667 */ break; case 235: -#line 1113 "bison_parser.y" /* yacc.c:1652 */ +#line 1113 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinFull; } -#line 4118 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4128 "bison_parser.cpp" /* yacc.c:1667 */ break; case 236: -#line 1114 "bison_parser.y" /* yacc.c:1652 */ +#line 1114 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinFull; } -#line 4124 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4134 "bison_parser.cpp" /* yacc.c:1667 */ break; case 237: -#line 1115 "bison_parser.y" /* yacc.c:1652 */ +#line 1115 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinFull; } -#line 4130 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4140 "bison_parser.cpp" /* yacc.c:1667 */ break; case 238: -#line 1116 "bison_parser.y" /* yacc.c:1652 */ +#line 1116 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinCross; } -#line 4136 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4146 "bison_parser.cpp" /* yacc.c:1667 */ break; case 239: -#line 1117 "bison_parser.y" /* yacc.c:1652 */ +#line 1117 "bison_parser.y" /* yacc.c:1667 */ { (yyval.uval) = kJoinInner; } -#line 4142 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4152 "bison_parser.cpp" /* yacc.c:1667 */ break; case 243: -#line 1137 "bison_parser.y" /* yacc.c:1652 */ +#line 1137 "bison_parser.y" /* yacc.c:1667 */ { (yyval.str_vec) = new std::vector(); (yyval.str_vec)->push_back((yyvsp[0].sval)); } -#line 4148 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4158 "bison_parser.cpp" /* yacc.c:1667 */ break; case 244: -#line 1138 "bison_parser.y" /* yacc.c:1652 */ +#line 1138 "bison_parser.y" /* yacc.c:1667 */ { (yyvsp[-2].str_vec)->push_back((yyvsp[0].sval)); (yyval.str_vec) = (yyvsp[-2].str_vec); } -#line 4154 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4164 "bison_parser.cpp" /* yacc.c:1667 */ break; -#line 4158 "bison_parser.cpp" /* yacc.c:1652 */ +#line 4168 "bison_parser.cpp" /* yacc.c:1667 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires diff --git a/src/parser/bison_parser.h b/src/parser/bison_parser.h index 1eb6a29..f902ca0 100644 --- a/src/parser/bison_parser.h +++ b/src/parser/bison_parser.h @@ -52,7 +52,7 @@ extern int hsql_debug; #endif /* "%code requires" blocks. */ -#line 35 "bison_parser.y" /* yacc.c:1921 */ +#line 35 "bison_parser.y" /* yacc.c:1927 */ // %code requires block @@ -76,7 +76,7 @@ extern int hsql_debug; } \ } -#line 80 "bison_parser.h" /* yacc.c:1921 */ +#line 80 "bison_parser.h" /* yacc.c:1927 */ /* Token type. */ #ifndef HSQL_TOKENTYPE @@ -104,128 +104,127 @@ extern int hsql_debug; SQL_DEFAULT = 276, SQL_EXECUTE = 277, SQL_EXPLAIN = 278, - SQL_HISTORY = 279, - SQL_INTEGER = 280, - SQL_NATURAL = 281, - SQL_PREPARE = 282, - SQL_PRIMARY = 283, - SQL_SCHEMAS = 284, - SQL_SPATIAL = 285, - SQL_VARCHAR = 286, - SQL_VIRTUAL = 287, - SQL_BEFORE = 288, - SQL_COLUMN = 289, - SQL_CREATE = 290, - SQL_DELETE = 291, - SQL_DIRECT = 292, - SQL_DOUBLE = 293, - SQL_ESCAPE = 294, - SQL_EXCEPT = 295, - SQL_EXISTS = 296, - SQL_EXTRACT = 297, - SQL_GLOBAL = 298, - SQL_HAVING = 299, - SQL_IMPORT = 300, - SQL_INSERT = 301, - SQL_ISNULL = 302, - SQL_OFFSET = 303, - SQL_RENAME = 304, - SQL_SCHEMA = 305, - SQL_SELECT = 306, - SQL_SORTED = 307, - SQL_TABLES = 308, - SQL_UNIQUE = 309, - SQL_UNLOAD = 310, - SQL_UPDATE = 311, - SQL_VALUES = 312, - SQL_AFTER = 313, - SQL_ALTER = 314, - SQL_CROSS = 315, - SQL_DELTA = 316, - SQL_FLOAT = 317, - SQL_GROUP = 318, - SQL_INDEX = 319, - SQL_INNER = 320, - SQL_LIMIT = 321, - SQL_LOCAL = 322, - SQL_MERGE = 323, - SQL_MINUS = 324, - SQL_ORDER = 325, - SQL_OUTER = 326, - SQL_RIGHT = 327, - SQL_TABLE = 328, - SQL_UNION = 329, - SQL_USING = 330, - SQL_WHERE = 331, - SQL_CALL = 332, - SQL_CASE = 333, - SQL_CHAR = 334, - SQL_DATE = 335, - SQL_DESC = 336, - SQL_DROP = 337, - SQL_ELSE = 338, - SQL_FILE = 339, - SQL_FROM = 340, - SQL_FULL = 341, - SQL_HASH = 342, - SQL_HINT = 343, - SQL_INTO = 344, - SQL_JOIN = 345, - SQL_LEFT = 346, - SQL_LIKE = 347, - SQL_LOAD = 348, - SQL_LONG = 349, - SQL_NULL = 350, - SQL_PLAN = 351, - SQL_SHOW = 352, - SQL_TEXT = 353, - SQL_THEN = 354, - SQL_TIME = 355, - SQL_VIEW = 356, - SQL_WHEN = 357, - SQL_WITH = 358, - SQL_ADD = 359, - SQL_ALL = 360, - SQL_AND = 361, - SQL_ASC = 362, - SQL_CSV = 363, - SQL_END = 364, - SQL_FOR = 365, - SQL_INT = 366, - SQL_KEY = 367, - SQL_NOT = 368, - SQL_OFF = 369, - SQL_SET = 370, - SQL_TBL = 371, - SQL_TOP = 372, - SQL_AS = 373, - SQL_BY = 374, - SQL_IF = 375, - SQL_IN = 376, - SQL_IS = 377, - SQL_OF = 378, - SQL_ON = 379, - SQL_OR = 380, - SQL_TO = 381, - SQL_ARRAY = 382, - SQL_CONCAT = 383, - SQL_ILIKE = 384, - SQL_SECOND = 385, - SQL_MINUTE = 386, - SQL_HOUR = 387, - SQL_DAY = 388, - SQL_MONTH = 389, - SQL_YEAR = 390, - SQL_TRUE = 391, - SQL_FALSE = 392, - SQL_EQUALS = 393, - SQL_NOTEQUALS = 394, - SQL_LESS = 395, - SQL_GREATER = 396, - SQL_LESSEQ = 397, - SQL_GREATEREQ = 398, - SQL_NOTNULL = 399, - SQL_UMINUS = 400 + SQL_INTEGER = 279, + SQL_NATURAL = 280, + SQL_PREPARE = 281, + SQL_PRIMARY = 282, + SQL_SCHEMAS = 283, + SQL_SPATIAL = 284, + SQL_VARCHAR = 285, + SQL_VIRTUAL = 286, + SQL_BEFORE = 287, + SQL_COLUMN = 288, + SQL_CREATE = 289, + SQL_DELETE = 290, + SQL_DIRECT = 291, + SQL_DOUBLE = 292, + SQL_ESCAPE = 293, + SQL_EXCEPT = 294, + SQL_EXISTS = 295, + SQL_EXTRACT = 296, + SQL_GLOBAL = 297, + SQL_HAVING = 298, + SQL_IMPORT = 299, + SQL_INSERT = 300, + SQL_ISNULL = 301, + SQL_OFFSET = 302, + SQL_RENAME = 303, + SQL_SCHEMA = 304, + SQL_SELECT = 305, + SQL_SORTED = 306, + SQL_TABLES = 307, + SQL_UNIQUE = 308, + SQL_UNLOAD = 309, + SQL_UPDATE = 310, + SQL_VALUES = 311, + SQL_AFTER = 312, + SQL_ALTER = 313, + SQL_CROSS = 314, + SQL_DELTA = 315, + SQL_FLOAT = 316, + SQL_GROUP = 317, + SQL_INDEX = 318, + SQL_INNER = 319, + SQL_LIMIT = 320, + SQL_LOCAL = 321, + SQL_MERGE = 322, + SQL_MINUS = 323, + SQL_ORDER = 324, + SQL_OUTER = 325, + SQL_RIGHT = 326, + SQL_TABLE = 327, + SQL_UNION = 328, + SQL_USING = 329, + SQL_WHERE = 330, + SQL_CALL = 331, + SQL_CASE = 332, + SQL_CHAR = 333, + SQL_DATE = 334, + SQL_DESC = 335, + SQL_DROP = 336, + SQL_ELSE = 337, + SQL_FILE = 338, + SQL_FROM = 339, + SQL_FULL = 340, + SQL_HASH = 341, + SQL_HINT = 342, + SQL_INTO = 343, + SQL_JOIN = 344, + SQL_LEFT = 345, + SQL_LIKE = 346, + SQL_LOAD = 347, + SQL_LONG = 348, + SQL_NULL = 349, + SQL_PLAN = 350, + SQL_SHOW = 351, + SQL_TEXT = 352, + SQL_THEN = 353, + SQL_TIME = 354, + SQL_VIEW = 355, + SQL_WHEN = 356, + SQL_WITH = 357, + SQL_ADD = 358, + SQL_ALL = 359, + SQL_AND = 360, + SQL_ASC = 361, + SQL_CSV = 362, + SQL_END = 363, + SQL_FOR = 364, + SQL_INT = 365, + SQL_KEY = 366, + SQL_NOT = 367, + SQL_OFF = 368, + SQL_SET = 369, + SQL_TBL = 370, + SQL_TOP = 371, + SQL_AS = 372, + SQL_BY = 373, + SQL_IF = 374, + SQL_IN = 375, + SQL_IS = 376, + SQL_OF = 377, + SQL_ON = 378, + SQL_OR = 379, + SQL_TO = 380, + SQL_ARRAY = 381, + SQL_CONCAT = 382, + SQL_ILIKE = 383, + SQL_SECOND = 384, + SQL_MINUTE = 385, + SQL_HOUR = 386, + SQL_DAY = 387, + SQL_MONTH = 388, + SQL_YEAR = 389, + SQL_TRUE = 390, + SQL_FALSE = 391, + SQL_EQUALS = 392, + SQL_NOTEQUALS = 393, + SQL_LESS = 394, + SQL_GREATER = 395, + SQL_LESSEQ = 396, + SQL_GREATEREQ = 397, + SQL_NOTNULL = 398, + SQL_UMINUS = 399 }; #endif @@ -234,7 +233,7 @@ extern int hsql_debug; union HSQL_STYPE { -#line 95 "bison_parser.y" /* yacc.c:1921 */ +#line 95 "bison_parser.y" /* yacc.c:1927 */ double fval; int64_t ival; @@ -278,7 +277,7 @@ union HSQL_STYPE std::vector* order_vec; std::vector* with_description_vec; -#line 282 "bison_parser.h" /* yacc.c:1921 */ +#line 281 "bison_parser.h" /* yacc.c:1927 */ }; typedef union HSQL_STYPE HSQL_STYPE; diff --git a/src/parser/bison_parser.y b/src/parser/bison_parser.y index aa5d048..d3a19ac 100755 --- a/src/parser/bison_parser.y +++ b/src/parser/bison_parser.y @@ -165,7 +165,7 @@ int yyerror(YYLTYPE* llocp, SQLParserResult* result, yyscan_t scanner, const cha %token DEALLOCATE PARAMETERS INTERSECT TEMPORARY TIMESTAMP %token DISTINCT NVARCHAR RESTRICT TRUNCATE ANALYZE BETWEEN %token CASCADE COLUMNS CONTROL DEFAULT EXECUTE EXPLAIN -%token HISTORY INTEGER NATURAL PREPARE PRIMARY SCHEMAS +%token INTEGER NATURAL PREPARE PRIMARY SCHEMAS %token SPATIAL VARCHAR VIRTUAL BEFORE COLUMN CREATE DELETE DIRECT %token DOUBLE ESCAPE EXCEPT EXISTS EXTRACT GLOBAL HAVING IMPORT %token INSERT ISNULL OFFSET RENAME SCHEMA SELECT SORTED diff --git a/src/parser/flex_lexer.cpp b/src/parser/flex_lexer.cpp index 24b8d88..7b1cb4e 100644 --- a/src/parser/flex_lexer.cpp +++ b/src/parser/flex_lexer.cpp @@ -1,6 +1,6 @@ -#line 2 "flex_lexer.cpp" +#line 1 "flex_lexer.cpp" -#line 4 "flex_lexer.cpp" +#line 3 "flex_lexer.cpp" #define YY_INT_ALIGNED short int @@ -573,8 +573,8 @@ static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner ); yyg->yy_hold_char = *yy_cp; \ *yy_cp = '\0'; \ yyg->yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 152 -#define YY_END_OF_BUFFER 153 +#define YY_NUM_RULES 151 +#define YY_END_OF_BUFFER 152 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -582,27 +582,27 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static const flex_int16_t yy_accept[1026] = +static const flex_int16_t yy_accept[1016] = { 0, - 0, 0, 149, 149, 2, 2, 153, 151, 4, 4, - 151, 151, 141, 147, 141, 141, 144, 141, 141, 141, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 141, 149, 150, 2, 2, 3, + 0, 0, 148, 148, 2, 2, 152, 150, 4, 4, + 150, 150, 140, 146, 140, 140, 143, 140, 140, 140, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 140, 148, 149, 2, 2, 3, 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, - 2, 2, 2, 2, 2, 4, 136, 0, 1, 144, - 143, 142, 138, 137, 135, 139, 146, 146, 146, 146, + 2, 2, 2, 2, 2, 4, 135, 0, 1, 143, + 142, 141, 137, 136, 134, 138, 145, 145, 145, 145, - 146, 146, 118, 146, 119, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, - 120, 146, 146, 121, 122, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 123, 124, 125, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 126, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 140, 149, 148, 2, + 145, 145, 117, 145, 118, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 119, 145, 145, 120, 121, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 122, 123, 124, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 125, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 139, 148, 147, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -613,19 +613,19 @@ static const flex_int16_t yy_accept[1026] = 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, - 2, 2, 145, 142, 104, 146, 105, 146, 146, 106, - 146, 107, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 108, 146, 130, 146, 146, 146, 146, 146, 146, + 2, 2, 144, 141, 103, 145, 104, 145, 145, 105, + 145, 106, 145, 145, 145, 145, 145, 145, 145, 145, + 145, 107, 145, 129, 145, 145, 145, 145, 145, 145, - 146, 146, 146, 109, 146, 146, 146, 146, 146, 146, - 146, 146, 146, 110, 146, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 111, 146, - 146, 112, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 146, 113, 146, 146, 114, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 115, 146, - 146, 146, 146, 116, 146, 146, 146, 146, 117, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, - 146, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 145, 145, 145, 108, 145, 145, 145, 145, 145, 145, + 145, 145, 145, 109, 145, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 110, 145, 145, + 111, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 145, 112, 145, 145, 113, 145, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 114, 145, 145, + 145, 145, 115, 145, 145, 145, 145, 116, 145, 145, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 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, @@ -636,18 +636,18 @@ static const flex_int16_t yy_accept[1026] = 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, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 146, 146, 146, 146, 146, 146, 76, 146, 77, 78, + 2, 2, 2, 2, 2, 2, 2, 2, 145, 145, + 145, 145, 145, 145, 75, 145, 76, 77, 145, 145, - 146, 146, 146, 146, 79, 146, 146, 146, 146, 80, - 146, 146, 146, 81, 82, 146, 146, 146, 146, 146, - 146, 146, 83, 146, 84, 85, 146, 146, 86, 146, - 87, 146, 129, 146, 146, 146, 146, 146, 146, 88, - 146, 89, 90, 91, 146, 93, 146, 94, 146, 146, - 146, 146, 95, 146, 146, 146, 146, 146, 96, 146, - 146, 146, 146, 146, 146, 146, 146, 97, 146, 146, - 146, 146, 98, 99, 100, 133, 146, 146, 146, 146, - 146, 146, 146, 146, 101, 146, 102, 146, 103, 132, + 145, 145, 78, 145, 145, 145, 145, 79, 145, 145, + 145, 80, 81, 145, 145, 145, 145, 145, 145, 145, + 82, 145, 83, 84, 145, 145, 85, 145, 86, 128, + 145, 145, 145, 145, 145, 145, 87, 145, 88, 89, + 90, 145, 92, 145, 93, 145, 145, 145, 145, 94, + 145, 145, 145, 145, 145, 95, 145, 145, 145, 145, + 145, 145, 145, 145, 96, 145, 145, 145, 145, 97, + 98, 99, 132, 145, 145, 145, 145, 145, 145, 145, + 145, 100, 145, 101, 145, 102, 131, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -658,16 +658,16 @@ static const flex_int16_t yy_accept[1026] = 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, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 56, 57, 146, 58, 146, 146, 146, 146, 146, 146, + 2, 2, 2, 2, 2, 2, 55, 56, 145, 57, + 145, 145, 145, 145, 145, 145, 58, 145, 145, 145, - 59, 146, 146, 146, 60, 146, 146, 146, 146, 146, - 146, 146, 146, 146, 134, 61, 146, 62, 146, 146, - 92, 146, 63, 64, 146, 146, 146, 146, 65, 66, - 67, 68, 146, 131, 146, 146, 146, 69, 70, 146, - 146, 146, 146, 146, 71, 146, 146, 146, 146, 146, - 72, 146, 146, 146, 73, 146, 146, 146, 74, 146, - 146, 146, 75, 2, 2, 2, 2, 2, 2, 2, + 59, 145, 145, 145, 145, 145, 145, 145, 145, 145, + 133, 60, 145, 61, 145, 91, 145, 62, 63, 145, + 145, 145, 145, 64, 65, 66, 67, 145, 130, 145, + 145, 145, 68, 69, 145, 145, 145, 145, 145, 70, + 145, 145, 145, 145, 145, 71, 145, 145, 145, 72, + 145, 145, 145, 73, 145, 145, 145, 74, 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, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -675,27 +675,26 @@ static const flex_int16_t yy_accept[1026] = 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, - 2, 2, 2, 2, 2, 2, 146, 31, 146, 146, - 32, 146, 33, 146, 146, 34, 35, 146, 36, 37, - 38, 146, 39, 146, 146, 41, 42, 146, 43, 44, - 146, 146, 45, 128, 146, 146, 46, 146, 146, 146, - 47, 146, 48, 127, 49, 50, 146, 51, 146, 146, - 146, 52, 53, 54, 55, 146, 146, 2, 2, 2, + 145, 30, 145, 145, 31, 145, 32, 145, 145, 33, + 34, 145, 35, 36, 37, 145, 38, 145, 145, 40, + 41, 42, 43, 145, 145, 44, 127, 145, 145, 45, + 145, 145, 145, 46, 145, 47, 126, 48, 49, 145, + 50, 145, 145, 145, 51, 52, 53, 54, 145, 145, + 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, 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, 14, 15, - 16, 17, 18, 146, 19, 146, 20, 21, 40, 22, - 23, 146, 24, 146, 146, 25, 26, 146, 27, 28, - 146, 146, 146, 29, 30, 2, 2, 2, 2, 2, + 14, 15, 16, 17, 18, 145, 19, 145, 20, 21, + 39, 22, 145, 23, 145, 145, 24, 25, 145, 26, + 27, 145, 145, 145, 28, 29, 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, 146, 10, 146, 11, 146, 12, 146, 146, - + 2, 2, 145, 10, 145, 11, 145, 12, 145, 145, 13, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 146, 7, 146, 8, 9, 2, 2, 2, 2, 2, + + 145, 7, 145, 8, 9, 2, 2, 2, 2, 2, 5, 6, 2, 2, 0 } ; @@ -742,147 +741,146 @@ static const YY_CHAR yy_meta[68] = 5, 5, 5, 5, 5, 5, 1 } ; -static const flex_int16_t yy_base[1033] = +static const flex_int16_t yy_base[1023] = { 0, - 0, 0, 470, 466, 67, 0, 470, 4074, 133, 135, - 428, 0, 4074, 4074, 131, 400, 133, 132, 387, 357, + 0, 0, 470, 466, 67, 0, 470, 4023, 133, 135, + 428, 0, 4023, 4023, 131, 400, 133, 132, 387, 357, 129, 129, 137, 135, 145, 196, 176, 184, 217, 124, 141, 201, 213, 238, 255, 250, 0, 243, 269, 312, 251, 191, 273, 144, 291, 0, 342, 0, 200, 212, 332, 315, 0, 0, 212, 296, 207, 247, 291, 284, 370, 437, 491, 543, 591, 643, 355, 301, 691, 300, 266, 366, 429, 743, 791, 438, 367, 442, 841, 893, - 479, 537, 450, 388, 210, 333, 4074, 262, 4074, 338, - 245, 237, 4074, 4074, 4074, 4074, 0, 147, 178, 365, + 479, 537, 450, 388, 210, 333, 4023, 262, 4023, 338, + 245, 237, 4023, 4023, 4023, 4023, 0, 147, 178, 365, 445, 195, 316, 481, 0, 371, 323, 491, 492, 306, 488, 544, 360, 374, 381, 395, 417, 442, 544, 440, - 441, 473, 482, 497, 539, 539, 540, 548, 579, 536, - 0, 550, 576, 631, 585, 591, 576, 596, 593, 608, - 589, 598, 599, 594, 626, 635, 652, 648, 0, 652, - 637, 641, 659, 658, 679, 658, 691, 699, 685, 683, - 705, 705, 696, 723, 707, 700, 698, 694, 740, 714, - 741, 739, 748, 749, 735, 755, 4074, 0, 4074, 0, + 441, 473, 482, 497, 539, 539, 540, 548, 543, 538, + 0, 557, 576, 594, 585, 591, 576, 596, 593, 606, + 593, 598, 604, 602, 604, 634, 649, 647, 0, 650, + 636, 639, 658, 657, 646, 656, 659, 695, 657, 656, + 699, 700, 694, 695, 704, 698, 696, 692, 738, 710, + 709, 710, 748, 746, 732, 753, 4023, 0, 4023, 0, 349, 0, 203, 0, 353, 190, 161, 0, 0, 0, - 0, 762, 795, 781, 830, 806, 835, 860, 894, 793, + 0, 751, 782, 779, 813, 836, 783, 845, 880, 795, - 884, 912, 937, 836, 928, 927, 989, 966, 961, 991, - 929, 995, 999, 1049, 1025, 1034, 1055, 1031, 1057, 1063, - 1079, 1085, 1100, 1109, 1108, 854, 1111, 1119, 1168, 1134, - 1133, 1066, 1171, 1197, 1216, 1149, 1193, 1222, 1159, 1208, - 1226, 1251, 1237, 1207, 1262, 1266, 1267, 1272, 1296, 1297, - 1283, 1301, 1322, 1325, 1326, 1340, 1354, 1350, 1371, 1341, - 1375, 1365, 1380, 1404, 1394, 1405, 1426, 1429, 1428, 1430, - 1444, 0, 4074, 145, 0, 756, 0, 757, 778, 0, - 801, 0, 788, 798, 842, 1002, 846, 849, 884, 942, - 937, 0, 960, 0, 976, 1039, 1148, 1100, 1165, 1158, + 884, 909, 919, 934, 921, 937, 989, 960, 972, 994, + 991, 950, 1008, 1058, 867, 1020, 1024, 1037, 1039, 1045, + 1043, 1081, 1093, 1094, 1082, 915, 1095, 975, 1144, 1127, + 1119, 1104, 1148, 1161, 1201, 1187, 1184, 1189, 1202, 1203, + 1145, 1219, 1232, 1135, 1241, 1238, 1243, 1251, 1269, 1272, + 1255, 1291, 1297, 1305, 1307, 1310, 1326, 1328, 1341, 1309, + 1343, 1366, 1364, 1365, 1382, 1394, 1403, 1406, 1395, 1420, + 1428, 0, 4023, 145, 0, 757, 0, 758, 755, 0, + 801, 0, 827, 828, 841, 1434, 836, 834, 843, 955, + 969, 0, 998, 0, 1041, 1064, 1439, 1108, 1111, 1141, - 1187, 1210, 1275, 0, 1295, 1305, 1357, 1345, 1382, 1421, - 1429, 1447, 1458, 0, 1450, 1452, 1465, 1447, 1462, 1464, - 1463, 1464, 1467, 1476, 1473, 1484, 1487, 1488, 1493, 1478, - 1487, 0, 1482, 1498, 1495, 1501, 1505, 1500, 1502, 1492, - 1497, 1497, 0, 1509, 1504, 1504, 1519, 1522, 1536, 1524, - 1523, 1528, 1541, 1523, 1538, 1542, 1537, 1548, 0, 1532, - 1536, 1537, 1546, 0, 1543, 1540, 1547, 1557, 0, 1558, - 1560, 1552, 1570, 1562, 1557, 1578, 1568, 1572, 1579, 1587, - 1578, 0, 140, 1596, 1601, 1602, 1604, 1605, 1606, 1634, - 1620, 1635, 1638, 1659, 1644, 1650, 1660, 1674, 1688, 1678, + 1181, 1224, 1276, 0, 1291, 1340, 1376, 1386, 1410, 1405, + 1417, 1436, 1442, 0, 1441, 1445, 1459, 1441, 1457, 1460, + 1453, 1456, 1464, 1461, 1472, 1473, 1474, 1478, 1461, 1471, + 0, 1467, 1485, 1482, 1490, 1494, 1490, 1491, 1478, 1487, + 1487, 0, 1499, 1495, 1496, 1511, 1514, 1522, 1513, 1512, + 1516, 1529, 1511, 1524, 1528, 1521, 1532, 0, 1516, 1521, + 1524, 1533, 0, 1531, 1528, 1535, 1546, 0, 1547, 1550, + 1538, 1561, 1555, 1549, 1570, 1554, 1561, 1568, 1575, 1566, + 0, 140, 1580, 1582, 1590, 1593, 1594, 1596, 1615, 1598, + 1612, 1626, 1647, 1636, 1652, 1648, 1669, 1670, 1686, 1630, - 1675, 1700, 1704, 1710, 1713, 1714, 1728, 1712, 1723, 1749, - 1752, 1754, 1758, 1766, 1764, 1782, 1783, 1788, 1806, 1798, - 1767, 1820, 1817, 1828, 1831, 1852, 1834, 1866, 1870, 1868, - 1885, 1871, 1902, 1894, 1860, 1862, 1903, 1906, 1920, 1919, - 1924, 1937, 1934, 1938, 1960, 1972, 1973, 1974, 1962, 1991, - 1988, 1970, 2016, 2012, 2010, 2014, 2022, 2044, 2045, 2055, - 2060, 2074, 2058, 2076, 2084, 2088, 2089, 2090, 2112, 2099, - 2113, 2122, 2118, 2143, 2147, 2144, 2148, 2152, 2173, 2176, - 2177, 2202, 2192, 2210, 2207, 2218, 2231, 2235, 2240, 2256, - 1596, 1597, 1621, 1626, 1705, 1777, 0, 1804, 0, 0, + 1631, 1660, 1698, 1708, 1709, 1714, 1703, 1722, 1743, 1746, + 1738, 1748, 1776, 1754, 1762, 1777, 1800, 1792, 1788, 1759, + 1817, 1794, 1822, 1826, 1828, 1838, 1856, 1862, 1872, 1850, + 1868, 1884, 1851, 1880, 1896, 1902, 1908, 1917, 1905, 1918, + 1920, 1930, 1942, 1958, 1946, 1970, 1971, 1959, 1976, 1936, + 1988, 2000, 2010, 1982, 1984, 2016, 2025, 2021, 2038, 2054, + 2049, 2067, 2033, 2078, 2055, 2066, 2089, 2084, 2103, 2112, + 2090, 2122, 2120, 2143, 2121, 2124, 2155, 2166, 2174, 2165, + 2180, 2198, 2197, 2208, 2219, 2220, 2248, 2210, 1584, 1642, + 1668, 1700, 1713, 1744, 0, 1787, 0, 0, 1808, 1866, - 1824, 1943, 2011, 2015, 0, 2117, 2118, 2143, 2188, 0, - 2208, 2237, 2240, 0, 0, 2239, 2241, 2243, 2246, 2268, - 2270, 2272, 0, 2265, 0, 0, 2285, 2273, 0, 2276, - 0, 2279, 0, 2290, 2279, 2275, 2282, 2284, 2296, 0, - 2293, 0, 0, 0, 2286, 0, 2295, 0, 2304, 2291, - 2307, 2300, 0, 2316, 2315, 2305, 2307, 2315, 0, 2330, - 2334, 2326, 2322, 2323, 2331, 2334, 2346, 0, 2346, 2344, - 2349, 2341, 0, 0, 2338, 0, 2356, 2346, 2340, 2362, - 2344, 2358, 2363, 2361, 0, 2351, 0, 2368, 0, 0, - 2380, 2384, 2369, 2372, 2388, 2398, 2402, 2410, 2412, 2414, + 1965, 2030, 0, 2049, 2063, 2085, 2133, 0, 2156, 2168, + 2170, 0, 0, 2198, 2204, 2215, 2217, 2242, 2247, 2249, + 0, 2237, 0, 0, 2258, 2251, 0, 2254, 0, 0, + 2264, 2256, 2252, 2259, 2260, 2272, 0, 2270, 0, 0, + 0, 2265, 0, 2275, 0, 2283, 2272, 2281, 2275, 0, + 2294, 2293, 2281, 2284, 2294, 0, 2307, 2309, 2298, 2295, + 2301, 2309, 2309, 2324, 0, 2323, 2321, 2326, 2317, 0, + 0, 2314, 0, 2333, 2325, 2320, 2341, 2323, 2337, 2340, + 2338, 0, 2326, 0, 2346, 0, 0, 2357, 2359, 2351, + 2356, 2362, 2360, 2374, 2385, 2390, 2391, 2414, 2400, 2415, - 2436, 2438, 2440, 2448, 2423, 2446, 2472, 2454, 2490, 2464, - 2500, 2502, 2514, 2477, 2503, 2531, 2532, 2540, 2553, 2566, - 2576, 2508, 2518, 2577, 2544, 2554, 2588, 2594, 2582, 2598, - 2590, 2606, 2620, 2622, 2631, 2636, 2639, 2648, 2660, 2630, - 2665, 2654, 2664, 2670, 2693, 2676, 2698, 2694, 2702, 2716, - 2724, 2706, 2728, 2739, 2742, 2747, 2752, 2768, 2750, 2782, - 2784, 2773, 2801, 2798, 2816, 2810, 2834, 2806, 2822, 2835, - 2838, 2850, 2844, 2847, 2872, 2856, 2875, 2884, 2889, 2910, - 2908, 2924, 2898, 2938, 2907, 2940, 2939, 2942, 2943, 2952, - 0, 0, 2431, 0, 2509, 2512, 2586, 2725, 2746, 2785, + 2419, 2396, 2424, 2436, 2450, 2468, 2428, 2469, 2478, 2473, + 2454, 2484, 2499, 2502, 2508, 2503, 2521, 2536, 2527, 2533, + 2542, 2538, 2552, 2570, 2567, 2561, 2582, 2576, 2586, 2592, + 2607, 2611, 2615, 2624, 2643, 2621, 2646, 2632, 2640, 2649, + 2674, 2661, 2675, 2665, 2677, 2691, 2700, 2715, 2699, 2725, + 2714, 2731, 2736, 2740, 2737, 2769, 2770, 2774, 2768, 2785, + 2791, 2804, 2822, 2759, 2803, 2825, 2814, 2833, 2819, 2828, + 2844, 2854, 2859, 2867, 2862, 2877, 2868, 2896, 2892, 2908, + 2893, 2902, 2907, 2917, 2921, 2926, 0, 0, 2405, 0, + 2445, 2459, 2486, 2478, 2561, 2573, 0, 2567, 2588, 2686, - 0, 2780, 2789, 2852, 0, 2873, 2881, 2921, 2946, 2932, - 2934, 2947, 2960, 2977, 0, 0, 2970, 0, 2976, 2967, - 0, 2966, 0, 0, 2967, 2984, 2978, 2986, 0, 0, - 0, 0, 2994, 0, 2999, 2993, 2982, 0, 0, 2998, - 2987, 2988, 3003, 3002, 0, 3014, 3013, 2998, 3015, 3019, - 3002, 3004, 3003, 3030, 0, 3029, 3032, 3032, 0, 3020, - 3039, 3040, 0, 3046, 3047, 3048, 3050, 3051, 3052, 3065, - 3080, 3101, 3082, 3083, 3104, 3106, 3088, 3105, 3119, 3136, - 3117, 3122, 3147, 3150, 3159, 3171, 3160, 3168, 3176, 3201, - 3184, 3210, 3209, 3193, 3199, 3205, 3224, 3227, 3233, 3245, + 0, 2738, 2801, 2836, 2930, 2916, 2917, 2919, 2932, 2944, + 0, 0, 2940, 0, 2948, 0, 2936, 0, 0, 2937, + 2956, 2947, 2955, 0, 0, 0, 0, 2965, 0, 2970, + 2964, 2955, 0, 0, 2971, 2959, 2962, 2976, 2976, 0, + 2985, 2983, 2969, 2986, 2990, 2973, 2977, 2976, 2999, 0, + 2996, 3001, 3001, 0, 2990, 3009, 3010, 0, 3010, 3015, + 3019, 3016, 3021, 3024, 3050, 3025, 3054, 3038, 3053, 3059, + 3075, 3078, 3083, 3084, 3107, 3088, 3092, 3113, 3117, 3136, + 3138, 3147, 3094, 3146, 3161, 3151, 3180, 3170, 3176, 3179, + 3184, 3201, 3192, 3210, 3213, 3202, 3205, 3214, 3215, 3236, - 3243, 3255, 3258, 3261, 3264, 3267, 3273, 3283, 3295, 3289, - 3297, 3299, 3301, 3327, 3332, 3323, 3329, 3335, 3338, 3364, - 3351, 3369, 3377, 3387, 3386, 3388, 3409, 3392, 3417, 3421, - 3418, 3422, 3440, 3450, 3455, 3452, 3049, 0, 3045, 3057, - 3046, 3147, 0, 3157, 3175, 0, 0, 3314, 0, 0, - 0, 3353, 0, 3366, 3368, 0, 0, 3411, 0, 0, - 3440, 3457, 0, 0, 3452, 3465, 0, 3447, 3463, 3446, - 0, 3473, 3460, 0, 0, 0, 3469, 0, 3487, 3489, - 3476, 0, 0, 0, 0, 3479, 3487, 3495, 3496, 3500, - 3504, 3514, 3506, 3505, 3537, 3529, 3538, 3539, 3548, 3550, + 3238, 3250, 3264, 3254, 3255, 3259, 3268, 3280, 3290, 3272, + 3304, 3278, 3313, 3322, 3314, 3339, 3347, 3344, 3355, 3357, + 3380, 3326, 3363, 3388, 3378, 3389, 3392, 3397, 3422, 3401, + 3020, 0, 3020, 3060, 3079, 3141, 0, 3164, 3229, 0, + 0, 3291, 0, 0, 0, 3318, 0, 3314, 3337, 0, + 0, 0, 0, 3341, 3396, 0, 0, 3404, 3417, 0, + 3411, 3429, 3410, 0, 3433, 3418, 0, 0, 0, 3427, + 0, 3441, 3445, 3428, 0, 0, 0, 0, 3433, 3440, + 3451, 3452, 3466, 3460, 3462, 3477, 3463, 3494, 3481, 3485, + 3495, 3518, 3500, 3506, 3517, 3529, 3530, 3531, 3539, 3535, - 3554, 3560, 3563, 3569, 3579, 3578, 3582, 3591, 3592, 3594, - 3603, 3604, 3608, 3613, 3622, 3627, 3636, 3637, 3652, 3646, - 3648, 3658, 3682, 3676, 3671, 3677, 3681, 3706, 3692, 3714, - 3715, 3716, 3700, 3725, 3730, 3744, 3746, 3748, 0, 0, - 0, 0, 0, 3549, 0, 3628, 0, 0, 0, 0, - 0, 3664, 0, 3709, 3751, 0, 0, 3739, 0, 0, - 3743, 3752, 3765, 0, 0, 3769, 3770, 3774, 3779, 3780, - 3788, 3785, 3798, 3802, 3803, 3804, 3814, 3819, 3838, 3828, - 3844, 3833, 3842, 3847, 3868, 3852, 3870, 3873, 3896, 3878, - 3881, 3882, 3795, 0, 3861, 0, 3874, 0, 3872, 3895, + 3548, 3552, 3560, 3570, 3569, 3571, 3573, 3585, 3588, 3574, + 3609, 3603, 3606, 3614, 3627, 3628, 3637, 3638, 3639, 3660, + 3643, 3672, 3677, 3676, 3662, 3678, 3681, 3693, 3702, 3710, + 0, 0, 0, 0, 0, 3538, 0, 3521, 0, 0, + 0, 0, 3606, 0, 3600, 3622, 0, 0, 3629, 0, + 0, 3666, 3703, 3712, 0, 0, 3714, 3716, 3726, 3727, + 3731, 3752, 3735, 3750, 3756, 3760, 3764, 3766, 3769, 3768, + 3785, 3781, 3790, 3800, 3804, 3802, 3806, 3821, 3830, 3835, + 3836, 3839, 3717, 0, 3803, 0, 3827, 0, 3822, 3832, + 0, 3858, 3844, 3860, 3852, 3876, 3854, 3884, 3895, 3890, - 0, 3907, 3912, 3921, 3918, 3924, 3926, 3930, 3947, 3935, - 3942, 0, 3938, 0, 0, 3956, 3960, 3961, 3966, 3970, - 0, 0, 3972, 3978, 4074, 4043, 4048, 135, 4053, 4058, - 4063, 4068 + 3892, 0, 3879, 0, 0, 3894, 3898, 3912, 3908, 3909, + 0, 0, 3924, 3927, 4023, 3992, 3997, 135, 4002, 4007, + 4012, 4017 } ; -static const flex_int16_t yy_def[1033] = +static const flex_int16_t yy_def[1023] = { 0, - 1025, 1, 1026, 1026, 1025, 5, 1025, 1025, 1025, 1025, - 1025, 1027, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1025, 1029, 1025, 1030, 1030, 1025, - 1030, 1031, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030, - 1032, 1032, 62, 62, 62, 62, 62, 62, 62, 62, + 1015, 1, 1016, 1016, 1015, 5, 1015, 1015, 1015, 1015, + 1015, 1017, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1015, 1019, 1015, 1020, 1020, 1015, + 1020, 1021, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, + 1022, 1022, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 1030, 1025, 1025, 1027, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1028, 1028, 1028, 1028, + 62, 62, 62, 62, 1020, 1015, 1015, 1017, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1018, 1018, 1018, 1018, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1025, 1029, 1025, 1030, - 1030, 1030, 1031, 1030, 1030, 1030, 1030, 1030, 1030, 1030, - 1030, 62, 62, 62, 62, 62, 62, 62, 62, 62, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1015, 1019, 1015, 1020, + 1020, 1020, 1021, 1020, 1020, 1020, 1020, 1020, 1020, 1020, + 1020, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, @@ -891,19 +889,19 @@ static const flex_int16_t yy_def[1033] = 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 1030, 1025, 1025, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, + 62, 1020, 1015, 1015, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1030, 1030, 62, 62, 62, 62, 62, 62, 62, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1020, 1020, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, @@ -914,18 +912,18 @@ static const flex_int16_t yy_def[1033] = 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, + 62, 62, 62, 62, 62, 62, 62, 62, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, @@ -936,16 +934,16 @@ static const flex_int16_t yy_def[1033] = 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, + 62, 62, 62, 62, 62, 62, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 62, 62, 62, 62, 62, 62, 62, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, @@ -953,32 +951,31 @@ static const flex_int16_t yy_def[1033] = 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 62, 62, 62, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, - 1028, 1028, 1028, 1028, 1028, 62, 62, 62, 62, 62, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 1018, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, + 62, 62, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, + 1018, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 1028, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 1028, 1028, 1028, 1028, 1028, 62, 62, 62, 62, 62, - 1028, 1028, 62, 62, 0, 1025, 1025, 1025, 1025, 1025, - 1025, 1025 + 1018, 1018, 1018, 1018, 1018, 62, 62, 62, 62, 62, + 1018, 1018, 62, 62, 0, 1015, 1015, 1015, 1015, 1015, + 1015, 1015 } ; -static const flex_int16_t yy_nxt[4142] = +static const flex_int16_t yy_nxt[4091] = { 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, @@ -995,14 +992,14 @@ static const flex_int16_t yy_nxt[4142] = 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 77, 84, 77, 85, 86, 86, 86, 86, 89, 97, - 90, 92, 90, 93, 94, 98, 104, 99, 111, 383, + 90, 92, 90, 93, 94, 98, 104, 99, 111, 382, 106, 136, 112, 100, 274, 101, 113, 107, 137, 102, 103, 176, 114, 275, 108, 115, 105, 109, 110, 116, - 383, 117, 98, 104, 99, 111, 118, 106, 136, 112, + 382, 117, 98, 104, 99, 111, 118, 106, 136, 112, 100, 119, 101, 113, 107, 137, 102, 103, 176, 114, 275, 108, 115, 105, 109, 110, 116, 128, 117, 186, - 126, 181, 86, 118, 172, 129, 127, 382, 119, 120, + 126, 181, 86, 118, 172, 129, 127, 381, 119, 120, 276, 130, 173, 86, 86, 187, 185, 121, 138, 184, 122, 185, 139, 123, 128, 281, 124, 126, 140, 125, 141, 172, 129, 127, 142, 131, 120, 276, 130, 173, @@ -1030,415 +1027,408 @@ static const flex_int16_t yy_nxt[4142] = 192, 192, 271, 304, 301, 302, 180, 180, 180, 87, 180, 180, 180, 180, 180, 180, 236, 180, 180, 180, 237, 247, 192, 303, 199, 192, 238, 305, 279, 250, - 304, 280, 248, 251, 311, 312, 192, 192, 249, 1025, + 304, 280, 248, 251, 311, 312, 192, 192, 249, 1015, 269, 270, 47, 236, 200, 192, 47, 237, 247, 192, - 1025, 199, 192, 238, 305, 279, 250, 192, 280, 248, + 1015, 199, 192, 238, 305, 279, 250, 192, 280, 248, 251, 311, 312, 192, 192, 249, 192, 269, 270, 283, 313, 200, 192, 180, 201, 264, 192, 265, 192, 290, 266, 202, 314, 284, 192, 288, 192, 289, 203, 291, - 293, 204, 205, 192, 315, 294, 283, 313, 192, 1025, - 1025, 201, 264, 1025, 265, 192, 290, 266, 202, 314, - 284, 1025, 288, 192, 289, 203, 291, 293, 204, 205, - 267, 315, 294, 1025, 192, 192, 206, 295, 268, 306, - 207, 307, 296, 316, 208, 308, 317, 318, 297, 323, - 209, 324, 309, 210, 192, 298, 310, 267, 1025, 319, + 293, 204, 205, 192, 315, 294, 283, 313, 192, 1015, + 1015, 201, 264, 1015, 265, 192, 290, 266, 202, 314, + 284, 1015, 288, 192, 289, 203, 291, 293, 204, 205, + 267, 315, 294, 1015, 192, 192, 206, 295, 268, 306, + 207, 307, 296, 316, 208, 308, 317, 318, 297, 321, + 209, 322, 309, 210, 192, 298, 310, 267, 323, 319, 192, 192, 320, 206, 295, 268, 306, 207, 307, 296, - 316, 208, 308, 317, 318, 297, 323, 209, 324, 309, + 316, 208, 308, 317, 318, 297, 321, 209, 322, 309, - 210, 192, 298, 310, 325, 321, 319, 192, 192, 320, - 322, 330, 331, 332, 333, 211, 334, 212, 335, 339, - 1025, 336, 213, 337, 340, 341, 342, 214, 192, 1025, - 1025, 325, 321, 1025, 338, 192, 1025, 322, 330, 331, - 332, 333, 211, 334, 212, 335, 339, 326, 336, 213, - 337, 340, 341, 342, 214, 192, 215, 327, 343, 344, - 192, 338, 328, 329, 216, 345, 346, 217, 347, 348, - 218, 349, 350, 219, 326, 351, 220, 355, 1025, 352, - 192, 1025, 1025, 215, 327, 343, 344, 192, 1025, 328, - 329, 216, 345, 346, 217, 347, 348, 218, 349, 350, + 210, 192, 298, 310, 324, 323, 319, 192, 192, 320, + 325, 329, 330, 331, 332, 211, 333, 212, 334, 335, + 326, 336, 213, 338, 339, 327, 328, 214, 192, 1015, + 340, 324, 337, 1015, 341, 192, 342, 325, 329, 330, + 331, 332, 211, 333, 212, 334, 335, 326, 336, 213, + 338, 339, 327, 328, 214, 192, 215, 340, 343, 337, + 192, 341, 344, 342, 216, 345, 346, 217, 347, 348, + 218, 349, 352, 219, 350, 354, 220, 353, 351, 355, + 192, 1015, 1015, 215, 359, 343, 360, 192, 1015, 344, + 1015, 216, 345, 346, 217, 347, 348, 218, 349, 352, - 219, 1025, 351, 220, 355, 353, 352, 192, 192, 226, - 354, 356, 360, 361, 357, 227, 228, 229, 362, 363, - 364, 1025, 230, 358, 367, 368, 369, 370, 192, 1025, - 373, 359, 353, 1025, 1025, 192, 226, 354, 356, 360, - 361, 357, 227, 228, 229, 362, 363, 364, 365, 230, - 358, 367, 368, 369, 370, 192, 239, 373, 359, 366, - 192, 371, 374, 375, 372, 377, 379, 380, 381, 376, - 240, 1025, 1025, 491, 492, 365, 241, 242, 378, 192, - 192, 1025, 1025, 239, 1025, 1025, 366, 192, 371, 374, - 375, 372, 377, 379, 380, 381, 376, 240, 192, 192, + 219, 350, 354, 220, 353, 351, 355, 192, 192, 226, + 356, 359, 361, 360, 362, 227, 228, 229, 363, 357, + 364, 366, 230, 367, 368, 369, 372, 358, 192, 1015, + 373, 365, 1015, 1015, 374, 192, 226, 356, 1015, 361, + 375, 362, 227, 228, 229, 363, 357, 364, 366, 230, + 367, 368, 369, 372, 358, 192, 239, 373, 365, 370, + 192, 374, 371, 378, 379, 376, 380, 375, 192, 1015, + 240, 1015, 1015, 1015, 489, 490, 241, 242, 377, 491, + 192, 1015, 1015, 239, 1015, 1015, 370, 192, 192, 371, + 378, 379, 376, 380, 1015, 192, 192, 240, 383, 192, - 491, 492, 493, 241, 242, 378, 192, 192, 192, 243, - 192, 384, 192, 385, 494, 495, 1025, 244, 192, 388, - 1025, 245, 389, 192, 246, 192, 192, 1025, 192, 493, - 192, 1025, 192, 496, 1025, 192, 243, 192, 384, 192, - 385, 494, 495, 192, 244, 192, 388, 192, 245, 389, - 192, 246, 192, 399, 386, 192, 252, 192, 253, 192, - 496, 254, 387, 400, 1025, 390, 497, 192, 255, 256, - 192, 192, 192, 192, 192, 391, 500, 192, 192, 192, - 399, 386, 501, 252, 1025, 253, 1025, 1025, 254, 387, - 400, 192, 390, 497, 192, 255, 256, 192, 192, 192, + 192, 489, 490, 241, 242, 377, 491, 192, 192, 243, + 1015, 384, 192, 389, 492, 192, 192, 244, 1015, 192, + 192, 245, 1015, 192, 246, 383, 192, 192, 192, 1015, + 192, 1015, 192, 1015, 1015, 192, 243, 385, 384, 192, + 389, 492, 1015, 192, 244, 386, 192, 192, 245, 387, + 192, 246, 388, 192, 493, 192, 252, 192, 253, 192, + 390, 254, 192, 494, 385, 495, 498, 499, 255, 256, + 1015, 1015, 386, 192, 1015, 500, 387, 192, 192, 388, + 192, 493, 192, 252, 192, 253, 1015, 390, 254, 192, + 494, 419, 495, 498, 499, 255, 256, 192, 391, 1015, - 192, 192, 391, 500, 192, 192, 257, 258, 394, 501, - 259, 192, 392, 260, 261, 395, 502, 1025, 192, 1025, - 262, 192, 1025, 263, 192, 396, 393, 1025, 192, 192, - 192, 192, 1025, 257, 258, 394, 1025, 259, 192, 392, - 260, 261, 395, 502, 192, 192, 192, 262, 192, 192, - 263, 1025, 396, 393, 192, 503, 192, 192, 192, 402, - 412, 397, 401, 398, 403, 192, 192, 1025, 504, 1025, - 1025, 192, 192, 192, 192, 1025, 192, 505, 192, 1025, - 1025, 192, 503, 192, 1025, 1025, 402, 412, 397, 401, - 398, 403, 192, 192, 410, 504, 408, 409, 192, 1025, + 192, 192, 500, 1015, 192, 192, 257, 258, 393, 192, + 259, 192, 392, 260, 261, 394, 1015, 192, 419, 1015, + 262, 192, 395, 263, 192, 391, 192, 1015, 192, 1015, + 192, 192, 192, 257, 258, 393, 192, 259, 192, 392, + 260, 261, 394, 396, 192, 397, 192, 262, 192, 395, + 263, 398, 192, 192, 192, 400, 192, 192, 192, 192, + 1015, 399, 1015, 192, 1015, 192, 412, 192, 501, 401, + 396, 192, 397, 192, 402, 1015, 1015, 192, 398, 192, + 1015, 192, 400, 192, 1015, 192, 1015, 192, 399, 192, + 407, 408, 192, 412, 192, 501, 401, 192, 192, 1015, - 506, 192, 404, 192, 505, 192, 192, 405, 192, 1025, - 192, 413, 192, 406, 414, 1025, 192, 498, 411, 499, - 407, 410, 1025, 408, 409, 192, 192, 506, 192, 404, - 192, 1025, 192, 192, 405, 192, 192, 1025, 413, 192, - 406, 414, 192, 192, 498, 411, 499, 407, 192, 420, - 1025, 192, 507, 192, 1025, 192, 1025, 1025, 421, 192, - 1025, 423, 192, 192, 415, 1025, 416, 1025, 192, 192, - 417, 192, 192, 1025, 192, 192, 420, 418, 192, 507, - 192, 419, 422, 192, 424, 421, 192, 425, 423, 192, - 1025, 415, 192, 416, 192, 192, 192, 417, 192, 192, + 502, 402, 403, 432, 192, 409, 192, 404, 192, 192, + 1015, 192, 192, 405, 192, 503, 192, 407, 408, 192, + 406, 410, 411, 413, 192, 192, 192, 502, 192, 403, + 432, 192, 409, 192, 404, 192, 192, 192, 192, 192, + 405, 192, 503, 1015, 420, 192, 1015, 406, 410, 411, + 413, 421, 192, 192, 192, 192, 192, 192, 192, 1015, + 192, 192, 192, 1015, 192, 504, 423, 422, 192, 424, + 425, 420, 192, 414, 192, 415, 192, 505, 421, 416, + 192, 192, 192, 192, 192, 1015, 417, 192, 192, 192, + 418, 1015, 504, 423, 422, 192, 424, 425, 192, 192, - 192, 192, 192, 441, 418, 1025, 426, 192, 419, 422, - 192, 424, 427, 192, 425, 510, 192, 192, 1025, 192, - 1025, 192, 192, 192, 1025, 192, 192, 192, 192, 192, - 441, 428, 433, 426, 429, 430, 192, 192, 1025, 427, - 431, 432, 510, 192, 192, 192, 192, 434, 192, 192, - 192, 192, 192, 192, 440, 192, 192, 1025, 428, 433, - 439, 429, 430, 192, 192, 508, 192, 431, 432, 1025, - 192, 192, 192, 192, 434, 192, 192, 192, 192, 448, - 509, 440, 511, 192, 435, 192, 192, 439, 192, 442, - 512, 451, 508, 192, 436, 1025, 192, 192, 192, 437, + 414, 192, 415, 192, 505, 1015, 416, 192, 426, 192, + 192, 192, 192, 417, 1015, 430, 431, 418, 192, 192, + 429, 192, 192, 508, 427, 192, 192, 428, 509, 1015, + 192, 192, 192, 1015, 1015, 426, 192, 192, 192, 192, + 438, 439, 430, 431, 192, 192, 192, 429, 192, 1015, + 508, 427, 192, 437, 428, 509, 192, 192, 192, 192, + 433, 192, 192, 192, 192, 192, 440, 438, 439, 451, + 434, 192, 192, 510, 1015, 435, 436, 1015, 192, 192, + 437, 192, 192, 192, 441, 192, 442, 433, 192, 192, + 1015, 192, 192, 440, 1015, 511, 451, 434, 192, 192, - 438, 513, 1025, 192, 1025, 192, 448, 509, 192, 511, - 192, 435, 192, 192, 192, 192, 442, 512, 451, 449, - 443, 436, 444, 192, 192, 192, 437, 438, 513, 445, - 192, 446, 192, 192, 192, 192, 1025, 192, 514, 192, - 452, 192, 447, 192, 192, 192, 449, 443, 450, 444, - 453, 192, 192, 192, 192, 455, 445, 192, 446, 192, - 192, 192, 1025, 192, 454, 514, 192, 452, 192, 447, - 192, 192, 192, 1025, 192, 450, 1025, 453, 456, 192, - 192, 192, 455, 192, 192, 459, 192, 1025, 192, 192, - 192, 454, 515, 1025, 1025, 192, 1025, 458, 457, 192, + 510, 192, 435, 436, 192, 192, 192, 1015, 192, 192, + 447, 441, 192, 442, 443, 448, 444, 446, 192, 192, + 192, 192, 511, 1015, 192, 192, 192, 445, 192, 1015, + 1015, 192, 452, 192, 449, 450, 192, 447, 192, 192, + 192, 443, 448, 444, 446, 192, 192, 192, 192, 192, + 453, 192, 512, 192, 445, 192, 192, 454, 192, 452, + 192, 449, 450, 192, 457, 192, 192, 192, 192, 192, + 455, 1015, 192, 456, 462, 192, 192, 453, 192, 512, + 192, 1015, 192, 192, 454, 192, 458, 192, 192, 192, + 459, 457, 192, 513, 1015, 192, 192, 455, 460, 192, - 192, 192, 464, 192, 192, 456, 192, 1025, 516, 192, - 192, 192, 459, 460, 192, 192, 192, 461, 192, 515, - 192, 465, 517, 462, 458, 457, 192, 192, 463, 464, - 192, 192, 1025, 192, 192, 516, 192, 466, 192, 192, - 460, 192, 192, 192, 461, 192, 467, 192, 465, 517, - 462, 1025, 469, 471, 468, 463, 470, 192, 476, 192, - 192, 192, 192, 192, 466, 192, 192, 192, 472, 192, - 192, 192, 518, 467, 473, 1025, 519, 192, 192, 469, - 471, 468, 192, 470, 192, 476, 192, 192, 192, 192, - 192, 192, 192, 478, 192, 472, 474, 192, 192, 518, + 456, 462, 192, 461, 514, 192, 192, 192, 192, 192, + 1015, 463, 464, 458, 192, 192, 192, 459, 1015, 192, + 513, 465, 192, 469, 192, 460, 474, 192, 192, 466, + 461, 514, 467, 192, 192, 192, 192, 468, 463, 464, + 470, 192, 192, 192, 192, 192, 192, 192, 465, 192, + 469, 192, 471, 474, 192, 192, 466, 515, 192, 467, + 192, 192, 1015, 192, 468, 192, 472, 470, 475, 192, + 192, 192, 192, 192, 192, 1015, 1015, 473, 192, 471, + 192, 192, 192, 192, 515, 192, 478, 192, 1015, 479, + 192, 516, 192, 472, 476, 475, 1015, 477, 480, 192, - 477, 473, 192, 519, 192, 192, 520, 475, 192, 192, - 482, 192, 192, 479, 192, 192, 1025, 192, 192, 192, - 478, 192, 192, 474, 192, 480, 483, 477, 481, 192, - 1025, 192, 1025, 520, 475, 192, 1025, 482, 192, 192, - 479, 192, 192, 192, 192, 488, 486, 192, 192, 192, - 484, 521, 480, 483, 1025, 481, 485, 490, 192, 487, - 522, 192, 489, 192, 523, 192, 192, 192, 192, 192, - 192, 524, 488, 486, 192, 525, 526, 484, 521, 527, - 528, 192, 529, 485, 490, 530, 487, 522, 192, 489, - 192, 523, 192, 192, 192, 531, 532, 533, 524, 534, + 1015, 192, 192, 192, 473, 192, 1015, 192, 192, 192, + 192, 192, 486, 478, 1015, 481, 479, 517, 516, 192, + 192, 476, 1015, 484, 477, 480, 192, 482, 192, 192, + 192, 192, 192, 483, 518, 519, 485, 192, 192, 486, + 192, 488, 481, 192, 517, 192, 192, 192, 520, 496, + 484, 497, 487, 521, 482, 522, 506, 192, 192, 192, + 483, 518, 519, 485, 192, 192, 523, 192, 488, 524, + 192, 507, 192, 525, 526, 520, 496, 527, 497, 487, + 521, 528, 522, 506, 192, 529, 530, 531, 532, 533, + 534, 535, 192, 523, 538, 536, 524, 539, 507, 540, - 535, 536, 525, 526, 537, 538, 527, 528, 192, 529, - 539, 541, 530, 542, 543, 544, 545, 546, 547, 548, - 540, 549, 531, 532, 533, 550, 534, 535, 536, 551, - 552, 537, 538, 553, 554, 555, 556, 539, 541, 557, - 542, 543, 544, 545, 546, 547, 548, 540, 549, 558, - 559, 560, 550, 561, 562, 563, 551, 552, 564, 565, - 553, 554, 555, 556, 566, 567, 557, 568, 569, 570, - 571, 572, 573, 574, 575, 576, 558, 559, 560, 580, - 561, 562, 563, 581, 577, 564, 565, 578, 582, 579, - 583, 566, 567, 584, 568, 569, 570, 571, 572, 573, + 525, 526, 541, 542, 527, 537, 543, 544, 528, 545, + 546, 547, 529, 530, 531, 532, 533, 534, 535, 548, + 549, 538, 536, 550, 539, 551, 540, 552, 553, 541, + 542, 554, 537, 543, 544, 555, 545, 546, 547, 556, + 557, 558, 559, 560, 561, 562, 548, 549, 563, 564, + 550, 565, 551, 566, 552, 553, 567, 568, 554, 569, + 570, 571, 555, 572, 573, 577, 556, 557, 558, 559, + 560, 561, 562, 574, 578, 563, 564, 575, 565, 576, + 566, 579, 580, 567, 568, 581, 569, 570, 571, 582, + 572, 573, 577, 583, 584, 586, 587, 192, 585, 588, - 574, 575, 576, 585, 586, 587, 580, 589, 590, 588, - 581, 577, 1025, 192, 578, 582, 579, 583, 591, 192, - 584, 592, 192, 192, 1025, 1025, 691, 692, 1025, 593, - 585, 586, 587, 192, 589, 590, 588, 192, 192, 192, - 192, 192, 192, 192, 1025, 591, 192, 594, 592, 192, - 192, 192, 192, 691, 692, 192, 593, 192, 693, 598, - 192, 599, 595, 694, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 596, 594, 192, 192, 192, 192, 192, - 600, 192, 192, 597, 192, 693, 598, 192, 599, 595, - 694, 192, 192, 601, 192, 192, 192, 192, 192, 192, + 574, 578, 1015, 1015, 575, 1015, 576, 192, 579, 580, + 589, 192, 581, 192, 687, 192, 582, 192, 590, 192, + 583, 584, 586, 587, 192, 585, 588, 192, 591, 192, + 192, 192, 192, 192, 192, 192, 1015, 589, 192, 592, + 192, 687, 192, 192, 192, 590, 192, 192, 602, 192, + 1015, 595, 192, 596, 192, 591, 192, 192, 192, 192, + 192, 593, 192, 192, 192, 192, 592, 192, 192, 192, + 192, 594, 688, 192, 192, 602, 192, 192, 595, 192, + 596, 598, 597, 600, 192, 192, 192, 192, 593, 192, + 192, 192, 192, 1015, 192, 192, 192, 192, 594, 688, - 596, 603, 192, 192, 192, 192, 602, 600, 192, 604, - 597, 192, 192, 1025, 192, 192, 1025, 605, 192, 192, - 601, 192, 192, 192, 192, 192, 607, 192, 603, 611, - 192, 608, 192, 602, 606, 695, 604, 192, 192, 192, - 192, 192, 192, 610, 605, 192, 609, 192, 192, 192, - 192, 192, 192, 607, 192, 612, 611, 192, 608, 1025, - 192, 606, 695, 613, 192, 192, 192, 192, 192, 192, - 610, 615, 192, 609, 192, 192, 192, 192, 192, 616, - 614, 617, 612, 192, 623, 1025, 192, 192, 1025, 192, - 613, 192, 192, 192, 696, 192, 192, 618, 615, 192, + 192, 599, 1015, 192, 192, 689, 192, 192, 598, 597, + 600, 192, 192, 192, 192, 192, 192, 601, 1015, 1015, + 608, 604, 603, 192, 192, 192, 605, 1015, 599, 607, + 192, 192, 689, 192, 192, 192, 1015, 690, 1015, 192, + 192, 606, 192, 691, 601, 192, 192, 608, 604, 603, + 192, 192, 192, 605, 609, 612, 607, 610, 192, 192, + 192, 692, 192, 192, 690, 192, 192, 192, 606, 1015, + 691, 614, 192, 192, 611, 192, 620, 615, 192, 192, + 192, 609, 612, 192, 610, 192, 192, 192, 692, 613, + 192, 192, 192, 192, 192, 1015, 192, 1015, 614, 192, - 192, 192, 192, 192, 192, 192, 616, 614, 617, 1025, - 192, 623, 620, 192, 619, 192, 192, 697, 192, 192, - 192, 696, 192, 192, 618, 192, 192, 192, 192, 622, - 192, 192, 192, 624, 192, 192, 621, 192, 1025, 620, - 1025, 619, 192, 192, 697, 192, 192, 192, 192, 698, - 192, 192, 192, 625, 192, 626, 622, 192, 1025, 1025, - 624, 192, 192, 621, 192, 192, 627, 628, 192, 192, - 192, 192, 192, 1025, 1025, 192, 698, 636, 192, 637, - 625, 192, 626, 192, 192, 192, 629, 192, 192, 192, - 1025, 630, 192, 627, 628, 192, 192, 192, 192, 192, + 693, 611, 192, 620, 615, 192, 192, 192, 616, 192, + 192, 192, 192, 192, 192, 1015, 613, 192, 192, 619, + 192, 192, 618, 192, 617, 192, 192, 693, 1015, 192, + 621, 192, 192, 694, 192, 616, 192, 192, 192, 192, + 192, 192, 624, 192, 192, 192, 619, 622, 1015, 618, + 623, 617, 192, 1015, 192, 192, 192, 621, 192, 192, + 694, 192, 1015, 192, 192, 192, 192, 192, 632, 624, + 192, 625, 192, 192, 622, 192, 626, 623, 1015, 192, + 629, 192, 192, 627, 1015, 192, 192, 192, 192, 192, + 192, 630, 192, 192, 192, 632, 695, 633, 625, 192, - 631, 633, 192, 192, 636, 192, 637, 192, 192, 1025, - 192, 192, 192, 629, 192, 192, 192, 632, 630, 192, - 638, 635, 192, 639, 192, 634, 192, 631, 633, 192, - 192, 192, 192, 640, 192, 192, 192, 192, 192, 192, - 192, 192, 1025, 192, 632, 642, 192, 638, 635, 192, - 639, 644, 634, 641, 192, 192, 192, 192, 192, 645, - 640, 192, 1025, 192, 192, 1025, 192, 192, 192, 643, - 192, 192, 642, 699, 192, 192, 646, 192, 644, 192, - 641, 192, 192, 192, 192, 647, 645, 192, 192, 192, - 192, 192, 648, 649, 1025, 650, 643, 192, 192, 192, + 192, 192, 192, 626, 628, 192, 192, 629, 1015, 192, + 627, 631, 192, 634, 192, 192, 192, 192, 630, 635, + 192, 192, 192, 695, 633, 192, 192, 1015, 192, 636, + 1015, 628, 192, 192, 192, 192, 192, 640, 631, 192, + 634, 637, 192, 638, 192, 192, 635, 192, 192, 192, + 639, 641, 192, 192, 192, 192, 636, 192, 642, 192, + 192, 192, 192, 192, 640, 644, 192, 192, 637, 192, + 638, 643, 192, 192, 192, 192, 192, 639, 641, 192, + 192, 192, 192, 192, 192, 642, 192, 192, 192, 645, + 192, 647, 644, 192, 192, 192, 192, 696, 643, 652, - 699, 192, 192, 646, 192, 192, 192, 192, 192, 192, - 192, 192, 647, 1025, 192, 1025, 192, 192, 192, 648, - 649, 652, 650, 651, 192, 192, 192, 192, 192, 192, - 1025, 656, 192, 192, 192, 192, 192, 192, 192, 657, - 653, 655, 654, 700, 1025, 1025, 701, 192, 652, 192, - 651, 192, 192, 192, 192, 192, 192, 658, 656, 192, - 192, 192, 192, 1025, 1025, 1025, 657, 653, 655, 654, - 700, 659, 192, 701, 192, 192, 192, 192, 192, 1025, - 192, 192, 192, 660, 658, 661, 192, 662, 192, 192, - 663, 192, 192, 192, 1025, 192, 664, 192, 659, 192, + 192, 653, 192, 192, 646, 192, 192, 192, 192, 648, + 192, 1015, 649, 192, 192, 192, 645, 192, 647, 192, + 192, 192, 192, 192, 696, 192, 652, 192, 653, 654, + 650, 646, 192, 192, 192, 192, 648, 192, 192, 649, + 192, 651, 192, 1015, 192, 1015, 192, 192, 192, 656, + 661, 655, 192, 192, 192, 192, 654, 650, 192, 1015, + 192, 697, 192, 657, 192, 192, 192, 658, 651, 192, + 192, 192, 663, 698, 192, 192, 656, 661, 655, 1015, + 192, 659, 192, 192, 192, 192, 192, 660, 697, 192, + 657, 192, 192, 192, 658, 192, 699, 192, 192, 663, - 1025, 665, 192, 1025, 192, 192, 667, 192, 192, 192, - 660, 192, 661, 192, 662, 666, 192, 663, 192, 192, - 192, 192, 192, 664, 192, 192, 192, 192, 665, 192, - 192, 669, 192, 667, 192, 192, 192, 1025, 192, 192, - 192, 702, 666, 192, 1025, 670, 671, 668, 192, 192, - 192, 703, 192, 192, 192, 192, 192, 192, 669, 192, - 192, 192, 192, 192, 192, 675, 192, 1025, 702, 192, - 674, 672, 670, 671, 668, 704, 192, 192, 703, 673, - 192, 192, 192, 1025, 192, 192, 192, 192, 192, 192, - 676, 192, 675, 192, 192, 1025, 192, 674, 672, 677, + 698, 192, 192, 192, 192, 662, 192, 192, 659, 1015, + 192, 192, 1015, 192, 660, 192, 665, 700, 192, 192, + 192, 192, 192, 699, 664, 1015, 192, 192, 192, 192, + 192, 192, 662, 192, 192, 666, 667, 192, 671, 192, + 192, 192, 192, 665, 700, 1015, 701, 192, 192, 192, + 668, 664, 669, 192, 192, 1015, 192, 192, 192, 192, + 192, 192, 666, 667, 192, 671, 192, 192, 192, 670, + 1015, 702, 672, 701, 1015, 1015, 192, 668, 677, 669, + 192, 673, 192, 192, 192, 192, 192, 192, 192, 703, + 1015, 192, 192, 674, 704, 675, 670, 192, 702, 672, - 1025, 705, 704, 678, 680, 679, 673, 192, 192, 192, - 192, 192, 192, 192, 192, 681, 192, 676, 682, 192, - 192, 192, 684, 706, 192, 1025, 677, 192, 705, 192, - 678, 680, 679, 1025, 1025, 192, 192, 192, 1025, 192, - 192, 192, 681, 683, 192, 682, 192, 192, 192, 684, - 706, 192, 192, 685, 192, 192, 192, 192, 707, 1025, - 689, 687, 192, 686, 708, 688, 192, 709, 192, 710, - 683, 192, 192, 192, 192, 192, 711, 192, 712, 192, - 685, 713, 192, 714, 192, 707, 690, 689, 687, 715, - 686, 708, 688, 192, 709, 192, 710, 716, 717, 192, + 1015, 676, 192, 192, 1015, 677, 678, 192, 673, 192, + 192, 192, 680, 1015, 192, 192, 703, 192, 192, 192, + 674, 704, 675, 1015, 192, 192, 705, 192, 676, 192, + 192, 679, 706, 678, 192, 192, 192, 192, 192, 680, + 686, 192, 192, 681, 192, 192, 683, 192, 707, 708, + 684, 682, 192, 705, 192, 709, 192, 192, 679, 706, + 710, 192, 192, 192, 192, 192, 711, 686, 685, 712, + 681, 713, 192, 683, 192, 707, 708, 684, 682, 714, + 715, 716, 709, 192, 192, 192, 717, 710, 718, 719, + 720, 721, 192, 711, 723, 685, 712, 724, 713, 725, - 192, 718, 719, 711, 192, 712, 720, 721, 713, 722, - 714, 723, 724, 690, 725, 726, 715, 728, 729, 730, - 192, 731, 732, 733, 716, 717, 727, 734, 718, 719, - 735, 736, 737, 720, 721, 738, 722, 739, 723, 724, - 740, 725, 726, 741, 728, 729, 730, 742, 731, 732, - 733, 743, 744, 727, 734, 745, 746, 735, 736, 737, - 747, 748, 738, 749, 739, 750, 751, 740, 752, 753, - 741, 754, 755, 756, 742, 757, 758, 759, 743, 744, - 760, 761, 745, 746, 762, 763, 192, 747, 748, 192, - 749, 1025, 750, 751, 1025, 752, 753, 192, 754, 755, + 726, 729, 722, 727, 728, 730, 714, 715, 716, 731, + 732, 733, 192, 717, 734, 718, 719, 720, 721, 735, + 736, 723, 737, 738, 724, 739, 725, 726, 729, 722, + 727, 728, 730, 740, 741, 742, 731, 732, 733, 743, + 744, 734, 745, 746, 747, 748, 735, 736, 749, 737, + 738, 750, 739, 751, 752, 753, 754, 755, 756, 757, + 740, 741, 742, 758, 1015, 1015, 743, 744, 192, 745, + 746, 747, 748, 192, 192, 749, 192, 764, 750, 192, + 751, 752, 753, 754, 755, 756, 757, 759, 761, 760, + 758, 192, 763, 762, 192, 192, 192, 192, 765, 192, - 756, 192, 757, 758, 759, 192, 766, 760, 761, 767, - 764, 762, 763, 192, 765, 769, 192, 192, 768, 192, - 1025, 192, 1025, 770, 192, 192, 1025, 192, 192, 192, - 1025, 192, 192, 766, 1025, 192, 767, 764, 1025, 192, - 192, 765, 769, 1025, 192, 768, 192, 192, 192, 192, - 770, 192, 192, 192, 192, 192, 192, 192, 192, 1025, - 192, 771, 192, 192, 1025, 192, 192, 192, 772, 837, - 775, 192, 773, 192, 192, 192, 192, 192, 192, 774, - 192, 192, 192, 192, 192, 192, 777, 192, 771, 192, - 192, 192, 192, 1025, 192, 772, 837, 775, 192, 773, + 192, 192, 192, 192, 764, 1015, 192, 192, 192, 1015, + 1015, 192, 1015, 192, 759, 761, 760, 192, 192, 763, + 762, 192, 192, 192, 192, 765, 192, 192, 192, 192, + 767, 192, 192, 192, 192, 192, 192, 192, 192, 766, + 192, 192, 1015, 831, 192, 192, 1015, 768, 770, 192, + 769, 192, 192, 192, 192, 192, 192, 767, 192, 192, + 192, 192, 832, 192, 192, 192, 766, 192, 192, 771, + 831, 192, 192, 192, 768, 770, 833, 769, 192, 192, + 192, 773, 772, 192, 774, 192, 192, 192, 192, 832, + 192, 192, 192, 1015, 192, 192, 771, 776, 192, 775, - 192, 192, 192, 778, 192, 776, 774, 192, 192, 192, - 192, 1025, 192, 777, 192, 779, 192, 192, 192, 192, - 192, 192, 1025, 780, 1025, 788, 838, 192, 192, 839, - 778, 192, 776, 1025, 192, 192, 192, 192, 781, 192, - 192, 192, 779, 1025, 192, 192, 192, 192, 192, 192, - 780, 192, 788, 838, 192, 192, 839, 192, 192, 782, - 783, 192, 192, 1025, 192, 781, 192, 192, 192, 192, - 192, 192, 192, 784, 1025, 192, 192, 192, 192, 786, - 1025, 192, 192, 192, 192, 785, 782, 783, 192, 787, - 192, 192, 1025, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 834, 833, 835, 192, 192, 1015, 773, 772, + 192, 774, 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 1015, 776, 192, 775, 777, 192, 834, + 778, 835, 192, 192, 781, 780, 192, 192, 192, 192, + 192, 779, 192, 192, 783, 192, 192, 192, 192, 782, + 192, 1015, 192, 192, 777, 192, 1015, 778, 192, 192, + 1015, 781, 780, 192, 192, 192, 192, 192, 779, 192, + 192, 783, 192, 192, 784, 192, 782, 192, 192, 192, + 192, 1015, 192, 785, 192, 192, 192, 192, 836, 192, + 837, 192, 1015, 192, 838, 786, 192, 192, 192, 192, - 784, 790, 840, 192, 192, 192, 786, 192, 192, 789, - 192, 192, 785, 192, 192, 192, 787, 192, 192, 192, - 192, 192, 791, 192, 792, 192, 192, 192, 790, 840, - 192, 192, 192, 793, 192, 192, 789, 192, 192, 794, - 192, 192, 192, 192, 1025, 1025, 192, 192, 192, 791, - 192, 792, 192, 192, 192, 1025, 192, 192, 192, 192, - 793, 795, 192, 1025, 192, 192, 794, 192, 192, 797, - 192, 192, 796, 192, 192, 192, 192, 192, 798, 799, - 192, 192, 192, 192, 192, 192, 192, 192, 795, 801, - 800, 192, 192, 192, 192, 192, 797, 192, 192, 796, + 192, 784, 192, 192, 192, 192, 192, 192, 787, 788, + 785, 192, 839, 192, 192, 836, 192, 837, 1015, 192, + 192, 838, 786, 192, 192, 192, 192, 1015, 192, 192, + 192, 192, 192, 1015, 192, 787, 788, 789, 192, 839, + 192, 192, 1015, 1015, 192, 791, 192, 790, 192, 192, + 192, 192, 192, 1015, 792, 192, 192, 192, 192, 192, + 192, 192, 793, 192, 789, 192, 192, 1015, 192, 192, + 795, 192, 791, 794, 790, 192, 192, 192, 192, 192, + 192, 792, 192, 192, 192, 192, 192, 192, 192, 793, + 192, 192, 192, 192, 798, 1015, 192, 795, 192, 797, - 192, 192, 192, 192, 192, 798, 799, 192, 192, 192, - 192, 192, 192, 192, 192, 192, 801, 800, 192, 804, - 192, 1025, 803, 192, 192, 802, 1025, 1025, 192, 192, - 192, 192, 1025, 192, 192, 192, 808, 192, 192, 192, - 192, 192, 192, 192, 807, 192, 804, 805, 806, 803, - 192, 841, 802, 192, 809, 1025, 192, 192, 192, 810, - 192, 192, 192, 808, 192, 192, 192, 192, 192, 192, - 192, 807, 192, 842, 805, 806, 192, 811, 841, 192, - 192, 809, 812, 192, 192, 192, 810, 192, 192, 192, - 192, 192, 192, 813, 192, 814, 192, 815, 816, 192, + 794, 1015, 192, 840, 192, 192, 796, 192, 192, 192, + 192, 192, 192, 192, 192, 1015, 192, 192, 192, 192, + 801, 798, 799, 800, 1015, 192, 797, 1015, 192, 192, + 840, 804, 192, 796, 1015, 192, 192, 192, 192, 192, + 803, 192, 192, 192, 192, 802, 1015, 801, 192, 799, + 800, 192, 192, 192, 192, 192, 1015, 192, 804, 192, + 1015, 805, 192, 192, 192, 807, 806, 803, 192, 192, + 841, 1015, 802, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 808, 809, 192, 192, 192, 192, 805, 192, + 1015, 192, 807, 806, 1015, 192, 192, 841, 811, 810, - 842, 192, 843, 192, 811, 192, 192, 844, 1025, 812, - 192, 192, 192, 845, 192, 192, 192, 192, 192, 192, - 813, 192, 814, 192, 815, 816, 192, 192, 192, 843, - 818, 817, 192, 192, 844, 192, 820, 192, 192, 822, - 845, 819, 192, 192, 1025, 192, 192, 192, 192, 821, - 192, 192, 192, 192, 192, 824, 823, 818, 817, 192, - 192, 192, 192, 820, 192, 192, 822, 192, 819, 846, - 192, 192, 192, 192, 192, 192, 821, 825, 192, 192, - 192, 192, 824, 823, 192, 1025, 192, 192, 192, 192, - 827, 192, 192, 192, 192, 1025, 846, 1025, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, 192, 808, + 809, 192, 192, 192, 192, 1015, 813, 812, 192, 1015, + 816, 192, 192, 192, 1015, 811, 810, 842, 192, 192, + 814, 818, 192, 192, 192, 192, 192, 815, 192, 192, + 192, 192, 192, 813, 812, 192, 817, 816, 192, 192, + 192, 192, 1015, 843, 842, 192, 192, 814, 818, 192, + 819, 192, 192, 192, 815, 192, 192, 192, 192, 192, + 192, 192, 192, 817, 821, 820, 192, 192, 192, 192, + 843, 192, 1015, 192, 192, 192, 192, 819, 192, 192, + 824, 192, 192, 822, 192, 823, 192, 192, 192, 192, - 192, 192, 192, 826, 825, 847, 192, 848, 192, 192, - 828, 192, 192, 1025, 192, 833, 192, 827, 1025, 192, - 192, 192, 829, 830, 192, 192, 192, 192, 192, 1025, - 826, 1025, 847, 192, 848, 192, 192, 828, 849, 192, - 831, 192, 833, 832, 192, 192, 1025, 192, 192, 829, - 830, 192, 192, 192, 192, 192, 192, 192, 834, 836, - 192, 192, 192, 850, 851, 849, 852, 831, 192, 192, - 832, 192, 192, 835, 192, 192, 192, 192, 853, 192, - 192, 854, 192, 192, 192, 834, 836, 192, 192, 192, - 850, 851, 855, 852, 856, 857, 192, 858, 859, 860, + 825, 821, 820, 192, 192, 192, 192, 1015, 192, 827, + 192, 192, 192, 192, 192, 826, 1015, 824, 192, 192, + 822, 192, 823, 192, 192, 192, 192, 825, 828, 192, + 192, 192, 192, 192, 830, 829, 827, 192, 192, 192, + 192, 192, 826, 192, 192, 192, 192, 844, 845, 846, + 847, 192, 192, 848, 192, 828, 192, 192, 192, 849, + 192, 830, 829, 192, 850, 192, 192, 851, 852, 853, + 192, 192, 192, 854, 844, 845, 846, 847, 855, 856, + 848, 192, 857, 858, 859, 192, 849, 860, 861, 862, + 192, 850, 863, 864, 851, 852, 853, 865, 866, 867, - 835, 861, 192, 192, 192, 853, 192, 192, 854, 862, - 863, 864, 865, 866, 867, 868, 192, 869, 870, 855, - 871, 856, 857, 872, 858, 859, 860, 873, 861, 874, - 875, 876, 877, 878, 879, 880, 862, 863, 864, 865, - 866, 867, 868, 881, 869, 870, 882, 871, 883, 884, - 872, 885, 886, 887, 873, 1025, 874, 875, 876, 877, - 878, 879, 880, 192, 192, 192, 939, 192, 889, 890, - 881, 940, 1025, 882, 941, 883, 884, 942, 885, 886, - 887, 891, 192, 192, 192, 192, 888, 192, 192, 192, - 192, 192, 192, 939, 192, 889, 890, 192, 940, 894, + 854, 868, 869, 870, 871, 855, 856, 872, 873, 857, + 858, 859, 874, 875, 860, 861, 862, 876, 877, 863, + 864, 878, 879, 880, 865, 866, 867, 192, 868, 869, + 870, 871, 192, 192, 872, 873, 192, 931, 882, 874, + 875, 883, 192, 1015, 876, 877, 932, 192, 878, 879, + 880, 885, 192, 192, 192, 887, 192, 881, 192, 192, + 192, 192, 192, 192, 931, 882, 884, 192, 883, 192, + 192, 192, 1015, 932, 192, 192, 192, 933, 885, 192, + 192, 886, 887, 192, 881, 192, 888, 192, 192, 192, + 192, 192, 192, 884, 192, 890, 192, 192, 192, 889, - 192, 941, 192, 1025, 942, 897, 892, 1025, 891, 192, - 192, 192, 192, 888, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 192, 192, 192, 894, 192, 893, 192, - 896, 895, 897, 892, 900, 1025, 192, 1025, 192, 901, - 1025, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 192, 898, 192, 192, 192, 893, 192, 896, 895, 192, - 1025, 900, 899, 192, 192, 192, 901, 192, 192, 192, - 192, 943, 944, 192, 1025, 906, 192, 192, 898, 902, - 192, 192, 903, 192, 192, 192, 192, 192, 192, 899, - 904, 192, 905, 192, 192, 1025, 192, 192, 943, 944, + 192, 192, 192, 192, 933, 893, 1015, 1015, 886, 894, + 934, 192, 192, 888, 192, 192, 891, 192, 192, 192, + 192, 192, 890, 192, 192, 192, 889, 192, 192, 192, + 192, 192, 893, 892, 192, 1015, 894, 934, 192, 192, + 1015, 1015, 192, 891, 192, 895, 1015, 192, 192, 896, + 192, 192, 192, 192, 192, 192, 192, 192, 192, 898, + 892, 192, 899, 192, 192, 935, 1015, 897, 192, 1015, + 1015, 192, 895, 192, 1015, 192, 896, 192, 192, 936, + 192, 192, 192, 192, 192, 900, 898, 192, 192, 899, + 192, 192, 935, 192, 897, 192, 192, 192, 192, 901, - 192, 192, 906, 192, 192, 192, 902, 945, 192, 903, - 192, 192, 192, 192, 192, 192, 192, 904, 192, 905, - 192, 192, 192, 192, 192, 907, 192, 192, 192, 908, - 192, 910, 192, 1025, 945, 192, 192, 192, 192, 909, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 912, 1025, 907, 192, 192, 1025, 908, 192, 910, 911, - 192, 192, 192, 192, 192, 192, 909, 914, 192, 192, - 192, 192, 192, 192, 192, 192, 913, 912, 192, 1025, - 192, 192, 192, 1025, 915, 1025, 911, 192, 192, 192, - 192, 192, 192, 1025, 914, 192, 916, 192, 192, 192, + 192, 192, 192, 1015, 1015, 192, 936, 192, 902, 904, + 192, 192, 900, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 901, 192, 192, 192, + 192, 192, 192, 903, 192, 902, 904, 906, 192, 192, + 192, 905, 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 907, 192, 192, 192, 192, 192, 192, + 903, 937, 1015, 908, 906, 192, 192, 192, 905, 192, + 1015, 192, 192, 192, 192, 192, 192, 192, 192, 192, + 907, 192, 192, 1015, 909, 911, 910, 192, 937, 914, + 908, 192, 192, 1015, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 913, 192, 192, 192, 192, 192, 192, - 192, 915, 192, 1025, 192, 917, 192, 192, 919, 192, - 192, 918, 192, 916, 1025, 192, 192, 192, 192, 946, - 1025, 192, 192, 192, 192, 1025, 192, 192, 192, 192, - 922, 192, 917, 192, 192, 919, 192, 192, 918, 192, - 923, 924, 192, 192, 1025, 192, 946, 920, 1025, 192, - 192, 192, 921, 192, 192, 192, 192, 922, 192, 192, - 947, 192, 192, 192, 1025, 192, 192, 923, 924, 192, - 925, 192, 192, 926, 920, 927, 192, 192, 192, 921, - 928, 192, 948, 192, 192, 192, 192, 947, 1025, 192, + 192, 192, 192, 192, 1015, 192, 938, 192, 192, 192, + 912, 909, 911, 910, 192, 192, 914, 192, 192, 192, + 913, 192, 192, 192, 192, 915, 916, 192, 192, 1015, + 192, 192, 192, 938, 192, 939, 192, 912, 917, 192, + 940, 192, 192, 192, 192, 1015, 918, 913, 192, 1015, + 192, 192, 915, 916, 192, 919, 192, 192, 192, 192, + 920, 192, 939, 192, 192, 917, 192, 940, 192, 941, + 192, 942, 192, 918, 192, 921, 192, 192, 192, 1015, + 925, 192, 919, 192, 192, 922, 192, 920, 192, 923, + 192, 192, 192, 924, 192, 927, 941, 192, 942, 192, - 949, 192, 192, 192, 192, 192, 192, 925, 192, 192, - 926, 1025, 927, 192, 192, 192, 930, 928, 929, 948, - 931, 192, 932, 192, 192, 192, 192, 949, 192, 192, - 192, 192, 192, 192, 933, 935, 192, 934, 192, 192, - 1025, 192, 1025, 930, 1025, 929, 192, 931, 950, 932, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 1025, 933, 935, 937, 934, 192, 192, 192, 938, 192, - 951, 936, 192, 192, 952, 950, 953, 192, 954, 955, - 956, 192, 192, 957, 192, 192, 192, 192, 958, 192, - 937, 959, 192, 960, 192, 938, 192, 951, 936, 192, + 192, 192, 921, 192, 926, 192, 192, 925, 192, 192, + 929, 192, 922, 943, 192, 192, 923, 192, 192, 192, + 924, 192, 927, 928, 192, 192, 192, 192, 944, 192, + 945, 926, 192, 192, 192, 930, 192, 929, 192, 192, + 943, 192, 192, 946, 192, 192, 947, 948, 949, 950, + 928, 951, 192, 192, 952, 944, 192, 945, 953, 192, + 954, 192, 930, 955, 956, 192, 192, 1015, 957, 192, + 946, 1015, 1015, 947, 948, 949, 950, 959, 951, 192, + 192, 952, 1015, 192, 1015, 953, 192, 954, 192, 192, + 955, 956, 958, 960, 192, 957, 192, 192, 192, 192, - 961, 952, 962, 953, 192, 954, 955, 956, 963, 964, - 957, 965, 966, 192, 192, 958, 192, 192, 959, 192, - 960, 968, 192, 192, 1025, 1025, 967, 961, 1025, 962, - 970, 192, 192, 192, 1025, 963, 964, 192, 965, 966, - 192, 192, 192, 192, 192, 969, 192, 1025, 968, 192, - 192, 192, 971, 967, 192, 192, 192, 970, 192, 192, - 192, 972, 993, 973, 192, 192, 192, 192, 192, 192, - 192, 192, 969, 192, 192, 192, 192, 192, 192, 971, - 974, 192, 192, 192, 1025, 192, 192, 192, 972, 993, - 973, 192, 192, 192, 192, 192, 192, 192, 192, 192, + 192, 961, 192, 192, 959, 1015, 192, 192, 1015, 962, + 192, 192, 192, 963, 192, 192, 192, 192, 192, 958, + 960, 192, 192, 192, 192, 192, 192, 192, 961, 192, + 192, 192, 192, 964, 192, 192, 962, 192, 192, 192, + 963, 192, 1015, 192, 192, 192, 965, 192, 192, 192, + 192, 983, 192, 984, 192, 192, 192, 966, 192, 192, + 964, 192, 192, 1015, 192, 192, 192, 192, 192, 192, + 192, 967, 192, 965, 192, 192, 192, 192, 983, 192, + 984, 192, 192, 192, 966, 192, 969, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, 967, 192, - 192, 192, 192, 192, 192, 975, 192, 974, 192, 192, - 976, 192, 192, 192, 192, 192, 192, 1025, 192, 192, - 192, 192, 192, 192, 192, 979, 192, 192, 192, 977, - 192, 192, 975, 192, 978, 192, 192, 976, 192, 192, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 981, - 192, 980, 979, 192, 192, 192, 977, 192, 192, 192, - 994, 978, 1025, 983, 192, 192, 192, 192, 192, 192, - 1025, 192, 192, 192, 192, 192, 981, 192, 980, 995, - 192, 192, 1025, 192, 982, 984, 192, 994, 192, 192, - 983, 192, 192, 192, 192, 192, 192, 985, 192, 192, + 968, 971, 192, 192, 192, 192, 192, 192, 192, 970, + 192, 192, 192, 969, 192, 192, 192, 192, 192, 1015, + 973, 985, 192, 192, 192, 192, 192, 968, 971, 192, + 986, 192, 192, 192, 192, 192, 970, 192, 192, 987, + 192, 972, 975, 974, 192, 192, 192, 973, 985, 192, + 192, 192, 192, 192, 192, 192, 192, 986, 192, 976, + 192, 988, 1015, 1015, 192, 192, 987, 192, 972, 975, + 974, 192, 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 977, 978, 976, 192, 988, 192, + 979, 192, 192, 192, 192, 192, 989, 192, 192, 192, - 192, 192, 192, 1025, 1025, 1025, 995, 986, 192, 192, - 192, 982, 984, 192, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 192, 985, 192, 192, 988, 989, 192, - 987, 192, 192, 192, 986, 192, 192, 192, 1025, 996, - 192, 192, 192, 192, 192, 192, 192, 192, 990, 1025, - 192, 192, 192, 192, 988, 989, 192, 987, 192, 192, - 192, 192, 192, 192, 192, 192, 996, 192, 997, 192, - 192, 998, 992, 999, 192, 990, 991, 1000, 192, 192, - 192, 192, 1001, 192, 1025, 192, 192, 192, 192, 192, - 192, 192, 192, 1025, 192, 997, 192, 192, 998, 992, + 1015, 192, 192, 192, 192, 1015, 192, 192, 980, 192, + 192, 977, 978, 192, 192, 192, 192, 979, 192, 192, + 192, 192, 192, 989, 192, 192, 192, 192, 990, 991, + 192, 192, 981, 192, 982, 980, 192, 192, 1015, 192, + 192, 192, 192, 192, 192, 192, 192, 192, 192, 1001, + 1015, 192, 192, 192, 192, 990, 991, 192, 192, 981, + 192, 982, 1015, 192, 192, 992, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 1001, 192, 192, 192, + 192, 192, 993, 192, 994, 192, 192, 192, 1015, 192, + 192, 192, 992, 192, 192, 192, 192, 192, 996, 192, - 999, 1002, 192, 991, 1000, 192, 192, 192, 192, 1001, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 192, 192, 192, 1025, 1011, 1002, 192, - 1003, 192, 192, 192, 192, 192, 192, 1025, 192, 192, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 1006, 192, 192, 1004, 1011, 192, 192, 1003, 192, 192, - 1025, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 192, 1025, 192, 1025, 1005, 192, 1025, 1006, 192, 192, - 1004, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 1012, 1025, 1010, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, 192, 993, + 192, 994, 192, 192, 192, 995, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 996, 1015, 192, 192, 192, + 192, 1015, 192, 192, 192, 1002, 997, 192, 192, 192, + 1015, 192, 995, 192, 192, 192, 192, 192, 192, 192, + 192, 998, 1000, 192, 192, 999, 192, 1003, 192, 1004, + 1005, 192, 1002, 997, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, 998, 1000, + 192, 192, 999, 192, 1003, 192, 1004, 1005, 192, 192, + 1006, 192, 1007, 192, 192, 192, 192, 192, 192, 192, - 1007, 1005, 192, 1008, 1013, 192, 192, 192, 192, 1014, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 1012, 1009, 1010, 1015, 192, 192, 192, 1007, 1025, 192, - 1008, 1013, 192, 192, 192, 192, 1014, 192, 192, 1016, - 192, 192, 192, 192, 192, 192, 192, 192, 1009, 192, - 1015, 192, 192, 1017, 1018, 192, 192, 1025, 192, 1021, - 192, 192, 192, 192, 192, 192, 1016, 1019, 192, 1022, - 192, 192, 192, 1023, 192, 1020, 192, 192, 192, 192, - 1017, 1018, 192, 192, 192, 192, 1021, 192, 192, 192, - 192, 192, 1024, 192, 1019, 192, 1022, 192, 192, 192, + 192, 192, 192, 192, 192, 1015, 1008, 192, 192, 1011, + 1012, 1013, 192, 192, 1015, 192, 192, 1006, 192, 1007, + 192, 1009, 192, 1010, 192, 192, 192, 192, 192, 192, + 1015, 192, 192, 1008, 192, 192, 1011, 1012, 1013, 192, + 192, 192, 192, 1014, 192, 192, 192, 1015, 1009, 192, + 1010, 1015, 192, 192, 192, 1015, 192, 1015, 192, 192, + 1015, 192, 192, 1015, 192, 1015, 1015, 1015, 192, 1015, + 1014, 192, 192, 192, 1015, 1015, 192, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 192, 1015, + 1015, 192, 46, 46, 46, 46, 46, 88, 1015, 1015, - 1023, 1025, 1020, 192, 192, 192, 1025, 192, 1025, 192, - 192, 192, 1025, 1025, 192, 192, 192, 1025, 1025, 1024, - 192, 1025, 192, 1025, 192, 192, 1025, 1025, 1025, 1025, - 192, 1025, 1025, 1025, 192, 1025, 192, 1025, 1025, 1025, - 1025, 1025, 192, 46, 46, 46, 46, 46, 88, 1025, - 1025, 88, 88, 178, 178, 178, 1025, 178, 180, 1025, - 180, 180, 180, 183, 1025, 183, 183, 183, 192, 1025, - 192, 192, 192, 7, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025 + 88, 88, 178, 178, 178, 1015, 178, 180, 1015, 180, + 180, 180, 183, 1015, 183, 183, 183, 192, 1015, 192, + 192, 192, 7, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015 } ; -static const flex_int16_t yy_chk[4142] = +static const flex_int16_t yy_chk[4091] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1454,8 +1444,8 @@ static const flex_int16_t yy_chk[4142] = 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 9, 9, 10, 10, 15, 1028, - 15, 17, 17, 18, 18, 21, 22, 21, 24, 383, + 5, 5, 5, 5, 9, 9, 10, 10, 15, 1018, + 15, 17, 17, 18, 18, 21, 22, 21, 24, 382, 23, 30, 24, 21, 274, 21, 24, 23, 31, 21, 21, 44, 24, 98, 23, 24, 22, 23, 23, 25, 187, 25, 21, 22, 21, 24, 25, 23, 30, 24, @@ -1501,401 +1491,394 @@ static const flex_int16_t yy_chk[4142] = 0, 63, 81, 0, 81, 63, 109, 81, 63, 123, 104, 0, 108, 81, 108, 63, 109, 111, 63, 63, 82, 124, 111, 0, 82, 63, 64, 112, 82, 119, - 64, 119, 112, 125, 64, 119, 126, 127, 112, 130, - 64, 132, 119, 64, 82, 112, 119, 82, 0, 128, + 64, 119, 112, 125, 64, 119, 126, 127, 112, 129, + 64, 130, 119, 64, 82, 112, 119, 82, 132, 128, 64, 82, 128, 64, 112, 82, 119, 64, 119, 112, - 125, 64, 119, 126, 127, 112, 130, 64, 132, 119, + 125, 64, 119, 126, 127, 112, 129, 64, 130, 119, - 64, 82, 112, 119, 133, 129, 128, 64, 65, 128, - 129, 135, 136, 137, 138, 65, 139, 65, 139, 141, - 0, 140, 65, 140, 142, 143, 144, 65, 65, 0, - 0, 133, 129, 0, 140, 65, 0, 129, 135, 136, - 137, 138, 65, 139, 65, 139, 141, 134, 140, 65, - 140, 142, 143, 144, 65, 65, 66, 134, 145, 146, - 66, 140, 134, 134, 66, 147, 148, 66, 150, 151, - 66, 152, 153, 66, 134, 154, 66, 156, 0, 154, - 66, 0, 0, 66, 134, 145, 146, 66, 0, 134, - 134, 66, 147, 148, 66, 150, 151, 66, 152, 153, + 64, 82, 112, 119, 133, 132, 128, 64, 65, 128, + 134, 135, 136, 137, 138, 65, 139, 65, 139, 140, + 134, 140, 65, 141, 142, 134, 134, 65, 65, 0, + 143, 133, 140, 0, 144, 65, 145, 134, 135, 136, + 137, 138, 65, 139, 65, 139, 140, 134, 140, 65, + 141, 142, 134, 134, 65, 65, 66, 143, 146, 140, + 66, 144, 147, 145, 66, 148, 150, 66, 151, 152, + 66, 153, 155, 66, 154, 156, 66, 155, 154, 157, + 66, 0, 0, 66, 159, 146, 160, 66, 0, 147, + 0, 66, 148, 150, 66, 151, 152, 66, 153, 155, - 66, 0, 154, 66, 156, 155, 154, 66, 69, 69, - 155, 157, 159, 160, 158, 69, 69, 69, 161, 162, - 163, 0, 69, 158, 165, 166, 167, 168, 69, 0, - 170, 158, 155, 0, 0, 69, 69, 155, 157, 159, - 160, 158, 69, 69, 69, 161, 162, 163, 164, 69, - 158, 165, 166, 167, 168, 69, 74, 170, 158, 164, - 74, 169, 171, 172, 169, 173, 174, 175, 176, 172, - 74, 0, 0, 276, 278, 164, 74, 74, 173, 192, - 74, 0, 0, 74, 0, 0, 164, 74, 169, 171, - 172, 169, 173, 174, 175, 176, 172, 74, 194, 192, + 66, 154, 156, 66, 155, 154, 157, 66, 69, 69, + 158, 159, 161, 160, 162, 69, 69, 69, 163, 158, + 164, 165, 69, 166, 167, 168, 170, 158, 69, 0, + 171, 164, 0, 0, 172, 69, 69, 158, 0, 161, + 172, 162, 69, 69, 69, 163, 158, 164, 165, 69, + 166, 167, 168, 170, 158, 69, 74, 171, 164, 169, + 74, 172, 169, 174, 175, 173, 176, 172, 192, 0, + 74, 0, 0, 0, 276, 278, 74, 74, 173, 279, + 74, 0, 0, 74, 0, 0, 169, 74, 192, 169, + 174, 175, 173, 176, 0, 192, 194, 74, 193, 193, - 276, 278, 279, 74, 74, 173, 192, 74, 75, 75, - 200, 193, 193, 194, 281, 283, 0, 75, 194, 196, - 0, 75, 196, 196, 75, 194, 192, 0, 75, 279, - 200, 0, 193, 284, 0, 75, 75, 200, 193, 193, - 194, 281, 283, 196, 75, 194, 196, 195, 75, 196, - 196, 75, 197, 204, 195, 75, 79, 200, 79, 193, - 284, 79, 195, 204, 0, 197, 285, 195, 79, 79, - 196, 226, 197, 204, 195, 198, 287, 198, 79, 197, - 204, 195, 288, 79, 0, 79, 0, 0, 79, 195, - 204, 226, 197, 285, 195, 79, 79, 198, 226, 197, + 197, 276, 278, 74, 74, 173, 279, 74, 75, 75, + 0, 194, 200, 197, 281, 192, 194, 75, 0, 193, + 197, 75, 0, 194, 75, 193, 193, 197, 75, 0, + 195, 0, 200, 0, 0, 75, 75, 195, 194, 200, + 197, 281, 0, 194, 75, 195, 193, 197, 75, 196, + 195, 75, 196, 196, 283, 75, 79, 195, 79, 200, + 198, 79, 198, 284, 195, 285, 287, 288, 79, 79, + 0, 0, 195, 196, 0, 289, 196, 195, 79, 196, + 196, 283, 198, 79, 215, 79, 0, 198, 79, 198, + 284, 215, 285, 287, 288, 79, 79, 199, 199, 0, - 204, 201, 198, 287, 198, 79, 80, 80, 201, 288, - 80, 199, 199, 80, 80, 201, 289, 0, 226, 0, - 80, 201, 0, 80, 198, 202, 199, 0, 201, 202, - 80, 199, 0, 80, 80, 201, 0, 80, 199, 199, - 80, 80, 201, 289, 206, 205, 211, 80, 201, 202, - 80, 0, 202, 199, 203, 290, 202, 80, 199, 206, - 211, 203, 205, 203, 206, 205, 211, 0, 291, 0, - 0, 206, 205, 211, 203, 0, 202, 293, 209, 0, - 0, 203, 290, 208, 0, 0, 206, 211, 203, 205, - 203, 206, 205, 211, 209, 291, 208, 208, 209, 0, + 196, 201, 289, 0, 215, 79, 80, 80, 201, 198, + 80, 215, 199, 80, 80, 201, 0, 199, 215, 0, + 80, 201, 202, 80, 199, 199, 202, 0, 201, 0, + 80, 215, 226, 80, 80, 201, 203, 80, 205, 199, + 80, 80, 201, 203, 199, 203, 202, 80, 201, 202, + 80, 204, 226, 202, 206, 205, 203, 80, 205, 226, + 0, 204, 0, 203, 0, 205, 212, 212, 290, 206, + 203, 204, 203, 202, 206, 0, 0, 208, 204, 226, + 0, 206, 205, 203, 0, 205, 0, 212, 204, 209, + 208, 208, 228, 212, 212, 290, 206, 208, 204, 0, - 295, 203, 207, 208, 293, 209, 207, 207, 210, 0, - 208, 212, 212, 207, 213, 0, 213, 286, 210, 286, - 207, 209, 0, 208, 208, 209, 207, 295, 210, 207, - 208, 0, 212, 207, 207, 210, 213, 0, 212, 212, - 207, 213, 215, 213, 286, 210, 286, 207, 218, 215, - 0, 216, 296, 207, 0, 210, 0, 0, 216, 212, - 0, 218, 215, 213, 214, 0, 214, 0, 218, 215, - 214, 216, 217, 0, 219, 218, 215, 214, 216, 296, - 220, 214, 217, 232, 219, 216, 214, 220, 218, 215, - 0, 214, 217, 214, 219, 218, 221, 214, 216, 217, + 291, 206, 207, 228, 208, 209, 207, 207, 211, 209, + 0, 210, 228, 207, 212, 293, 209, 208, 208, 228, + 207, 210, 211, 213, 208, 213, 207, 291, 211, 207, + 228, 210, 209, 207, 207, 211, 209, 216, 210, 228, + 207, 217, 293, 0, 216, 213, 0, 207, 210, 211, + 213, 217, 213, 207, 218, 211, 219, 216, 210, 0, + 221, 217, 220, 0, 216, 295, 219, 218, 217, 220, + 221, 216, 213, 214, 218, 214, 219, 296, 217, 214, + 221, 218, 220, 219, 216, 0, 214, 221, 217, 220, + 214, 0, 295, 219, 218, 214, 220, 221, 222, 225, - 220, 219, 222, 232, 214, 0, 221, 220, 214, 217, - 232, 219, 222, 214, 220, 298, 221, 223, 0, 217, - 0, 219, 222, 221, 0, 225, 224, 220, 227, 222, - 232, 223, 227, 221, 223, 224, 228, 223, 0, 222, - 224, 225, 298, 221, 223, 225, 224, 228, 227, 222, - 231, 230, 225, 224, 231, 227, 228, 0, 223, 227, - 230, 223, 224, 228, 223, 297, 236, 224, 225, 0, - 231, 230, 225, 224, 228, 227, 239, 231, 230, 236, - 297, 231, 299, 228, 229, 229, 236, 230, 233, 233, - 300, 239, 297, 236, 229, 0, 239, 231, 230, 229, + 214, 218, 214, 219, 296, 0, 214, 221, 222, 220, + 223, 224, 227, 214, 0, 225, 227, 214, 222, 225, + 224, 232, 214, 298, 223, 222, 225, 223, 299, 0, + 223, 224, 227, 0, 0, 222, 231, 223, 224, 227, + 231, 232, 225, 227, 230, 222, 225, 224, 232, 0, + 298, 223, 244, 230, 223, 299, 231, 223, 224, 227, + 229, 229, 241, 231, 230, 233, 233, 231, 232, 241, + 229, 230, 244, 300, 0, 229, 229, 0, 234, 244, + 230, 229, 241, 231, 234, 233, 234, 229, 229, 241, + 0, 230, 233, 233, 0, 301, 241, 229, 234, 244, - 229, 301, 0, 239, 0, 229, 236, 297, 233, 299, - 237, 229, 229, 236, 234, 233, 233, 300, 239, 237, - 234, 229, 234, 239, 244, 240, 229, 229, 301, 235, - 237, 235, 229, 235, 234, 233, 0, 237, 302, 238, - 240, 234, 235, 241, 244, 240, 237, 234, 238, 234, - 241, 244, 240, 235, 243, 243, 235, 237, 235, 238, - 235, 234, 0, 241, 242, 302, 238, 240, 242, 235, - 241, 244, 240, 0, 243, 238, 0, 241, 245, 245, - 235, 243, 243, 246, 247, 248, 238, 0, 242, 248, - 241, 242, 303, 0, 0, 242, 0, 247, 246, 245, + 300, 237, 229, 229, 236, 234, 238, 0, 229, 241, + 237, 234, 233, 234, 235, 238, 235, 236, 235, 239, + 240, 237, 301, 0, 236, 234, 238, 235, 237, 0, + 0, 236, 242, 238, 239, 240, 242, 237, 235, 239, + 240, 235, 238, 235, 236, 235, 239, 240, 237, 243, + 243, 236, 302, 238, 235, 246, 242, 245, 245, 242, + 247, 239, 240, 242, 248, 235, 239, 240, 248, 243, + 246, 0, 251, 247, 251, 246, 243, 243, 245, 302, + 247, 0, 246, 242, 245, 245, 249, 247, 248, 250, + 249, 248, 251, 303, 0, 248, 243, 246, 250, 251, - 251, 243, 251, 246, 247, 245, 245, 0, 305, 248, - 246, 247, 248, 249, 250, 242, 248, 249, 252, 303, - 251, 252, 306, 250, 247, 246, 245, 251, 250, 251, - 246, 247, 0, 249, 250, 305, 248, 253, 252, 253, - 249, 250, 254, 255, 249, 252, 253, 251, 252, 306, - 250, 0, 254, 256, 253, 250, 255, 256, 260, 253, - 249, 250, 254, 255, 253, 252, 253, 258, 257, 254, - 255, 257, 307, 253, 258, 0, 308, 256, 260, 254, - 256, 253, 262, 255, 256, 260, 253, 258, 259, 254, - 255, 257, 261, 262, 258, 257, 259, 263, 257, 307, + 247, 251, 246, 250, 305, 245, 249, 247, 252, 250, + 0, 252, 253, 249, 253, 248, 250, 249, 0, 251, + 303, 253, 254, 256, 255, 250, 260, 256, 252, 253, + 250, 305, 254, 249, 253, 252, 250, 255, 252, 253, + 257, 253, 254, 257, 255, 258, 260, 256, 253, 254, + 256, 255, 258, 260, 256, 252, 253, 306, 259, 254, + 261, 253, 0, 257, 255, 258, 259, 257, 261, 254, + 257, 255, 258, 260, 256, 0, 0, 259, 259, 258, + 261, 263, 264, 262, 306, 259, 264, 261, 0, 264, + 257, 307, 258, 259, 262, 261, 0, 263, 265, 265, - 261, 258, 262, 308, 256, 260, 309, 259, 259, 262, - 265, 265, 261, 263, 258, 259, 0, 263, 257, 261, - 262, 264, 266, 259, 263, 264, 266, 261, 264, 262, - 0, 265, 0, 309, 259, 259, 0, 265, 265, 261, - 263, 264, 266, 267, 263, 269, 268, 270, 264, 266, - 267, 310, 264, 266, 0, 264, 267, 271, 265, 268, - 311, 271, 270, 267, 312, 269, 268, 270, 264, 266, - 267, 313, 269, 268, 270, 315, 316, 267, 310, 317, - 318, 271, 319, 267, 271, 320, 268, 311, 271, 270, - 267, 312, 269, 268, 270, 321, 322, 323, 313, 324, + 0, 263, 264, 262, 259, 259, 0, 261, 263, 264, + 262, 266, 269, 264, 0, 266, 264, 308, 307, 265, + 267, 262, 0, 268, 263, 265, 265, 267, 263, 264, + 262, 266, 269, 267, 309, 310, 268, 270, 266, 269, + 267, 271, 266, 268, 308, 271, 265, 267, 311, 286, + 268, 286, 270, 312, 267, 313, 297, 270, 266, 269, + 267, 309, 310, 268, 270, 271, 315, 267, 271, 316, + 268, 297, 271, 317, 318, 311, 286, 319, 286, 270, + 312, 320, 313, 297, 270, 321, 322, 323, 324, 325, + 326, 327, 271, 315, 329, 328, 316, 330, 297, 332, - 325, 326, 315, 316, 327, 328, 317, 318, 271, 319, - 329, 330, 320, 331, 333, 334, 335, 336, 337, 338, - 329, 339, 321, 322, 323, 340, 324, 325, 326, 341, - 342, 327, 328, 344, 345, 346, 347, 329, 330, 348, - 331, 333, 334, 335, 336, 337, 338, 329, 339, 349, - 350, 351, 340, 352, 353, 354, 341, 342, 355, 356, - 344, 345, 346, 347, 357, 358, 348, 360, 361, 362, - 363, 365, 366, 367, 368, 370, 349, 350, 351, 372, - 352, 353, 354, 373, 370, 355, 356, 371, 374, 371, - 375, 357, 358, 376, 360, 361, 362, 363, 365, 366, + 317, 318, 333, 334, 319, 328, 335, 336, 320, 337, + 338, 339, 321, 322, 323, 324, 325, 326, 327, 340, + 341, 329, 328, 343, 330, 344, 332, 345, 346, 333, + 334, 347, 328, 335, 336, 348, 337, 338, 339, 349, + 350, 351, 352, 353, 354, 355, 340, 341, 356, 357, + 343, 359, 344, 360, 345, 346, 361, 362, 347, 364, + 365, 366, 348, 367, 369, 371, 349, 350, 351, 352, + 353, 354, 355, 369, 372, 356, 357, 370, 359, 370, + 360, 373, 374, 361, 362, 375, 364, 365, 366, 376, + 367, 369, 371, 377, 378, 379, 380, 383, 378, 384, - 367, 368, 370, 377, 378, 379, 372, 380, 381, 379, - 373, 370, 0, 384, 371, 374, 371, 375, 385, 386, - 376, 387, 388, 389, 0, 0, 491, 492, 0, 388, - 377, 378, 379, 384, 380, 381, 379, 391, 385, 386, - 384, 387, 388, 389, 0, 385, 386, 390, 387, 388, - 389, 390, 392, 491, 492, 393, 388, 391, 493, 395, - 384, 395, 392, 494, 391, 385, 386, 396, 387, 388, - 389, 390, 392, 393, 390, 393, 394, 397, 390, 392, - 396, 395, 393, 394, 391, 493, 395, 396, 395, 392, - 494, 398, 401, 397, 396, 400, 394, 397, 390, 392, + 369, 372, 0, 0, 370, 0, 370, 385, 373, 374, + 386, 387, 375, 388, 489, 390, 376, 383, 387, 384, + 377, 378, 379, 380, 383, 378, 384, 385, 389, 391, + 386, 387, 389, 388, 385, 390, 0, 386, 387, 391, + 388, 489, 390, 392, 383, 387, 384, 400, 401, 391, + 0, 394, 389, 394, 385, 389, 391, 386, 387, 389, + 388, 392, 390, 392, 393, 396, 391, 400, 401, 395, + 392, 393, 490, 394, 400, 401, 391, 402, 394, 389, + 394, 396, 395, 398, 393, 396, 397, 398, 392, 395, + 392, 393, 396, 0, 400, 401, 395, 402, 393, 490, - 393, 399, 393, 394, 397, 399, 398, 396, 395, 400, - 394, 398, 401, 0, 396, 400, 0, 402, 398, 401, - 397, 403, 400, 394, 397, 399, 405, 404, 399, 408, - 405, 406, 399, 398, 404, 495, 400, 402, 398, 401, - 409, 403, 400, 407, 402, 407, 406, 404, 403, 408, - 405, 406, 399, 405, 404, 409, 408, 405, 406, 0, - 409, 404, 495, 410, 402, 407, 410, 409, 403, 411, - 407, 412, 407, 406, 404, 413, 408, 405, 406, 414, - 411, 415, 409, 414, 421, 0, 410, 409, 0, 411, - 410, 412, 407, 410, 496, 413, 411, 416, 412, 416, + 394, 397, 0, 399, 402, 491, 397, 398, 396, 395, + 398, 393, 396, 397, 398, 403, 395, 399, 0, 0, + 407, 404, 403, 399, 402, 404, 405, 0, 397, 406, + 399, 406, 491, 397, 398, 403, 0, 492, 0, 408, + 407, 405, 403, 493, 399, 404, 405, 407, 404, 403, + 399, 406, 404, 405, 408, 411, 406, 409, 406, 408, + 409, 494, 403, 410, 492, 412, 408, 407, 405, 0, + 493, 414, 404, 405, 410, 411, 420, 415, 406, 415, + 409, 408, 411, 410, 409, 412, 408, 409, 494, 413, + 410, 414, 412, 413, 416, 0, 420, 0, 414, 415, - 417, 415, 413, 414, 421, 418, 414, 411, 415, 0, - 414, 421, 418, 410, 417, 420, 411, 498, 412, 416, - 417, 496, 413, 419, 416, 418, 416, 417, 415, 420, - 414, 421, 418, 422, 423, 420, 419, 422, 0, 418, - 0, 417, 420, 419, 498, 424, 416, 417, 425, 501, - 419, 427, 418, 424, 423, 425, 420, 422, 0, 0, - 422, 423, 420, 419, 422, 424, 426, 427, 425, 426, - 419, 427, 424, 0, 0, 425, 501, 435, 427, 436, - 424, 423, 425, 428, 422, 430, 428, 429, 432, 426, - 0, 429, 424, 426, 427, 425, 426, 435, 427, 436, + 496, 410, 411, 420, 415, 419, 415, 409, 416, 418, + 410, 422, 412, 413, 416, 0, 413, 417, 414, 419, + 413, 416, 418, 420, 417, 419, 415, 496, 0, 418, + 421, 422, 419, 499, 421, 416, 418, 417, 422, 423, + 413, 416, 425, 424, 417, 425, 419, 423, 0, 418, + 424, 417, 419, 0, 421, 426, 418, 421, 422, 423, + 499, 421, 0, 424, 417, 425, 423, 430, 433, 425, + 424, 426, 425, 427, 423, 426, 427, 424, 0, 428, + 430, 421, 426, 428, 0, 431, 423, 430, 433, 429, + 424, 431, 425, 427, 430, 433, 500, 434, 426, 428, - 430, 432, 431, 428, 435, 430, 436, 429, 432, 0, - 428, 434, 430, 428, 429, 432, 426, 431, 429, 433, - 437, 434, 431, 438, 435, 433, 436, 430, 432, 431, - 428, 434, 430, 438, 429, 432, 440, 439, 434, 433, - 437, 441, 0, 438, 431, 440, 433, 437, 434, 431, - 438, 443, 433, 439, 442, 444, 440, 439, 434, 444, - 438, 441, 0, 440, 439, 0, 433, 437, 441, 442, - 438, 443, 440, 502, 442, 444, 445, 445, 443, 449, - 439, 442, 444, 440, 439, 446, 444, 452, 441, 446, - 447, 448, 447, 448, 0, 449, 442, 445, 443, 449, + 427, 432, 426, 427, 429, 431, 428, 430, 0, 429, + 428, 432, 431, 435, 430, 433, 429, 434, 431, 436, + 427, 432, 439, 500, 434, 437, 428, 0, 432, 436, + 0, 429, 431, 435, 438, 440, 429, 441, 432, 436, + 435, 437, 439, 438, 434, 437, 436, 442, 432, 439, + 440, 442, 437, 450, 438, 440, 436, 441, 443, 443, + 435, 438, 440, 445, 441, 445, 436, 442, 437, 439, + 438, 444, 437, 450, 442, 444, 448, 440, 442, 443, + 450, 438, 440, 445, 441, 443, 443, 446, 447, 446, + 445, 448, 445, 449, 442, 444, 448, 501, 444, 454, - 502, 442, 444, 445, 445, 451, 449, 452, 450, 446, - 447, 448, 446, 0, 452, 0, 446, 447, 448, 447, - 448, 451, 449, 450, 445, 451, 449, 455, 450, 454, - 0, 456, 451, 453, 452, 450, 446, 447, 448, 457, - 453, 455, 454, 503, 0, 0, 504, 455, 451, 454, - 450, 456, 451, 453, 455, 450, 454, 458, 456, 457, - 453, 458, 459, 0, 0, 0, 457, 453, 455, 454, - 503, 459, 460, 504, 455, 463, 454, 461, 456, 0, - 453, 458, 459, 460, 458, 461, 457, 462, 458, 459, - 463, 462, 460, 464, 0, 463, 464, 461, 459, 460, + 450, 455, 444, 448, 447, 451, 443, 446, 447, 449, + 445, 0, 451, 449, 446, 447, 446, 452, 448, 454, + 449, 455, 444, 448, 501, 451, 454, 453, 455, 456, + 452, 447, 451, 456, 446, 447, 449, 452, 458, 451, + 449, 453, 457, 0, 452, 0, 454, 453, 455, 458, + 463, 457, 451, 456, 453, 459, 456, 452, 458, 0, + 456, 502, 457, 459, 452, 458, 461, 460, 453, 457, + 463, 460, 465, 504, 453, 459, 458, 463, 457, 0, + 456, 461, 459, 466, 462, 458, 461, 462, 502, 457, + 459, 460, 465, 461, 460, 464, 505, 463, 460, 465, - 0, 465, 463, 0, 461, 466, 467, 468, 458, 459, - 460, 462, 461, 464, 462, 466, 470, 463, 462, 460, - 464, 465, 463, 464, 461, 466, 467, 468, 465, 469, - 471, 470, 466, 467, 468, 473, 470, 0, 462, 472, - 464, 506, 466, 470, 0, 471, 472, 469, 465, 469, - 471, 507, 466, 467, 468, 473, 469, 471, 470, 472, - 474, 476, 473, 470, 475, 477, 472, 0, 506, 478, - 476, 474, 471, 472, 469, 508, 469, 471, 507, 475, - 474, 476, 473, 0, 475, 477, 472, 474, 476, 478, - 479, 475, 477, 480, 481, 0, 478, 476, 474, 479, + 504, 468, 459, 466, 462, 464, 467, 471, 461, 0, + 466, 462, 0, 461, 462, 464, 468, 506, 460, 465, + 469, 468, 464, 505, 467, 0, 467, 471, 468, 470, + 466, 462, 464, 467, 471, 469, 470, 473, 475, 472, + 469, 476, 464, 468, 506, 0, 507, 469, 468, 470, + 472, 467, 473, 467, 471, 0, 470, 473, 475, 472, + 474, 476, 469, 470, 473, 475, 472, 469, 476, 474, + 0, 509, 477, 507, 0, 0, 470, 472, 480, 473, + 474, 477, 480, 478, 473, 475, 472, 474, 476, 510, + 0, 479, 477, 478, 511, 478, 474, 481, 509, 477, - 0, 509, 508, 480, 481, 480, 475, 474, 476, 483, - 479, 475, 477, 480, 481, 482, 478, 479, 483, 482, - 480, 481, 485, 511, 485, 0, 479, 484, 509, 483, - 480, 481, 480, 0, 0, 486, 483, 479, 0, 482, - 480, 481, 482, 484, 485, 483, 482, 484, 487, 485, - 511, 485, 488, 486, 484, 486, 483, 489, 512, 0, - 489, 488, 486, 487, 513, 488, 482, 516, 487, 517, - 484, 485, 488, 490, 484, 487, 518, 489, 519, 488, - 486, 520, 486, 521, 489, 512, 490, 489, 488, 522, - 487, 513, 488, 490, 516, 487, 517, 524, 527, 488, + 0, 479, 480, 478, 0, 480, 481, 474, 477, 480, + 478, 479, 483, 0, 483, 482, 510, 481, 479, 477, + 478, 511, 478, 0, 481, 484, 514, 488, 479, 480, + 478, 482, 515, 481, 483, 482, 485, 486, 479, 483, + 488, 483, 482, 484, 481, 484, 486, 488, 516, 517, + 486, 485, 484, 514, 488, 518, 485, 486, 482, 515, + 519, 483, 482, 485, 486, 487, 520, 488, 487, 522, + 484, 525, 484, 486, 488, 516, 517, 486, 485, 526, + 528, 531, 518, 485, 486, 487, 532, 519, 533, 534, + 535, 536, 487, 520, 538, 487, 522, 542, 525, 544, - 490, 528, 530, 518, 489, 519, 532, 534, 520, 535, - 521, 536, 537, 490, 538, 539, 522, 541, 545, 547, - 490, 549, 550, 550, 524, 527, 539, 551, 528, 530, - 552, 554, 555, 532, 534, 556, 535, 557, 536, 537, - 558, 538, 539, 560, 541, 545, 547, 561, 549, 550, - 550, 562, 563, 539, 551, 564, 565, 552, 554, 555, - 566, 567, 556, 569, 557, 570, 571, 558, 572, 575, - 560, 577, 578, 579, 561, 580, 581, 582, 562, 563, - 583, 584, 564, 565, 586, 588, 593, 566, 567, 594, - 569, 0, 570, 571, 0, 572, 575, 591, 577, 578, + 546, 548, 536, 547, 547, 549, 526, 528, 531, 551, + 552, 553, 487, 532, 554, 533, 534, 535, 536, 555, + 557, 538, 558, 559, 542, 560, 544, 546, 548, 536, + 547, 547, 549, 561, 562, 563, 551, 552, 553, 564, + 566, 554, 567, 568, 569, 572, 555, 557, 574, 558, + 559, 575, 560, 576, 577, 578, 579, 580, 581, 583, + 561, 562, 563, 585, 0, 0, 564, 566, 590, 567, + 568, 569, 572, 591, 588, 574, 589, 593, 575, 592, + 576, 577, 578, 579, 580, 581, 583, 588, 590, 589, + 585, 594, 592, 591, 588, 590, 589, 593, 595, 592, - 579, 592, 580, 581, 582, 595, 593, 583, 584, 594, - 591, 586, 588, 593, 592, 596, 594, 591, 595, 597, - 0, 592, 0, 598, 591, 595, 0, 598, 592, 599, - 0, 600, 595, 593, 0, 596, 594, 591, 0, 597, - 605, 592, 596, 0, 591, 595, 597, 598, 592, 599, - 598, 600, 595, 601, 598, 602, 599, 603, 600, 0, - 605, 601, 596, 606, 0, 604, 597, 605, 602, 693, - 606, 608, 603, 601, 598, 602, 599, 603, 600, 604, - 601, 610, 602, 606, 603, 604, 608, 605, 601, 607, - 606, 608, 604, 0, 614, 602, 693, 606, 608, 603, + 591, 588, 595, 589, 593, 0, 592, 596, 597, 0, + 0, 594, 0, 602, 588, 590, 589, 599, 594, 592, + 591, 588, 595, 589, 593, 595, 592, 596, 597, 595, + 599, 598, 600, 602, 596, 597, 601, 599, 594, 598, + 602, 603, 0, 689, 599, 607, 0, 600, 603, 595, + 601, 598, 600, 604, 596, 597, 601, 599, 598, 600, + 602, 603, 691, 601, 599, 607, 598, 605, 603, 604, + 689, 611, 607, 604, 600, 603, 692, 601, 598, 600, + 604, 606, 605, 601, 608, 606, 608, 605, 603, 691, + 610, 611, 607, 0, 605, 609, 604, 610, 611, 609, - 601, 610, 602, 609, 603, 607, 604, 609, 610, 607, - 606, 0, 604, 608, 614, 611, 607, 611, 608, 612, - 615, 614, 0, 612, 0, 622, 695, 609, 610, 696, - 609, 613, 607, 0, 609, 623, 607, 611, 613, 612, - 615, 614, 611, 0, 611, 622, 612, 615, 616, 617, - 612, 613, 622, 695, 609, 623, 696, 618, 613, 616, - 617, 625, 623, 0, 611, 613, 612, 615, 616, 617, - 619, 626, 622, 618, 0, 616, 617, 618, 613, 620, - 0, 625, 623, 620, 618, 619, 616, 617, 625, 621, - 619, 626, 0, 621, 624, 616, 617, 619, 626, 629, + 604, 612, 693, 692, 694, 606, 608, 0, 606, 605, + 610, 608, 606, 608, 605, 609, 613, 610, 611, 614, + 616, 612, 609, 0, 610, 615, 609, 613, 612, 693, + 614, 694, 606, 608, 617, 616, 613, 610, 617, 614, + 616, 615, 609, 613, 619, 615, 614, 616, 612, 618, + 620, 0, 615, 618, 613, 622, 0, 614, 617, 621, + 0, 617, 616, 613, 619, 617, 614, 616, 615, 623, + 620, 619, 615, 618, 621, 622, 618, 620, 626, 621, + 618, 0, 622, 624, 625, 617, 621, 624, 695, 623, + 696, 619, 0, 628, 698, 625, 623, 620, 626, 627, - 618, 627, 697, 620, 618, 627, 620, 631, 625, 624, - 620, 628, 619, 621, 624, 630, 621, 619, 626, 629, - 621, 624, 628, 632, 630, 627, 629, 631, 627, 697, - 620, 628, 627, 632, 631, 630, 624, 633, 628, 634, - 621, 624, 630, 632, 0, 0, 629, 640, 635, 628, - 632, 630, 627, 636, 631, 0, 637, 633, 628, 634, - 632, 635, 630, 0, 633, 638, 634, 640, 635, 637, - 632, 642, 636, 636, 640, 635, 637, 639, 638, 639, - 636, 643, 641, 637, 633, 638, 634, 644, 635, 641, - 639, 642, 638, 646, 640, 635, 637, 639, 642, 636, + 618, 621, 622, 629, 625, 626, 621, 624, 627, 630, + 624, 625, 699, 628, 624, 695, 623, 696, 0, 627, + 628, 698, 625, 629, 631, 626, 627, 0, 632, 630, + 629, 625, 633, 0, 624, 627, 630, 631, 636, 699, + 628, 634, 0, 0, 631, 633, 627, 632, 632, 638, + 629, 631, 633, 0, 634, 632, 630, 639, 636, 633, + 635, 634, 635, 637, 631, 636, 640, 0, 634, 638, + 637, 631, 633, 635, 632, 632, 638, 639, 642, 633, + 635, 634, 644, 637, 639, 636, 640, 635, 634, 635, + 637, 641, 643, 640, 645, 0, 638, 637, 642, 643, - 636, 643, 641, 637, 639, 638, 639, 644, 643, 641, - 645, 648, 638, 646, 644, 647, 641, 639, 642, 649, - 646, 0, 647, 652, 639, 645, 0, 0, 643, 641, - 645, 648, 0, 650, 644, 647, 652, 645, 648, 649, - 646, 651, 647, 652, 651, 653, 649, 650, 650, 647, - 652, 698, 645, 650, 654, 0, 654, 645, 648, 655, - 650, 651, 647, 652, 656, 653, 649, 659, 651, 657, - 652, 651, 653, 699, 650, 650, 654, 656, 698, 655, - 650, 654, 657, 654, 656, 658, 655, 659, 651, 657, - 662, 656, 653, 658, 659, 660, 657, 661, 662, 660, + 635, 0, 644, 700, 639, 642, 641, 635, 646, 644, + 637, 641, 643, 640, 645, 0, 649, 647, 641, 643, + 647, 645, 646, 646, 0, 642, 643, 0, 646, 644, + 700, 651, 648, 641, 0, 646, 649, 647, 641, 643, + 650, 645, 650, 649, 647, 648, 0, 647, 652, 646, + 646, 651, 648, 653, 655, 646, 0, 654, 651, 648, + 0, 652, 650, 649, 647, 654, 653, 650, 652, 650, + 702, 0, 648, 653, 655, 652, 664, 654, 651, 648, + 653, 655, 656, 657, 654, 659, 656, 657, 652, 650, + 0, 658, 654, 653, 0, 652, 664, 702, 659, 658, - 699, 661, 700, 654, 656, 658, 655, 702, 0, 657, - 662, 656, 658, 703, 659, 664, 657, 662, 663, 660, - 658, 661, 660, 668, 661, 662, 660, 666, 661, 700, - 664, 663, 658, 665, 702, 664, 666, 662, 663, 669, - 703, 665, 664, 668, 0, 663, 660, 666, 661, 667, - 668, 667, 670, 665, 666, 671, 670, 664, 663, 669, - 665, 673, 664, 666, 674, 663, 669, 672, 665, 704, - 668, 667, 670, 676, 666, 671, 667, 672, 667, 670, - 665, 673, 671, 670, 674, 0, 669, 672, 673, 675, - 677, 674, 677, 676, 672, 0, 704, 0, 667, 670, + 653, 655, 660, 664, 654, 659, 656, 657, 661, 656, + 657, 658, 659, 656, 657, 0, 661, 660, 658, 0, + 665, 662, 660, 664, 0, 659, 658, 703, 661, 660, + 662, 667, 659, 656, 657, 661, 669, 663, 658, 663, + 665, 662, 666, 661, 660, 670, 666, 665, 662, 660, + 668, 667, 0, 704, 703, 661, 669, 662, 667, 663, + 668, 671, 666, 669, 663, 670, 663, 665, 662, 666, + 668, 672, 670, 666, 673, 671, 673, 668, 667, 675, + 704, 671, 0, 669, 674, 677, 663, 668, 671, 666, + 676, 672, 670, 674, 676, 675, 673, 668, 672, 675, - 676, 678, 671, 675, 672, 706, 679, 707, 673, 675, - 678, 674, 677, 0, 672, 683, 675, 677, 0, 677, - 676, 678, 679, 680, 685, 681, 679, 680, 678, 0, - 675, 0, 706, 679, 707, 683, 675, 678, 708, 677, - 681, 682, 683, 682, 685, 681, 0, 680, 678, 679, - 680, 685, 681, 679, 680, 684, 687, 686, 684, 688, - 689, 682, 683, 709, 710, 708, 711, 681, 682, 690, - 682, 685, 681, 686, 680, 684, 687, 686, 712, 688, - 689, 713, 684, 687, 686, 684, 688, 689, 682, 690, - 709, 710, 714, 711, 717, 719, 690, 720, 722, 725, + 677, 673, 671, 673, 674, 677, 675, 0, 671, 679, + 681, 674, 677, 678, 676, 678, 0, 676, 672, 682, + 674, 676, 675, 673, 683, 680, 675, 677, 680, 679, + 681, 674, 677, 678, 684, 682, 679, 681, 685, 682, + 678, 676, 678, 686, 683, 680, 682, 705, 706, 707, + 708, 683, 680, 709, 684, 680, 679, 681, 685, 710, + 678, 684, 682, 686, 713, 685, 682, 715, 717, 720, + 686, 683, 680, 721, 705, 706, 707, 708, 722, 723, + 709, 684, 728, 730, 731, 685, 710, 732, 735, 736, + 686, 713, 737, 738, 715, 717, 720, 739, 741, 742, - 686, 726, 684, 687, 686, 712, 688, 689, 713, 727, - 728, 733, 735, 736, 737, 740, 690, 741, 742, 714, - 743, 717, 719, 744, 720, 722, 725, 746, 726, 747, - 748, 749, 750, 751, 752, 753, 727, 728, 733, 735, - 736, 737, 740, 754, 741, 742, 756, 743, 757, 758, - 744, 760, 761, 762, 746, 0, 747, 748, 749, 750, - 751, 752, 753, 764, 765, 766, 837, 767, 768, 769, - 754, 839, 0, 756, 840, 757, 758, 841, 760, 761, - 762, 770, 770, 764, 765, 766, 766, 767, 768, 769, - 764, 765, 766, 837, 767, 768, 769, 771, 839, 773, + 721, 743, 744, 745, 746, 722, 723, 747, 748, 728, + 730, 731, 749, 751, 732, 735, 736, 752, 753, 737, + 738, 755, 756, 757, 739, 741, 742, 759, 743, 744, + 745, 746, 760, 762, 747, 748, 761, 831, 763, 749, + 751, 764, 766, 0, 752, 753, 833, 759, 755, 756, + 757, 766, 760, 762, 759, 768, 761, 761, 763, 760, + 762, 764, 766, 761, 831, 763, 765, 765, 764, 766, + 769, 767, 0, 833, 759, 768, 770, 834, 766, 760, + 762, 767, 768, 761, 761, 763, 770, 765, 764, 766, + 769, 767, 771, 765, 765, 772, 770, 769, 767, 771, - 774, 840, 770, 0, 841, 777, 771, 0, 770, 770, - 764, 765, 766, 766, 767, 768, 769, 771, 772, 773, - 774, 775, 778, 776, 771, 777, 773, 774, 772, 770, - 776, 775, 777, 771, 781, 0, 779, 0, 772, 782, - 0, 775, 778, 776, 771, 772, 773, 774, 775, 778, - 776, 779, 777, 780, 781, 772, 779, 776, 775, 782, - 0, 781, 780, 779, 783, 772, 782, 784, 775, 778, - 776, 842, 844, 780, 0, 787, 785, 787, 779, 783, - 780, 781, 784, 779, 783, 788, 782, 784, 786, 780, - 785, 783, 786, 789, 784, 0, 785, 787, 842, 844, + 773, 774, 768, 770, 834, 776, 0, 0, 767, 777, + 835, 783, 771, 770, 765, 772, 774, 769, 767, 771, + 773, 774, 772, 770, 775, 776, 771, 773, 774, 777, + 778, 783, 776, 775, 779, 0, 777, 835, 783, 771, + 0, 0, 772, 774, 775, 778, 0, 773, 774, 779, + 778, 775, 776, 780, 779, 781, 777, 778, 783, 781, + 775, 779, 782, 784, 782, 836, 0, 780, 786, 0, + 0, 775, 778, 780, 0, 781, 779, 778, 785, 838, + 780, 779, 781, 784, 782, 785, 781, 788, 786, 782, + 784, 782, 836, 789, 780, 786, 790, 787, 785, 787, - 780, 791, 787, 785, 787, 788, 783, 845, 786, 784, - 794, 783, 788, 789, 784, 786, 795, 785, 790, 786, - 789, 791, 796, 785, 787, 790, 793, 792, 791, 792, - 794, 795, 788, 0, 845, 786, 795, 794, 790, 793, - 789, 797, 796, 795, 798, 790, 793, 792, 791, 796, - 799, 0, 790, 793, 792, 0, 792, 794, 795, 798, - 801, 797, 800, 795, 798, 790, 793, 801, 797, 796, - 799, 798, 802, 793, 792, 803, 800, 799, 804, 0, - 801, 805, 800, 0, 806, 0, 798, 801, 797, 800, - 807, 798, 802, 0, 801, 803, 808, 799, 804, 802, + 780, 791, 781, 0, 0, 785, 838, 788, 789, 793, + 784, 782, 785, 789, 788, 786, 790, 787, 792, 796, + 789, 791, 797, 790, 787, 785, 787, 794, 791, 793, + 795, 798, 799, 792, 788, 789, 793, 795, 792, 796, + 789, 794, 797, 790, 787, 792, 796, 794, 791, 797, + 795, 798, 799, 800, 794, 801, 793, 795, 798, 799, + 792, 839, 0, 802, 795, 792, 796, 802, 794, 797, + 0, 804, 805, 800, 794, 801, 806, 795, 798, 799, + 800, 803, 801, 0, 803, 807, 804, 802, 839, 810, + 802, 804, 805, 0, 802, 812, 806, 808, 804, 805, - 808, 805, 803, 800, 806, 804, 810, 801, 805, 800, - 807, 806, 809, 0, 811, 809, 812, 807, 813, 802, - 808, 810, 803, 808, 0, 804, 810, 808, 805, 848, - 0, 806, 809, 810, 811, 0, 812, 807, 813, 809, - 816, 811, 809, 812, 814, 813, 817, 808, 810, 815, - 817, 819, 818, 810, 0, 819, 848, 814, 0, 809, - 816, 811, 815, 812, 814, 813, 817, 816, 821, 815, - 852, 814, 818, 817, 0, 819, 815, 817, 819, 818, - 820, 820, 819, 821, 814, 822, 822, 816, 821, 815, - 823, 814, 854, 817, 823, 821, 815, 852, 0, 818, + 800, 803, 801, 806, 0, 807, 842, 809, 803, 810, + 808, 803, 807, 804, 802, 812, 810, 808, 804, 805, + 809, 811, 812, 806, 808, 811, 813, 809, 803, 0, + 813, 815, 807, 842, 809, 846, 810, 808, 814, 814, + 848, 811, 812, 822, 808, 0, 815, 809, 811, 0, + 813, 815, 811, 813, 809, 816, 816, 813, 815, 814, + 817, 818, 846, 822, 817, 814, 814, 848, 811, 849, + 822, 854, 819, 815, 820, 818, 816, 813, 815, 0, + 823, 818, 816, 816, 817, 819, 814, 817, 818, 820, + 822, 817, 819, 821, 820, 825, 849, 821, 854, 819, - 855, 820, 819, 825, 824, 826, 822, 820, 820, 828, - 821, 0, 822, 822, 823, 821, 825, 823, 824, 854, - 826, 823, 827, 825, 824, 826, 827, 855, 820, 828, - 825, 824, 826, 822, 829, 831, 828, 830, 830, 832, - 0, 823, 0, 825, 0, 824, 827, 826, 858, 827, - 825, 824, 826, 827, 829, 831, 828, 833, 830, 832, - 0, 829, 831, 834, 830, 830, 832, 834, 835, 836, - 861, 833, 835, 827, 862, 858, 865, 833, 866, 868, - 869, 829, 831, 870, 833, 830, 832, 834, 872, 836, - 834, 873, 835, 877, 834, 835, 836, 861, 833, 835, + 823, 820, 818, 816, 824, 824, 826, 823, 818, 827, + 828, 817, 819, 855, 828, 825, 820, 821, 830, 819, + 821, 820, 825, 827, 821, 824, 826, 823, 858, 827, + 859, 824, 824, 826, 828, 829, 827, 828, 830, 829, + 855, 828, 825, 861, 821, 830, 862, 863, 865, 866, + 827, 870, 824, 826, 872, 858, 827, 859, 873, 829, + 874, 828, 829, 879, 880, 830, 829, 0, 881, 882, + 861, 0, 0, 862, 863, 865, 866, 884, 870, 885, + 887, 872, 0, 883, 0, 873, 829, 874, 881, 882, + 879, 880, 883, 885, 886, 881, 882, 884, 889, 885, - 879, 862, 880, 865, 833, 866, 868, 869, 881, 886, - 870, 887, 888, 889, 834, 872, 836, 890, 873, 835, - 877, 891, 894, 893, 0, 0, 890, 879, 0, 880, - 893, 892, 888, 889, 0, 881, 886, 890, 887, 888, - 889, 891, 894, 893, 890, 892, 896, 0, 891, 894, - 893, 892, 895, 890, 895, 897, 898, 893, 892, 888, - 889, 896, 944, 899, 890, 899, 896, 900, 891, 894, - 893, 901, 892, 896, 895, 897, 898, 902, 892, 895, - 903, 895, 897, 898, 0, 899, 904, 900, 896, 944, - 899, 901, 899, 896, 900, 906, 905, 902, 901, 907, + 887, 886, 890, 883, 884, 0, 885, 887, 0, 888, + 883, 888, 891, 889, 886, 881, 882, 893, 889, 883, + 885, 886, 890, 894, 884, 889, 885, 887, 886, 890, + 883, 888, 891, 892, 895, 892, 888, 893, 888, 891, + 889, 886, 0, 894, 893, 889, 896, 897, 898, 890, + 894, 936, 900, 938, 895, 892, 899, 898, 888, 891, + 892, 895, 892, 0, 893, 901, 896, 897, 898, 902, + 894, 899, 900, 896, 897, 898, 899, 903, 936, 900, + 938, 895, 892, 899, 898, 901, 905, 904, 906, 902, + 907, 910, 901, 896, 897, 898, 902, 903, 899, 900, - 903, 895, 897, 898, 902, 905, 904, 903, 908, 909, - 906, 910, 899, 904, 900, 906, 905, 0, 901, 907, - 911, 912, 906, 905, 902, 913, 907, 903, 908, 909, - 914, 910, 905, 904, 912, 908, 909, 906, 910, 915, - 911, 912, 906, 905, 916, 913, 907, 911, 912, 917, - 914, 916, 913, 917, 918, 908, 909, 914, 910, 915, - 946, 912, 0, 920, 916, 921, 915, 911, 912, 919, - 0, 916, 913, 917, 918, 922, 917, 914, 916, 952, - 917, 918, 0, 920, 919, 921, 915, 946, 925, 919, - 920, 916, 921, 924, 926, 922, 919, 923, 927, 923, + 904, 909, 908, 899, 903, 909, 905, 904, 906, 908, + 907, 910, 901, 905, 904, 906, 902, 907, 910, 0, + 912, 943, 908, 913, 903, 909, 911, 904, 909, 908, + 945, 914, 909, 905, 904, 906, 908, 907, 910, 946, + 912, 911, 915, 913, 915, 916, 911, 912, 943, 908, + 913, 914, 909, 911, 917, 918, 919, 945, 914, 916, + 921, 949, 0, 0, 915, 916, 946, 912, 911, 915, + 913, 915, 916, 911, 917, 918, 919, 920, 914, 925, + 921, 917, 918, 919, 920, 922, 916, 921, 949, 922, + 923, 915, 916, 924, 923, 926, 952, 920, 927, 925, - 917, 918, 922, 0, 0, 0, 952, 924, 925, 929, - 920, 919, 921, 924, 926, 925, 919, 933, 927, 923, - 924, 926, 922, 928, 923, 927, 923, 930, 931, 929, - 928, 930, 931, 932, 924, 925, 929, 933, 0, 954, - 924, 926, 934, 928, 933, 927, 923, 935, 932, 0, - 928, 930, 931, 932, 930, 931, 929, 928, 930, 931, - 932, 936, 934, 937, 933, 938, 954, 935, 955, 934, - 928, 958, 938, 961, 935, 932, 937, 962, 930, 931, - 932, 936, 963, 937, 0, 938, 966, 967, 936, 934, - 937, 968, 938, 0, 935, 955, 969, 970, 958, 938, + 0, 917, 918, 919, 920, 0, 925, 921, 924, 922, + 928, 920, 922, 924, 923, 926, 922, 923, 927, 929, + 924, 923, 926, 952, 920, 927, 925, 930, 953, 954, + 928, 957, 929, 958, 930, 924, 922, 928, 0, 929, + 924, 923, 926, 959, 960, 927, 929, 930, 961, 983, + 0, 957, 963, 958, 930, 953, 954, 928, 957, 929, + 958, 930, 0, 959, 960, 962, 929, 964, 961, 962, + 959, 960, 963, 965, 930, 961, 983, 966, 957, 963, + 958, 967, 964, 968, 969, 970, 969, 964, 0, 962, + 959, 960, 962, 965, 964, 961, 962, 966, 972, 963, - 961, 971, 972, 937, 962, 971, 966, 967, 936, 963, - 937, 968, 938, 966, 967, 973, 969, 970, 968, 974, - 975, 976, 972, 969, 970, 971, 0, 993, 971, 972, - 973, 977, 971, 966, 967, 973, 978, 0, 968, 974, - 975, 976, 973, 969, 970, 980, 974, 975, 976, 972, - 982, 977, 971, 979, 993, 979, 978, 973, 977, 983, - 0, 981, 973, 978, 984, 980, 974, 975, 976, 986, - 982, 0, 980, 0, 981, 979, 0, 982, 977, 983, - 979, 981, 979, 978, 984, 985, 983, 987, 981, 986, - 988, 984, 980, 995, 0, 990, 986, 982, 991, 992, + 965, 967, 971, 968, 966, 970, 969, 973, 967, 964, + 968, 969, 970, 969, 964, 971, 962, 974, 972, 976, + 965, 975, 971, 977, 966, 972, 0, 973, 967, 971, + 968, 0, 970, 969, 973, 985, 975, 974, 978, 976, + 0, 975, 971, 977, 974, 972, 976, 979, 975, 971, + 977, 978, 980, 981, 973, 979, 982, 987, 978, 989, + 990, 993, 985, 975, 974, 978, 976, 979, 975, 995, + 977, 997, 980, 981, 979, 992, 982, 994, 978, 980, + 981, 993, 979, 982, 987, 978, 989, 990, 993, 995, + 992, 997, 994, 996, 979, 992, 995, 994, 997, 980, - 985, 981, 979, 988, 997, 985, 983, 987, 981, 999, - 988, 984, 985, 989, 987, 990, 986, 988, 991, 992, - 995, 989, 990, 1000, 1002, 991, 992, 985, 0, 1003, - 988, 997, 985, 989, 987, 1005, 999, 988, 1004, 1002, - 989, 1006, 990, 1007, 1002, 991, 992, 1008, 989, 1003, - 1000, 1002, 1010, 1004, 1006, 1005, 1003, 0, 1004, 1011, - 989, 1006, 1005, 1007, 1009, 1004, 1002, 1008, 1006, 1013, - 1007, 1002, 1010, 1016, 1008, 1009, 1003, 1017, 1018, 1010, - 1004, 1006, 1005, 1019, 1009, 1004, 1011, 1020, 1006, 1023, - 1007, 1009, 1018, 1016, 1008, 1024, 1013, 1017, 1018, 1010, + 981, 998, 992, 982, 994, 0, 996, 1000, 993, 1001, + 1003, 1006, 999, 996, 0, 1007, 995, 992, 997, 994, + 996, 998, 992, 999, 994, 1009, 1010, 1000, 998, 1008, + 0, 1006, 999, 996, 1000, 1007, 1001, 1003, 1006, 999, + 996, 1013, 1007, 1008, 1014, 1009, 1010, 0, 998, 1008, + 999, 0, 1009, 1010, 1000, 0, 1008, 0, 1006, 999, + 0, 1013, 1007, 0, 1014, 0, 0, 0, 1013, 0, + 1008, 1014, 1009, 1010, 0, 0, 1008, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1013, 0, + 0, 1014, 1016, 1016, 1016, 1016, 1016, 1017, 0, 0, - 1016, 0, 1009, 1019, 1017, 1018, 0, 1020, 0, 1023, - 1019, 1009, 0, 0, 1020, 1024, 1023, 0, 0, 1018, - 1016, 0, 1024, 0, 1017, 1018, 0, 0, 0, 0, - 1019, 0, 0, 0, 1020, 0, 1023, 0, 0, 0, - 0, 0, 1024, 1026, 1026, 1026, 1026, 1026, 1027, 0, - 0, 1027, 1027, 1029, 1029, 1029, 0, 1029, 1030, 0, - 1030, 1030, 1030, 1031, 0, 1031, 1031, 1031, 1032, 0, - 1032, 1032, 1032, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, - 1025 + 1017, 1017, 1019, 1019, 1019, 0, 1019, 1020, 0, 1020, + 1020, 1020, 1021, 0, 1021, 1021, 1021, 1022, 0, 1022, + 1022, 1022, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015 } ; /* The intent behind this definition is that it'll catch @@ -1925,7 +1908,7 @@ static const flex_int16_t yy_chk[4142] = static thread_local std::stringstream strbuf; -#line 1929 "flex_lexer.cpp" +#line 1911 "flex_lexer.cpp" /*************************** ** Section 2: Rules @@ -1939,7 +1922,7 @@ static thread_local std::stringstream strbuf; /*************************** ** Section 3: Rules ***************************/ -#line 1943 "flex_lexer.cpp" +#line 1925 "flex_lexer.cpp" #define INITIAL 0 #define singlequotedstring 1 @@ -2226,7 +2209,7 @@ YY_DECL #line 56 "flex_lexer.l" -#line 2230 "flex_lexer.cpp" +#line 2212 "flex_lexer.cpp" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -2253,13 +2236,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1026 ) + if ( yy_current_state >= 1016 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; ++yy_cp; } - while ( yy_current_state != 1025 ); + while ( yy_current_state != 1015 ); yy_cp = yyg->yy_last_accepting_cpos; yy_current_state = yyg->yy_last_accepting_state; @@ -2389,573 +2372,573 @@ TOKEN(EXPLAIN) case 22: YY_RULE_SETUP #line 81 "flex_lexer.l" -TOKEN(HISTORY) +TOKEN(INTEGER) YY_BREAK case 23: YY_RULE_SETUP #line 82 "flex_lexer.l" -TOKEN(INTEGER) +TOKEN(NATURAL) YY_BREAK case 24: YY_RULE_SETUP #line 83 "flex_lexer.l" -TOKEN(NATURAL) +TOKEN(PREPARE) YY_BREAK case 25: YY_RULE_SETUP #line 84 "flex_lexer.l" -TOKEN(PREPARE) +TOKEN(PRIMARY) YY_BREAK case 26: YY_RULE_SETUP #line 85 "flex_lexer.l" -TOKEN(PRIMARY) +TOKEN(SCHEMAS) YY_BREAK case 27: YY_RULE_SETUP #line 86 "flex_lexer.l" -TOKEN(SCHEMAS) +TOKEN(SPATIAL) YY_BREAK case 28: YY_RULE_SETUP #line 87 "flex_lexer.l" -TOKEN(SPATIAL) +TOKEN(VARCHAR) YY_BREAK case 29: YY_RULE_SETUP #line 88 "flex_lexer.l" -TOKEN(VARCHAR) +TOKEN(VIRTUAL) YY_BREAK case 30: YY_RULE_SETUP #line 89 "flex_lexer.l" -TOKEN(VIRTUAL) +TOKEN(BEFORE) YY_BREAK case 31: YY_RULE_SETUP #line 90 "flex_lexer.l" -TOKEN(BEFORE) +TOKEN(COLUMN) YY_BREAK case 32: YY_RULE_SETUP #line 91 "flex_lexer.l" -TOKEN(COLUMN) +TOKEN(CREATE) YY_BREAK case 33: YY_RULE_SETUP #line 92 "flex_lexer.l" -TOKEN(CREATE) +TOKEN(DELETE) YY_BREAK case 34: YY_RULE_SETUP #line 93 "flex_lexer.l" -TOKEN(DELETE) +TOKEN(DIRECT) YY_BREAK case 35: YY_RULE_SETUP #line 94 "flex_lexer.l" -TOKEN(DIRECT) +TOKEN(DOUBLE) YY_BREAK case 36: YY_RULE_SETUP #line 95 "flex_lexer.l" -TOKEN(DOUBLE) +TOKEN(ESCAPE) YY_BREAK case 37: YY_RULE_SETUP #line 96 "flex_lexer.l" -TOKEN(ESCAPE) +TOKEN(EXCEPT) YY_BREAK case 38: YY_RULE_SETUP #line 97 "flex_lexer.l" -TOKEN(EXCEPT) +TOKEN(EXISTS) YY_BREAK case 39: YY_RULE_SETUP #line 98 "flex_lexer.l" -TOKEN(EXISTS) +TOKEN(EXTRACT) YY_BREAK case 40: YY_RULE_SETUP #line 99 "flex_lexer.l" -TOKEN(EXTRACT) +TOKEN(GLOBAL) YY_BREAK case 41: YY_RULE_SETUP #line 100 "flex_lexer.l" -TOKEN(GLOBAL) +TOKEN(HAVING) YY_BREAK case 42: YY_RULE_SETUP #line 101 "flex_lexer.l" -TOKEN(HAVING) +TOKEN(IMPORT) YY_BREAK case 43: YY_RULE_SETUP #line 102 "flex_lexer.l" -TOKEN(IMPORT) +TOKEN(INSERT) YY_BREAK case 44: YY_RULE_SETUP #line 103 "flex_lexer.l" -TOKEN(INSERT) +TOKEN(ISNULL) YY_BREAK case 45: YY_RULE_SETUP #line 104 "flex_lexer.l" -TOKEN(ISNULL) +TOKEN(OFFSET) YY_BREAK case 46: YY_RULE_SETUP #line 105 "flex_lexer.l" -TOKEN(OFFSET) +TOKEN(RENAME) YY_BREAK case 47: YY_RULE_SETUP #line 106 "flex_lexer.l" -TOKEN(RENAME) +TOKEN(SCHEMA) YY_BREAK case 48: YY_RULE_SETUP #line 107 "flex_lexer.l" -TOKEN(SCHEMA) +TOKEN(SELECT) YY_BREAK case 49: YY_RULE_SETUP #line 108 "flex_lexer.l" -TOKEN(SELECT) +TOKEN(SORTED) YY_BREAK case 50: YY_RULE_SETUP #line 109 "flex_lexer.l" -TOKEN(SORTED) +TOKEN(TABLES) YY_BREAK case 51: YY_RULE_SETUP #line 110 "flex_lexer.l" -TOKEN(TABLES) +TOKEN(UNIQUE) YY_BREAK case 52: YY_RULE_SETUP #line 111 "flex_lexer.l" -TOKEN(UNIQUE) +TOKEN(UNLOAD) YY_BREAK case 53: YY_RULE_SETUP #line 112 "flex_lexer.l" -TOKEN(UNLOAD) +TOKEN(UPDATE) YY_BREAK case 54: YY_RULE_SETUP #line 113 "flex_lexer.l" -TOKEN(UPDATE) +TOKEN(VALUES) YY_BREAK case 55: YY_RULE_SETUP #line 114 "flex_lexer.l" -TOKEN(VALUES) +TOKEN(AFTER) YY_BREAK case 56: YY_RULE_SETUP #line 115 "flex_lexer.l" -TOKEN(AFTER) +TOKEN(ALTER) YY_BREAK case 57: YY_RULE_SETUP #line 116 "flex_lexer.l" -TOKEN(ALTER) +TOKEN(ARRAY) YY_BREAK case 58: YY_RULE_SETUP #line 117 "flex_lexer.l" -TOKEN(ARRAY) +TOKEN(CROSS) YY_BREAK case 59: YY_RULE_SETUP #line 118 "flex_lexer.l" -TOKEN(CROSS) +TOKEN(DELTA) YY_BREAK case 60: YY_RULE_SETUP #line 119 "flex_lexer.l" -TOKEN(DELTA) +TOKEN(FLOAT) YY_BREAK case 61: YY_RULE_SETUP #line 120 "flex_lexer.l" -TOKEN(FLOAT) +TOKEN(GROUP) YY_BREAK case 62: YY_RULE_SETUP #line 121 "flex_lexer.l" -TOKEN(GROUP) +TOKEN(INDEX) YY_BREAK case 63: YY_RULE_SETUP #line 122 "flex_lexer.l" -TOKEN(INDEX) +TOKEN(INNER) YY_BREAK case 64: YY_RULE_SETUP #line 123 "flex_lexer.l" -TOKEN(INNER) +TOKEN(LIMIT) YY_BREAK case 65: YY_RULE_SETUP #line 124 "flex_lexer.l" -TOKEN(LIMIT) +TOKEN(LOCAL) YY_BREAK case 66: YY_RULE_SETUP #line 125 "flex_lexer.l" -TOKEN(LOCAL) +TOKEN(MERGE) YY_BREAK case 67: YY_RULE_SETUP #line 126 "flex_lexer.l" -TOKEN(MERGE) +TOKEN(MINUS) YY_BREAK case 68: YY_RULE_SETUP #line 127 "flex_lexer.l" -TOKEN(MINUS) +TOKEN(ORDER) YY_BREAK case 69: YY_RULE_SETUP #line 128 "flex_lexer.l" -TOKEN(ORDER) +TOKEN(OUTER) YY_BREAK case 70: YY_RULE_SETUP #line 129 "flex_lexer.l" -TOKEN(OUTER) +TOKEN(RIGHT) YY_BREAK case 71: YY_RULE_SETUP #line 130 "flex_lexer.l" -TOKEN(RIGHT) +TOKEN(TABLE) YY_BREAK case 72: YY_RULE_SETUP #line 131 "flex_lexer.l" -TOKEN(TABLE) +TOKEN(UNION) YY_BREAK case 73: YY_RULE_SETUP #line 132 "flex_lexer.l" -TOKEN(UNION) +TOKEN(USING) YY_BREAK case 74: YY_RULE_SETUP #line 133 "flex_lexer.l" -TOKEN(USING) +TOKEN(WHERE) YY_BREAK case 75: YY_RULE_SETUP #line 134 "flex_lexer.l" -TOKEN(WHERE) +TOKEN(CALL) YY_BREAK case 76: YY_RULE_SETUP #line 135 "flex_lexer.l" -TOKEN(CALL) +TOKEN(CASE) YY_BREAK case 77: YY_RULE_SETUP #line 136 "flex_lexer.l" -TOKEN(CASE) +TOKEN(CHAR) YY_BREAK case 78: YY_RULE_SETUP #line 137 "flex_lexer.l" -TOKEN(CHAR) +TOKEN(DATE) YY_BREAK case 79: YY_RULE_SETUP #line 138 "flex_lexer.l" -TOKEN(DATE) +TOKEN(DESC) YY_BREAK case 80: YY_RULE_SETUP #line 139 "flex_lexer.l" -TOKEN(DESC) +TOKEN(DROP) YY_BREAK case 81: YY_RULE_SETUP #line 140 "flex_lexer.l" -TOKEN(DROP) +TOKEN(ELSE) YY_BREAK case 82: YY_RULE_SETUP #line 141 "flex_lexer.l" -TOKEN(ELSE) +TOKEN(FILE) YY_BREAK case 83: YY_RULE_SETUP #line 142 "flex_lexer.l" -TOKEN(FILE) +TOKEN(FROM) YY_BREAK case 84: YY_RULE_SETUP #line 143 "flex_lexer.l" -TOKEN(FROM) +TOKEN(FULL) YY_BREAK case 85: YY_RULE_SETUP #line 144 "flex_lexer.l" -TOKEN(FULL) +TOKEN(HASH) YY_BREAK case 86: YY_RULE_SETUP #line 145 "flex_lexer.l" -TOKEN(HASH) +TOKEN(HINT) YY_BREAK case 87: YY_RULE_SETUP #line 146 "flex_lexer.l" -TOKEN(HINT) +TOKEN(INTO) YY_BREAK case 88: YY_RULE_SETUP #line 147 "flex_lexer.l" -TOKEN(INTO) +TOKEN(JOIN) YY_BREAK case 89: YY_RULE_SETUP #line 148 "flex_lexer.l" -TOKEN(JOIN) +TOKEN(LEFT) YY_BREAK case 90: YY_RULE_SETUP #line 149 "flex_lexer.l" -TOKEN(LEFT) +TOKEN(LIKE) YY_BREAK case 91: YY_RULE_SETUP #line 150 "flex_lexer.l" -TOKEN(LIKE) +TOKEN(ILIKE) YY_BREAK case 92: YY_RULE_SETUP #line 151 "flex_lexer.l" -TOKEN(ILIKE) +TOKEN(LOAD) YY_BREAK case 93: YY_RULE_SETUP #line 152 "flex_lexer.l" -TOKEN(LOAD) +TOKEN(LONG) YY_BREAK case 94: YY_RULE_SETUP #line 153 "flex_lexer.l" -TOKEN(LONG) +TOKEN(NULL) YY_BREAK case 95: YY_RULE_SETUP #line 154 "flex_lexer.l" -TOKEN(NULL) +TOKEN(PLAN) YY_BREAK case 96: YY_RULE_SETUP #line 155 "flex_lexer.l" -TOKEN(PLAN) +TOKEN(SHOW) YY_BREAK case 97: YY_RULE_SETUP #line 156 "flex_lexer.l" -TOKEN(SHOW) +TOKEN(TEXT) YY_BREAK case 98: YY_RULE_SETUP #line 157 "flex_lexer.l" -TOKEN(TEXT) +TOKEN(THEN) YY_BREAK case 99: YY_RULE_SETUP #line 158 "flex_lexer.l" -TOKEN(THEN) +TOKEN(TIME) YY_BREAK case 100: YY_RULE_SETUP #line 159 "flex_lexer.l" -TOKEN(TIME) +TOKEN(VIEW) YY_BREAK case 101: YY_RULE_SETUP #line 160 "flex_lexer.l" -TOKEN(VIEW) +TOKEN(WHEN) YY_BREAK case 102: YY_RULE_SETUP #line 161 "flex_lexer.l" -TOKEN(WHEN) +TOKEN(WITH) YY_BREAK case 103: YY_RULE_SETUP #line 162 "flex_lexer.l" -TOKEN(WITH) +TOKEN(ADD) YY_BREAK case 104: YY_RULE_SETUP #line 163 "flex_lexer.l" -TOKEN(ADD) +TOKEN(ALL) YY_BREAK case 105: YY_RULE_SETUP #line 164 "flex_lexer.l" -TOKEN(ALL) +TOKEN(AND) YY_BREAK case 106: YY_RULE_SETUP #line 165 "flex_lexer.l" -TOKEN(AND) +TOKEN(ASC) YY_BREAK case 107: YY_RULE_SETUP #line 166 "flex_lexer.l" -TOKEN(ASC) +TOKEN(CSV) YY_BREAK case 108: YY_RULE_SETUP #line 167 "flex_lexer.l" -TOKEN(CSV) +TOKEN(END) YY_BREAK case 109: YY_RULE_SETUP #line 168 "flex_lexer.l" -TOKEN(END) +TOKEN(FOR) YY_BREAK case 110: YY_RULE_SETUP #line 169 "flex_lexer.l" -TOKEN(FOR) +TOKEN(INT) YY_BREAK case 111: YY_RULE_SETUP #line 170 "flex_lexer.l" -TOKEN(INT) +TOKEN(KEY) YY_BREAK case 112: YY_RULE_SETUP #line 171 "flex_lexer.l" -TOKEN(KEY) +TOKEN(NOT) YY_BREAK case 113: YY_RULE_SETUP #line 172 "flex_lexer.l" -TOKEN(NOT) +TOKEN(OFF) YY_BREAK case 114: YY_RULE_SETUP #line 173 "flex_lexer.l" -TOKEN(OFF) +TOKEN(SET) YY_BREAK case 115: YY_RULE_SETUP #line 174 "flex_lexer.l" -TOKEN(SET) +TOKEN(TBL) YY_BREAK case 116: YY_RULE_SETUP #line 175 "flex_lexer.l" -TOKEN(TBL) +TOKEN(TOP) YY_BREAK case 117: YY_RULE_SETUP #line 176 "flex_lexer.l" -TOKEN(TOP) +TOKEN(AS) YY_BREAK case 118: YY_RULE_SETUP #line 177 "flex_lexer.l" -TOKEN(AS) +TOKEN(BY) YY_BREAK case 119: YY_RULE_SETUP #line 178 "flex_lexer.l" -TOKEN(BY) +TOKEN(IF) YY_BREAK case 120: YY_RULE_SETUP #line 179 "flex_lexer.l" -TOKEN(IF) +TOKEN(IN) YY_BREAK case 121: YY_RULE_SETUP #line 180 "flex_lexer.l" -TOKEN(IN) +TOKEN(IS) YY_BREAK case 122: YY_RULE_SETUP #line 181 "flex_lexer.l" -TOKEN(IS) +TOKEN(OF) YY_BREAK case 123: YY_RULE_SETUP #line 182 "flex_lexer.l" -TOKEN(OF) +TOKEN(ON) YY_BREAK case 124: YY_RULE_SETUP #line 183 "flex_lexer.l" -TOKEN(ON) +TOKEN(OR) YY_BREAK case 125: YY_RULE_SETUP #line 184 "flex_lexer.l" -TOKEN(OR) +TOKEN(TO) YY_BREAK case 126: YY_RULE_SETUP #line 185 "flex_lexer.l" -TOKEN(TO) +TOKEN(SECOND) YY_BREAK case 127: YY_RULE_SETUP #line 186 "flex_lexer.l" -TOKEN(SECOND) +TOKEN(MINUTE) YY_BREAK case 128: YY_RULE_SETUP #line 187 "flex_lexer.l" -TOKEN(MINUTE) +TOKEN(HOUR) YY_BREAK case 129: YY_RULE_SETUP #line 188 "flex_lexer.l" -TOKEN(HOUR) +TOKEN(DAY) YY_BREAK case 130: YY_RULE_SETUP #line 189 "flex_lexer.l" -TOKEN(DAY) +TOKEN(MONTH) YY_BREAK case 131: YY_RULE_SETUP #line 190 "flex_lexer.l" -TOKEN(MONTH) +TOKEN(YEAR) YY_BREAK case 132: YY_RULE_SETUP #line 191 "flex_lexer.l" -TOKEN(YEAR) +TOKEN(TRUE) YY_BREAK case 133: YY_RULE_SETUP #line 192 "flex_lexer.l" -TOKEN(TRUE) - YY_BREAK -case 134: -YY_RULE_SETUP -#line 193 "flex_lexer.l" TOKEN(FALSE) YY_BREAK /* Allow =/== see https://sqlite.org/lang_expr.html#collateop */ +case 134: +YY_RULE_SETUP +#line 195 "flex_lexer.l" +TOKEN(EQUALS) + YY_BREAK case 135: YY_RULE_SETUP #line 196 "flex_lexer.l" -TOKEN(EQUALS) +TOKEN(NOTEQUALS) YY_BREAK case 136: YY_RULE_SETUP @@ -2965,99 +2948,94 @@ TOKEN(NOTEQUALS) case 137: YY_RULE_SETUP #line 198 "flex_lexer.l" -TOKEN(NOTEQUALS) +TOKEN(LESSEQ) YY_BREAK case 138: YY_RULE_SETUP #line 199 "flex_lexer.l" -TOKEN(LESSEQ) +TOKEN(GREATEREQ) YY_BREAK case 139: YY_RULE_SETUP #line 200 "flex_lexer.l" -TOKEN(GREATEREQ) +TOKEN(CONCAT) YY_BREAK case 140: YY_RULE_SETUP -#line 201 "flex_lexer.l" -TOKEN(CONCAT) - YY_BREAK -case 141: -YY_RULE_SETUP -#line 203 "flex_lexer.l" +#line 202 "flex_lexer.l" { return yytext[0]; } YY_BREAK +case 141: +#line 205 "flex_lexer.l" case 142: -#line 206 "flex_lexer.l" -case 143: YY_RULE_SETUP -#line 206 "flex_lexer.l" +#line 205 "flex_lexer.l" { yylval->fval = atof(yytext); return SQL_FLOATVAL; } YY_BREAK -case 144: +case 143: YY_RULE_SETUP -#line 211 "flex_lexer.l" +#line 210 "flex_lexer.l" { yylval->ival = atol(yytext); return SQL_INTVAL; } YY_BREAK -case 145: +case 144: YY_RULE_SETUP -#line 216 "flex_lexer.l" +#line 215 "flex_lexer.l" { // Crop the leading and trailing quote char yylval->sval = hsql::substr(yytext, 1, strlen(yytext)-1); return SQL_IDENTIFIER; } YY_BREAK -case 146: +case 145: YY_RULE_SETUP -#line 222 "flex_lexer.l" +#line 221 "flex_lexer.l" { yylval->sval = strdup(yytext); return SQL_IDENTIFIER; } YY_BREAK +case 146: +YY_RULE_SETUP +#line 226 "flex_lexer.l" +{ BEGIN singlequotedstring; strbuf = std::stringstream{}; } + YY_BREAK case 147: YY_RULE_SETUP #line 227 "flex_lexer.l" -{ BEGIN singlequotedstring; strbuf = std::stringstream{}; } - YY_BREAK -case 148: -YY_RULE_SETUP -#line 228 "flex_lexer.l" { strbuf << '\''; } YY_BREAK -case 149: -/* rule 149 can match eol */ +case 148: +/* rule 148 can match eol */ YY_RULE_SETUP -#line 229 "flex_lexer.l" +#line 228 "flex_lexer.l" { strbuf << yytext; } YY_BREAK -case 150: +case 149: YY_RULE_SETUP -#line 230 "flex_lexer.l" +#line 229 "flex_lexer.l" { BEGIN 0; yylval->sval = strdup(strbuf.str().c_str()); return SQL_STRING; } YY_BREAK case YY_STATE_EOF(singlequotedstring): -#line 231 "flex_lexer.l" +#line 230 "flex_lexer.l" { fprintf(stderr, "[SQL-Lexer-Error] Unterminated string\n"); return 0; } YY_BREAK +case 150: +YY_RULE_SETUP +#line 232 "flex_lexer.l" +{ fprintf(stderr, "[SQL-Lexer-Error] Unknown Character: %c\n", yytext[0]); return 0; } + YY_BREAK case 151: YY_RULE_SETUP -#line 233 "flex_lexer.l" -{ fprintf(stderr, "[SQL-Lexer-Error] Unknown Character: %c\n", yytext[0]); return 0; } - YY_BREAK -case 152: -YY_RULE_SETUP -#line 236 "flex_lexer.l" +#line 235 "flex_lexer.l" ECHO; YY_BREAK -#line 3061 "flex_lexer.cpp" +#line 3038 "flex_lexer.cpp" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(COMMENT): yyterminate(); @@ -3358,7 +3336,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) 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 >= 1026 ) + if ( yy_current_state >= 1016 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; @@ -3387,11 +3365,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner) 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 >= 1026 ) + if ( yy_current_state >= 1016 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; - yy_is_jam = (yy_current_state == 1025); + yy_is_jam = (yy_current_state == 1015); (void)yyg; return yy_is_jam ? 0 : yy_current_state; @@ -4214,7 +4192,7 @@ void yyfree (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 236 "flex_lexer.l" +#line 235 "flex_lexer.l" /*************************** ** Section 3: User code diff --git a/src/parser/flex_lexer.h b/src/parser/flex_lexer.h index 8e8e96c..a660cb9 100644 --- a/src/parser/flex_lexer.h +++ b/src/parser/flex_lexer.h @@ -2,9 +2,9 @@ #define hsql_HEADER_H 1 #define hsql_IN_HEADER 1 -#line 6 "flex_lexer.h" +#line 5 "flex_lexer.h" -#line 8 "flex_lexer.h" +#line 7 "flex_lexer.h" #define YY_INT_ALIGNED short int @@ -730,9 +730,9 @@ extern int yylex \ #undef yyTABLES_NAME #endif -#line 236 "flex_lexer.l" +#line 235 "flex_lexer.l" -#line 737 "flex_lexer.h" +#line 736 "flex_lexer.h" #undef hsql_IN_HEADER #endif /* hsql_HEADER_H */ diff --git a/src/parser/flex_lexer.l b/src/parser/flex_lexer.l index 07e114f..f80c870 100644 --- a/src/parser/flex_lexer.l +++ b/src/parser/flex_lexer.l @@ -78,7 +78,6 @@ CONTROL TOKEN(CONTROL) DEFAULT TOKEN(DEFAULT) EXECUTE TOKEN(EXECUTE) EXPLAIN TOKEN(EXPLAIN) -HISTORY TOKEN(HISTORY) INTEGER TOKEN(INTEGER) NATURAL TOKEN(NATURAL) PREPARE TOKEN(PREPARE) diff --git a/src/parser/sql_keywords.txt b/src/parser/sql_keywords.txt index 944e5ff..a1dccff 100644 --- a/src/parser/sql_keywords.txt +++ b/src/parser/sql_keywords.txt @@ -86,12 +86,10 @@ UPDATE SET DELETE -HISTORY TRUNCATE MERGE -HISTORY DELTA OF