From 0c6338dc154eb9e9a98e35788052cf47d6474ff9 Mon Sep 17 00:00:00 2001 From: slzhou Date: Wed, 20 Sep 2023 13:25:26 +0800 Subject: [PATCH] fix: fix address sanitizer error --- source/libs/parser/inc/parAst.h | 3 +- source/libs/parser/inc/sql.y | 13 +- source/libs/parser/src/parAstCreater.c | 16 +- source/libs/parser/src/sql.c | 7171 ++++++++++++------------ 4 files changed, 3601 insertions(+), 3602 deletions(-) diff --git a/source/libs/parser/inc/parAst.h b/source/libs/parser/inc/parAst.h index 47043fddb1..7ec872a475 100644 --- a/source/libs/parser/inc/parAst.h +++ b/source/libs/parser/inc/parAst.h @@ -89,7 +89,7 @@ typedef struct STokenPair { typedef struct SShowTablesOption { EShowKind kind; - SNode* pDbName; + SToken dbName; } SShowTablesOption; extern SToken nil_token; @@ -190,6 +190,7 @@ SNode* setShowKind(SAstCreateContext* pCxt, SNode* pStmt, EShowKind showKind); SNode* createShowStmt(SAstCreateContext* pCxt, ENodeType type); SNode* createShowStmtWithCond(SAstCreateContext* pCxt, ENodeType type, SNode* pDbName, SNode* pTbName, EOperatorType tableCondType); +SNode* createShowTablesStmt(SAstCreateContext* pCxt, SShowTablesOption option, SNode* pTbName, EOperatorType tableCondType); SNode* createShowCreateDatabaseStmt(SAstCreateContext* pCxt, SToken* pDbName); SNode* createShowAliveStmt(SAstCreateContext* pCxt, SNode* pDbName, ENodeType type); SNode* createShowCreateTableStmt(SAstCreateContext* pCxt, ENodeType type, SNode* pRealTable); diff --git a/source/libs/parser/inc/sql.y b/source/libs/parser/inc/sql.y index 7020a65552..2cd7f6edc7 100755 --- a/source/libs/parser/inc/sql.y +++ b/source/libs/parser/inc/sql.y @@ -463,8 +463,7 @@ cmd ::= SHOW db_kind_opt(A) DATABASES. setShowKind(pCxt, pCxt->pRootNode, A); } cmd ::= SHOW table_kind_db_name_cond_opt(A) TABLES like_pattern_opt(B). { - pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TABLES_STMT, A.pDbName, B, OP_TYPE_LIKE); - setShowKind(pCxt, pCxt->pRootNode, A.kind); + pCxt->pRootNode = createShowTablesStmt(pCxt, A, B, OP_TYPE_LIKE); } cmd ::= SHOW db_name_cond_opt(A) STABLES like_pattern_opt(B). { pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_STABLES_STMT, A, B, OP_TYPE_LIKE); } cmd ::= SHOW db_name_cond_opt(A) VGROUPS. { pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_VGROUPS_STMT, A, NULL, OP_TYPE_LIKE); } @@ -509,18 +508,16 @@ cmd ::= SHOW CLUSTER ALIVE. %type table_kind_db_name_cond_opt { SShowTablesOption } %destructor table_kind_db_name_cond_opt { } -table_kind_db_name_cond_opt(A) ::= . { A.kind = SHOW_KIND_ALL; A.pDbName = NULL; } -table_kind_db_name_cond_opt(A) ::= table_kind(B). { A.kind = B; A.pDbName = NULL; } -table_kind_db_name_cond_opt(A) ::= db_name_cond(C). { A.kind = SHOW_KIND_ALL; A.pDbName = C; } -table_kind_db_name_cond_opt(A) ::= table_kind(B) db_name_cond(C). { A.kind = B; A.pDbName = C; } +table_kind_db_name_cond_opt(A) ::= . { A.kind = SHOW_KIND_ALL; A.dbName = nil_token; } +table_kind_db_name_cond_opt(A) ::= table_kind(B). { A.kind = B; A.dbName = nil_token; } +table_kind_db_name_cond_opt(A) ::= db_name(C) NK_DOT. { A.kind = SHOW_KIND_ALL; A.dbName = C; } +table_kind_db_name_cond_opt(A) ::= table_kind(B) db_name(C) NK_DOT. { A.kind = B; A.dbName = C; } %type table_kind { EShowKind } %destructor table_kind { } table_kind(A) ::= NORMAL. { A = SHOW_KIND_TABLES_NORMAL; } table_kind(A) ::= CHILD. { A = SHOW_KIND_TABLES_CHILD; } -db_name_cond(A) ::= db_name(B) NK_DOT. { A = createIdentifierValueNode(pCxt, &B); } - db_name_cond_opt(A) ::= . { A = createDefaultDatabaseCondValue(pCxt); } db_name_cond_opt(A) ::= db_name(B) NK_DOT. { A = createIdentifierValueNode(pCxt, &B); } diff --git a/source/libs/parser/src/parAstCreater.c b/source/libs/parser/src/parAstCreater.c index 1f29a594c6..30a9fd6ed6 100644 --- a/source/libs/parser/src/parAstCreater.c +++ b/source/libs/parser/src/parAstCreater.c @@ -1564,9 +1564,6 @@ SNode* setShowKind(SAstCreateContext* pCxt, SNode* pStmt, EShowKind showKind) { SNode* createShowStmtWithCond(SAstCreateContext* pCxt, ENodeType type, SNode* pDbName, SNode* pTbName, EOperatorType tableCondType) { CHECK_PARSER_STATUS(pCxt); - if (NULL == pDbName) { - pDbName = createDefaultDatabaseCondValue(pCxt); - } if (needDbShowStmt(type) && NULL == pDbName) { snprintf(pCxt->pQueryCxt->pMsg, pCxt->pQueryCxt->msgLen, "database not specified"); pCxt->errCode = TSDB_CODE_PAR_SYNTAX_ERROR; @@ -1580,6 +1577,19 @@ SNode* createShowStmtWithCond(SAstCreateContext* pCxt, ENodeType type, SNode* pD return (SNode*)pStmt; } +SNode* createShowTablesStmt(SAstCreateContext* pCxt, SShowTablesOption option, SNode* pTbName, EOperatorType tableCondType) { + CHECK_PARSER_STATUS(pCxt); + SNode* pDbName = NULL; + if (option.dbName.type == TK_NK_NIL) { + pDbName = createDefaultDatabaseCondValue(pCxt); + } else { + pDbName = createIdentifierValueNode(pCxt, &option.dbName); + } + SNode* pStmt = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TABLES_STMT, pDbName, pTbName, tableCondType); + setShowKind(pCxt, pStmt, option.kind); + return pStmt; +} + SNode* createShowCreateDatabaseStmt(SAstCreateContext* pCxt, SToken* pDbName) { CHECK_PARSER_STATUS(pCxt); if (!checkDbName(pCxt, pDbName, true)) { diff --git a/source/libs/parser/src/sql.c b/source/libs/parser/src/sql.c index 752d5a37e1..ff8031bc28 100644 --- a/source/libs/parser/src/sql.c +++ b/source/libs/parser/src/sql.c @@ -448,29 +448,29 @@ #endif /************* Begin control #defines *****************************************/ #define YYCODETYPE unsigned short int -#define YYNOCODE 501 +#define YYNOCODE 500 #define YYACTIONTYPE unsigned short int #define ParseTOKENTYPE SToken typedef union { int yyinit; ParseTOKENTYPE yy0; - SAlterOption yy29; - SNode* yy122; - SToken yy203; - SNodeList* yy298; - EFillMode yy312; - SShowTablesOption yy343; - STokenPair yy345; - SDataType yy388; - EOperatorType yy416; - EJoinType yy498; - EShowKind yy579; - EOrder yy626; - int32_t yy652; - int8_t yy797; - ENullOrder yy877; - bool yy983; - int64_t yy999; + int64_t yy109; + SAlterOption yy245; + EShowKind yy289; + EFillMode yy294; + STokenPair yy297; + SToken yy329; + EJoinType yy412; + SNodeList* yy424; + SShowTablesOption yy517; + EOperatorType yy540; + SNode* yy712; + bool yy737; + SDataType yy784; + ENullOrder yy857; + int32_t yy860; + int8_t yy903; + EOrder yy938; } YYMINORTYPE; #ifndef YYSTACKDEPTH #define YYSTACKDEPTH 100 @@ -487,17 +487,17 @@ typedef union { #define ParseCTX_STORE #define YYFALLBACK 1 #define YYNSTATE 816 -#define YYNRULE 621 -#define YYNRULE_WITH_ACTION 621 +#define YYNRULE 620 +#define YYNRULE_WITH_ACTION 620 #define YYNTOKEN 343 #define YY_MAX_SHIFT 815 -#define YY_MIN_SHIFTREDUCE 1206 -#define YY_MAX_SHIFTREDUCE 1826 -#define YY_ERROR_ACTION 1827 -#define YY_ACCEPT_ACTION 1828 -#define YY_NO_ACTION 1829 -#define YY_MIN_REDUCE 1830 -#define YY_MAX_REDUCE 2450 +#define YY_MIN_SHIFTREDUCE 1204 +#define YY_MAX_SHIFTREDUCE 1823 +#define YY_ERROR_ACTION 1824 +#define YY_ACCEPT_ACTION 1825 +#define YY_NO_ACTION 1826 +#define YY_MIN_REDUCE 1827 +#define YY_MAX_REDUCE 2446 /************* End control #defines *******************************************/ #define YY_NLOOKAHEAD ((int)(sizeof(yy_lookahead)/sizeof(yy_lookahead[0]))) @@ -564,630 +564,629 @@ typedef union { ** yy_default[] Default action for each state. ** *********** Begin parsing tables **********************************************/ -#define YY_ACTTAB_COUNT (3093) +#define YY_ACTTAB_COUNT (3087) static const YYACTIONTYPE yy_action[] = { - /* 0 */ 454, 2067, 171, 546, 1842, 453, 547, 1873, 389, 2003, - /* 10 */ 467, 2122, 48, 46, 1753, 1999, 2065, 34, 671, 2001, - /* 20 */ 408, 2421, 1598, 41, 40, 411, 1623, 47, 45, 44, - /* 30 */ 43, 42, 183, 165, 622, 1679, 1913, 1596, 670, 190, - /* 40 */ 390, 2016, 2146, 2422, 672, 2257, 562, 646, 2065, 620, - /* 50 */ 2421, 618, 254, 253, 376, 683, 142, 2126, 686, 204, - /* 60 */ 551, 2144, 691, 170, 1674, 1830, 548, 2427, 190, 703, - /* 70 */ 19, 1955, 2422, 672, 41, 40, 543, 1604, 47, 45, - /* 80 */ 44, 43, 42, 706, 541, 2317, 2275, 537, 533, 132, - /* 90 */ 131, 130, 129, 128, 127, 126, 125, 124, 2225, 30, - /* 100 */ 720, 1883, 812, 563, 2139, 15, 461, 1853, 787, 786, - /* 110 */ 785, 784, 420, 703, 783, 782, 146, 777, 776, 775, - /* 120 */ 774, 773, 772, 771, 159, 767, 766, 765, 419, 418, - /* 130 */ 762, 761, 760, 178, 177, 2108, 704, 2014, 2256, 209, - /* 140 */ 2292, 1681, 1682, 110, 2258, 724, 2260, 2261, 719, 91, - /* 150 */ 714, 513, 511, 805, 360, 187, 195, 2345, 147, 2113, - /* 160 */ 2225, 404, 2341, 291, 2353, 682, 378, 134, 681, 561, - /* 170 */ 2421, 2067, 1793, 1654, 1664, 2009, 192, 465, 374, 87, - /* 180 */ 1680, 1683, 86, 703, 2375, 665, 2065, 670, 190, 417, - /* 190 */ 416, 1623, 2422, 672, 1831, 1599, 1625, 1597, 51, 47, - /* 200 */ 45, 44, 43, 42, 41, 40, 38, 312, 47, 45, - /* 210 */ 44, 43, 42, 2275, 1605, 123, 565, 1246, 122, 121, - /* 220 */ 120, 119, 118, 117, 116, 115, 114, 1602, 1603, 67, - /* 230 */ 1653, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 716, - /* 240 */ 712, 1672, 1673, 1675, 1676, 1677, 1678, 2, 48, 46, - /* 250 */ 473, 2122, 661, 359, 671, 1621, 408, 2421, 1598, 1248, - /* 260 */ 1251, 1252, 498, 223, 2257, 516, 368, 549, 51, 1880, - /* 270 */ 515, 1679, 664, 1596, 670, 190, 63, 721, 2146, 2422, - /* 280 */ 672, 1852, 1607, 606, 605, 604, 481, 168, 517, 183, - /* 290 */ 596, 139, 600, 483, 401, 2017, 599, 2143, 691, 207, - /* 300 */ 1674, 598, 603, 384, 383, 2275, 19, 597, 554, 1708, - /* 310 */ 392, 547, 1873, 1604, 2127, 704, 2014, 2225, 123, 720, - /* 320 */ 2257, 122, 121, 120, 119, 118, 117, 116, 115, 114, - /* 330 */ 63, 683, 142, 686, 2225, 133, 269, 63, 812, 377, - /* 340 */ 1624, 15, 588, 667, 662, 655, 1626, 1851, 41, 40, - /* 350 */ 469, 293, 47, 45, 44, 43, 42, 2256, 2235, 2292, - /* 360 */ 1626, 2275, 350, 2258, 724, 2260, 2261, 719, 1709, 714, - /* 370 */ 2061, 2062, 2005, 2225, 1608, 720, 1850, 1681, 1682, 95, - /* 380 */ 2133, 2111, 2239, 505, 504, 503, 502, 497, 496, 495, + /* 0 */ 2142, 2231, 14, 13, 38, 312, 671, 2000, 2422, 2417, + /* 10 */ 1850, 2417, 48, 46, 1750, 2239, 2058, 2059, 2140, 691, + /* 20 */ 408, 1849, 1595, 1828, 223, 2235, 670, 189, 549, 2421, + /* 30 */ 1877, 2418, 672, 2418, 2420, 1676, 1910, 1593, 47, 45, + /* 40 */ 44, 43, 42, 2142, 123, 1848, 2253, 122, 121, 120, + /* 50 */ 119, 118, 117, 116, 115, 114, 683, 142, 401, 686, + /* 60 */ 1620, 2139, 691, 2221, 1671, 1827, 2237, 405, 1272, 1273, + /* 70 */ 19, 1269, 1825, 1268, 2221, 123, 714, 1601, 122, 121, + /* 80 */ 120, 119, 118, 117, 116, 115, 114, 2271, 138, 132, + /* 90 */ 131, 130, 129, 128, 127, 126, 125, 124, 2221, 2221, + /* 100 */ 546, 720, 812, 547, 1870, 15, 1270, 1719, 787, 786, + /* 110 */ 785, 784, 420, 565, 783, 782, 146, 777, 776, 775, + /* 120 */ 774, 773, 772, 771, 158, 767, 766, 765, 419, 418, + /* 130 */ 762, 761, 760, 177, 176, 703, 62, 461, 2252, 645, + /* 140 */ 2288, 1678, 1679, 110, 2254, 724, 2256, 2257, 719, 454, + /* 150 */ 714, 423, 704, 2011, 453, 186, 422, 2341, 584, 583, + /* 160 */ 622, 404, 2337, 291, 2349, 682, 665, 134, 681, 703, + /* 170 */ 2417, 2095, 194, 1651, 1661, 620, 191, 618, 254, 253, + /* 180 */ 1677, 1680, 513, 511, 2371, 360, 2422, 670, 189, 202, + /* 190 */ 417, 416, 2418, 672, 2271, 1596, 646, 1594, 646, 2417, + /* 200 */ 170, 2417, 1839, 1622, 41, 40, 704, 2011, 47, 45, + /* 210 */ 44, 43, 42, 1501, 1502, 1602, 2423, 189, 2423, 189, + /* 220 */ 51, 2418, 672, 2418, 672, 1621, 56, 1599, 1600, 1620, + /* 230 */ 1650, 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 716, + /* 240 */ 712, 1669, 1670, 1672, 1673, 1674, 1675, 2, 48, 46, + /* 250 */ 1987, 67, 664, 359, 51, 1618, 408, 554, 1595, 1622, + /* 260 */ 547, 1870, 498, 1913, 60, 516, 368, 704, 2011, 169, + /* 270 */ 515, 1676, 643, 1593, 41, 40, 1778, 1952, 47, 45, + /* 280 */ 44, 43, 42, 606, 605, 604, 481, 133, 517, 1813, + /* 290 */ 596, 139, 600, 483, 588, 295, 599, 1620, 2231, 30, + /* 300 */ 1671, 598, 603, 384, 383, 12, 19, 597, 185, 1705, + /* 310 */ 41, 40, 2002, 1601, 47, 45, 44, 43, 42, 759, + /* 320 */ 2051, 2253, 2235, 1244, 658, 657, 1776, 1777, 1779, 1780, + /* 330 */ 1781, 485, 683, 142, 686, 606, 605, 604, 812, 377, + /* 340 */ 484, 15, 596, 139, 600, 225, 1437, 1438, 599, 549, + /* 350 */ 469, 1877, 62, 598, 603, 384, 383, 413, 293, 597, + /* 360 */ 2057, 2059, 2271, 2237, 551, 1246, 1249, 1250, 1706, 661, + /* 370 */ 548, 562, 1790, 714, 2221, 1605, 720, 1678, 1679, 295, + /* 380 */ 2129, 2108, 62, 505, 504, 503, 502, 497, 496, 495, /* 390 */ 494, 493, 489, 488, 487, 486, 358, 478, 477, 476, - /* 400 */ 2225, 471, 470, 375, 413, 1491, 1492, 2060, 2062, 1654, - /* 410 */ 1664, 1511, 2098, 2256, 1828, 2292, 1680, 1683, 110, 2258, - /* 420 */ 724, 2260, 2261, 719, 2241, 714, 452, 295, 451, 2225, - /* 430 */ 187, 1599, 2345, 1597, 714, 295, 404, 2341, 685, 188, - /* 440 */ 2353, 2354, 1610, 140, 2358, 704, 2014, 37, 406, 1703, - /* 450 */ 1704, 1705, 1706, 1707, 1711, 1712, 1713, 1714, 450, 2376, - /* 460 */ 759, 1439, 1440, 1602, 1603, 56, 1653, 1656, 1657, 1658, - /* 470 */ 1659, 1660, 1661, 1662, 1663, 716, 712, 1672, 1673, 1675, - /* 480 */ 1676, 1677, 1678, 2, 12, 48, 46, 2257, 2426, 295, - /* 490 */ 1598, 2421, 2235, 408, 423, 1598, 295, 704, 2014, 422, - /* 500 */ 721, 205, 63, 257, 1404, 1596, 2243, 256, 1679, 2425, - /* 510 */ 1596, 500, 2122, 2422, 2424, 271, 2239, 458, 1395, 749, - /* 520 */ 748, 747, 1399, 746, 1401, 1402, 745, 742, 2275, 1410, - /* 530 */ 739, 1412, 1413, 736, 733, 730, 1626, 1674, 1916, 52, - /* 540 */ 2225, 646, 720, 19, 2421, 1604, 1991, 41, 40, 1623, - /* 550 */ 1604, 47, 45, 44, 43, 42, 704, 2014, 2241, 405, - /* 560 */ 212, 2427, 190, 1254, 704, 2014, 2422, 672, 714, 1622, - /* 570 */ 812, 94, 485, 1849, 363, 812, 133, 388, 15, 624, - /* 580 */ 2256, 484, 2292, 593, 459, 110, 2258, 724, 2260, 2261, - /* 590 */ 719, 1781, 714, 258, 1757, 145, 102, 152, 2316, 2345, - /* 600 */ 1623, 41, 40, 404, 2341, 47, 45, 44, 43, 42, - /* 610 */ 606, 605, 604, 2235, 1681, 1682, 225, 596, 139, 600, - /* 620 */ 549, 2007, 1880, 599, 666, 1623, 2225, 2244, 598, 603, - /* 630 */ 384, 383, 1274, 1275, 597, 2257, 1271, 2239, 1270, 658, - /* 640 */ 657, 1779, 1780, 1782, 1783, 1784, 1654, 1664, 721, 1624, - /* 650 */ 1882, 41, 40, 1680, 1683, 47, 45, 44, 43, 42, - /* 660 */ 2426, 295, 12, 1599, 10, 1597, 1569, 1570, 1599, 107, - /* 670 */ 1597, 1272, 683, 142, 704, 2014, 2275, 1625, 104, 2241, - /* 680 */ 757, 157, 156, 754, 753, 752, 154, 1348, 2225, 714, - /* 690 */ 720, 270, 683, 142, 475, 1602, 1603, 442, 295, 1792, - /* 700 */ 1602, 1603, 1655, 1653, 1656, 1657, 1658, 1659, 1660, 1661, - /* 710 */ 1662, 1663, 716, 712, 1672, 1673, 1675, 1676, 1677, 1678, - /* 720 */ 2, 48, 46, 1684, 444, 440, 1823, 1350, 2256, 408, - /* 730 */ 2292, 1598, 1621, 110, 2258, 724, 2260, 2261, 719, 1271, - /* 740 */ 714, 1270, 2257, 2360, 1679, 2441, 1596, 2345, 631, 1769, - /* 750 */ 2360, 404, 2341, 1655, 36, 721, 138, 2383, 1989, 12, - /* 760 */ 41, 40, 2257, 1816, 47, 45, 44, 43, 42, 2357, - /* 770 */ 1524, 1525, 594, 1674, 1272, 721, 2356, 2396, 1504, 1505, - /* 780 */ 189, 2353, 2354, 2275, 140, 2358, 1604, 757, 157, 156, - /* 790 */ 754, 753, 752, 154, 186, 2225, 1346, 720, 704, 2014, - /* 800 */ 191, 2353, 2354, 2275, 140, 2358, 2054, 1359, 507, 1523, - /* 810 */ 1526, 812, 14, 13, 49, 2225, 2067, 720, 490, 750, - /* 820 */ 41, 40, 1358, 398, 47, 45, 44, 43, 42, 1822, - /* 830 */ 402, 2065, 293, 704, 2014, 2256, 144, 2292, 168, 2316, - /* 840 */ 110, 2258, 724, 2260, 2261, 719, 2016, 714, 704, 2014, - /* 850 */ 1681, 1682, 2441, 491, 2345, 2256, 1848, 2292, 404, 2341, - /* 860 */ 110, 2258, 724, 2260, 2261, 719, 632, 714, 564, 213, - /* 870 */ 602, 601, 2441, 2067, 2345, 1689, 584, 583, 404, 2341, - /* 880 */ 403, 1623, 1654, 1664, 815, 704, 2014, 518, 2065, 1680, - /* 890 */ 1683, 506, 757, 157, 156, 754, 753, 752, 154, 592, - /* 900 */ 320, 704, 2014, 591, 1599, 2011, 1597, 41, 40, 2225, - /* 910 */ 9, 47, 45, 44, 43, 42, 182, 1722, 704, 2014, - /* 920 */ 708, 260, 2317, 2218, 803, 799, 795, 791, 1710, 317, - /* 930 */ 44, 43, 42, 1847, 586, 585, 1602, 1603, 268, 1653, - /* 940 */ 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 716, 712, - /* 950 */ 1672, 1673, 1675, 1676, 1677, 1678, 2, 48, 46, 645, - /* 960 */ 2425, 2257, 1990, 2426, 1604, 408, 2421, 1598, 2067, 109, - /* 970 */ 646, 462, 310, 2421, 721, 412, 653, 704, 2014, 611, - /* 980 */ 1679, 1750, 1596, 2065, 2425, 411, 2225, 167, 2422, 2423, - /* 990 */ 2427, 190, 2208, 168, 623, 2422, 672, 689, 704, 2014, - /* 1000 */ 2257, 2016, 2275, 240, 700, 704, 2014, 35, 751, 1674, - /* 1010 */ 255, 2058, 2360, 721, 2225, 2414, 720, 1715, 307, 175, - /* 1020 */ 675, 1846, 1604, 108, 2114, 701, 614, 582, 578, 574, - /* 1030 */ 570, 759, 239, 608, 1655, 414, 1606, 1845, 2355, 252, - /* 1040 */ 143, 2275, 298, 168, 1844, 704, 2014, 812, 2006, 297, - /* 1050 */ 49, 2016, 1363, 2225, 2256, 720, 2292, 781, 779, 110, - /* 1060 */ 2258, 724, 2260, 2261, 719, 702, 714, 1362, 262, 704, - /* 1070 */ 2014, 2441, 92, 2345, 2225, 237, 1841, 404, 2341, 71, - /* 1080 */ 769, 1840, 70, 1839, 60, 1838, 1681, 1682, 1837, 313, - /* 1090 */ 2225, 1836, 643, 2256, 1835, 2292, 1834, 2225, 110, 2258, - /* 1100 */ 724, 2260, 2261, 719, 1992, 714, 303, 304, 1833, 2257, - /* 1110 */ 2441, 302, 2345, 704, 2014, 2190, 404, 2341, 1654, 1664, - /* 1120 */ 755, 678, 721, 2058, 2364, 1680, 1683, 756, 91, 2225, - /* 1130 */ 2058, 1742, 520, 415, 2225, 318, 2225, 148, 2225, 1997, - /* 1140 */ 1599, 2225, 1597, 595, 2225, 236, 229, 2225, 711, 2225, - /* 1150 */ 2275, 2067, 234, 559, 2010, 2067, 267, 382, 381, 2067, - /* 1160 */ 327, 2225, 2225, 2044, 720, 155, 690, 1344, 259, 2211, - /* 1170 */ 699, 227, 1602, 1603, 2066, 1653, 1656, 1657, 1658, 1659, - /* 1180 */ 1660, 1661, 1662, 1663, 716, 712, 1672, 1673, 1675, 1676, - /* 1190 */ 1677, 1678, 2, 48, 46, 770, 1609, 2219, 1976, 629, - /* 1200 */ 1305, 408, 2256, 1598, 2292, 1858, 807, 110, 2258, 724, - /* 1210 */ 2260, 2261, 719, 437, 714, 2018, 1679, 3, 1596, 2441, - /* 1220 */ 430, 2345, 1251, 1252, 135, 404, 2341, 380, 379, 54, - /* 1230 */ 590, 2365, 1742, 1900, 75, 1891, 84, 2257, 55, 1889, - /* 1240 */ 1306, 155, 674, 1749, 646, 1674, 646, 2421, 687, 2421, - /* 1250 */ 721, 245, 592, 1956, 243, 607, 591, 609, 1604, 247, - /* 1260 */ 249, 612, 246, 248, 2427, 190, 2427, 190, 264, 2422, - /* 1270 */ 672, 2422, 672, 251, 676, 155, 250, 169, 2275, 626, - /* 1280 */ 50, 625, 334, 812, 85, 50, 15, 1843, 2257, 2246, - /* 1290 */ 2225, 715, 720, 275, 155, 646, 1825, 1826, 2421, 331, - /* 1300 */ 74, 721, 2389, 73, 288, 1700, 50, 763, 659, 300, - /* 1310 */ 137, 72, 153, 356, 1564, 2427, 190, 14, 13, 155, - /* 1320 */ 2422, 672, 1681, 1682, 221, 528, 526, 523, 65, 2275, - /* 1330 */ 2256, 1324, 2292, 50, 50, 343, 2258, 724, 2260, 2261, - /* 1340 */ 719, 2225, 714, 720, 764, 2248, 282, 1954, 1567, 1953, - /* 1350 */ 2276, 391, 421, 1778, 1654, 1664, 728, 153, 1777, 155, - /* 1360 */ 136, 1680, 1683, 153, 63, 2131, 277, 688, 1322, 1874, - /* 1370 */ 1879, 2055, 2379, 684, 290, 287, 1599, 679, 1597, 1521, - /* 1380 */ 668, 2256, 305, 2292, 696, 309, 110, 2258, 724, 2260, - /* 1390 */ 2261, 719, 1389, 714, 294, 5, 429, 1629, 2320, 446, - /* 1400 */ 2345, 1716, 61, 424, 404, 2341, 1665, 326, 1602, 1603, - /* 1410 */ 372, 1653, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, - /* 1420 */ 716, 712, 1672, 1673, 1675, 1676, 1677, 1678, 2, 1417, - /* 1430 */ 1421, 445, 1428, 1426, 417, 416, 158, 198, 197, 448, - /* 1440 */ 200, 1545, 321, 1622, 1612, 466, 82, 81, 457, 2257, - /* 1450 */ 211, 202, 468, 1626, 2132, 472, 474, 1679, 479, 1605, - /* 1460 */ 509, 499, 721, 492, 449, 447, 2124, 501, 508, 510, - /* 1470 */ 521, 522, 519, 216, 524, 357, 215, 1627, 438, 525, - /* 1480 */ 218, 436, 432, 428, 425, 450, 1674, 527, 544, 529, - /* 1490 */ 2275, 4, 552, 545, 553, 555, 1624, 1628, 556, 1604, - /* 1500 */ 226, 228, 2225, 1630, 720, 557, 558, 231, 560, 233, - /* 1510 */ 1631, 2140, 566, 89, 90, 587, 238, 628, 112, 2199, - /* 1520 */ 2196, 615, 589, 295, 710, 616, 2195, 630, 2257, 353, - /* 1530 */ 93, 2004, 322, 149, 634, 633, 1552, 242, 261, 635, - /* 1540 */ 2000, 721, 2256, 244, 2292, 161, 162, 110, 2258, 724, - /* 1550 */ 2260, 2261, 719, 2002, 714, 1998, 263, 163, 164, 2318, - /* 1560 */ 265, 2345, 638, 641, 660, 404, 2341, 8, 2395, 2275, - /* 1570 */ 694, 669, 2394, 650, 176, 651, 2367, 281, 656, 649, - /* 1580 */ 2380, 2225, 2444, 720, 2257, 394, 640, 639, 663, 283, - /* 1590 */ 2390, 284, 285, 648, 680, 395, 677, 718, 273, 1742, - /* 1600 */ 141, 276, 1625, 1747, 1745, 2420, 289, 697, 296, 286, - /* 1610 */ 180, 150, 1, 692, 323, 693, 2154, 1613, 2153, 1608, - /* 1620 */ 324, 2256, 2152, 2292, 400, 2275, 110, 2258, 724, 2260, - /* 1630 */ 2261, 719, 698, 714, 151, 2257, 2361, 2225, 707, 720, - /* 1640 */ 2345, 325, 101, 2015, 404, 2341, 62, 103, 721, 1616, - /* 1650 */ 1618, 2326, 2059, 726, 1230, 809, 328, 1977, 316, 806, - /* 1660 */ 2257, 193, 712, 1672, 1673, 1675, 1676, 1677, 1678, 160, - /* 1670 */ 811, 53, 332, 721, 364, 365, 2275, 2256, 2217, 2292, - /* 1680 */ 337, 330, 349, 2258, 724, 2260, 2261, 719, 2225, 714, - /* 1690 */ 720, 2311, 351, 341, 2216, 2215, 2212, 352, 79, 426, - /* 1700 */ 427, 2275, 1589, 1590, 196, 431, 2210, 433, 434, 435, - /* 1710 */ 2209, 2207, 373, 2225, 439, 720, 2206, 2205, 443, 441, - /* 1720 */ 1580, 2186, 199, 2185, 201, 1548, 80, 1547, 2256, 2167, - /* 1730 */ 2292, 2166, 2165, 111, 2258, 724, 2260, 2261, 719, 455, - /* 1740 */ 714, 456, 2164, 2163, 2117, 2107, 463, 2345, 460, 1493, - /* 1750 */ 2104, 2344, 2341, 2256, 464, 2292, 2257, 203, 111, 2258, - /* 1760 */ 724, 2260, 2261, 719, 2103, 714, 2102, 83, 2101, 721, - /* 1770 */ 208, 2094, 2345, 2106, 206, 2105, 709, 2341, 2100, 2099, - /* 1780 */ 2097, 2257, 2096, 2095, 480, 482, 2110, 2093, 2092, 2091, - /* 1790 */ 2090, 2089, 2088, 2087, 718, 2086, 2085, 2275, 2084, 2083, - /* 1800 */ 2082, 2081, 2080, 2079, 210, 2078, 88, 2077, 2076, 2225, - /* 1810 */ 2075, 720, 2257, 2109, 2074, 2073, 1497, 2072, 214, 2071, - /* 1820 */ 512, 2070, 2275, 514, 2069, 721, 2068, 361, 1360, 1919, - /* 1830 */ 1918, 1364, 1917, 217, 2225, 362, 720, 2257, 219, 1915, - /* 1840 */ 220, 1356, 1912, 1911, 1904, 1893, 1869, 232, 530, 722, - /* 1850 */ 721, 2292, 1298, 2275, 111, 2258, 724, 2260, 2261, 719, - /* 1860 */ 532, 714, 534, 531, 536, 2225, 1868, 720, 2345, 540, - /* 1870 */ 538, 535, 367, 2341, 2256, 1253, 2292, 77, 2275, 349, - /* 1880 */ 2258, 724, 2260, 2261, 719, 717, 714, 705, 2310, 542, - /* 1890 */ 2225, 539, 720, 184, 222, 2184, 2245, 224, 78, 185, - /* 1900 */ 550, 2174, 2162, 2161, 230, 2256, 2257, 2292, 235, 2138, - /* 1910 */ 172, 2258, 724, 2260, 2261, 719, 1993, 714, 1914, 721, - /* 1920 */ 1910, 567, 568, 569, 1908, 571, 572, 573, 1906, 575, - /* 1930 */ 2256, 576, 2292, 577, 1903, 173, 2258, 724, 2260, 2261, - /* 1940 */ 719, 579, 714, 1888, 580, 1886, 1887, 2275, 1885, 581, - /* 1950 */ 1865, 1995, 647, 2386, 64, 1432, 1433, 1994, 1347, 2225, - /* 1960 */ 1345, 720, 1343, 1342, 241, 778, 1341, 1340, 1339, 780, - /* 1970 */ 1901, 1334, 1336, 2257, 1335, 1333, 385, 1892, 386, 1890, - /* 1980 */ 610, 387, 1864, 1863, 613, 1862, 721, 1861, 673, 2442, - /* 1990 */ 617, 1860, 619, 621, 113, 1574, 1578, 2257, 1576, 2256, - /* 2000 */ 1573, 2292, 29, 2183, 111, 2258, 724, 2260, 2261, 719, - /* 2010 */ 721, 714, 57, 68, 2275, 1554, 1556, 2173, 2345, 636, - /* 2020 */ 2160, 2159, 2426, 2342, 58, 1558, 2225, 17, 720, 166, - /* 2030 */ 637, 20, 21, 1533, 6, 266, 7, 22, 2275, 1532, - /* 2040 */ 279, 280, 654, 393, 31, 642, 1795, 644, 2257, 272, - /* 2050 */ 2225, 2246, 720, 23, 66, 652, 33, 24, 292, 1810, - /* 2060 */ 179, 721, 59, 1809, 396, 174, 2256, 278, 2292, 1814, - /* 2070 */ 274, 172, 2258, 724, 2260, 2261, 719, 32, 714, 1776, - /* 2080 */ 2257, 1768, 1815, 1813, 397, 96, 2158, 1816, 2137, 2275, - /* 2090 */ 2256, 98, 2292, 721, 1739, 350, 2258, 724, 2260, 2261, - /* 2100 */ 719, 2225, 714, 720, 2136, 18, 99, 1738, 311, 104, - /* 2110 */ 97, 25, 26, 301, 2387, 306, 2257, 1691, 299, 1774, - /* 2120 */ 13, 2275, 11, 69, 1614, 1701, 399, 181, 1646, 721, - /* 2130 */ 100, 1690, 194, 2225, 723, 720, 2295, 727, 410, 1669, - /* 2140 */ 713, 2256, 1667, 2292, 695, 308, 173, 2258, 724, 2260, - /* 2150 */ 2261, 719, 725, 714, 1666, 39, 731, 2275, 16, 27, - /* 2160 */ 734, 1638, 407, 28, 737, 740, 1418, 729, 732, 2225, - /* 2170 */ 735, 720, 1415, 2256, 1414, 2292, 1411, 738, 350, 2258, - /* 2180 */ 724, 2260, 2261, 719, 2257, 714, 1405, 741, 743, 314, - /* 2190 */ 1403, 1427, 744, 1409, 105, 1408, 106, 721, 76, 1407, - /* 2200 */ 2443, 1406, 1423, 1296, 758, 1328, 1327, 1326, 1325, 2256, - /* 2210 */ 1323, 2292, 1321, 1320, 350, 2258, 724, 2260, 2261, 719, - /* 2220 */ 2257, 714, 1319, 1354, 768, 2275, 315, 1317, 1316, 1315, - /* 2230 */ 409, 1314, 1313, 721, 1312, 2257, 1311, 2225, 1351, 720, - /* 2240 */ 1349, 1308, 1307, 1304, 1303, 1302, 1909, 1301, 721, 788, - /* 2250 */ 790, 789, 2257, 1907, 792, 794, 1905, 796, 798, 1902, - /* 2260 */ 1884, 2275, 793, 802, 800, 721, 797, 804, 1243, 801, - /* 2270 */ 1859, 1231, 808, 2225, 319, 720, 2275, 2256, 810, 2292, - /* 2280 */ 1600, 814, 350, 2258, 724, 2260, 2261, 719, 2225, 714, - /* 2290 */ 720, 329, 813, 2275, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2300 */ 1829, 1829, 1829, 1829, 1829, 2225, 1829, 720, 1829, 1829, - /* 2310 */ 1829, 1829, 1829, 627, 1829, 2292, 1829, 1829, 345, 2258, - /* 2320 */ 724, 2260, 2261, 719, 1829, 714, 1829, 1829, 2256, 1829, - /* 2330 */ 2292, 1829, 1829, 335, 2258, 724, 2260, 2261, 719, 1829, - /* 2340 */ 714, 1829, 1829, 1829, 1829, 2256, 2257, 2292, 1829, 1829, - /* 2350 */ 333, 2258, 724, 2260, 2261, 719, 1829, 714, 1829, 721, - /* 2360 */ 1829, 2257, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2370 */ 1829, 1829, 1829, 1829, 721, 1829, 1829, 1829, 1829, 1829, - /* 2380 */ 1829, 1829, 1829, 1829, 1829, 2257, 1829, 2275, 1829, 1829, - /* 2390 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 721, 2225, - /* 2400 */ 1829, 720, 2275, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2410 */ 1829, 1829, 1829, 1829, 2225, 1829, 720, 1829, 1829, 1829, - /* 2420 */ 1829, 1829, 1829, 1829, 1829, 1829, 2275, 1829, 1829, 1829, - /* 2430 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 2225, 2256, - /* 2440 */ 720, 2292, 1829, 1829, 336, 2258, 724, 2260, 2261, 719, - /* 2450 */ 1829, 714, 1829, 1829, 2256, 1829, 2292, 1829, 1829, 342, - /* 2460 */ 2258, 724, 2260, 2261, 719, 1829, 714, 1829, 2257, 1829, - /* 2470 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 2256, 1829, - /* 2480 */ 2292, 721, 1829, 346, 2258, 724, 2260, 2261, 719, 1829, - /* 2490 */ 714, 1829, 1829, 2257, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2500 */ 1829, 1829, 1829, 1829, 2257, 1829, 721, 1829, 1829, 2275, - /* 2510 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 721, 1829, 1829, - /* 2520 */ 1829, 2225, 1829, 720, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2530 */ 1829, 1829, 1829, 1829, 2275, 1829, 1829, 1829, 1829, 1829, - /* 2540 */ 1829, 1829, 1829, 1829, 1829, 2275, 2225, 1829, 720, 1829, - /* 2550 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 2225, 1829, 720, - /* 2560 */ 1829, 2256, 1829, 2292, 1829, 1829, 338, 2258, 724, 2260, - /* 2570 */ 2261, 719, 2257, 714, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2580 */ 1829, 1829, 1829, 1829, 1829, 721, 2256, 1829, 2292, 1829, - /* 2590 */ 1829, 347, 2258, 724, 2260, 2261, 719, 2256, 714, 2292, - /* 2600 */ 1829, 1829, 339, 2258, 724, 2260, 2261, 719, 2257, 714, - /* 2610 */ 1829, 1829, 1829, 2275, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2620 */ 1829, 721, 1829, 2257, 1829, 2225, 1829, 720, 1829, 1829, - /* 2630 */ 1829, 1829, 1829, 1829, 1829, 1829, 721, 1829, 1829, 1829, - /* 2640 */ 2257, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 2275, - /* 2650 */ 1829, 1829, 1829, 721, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2660 */ 1829, 2225, 1829, 720, 2275, 2256, 1829, 2292, 1829, 1829, - /* 2670 */ 348, 2258, 724, 2260, 2261, 719, 2225, 714, 720, 1829, - /* 2680 */ 1829, 2275, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2690 */ 1829, 1829, 1829, 2225, 1829, 720, 1829, 1829, 1829, 1829, - /* 2700 */ 1829, 2256, 1829, 2292, 1829, 1829, 340, 2258, 724, 2260, - /* 2710 */ 2261, 719, 1829, 714, 1829, 1829, 2256, 1829, 2292, 1829, - /* 2720 */ 1829, 354, 2258, 724, 2260, 2261, 719, 1829, 714, 1829, - /* 2730 */ 1829, 1829, 1829, 2256, 2257, 2292, 1829, 1829, 355, 2258, - /* 2740 */ 724, 2260, 2261, 719, 1829, 714, 1829, 721, 1829, 2257, - /* 2750 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2760 */ 1829, 1829, 721, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2770 */ 1829, 1829, 1829, 2257, 1829, 2275, 1829, 1829, 1829, 1829, - /* 2780 */ 1829, 1829, 1829, 1829, 1829, 1829, 721, 2225, 1829, 720, - /* 2790 */ 2275, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2800 */ 1829, 1829, 2225, 1829, 720, 1829, 1829, 1829, 1829, 1829, - /* 2810 */ 1829, 1829, 1829, 1829, 2275, 1829, 1829, 1829, 1829, 1829, - /* 2820 */ 1829, 1829, 1829, 1829, 1829, 1829, 2225, 2256, 720, 2292, - /* 2830 */ 1829, 1829, 2269, 2258, 724, 2260, 2261, 719, 1829, 714, - /* 2840 */ 2257, 1829, 2256, 1829, 2292, 1829, 1829, 2268, 2258, 724, - /* 2850 */ 2260, 2261, 719, 721, 714, 1829, 2257, 1829, 1829, 1829, - /* 2860 */ 1829, 1829, 1829, 1829, 1829, 1829, 2256, 1829, 2292, 721, - /* 2870 */ 1829, 2267, 2258, 724, 2260, 2261, 719, 1829, 714, 1829, - /* 2880 */ 1829, 2275, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2890 */ 1829, 1829, 1829, 2225, 1829, 720, 1829, 2275, 1829, 1829, - /* 2900 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 2225, - /* 2910 */ 1829, 720, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 2257, - /* 2920 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2930 */ 1829, 1829, 721, 2256, 1829, 2292, 1829, 1829, 369, 2258, - /* 2940 */ 724, 2260, 2261, 719, 1829, 714, 1829, 1829, 1829, 2256, - /* 2950 */ 2257, 2292, 1829, 1829, 370, 2258, 724, 2260, 2261, 719, - /* 2960 */ 2275, 714, 1829, 721, 1829, 1829, 1829, 1829, 1829, 1829, - /* 2970 */ 2257, 1829, 2225, 1829, 720, 1829, 1829, 1829, 1829, 1829, - /* 2980 */ 1829, 1829, 1829, 721, 1829, 1829, 1829, 2257, 1829, 1829, - /* 2990 */ 1829, 2275, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 3000 */ 721, 1829, 1829, 2225, 1829, 720, 1829, 1829, 1829, 1829, - /* 3010 */ 1829, 2275, 2256, 1829, 2292, 1829, 1829, 366, 2258, 724, - /* 3020 */ 2260, 2261, 719, 2225, 714, 720, 1829, 1829, 2275, 1829, - /* 3030 */ 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, - /* 3040 */ 2225, 1829, 720, 2256, 1829, 2292, 1829, 1829, 371, 2258, - /* 3050 */ 724, 2260, 2261, 719, 1829, 714, 1829, 1829, 1829, 1829, - /* 3060 */ 1829, 1829, 1829, 722, 1829, 2292, 1829, 1829, 345, 2258, - /* 3070 */ 724, 2260, 2261, 719, 1829, 714, 1829, 1829, 1829, 1829, - /* 3080 */ 2256, 1829, 2292, 1829, 1829, 344, 2258, 724, 2260, 2261, - /* 3090 */ 719, 1829, 714, + /* 400 */ 52, 471, 470, 375, 167, 1489, 1490, 442, 75, 1651, + /* 410 */ 1661, 1508, 2014, 2252, 293, 2288, 1677, 1680, 110, 2254, + /* 420 */ 724, 2256, 2257, 719, 703, 714, 1988, 563, 2135, 507, + /* 430 */ 186, 1596, 2341, 1594, 444, 440, 404, 2337, 685, 187, + /* 440 */ 2349, 2350, 561, 140, 2354, 683, 142, 37, 406, 1700, + /* 450 */ 1701, 1702, 1703, 1704, 1708, 1709, 1710, 1711, 85, 2372, + /* 460 */ 667, 662, 655, 1599, 1600, 258, 1650, 1653, 1654, 1655, + /* 470 */ 1656, 1657, 1658, 1659, 1660, 716, 712, 1669, 1670, 1672, + /* 480 */ 1673, 1674, 1675, 2, 12, 48, 46, 2253, 666, 1820, + /* 490 */ 213, 411, 102, 408, 2064, 1595, 704, 2011, 2064, 164, + /* 500 */ 721, 389, 467, 2118, 1402, 374, 390, 2013, 1676, 2062, + /* 510 */ 1593, 295, 506, 2062, 2062, 1847, 458, 2004, 1393, 749, + /* 520 */ 748, 747, 1397, 746, 1399, 1400, 745, 742, 2271, 1408, + /* 530 */ 739, 1410, 1411, 736, 733, 730, 543, 1671, 1566, 1567, + /* 540 */ 2221, 295, 720, 19, 541, 182, 144, 537, 533, 2312, + /* 550 */ 1601, 204, 188, 2349, 2350, 1595, 140, 2354, 2253, 295, + /* 560 */ 757, 156, 155, 754, 753, 752, 153, 376, 2221, 2122, + /* 570 */ 1593, 721, 2214, 1879, 62, 812, 1754, 1846, 15, 2252, + /* 580 */ 671, 2288, 1620, 2417, 110, 2254, 724, 2256, 2257, 719, + /* 590 */ 1845, 714, 1819, 12, 145, 10, 151, 2312, 2341, 2271, + /* 600 */ 670, 189, 404, 2337, 592, 2418, 672, 240, 591, 759, + /* 610 */ 1601, 2221, 91, 720, 1678, 1679, 1623, 704, 2011, 646, + /* 620 */ 41, 40, 2417, 174, 47, 45, 44, 43, 42, 378, + /* 630 */ 2221, 582, 578, 574, 570, 812, 239, 459, 2006, 2423, + /* 640 */ 189, 704, 2011, 2221, 2418, 672, 1651, 1661, 473, 2118, + /* 650 */ 2252, 182, 2288, 1677, 1680, 110, 2254, 724, 2256, 2257, + /* 660 */ 719, 475, 714, 452, 402, 451, 631, 2437, 1596, 2341, + /* 670 */ 1594, 1601, 167, 404, 2337, 2123, 92, 41, 40, 237, + /* 680 */ 2013, 47, 45, 44, 43, 42, 41, 40, 1844, 1623, + /* 690 */ 47, 45, 44, 43, 42, 450, 2105, 207, 500, 2118, + /* 700 */ 1599, 1600, 1346, 1650, 1653, 1654, 1655, 1656, 1657, 1658, + /* 710 */ 1659, 1660, 716, 712, 1669, 1670, 1672, 1673, 1674, 1675, + /* 720 */ 2, 48, 46, 1681, 2253, 704, 2011, 2207, 1596, 408, + /* 730 */ 1594, 1595, 411, 295, 750, 1652, 2064, 721, 465, 2379, + /* 740 */ 167, 2221, 1348, 398, 1676, 490, 1593, 212, 2013, 236, + /* 750 */ 229, 2062, 683, 142, 704, 2011, 234, 559, 1986, 2356, + /* 760 */ 1599, 1600, 41, 40, 414, 2271, 47, 45, 44, 43, + /* 770 */ 42, 205, 167, 1671, 133, 227, 1686, 2221, 430, 720, + /* 780 */ 2013, 593, 1620, 1843, 1789, 2353, 1601, 166, 41, 40, + /* 790 */ 1842, 34, 47, 45, 44, 43, 42, 41, 40, 704, + /* 800 */ 2011, 47, 45, 44, 43, 42, 2421, 704, 2011, 704, + /* 810 */ 2011, 812, 1841, 1838, 49, 2356, 2252, 2253, 2288, 491, + /* 820 */ 769, 110, 2254, 724, 2256, 2257, 719, 564, 714, 2008, + /* 830 */ 721, 611, 2392, 2437, 209, 2341, 2221, 704, 2011, 404, + /* 840 */ 2337, 2352, 36, 2221, 271, 706, 623, 2313, 41, 40, + /* 850 */ 1678, 1679, 47, 45, 44, 43, 42, 260, 2271, 190, + /* 860 */ 2349, 2350, 255, 140, 2354, 2221, 2221, 704, 2011, 2064, + /* 870 */ 2221, 1621, 720, 1269, 87, 1268, 403, 86, 614, 704, + /* 880 */ 2011, 2356, 1651, 1661, 2062, 608, 1766, 268, 108, 1677, + /* 890 */ 1680, 252, 757, 156, 155, 754, 753, 752, 153, 689, + /* 900 */ 704, 2011, 704, 2011, 1596, 143, 1594, 2351, 1270, 2252, + /* 910 */ 1837, 2288, 1747, 2003, 110, 2254, 724, 2256, 2257, 719, + /* 920 */ 307, 714, 701, 2064, 586, 585, 2437, 2215, 2341, 318, + /* 930 */ 412, 71, 404, 2337, 70, 1652, 1599, 1600, 2062, 1650, + /* 940 */ 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 716, 712, + /* 950 */ 1669, 1670, 1672, 1673, 1674, 1675, 2, 48, 46, 2186, + /* 960 */ 2253, 704, 2011, 2221, 708, 408, 2313, 1595, 382, 381, + /* 970 */ 602, 601, 257, 721, 646, 653, 256, 2417, 704, 2011, + /* 980 */ 1676, 702, 1593, 757, 156, 155, 754, 753, 752, 153, + /* 990 */ 2231, 1836, 1521, 1522, 2423, 189, 704, 2011, 313, 2418, + /* 1000 */ 672, 2271, 1357, 2422, 2240, 1361, 2417, 303, 304, 1671, + /* 1010 */ 1707, 259, 302, 2221, 2235, 720, 415, 1356, 1620, 1835, + /* 1020 */ 1360, 1834, 1601, 629, 2421, 1833, 1832, 2064, 2418, 2419, + /* 1030 */ 687, 1520, 1523, 781, 779, 44, 43, 42, 380, 379, + /* 1040 */ 94, 590, 690, 363, 2221, 1623, 388, 812, 624, 9, + /* 1050 */ 49, 1831, 2252, 2253, 2288, 2237, 1830, 110, 2254, 724, + /* 1060 */ 2256, 2257, 719, 592, 714, 714, 721, 591, 2410, 2437, + /* 1070 */ 646, 2341, 2221, 2417, 2221, 404, 2337, 646, 2221, 2221, + /* 1080 */ 2417, 91, 518, 1855, 807, 520, 1678, 1679, 674, 35, + /* 1090 */ 2423, 189, 1249, 1250, 2271, 2418, 672, 2423, 189, 1712, + /* 1100 */ 2064, 1604, 2418, 672, 2221, 2064, 2221, 2007, 720, 2221, + /* 1110 */ 3, 751, 2204, 755, 2055, 699, 2055, 1252, 1651, 1661, + /* 1120 */ 2063, 756, 54, 1619, 2055, 1677, 1680, 327, 1989, 770, + /* 1130 */ 2041, 154, 1973, 2361, 1739, 245, 247, 135, 243, 246, + /* 1140 */ 1596, 249, 1594, 251, 248, 2252, 250, 2288, 1897, 84, + /* 1150 */ 110, 2254, 724, 2256, 2257, 719, 154, 714, 626, 154, + /* 1160 */ 625, 147, 2437, 50, 2341, 269, 1996, 50, 404, 2337, + /* 1170 */ 607, 1652, 1599, 1600, 1746, 1650, 1653, 1654, 1655, 1656, + /* 1180 */ 1657, 1658, 1659, 1660, 716, 712, 1669, 1670, 1672, 1673, + /* 1190 */ 1674, 1675, 2, 48, 46, 594, 595, 1880, 275, 675, + /* 1200 */ 270, 408, 1888, 1595, 55, 632, 1886, 678, 95, 1822, + /* 1210 */ 1823, 154, 50, 14, 13, 711, 1676, 2242, 1593, 1344, + /* 1220 */ 1342, 300, 72, 815, 609, 152, 107, 1603, 612, 1561, + /* 1230 */ 763, 1998, 1564, 764, 154, 104, 1775, 2253, 1994, 320, + /* 1240 */ 1774, 65, 2015, 50, 50, 1671, 728, 152, 154, 805, + /* 1250 */ 721, 264, 2360, 1303, 1322, 181, 715, 1320, 1601, 136, + /* 1260 */ 267, 1607, 1953, 803, 799, 795, 791, 1840, 317, 2385, + /* 1270 */ 1739, 277, 288, 2244, 152, 659, 137, 168, 2271, 282, + /* 1280 */ 1951, 1950, 334, 812, 688, 1518, 15, 2272, 391, 421, + /* 1290 */ 2221, 2127, 720, 1304, 305, 696, 1871, 1876, 309, 331, + /* 1300 */ 74, 2052, 2375, 73, 684, 417, 416, 1387, 109, 290, + /* 1310 */ 287, 310, 424, 356, 1713, 1609, 1662, 326, 294, 1415, + /* 1320 */ 1419, 1426, 1678, 1679, 221, 528, 526, 523, 1676, 2252, + /* 1330 */ 1602, 2288, 1424, 437, 110, 2254, 724, 2256, 2257, 719, + /* 1340 */ 5, 714, 429, 700, 1626, 446, 2437, 157, 2341, 372, + /* 1350 */ 445, 197, 404, 2337, 1651, 1661, 196, 1671, 448, 199, + /* 1360 */ 1542, 1677, 1680, 1618, 62, 321, 462, 1619, 466, 468, + /* 1370 */ 1601, 211, 1697, 1623, 2128, 472, 1596, 474, 1594, 509, + /* 1380 */ 479, 298, 492, 508, 501, 499, 510, 1606, 297, 2120, + /* 1390 */ 521, 522, 215, 519, 216, 710, 524, 2253, 525, 218, + /* 1400 */ 527, 529, 63, 1624, 544, 4, 552, 262, 1599, 1600, + /* 1410 */ 721, 1650, 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, + /* 1420 */ 716, 712, 1669, 1670, 1672, 1673, 1674, 1675, 2, 545, + /* 1430 */ 553, 555, 226, 1621, 228, 556, 1625, 1627, 2271, 557, + /* 1440 */ 560, 558, 1628, 231, 566, 233, 82, 81, 457, 89, + /* 1450 */ 2221, 201, 720, 676, 2136, 90, 238, 587, 589, 2001, + /* 1460 */ 112, 353, 615, 679, 449, 447, 616, 628, 242, 2195, + /* 1470 */ 1997, 244, 160, 2253, 161, 357, 630, 1999, 438, 1995, + /* 1480 */ 162, 436, 432, 428, 425, 450, 721, 163, 1610, 2252, + /* 1490 */ 1605, 2288, 93, 2192, 110, 2254, 724, 2256, 2257, 719, + /* 1500 */ 148, 714, 2253, 261, 2191, 634, 2316, 633, 2341, 638, + /* 1510 */ 1549, 265, 404, 2337, 2271, 721, 641, 650, 660, 8, + /* 1520 */ 1613, 1615, 635, 295, 2391, 639, 2221, 322, 720, 263, + /* 1530 */ 640, 2376, 2386, 712, 1669, 1670, 1672, 1673, 1674, 1675, + /* 1540 */ 2253, 694, 273, 2271, 2363, 669, 656, 651, 276, 2390, + /* 1550 */ 394, 663, 649, 721, 648, 2221, 286, 720, 395, 2440, + /* 1560 */ 680, 677, 1739, 1622, 141, 2252, 2357, 2288, 1744, 179, + /* 1570 */ 110, 2254, 724, 2256, 2257, 719, 323, 714, 1742, 281, + /* 1580 */ 324, 2271, 2314, 296, 2341, 692, 149, 284, 404, 2337, + /* 1590 */ 1, 175, 2253, 2221, 2252, 720, 2288, 693, 2150, 110, + /* 1600 */ 2254, 724, 2256, 2257, 719, 721, 714, 2416, 283, 285, + /* 1610 */ 192, 707, 697, 2341, 289, 150, 698, 404, 2337, 325, + /* 1620 */ 101, 2149, 2148, 400, 2012, 61, 103, 2056, 1974, 2322, + /* 1630 */ 2253, 726, 2252, 2271, 2288, 328, 316, 111, 2254, 724, + /* 1640 */ 2256, 2257, 719, 721, 714, 2221, 1228, 720, 809, 806, + /* 1650 */ 159, 2341, 811, 53, 337, 2340, 2337, 364, 352, 351, + /* 1660 */ 2253, 365, 341, 330, 332, 2213, 2212, 2211, 79, 2208, + /* 1670 */ 426, 2271, 427, 718, 1586, 1587, 195, 431, 2206, 433, + /* 1680 */ 434, 435, 2253, 2221, 2252, 720, 2288, 2205, 373, 111, + /* 1690 */ 2254, 724, 2256, 2257, 719, 721, 714, 2203, 439, 2202, + /* 1700 */ 2201, 2271, 441, 2341, 1577, 443, 2182, 709, 2337, 198, + /* 1710 */ 2181, 200, 1545, 2221, 80, 720, 2163, 1544, 2162, 2161, + /* 1720 */ 455, 456, 722, 2271, 2288, 2160, 2159, 111, 2254, 724, + /* 1730 */ 2256, 2257, 719, 2110, 714, 2221, 2104, 720, 460, 1488, + /* 1740 */ 463, 2341, 464, 2101, 203, 367, 2337, 2100, 2099, 83, + /* 1750 */ 2098, 2103, 2252, 2102, 2288, 2253, 206, 349, 2254, 724, + /* 1760 */ 2256, 2257, 719, 717, 714, 705, 2306, 2097, 721, 2096, + /* 1770 */ 2094, 2093, 2253, 2092, 2252, 208, 2288, 480, 2091, 171, + /* 1780 */ 2254, 724, 2256, 2257, 719, 721, 714, 482, 2107, 2090, + /* 1790 */ 2089, 2088, 2087, 2253, 2086, 2085, 2271, 88, 210, 2075, + /* 1800 */ 2074, 2073, 2072, 2106, 2071, 2070, 721, 2084, 2221, 2083, + /* 1810 */ 720, 2082, 2081, 2271, 2080, 2079, 2078, 2077, 2076, 2069, + /* 1820 */ 1494, 647, 2382, 214, 2068, 2221, 512, 720, 2067, 514, + /* 1830 */ 2066, 2065, 1358, 361, 2271, 1362, 1916, 362, 217, 1915, + /* 1840 */ 219, 1914, 1912, 1354, 220, 1909, 2221, 2252, 720, 2288, + /* 1850 */ 532, 1908, 172, 2254, 724, 2256, 2257, 719, 530, 714, + /* 1860 */ 534, 1901, 2253, 1890, 2252, 1866, 2288, 536, 183, 111, + /* 1870 */ 2254, 724, 2256, 2257, 719, 721, 714, 531, 535, 540, + /* 1880 */ 538, 542, 77, 2341, 539, 2252, 2253, 2288, 2338, 1251, + /* 1890 */ 171, 2254, 724, 2256, 2257, 719, 2241, 714, 222, 721, + /* 1900 */ 1865, 184, 224, 2271, 550, 673, 2438, 2180, 392, 78, + /* 1910 */ 2170, 2158, 2253, 230, 232, 2221, 2157, 720, 235, 2134, + /* 1920 */ 1990, 1296, 1911, 1907, 567, 721, 569, 2271, 568, 1905, + /* 1930 */ 571, 572, 393, 2383, 1903, 575, 2253, 573, 577, 2221, + /* 1940 */ 576, 720, 579, 581, 1885, 580, 1883, 1884, 1882, 721, + /* 1950 */ 1900, 1862, 1992, 2271, 2252, 1430, 2288, 241, 1431, 350, + /* 1960 */ 2254, 724, 2256, 2257, 719, 2221, 714, 720, 1345, 64, + /* 1970 */ 1991, 1332, 1343, 1341, 1340, 1339, 1338, 2271, 2252, 1898, + /* 1980 */ 2288, 1889, 1337, 350, 2254, 724, 2256, 2257, 719, 2221, + /* 1990 */ 714, 720, 778, 780, 1334, 1333, 385, 386, 1331, 1887, + /* 2000 */ 387, 613, 2253, 1861, 2252, 1860, 2288, 610, 1859, 343, + /* 2010 */ 2254, 724, 2256, 2257, 719, 721, 714, 617, 2253, 1858, + /* 2020 */ 619, 1857, 621, 1571, 113, 1573, 1570, 2179, 2252, 2253, + /* 2030 */ 2288, 718, 1575, 172, 2254, 724, 2256, 2257, 719, 57, + /* 2040 */ 714, 2169, 721, 2271, 1551, 29, 68, 1553, 399, 637, + /* 2050 */ 1555, 636, 165, 2156, 668, 2221, 266, 720, 1530, 2271, + /* 2060 */ 2155, 642, 2422, 1529, 644, 17, 20, 31, 6, 1792, + /* 2070 */ 2271, 2221, 272, 720, 652, 407, 7, 654, 274, 21, + /* 2080 */ 22, 279, 2221, 1773, 720, 280, 2242, 2439, 1765, 173, + /* 2090 */ 278, 66, 32, 1807, 2252, 96, 2288, 33, 23, 350, + /* 2100 */ 2254, 724, 2256, 2257, 719, 24, 714, 1812, 1813, 2154, + /* 2110 */ 2252, 1806, 2288, 396, 1811, 349, 2254, 724, 2256, 2257, + /* 2120 */ 719, 2252, 714, 2288, 2307, 59, 350, 2254, 724, 2256, + /* 2130 */ 2257, 719, 2253, 714, 1810, 18, 397, 1736, 292, 178, + /* 2140 */ 1735, 2133, 98, 2253, 97, 721, 299, 58, 25, 2132, + /* 2150 */ 1771, 311, 695, 99, 301, 306, 721, 69, 26, 100, + /* 2160 */ 1688, 11, 13, 180, 1687, 104, 1611, 2291, 2253, 308, + /* 2170 */ 1698, 1666, 713, 2271, 1664, 39, 193, 1663, 409, 1635, + /* 2180 */ 16, 721, 723, 27, 2271, 2221, 1643, 720, 28, 727, + /* 2190 */ 1416, 410, 729, 731, 725, 734, 2221, 1413, 720, 732, + /* 2200 */ 737, 1412, 1409, 735, 740, 743, 738, 1407, 741, 2271, + /* 2210 */ 1403, 1401, 744, 105, 314, 106, 1425, 76, 1421, 1406, + /* 2220 */ 758, 2221, 1294, 720, 2252, 1326, 2288, 1325, 1324, 350, + /* 2230 */ 2254, 724, 2256, 2257, 719, 627, 714, 2288, 2253, 1405, + /* 2240 */ 345, 2254, 724, 2256, 2257, 719, 1404, 714, 1323, 1321, + /* 2250 */ 1319, 721, 1318, 1317, 1352, 315, 768, 1315, 1314, 1312, + /* 2260 */ 2252, 1313, 2288, 1311, 2253, 335, 2254, 724, 2256, 2257, + /* 2270 */ 719, 1310, 714, 1309, 1300, 1349, 1347, 721, 1306, 2271, + /* 2280 */ 1305, 1302, 1301, 1299, 1906, 788, 789, 1904, 2253, 790, + /* 2290 */ 792, 2221, 794, 720, 1902, 796, 798, 1899, 800, 802, + /* 2300 */ 793, 721, 797, 1881, 1856, 2271, 801, 804, 1241, 808, + /* 2310 */ 1229, 319, 810, 1826, 2253, 1597, 813, 2221, 329, 720, + /* 2320 */ 814, 1826, 1826, 1826, 1826, 1826, 1826, 721, 1826, 2271, + /* 2330 */ 2252, 1826, 2288, 1826, 1826, 333, 2254, 724, 2256, 2257, + /* 2340 */ 719, 2221, 714, 720, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2350 */ 1826, 1826, 1826, 1826, 1826, 2271, 2252, 1826, 2288, 1826, + /* 2360 */ 1826, 336, 2254, 724, 2256, 2257, 719, 2221, 714, 720, + /* 2370 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2253, 1826, + /* 2380 */ 2252, 1826, 2288, 1826, 1826, 342, 2254, 724, 2256, 2257, + /* 2390 */ 719, 721, 714, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2400 */ 1826, 1826, 1826, 1826, 2253, 1826, 2252, 1826, 2288, 1826, + /* 2410 */ 1826, 346, 2254, 724, 2256, 2257, 719, 721, 714, 2271, + /* 2420 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2430 */ 1826, 2221, 1826, 720, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2440 */ 1826, 1826, 1826, 1826, 1826, 2271, 1826, 1826, 1826, 1826, + /* 2450 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2221, 1826, 720, + /* 2460 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2253, 1826, + /* 2470 */ 2252, 1826, 2288, 1826, 1826, 338, 2254, 724, 2256, 2257, + /* 2480 */ 719, 721, 714, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2490 */ 1826, 1826, 1826, 1826, 1826, 1826, 2252, 1826, 2288, 1826, + /* 2500 */ 1826, 347, 2254, 724, 2256, 2257, 719, 1826, 714, 2271, + /* 2510 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2520 */ 2253, 2221, 1826, 720, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2530 */ 1826, 1826, 1826, 721, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2540 */ 1826, 1826, 1826, 2253, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2550 */ 1826, 1826, 1826, 1826, 1826, 1826, 721, 1826, 1826, 1826, + /* 2560 */ 2252, 2271, 2288, 1826, 1826, 339, 2254, 724, 2256, 2257, + /* 2570 */ 719, 1826, 714, 2221, 1826, 720, 1826, 1826, 1826, 1826, + /* 2580 */ 1826, 1826, 1826, 1826, 2271, 1826, 1826, 1826, 1826, 1826, + /* 2590 */ 1826, 1826, 1826, 1826, 1826, 1826, 2221, 1826, 720, 1826, + /* 2600 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2610 */ 1826, 1826, 2252, 2253, 2288, 1826, 1826, 348, 2254, 724, + /* 2620 */ 2256, 2257, 719, 1826, 714, 1826, 721, 1826, 1826, 1826, + /* 2630 */ 1826, 1826, 1826, 1826, 1826, 2252, 1826, 2288, 2253, 1826, + /* 2640 */ 340, 2254, 724, 2256, 2257, 719, 1826, 714, 1826, 1826, + /* 2650 */ 1826, 721, 1826, 1826, 2271, 1826, 1826, 1826, 1826, 1826, + /* 2660 */ 1826, 1826, 1826, 1826, 1826, 1826, 2221, 1826, 720, 1826, + /* 2670 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2271, + /* 2680 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2253, 1826, + /* 2690 */ 1826, 2221, 1826, 720, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2700 */ 1826, 721, 1826, 2253, 1826, 2252, 1826, 2288, 1826, 1826, + /* 2710 */ 354, 2254, 724, 2256, 2257, 719, 721, 714, 1826, 1826, + /* 2720 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2271, + /* 2730 */ 2252, 1826, 2288, 1826, 1826, 355, 2254, 724, 2256, 2257, + /* 2740 */ 719, 2221, 714, 720, 2271, 1826, 1826, 1826, 1826, 1826, + /* 2750 */ 1826, 1826, 1826, 2253, 1826, 1826, 2221, 1826, 720, 1826, + /* 2760 */ 1826, 1826, 1826, 1826, 1826, 1826, 721, 1826, 1826, 1826, + /* 2770 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2253, 1826, + /* 2780 */ 2252, 1826, 2288, 1826, 1826, 2265, 2254, 724, 2256, 2257, + /* 2790 */ 719, 721, 714, 1826, 2271, 2252, 1826, 2288, 1826, 1826, + /* 2800 */ 2264, 2254, 724, 2256, 2257, 719, 2221, 714, 720, 1826, + /* 2810 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2271, + /* 2820 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2253, 1826, + /* 2830 */ 1826, 2221, 1826, 720, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2840 */ 1826, 721, 1826, 2253, 1826, 2252, 1826, 2288, 1826, 1826, + /* 2850 */ 2263, 2254, 724, 2256, 2257, 719, 721, 714, 1826, 1826, + /* 2860 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2271, + /* 2870 */ 2252, 1826, 2288, 1826, 1826, 369, 2254, 724, 2256, 2257, + /* 2880 */ 719, 2221, 714, 720, 2271, 1826, 1826, 1826, 1826, 1826, + /* 2890 */ 1826, 1826, 1826, 1826, 1826, 1826, 2221, 1826, 720, 1826, + /* 2900 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 2253, 1826, + /* 2910 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2920 */ 2252, 721, 2288, 1826, 1826, 370, 2254, 724, 2256, 2257, + /* 2930 */ 719, 1826, 714, 1826, 1826, 2252, 1826, 2288, 1826, 1826, + /* 2940 */ 366, 2254, 724, 2256, 2257, 719, 1826, 714, 1826, 2271, + /* 2950 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2960 */ 2253, 2221, 1826, 720, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2970 */ 1826, 1826, 1826, 721, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2980 */ 1826, 1826, 2253, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 2990 */ 1826, 1826, 1826, 1826, 1826, 721, 1826, 1826, 1826, 1826, + /* 3000 */ 2252, 2271, 2288, 1826, 1826, 371, 2254, 724, 2256, 2257, + /* 3010 */ 719, 1826, 714, 2221, 1826, 720, 1826, 1826, 1826, 1826, + /* 3020 */ 1826, 1826, 1826, 2271, 1826, 1826, 1826, 1826, 1826, 1826, + /* 3030 */ 1826, 1826, 1826, 1826, 1826, 2221, 1826, 720, 1826, 1826, + /* 3040 */ 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, + /* 3050 */ 1826, 1826, 722, 1826, 2288, 1826, 1826, 345, 2254, 724, + /* 3060 */ 2256, 2257, 719, 1826, 714, 1826, 1826, 1826, 1826, 1826, + /* 3070 */ 1826, 1826, 1826, 1826, 2252, 1826, 2288, 1826, 1826, 344, + /* 3080 */ 2254, 724, 2256, 2257, 719, 1826, 714, }; static const YYCODETYPE yy_lookahead[] = { - /* 0 */ 423, 387, 345, 353, 347, 428, 356, 357, 394, 388, - /* 10 */ 358, 359, 12, 13, 14, 388, 402, 2, 470, 388, - /* 20 */ 20, 473, 22, 8, 9, 379, 20, 12, 13, 14, - /* 30 */ 15, 16, 387, 387, 21, 35, 0, 37, 490, 491, - /* 40 */ 394, 395, 401, 495, 496, 346, 358, 470, 402, 36, - /* 50 */ 473, 38, 39, 40, 409, 358, 359, 412, 359, 407, - /* 60 */ 14, 420, 421, 368, 64, 0, 20, 490, 491, 20, - /* 70 */ 70, 376, 495, 496, 8, 9, 51, 77, 12, 13, - /* 80 */ 14, 15, 16, 455, 59, 457, 387, 62, 63, 24, - /* 90 */ 25, 26, 27, 28, 29, 30, 31, 32, 399, 33, - /* 100 */ 401, 0, 102, 415, 416, 105, 358, 346, 72, 73, - /* 110 */ 74, 75, 76, 20, 78, 79, 80, 81, 82, 83, + /* 0 */ 401, 375, 1, 2, 458, 459, 469, 388, 469, 472, + /* 10 */ 346, 472, 12, 13, 14, 389, 400, 401, 419, 420, + /* 20 */ 20, 346, 22, 0, 354, 399, 489, 490, 358, 490, + /* 30 */ 360, 494, 495, 494, 495, 35, 0, 37, 12, 13, + /* 40 */ 14, 15, 16, 401, 21, 346, 346, 24, 25, 26, + /* 50 */ 27, 28, 29, 30, 31, 32, 358, 359, 416, 359, + /* 60 */ 20, 419, 420, 399, 64, 0, 440, 441, 56, 57, + /* 70 */ 70, 20, 343, 22, 399, 21, 450, 77, 24, 25, + /* 80 */ 26, 27, 28, 29, 30, 31, 32, 387, 37, 24, + /* 90 */ 25, 26, 27, 28, 29, 30, 31, 32, 399, 399, + /* 100 */ 353, 401, 102, 356, 357, 105, 55, 106, 72, 73, + /* 110 */ 74, 75, 76, 69, 78, 79, 80, 81, 82, 83, /* 120 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - /* 130 */ 94, 95, 96, 97, 98, 0, 358, 359, 439, 64, - /* 140 */ 441, 141, 142, 444, 445, 446, 447, 448, 449, 367, - /* 150 */ 451, 403, 404, 52, 406, 456, 378, 458, 410, 411, - /* 160 */ 399, 462, 463, 466, 467, 468, 384, 470, 471, 20, - /* 170 */ 473, 387, 106, 173, 174, 393, 477, 42, 394, 104, - /* 180 */ 180, 181, 107, 20, 485, 359, 402, 490, 491, 12, - /* 190 */ 13, 20, 495, 496, 0, 195, 20, 197, 105, 12, - /* 200 */ 13, 14, 15, 16, 8, 9, 459, 460, 12, 13, - /* 210 */ 14, 15, 16, 387, 37, 21, 69, 4, 24, 25, - /* 220 */ 26, 27, 28, 29, 30, 31, 32, 227, 228, 4, + /* 130 */ 94, 95, 96, 97, 98, 20, 105, 358, 438, 50, + /* 140 */ 440, 141, 142, 443, 444, 445, 446, 447, 448, 422, + /* 150 */ 450, 422, 358, 359, 427, 455, 427, 457, 363, 364, + /* 160 */ 21, 461, 462, 465, 466, 467, 359, 469, 470, 20, + /* 170 */ 472, 0, 378, 173, 174, 36, 476, 38, 39, 40, + /* 180 */ 180, 181, 403, 404, 484, 406, 3, 489, 490, 410, + /* 190 */ 12, 13, 494, 495, 387, 195, 469, 197, 469, 472, + /* 200 */ 345, 472, 347, 20, 8, 9, 358, 359, 12, 13, + /* 210 */ 14, 15, 16, 173, 174, 37, 489, 490, 489, 490, + /* 220 */ 105, 494, 495, 494, 495, 20, 378, 227, 228, 20, /* 230 */ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, /* 240 */ 240, 241, 242, 243, 244, 245, 246, 247, 12, 13, - /* 250 */ 358, 359, 179, 18, 470, 20, 20, 473, 22, 46, - /* 260 */ 47, 48, 27, 354, 346, 30, 70, 358, 105, 360, - /* 270 */ 35, 35, 446, 37, 490, 491, 105, 359, 401, 495, - /* 280 */ 496, 346, 37, 72, 73, 74, 51, 387, 53, 387, - /* 290 */ 79, 80, 81, 58, 417, 395, 85, 420, 421, 407, - /* 300 */ 64, 90, 91, 92, 93, 387, 70, 96, 353, 113, - /* 310 */ 392, 356, 357, 77, 412, 358, 359, 399, 21, 401, - /* 320 */ 346, 24, 25, 26, 27, 28, 29, 30, 31, 32, - /* 330 */ 105, 358, 359, 359, 399, 378, 64, 105, 102, 104, - /* 340 */ 20, 105, 385, 270, 271, 272, 20, 346, 8, 9, - /* 350 */ 115, 175, 12, 13, 14, 15, 16, 439, 375, 441, - /* 360 */ 20, 387, 444, 445, 446, 447, 448, 449, 172, 451, - /* 370 */ 400, 401, 389, 399, 197, 401, 346, 141, 142, 107, - /* 380 */ 145, 146, 399, 148, 149, 150, 151, 152, 153, 154, + /* 250 */ 0, 4, 445, 18, 105, 20, 20, 353, 22, 20, + /* 260 */ 356, 357, 27, 0, 175, 30, 70, 358, 359, 368, + /* 270 */ 35, 35, 183, 37, 8, 9, 227, 376, 12, 13, + /* 280 */ 14, 15, 16, 72, 73, 74, 51, 378, 53, 106, + /* 290 */ 79, 80, 81, 58, 385, 264, 85, 20, 375, 33, + /* 300 */ 64, 90, 91, 92, 93, 248, 70, 96, 386, 113, + /* 310 */ 8, 9, 389, 77, 12, 13, 14, 15, 16, 69, + /* 320 */ 398, 346, 399, 4, 275, 276, 277, 278, 279, 280, + /* 330 */ 281, 160, 358, 359, 359, 72, 73, 74, 102, 104, + /* 340 */ 169, 105, 79, 80, 81, 354, 141, 142, 85, 358, + /* 350 */ 115, 360, 105, 90, 91, 92, 93, 397, 175, 96, + /* 360 */ 400, 401, 387, 440, 14, 46, 47, 48, 172, 179, + /* 370 */ 20, 358, 106, 450, 399, 197, 401, 141, 142, 264, + /* 380 */ 145, 146, 105, 148, 149, 150, 151, 152, 153, 154, /* 390 */ 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - /* 400 */ 399, 166, 167, 168, 397, 170, 171, 400, 401, 173, - /* 410 */ 174, 176, 0, 439, 343, 441, 180, 181, 444, 445, - /* 420 */ 446, 447, 448, 449, 441, 451, 194, 264, 196, 399, - /* 430 */ 456, 195, 458, 197, 451, 264, 462, 463, 465, 466, - /* 440 */ 467, 468, 197, 470, 471, 358, 359, 251, 252, 253, - /* 450 */ 254, 255, 256, 257, 258, 259, 260, 261, 226, 485, - /* 460 */ 69, 141, 142, 227, 228, 378, 230, 231, 232, 233, + /* 400 */ 105, 166, 167, 168, 387, 170, 171, 190, 115, 173, + /* 410 */ 174, 176, 395, 438, 175, 440, 180, 181, 443, 444, + /* 420 */ 445, 446, 447, 448, 20, 450, 0, 414, 415, 86, + /* 430 */ 455, 195, 457, 197, 217, 218, 461, 462, 464, 465, + /* 440 */ 466, 467, 20, 469, 470, 358, 359, 251, 252, 253, + /* 450 */ 254, 255, 256, 257, 258, 259, 260, 261, 165, 484, + /* 460 */ 270, 271, 272, 227, 228, 135, 230, 231, 232, 233, /* 470 */ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - /* 480 */ 244, 245, 246, 247, 248, 12, 13, 346, 470, 264, - /* 490 */ 22, 473, 375, 20, 423, 22, 264, 358, 359, 428, - /* 500 */ 359, 175, 105, 136, 102, 37, 389, 140, 35, 491, - /* 510 */ 37, 358, 359, 495, 496, 175, 399, 378, 116, 117, + /* 480 */ 244, 245, 246, 247, 248, 12, 13, 346, 20, 187, + /* 490 */ 147, 379, 365, 20, 387, 22, 358, 359, 387, 387, + /* 500 */ 359, 394, 358, 359, 102, 394, 394, 395, 35, 402, + /* 510 */ 37, 264, 169, 402, 402, 346, 378, 390, 116, 117, /* 520 */ 118, 119, 120, 121, 122, 123, 124, 125, 387, 127, - /* 530 */ 128, 129, 130, 131, 132, 133, 20, 64, 0, 105, - /* 540 */ 399, 470, 401, 70, 473, 77, 0, 8, 9, 20, - /* 550 */ 77, 12, 13, 14, 15, 16, 358, 359, 441, 442, - /* 560 */ 407, 490, 491, 14, 358, 359, 495, 496, 451, 20, - /* 570 */ 102, 204, 160, 346, 207, 102, 378, 210, 105, 212, - /* 580 */ 439, 169, 441, 385, 378, 444, 445, 446, 447, 448, - /* 590 */ 449, 227, 451, 135, 14, 454, 365, 456, 457, 458, - /* 600 */ 20, 8, 9, 462, 463, 12, 13, 14, 15, 16, - /* 610 */ 72, 73, 74, 375, 141, 142, 354, 79, 80, 81, - /* 620 */ 358, 390, 360, 85, 20, 20, 399, 389, 90, 91, - /* 630 */ 92, 93, 56, 57, 96, 346, 20, 399, 22, 275, - /* 640 */ 276, 277, 278, 279, 280, 281, 173, 174, 359, 20, - /* 650 */ 361, 8, 9, 180, 181, 12, 13, 14, 15, 16, - /* 660 */ 3, 264, 248, 195, 250, 197, 208, 209, 195, 105, - /* 670 */ 197, 55, 358, 359, 358, 359, 387, 20, 114, 441, - /* 680 */ 134, 135, 136, 137, 138, 139, 140, 37, 399, 451, - /* 690 */ 401, 175, 358, 359, 378, 227, 228, 190, 264, 106, - /* 700 */ 227, 228, 173, 230, 231, 232, 233, 234, 235, 236, + /* 530 */ 128, 129, 130, 131, 132, 133, 51, 64, 208, 209, + /* 540 */ 399, 264, 401, 70, 59, 387, 453, 62, 63, 456, + /* 550 */ 77, 407, 465, 466, 467, 22, 469, 470, 346, 264, + /* 560 */ 134, 135, 136, 137, 138, 139, 140, 409, 399, 411, + /* 570 */ 37, 359, 422, 361, 105, 102, 14, 346, 105, 438, + /* 580 */ 469, 440, 20, 472, 443, 444, 445, 446, 447, 448, + /* 590 */ 346, 450, 290, 248, 453, 250, 455, 456, 457, 387, + /* 600 */ 489, 490, 461, 462, 134, 494, 495, 35, 138, 69, + /* 610 */ 77, 399, 367, 401, 141, 142, 20, 358, 359, 469, + /* 620 */ 8, 9, 472, 51, 12, 13, 14, 15, 16, 384, + /* 630 */ 399, 59, 60, 61, 62, 102, 64, 378, 393, 489, + /* 640 */ 490, 358, 359, 399, 494, 495, 173, 174, 358, 359, + /* 650 */ 438, 387, 440, 180, 181, 443, 444, 445, 446, 447, + /* 660 */ 448, 378, 450, 194, 379, 196, 115, 455, 195, 457, + /* 670 */ 197, 77, 387, 461, 462, 411, 104, 8, 9, 107, + /* 680 */ 395, 12, 13, 14, 15, 16, 8, 9, 346, 20, + /* 690 */ 12, 13, 14, 15, 16, 226, 0, 407, 358, 359, + /* 700 */ 227, 228, 37, 230, 231, 232, 233, 234, 235, 236, /* 710 */ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - /* 720 */ 247, 12, 13, 14, 217, 218, 187, 77, 439, 20, - /* 730 */ 441, 22, 20, 444, 445, 446, 447, 448, 449, 20, - /* 740 */ 451, 22, 346, 443, 35, 456, 37, 458, 115, 106, - /* 750 */ 443, 462, 463, 173, 2, 359, 37, 361, 0, 248, - /* 760 */ 8, 9, 346, 106, 12, 13, 14, 15, 16, 469, - /* 770 */ 141, 142, 13, 64, 55, 359, 469, 361, 173, 174, - /* 780 */ 466, 467, 468, 387, 470, 471, 77, 134, 135, 136, - /* 790 */ 137, 138, 139, 140, 386, 399, 37, 401, 358, 359, - /* 800 */ 466, 467, 468, 387, 470, 471, 398, 22, 86, 180, - /* 810 */ 181, 102, 1, 2, 105, 399, 387, 401, 378, 115, - /* 820 */ 8, 9, 37, 394, 12, 13, 14, 15, 16, 290, - /* 830 */ 379, 402, 175, 358, 359, 439, 454, 441, 387, 457, - /* 840 */ 444, 445, 446, 447, 448, 449, 395, 451, 358, 359, - /* 850 */ 141, 142, 456, 378, 458, 439, 346, 441, 462, 463, - /* 860 */ 444, 445, 446, 447, 448, 449, 1, 451, 378, 147, - /* 870 */ 372, 373, 456, 387, 458, 14, 363, 364, 462, 463, - /* 880 */ 394, 20, 173, 174, 19, 358, 359, 102, 402, 180, - /* 890 */ 181, 169, 134, 135, 136, 137, 138, 139, 140, 134, - /* 900 */ 35, 358, 359, 138, 195, 378, 197, 8, 9, 399, - /* 910 */ 42, 12, 13, 14, 15, 16, 51, 106, 358, 359, - /* 920 */ 455, 378, 457, 423, 59, 60, 61, 62, 172, 64, - /* 930 */ 14, 15, 16, 346, 363, 364, 227, 228, 378, 230, + /* 720 */ 247, 12, 13, 14, 346, 358, 359, 0, 195, 20, + /* 730 */ 197, 22, 379, 264, 115, 173, 387, 359, 42, 361, + /* 740 */ 387, 399, 77, 394, 35, 378, 37, 407, 395, 177, + /* 750 */ 178, 402, 358, 359, 358, 359, 184, 185, 0, 442, + /* 760 */ 227, 228, 8, 9, 379, 387, 12, 13, 14, 15, + /* 770 */ 16, 175, 387, 64, 378, 203, 14, 399, 51, 401, + /* 780 */ 395, 385, 20, 346, 106, 468, 77, 175, 8, 9, + /* 790 */ 346, 2, 12, 13, 14, 15, 16, 8, 9, 358, + /* 800 */ 359, 12, 13, 14, 15, 16, 3, 358, 359, 358, + /* 810 */ 359, 102, 346, 346, 105, 442, 438, 346, 440, 378, + /* 820 */ 77, 443, 444, 445, 446, 447, 448, 378, 450, 378, + /* 830 */ 359, 4, 361, 455, 64, 457, 399, 358, 359, 461, + /* 840 */ 462, 468, 2, 399, 175, 454, 19, 456, 8, 9, + /* 850 */ 141, 142, 12, 13, 14, 15, 16, 378, 387, 465, + /* 860 */ 466, 467, 35, 469, 470, 399, 399, 358, 359, 387, + /* 870 */ 399, 20, 401, 20, 104, 22, 394, 107, 51, 358, + /* 880 */ 359, 442, 173, 174, 402, 58, 106, 378, 365, 180, + /* 890 */ 181, 64, 134, 135, 136, 137, 138, 139, 140, 378, + /* 900 */ 358, 359, 358, 359, 195, 382, 197, 468, 55, 438, + /* 910 */ 346, 440, 4, 390, 443, 444, 445, 446, 447, 448, + /* 920 */ 378, 450, 378, 387, 363, 364, 455, 422, 457, 34, + /* 930 */ 394, 104, 461, 462, 107, 173, 227, 228, 402, 230, /* 940 */ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - /* 950 */ 241, 242, 243, 244, 245, 246, 247, 12, 13, 50, - /* 960 */ 3, 346, 0, 470, 77, 20, 473, 22, 387, 104, - /* 970 */ 470, 358, 107, 473, 359, 394, 361, 358, 359, 4, - /* 980 */ 35, 4, 37, 402, 491, 379, 399, 175, 495, 496, - /* 990 */ 490, 491, 0, 387, 19, 495, 496, 378, 358, 359, - /* 1000 */ 346, 395, 387, 35, 139, 358, 359, 251, 396, 64, - /* 1010 */ 35, 399, 443, 359, 399, 361, 401, 261, 378, 51, - /* 1020 */ 33, 346, 77, 365, 411, 378, 51, 59, 60, 61, - /* 1030 */ 62, 69, 64, 58, 173, 379, 37, 346, 469, 64, - /* 1040 */ 382, 387, 177, 387, 346, 358, 359, 102, 390, 184, - /* 1050 */ 105, 395, 22, 399, 439, 401, 441, 372, 373, 444, - /* 1060 */ 445, 446, 447, 448, 449, 378, 451, 37, 203, 358, - /* 1070 */ 359, 456, 104, 458, 399, 107, 346, 462, 463, 104, - /* 1080 */ 77, 346, 107, 346, 175, 346, 141, 142, 346, 378, - /* 1090 */ 399, 346, 183, 439, 346, 441, 346, 399, 444, 445, - /* 1100 */ 446, 447, 448, 449, 0, 451, 135, 136, 346, 346, - /* 1110 */ 456, 140, 458, 358, 359, 383, 462, 463, 173, 174, - /* 1120 */ 396, 33, 359, 399, 361, 180, 181, 396, 367, 399, - /* 1130 */ 399, 263, 102, 378, 399, 34, 399, 33, 399, 388, - /* 1140 */ 195, 399, 197, 13, 399, 177, 178, 399, 70, 399, - /* 1150 */ 387, 387, 184, 185, 393, 387, 429, 39, 40, 387, - /* 1160 */ 380, 399, 399, 383, 401, 33, 402, 37, 436, 0, - /* 1170 */ 402, 203, 227, 228, 402, 230, 231, 232, 233, 234, + /* 950 */ 241, 242, 243, 244, 245, 246, 247, 12, 13, 383, + /* 960 */ 346, 358, 359, 399, 454, 20, 456, 22, 39, 40, + /* 970 */ 372, 373, 136, 359, 469, 361, 140, 472, 358, 359, + /* 980 */ 35, 378, 37, 134, 135, 136, 137, 138, 139, 140, + /* 990 */ 375, 346, 141, 142, 489, 490, 358, 359, 378, 494, + /* 1000 */ 495, 387, 22, 469, 389, 22, 472, 135, 136, 64, + /* 1010 */ 172, 435, 140, 399, 399, 401, 378, 37, 20, 346, + /* 1020 */ 37, 346, 77, 422, 490, 346, 346, 387, 494, 495, + /* 1030 */ 422, 180, 181, 372, 373, 14, 15, 16, 109, 110, + /* 1040 */ 204, 112, 402, 207, 399, 20, 210, 102, 212, 42, + /* 1050 */ 105, 346, 438, 346, 440, 440, 346, 443, 444, 445, + /* 1060 */ 446, 447, 448, 134, 450, 450, 359, 138, 361, 455, + /* 1070 */ 469, 457, 399, 472, 399, 461, 462, 469, 399, 399, + /* 1080 */ 472, 367, 102, 349, 350, 102, 141, 142, 285, 251, + /* 1090 */ 489, 490, 47, 48, 387, 494, 495, 489, 490, 261, + /* 1100 */ 387, 37, 494, 495, 399, 387, 399, 393, 401, 399, + /* 1110 */ 33, 396, 0, 396, 399, 402, 399, 14, 173, 174, + /* 1120 */ 402, 396, 45, 20, 399, 180, 181, 380, 0, 374, + /* 1130 */ 383, 33, 377, 262, 263, 108, 108, 33, 111, 111, + /* 1140 */ 195, 108, 197, 108, 111, 438, 111, 440, 0, 45, + /* 1150 */ 443, 444, 445, 446, 447, 448, 33, 450, 211, 33, + /* 1160 */ 213, 33, 455, 33, 457, 64, 388, 33, 461, 462, + /* 1170 */ 22, 173, 227, 228, 266, 230, 231, 232, 233, 234, /* 1180 */ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - /* 1190 */ 245, 246, 247, 12, 13, 374, 197, 423, 377, 423, - /* 1200 */ 37, 20, 439, 22, 441, 349, 350, 444, 445, 446, - /* 1210 */ 447, 448, 449, 221, 451, 388, 35, 33, 37, 456, - /* 1220 */ 51, 458, 47, 48, 33, 462, 463, 109, 110, 45, - /* 1230 */ 112, 262, 263, 0, 115, 0, 45, 346, 106, 0, - /* 1240 */ 77, 33, 285, 266, 470, 64, 470, 473, 423, 473, - /* 1250 */ 359, 108, 134, 376, 111, 22, 138, 22, 77, 108, - /* 1260 */ 108, 22, 111, 111, 490, 491, 490, 491, 388, 495, - /* 1270 */ 496, 495, 496, 108, 287, 33, 111, 18, 387, 211, - /* 1280 */ 33, 213, 23, 102, 165, 33, 105, 347, 346, 49, - /* 1290 */ 399, 388, 401, 33, 33, 470, 141, 142, 473, 40, - /* 1300 */ 41, 359, 413, 44, 499, 227, 33, 13, 488, 33, - /* 1310 */ 362, 33, 33, 54, 106, 490, 491, 1, 2, 33, - /* 1320 */ 495, 496, 141, 142, 65, 66, 67, 68, 33, 387, - /* 1330 */ 439, 37, 441, 33, 33, 444, 445, 446, 447, 448, - /* 1340 */ 449, 399, 451, 401, 13, 105, 482, 375, 106, 375, - /* 1350 */ 387, 422, 362, 106, 173, 174, 33, 33, 106, 33, - /* 1360 */ 33, 180, 181, 33, 105, 413, 106, 106, 37, 357, - /* 1370 */ 359, 398, 413, 472, 492, 464, 195, 289, 197, 106, - /* 1380 */ 489, 439, 106, 441, 106, 106, 444, 445, 446, 447, - /* 1390 */ 448, 449, 106, 451, 475, 267, 51, 20, 456, 433, - /* 1400 */ 458, 106, 143, 424, 462, 463, 106, 106, 227, 228, - /* 1410 */ 440, 230, 231, 232, 233, 234, 235, 236, 237, 238, - /* 1420 */ 239, 240, 241, 242, 243, 244, 245, 246, 247, 106, - /* 1430 */ 106, 210, 106, 106, 12, 13, 106, 367, 438, 433, - /* 1440 */ 367, 193, 426, 20, 22, 359, 187, 188, 189, 346, - /* 1450 */ 45, 192, 408, 20, 413, 359, 408, 35, 405, 37, - /* 1460 */ 172, 359, 359, 358, 205, 206, 358, 408, 405, 405, - /* 1470 */ 103, 371, 101, 358, 100, 216, 370, 20, 219, 369, - /* 1480 */ 358, 222, 223, 224, 225, 226, 64, 358, 351, 358, - /* 1490 */ 387, 50, 351, 355, 355, 433, 20, 20, 401, 77, - /* 1500 */ 367, 367, 399, 20, 401, 360, 425, 367, 360, 367, - /* 1510 */ 20, 416, 358, 367, 367, 351, 367, 214, 358, 399, - /* 1520 */ 399, 349, 387, 264, 102, 349, 399, 437, 346, 351, - /* 1530 */ 105, 387, 433, 435, 201, 200, 199, 387, 365, 432, - /* 1540 */ 387, 359, 439, 387, 441, 387, 387, 444, 445, 446, - /* 1550 */ 447, 448, 449, 387, 451, 387, 431, 387, 387, 456, - /* 1560 */ 365, 458, 401, 358, 274, 462, 463, 282, 481, 387, - /* 1570 */ 273, 186, 481, 399, 481, 284, 484, 483, 399, 283, - /* 1580 */ 413, 399, 500, 401, 346, 399, 424, 430, 399, 480, - /* 1590 */ 413, 479, 478, 268, 288, 291, 286, 359, 418, 263, - /* 1600 */ 359, 418, 20, 115, 265, 494, 493, 178, 365, 424, - /* 1610 */ 360, 365, 476, 399, 418, 399, 399, 195, 399, 197, - /* 1620 */ 418, 439, 399, 441, 399, 387, 444, 445, 446, 447, - /* 1630 */ 448, 449, 414, 451, 365, 346, 443, 399, 456, 401, - /* 1640 */ 458, 383, 365, 359, 462, 463, 105, 105, 359, 227, - /* 1650 */ 228, 461, 399, 391, 22, 348, 358, 377, 365, 38, - /* 1660 */ 346, 474, 240, 241, 242, 243, 244, 245, 246, 352, - /* 1670 */ 351, 427, 344, 359, 419, 419, 387, 439, 0, 441, - /* 1680 */ 381, 366, 444, 445, 446, 447, 448, 449, 399, 451, - /* 1690 */ 401, 453, 381, 381, 0, 0, 0, 434, 45, 37, - /* 1700 */ 220, 387, 37, 37, 37, 220, 0, 37, 37, 220, - /* 1710 */ 0, 0, 220, 399, 37, 401, 0, 0, 37, 22, - /* 1720 */ 215, 0, 203, 0, 203, 197, 204, 195, 439, 0, - /* 1730 */ 441, 0, 0, 444, 445, 446, 447, 448, 449, 191, - /* 1740 */ 451, 190, 0, 0, 146, 0, 37, 458, 49, 49, - /* 1750 */ 0, 462, 463, 439, 51, 441, 346, 49, 444, 445, - /* 1760 */ 446, 447, 448, 449, 0, 451, 0, 45, 0, 359, - /* 1770 */ 160, 0, 458, 0, 49, 0, 462, 463, 0, 0, - /* 1780 */ 0, 346, 0, 0, 37, 160, 0, 0, 0, 0, - /* 1790 */ 0, 0, 0, 0, 359, 0, 0, 387, 0, 0, - /* 1800 */ 0, 0, 0, 0, 49, 0, 45, 0, 0, 399, - /* 1810 */ 0, 401, 346, 0, 0, 0, 22, 0, 146, 0, - /* 1820 */ 145, 0, 387, 144, 0, 359, 0, 50, 22, 0, - /* 1830 */ 0, 22, 0, 64, 399, 50, 401, 346, 64, 0, - /* 1840 */ 64, 37, 0, 0, 0, 0, 0, 186, 37, 439, - /* 1850 */ 359, 441, 71, 387, 444, 445, 446, 447, 448, 449, - /* 1860 */ 42, 451, 37, 51, 42, 399, 0, 401, 458, 42, - /* 1870 */ 37, 51, 462, 463, 439, 14, 441, 42, 387, 444, - /* 1880 */ 445, 446, 447, 448, 449, 450, 451, 452, 453, 37, - /* 1890 */ 399, 51, 401, 33, 45, 0, 49, 43, 42, 49, - /* 1900 */ 49, 0, 0, 0, 42, 439, 346, 441, 49, 0, - /* 1910 */ 444, 445, 446, 447, 448, 449, 0, 451, 0, 359, - /* 1920 */ 0, 37, 51, 42, 0, 37, 51, 42, 0, 37, - /* 1930 */ 439, 51, 441, 42, 0, 444, 445, 446, 447, 448, - /* 1940 */ 449, 37, 451, 0, 51, 0, 0, 387, 0, 42, - /* 1950 */ 0, 0, 486, 487, 113, 22, 37, 0, 37, 399, - /* 1960 */ 37, 401, 37, 37, 111, 33, 37, 37, 37, 33, - /* 1970 */ 0, 22, 37, 346, 37, 37, 22, 0, 22, 0, - /* 1980 */ 53, 22, 0, 0, 37, 0, 359, 0, 497, 498, - /* 1990 */ 37, 0, 37, 22, 20, 37, 106, 346, 37, 439, - /* 2000 */ 37, 441, 105, 0, 444, 445, 446, 447, 448, 449, - /* 2010 */ 359, 451, 175, 105, 387, 37, 22, 0, 458, 22, - /* 2020 */ 0, 0, 3, 463, 262, 202, 399, 269, 401, 198, - /* 2030 */ 175, 33, 33, 175, 50, 178, 50, 33, 387, 175, - /* 2040 */ 33, 49, 101, 392, 105, 182, 106, 182, 346, 105, - /* 2050 */ 399, 49, 401, 269, 3, 103, 33, 33, 49, 37, - /* 2060 */ 49, 359, 33, 37, 37, 105, 439, 105, 441, 37, - /* 2070 */ 106, 444, 445, 446, 447, 448, 449, 105, 451, 106, - /* 2080 */ 346, 106, 106, 37, 37, 105, 0, 106, 0, 387, - /* 2090 */ 439, 42, 441, 359, 106, 444, 445, 446, 447, 448, - /* 2100 */ 449, 399, 451, 401, 0, 269, 42, 106, 49, 114, - /* 2110 */ 105, 105, 33, 105, 487, 105, 346, 103, 106, 106, - /* 2120 */ 2, 387, 249, 105, 22, 227, 392, 49, 22, 359, - /* 2130 */ 105, 103, 49, 399, 229, 401, 105, 37, 37, 106, - /* 2140 */ 105, 439, 106, 441, 179, 177, 444, 445, 446, 447, - /* 2150 */ 448, 449, 115, 451, 106, 105, 37, 387, 105, 105, - /* 2160 */ 37, 106, 392, 105, 37, 37, 106, 105, 105, 399, - /* 2170 */ 105, 401, 106, 439, 106, 441, 106, 105, 444, 445, - /* 2180 */ 446, 447, 448, 449, 346, 451, 106, 105, 37, 33, - /* 2190 */ 106, 37, 105, 126, 105, 126, 105, 359, 105, 126, - /* 2200 */ 498, 126, 22, 71, 70, 37, 37, 37, 37, 439, - /* 2210 */ 37, 441, 37, 37, 444, 445, 446, 447, 448, 449, - /* 2220 */ 346, 451, 37, 77, 99, 387, 33, 37, 37, 37, - /* 2230 */ 392, 22, 37, 359, 37, 346, 37, 399, 77, 401, - /* 2240 */ 37, 37, 37, 37, 37, 22, 0, 37, 359, 37, - /* 2250 */ 42, 51, 346, 0, 37, 42, 0, 37, 42, 0, - /* 2260 */ 0, 387, 51, 42, 37, 359, 51, 37, 37, 51, - /* 2270 */ 0, 22, 33, 399, 22, 401, 387, 439, 21, 441, - /* 2280 */ 22, 20, 444, 445, 446, 447, 448, 449, 399, 451, - /* 2290 */ 401, 22, 21, 387, 501, 501, 501, 501, 501, 501, - /* 2300 */ 501, 501, 501, 501, 501, 399, 501, 401, 501, 501, - /* 2310 */ 501, 501, 501, 439, 501, 441, 501, 501, 444, 445, - /* 2320 */ 446, 447, 448, 449, 501, 451, 501, 501, 439, 501, - /* 2330 */ 441, 501, 501, 444, 445, 446, 447, 448, 449, 501, - /* 2340 */ 451, 501, 501, 501, 501, 439, 346, 441, 501, 501, - /* 2350 */ 444, 445, 446, 447, 448, 449, 501, 451, 501, 359, - /* 2360 */ 501, 346, 501, 501, 501, 501, 501, 501, 501, 501, - /* 2370 */ 501, 501, 501, 501, 359, 501, 501, 501, 501, 501, - /* 2380 */ 501, 501, 501, 501, 501, 346, 501, 387, 501, 501, - /* 2390 */ 501, 501, 501, 501, 501, 501, 501, 501, 359, 399, - /* 2400 */ 501, 401, 387, 501, 501, 501, 501, 501, 501, 501, - /* 2410 */ 501, 501, 501, 501, 399, 501, 401, 501, 501, 501, - /* 2420 */ 501, 501, 501, 501, 501, 501, 387, 501, 501, 501, - /* 2430 */ 501, 501, 501, 501, 501, 501, 501, 501, 399, 439, - /* 2440 */ 401, 441, 501, 501, 444, 445, 446, 447, 448, 449, - /* 2450 */ 501, 451, 501, 501, 439, 501, 441, 501, 501, 444, - /* 2460 */ 445, 446, 447, 448, 449, 501, 451, 501, 346, 501, - /* 2470 */ 501, 501, 501, 501, 501, 501, 501, 501, 439, 501, - /* 2480 */ 441, 359, 501, 444, 445, 446, 447, 448, 449, 501, - /* 2490 */ 451, 501, 501, 346, 501, 501, 501, 501, 501, 501, - /* 2500 */ 501, 501, 501, 501, 346, 501, 359, 501, 501, 387, - /* 2510 */ 501, 501, 501, 501, 501, 501, 501, 359, 501, 501, - /* 2520 */ 501, 399, 501, 401, 501, 501, 501, 501, 501, 501, - /* 2530 */ 501, 501, 501, 501, 387, 501, 501, 501, 501, 501, - /* 2540 */ 501, 501, 501, 501, 501, 387, 399, 501, 401, 501, - /* 2550 */ 501, 501, 501, 501, 501, 501, 501, 399, 501, 401, - /* 2560 */ 501, 439, 501, 441, 501, 501, 444, 445, 446, 447, - /* 2570 */ 448, 449, 346, 451, 501, 501, 501, 501, 501, 501, - /* 2580 */ 501, 501, 501, 501, 501, 359, 439, 501, 441, 501, - /* 2590 */ 501, 444, 445, 446, 447, 448, 449, 439, 451, 441, - /* 2600 */ 501, 501, 444, 445, 446, 447, 448, 449, 346, 451, - /* 2610 */ 501, 501, 501, 387, 501, 501, 501, 501, 501, 501, - /* 2620 */ 501, 359, 501, 346, 501, 399, 501, 401, 501, 501, - /* 2630 */ 501, 501, 501, 501, 501, 501, 359, 501, 501, 501, - /* 2640 */ 346, 501, 501, 501, 501, 501, 501, 501, 501, 387, - /* 2650 */ 501, 501, 501, 359, 501, 501, 501, 501, 501, 501, - /* 2660 */ 501, 399, 501, 401, 387, 439, 501, 441, 501, 501, - /* 2670 */ 444, 445, 446, 447, 448, 449, 399, 451, 401, 501, - /* 2680 */ 501, 387, 501, 501, 501, 501, 501, 501, 501, 501, - /* 2690 */ 501, 501, 501, 399, 501, 401, 501, 501, 501, 501, - /* 2700 */ 501, 439, 501, 441, 501, 501, 444, 445, 446, 447, - /* 2710 */ 448, 449, 501, 451, 501, 501, 439, 501, 441, 501, - /* 2720 */ 501, 444, 445, 446, 447, 448, 449, 501, 451, 501, - /* 2730 */ 501, 501, 501, 439, 346, 441, 501, 501, 444, 445, - /* 2740 */ 446, 447, 448, 449, 501, 451, 501, 359, 501, 346, - /* 2750 */ 501, 501, 501, 501, 501, 501, 501, 501, 501, 501, - /* 2760 */ 501, 501, 359, 501, 501, 501, 501, 501, 501, 501, - /* 2770 */ 501, 501, 501, 346, 501, 387, 501, 501, 501, 501, - /* 2780 */ 501, 501, 501, 501, 501, 501, 359, 399, 501, 401, - /* 2790 */ 387, 501, 501, 501, 501, 501, 501, 501, 501, 501, - /* 2800 */ 501, 501, 399, 501, 401, 501, 501, 501, 501, 501, - /* 2810 */ 501, 501, 501, 501, 387, 501, 501, 501, 501, 501, - /* 2820 */ 501, 501, 501, 501, 501, 501, 399, 439, 401, 441, - /* 2830 */ 501, 501, 444, 445, 446, 447, 448, 449, 501, 451, - /* 2840 */ 346, 501, 439, 501, 441, 501, 501, 444, 445, 446, - /* 2850 */ 447, 448, 449, 359, 451, 501, 346, 501, 501, 501, - /* 2860 */ 501, 501, 501, 501, 501, 501, 439, 501, 441, 359, - /* 2870 */ 501, 444, 445, 446, 447, 448, 449, 501, 451, 501, - /* 2880 */ 501, 387, 501, 501, 501, 501, 501, 501, 501, 501, - /* 2890 */ 501, 501, 501, 399, 501, 401, 501, 387, 501, 501, - /* 2900 */ 501, 501, 501, 501, 501, 501, 501, 501, 501, 399, - /* 2910 */ 501, 401, 501, 501, 501, 501, 501, 501, 501, 346, - /* 2920 */ 501, 501, 501, 501, 501, 501, 501, 501, 501, 501, - /* 2930 */ 501, 501, 359, 439, 501, 441, 501, 501, 444, 445, - /* 2940 */ 446, 447, 448, 449, 501, 451, 501, 501, 501, 439, - /* 2950 */ 346, 441, 501, 501, 444, 445, 446, 447, 448, 449, - /* 2960 */ 387, 451, 501, 359, 501, 501, 501, 501, 501, 501, - /* 2970 */ 346, 501, 399, 501, 401, 501, 501, 501, 501, 501, - /* 2980 */ 501, 501, 501, 359, 501, 501, 501, 346, 501, 501, - /* 2990 */ 501, 387, 501, 501, 501, 501, 501, 501, 501, 501, - /* 3000 */ 359, 501, 501, 399, 501, 401, 501, 501, 501, 501, - /* 3010 */ 501, 387, 439, 501, 441, 501, 501, 444, 445, 446, - /* 3020 */ 447, 448, 449, 399, 451, 401, 501, 501, 387, 501, - /* 3030 */ 501, 501, 501, 501, 501, 501, 501, 501, 501, 501, - /* 3040 */ 399, 501, 401, 439, 501, 441, 501, 501, 444, 445, - /* 3050 */ 446, 447, 448, 449, 501, 451, 501, 501, 501, 501, - /* 3060 */ 501, 501, 501, 439, 501, 441, 501, 501, 444, 445, - /* 3070 */ 446, 447, 448, 449, 501, 451, 501, 501, 501, 501, - /* 3080 */ 439, 501, 441, 501, 501, 444, 445, 446, 447, 448, - /* 3090 */ 449, 501, 451, 343, 343, 343, 343, 343, 343, 343, + /* 1190 */ 245, 246, 247, 12, 13, 13, 13, 0, 33, 33, + /* 1200 */ 175, 20, 0, 22, 106, 1, 0, 33, 107, 141, + /* 1210 */ 142, 33, 33, 1, 2, 70, 35, 49, 37, 37, + /* 1220 */ 37, 33, 33, 19, 22, 33, 105, 37, 22, 106, + /* 1230 */ 13, 388, 106, 13, 33, 114, 106, 346, 388, 35, + /* 1240 */ 106, 33, 388, 33, 33, 64, 33, 33, 33, 52, + /* 1250 */ 359, 388, 361, 37, 37, 51, 388, 37, 77, 33, + /* 1260 */ 428, 197, 376, 59, 60, 61, 62, 347, 64, 412, + /* 1270 */ 263, 106, 498, 105, 33, 487, 362, 18, 387, 481, + /* 1280 */ 375, 375, 23, 102, 106, 106, 105, 387, 421, 362, + /* 1290 */ 399, 412, 401, 77, 106, 106, 357, 359, 106, 40, + /* 1300 */ 41, 398, 412, 44, 471, 12, 13, 106, 104, 491, + /* 1310 */ 463, 107, 423, 54, 106, 22, 106, 106, 474, 106, + /* 1320 */ 106, 106, 141, 142, 65, 66, 67, 68, 35, 438, + /* 1330 */ 37, 440, 106, 221, 443, 444, 445, 446, 447, 448, + /* 1340 */ 267, 450, 51, 139, 20, 432, 455, 106, 457, 439, + /* 1350 */ 210, 367, 461, 462, 173, 174, 437, 64, 432, 367, + /* 1360 */ 193, 180, 181, 20, 105, 425, 358, 20, 359, 408, + /* 1370 */ 77, 45, 227, 20, 412, 359, 195, 408, 197, 172, + /* 1380 */ 405, 177, 358, 405, 408, 359, 405, 197, 184, 358, + /* 1390 */ 103, 371, 370, 101, 358, 102, 100, 346, 369, 358, + /* 1400 */ 358, 358, 143, 20, 351, 50, 351, 203, 227, 228, + /* 1410 */ 359, 230, 231, 232, 233, 234, 235, 236, 237, 238, + /* 1420 */ 239, 240, 241, 242, 243, 244, 245, 246, 247, 355, + /* 1430 */ 355, 432, 367, 20, 367, 401, 20, 20, 387, 360, + /* 1440 */ 360, 424, 20, 367, 358, 367, 187, 188, 189, 367, + /* 1450 */ 399, 192, 401, 287, 415, 367, 367, 351, 387, 387, + /* 1460 */ 358, 351, 349, 289, 205, 206, 349, 214, 387, 399, + /* 1470 */ 387, 387, 387, 346, 387, 216, 436, 387, 219, 387, + /* 1480 */ 387, 222, 223, 224, 225, 226, 359, 387, 195, 438, + /* 1490 */ 197, 440, 105, 399, 443, 444, 445, 446, 447, 448, + /* 1500 */ 434, 450, 346, 365, 399, 201, 455, 200, 457, 401, + /* 1510 */ 199, 365, 461, 462, 387, 359, 358, 399, 274, 282, + /* 1520 */ 227, 228, 431, 264, 480, 429, 399, 432, 401, 430, + /* 1530 */ 423, 412, 412, 240, 241, 242, 243, 244, 245, 246, + /* 1540 */ 346, 273, 417, 387, 483, 186, 399, 284, 417, 480, + /* 1550 */ 399, 399, 283, 359, 268, 399, 423, 401, 291, 499, + /* 1560 */ 288, 286, 263, 20, 359, 438, 442, 440, 115, 360, + /* 1570 */ 443, 444, 445, 446, 447, 448, 417, 450, 265, 482, + /* 1580 */ 417, 387, 455, 365, 457, 399, 365, 478, 461, 462, + /* 1590 */ 475, 480, 346, 399, 438, 401, 440, 399, 399, 443, + /* 1600 */ 444, 445, 446, 447, 448, 359, 450, 493, 479, 477, + /* 1610 */ 473, 455, 178, 457, 492, 365, 413, 461, 462, 383, + /* 1620 */ 365, 399, 399, 399, 359, 105, 105, 399, 377, 460, + /* 1630 */ 346, 391, 438, 387, 440, 358, 365, 443, 444, 445, + /* 1640 */ 446, 447, 448, 359, 450, 399, 22, 401, 348, 38, + /* 1650 */ 352, 457, 351, 426, 381, 461, 462, 418, 433, 381, + /* 1660 */ 346, 418, 381, 366, 344, 0, 0, 0, 45, 0, + /* 1670 */ 37, 387, 220, 359, 37, 37, 37, 220, 0, 37, + /* 1680 */ 37, 220, 346, 399, 438, 401, 440, 0, 220, 443, + /* 1690 */ 444, 445, 446, 447, 448, 359, 450, 0, 37, 0, + /* 1700 */ 0, 387, 22, 457, 215, 37, 0, 461, 462, 203, + /* 1710 */ 0, 203, 197, 399, 204, 401, 0, 195, 0, 0, + /* 1720 */ 191, 190, 438, 387, 440, 0, 0, 443, 444, 445, + /* 1730 */ 446, 447, 448, 146, 450, 399, 0, 401, 49, 49, + /* 1740 */ 37, 457, 51, 0, 49, 461, 462, 0, 0, 45, + /* 1750 */ 0, 0, 438, 0, 440, 346, 49, 443, 444, 445, + /* 1760 */ 446, 447, 448, 449, 450, 451, 452, 0, 359, 0, + /* 1770 */ 0, 0, 346, 0, 438, 160, 440, 37, 0, 443, + /* 1780 */ 444, 445, 446, 447, 448, 359, 450, 160, 0, 0, + /* 1790 */ 0, 0, 0, 346, 0, 0, 387, 45, 49, 0, + /* 1800 */ 0, 0, 0, 0, 0, 0, 359, 0, 399, 0, + /* 1810 */ 401, 0, 0, 387, 0, 0, 0, 0, 0, 0, + /* 1820 */ 22, 485, 486, 146, 0, 399, 145, 401, 0, 144, + /* 1830 */ 0, 0, 22, 50, 387, 22, 0, 50, 64, 0, + /* 1840 */ 64, 0, 0, 37, 64, 0, 399, 438, 401, 440, + /* 1850 */ 42, 0, 443, 444, 445, 446, 447, 448, 37, 450, + /* 1860 */ 37, 0, 346, 0, 438, 0, 440, 42, 33, 443, + /* 1870 */ 444, 445, 446, 447, 448, 359, 450, 51, 51, 42, + /* 1880 */ 37, 37, 42, 457, 51, 438, 346, 440, 462, 14, + /* 1890 */ 443, 444, 445, 446, 447, 448, 49, 450, 45, 359, + /* 1900 */ 0, 49, 43, 387, 49, 496, 497, 0, 392, 42, + /* 1910 */ 0, 0, 346, 42, 186, 399, 0, 401, 49, 0, + /* 1920 */ 0, 71, 0, 0, 37, 359, 42, 387, 51, 0, + /* 1930 */ 37, 51, 392, 486, 0, 37, 346, 42, 42, 399, + /* 1940 */ 51, 401, 37, 42, 0, 51, 0, 0, 0, 359, + /* 1950 */ 0, 0, 0, 387, 438, 22, 440, 111, 37, 443, + /* 1960 */ 444, 445, 446, 447, 448, 399, 450, 401, 37, 113, + /* 1970 */ 0, 22, 37, 37, 37, 37, 37, 387, 438, 0, + /* 1980 */ 440, 0, 37, 443, 444, 445, 446, 447, 448, 399, + /* 1990 */ 450, 401, 33, 33, 37, 37, 22, 22, 37, 0, + /* 2000 */ 22, 37, 346, 0, 438, 0, 440, 53, 0, 443, + /* 2010 */ 444, 445, 446, 447, 448, 359, 450, 37, 346, 0, + /* 2020 */ 37, 0, 22, 37, 20, 37, 37, 0, 438, 346, + /* 2030 */ 440, 359, 106, 443, 444, 445, 446, 447, 448, 175, + /* 2040 */ 450, 0, 359, 387, 37, 105, 105, 22, 392, 175, + /* 2050 */ 202, 22, 198, 0, 488, 399, 178, 401, 175, 387, + /* 2060 */ 0, 182, 3, 175, 182, 269, 33, 105, 50, 106, + /* 2070 */ 387, 399, 105, 401, 103, 392, 50, 101, 106, 33, + /* 2080 */ 33, 33, 399, 106, 401, 49, 49, 497, 106, 105, + /* 2090 */ 105, 3, 105, 37, 438, 105, 440, 33, 269, 443, + /* 2100 */ 444, 445, 446, 447, 448, 33, 450, 106, 106, 0, + /* 2110 */ 438, 37, 440, 37, 37, 443, 444, 445, 446, 447, + /* 2120 */ 448, 438, 450, 440, 452, 33, 443, 444, 445, 446, + /* 2130 */ 447, 448, 346, 450, 37, 269, 37, 106, 49, 49, + /* 2140 */ 106, 0, 42, 346, 105, 359, 106, 262, 105, 0, + /* 2150 */ 106, 49, 179, 42, 105, 105, 359, 105, 33, 105, + /* 2160 */ 103, 249, 2, 49, 103, 114, 22, 105, 346, 177, + /* 2170 */ 227, 106, 105, 387, 106, 105, 49, 106, 392, 106, + /* 2180 */ 105, 359, 229, 105, 387, 399, 22, 401, 105, 37, + /* 2190 */ 106, 37, 105, 37, 115, 37, 399, 106, 401, 105, + /* 2200 */ 37, 106, 106, 105, 37, 37, 105, 126, 105, 387, + /* 2210 */ 106, 106, 105, 105, 33, 105, 37, 105, 22, 126, + /* 2220 */ 70, 399, 71, 401, 438, 37, 440, 37, 37, 443, + /* 2230 */ 444, 445, 446, 447, 448, 438, 450, 440, 346, 126, + /* 2240 */ 443, 444, 445, 446, 447, 448, 126, 450, 37, 37, + /* 2250 */ 37, 359, 37, 37, 77, 33, 99, 37, 37, 22, + /* 2260 */ 438, 37, 440, 37, 346, 443, 444, 445, 446, 447, + /* 2270 */ 448, 37, 450, 37, 22, 77, 37, 359, 37, 387, + /* 2280 */ 37, 37, 37, 37, 0, 37, 51, 0, 346, 42, + /* 2290 */ 37, 399, 42, 401, 0, 37, 42, 0, 37, 42, + /* 2300 */ 51, 359, 51, 0, 0, 387, 51, 37, 37, 33, + /* 2310 */ 22, 22, 21, 500, 346, 22, 21, 399, 22, 401, + /* 2320 */ 20, 500, 500, 500, 500, 500, 500, 359, 500, 387, + /* 2330 */ 438, 500, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2340 */ 448, 399, 450, 401, 500, 500, 500, 500, 500, 500, + /* 2350 */ 500, 500, 500, 500, 500, 387, 438, 500, 440, 500, + /* 2360 */ 500, 443, 444, 445, 446, 447, 448, 399, 450, 401, + /* 2370 */ 500, 500, 500, 500, 500, 500, 500, 500, 346, 500, + /* 2380 */ 438, 500, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2390 */ 448, 359, 450, 500, 500, 500, 500, 500, 500, 500, + /* 2400 */ 500, 500, 500, 500, 346, 500, 438, 500, 440, 500, + /* 2410 */ 500, 443, 444, 445, 446, 447, 448, 359, 450, 387, + /* 2420 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + /* 2430 */ 500, 399, 500, 401, 500, 500, 500, 500, 500, 500, + /* 2440 */ 500, 500, 500, 500, 500, 387, 500, 500, 500, 500, + /* 2450 */ 500, 500, 500, 500, 500, 500, 500, 399, 500, 401, + /* 2460 */ 500, 500, 500, 500, 500, 500, 500, 500, 346, 500, + /* 2470 */ 438, 500, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2480 */ 448, 359, 450, 500, 500, 500, 500, 500, 500, 500, + /* 2490 */ 500, 500, 500, 500, 500, 500, 438, 500, 440, 500, + /* 2500 */ 500, 443, 444, 445, 446, 447, 448, 500, 450, 387, + /* 2510 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + /* 2520 */ 346, 399, 500, 401, 500, 500, 500, 500, 500, 500, + /* 2530 */ 500, 500, 500, 359, 500, 500, 500, 500, 500, 500, + /* 2540 */ 500, 500, 500, 346, 500, 500, 500, 500, 500, 500, + /* 2550 */ 500, 500, 500, 500, 500, 500, 359, 500, 500, 500, + /* 2560 */ 438, 387, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2570 */ 448, 500, 450, 399, 500, 401, 500, 500, 500, 500, + /* 2580 */ 500, 500, 500, 500, 387, 500, 500, 500, 500, 500, + /* 2590 */ 500, 500, 500, 500, 500, 500, 399, 500, 401, 500, + /* 2600 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + /* 2610 */ 500, 500, 438, 346, 440, 500, 500, 443, 444, 445, + /* 2620 */ 446, 447, 448, 500, 450, 500, 359, 500, 500, 500, + /* 2630 */ 500, 500, 500, 500, 500, 438, 500, 440, 346, 500, + /* 2640 */ 443, 444, 445, 446, 447, 448, 500, 450, 500, 500, + /* 2650 */ 500, 359, 500, 500, 387, 500, 500, 500, 500, 500, + /* 2660 */ 500, 500, 500, 500, 500, 500, 399, 500, 401, 500, + /* 2670 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 387, + /* 2680 */ 500, 500, 500, 500, 500, 500, 500, 500, 346, 500, + /* 2690 */ 500, 399, 500, 401, 500, 500, 500, 500, 500, 500, + /* 2700 */ 500, 359, 500, 346, 500, 438, 500, 440, 500, 500, + /* 2710 */ 443, 444, 445, 446, 447, 448, 359, 450, 500, 500, + /* 2720 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 387, + /* 2730 */ 438, 500, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2740 */ 448, 399, 450, 401, 387, 500, 500, 500, 500, 500, + /* 2750 */ 500, 500, 500, 346, 500, 500, 399, 500, 401, 500, + /* 2760 */ 500, 500, 500, 500, 500, 500, 359, 500, 500, 500, + /* 2770 */ 500, 500, 500, 500, 500, 500, 500, 500, 346, 500, + /* 2780 */ 438, 500, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2790 */ 448, 359, 450, 500, 387, 438, 500, 440, 500, 500, + /* 2800 */ 443, 444, 445, 446, 447, 448, 399, 450, 401, 500, + /* 2810 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 387, + /* 2820 */ 500, 500, 500, 500, 500, 500, 500, 500, 346, 500, + /* 2830 */ 500, 399, 500, 401, 500, 500, 500, 500, 500, 500, + /* 2840 */ 500, 359, 500, 346, 500, 438, 500, 440, 500, 500, + /* 2850 */ 443, 444, 445, 446, 447, 448, 359, 450, 500, 500, + /* 2860 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 387, + /* 2870 */ 438, 500, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2880 */ 448, 399, 450, 401, 387, 500, 500, 500, 500, 500, + /* 2890 */ 500, 500, 500, 500, 500, 500, 399, 500, 401, 500, + /* 2900 */ 500, 500, 500, 500, 500, 500, 500, 500, 346, 500, + /* 2910 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + /* 2920 */ 438, 359, 440, 500, 500, 443, 444, 445, 446, 447, + /* 2930 */ 448, 500, 450, 500, 500, 438, 500, 440, 500, 500, + /* 2940 */ 443, 444, 445, 446, 447, 448, 500, 450, 500, 387, + /* 2950 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + /* 2960 */ 346, 399, 500, 401, 500, 500, 500, 500, 500, 500, + /* 2970 */ 500, 500, 500, 359, 500, 500, 500, 500, 500, 500, + /* 2980 */ 500, 500, 346, 500, 500, 500, 500, 500, 500, 500, + /* 2990 */ 500, 500, 500, 500, 500, 359, 500, 500, 500, 500, + /* 3000 */ 438, 387, 440, 500, 500, 443, 444, 445, 446, 447, + /* 3010 */ 448, 500, 450, 399, 500, 401, 500, 500, 500, 500, + /* 3020 */ 500, 500, 500, 387, 500, 500, 500, 500, 500, 500, + /* 3030 */ 500, 500, 500, 500, 500, 399, 500, 401, 500, 500, + /* 3040 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + /* 3050 */ 500, 500, 438, 500, 440, 500, 500, 443, 444, 445, + /* 3060 */ 446, 447, 448, 500, 450, 500, 500, 500, 500, 500, + /* 3070 */ 500, 500, 500, 500, 438, 500, 440, 500, 500, 443, + /* 3080 */ 444, 445, 446, 447, 448, 500, 450, 343, 343, 343, + /* 3090 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, /* 3100 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, /* 3110 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, /* 3120 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, @@ -1221,216 +1220,215 @@ static const YYCODETYPE yy_lookahead[] = { /* 3400 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, /* 3410 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, /* 3420 */ 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, - /* 3430 */ 343, 343, 343, 343, 343, 343, }; #define YY_SHIFT_COUNT (815) #define YY_SHIFT_MIN (0) -#define YY_SHIFT_MAX (2271) +#define YY_SHIFT_MAX (2304) static const unsigned short int yy_shift_ofst[] = { /* 0 */ 1259, 0, 236, 0, 473, 473, 473, 473, 473, 473, /* 10 */ 473, 473, 473, 473, 473, 473, 709, 945, 945, 1181, /* 20 */ 945, 945, 945, 945, 945, 945, 945, 945, 945, 945, /* 30 */ 945, 945, 945, 945, 945, 945, 945, 945, 945, 945, /* 40 */ 945, 945, 945, 945, 945, 945, 945, 945, 945, 945, - /* 50 */ 945, 163, 171, 232, 93, 397, 434, 397, 93, 93, - /* 60 */ 397, 235, 1422, 397, 1422, 1422, 225, 397, 6, 629, - /* 70 */ 49, 49, 629, 213, 213, 605, 320, 46, 46, 49, - /* 80 */ 49, 49, 49, 49, 49, 49, 49, 49, 49, 149, - /* 90 */ 49, 49, 147, 6, 49, 49, 604, 6, 49, 49, - /* 100 */ 6, 49, 49, 6, 49, 6, 6, 6, 49, 391, - /* 110 */ 196, 196, 211, 297, 468, 468, 468, 468, 468, 468, - /* 120 */ 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, - /* 130 */ 468, 468, 468, 1118, 657, 605, 320, 576, 576, 650, - /* 140 */ 176, 176, 176, 962, 414, 414, 650, 712, 147, 633, - /* 150 */ 6, 6, 511, 6, 887, 6, 887, 887, 704, 1003, - /* 160 */ 1101, 402, 402, 402, 402, 402, 402, 402, 402, 865, - /* 170 */ 538, 194, 340, 539, 364, 719, 73, 177, 177, 580, - /* 180 */ 909, 861, 616, 326, 1175, 549, 765, 516, 969, 868, - /* 190 */ 957, 969, 1184, 977, 529, 1128, 1345, 1377, 1221, 147, - /* 200 */ 1377, 147, 1248, 1423, 1405, 1433, 1423, 1405, 1288, 712, - /* 210 */ 1423, 712, 1405, 1288, 1288, 1367, 1371, 712, 1374, 712, - /* 220 */ 712, 712, 1457, 1441, 1457, 1441, 1377, 147, 1476, 147, - /* 230 */ 1477, 1483, 147, 1477, 147, 1490, 147, 147, 712, 147, - /* 240 */ 1457, 6, 6, 6, 6, 6, 6, 6, 6, 6, - /* 250 */ 6, 6, 712, 1101, 1101, 1457, 887, 887, 887, 1303, - /* 260 */ 1425, 1377, 391, 1333, 1335, 1476, 391, 1337, 1128, 712, - /* 270 */ 1433, 1433, 887, 1290, 1297, 887, 1290, 1297, 887, 887, - /* 280 */ 6, 1285, 1385, 1290, 1291, 1296, 1325, 1128, 1304, 1306, - /* 290 */ 1310, 1336, 1423, 1582, 1488, 1339, 1477, 391, 391, 1297, - /* 300 */ 887, 887, 887, 887, 887, 1297, 887, 1429, 391, 704, - /* 310 */ 391, 1423, 1541, 1542, 887, 1003, 712, 391, 1632, 1621, - /* 320 */ 1457, 3093, 3093, 3093, 3093, 3093, 3093, 3093, 3093, 3093, - /* 330 */ 36, 968, 65, 66, 975, 593, 643, 546, 15, 752, - /* 340 */ 812, 758, 899, 899, 899, 899, 899, 899, 899, 899, - /* 350 */ 899, 653, 367, 13, 187, 187, 25, 507, 412, 75, - /* 360 */ 722, 785, 1030, 458, 971, 971, 916, 811, 756, 916, - /* 370 */ 916, 916, 1169, 992, 1132, 135, 1191, 1119, 1104, 1143, - /* 380 */ 1151, 1152, 1165, 759, 1130, 1233, 1235, 1239, 1068, 1208, - /* 390 */ 1242, 272, 1247, 1252, 1260, 1155, 987, 1088, 1261, 1273, - /* 400 */ 1276, 1278, 1279, 1286, 1316, 1295, 1078, 1300, 1240, 1301, - /* 410 */ 1323, 1324, 1326, 1327, 1330, 564, 245, 999, 1294, 1331, - /* 420 */ 1163, 101, 1678, 1694, 1695, 1653, 1696, 1662, 1480, 1665, - /* 430 */ 1666, 1667, 1485, 1706, 1670, 1671, 1489, 1710, 1492, 1711, - /* 440 */ 1677, 1716, 1697, 1717, 1681, 1505, 1721, 1519, 1723, 1521, - /* 450 */ 1522, 1528, 1532, 1729, 1731, 1732, 1548, 1551, 1742, 1743, - /* 460 */ 1598, 1699, 1700, 1745, 1709, 1703, 1750, 1708, 1764, 1722, - /* 470 */ 1766, 1768, 1773, 1725, 1775, 1778, 1779, 1780, 1782, 1783, - /* 480 */ 1610, 1747, 1771, 1625, 1786, 1787, 1788, 1789, 1790, 1791, - /* 490 */ 1792, 1793, 1795, 1796, 1798, 1799, 1800, 1801, 1802, 1803, - /* 500 */ 1755, 1805, 1761, 1807, 1808, 1810, 1813, 1814, 1815, 1794, - /* 510 */ 1817, 1672, 1819, 1675, 1821, 1679, 1824, 1826, 1806, 1777, - /* 520 */ 1809, 1785, 1829, 1769, 1804, 1830, 1774, 1832, 1776, 1839, - /* 530 */ 1842, 1811, 1812, 1818, 1843, 1825, 1820, 1822, 1844, 1833, - /* 540 */ 1840, 1827, 1845, 1852, 1846, 1849, 1835, 1860, 1847, 1850, - /* 550 */ 1861, 1851, 1866, 1854, 1856, 1895, 1901, 1902, 1862, 1661, - /* 560 */ 1903, 1847, 1859, 1909, 1916, 1781, 1918, 1920, 1884, 1871, - /* 570 */ 1881, 1924, 1888, 1875, 1885, 1928, 1892, 1880, 1891, 1934, - /* 580 */ 1904, 1893, 1907, 1943, 1945, 1946, 1948, 1950, 1951, 1841, - /* 590 */ 1853, 1919, 1933, 1957, 1921, 1923, 1925, 1926, 1929, 1930, - /* 600 */ 1931, 1932, 1936, 1935, 1937, 1949, 1938, 1970, 1954, 1977, - /* 610 */ 1956, 1927, 1979, 1959, 1947, 1982, 1983, 1985, 1953, 1987, - /* 620 */ 1955, 1991, 1971, 1974, 1958, 1961, 1963, 1890, 1897, 2003, - /* 630 */ 1837, 1908, 1823, 1978, 1994, 2017, 1831, 1997, 1855, 1857, - /* 640 */ 2020, 2021, 1858, 1863, 1864, 1865, 2019, 1998, 1758, 1939, - /* 650 */ 1940, 1944, 1984, 1952, 1986, 1941, 1964, 1999, 2004, 1973, - /* 660 */ 1960, 1962, 1972, 1975, 2007, 1992, 2002, 1980, 2023, 1784, - /* 670 */ 1976, 1981, 2051, 2024, 1836, 2022, 2026, 2027, 2032, 2046, - /* 680 */ 2047, 1988, 2001, 2009, 1762, 2029, 2011, 2086, 2088, 2005, - /* 690 */ 2049, 2006, 2012, 2013, 2008, 2010, 1965, 2018, 2104, 2064, - /* 700 */ 1968, 2025, 1995, 1847, 2059, 2079, 2014, 1873, 2028, 2118, - /* 710 */ 2102, 1898, 2031, 2033, 2035, 2036, 2050, 2048, 2078, 2053, - /* 720 */ 2054, 2083, 2055, 2106, 1905, 2058, 2037, 2060, 2100, 2101, - /* 730 */ 2062, 2066, 2119, 2063, 2068, 2123, 2065, 2070, 2127, 2072, - /* 740 */ 2080, 2128, 2082, 2084, 2151, 2087, 2067, 2069, 2073, 2075, - /* 750 */ 2089, 2156, 2091, 2154, 2093, 2156, 2156, 2180, 2132, 2134, - /* 760 */ 2168, 2169, 2170, 2171, 2173, 2175, 2176, 2185, 2146, 2125, - /* 770 */ 2193, 2190, 2191, 2192, 2209, 2195, 2197, 2199, 2161, 1932, - /* 780 */ 2203, 1936, 2204, 2205, 2206, 2207, 2223, 2210, 2246, 2212, - /* 790 */ 2200, 2208, 2253, 2217, 2211, 2213, 2256, 2220, 2215, 2216, - /* 800 */ 2259, 2227, 2218, 2221, 2260, 2230, 2231, 2270, 2249, 2239, - /* 810 */ 2252, 2257, 2258, 2269, 2271, 2261, + /* 50 */ 945, 115, 277, 469, 149, 31, 295, 31, 149, 149, + /* 60 */ 31, 1293, 31, 235, 1293, 1293, 247, 31, 209, 851, + /* 70 */ 404, 404, 851, 319, 319, 40, 205, 350, 350, 404, + /* 80 */ 404, 404, 404, 404, 404, 404, 404, 404, 404, 422, + /* 90 */ 404, 404, 44, 209, 404, 404, 468, 209, 404, 404, + /* 100 */ 209, 404, 404, 209, 404, 209, 209, 209, 404, 540, + /* 110 */ 196, 196, 211, 54, 533, 533, 533, 533, 533, 533, + /* 120 */ 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, + /* 130 */ 533, 533, 533, 929, 183, 40, 205, 12, 12, 665, + /* 140 */ 239, 239, 239, 250, 345, 345, 665, 44, 551, 209, + /* 150 */ 209, 57, 209, 594, 209, 594, 594, 619, 743, 895, + /* 160 */ 402, 402, 402, 402, 402, 402, 402, 402, 1204, 263, + /* 170 */ 23, 669, 302, 49, 51, 190, 178, 178, 562, 89, + /* 180 */ 762, 853, 596, 1045, 1103, 470, 1025, 871, 1007, 803, + /* 190 */ 871, 1077, 908, 998, 1073, 1291, 1324, 1140, 44, 1324, + /* 200 */ 44, 1167, 1343, 1347, 1326, 1353, 1347, 1326, 1207, 1343, + /* 210 */ 1347, 1343, 1326, 1207, 1207, 1287, 1292, 1343, 1296, 1343, + /* 220 */ 1343, 1343, 1383, 1355, 1383, 1355, 1324, 44, 1413, 44, + /* 230 */ 1416, 1417, 44, 1416, 44, 1422, 44, 44, 1343, 44, + /* 240 */ 1383, 209, 209, 209, 209, 209, 209, 209, 209, 209, + /* 250 */ 209, 209, 1343, 895, 895, 1383, 594, 594, 594, 1253, + /* 260 */ 1387, 1324, 540, 1304, 1307, 1413, 540, 1311, 1073, 1343, + /* 270 */ 1353, 1353, 594, 1244, 1268, 594, 1244, 1268, 594, 594, + /* 280 */ 209, 1237, 1359, 1244, 1263, 1269, 1286, 1073, 1267, 1272, + /* 290 */ 1275, 1299, 1347, 1543, 1453, 1313, 1416, 540, 540, 1268, + /* 300 */ 594, 594, 594, 594, 594, 1268, 594, 1434, 540, 619, + /* 310 */ 540, 1347, 1520, 1521, 594, 743, 1343, 540, 1624, 1611, + /* 320 */ 1383, 3087, 3087, 3087, 3087, 3087, 3087, 3087, 3087, 3087, + /* 330 */ 36, 572, 65, 266, 827, 678, 780, 426, 789, 840, + /* 340 */ 612, 758, 754, 754, 754, 754, 754, 754, 754, 754, + /* 350 */ 754, 849, 836, 139, 26, 26, 485, 217, 171, 770, + /* 360 */ 343, 980, 983, 330, 872, 872, 1021, 1, 838, 1021, + /* 370 */ 1021, 1021, 727, 1112, 1098, 696, 1104, 293, 1128, 1027, + /* 380 */ 1028, 1033, 1035, 1182, 1183, 1148, 1202, 1206, 947, 1123, + /* 390 */ 1126, 1101, 1130, 1134, 1165, 1068, 1166, 1174, 1178, 1179, + /* 400 */ 1188, 1189, 1192, 1201, 1212, 1208, 1145, 1210, 1168, 1211, + /* 410 */ 1213, 1214, 1215, 1226, 1241, 1121, 1064, 1190, 1217, 1220, + /* 420 */ 1216, 1197, 1665, 1666, 1667, 1623, 1669, 1633, 1452, 1637, + /* 430 */ 1638, 1639, 1457, 1678, 1642, 1643, 1461, 1687, 1468, 1697, + /* 440 */ 1661, 1699, 1680, 1700, 1668, 1489, 1706, 1506, 1710, 1508, + /* 450 */ 1510, 1515, 1522, 1716, 1718, 1719, 1529, 1531, 1725, 1726, + /* 460 */ 1587, 1689, 1690, 1736, 1703, 1691, 1743, 1695, 1747, 1704, + /* 470 */ 1748, 1750, 1751, 1707, 1753, 1767, 1769, 1770, 1771, 1773, + /* 480 */ 1615, 1740, 1778, 1627, 1788, 1789, 1790, 1791, 1792, 1794, + /* 490 */ 1795, 1807, 1809, 1811, 1812, 1814, 1815, 1816, 1817, 1818, + /* 500 */ 1749, 1799, 1752, 1800, 1801, 1802, 1803, 1804, 1805, 1798, + /* 510 */ 1819, 1677, 1824, 1681, 1828, 1685, 1830, 1831, 1810, 1783, + /* 520 */ 1813, 1787, 1836, 1774, 1806, 1839, 1776, 1841, 1780, 1842, + /* 530 */ 1845, 1821, 1826, 1808, 1851, 1823, 1827, 1825, 1861, 1843, + /* 540 */ 1833, 1837, 1863, 1844, 1865, 1853, 1840, 1835, 1847, 1852, + /* 550 */ 1875, 1855, 1900, 1859, 1867, 1907, 1910, 1911, 1871, 1728, + /* 560 */ 1916, 1847, 1869, 1919, 1920, 1850, 1922, 1923, 1887, 1877, + /* 570 */ 1884, 1929, 1893, 1880, 1895, 1934, 1898, 1889, 1896, 1950, + /* 580 */ 1905, 1894, 1901, 1944, 1946, 1947, 1948, 1951, 1952, 1856, + /* 590 */ 1846, 1921, 1933, 1970, 1931, 1935, 1936, 1937, 1938, 1939, + /* 600 */ 1945, 1959, 1960, 1957, 1958, 1949, 1961, 1979, 1974, 1981, + /* 610 */ 1975, 1954, 1999, 1978, 1964, 2003, 2005, 2008, 1980, 2019, + /* 620 */ 1983, 2021, 2000, 2004, 1986, 1988, 1989, 1926, 1940, 2027, + /* 630 */ 1864, 1941, 1848, 2007, 2025, 2041, 1854, 2029, 1874, 1878, + /* 640 */ 2053, 2060, 1883, 1879, 1888, 1882, 2059, 2033, 1796, 1962, + /* 650 */ 1963, 1967, 2018, 1971, 2026, 1976, 1972, 2046, 2047, 1977, + /* 660 */ 1984, 1985, 1987, 1982, 2048, 2036, 2037, 1990, 2064, 1829, + /* 670 */ 2001, 2002, 2088, 2072, 1866, 2056, 2074, 2076, 2077, 2097, + /* 680 */ 2099, 2031, 2034, 2089, 1885, 2092, 2090, 2109, 2141, 2039, + /* 690 */ 2100, 2043, 2040, 2044, 2049, 2050, 1973, 2052, 2149, 2111, + /* 700 */ 1992, 2054, 2051, 1847, 2102, 2125, 2057, 1912, 2061, 2160, + /* 710 */ 2144, 1943, 2062, 2065, 2067, 2068, 2070, 2071, 2114, 2075, + /* 720 */ 2078, 2127, 2073, 2164, 1953, 2083, 2079, 2084, 2152, 2154, + /* 730 */ 2087, 2091, 2156, 2094, 2095, 2158, 2098, 2096, 2163, 2101, + /* 740 */ 2104, 2167, 2103, 2105, 2168, 2107, 2081, 2093, 2113, 2120, + /* 750 */ 2108, 2181, 2110, 2179, 2112, 2181, 2181, 2196, 2151, 2150, + /* 760 */ 2188, 2190, 2191, 2211, 2212, 2213, 2215, 2216, 2177, 2157, + /* 770 */ 2222, 2220, 2221, 2224, 2237, 2226, 2234, 2236, 2198, 1959, + /* 780 */ 2239, 1960, 2241, 2243, 2244, 2245, 2252, 2246, 2284, 2248, + /* 790 */ 2235, 2247, 2287, 2253, 2249, 2250, 2294, 2258, 2251, 2254, + /* 800 */ 2297, 2261, 2255, 2257, 2303, 2270, 2271, 2304, 2288, 2276, + /* 810 */ 2289, 2291, 2293, 2296, 2295, 2300, }; #define YY_REDUCE_COUNT (329) -#define YY_REDUCE_MIN (-452) -#define YY_REDUCE_MAX (2641) +#define YY_REDUCE_MIN (-463) +#define YY_REDUCE_MAX (2636) static const short yy_reduce_ofst[] = { - /* 0 */ 71, -301, 141, -26, 289, 396, 416, 615, 654, 763, - /* 10 */ 942, 1103, 1182, 1289, 1314, 1410, 1435, 1466, 1491, 1560, - /* 20 */ 1627, -82, 1651, 891, 1702, 1734, 1238, 1770, 1838, 1874, - /* 30 */ 1889, 1906, 2000, 2015, 2039, 2122, 2147, 2158, 2226, 2262, - /* 40 */ 2277, 2294, 2388, 2403, 2427, 2494, 2510, 2573, 2604, 2624, - /* 50 */ 2641, -303, -216, -423, -27, 500, 774, 776, 314, 334, - /* 60 */ 825, -252, 117, -452, -17, 238, 18, 493, -354, -123, - /* 70 */ -43, 198, -359, -350, -45, -355, 7, -91, 262, -222, - /* 80 */ 87, 139, 206, -348, -108, 316, 440, 475, 153, -312, - /* 90 */ 490, 527, -218, -386, 543, 560, -174, 429, 619, 640, - /* 100 */ 451, 647, 687, 486, 711, 606, 581, 656, 755, 658, - /* 110 */ -253, -253, -305, -343, -239, -65, 1, 30, 227, 510, - /* 120 */ 587, 675, 691, 698, 730, 735, 737, 739, 742, 745, - /* 130 */ 748, 750, 762, 408, 300, -98, -30, 513, 571, 498, - /* 140 */ 300, 307, 569, 231, -372, 465, 685, 613, 761, 732, - /* 150 */ 764, 768, 382, -100, 612, 772, 724, 731, 780, 821, - /* 160 */ 856, -379, -373, -369, 751, 827, 880, 903, 827, 727, - /* 170 */ 877, 940, 889, 805, 820, 948, 864, 972, 974, 963, - /* 180 */ 929, 963, 990, 952, 1012, 1011, 973, 959, 901, 901, - /* 190 */ 882, 901, 911, 919, 963, 979, 970, 966, 1000, 1070, - /* 200 */ 1006, 1073, 1016, 1086, 1044, 1041, 1096, 1048, 1053, 1105, - /* 210 */ 1102, 1108, 1059, 1063, 1064, 1100, 1106, 1115, 1110, 1122, - /* 220 */ 1129, 1131, 1137, 1138, 1141, 1139, 1062, 1133, 1097, 1134, - /* 230 */ 1145, 1081, 1140, 1148, 1142, 1095, 1146, 1147, 1154, 1149, - /* 240 */ 1164, 1135, 1144, 1150, 1153, 1156, 1158, 1159, 1166, 1168, - /* 250 */ 1170, 1171, 1160, 1172, 1176, 1178, 1120, 1121, 1127, 1090, - /* 260 */ 1098, 1099, 1173, 1107, 1125, 1161, 1195, 1157, 1162, 1205, - /* 270 */ 1167, 1177, 1174, 1087, 1180, 1179, 1091, 1183, 1186, 1189, - /* 280 */ 963, 1092, 1094, 1093, 1109, 1112, 1114, 1185, 1082, 1111, - /* 290 */ 1113, 901, 1241, 1193, 1136, 1187, 1250, 1243, 1246, 1196, - /* 300 */ 1214, 1216, 1217, 1219, 1223, 1202, 1225, 1218, 1269, 1258, - /* 310 */ 1277, 1284, 1190, 1262, 1253, 1280, 1298, 1293, 1307, 1317, - /* 320 */ 1319, 1244, 1263, 1255, 1256, 1299, 1311, 1312, 1315, 1328, + /* 0 */ -271, -300, 141, -25, 212, 378, 471, 614, 707, 891, + /* 10 */ 1051, 1127, 1156, 1194, 1246, 1284, 1314, 1336, 1409, 1426, + /* 20 */ 1447, 1516, 1540, 1566, 1590, 1656, 1672, 1683, 1786, 1797, + /* 30 */ 1822, 1892, 1918, 1942, 1968, 2032, 2058, 2122, 2174, 2197, + /* 40 */ 2267, 2292, 2342, 2357, 2407, 2432, 2482, 2497, 2562, 2614, + /* 50 */ 2636, -302, 111, -273, -26, 150, 505, 601, 87, 394, + /* 60 */ 608, -374, -463, -221, -77, 615, -461, 534, 112, -358, + /* 70 */ -91, 396, -401, -253, -96, 158, -40, -330, -9, -206, + /* 80 */ -152, 138, 259, 144, 290, 283, 367, 441, 340, 13, + /* 90 */ 449, 451, 245, 107, 479, 509, -193, 349, 521, 542, + /* 100 */ 285, 544, 603, 482, 620, 353, 536, 385, 638, 523, + /* 110 */ -454, -454, -99, -145, -336, -325, -301, 169, 231, 244, + /* 120 */ 342, 437, 444, 466, 467, 564, 645, 673, 675, 679, + /* 130 */ 680, 705, 710, -78, 317, 264, -384, -205, 561, 598, + /* 140 */ 317, 373, 439, 127, 391, 510, 661, 714, 576, 640, + /* 150 */ 713, 93, 17, 715, 718, 717, 725, 747, 755, 734, + /* 160 */ -381, 778, 843, 850, 854, 863, 868, 854, 832, 886, + /* 170 */ 920, 857, 774, 788, 914, 798, 905, 906, 900, 867, + /* 180 */ 900, 927, 879, 939, 938, 903, 890, 833, 833, 818, + /* 190 */ 833, 847, 844, 900, 889, 910, 913, 919, 984, 926, + /* 200 */ 992, 940, 1008, 1009, 961, 962, 1016, 969, 975, 1024, + /* 210 */ 1026, 1031, 976, 978, 981, 1020, 1022, 1036, 1029, 1041, + /* 220 */ 1042, 1043, 1053, 1074, 1055, 1075, 999, 1065, 1034, 1067, + /* 230 */ 1079, 1017, 1076, 1080, 1078, 1039, 1082, 1088, 1086, 1089, + /* 240 */ 1106, 1071, 1072, 1081, 1083, 1084, 1085, 1087, 1090, 1092, + /* 250 */ 1093, 1100, 1102, 1113, 1117, 1110, 1070, 1094, 1105, 1040, + /* 260 */ 1066, 1095, 1138, 1091, 1099, 1108, 1146, 1096, 1107, 1158, + /* 270 */ 1119, 1120, 1118, 1044, 1125, 1147, 1069, 1131, 1151, 1152, + /* 280 */ 900, 1061, 1097, 1111, 1129, 1109, 1132, 1133, 1060, 1114, + /* 290 */ 1122, 833, 1205, 1124, 1115, 1137, 1209, 1218, 1221, 1159, + /* 300 */ 1186, 1198, 1199, 1222, 1223, 1163, 1224, 1203, 1250, 1236, + /* 310 */ 1255, 1265, 1169, 1240, 1228, 1251, 1277, 1271, 1300, 1298, + /* 320 */ 1301, 1227, 1225, 1239, 1243, 1273, 1278, 1281, 1297, 1320, }; static const YYACTIONTYPE yy_default[] = { - /* 0 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 10 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 20 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 30 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 40 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 50 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 60 */ 2155, 2118, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 70 */ 1827, 1827, 1827, 1827, 1827, 2125, 1827, 1827, 1827, 1827, - /* 80 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 90 */ 1827, 1827, 1923, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 100 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1921, - /* 110 */ 2347, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 120 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 130 */ 1827, 1827, 1827, 1827, 2359, 1827, 1827, 1897, 1897, 1827, - /* 140 */ 2359, 2359, 2359, 1921, 2319, 2319, 1827, 2112, 1923, 2189, - /* 150 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 2043, 1827, - /* 160 */ 1857, 1827, 1827, 1827, 1827, 2067, 1827, 1827, 1827, 2181, - /* 170 */ 1827, 1827, 2388, 2445, 1827, 1827, 2391, 1827, 1827, 1827, - /* 180 */ 1827, 1827, 1827, 2130, 1827, 1827, 1996, 2378, 2351, 2365, - /* 190 */ 2429, 2352, 2349, 2372, 1827, 2382, 1827, 1827, 2203, 1923, - /* 200 */ 1827, 1923, 2168, 1827, 2123, 1827, 1827, 2123, 2120, 1827, - /* 210 */ 1827, 1827, 2123, 2120, 2120, 1985, 1981, 1827, 1979, 1827, - /* 220 */ 1827, 1827, 1827, 1881, 1827, 1881, 1827, 1923, 1827, 1923, - /* 230 */ 1827, 1827, 1923, 1827, 1923, 1827, 1923, 1923, 1827, 1923, - /* 240 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 250 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 2201, - /* 260 */ 2187, 1827, 1921, 2179, 2177, 1827, 1921, 2175, 2382, 1827, - /* 270 */ 1827, 1827, 1827, 2399, 2397, 1827, 2399, 2397, 1827, 1827, - /* 280 */ 1827, 2413, 2409, 2399, 2418, 2415, 2384, 2382, 2448, 2435, - /* 290 */ 2431, 2365, 1827, 1827, 2370, 2368, 1827, 1921, 1921, 2397, - /* 300 */ 1827, 1827, 1827, 1827, 1827, 2397, 1827, 1827, 1921, 1827, - /* 310 */ 1921, 1827, 1827, 2012, 1827, 1827, 1827, 1921, 1827, 1866, - /* 320 */ 1827, 2170, 2192, 2151, 2151, 2046, 2046, 2046, 1924, 1832, - /* 330 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 340 */ 1827, 1827, 2412, 2411, 2274, 1827, 2323, 2322, 2321, 2312, - /* 350 */ 2273, 2008, 1827, 1827, 2272, 2271, 1827, 1827, 1827, 1827, - /* 360 */ 1827, 1827, 1827, 1827, 2142, 2141, 2265, 1827, 1827, 2266, - /* 370 */ 2264, 2263, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 380 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 390 */ 1827, 1827, 1827, 1827, 1827, 1827, 2432, 2436, 1827, 1827, - /* 400 */ 1827, 1827, 1827, 1827, 2348, 1827, 1827, 1827, 2247, 1827, - /* 410 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 420 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 430 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 440 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 450 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 460 */ 2119, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 470 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 480 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 490 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 500 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 510 */ 1827, 1827, 1827, 1827, 1827, 2134, 1827, 1827, 1827, 1827, - /* 520 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 530 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 540 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1871, 2252, 1827, - /* 550 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 560 */ 1827, 2255, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 570 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 580 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 590 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 600 */ 1827, 1962, 1961, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 610 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 620 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 2256, 1827, 1827, - /* 630 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 640 */ 1827, 1827, 1827, 1827, 1827, 1827, 2428, 2385, 1827, 1827, - /* 650 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 660 */ 1827, 1827, 1827, 1827, 1827, 1827, 2247, 1827, 2410, 1827, - /* 670 */ 1827, 2426, 1827, 2430, 1827, 1827, 1827, 1827, 1827, 1827, - /* 680 */ 1827, 2358, 2354, 1827, 1827, 2350, 1827, 1827, 1827, 1827, - /* 690 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 700 */ 1827, 1827, 1827, 2246, 1827, 2309, 1827, 1827, 1827, 2343, - /* 710 */ 1827, 1827, 2294, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 720 */ 1827, 1827, 2256, 1827, 2259, 1827, 1827, 1827, 1827, 1827, - /* 730 */ 2040, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 740 */ 1827, 1827, 1827, 1827, 1827, 1827, 2024, 2022, 2021, 2020, - /* 750 */ 1827, 2053, 1827, 1827, 1827, 2049, 2048, 1827, 1827, 1827, - /* 760 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 770 */ 1942, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1934, - /* 780 */ 1827, 1933, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 790 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, - /* 800 */ 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1856, - /* 810 */ 1827, 1827, 1827, 1827, 1827, 1827, + /* 0 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 10 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 20 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 30 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 40 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 50 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 60 */ 2151, 1824, 1824, 2114, 1824, 1824, 1824, 1824, 1824, 1824, + /* 70 */ 1824, 1824, 1824, 1824, 1824, 2121, 1824, 1824, 1824, 1824, + /* 80 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 90 */ 1824, 1824, 1920, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 100 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1918, + /* 110 */ 2343, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 120 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 130 */ 1824, 1824, 1824, 1824, 2355, 1824, 1824, 1894, 1894, 1824, + /* 140 */ 2355, 2355, 2355, 1918, 2315, 2315, 1824, 1920, 2185, 1824, + /* 150 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 2040, 1824, 1854, + /* 160 */ 1824, 1824, 1824, 1824, 2064, 1824, 1824, 1824, 2177, 1824, + /* 170 */ 1824, 2384, 2441, 1824, 1824, 2387, 1824, 1824, 1824, 1824, + /* 180 */ 1824, 1824, 2126, 1824, 1824, 1993, 2374, 2347, 2361, 2425, + /* 190 */ 2348, 2345, 2368, 1824, 2378, 1824, 1824, 2199, 1920, 1824, + /* 200 */ 1920, 2164, 2109, 1824, 2119, 1824, 1824, 2119, 2116, 1824, + /* 210 */ 1824, 1824, 2119, 2116, 2116, 1982, 1978, 1824, 1976, 1824, + /* 220 */ 1824, 1824, 1824, 1878, 1824, 1878, 1824, 1920, 1824, 1920, + /* 230 */ 1824, 1824, 1920, 1824, 1920, 1824, 1920, 1920, 1824, 1920, + /* 240 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 250 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 2197, + /* 260 */ 2183, 1824, 1918, 2175, 2173, 1824, 1918, 2171, 2378, 1824, + /* 270 */ 1824, 1824, 1824, 2395, 2393, 1824, 2395, 2393, 1824, 1824, + /* 280 */ 1824, 2409, 2405, 2395, 2414, 2411, 2380, 2378, 2444, 2431, + /* 290 */ 2427, 2361, 1824, 1824, 2366, 2364, 1824, 1918, 1918, 2393, + /* 300 */ 1824, 1824, 1824, 1824, 1824, 2393, 1824, 1824, 1918, 1824, + /* 310 */ 1918, 1824, 1824, 2009, 1824, 1824, 1824, 1918, 1824, 1863, + /* 320 */ 1824, 2166, 2188, 2147, 2147, 2043, 2043, 2043, 1921, 1829, + /* 330 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 340 */ 1824, 1824, 2408, 2407, 2270, 1824, 2319, 2318, 2317, 2308, + /* 350 */ 2269, 2005, 1824, 1824, 2268, 2267, 1824, 1824, 1824, 1824, + /* 360 */ 1824, 1824, 1824, 1824, 2138, 2137, 2261, 1824, 1824, 2262, + /* 370 */ 2260, 2259, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 380 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 390 */ 1824, 1824, 1824, 1824, 1824, 1824, 2428, 2432, 1824, 1824, + /* 400 */ 1824, 1824, 1824, 1824, 2344, 1824, 1824, 1824, 2243, 1824, + /* 410 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 420 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 430 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 440 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 450 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 460 */ 2115, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 470 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 480 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 490 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 500 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 510 */ 1824, 1824, 1824, 1824, 1824, 2130, 1824, 1824, 1824, 1824, + /* 520 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 530 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 540 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1868, 2248, 1824, + /* 550 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 560 */ 1824, 2251, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 570 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 580 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 590 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 600 */ 1824, 1959, 1958, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 610 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 620 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 2252, 1824, 1824, + /* 630 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 640 */ 1824, 1824, 1824, 1824, 1824, 1824, 2424, 2381, 1824, 1824, + /* 650 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 660 */ 1824, 1824, 1824, 1824, 1824, 1824, 2243, 1824, 2406, 1824, + /* 670 */ 1824, 2422, 1824, 2426, 1824, 1824, 1824, 1824, 1824, 1824, + /* 680 */ 1824, 2354, 2350, 1824, 1824, 2346, 1824, 1824, 1824, 1824, + /* 690 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 700 */ 1824, 1824, 1824, 2242, 1824, 2305, 1824, 1824, 1824, 2339, + /* 710 */ 1824, 1824, 2290, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 720 */ 1824, 1824, 2252, 1824, 2255, 1824, 1824, 1824, 1824, 1824, + /* 730 */ 2037, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 740 */ 1824, 1824, 1824, 1824, 1824, 1824, 2021, 2019, 2018, 2017, + /* 750 */ 1824, 2050, 1824, 1824, 1824, 2046, 2045, 1824, 1824, 1824, + /* 760 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 770 */ 1939, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1931, + /* 780 */ 1824, 1930, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 790 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, + /* 800 */ 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1853, + /* 810 */ 1824, 1824, 1824, 1824, 1824, 1824, }; /********** End of lemon-generated parsing tables *****************************/ @@ -2292,96 +2290,95 @@ static const char *const yyTokenName[] = { /* 408 */ "from_db_opt", /* 409 */ "tag_list_opt", /* 410 */ "table_kind", - /* 411 */ "db_name_cond", - /* 412 */ "tag_item", - /* 413 */ "column_alias", - /* 414 */ "index_options", - /* 415 */ "full_index_name", - /* 416 */ "index_name", - /* 417 */ "func_list", - /* 418 */ "sliding_opt", - /* 419 */ "sma_stream_opt", - /* 420 */ "func", - /* 421 */ "sma_func_name", - /* 422 */ "with_meta", - /* 423 */ "query_or_subquery", - /* 424 */ "where_clause_opt", - /* 425 */ "cgroup_name", - /* 426 */ "analyze_opt", - /* 427 */ "explain_options", - /* 428 */ "insert_query", - /* 429 */ "or_replace_opt", - /* 430 */ "agg_func_opt", - /* 431 */ "bufsize_opt", - /* 432 */ "language_opt", - /* 433 */ "stream_name", - /* 434 */ "stream_options", - /* 435 */ "col_list_opt", - /* 436 */ "tag_def_or_ref_opt", - /* 437 */ "subtable_opt", - /* 438 */ "ignore_opt", - /* 439 */ "expression", - /* 440 */ "dnode_list", - /* 441 */ "literal_func", - /* 442 */ "literal_list", - /* 443 */ "table_alias", - /* 444 */ "expr_or_subquery", - /* 445 */ "pseudo_column", - /* 446 */ "column_reference", - /* 447 */ "function_expression", - /* 448 */ "case_when_expression", - /* 449 */ "star_func", - /* 450 */ "star_func_para_list", - /* 451 */ "noarg_func", - /* 452 */ "other_para_list", - /* 453 */ "star_func_para", - /* 454 */ "when_then_list", - /* 455 */ "case_when_else_opt", - /* 456 */ "common_expression", - /* 457 */ "when_then_expr", - /* 458 */ "predicate", - /* 459 */ "compare_op", - /* 460 */ "in_op", - /* 461 */ "in_predicate_value", - /* 462 */ "boolean_value_expression", - /* 463 */ "boolean_primary", - /* 464 */ "from_clause_opt", - /* 465 */ "table_reference_list", - /* 466 */ "table_reference", - /* 467 */ "table_primary", - /* 468 */ "joined_table", - /* 469 */ "alias_opt", - /* 470 */ "subquery", - /* 471 */ "parenthesized_joined_table", - /* 472 */ "join_type", - /* 473 */ "query_specification", - /* 474 */ "hint_list", - /* 475 */ "set_quantifier_opt", - /* 476 */ "tag_mode_opt", - /* 477 */ "select_list", - /* 478 */ "partition_by_clause_opt", - /* 479 */ "range_opt", - /* 480 */ "every_opt", - /* 481 */ "fill_opt", - /* 482 */ "twindow_clause_opt", - /* 483 */ "group_by_clause_opt", - /* 484 */ "having_clause_opt", - /* 485 */ "select_item", - /* 486 */ "partition_list", - /* 487 */ "partition_item", - /* 488 */ "fill_mode", - /* 489 */ "group_by_list", - /* 490 */ "query_expression", - /* 491 */ "query_simple", - /* 492 */ "order_by_clause_opt", - /* 493 */ "slimit_clause_opt", - /* 494 */ "limit_clause_opt", - /* 495 */ "union_query_expression", - /* 496 */ "query_simple_or_subquery", - /* 497 */ "sort_specification_list", - /* 498 */ "sort_specification", - /* 499 */ "ordering_specification_opt", - /* 500 */ "null_ordering_opt", + /* 411 */ "tag_item", + /* 412 */ "column_alias", + /* 413 */ "index_options", + /* 414 */ "full_index_name", + /* 415 */ "index_name", + /* 416 */ "func_list", + /* 417 */ "sliding_opt", + /* 418 */ "sma_stream_opt", + /* 419 */ "func", + /* 420 */ "sma_func_name", + /* 421 */ "with_meta", + /* 422 */ "query_or_subquery", + /* 423 */ "where_clause_opt", + /* 424 */ "cgroup_name", + /* 425 */ "analyze_opt", + /* 426 */ "explain_options", + /* 427 */ "insert_query", + /* 428 */ "or_replace_opt", + /* 429 */ "agg_func_opt", + /* 430 */ "bufsize_opt", + /* 431 */ "language_opt", + /* 432 */ "stream_name", + /* 433 */ "stream_options", + /* 434 */ "col_list_opt", + /* 435 */ "tag_def_or_ref_opt", + /* 436 */ "subtable_opt", + /* 437 */ "ignore_opt", + /* 438 */ "expression", + /* 439 */ "dnode_list", + /* 440 */ "literal_func", + /* 441 */ "literal_list", + /* 442 */ "table_alias", + /* 443 */ "expr_or_subquery", + /* 444 */ "pseudo_column", + /* 445 */ "column_reference", + /* 446 */ "function_expression", + /* 447 */ "case_when_expression", + /* 448 */ "star_func", + /* 449 */ "star_func_para_list", + /* 450 */ "noarg_func", + /* 451 */ "other_para_list", + /* 452 */ "star_func_para", + /* 453 */ "when_then_list", + /* 454 */ "case_when_else_opt", + /* 455 */ "common_expression", + /* 456 */ "when_then_expr", + /* 457 */ "predicate", + /* 458 */ "compare_op", + /* 459 */ "in_op", + /* 460 */ "in_predicate_value", + /* 461 */ "boolean_value_expression", + /* 462 */ "boolean_primary", + /* 463 */ "from_clause_opt", + /* 464 */ "table_reference_list", + /* 465 */ "table_reference", + /* 466 */ "table_primary", + /* 467 */ "joined_table", + /* 468 */ "alias_opt", + /* 469 */ "subquery", + /* 470 */ "parenthesized_joined_table", + /* 471 */ "join_type", + /* 472 */ "query_specification", + /* 473 */ "hint_list", + /* 474 */ "set_quantifier_opt", + /* 475 */ "tag_mode_opt", + /* 476 */ "select_list", + /* 477 */ "partition_by_clause_opt", + /* 478 */ "range_opt", + /* 479 */ "every_opt", + /* 480 */ "fill_opt", + /* 481 */ "twindow_clause_opt", + /* 482 */ "group_by_clause_opt", + /* 483 */ "having_clause_opt", + /* 484 */ "select_item", + /* 485 */ "partition_list", + /* 486 */ "partition_item", + /* 487 */ "fill_mode", + /* 488 */ "group_by_list", + /* 489 */ "query_expression", + /* 490 */ "query_simple", + /* 491 */ "order_by_clause_opt", + /* 492 */ "slimit_clause_opt", + /* 493 */ "limit_clause_opt", + /* 494 */ "union_query_expression", + /* 495 */ "query_simple_or_subquery", + /* 496 */ "sort_specification_list", + /* 497 */ "sort_specification", + /* 498 */ "ordering_specification_opt", + /* 499 */ "null_ordering_opt", }; #endif /* defined(YYCOVERAGE) || !defined(NDEBUG) */ @@ -2672,344 +2669,343 @@ static const char *const yyRuleName[] = { /* 280 */ "cmd ::= SHOW CLUSTER ALIVE", /* 281 */ "table_kind_db_name_cond_opt ::=", /* 282 */ "table_kind_db_name_cond_opt ::= table_kind", - /* 283 */ "table_kind_db_name_cond_opt ::= db_name_cond", - /* 284 */ "table_kind_db_name_cond_opt ::= table_kind db_name_cond", + /* 283 */ "table_kind_db_name_cond_opt ::= db_name NK_DOT", + /* 284 */ "table_kind_db_name_cond_opt ::= table_kind db_name NK_DOT", /* 285 */ "table_kind ::= NORMAL", /* 286 */ "table_kind ::= CHILD", - /* 287 */ "db_name_cond ::= db_name NK_DOT", - /* 288 */ "db_name_cond_opt ::=", - /* 289 */ "db_name_cond_opt ::= db_name NK_DOT", - /* 290 */ "like_pattern_opt ::=", - /* 291 */ "like_pattern_opt ::= LIKE NK_STRING", - /* 292 */ "table_name_cond ::= table_name", - /* 293 */ "from_db_opt ::=", - /* 294 */ "from_db_opt ::= FROM db_name", - /* 295 */ "tag_list_opt ::=", - /* 296 */ "tag_list_opt ::= tag_item", - /* 297 */ "tag_list_opt ::= tag_list_opt NK_COMMA tag_item", - /* 298 */ "tag_item ::= TBNAME", - /* 299 */ "tag_item ::= QTAGS", - /* 300 */ "tag_item ::= column_name", - /* 301 */ "tag_item ::= column_name column_alias", - /* 302 */ "tag_item ::= column_name AS column_alias", - /* 303 */ "db_kind_opt ::=", - /* 304 */ "db_kind_opt ::= USER", - /* 305 */ "db_kind_opt ::= SYSTEM", - /* 306 */ "cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options", - /* 307 */ "cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP", - /* 308 */ "cmd ::= DROP INDEX exists_opt full_index_name", - /* 309 */ "full_index_name ::= index_name", - /* 310 */ "full_index_name ::= db_name NK_DOT index_name", - /* 311 */ "index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt", - /* 312 */ "index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt", - /* 313 */ "func_list ::= func", - /* 314 */ "func_list ::= func_list NK_COMMA func", - /* 315 */ "func ::= sma_func_name NK_LP expression_list NK_RP", - /* 316 */ "sma_func_name ::= function_name", - /* 317 */ "sma_func_name ::= COUNT", - /* 318 */ "sma_func_name ::= FIRST", - /* 319 */ "sma_func_name ::= LAST", - /* 320 */ "sma_func_name ::= LAST_ROW", - /* 321 */ "sma_stream_opt ::=", - /* 322 */ "sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal", - /* 323 */ "sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal", - /* 324 */ "sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal", - /* 325 */ "with_meta ::= AS", - /* 326 */ "with_meta ::= WITH META AS", - /* 327 */ "with_meta ::= ONLY META AS", - /* 328 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery", - /* 329 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name", - /* 330 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt", - /* 331 */ "cmd ::= DROP TOPIC exists_opt topic_name", - /* 332 */ "cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name", - /* 333 */ "cmd ::= DESC full_table_name", - /* 334 */ "cmd ::= DESCRIBE full_table_name", - /* 335 */ "cmd ::= RESET QUERY CACHE", - /* 336 */ "cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery", - /* 337 */ "cmd ::= EXPLAIN analyze_opt explain_options insert_query", - /* 338 */ "analyze_opt ::=", - /* 339 */ "analyze_opt ::= ANALYZE", - /* 340 */ "explain_options ::=", - /* 341 */ "explain_options ::= explain_options VERBOSE NK_BOOL", - /* 342 */ "explain_options ::= explain_options RATIO NK_FLOAT", - /* 343 */ "cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt", - /* 344 */ "cmd ::= DROP FUNCTION exists_opt function_name", - /* 345 */ "agg_func_opt ::=", - /* 346 */ "agg_func_opt ::= AGGREGATE", - /* 347 */ "bufsize_opt ::=", - /* 348 */ "bufsize_opt ::= BUFSIZE NK_INTEGER", - /* 349 */ "language_opt ::=", - /* 350 */ "language_opt ::= LANGUAGE NK_STRING", - /* 351 */ "or_replace_opt ::=", - /* 352 */ "or_replace_opt ::= OR REPLACE", - /* 353 */ "cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery", - /* 354 */ "cmd ::= DROP STREAM exists_opt stream_name", - /* 355 */ "cmd ::= PAUSE STREAM exists_opt stream_name", - /* 356 */ "cmd ::= RESUME STREAM exists_opt ignore_opt stream_name", - /* 357 */ "col_list_opt ::=", - /* 358 */ "col_list_opt ::= NK_LP col_name_list NK_RP", - /* 359 */ "tag_def_or_ref_opt ::=", - /* 360 */ "tag_def_or_ref_opt ::= tags_def", - /* 361 */ "tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP", - /* 362 */ "stream_options ::=", - /* 363 */ "stream_options ::= stream_options TRIGGER AT_ONCE", - /* 364 */ "stream_options ::= stream_options TRIGGER WINDOW_CLOSE", - /* 365 */ "stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal", - /* 366 */ "stream_options ::= stream_options WATERMARK duration_literal", - /* 367 */ "stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER", - /* 368 */ "stream_options ::= stream_options FILL_HISTORY NK_INTEGER", - /* 369 */ "stream_options ::= stream_options DELETE_MARK duration_literal", - /* 370 */ "stream_options ::= stream_options IGNORE UPDATE NK_INTEGER", - /* 371 */ "subtable_opt ::=", - /* 372 */ "subtable_opt ::= SUBTABLE NK_LP expression NK_RP", - /* 373 */ "ignore_opt ::=", - /* 374 */ "ignore_opt ::= IGNORE UNTREATED", - /* 375 */ "cmd ::= KILL CONNECTION NK_INTEGER", - /* 376 */ "cmd ::= KILL QUERY NK_STRING", - /* 377 */ "cmd ::= KILL TRANSACTION NK_INTEGER", - /* 378 */ "cmd ::= BALANCE VGROUP", - /* 379 */ "cmd ::= BALANCE VGROUP LEADER", - /* 380 */ "cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER", - /* 381 */ "cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list", - /* 382 */ "cmd ::= SPLIT VGROUP NK_INTEGER", - /* 383 */ "dnode_list ::= DNODE NK_INTEGER", - /* 384 */ "dnode_list ::= dnode_list DNODE NK_INTEGER", - /* 385 */ "cmd ::= DELETE FROM full_table_name where_clause_opt", - /* 386 */ "cmd ::= query_or_subquery", - /* 387 */ "cmd ::= insert_query", - /* 388 */ "insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery", - /* 389 */ "insert_query ::= INSERT INTO full_table_name query_or_subquery", - /* 390 */ "literal ::= NK_INTEGER", - /* 391 */ "literal ::= NK_FLOAT", - /* 392 */ "literal ::= NK_STRING", - /* 393 */ "literal ::= NK_BOOL", - /* 394 */ "literal ::= TIMESTAMP NK_STRING", - /* 395 */ "literal ::= duration_literal", - /* 396 */ "literal ::= NULL", - /* 397 */ "literal ::= NK_QUESTION", - /* 398 */ "duration_literal ::= NK_VARIABLE", - /* 399 */ "signed ::= NK_INTEGER", - /* 400 */ "signed ::= NK_PLUS NK_INTEGER", - /* 401 */ "signed ::= NK_MINUS NK_INTEGER", - /* 402 */ "signed ::= NK_FLOAT", - /* 403 */ "signed ::= NK_PLUS NK_FLOAT", - /* 404 */ "signed ::= NK_MINUS NK_FLOAT", - /* 405 */ "signed_literal ::= signed", - /* 406 */ "signed_literal ::= NK_STRING", - /* 407 */ "signed_literal ::= NK_BOOL", - /* 408 */ "signed_literal ::= TIMESTAMP NK_STRING", - /* 409 */ "signed_literal ::= duration_literal", - /* 410 */ "signed_literal ::= NULL", - /* 411 */ "signed_literal ::= literal_func", - /* 412 */ "signed_literal ::= NK_QUESTION", - /* 413 */ "literal_list ::= signed_literal", - /* 414 */ "literal_list ::= literal_list NK_COMMA signed_literal", - /* 415 */ "db_name ::= NK_ID", - /* 416 */ "table_name ::= NK_ID", - /* 417 */ "column_name ::= NK_ID", - /* 418 */ "function_name ::= NK_ID", - /* 419 */ "table_alias ::= NK_ID", - /* 420 */ "column_alias ::= NK_ID", - /* 421 */ "user_name ::= NK_ID", - /* 422 */ "topic_name ::= NK_ID", - /* 423 */ "stream_name ::= NK_ID", - /* 424 */ "cgroup_name ::= NK_ID", - /* 425 */ "index_name ::= NK_ID", - /* 426 */ "expr_or_subquery ::= expression", - /* 427 */ "expression ::= literal", - /* 428 */ "expression ::= pseudo_column", - /* 429 */ "expression ::= column_reference", - /* 430 */ "expression ::= function_expression", - /* 431 */ "expression ::= case_when_expression", - /* 432 */ "expression ::= NK_LP expression NK_RP", - /* 433 */ "expression ::= NK_PLUS expr_or_subquery", - /* 434 */ "expression ::= NK_MINUS expr_or_subquery", - /* 435 */ "expression ::= expr_or_subquery NK_PLUS expr_or_subquery", - /* 436 */ "expression ::= expr_or_subquery NK_MINUS expr_or_subquery", - /* 437 */ "expression ::= expr_or_subquery NK_STAR expr_or_subquery", - /* 438 */ "expression ::= expr_or_subquery NK_SLASH expr_or_subquery", - /* 439 */ "expression ::= expr_or_subquery NK_REM expr_or_subquery", - /* 440 */ "expression ::= column_reference NK_ARROW NK_STRING", - /* 441 */ "expression ::= expr_or_subquery NK_BITAND expr_or_subquery", - /* 442 */ "expression ::= expr_or_subquery NK_BITOR expr_or_subquery", - /* 443 */ "expression_list ::= expr_or_subquery", - /* 444 */ "expression_list ::= expression_list NK_COMMA expr_or_subquery", - /* 445 */ "column_reference ::= column_name", - /* 446 */ "column_reference ::= table_name NK_DOT column_name", - /* 447 */ "pseudo_column ::= ROWTS", - /* 448 */ "pseudo_column ::= TBNAME", - /* 449 */ "pseudo_column ::= table_name NK_DOT TBNAME", - /* 450 */ "pseudo_column ::= QSTART", - /* 451 */ "pseudo_column ::= QEND", - /* 452 */ "pseudo_column ::= QDURATION", - /* 453 */ "pseudo_column ::= WSTART", - /* 454 */ "pseudo_column ::= WEND", - /* 455 */ "pseudo_column ::= WDURATION", - /* 456 */ "pseudo_column ::= IROWTS", - /* 457 */ "pseudo_column ::= ISFILLED", - /* 458 */ "pseudo_column ::= QTAGS", - /* 459 */ "function_expression ::= function_name NK_LP expression_list NK_RP", - /* 460 */ "function_expression ::= star_func NK_LP star_func_para_list NK_RP", - /* 461 */ "function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP", - /* 462 */ "function_expression ::= literal_func", - /* 463 */ "literal_func ::= noarg_func NK_LP NK_RP", - /* 464 */ "literal_func ::= NOW", - /* 465 */ "noarg_func ::= NOW", - /* 466 */ "noarg_func ::= TODAY", - /* 467 */ "noarg_func ::= TIMEZONE", - /* 468 */ "noarg_func ::= DATABASE", - /* 469 */ "noarg_func ::= CLIENT_VERSION", - /* 470 */ "noarg_func ::= SERVER_VERSION", - /* 471 */ "noarg_func ::= SERVER_STATUS", - /* 472 */ "noarg_func ::= CURRENT_USER", - /* 473 */ "noarg_func ::= USER", - /* 474 */ "star_func ::= COUNT", - /* 475 */ "star_func ::= FIRST", - /* 476 */ "star_func ::= LAST", - /* 477 */ "star_func ::= LAST_ROW", - /* 478 */ "star_func_para_list ::= NK_STAR", - /* 479 */ "star_func_para_list ::= other_para_list", - /* 480 */ "other_para_list ::= star_func_para", - /* 481 */ "other_para_list ::= other_para_list NK_COMMA star_func_para", - /* 482 */ "star_func_para ::= expr_or_subquery", - /* 483 */ "star_func_para ::= table_name NK_DOT NK_STAR", - /* 484 */ "case_when_expression ::= CASE when_then_list case_when_else_opt END", - /* 485 */ "case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END", - /* 486 */ "when_then_list ::= when_then_expr", - /* 487 */ "when_then_list ::= when_then_list when_then_expr", - /* 488 */ "when_then_expr ::= WHEN common_expression THEN common_expression", - /* 489 */ "case_when_else_opt ::=", - /* 490 */ "case_when_else_opt ::= ELSE common_expression", - /* 491 */ "predicate ::= expr_or_subquery compare_op expr_or_subquery", - /* 492 */ "predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery", - /* 493 */ "predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery", - /* 494 */ "predicate ::= expr_or_subquery IS NULL", - /* 495 */ "predicate ::= expr_or_subquery IS NOT NULL", - /* 496 */ "predicate ::= expr_or_subquery in_op in_predicate_value", - /* 497 */ "compare_op ::= NK_LT", - /* 498 */ "compare_op ::= NK_GT", - /* 499 */ "compare_op ::= NK_LE", - /* 500 */ "compare_op ::= NK_GE", - /* 501 */ "compare_op ::= NK_NE", - /* 502 */ "compare_op ::= NK_EQ", - /* 503 */ "compare_op ::= LIKE", - /* 504 */ "compare_op ::= NOT LIKE", - /* 505 */ "compare_op ::= MATCH", - /* 506 */ "compare_op ::= NMATCH", - /* 507 */ "compare_op ::= CONTAINS", - /* 508 */ "in_op ::= IN", - /* 509 */ "in_op ::= NOT IN", - /* 510 */ "in_predicate_value ::= NK_LP literal_list NK_RP", - /* 511 */ "boolean_value_expression ::= boolean_primary", - /* 512 */ "boolean_value_expression ::= NOT boolean_primary", - /* 513 */ "boolean_value_expression ::= boolean_value_expression OR boolean_value_expression", - /* 514 */ "boolean_value_expression ::= boolean_value_expression AND boolean_value_expression", - /* 515 */ "boolean_primary ::= predicate", - /* 516 */ "boolean_primary ::= NK_LP boolean_value_expression NK_RP", - /* 517 */ "common_expression ::= expr_or_subquery", - /* 518 */ "common_expression ::= boolean_value_expression", - /* 519 */ "from_clause_opt ::=", - /* 520 */ "from_clause_opt ::= FROM table_reference_list", - /* 521 */ "table_reference_list ::= table_reference", - /* 522 */ "table_reference_list ::= table_reference_list NK_COMMA table_reference", - /* 523 */ "table_reference ::= table_primary", - /* 524 */ "table_reference ::= joined_table", - /* 525 */ "table_primary ::= table_name alias_opt", - /* 526 */ "table_primary ::= db_name NK_DOT table_name alias_opt", - /* 527 */ "table_primary ::= subquery alias_opt", - /* 528 */ "table_primary ::= parenthesized_joined_table", - /* 529 */ "alias_opt ::=", - /* 530 */ "alias_opt ::= table_alias", - /* 531 */ "alias_opt ::= AS table_alias", - /* 532 */ "parenthesized_joined_table ::= NK_LP joined_table NK_RP", - /* 533 */ "parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP", - /* 534 */ "joined_table ::= table_reference join_type JOIN table_reference ON search_condition", - /* 535 */ "join_type ::=", - /* 536 */ "join_type ::= INNER", - /* 537 */ "query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt", - /* 538 */ "hint_list ::=", - /* 539 */ "hint_list ::= NK_HINT", - /* 540 */ "tag_mode_opt ::=", - /* 541 */ "tag_mode_opt ::= TAGS", - /* 542 */ "set_quantifier_opt ::=", - /* 543 */ "set_quantifier_opt ::= DISTINCT", - /* 544 */ "set_quantifier_opt ::= ALL", - /* 545 */ "select_list ::= select_item", - /* 546 */ "select_list ::= select_list NK_COMMA select_item", - /* 547 */ "select_item ::= NK_STAR", - /* 548 */ "select_item ::= common_expression", - /* 549 */ "select_item ::= common_expression column_alias", - /* 550 */ "select_item ::= common_expression AS column_alias", - /* 551 */ "select_item ::= table_name NK_DOT NK_STAR", - /* 552 */ "where_clause_opt ::=", - /* 553 */ "where_clause_opt ::= WHERE search_condition", - /* 554 */ "partition_by_clause_opt ::=", - /* 555 */ "partition_by_clause_opt ::= PARTITION BY partition_list", - /* 556 */ "partition_list ::= partition_item", - /* 557 */ "partition_list ::= partition_list NK_COMMA partition_item", - /* 558 */ "partition_item ::= expr_or_subquery", - /* 559 */ "partition_item ::= expr_or_subquery column_alias", - /* 560 */ "partition_item ::= expr_or_subquery AS column_alias", - /* 561 */ "twindow_clause_opt ::=", - /* 562 */ "twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP", - /* 563 */ "twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP", - /* 564 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt", - /* 565 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt", - /* 566 */ "twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition", - /* 567 */ "sliding_opt ::=", - /* 568 */ "sliding_opt ::= SLIDING NK_LP duration_literal NK_RP", - /* 569 */ "fill_opt ::=", - /* 570 */ "fill_opt ::= FILL NK_LP fill_mode NK_RP", - /* 571 */ "fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP", - /* 572 */ "fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP", - /* 573 */ "fill_mode ::= NONE", - /* 574 */ "fill_mode ::= PREV", - /* 575 */ "fill_mode ::= NULL", - /* 576 */ "fill_mode ::= NULL_F", - /* 577 */ "fill_mode ::= LINEAR", - /* 578 */ "fill_mode ::= NEXT", - /* 579 */ "group_by_clause_opt ::=", - /* 580 */ "group_by_clause_opt ::= GROUP BY group_by_list", - /* 581 */ "group_by_list ::= expr_or_subquery", - /* 582 */ "group_by_list ::= group_by_list NK_COMMA expr_or_subquery", - /* 583 */ "having_clause_opt ::=", - /* 584 */ "having_clause_opt ::= HAVING search_condition", - /* 585 */ "range_opt ::=", - /* 586 */ "range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP", - /* 587 */ "range_opt ::= RANGE NK_LP expr_or_subquery NK_RP", - /* 588 */ "every_opt ::=", - /* 589 */ "every_opt ::= EVERY NK_LP duration_literal NK_RP", - /* 590 */ "query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt", - /* 591 */ "query_simple ::= query_specification", - /* 592 */ "query_simple ::= union_query_expression", - /* 593 */ "union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery", - /* 594 */ "union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery", - /* 595 */ "query_simple_or_subquery ::= query_simple", - /* 596 */ "query_simple_or_subquery ::= subquery", - /* 597 */ "query_or_subquery ::= query_expression", - /* 598 */ "query_or_subquery ::= subquery", - /* 599 */ "order_by_clause_opt ::=", - /* 600 */ "order_by_clause_opt ::= ORDER BY sort_specification_list", - /* 601 */ "slimit_clause_opt ::=", - /* 602 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER", - /* 603 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER", - /* 604 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER", - /* 605 */ "limit_clause_opt ::=", - /* 606 */ "limit_clause_opt ::= LIMIT NK_INTEGER", - /* 607 */ "limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER", - /* 608 */ "limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER", - /* 609 */ "subquery ::= NK_LP query_expression NK_RP", - /* 610 */ "subquery ::= NK_LP subquery NK_RP", - /* 611 */ "search_condition ::= common_expression", - /* 612 */ "sort_specification_list ::= sort_specification", - /* 613 */ "sort_specification_list ::= sort_specification_list NK_COMMA sort_specification", - /* 614 */ "sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt", - /* 615 */ "ordering_specification_opt ::=", - /* 616 */ "ordering_specification_opt ::= ASC", - /* 617 */ "ordering_specification_opt ::= DESC", - /* 618 */ "null_ordering_opt ::=", - /* 619 */ "null_ordering_opt ::= NULLS FIRST", - /* 620 */ "null_ordering_opt ::= NULLS LAST", + /* 287 */ "db_name_cond_opt ::=", + /* 288 */ "db_name_cond_opt ::= db_name NK_DOT", + /* 289 */ "like_pattern_opt ::=", + /* 290 */ "like_pattern_opt ::= LIKE NK_STRING", + /* 291 */ "table_name_cond ::= table_name", + /* 292 */ "from_db_opt ::=", + /* 293 */ "from_db_opt ::= FROM db_name", + /* 294 */ "tag_list_opt ::=", + /* 295 */ "tag_list_opt ::= tag_item", + /* 296 */ "tag_list_opt ::= tag_list_opt NK_COMMA tag_item", + /* 297 */ "tag_item ::= TBNAME", + /* 298 */ "tag_item ::= QTAGS", + /* 299 */ "tag_item ::= column_name", + /* 300 */ "tag_item ::= column_name column_alias", + /* 301 */ "tag_item ::= column_name AS column_alias", + /* 302 */ "db_kind_opt ::=", + /* 303 */ "db_kind_opt ::= USER", + /* 304 */ "db_kind_opt ::= SYSTEM", + /* 305 */ "cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options", + /* 306 */ "cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP", + /* 307 */ "cmd ::= DROP INDEX exists_opt full_index_name", + /* 308 */ "full_index_name ::= index_name", + /* 309 */ "full_index_name ::= db_name NK_DOT index_name", + /* 310 */ "index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt", + /* 311 */ "index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt", + /* 312 */ "func_list ::= func", + /* 313 */ "func_list ::= func_list NK_COMMA func", + /* 314 */ "func ::= sma_func_name NK_LP expression_list NK_RP", + /* 315 */ "sma_func_name ::= function_name", + /* 316 */ "sma_func_name ::= COUNT", + /* 317 */ "sma_func_name ::= FIRST", + /* 318 */ "sma_func_name ::= LAST", + /* 319 */ "sma_func_name ::= LAST_ROW", + /* 320 */ "sma_stream_opt ::=", + /* 321 */ "sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal", + /* 322 */ "sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal", + /* 323 */ "sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal", + /* 324 */ "with_meta ::= AS", + /* 325 */ "with_meta ::= WITH META AS", + /* 326 */ "with_meta ::= ONLY META AS", + /* 327 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery", + /* 328 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name", + /* 329 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt", + /* 330 */ "cmd ::= DROP TOPIC exists_opt topic_name", + /* 331 */ "cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name", + /* 332 */ "cmd ::= DESC full_table_name", + /* 333 */ "cmd ::= DESCRIBE full_table_name", + /* 334 */ "cmd ::= RESET QUERY CACHE", + /* 335 */ "cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery", + /* 336 */ "cmd ::= EXPLAIN analyze_opt explain_options insert_query", + /* 337 */ "analyze_opt ::=", + /* 338 */ "analyze_opt ::= ANALYZE", + /* 339 */ "explain_options ::=", + /* 340 */ "explain_options ::= explain_options VERBOSE NK_BOOL", + /* 341 */ "explain_options ::= explain_options RATIO NK_FLOAT", + /* 342 */ "cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt", + /* 343 */ "cmd ::= DROP FUNCTION exists_opt function_name", + /* 344 */ "agg_func_opt ::=", + /* 345 */ "agg_func_opt ::= AGGREGATE", + /* 346 */ "bufsize_opt ::=", + /* 347 */ "bufsize_opt ::= BUFSIZE NK_INTEGER", + /* 348 */ "language_opt ::=", + /* 349 */ "language_opt ::= LANGUAGE NK_STRING", + /* 350 */ "or_replace_opt ::=", + /* 351 */ "or_replace_opt ::= OR REPLACE", + /* 352 */ "cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery", + /* 353 */ "cmd ::= DROP STREAM exists_opt stream_name", + /* 354 */ "cmd ::= PAUSE STREAM exists_opt stream_name", + /* 355 */ "cmd ::= RESUME STREAM exists_opt ignore_opt stream_name", + /* 356 */ "col_list_opt ::=", + /* 357 */ "col_list_opt ::= NK_LP col_name_list NK_RP", + /* 358 */ "tag_def_or_ref_opt ::=", + /* 359 */ "tag_def_or_ref_opt ::= tags_def", + /* 360 */ "tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP", + /* 361 */ "stream_options ::=", + /* 362 */ "stream_options ::= stream_options TRIGGER AT_ONCE", + /* 363 */ "stream_options ::= stream_options TRIGGER WINDOW_CLOSE", + /* 364 */ "stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal", + /* 365 */ "stream_options ::= stream_options WATERMARK duration_literal", + /* 366 */ "stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER", + /* 367 */ "stream_options ::= stream_options FILL_HISTORY NK_INTEGER", + /* 368 */ "stream_options ::= stream_options DELETE_MARK duration_literal", + /* 369 */ "stream_options ::= stream_options IGNORE UPDATE NK_INTEGER", + /* 370 */ "subtable_opt ::=", + /* 371 */ "subtable_opt ::= SUBTABLE NK_LP expression NK_RP", + /* 372 */ "ignore_opt ::=", + /* 373 */ "ignore_opt ::= IGNORE UNTREATED", + /* 374 */ "cmd ::= KILL CONNECTION NK_INTEGER", + /* 375 */ "cmd ::= KILL QUERY NK_STRING", + /* 376 */ "cmd ::= KILL TRANSACTION NK_INTEGER", + /* 377 */ "cmd ::= BALANCE VGROUP", + /* 378 */ "cmd ::= BALANCE VGROUP LEADER", + /* 379 */ "cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER", + /* 380 */ "cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list", + /* 381 */ "cmd ::= SPLIT VGROUP NK_INTEGER", + /* 382 */ "dnode_list ::= DNODE NK_INTEGER", + /* 383 */ "dnode_list ::= dnode_list DNODE NK_INTEGER", + /* 384 */ "cmd ::= DELETE FROM full_table_name where_clause_opt", + /* 385 */ "cmd ::= query_or_subquery", + /* 386 */ "cmd ::= insert_query", + /* 387 */ "insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery", + /* 388 */ "insert_query ::= INSERT INTO full_table_name query_or_subquery", + /* 389 */ "literal ::= NK_INTEGER", + /* 390 */ "literal ::= NK_FLOAT", + /* 391 */ "literal ::= NK_STRING", + /* 392 */ "literal ::= NK_BOOL", + /* 393 */ "literal ::= TIMESTAMP NK_STRING", + /* 394 */ "literal ::= duration_literal", + /* 395 */ "literal ::= NULL", + /* 396 */ "literal ::= NK_QUESTION", + /* 397 */ "duration_literal ::= NK_VARIABLE", + /* 398 */ "signed ::= NK_INTEGER", + /* 399 */ "signed ::= NK_PLUS NK_INTEGER", + /* 400 */ "signed ::= NK_MINUS NK_INTEGER", + /* 401 */ "signed ::= NK_FLOAT", + /* 402 */ "signed ::= NK_PLUS NK_FLOAT", + /* 403 */ "signed ::= NK_MINUS NK_FLOAT", + /* 404 */ "signed_literal ::= signed", + /* 405 */ "signed_literal ::= NK_STRING", + /* 406 */ "signed_literal ::= NK_BOOL", + /* 407 */ "signed_literal ::= TIMESTAMP NK_STRING", + /* 408 */ "signed_literal ::= duration_literal", + /* 409 */ "signed_literal ::= NULL", + /* 410 */ "signed_literal ::= literal_func", + /* 411 */ "signed_literal ::= NK_QUESTION", + /* 412 */ "literal_list ::= signed_literal", + /* 413 */ "literal_list ::= literal_list NK_COMMA signed_literal", + /* 414 */ "db_name ::= NK_ID", + /* 415 */ "table_name ::= NK_ID", + /* 416 */ "column_name ::= NK_ID", + /* 417 */ "function_name ::= NK_ID", + /* 418 */ "table_alias ::= NK_ID", + /* 419 */ "column_alias ::= NK_ID", + /* 420 */ "user_name ::= NK_ID", + /* 421 */ "topic_name ::= NK_ID", + /* 422 */ "stream_name ::= NK_ID", + /* 423 */ "cgroup_name ::= NK_ID", + /* 424 */ "index_name ::= NK_ID", + /* 425 */ "expr_or_subquery ::= expression", + /* 426 */ "expression ::= literal", + /* 427 */ "expression ::= pseudo_column", + /* 428 */ "expression ::= column_reference", + /* 429 */ "expression ::= function_expression", + /* 430 */ "expression ::= case_when_expression", + /* 431 */ "expression ::= NK_LP expression NK_RP", + /* 432 */ "expression ::= NK_PLUS expr_or_subquery", + /* 433 */ "expression ::= NK_MINUS expr_or_subquery", + /* 434 */ "expression ::= expr_or_subquery NK_PLUS expr_or_subquery", + /* 435 */ "expression ::= expr_or_subquery NK_MINUS expr_or_subquery", + /* 436 */ "expression ::= expr_or_subquery NK_STAR expr_or_subquery", + /* 437 */ "expression ::= expr_or_subquery NK_SLASH expr_or_subquery", + /* 438 */ "expression ::= expr_or_subquery NK_REM expr_or_subquery", + /* 439 */ "expression ::= column_reference NK_ARROW NK_STRING", + /* 440 */ "expression ::= expr_or_subquery NK_BITAND expr_or_subquery", + /* 441 */ "expression ::= expr_or_subquery NK_BITOR expr_or_subquery", + /* 442 */ "expression_list ::= expr_or_subquery", + /* 443 */ "expression_list ::= expression_list NK_COMMA expr_or_subquery", + /* 444 */ "column_reference ::= column_name", + /* 445 */ "column_reference ::= table_name NK_DOT column_name", + /* 446 */ "pseudo_column ::= ROWTS", + /* 447 */ "pseudo_column ::= TBNAME", + /* 448 */ "pseudo_column ::= table_name NK_DOT TBNAME", + /* 449 */ "pseudo_column ::= QSTART", + /* 450 */ "pseudo_column ::= QEND", + /* 451 */ "pseudo_column ::= QDURATION", + /* 452 */ "pseudo_column ::= WSTART", + /* 453 */ "pseudo_column ::= WEND", + /* 454 */ "pseudo_column ::= WDURATION", + /* 455 */ "pseudo_column ::= IROWTS", + /* 456 */ "pseudo_column ::= ISFILLED", + /* 457 */ "pseudo_column ::= QTAGS", + /* 458 */ "function_expression ::= function_name NK_LP expression_list NK_RP", + /* 459 */ "function_expression ::= star_func NK_LP star_func_para_list NK_RP", + /* 460 */ "function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP", + /* 461 */ "function_expression ::= literal_func", + /* 462 */ "literal_func ::= noarg_func NK_LP NK_RP", + /* 463 */ "literal_func ::= NOW", + /* 464 */ "noarg_func ::= NOW", + /* 465 */ "noarg_func ::= TODAY", + /* 466 */ "noarg_func ::= TIMEZONE", + /* 467 */ "noarg_func ::= DATABASE", + /* 468 */ "noarg_func ::= CLIENT_VERSION", + /* 469 */ "noarg_func ::= SERVER_VERSION", + /* 470 */ "noarg_func ::= SERVER_STATUS", + /* 471 */ "noarg_func ::= CURRENT_USER", + /* 472 */ "noarg_func ::= USER", + /* 473 */ "star_func ::= COUNT", + /* 474 */ "star_func ::= FIRST", + /* 475 */ "star_func ::= LAST", + /* 476 */ "star_func ::= LAST_ROW", + /* 477 */ "star_func_para_list ::= NK_STAR", + /* 478 */ "star_func_para_list ::= other_para_list", + /* 479 */ "other_para_list ::= star_func_para", + /* 480 */ "other_para_list ::= other_para_list NK_COMMA star_func_para", + /* 481 */ "star_func_para ::= expr_or_subquery", + /* 482 */ "star_func_para ::= table_name NK_DOT NK_STAR", + /* 483 */ "case_when_expression ::= CASE when_then_list case_when_else_opt END", + /* 484 */ "case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END", + /* 485 */ "when_then_list ::= when_then_expr", + /* 486 */ "when_then_list ::= when_then_list when_then_expr", + /* 487 */ "when_then_expr ::= WHEN common_expression THEN common_expression", + /* 488 */ "case_when_else_opt ::=", + /* 489 */ "case_when_else_opt ::= ELSE common_expression", + /* 490 */ "predicate ::= expr_or_subquery compare_op expr_or_subquery", + /* 491 */ "predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery", + /* 492 */ "predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery", + /* 493 */ "predicate ::= expr_or_subquery IS NULL", + /* 494 */ "predicate ::= expr_or_subquery IS NOT NULL", + /* 495 */ "predicate ::= expr_or_subquery in_op in_predicate_value", + /* 496 */ "compare_op ::= NK_LT", + /* 497 */ "compare_op ::= NK_GT", + /* 498 */ "compare_op ::= NK_LE", + /* 499 */ "compare_op ::= NK_GE", + /* 500 */ "compare_op ::= NK_NE", + /* 501 */ "compare_op ::= NK_EQ", + /* 502 */ "compare_op ::= LIKE", + /* 503 */ "compare_op ::= NOT LIKE", + /* 504 */ "compare_op ::= MATCH", + /* 505 */ "compare_op ::= NMATCH", + /* 506 */ "compare_op ::= CONTAINS", + /* 507 */ "in_op ::= IN", + /* 508 */ "in_op ::= NOT IN", + /* 509 */ "in_predicate_value ::= NK_LP literal_list NK_RP", + /* 510 */ "boolean_value_expression ::= boolean_primary", + /* 511 */ "boolean_value_expression ::= NOT boolean_primary", + /* 512 */ "boolean_value_expression ::= boolean_value_expression OR boolean_value_expression", + /* 513 */ "boolean_value_expression ::= boolean_value_expression AND boolean_value_expression", + /* 514 */ "boolean_primary ::= predicate", + /* 515 */ "boolean_primary ::= NK_LP boolean_value_expression NK_RP", + /* 516 */ "common_expression ::= expr_or_subquery", + /* 517 */ "common_expression ::= boolean_value_expression", + /* 518 */ "from_clause_opt ::=", + /* 519 */ "from_clause_opt ::= FROM table_reference_list", + /* 520 */ "table_reference_list ::= table_reference", + /* 521 */ "table_reference_list ::= table_reference_list NK_COMMA table_reference", + /* 522 */ "table_reference ::= table_primary", + /* 523 */ "table_reference ::= joined_table", + /* 524 */ "table_primary ::= table_name alias_opt", + /* 525 */ "table_primary ::= db_name NK_DOT table_name alias_opt", + /* 526 */ "table_primary ::= subquery alias_opt", + /* 527 */ "table_primary ::= parenthesized_joined_table", + /* 528 */ "alias_opt ::=", + /* 529 */ "alias_opt ::= table_alias", + /* 530 */ "alias_opt ::= AS table_alias", + /* 531 */ "parenthesized_joined_table ::= NK_LP joined_table NK_RP", + /* 532 */ "parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP", + /* 533 */ "joined_table ::= table_reference join_type JOIN table_reference ON search_condition", + /* 534 */ "join_type ::=", + /* 535 */ "join_type ::= INNER", + /* 536 */ "query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt", + /* 537 */ "hint_list ::=", + /* 538 */ "hint_list ::= NK_HINT", + /* 539 */ "tag_mode_opt ::=", + /* 540 */ "tag_mode_opt ::= TAGS", + /* 541 */ "set_quantifier_opt ::=", + /* 542 */ "set_quantifier_opt ::= DISTINCT", + /* 543 */ "set_quantifier_opt ::= ALL", + /* 544 */ "select_list ::= select_item", + /* 545 */ "select_list ::= select_list NK_COMMA select_item", + /* 546 */ "select_item ::= NK_STAR", + /* 547 */ "select_item ::= common_expression", + /* 548 */ "select_item ::= common_expression column_alias", + /* 549 */ "select_item ::= common_expression AS column_alias", + /* 550 */ "select_item ::= table_name NK_DOT NK_STAR", + /* 551 */ "where_clause_opt ::=", + /* 552 */ "where_clause_opt ::= WHERE search_condition", + /* 553 */ "partition_by_clause_opt ::=", + /* 554 */ "partition_by_clause_opt ::= PARTITION BY partition_list", + /* 555 */ "partition_list ::= partition_item", + /* 556 */ "partition_list ::= partition_list NK_COMMA partition_item", + /* 557 */ "partition_item ::= expr_or_subquery", + /* 558 */ "partition_item ::= expr_or_subquery column_alias", + /* 559 */ "partition_item ::= expr_or_subquery AS column_alias", + /* 560 */ "twindow_clause_opt ::=", + /* 561 */ "twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP", + /* 562 */ "twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP", + /* 563 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt", + /* 564 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt", + /* 565 */ "twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition", + /* 566 */ "sliding_opt ::=", + /* 567 */ "sliding_opt ::= SLIDING NK_LP duration_literal NK_RP", + /* 568 */ "fill_opt ::=", + /* 569 */ "fill_opt ::= FILL NK_LP fill_mode NK_RP", + /* 570 */ "fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP", + /* 571 */ "fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP", + /* 572 */ "fill_mode ::= NONE", + /* 573 */ "fill_mode ::= PREV", + /* 574 */ "fill_mode ::= NULL", + /* 575 */ "fill_mode ::= NULL_F", + /* 576 */ "fill_mode ::= LINEAR", + /* 577 */ "fill_mode ::= NEXT", + /* 578 */ "group_by_clause_opt ::=", + /* 579 */ "group_by_clause_opt ::= GROUP BY group_by_list", + /* 580 */ "group_by_list ::= expr_or_subquery", + /* 581 */ "group_by_list ::= group_by_list NK_COMMA expr_or_subquery", + /* 582 */ "having_clause_opt ::=", + /* 583 */ "having_clause_opt ::= HAVING search_condition", + /* 584 */ "range_opt ::=", + /* 585 */ "range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP", + /* 586 */ "range_opt ::= RANGE NK_LP expr_or_subquery NK_RP", + /* 587 */ "every_opt ::=", + /* 588 */ "every_opt ::= EVERY NK_LP duration_literal NK_RP", + /* 589 */ "query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt", + /* 590 */ "query_simple ::= query_specification", + /* 591 */ "query_simple ::= union_query_expression", + /* 592 */ "union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery", + /* 593 */ "union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery", + /* 594 */ "query_simple_or_subquery ::= query_simple", + /* 595 */ "query_simple_or_subquery ::= subquery", + /* 596 */ "query_or_subquery ::= query_expression", + /* 597 */ "query_or_subquery ::= subquery", + /* 598 */ "order_by_clause_opt ::=", + /* 599 */ "order_by_clause_opt ::= ORDER BY sort_specification_list", + /* 600 */ "slimit_clause_opt ::=", + /* 601 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER", + /* 602 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER", + /* 603 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER", + /* 604 */ "limit_clause_opt ::=", + /* 605 */ "limit_clause_opt ::= LIMIT NK_INTEGER", + /* 606 */ "limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER", + /* 607 */ "limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER", + /* 608 */ "subquery ::= NK_LP query_expression NK_RP", + /* 609 */ "subquery ::= NK_LP subquery NK_RP", + /* 610 */ "search_condition ::= common_expression", + /* 611 */ "sort_specification_list ::= sort_specification", + /* 612 */ "sort_specification_list ::= sort_specification_list NK_COMMA sort_specification", + /* 613 */ "sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt", + /* 614 */ "ordering_specification_opt ::=", + /* 615 */ "ordering_specification_opt ::= ASC", + /* 616 */ "ordering_specification_opt ::= DESC", + /* 617 */ "null_ordering_opt ::=", + /* 618 */ "null_ordering_opt ::= NULLS FIRST", + /* 619 */ "null_ordering_opt ::= NULLS LAST", }; #endif /* NDEBUG */ @@ -3161,72 +3157,71 @@ static void yy_destructor( case 406: /* db_name_cond_opt */ case 407: /* table_name_cond */ case 408: /* from_db_opt */ - case 411: /* db_name_cond */ - case 412: /* tag_item */ - case 414: /* index_options */ - case 415: /* full_index_name */ - case 418: /* sliding_opt */ - case 419: /* sma_stream_opt */ - case 420: /* func */ - case 423: /* query_or_subquery */ - case 424: /* where_clause_opt */ - case 427: /* explain_options */ - case 428: /* insert_query */ - case 434: /* stream_options */ - case 437: /* subtable_opt */ - case 439: /* expression */ - case 441: /* literal_func */ - case 444: /* expr_or_subquery */ - case 445: /* pseudo_column */ - case 446: /* column_reference */ - case 447: /* function_expression */ - case 448: /* case_when_expression */ - case 453: /* star_func_para */ - case 455: /* case_when_else_opt */ - case 456: /* common_expression */ - case 457: /* when_then_expr */ - case 458: /* predicate */ - case 461: /* in_predicate_value */ - case 462: /* boolean_value_expression */ - case 463: /* boolean_primary */ - case 464: /* from_clause_opt */ - case 465: /* table_reference_list */ - case 466: /* table_reference */ - case 467: /* table_primary */ - case 468: /* joined_table */ - case 470: /* subquery */ - case 471: /* parenthesized_joined_table */ - case 473: /* query_specification */ - case 479: /* range_opt */ - case 480: /* every_opt */ - case 481: /* fill_opt */ - case 482: /* twindow_clause_opt */ - case 484: /* having_clause_opt */ - case 485: /* select_item */ - case 487: /* partition_item */ - case 490: /* query_expression */ - case 491: /* query_simple */ - case 493: /* slimit_clause_opt */ - case 494: /* limit_clause_opt */ - case 495: /* union_query_expression */ - case 496: /* query_simple_or_subquery */ - case 498: /* sort_specification */ + case 411: /* tag_item */ + case 413: /* index_options */ + case 414: /* full_index_name */ + case 417: /* sliding_opt */ + case 418: /* sma_stream_opt */ + case 419: /* func */ + case 422: /* query_or_subquery */ + case 423: /* where_clause_opt */ + case 426: /* explain_options */ + case 427: /* insert_query */ + case 433: /* stream_options */ + case 436: /* subtable_opt */ + case 438: /* expression */ + case 440: /* literal_func */ + case 443: /* expr_or_subquery */ + case 444: /* pseudo_column */ + case 445: /* column_reference */ + case 446: /* function_expression */ + case 447: /* case_when_expression */ + case 452: /* star_func_para */ + case 454: /* case_when_else_opt */ + case 455: /* common_expression */ + case 456: /* when_then_expr */ + case 457: /* predicate */ + case 460: /* in_predicate_value */ + case 461: /* boolean_value_expression */ + case 462: /* boolean_primary */ + case 463: /* from_clause_opt */ + case 464: /* table_reference_list */ + case 465: /* table_reference */ + case 466: /* table_primary */ + case 467: /* joined_table */ + case 469: /* subquery */ + case 470: /* parenthesized_joined_table */ + case 472: /* query_specification */ + case 478: /* range_opt */ + case 479: /* every_opt */ + case 480: /* fill_opt */ + case 481: /* twindow_clause_opt */ + case 483: /* having_clause_opt */ + case 484: /* select_item */ + case 486: /* partition_item */ + case 489: /* query_expression */ + case 490: /* query_simple */ + case 492: /* slimit_clause_opt */ + case 493: /* limit_clause_opt */ + case 494: /* union_query_expression */ + case 495: /* query_simple_or_subquery */ + case 497: /* sort_specification */ { #line 7 "sql.y" - nodesDestroyNode((yypminor->yy122)); -#line 3217 "sql.c" + nodesDestroyNode((yypminor->yy712)); +#line 3212 "sql.c" } break; case 344: /* account_options */ case 345: /* alter_account_options */ case 347: /* alter_account_option */ case 369: /* speed_opt */ - case 422: /* with_meta */ - case 431: /* bufsize_opt */ + case 421: /* with_meta */ + case 430: /* bufsize_opt */ { #line 54 "sql.y" -#line 3229 "sql.c" +#line 3224 "sql.c" } break; case 348: /* ip_range_list */ @@ -3246,26 +3241,26 @@ static void yy_destructor( case 396: /* duration_list */ case 397: /* rollup_func_list */ case 409: /* tag_list_opt */ - case 417: /* func_list */ - case 435: /* col_list_opt */ - case 436: /* tag_def_or_ref_opt */ - case 440: /* dnode_list */ - case 442: /* literal_list */ - case 450: /* star_func_para_list */ - case 452: /* other_para_list */ - case 454: /* when_then_list */ - case 474: /* hint_list */ - case 477: /* select_list */ - case 478: /* partition_by_clause_opt */ - case 483: /* group_by_clause_opt */ - case 486: /* partition_list */ - case 489: /* group_by_list */ - case 492: /* order_by_clause_opt */ - case 497: /* sort_specification_list */ + case 416: /* func_list */ + case 434: /* col_list_opt */ + case 435: /* tag_def_or_ref_opt */ + case 439: /* dnode_list */ + case 441: /* literal_list */ + case 449: /* star_func_para_list */ + case 451: /* other_para_list */ + case 453: /* when_then_list */ + case 473: /* hint_list */ + case 476: /* select_list */ + case 477: /* partition_by_clause_opt */ + case 482: /* group_by_clause_opt */ + case 485: /* partition_list */ + case 488: /* group_by_list */ + case 491: /* order_by_clause_opt */ + case 496: /* sort_specification_list */ { #line 85 "sql.y" - nodesDestroyList((yypminor->yy298)); -#line 3268 "sql.c" + nodesDestroyList((yypminor->yy424)); +#line 3263 "sql.c" } break; case 351: /* user_name */ @@ -3275,27 +3270,27 @@ static void yy_destructor( case 362: /* dnode_endpoint */ case 387: /* column_name */ case 401: /* function_name */ - case 413: /* column_alias */ - case 416: /* index_name */ - case 421: /* sma_func_name */ - case 425: /* cgroup_name */ - case 432: /* language_opt */ - case 433: /* stream_name */ - case 443: /* table_alias */ - case 449: /* star_func */ - case 451: /* noarg_func */ - case 469: /* alias_opt */ + case 412: /* column_alias */ + case 415: /* index_name */ + case 420: /* sma_func_name */ + case 424: /* cgroup_name */ + case 431: /* language_opt */ + case 432: /* stream_name */ + case 442: /* table_alias */ + case 448: /* star_func */ + case 450: /* noarg_func */ + case 468: /* alias_opt */ { -#line 788 "sql.y" +#line 785 "sql.y" -#line 3291 "sql.c" +#line 3286 "sql.c" } break; case 352: /* sysinfo_opt */ { #line 112 "sql.y" -#line 3298 "sql.c" +#line 3293 "sql.c" } break; case 353: /* privileges */ @@ -3304,30 +3299,30 @@ static void yy_destructor( { #line 121 "sql.y" -#line 3307 "sql.c" +#line 3302 "sql.c" } break; case 354: /* priv_level */ { #line 137 "sql.y" -#line 3314 "sql.c" +#line 3309 "sql.c" } break; case 363: /* force_opt */ case 364: /* unsafe_opt */ case 365: /* not_exists_opt */ case 367: /* exists_opt */ - case 426: /* analyze_opt */ - case 429: /* or_replace_opt */ - case 430: /* agg_func_opt */ - case 438: /* ignore_opt */ - case 475: /* set_quantifier_opt */ - case 476: /* tag_mode_opt */ + case 425: /* analyze_opt */ + case 428: /* or_replace_opt */ + case 429: /* agg_func_opt */ + case 437: /* ignore_opt */ + case 474: /* set_quantifier_opt */ + case 475: /* tag_mode_opt */ { #line 166 "sql.y" -#line 3330 "sql.c" +#line 3325 "sql.c" } break; case 376: /* alter_db_option */ @@ -3335,65 +3330,65 @@ static void yy_destructor( { #line 263 "sql.y" -#line 3338 "sql.c" +#line 3333 "sql.c" } break; case 388: /* type_name */ { #line 384 "sql.y" -#line 3345 "sql.c" +#line 3340 "sql.c" } break; case 403: /* db_kind_opt */ case 410: /* table_kind */ { -#line 548 "sql.y" +#line 545 "sql.y" -#line 3353 "sql.c" +#line 3348 "sql.c" } break; case 404: /* table_kind_db_name_cond_opt */ { -#line 511 "sql.y" +#line 510 "sql.y" -#line 3360 "sql.c" +#line 3355 "sql.c" } break; - case 459: /* compare_op */ - case 460: /* in_op */ + case 458: /* compare_op */ + case 459: /* in_op */ { -#line 976 "sql.y" +#line 973 "sql.y" -#line 3368 "sql.c" +#line 3363 "sql.c" } break; - case 472: /* join_type */ + case 471: /* join_type */ { -#line 1052 "sql.y" +#line 1049 "sql.y" -#line 3375 "sql.c" +#line 3370 "sql.c" } break; - case 488: /* fill_mode */ + case 487: /* fill_mode */ { -#line 1138 "sql.y" +#line 1135 "sql.y" -#line 3382 "sql.c" +#line 3377 "sql.c" } break; - case 499: /* ordering_specification_opt */ + case 498: /* ordering_specification_opt */ { -#line 1223 "sql.y" +#line 1220 "sql.y" -#line 3389 "sql.c" +#line 3384 "sql.c" } break; - case 500: /* null_ordering_opt */ + case 499: /* null_ordering_opt */ { -#line 1229 "sql.y" +#line 1226 "sql.y" -#line 3396 "sql.c" +#line 3391 "sql.c" } break; /********* End destructor definitions *****************************************/ @@ -3965,344 +3960,343 @@ static const YYCODETYPE yyRuleInfoLhs[] = { 343, /* (280) cmd ::= SHOW CLUSTER ALIVE */ 404, /* (281) table_kind_db_name_cond_opt ::= */ 404, /* (282) table_kind_db_name_cond_opt ::= table_kind */ - 404, /* (283) table_kind_db_name_cond_opt ::= db_name_cond */ - 404, /* (284) table_kind_db_name_cond_opt ::= table_kind db_name_cond */ + 404, /* (283) table_kind_db_name_cond_opt ::= db_name NK_DOT */ + 404, /* (284) table_kind_db_name_cond_opt ::= table_kind db_name NK_DOT */ 410, /* (285) table_kind ::= NORMAL */ 410, /* (286) table_kind ::= CHILD */ - 411, /* (287) db_name_cond ::= db_name NK_DOT */ - 406, /* (288) db_name_cond_opt ::= */ - 406, /* (289) db_name_cond_opt ::= db_name NK_DOT */ - 405, /* (290) like_pattern_opt ::= */ - 405, /* (291) like_pattern_opt ::= LIKE NK_STRING */ - 407, /* (292) table_name_cond ::= table_name */ - 408, /* (293) from_db_opt ::= */ - 408, /* (294) from_db_opt ::= FROM db_name */ - 409, /* (295) tag_list_opt ::= */ - 409, /* (296) tag_list_opt ::= tag_item */ - 409, /* (297) tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ - 412, /* (298) tag_item ::= TBNAME */ - 412, /* (299) tag_item ::= QTAGS */ - 412, /* (300) tag_item ::= column_name */ - 412, /* (301) tag_item ::= column_name column_alias */ - 412, /* (302) tag_item ::= column_name AS column_alias */ - 403, /* (303) db_kind_opt ::= */ - 403, /* (304) db_kind_opt ::= USER */ - 403, /* (305) db_kind_opt ::= SYSTEM */ - 343, /* (306) cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options */ - 343, /* (307) cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP */ - 343, /* (308) cmd ::= DROP INDEX exists_opt full_index_name */ - 415, /* (309) full_index_name ::= index_name */ - 415, /* (310) full_index_name ::= db_name NK_DOT index_name */ - 414, /* (311) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ - 414, /* (312) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt */ - 417, /* (313) func_list ::= func */ - 417, /* (314) func_list ::= func_list NK_COMMA func */ - 420, /* (315) func ::= sma_func_name NK_LP expression_list NK_RP */ - 421, /* (316) sma_func_name ::= function_name */ - 421, /* (317) sma_func_name ::= COUNT */ - 421, /* (318) sma_func_name ::= FIRST */ - 421, /* (319) sma_func_name ::= LAST */ - 421, /* (320) sma_func_name ::= LAST_ROW */ - 419, /* (321) sma_stream_opt ::= */ - 419, /* (322) sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ - 419, /* (323) sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ - 419, /* (324) sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ - 422, /* (325) with_meta ::= AS */ - 422, /* (326) with_meta ::= WITH META AS */ - 422, /* (327) with_meta ::= ONLY META AS */ - 343, /* (328) cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ - 343, /* (329) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name */ - 343, /* (330) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt */ - 343, /* (331) cmd ::= DROP TOPIC exists_opt topic_name */ - 343, /* (332) cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ - 343, /* (333) cmd ::= DESC full_table_name */ - 343, /* (334) cmd ::= DESCRIBE full_table_name */ - 343, /* (335) cmd ::= RESET QUERY CACHE */ - 343, /* (336) cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ - 343, /* (337) cmd ::= EXPLAIN analyze_opt explain_options insert_query */ - 426, /* (338) analyze_opt ::= */ - 426, /* (339) analyze_opt ::= ANALYZE */ - 427, /* (340) explain_options ::= */ - 427, /* (341) explain_options ::= explain_options VERBOSE NK_BOOL */ - 427, /* (342) explain_options ::= explain_options RATIO NK_FLOAT */ - 343, /* (343) cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt */ - 343, /* (344) cmd ::= DROP FUNCTION exists_opt function_name */ - 430, /* (345) agg_func_opt ::= */ - 430, /* (346) agg_func_opt ::= AGGREGATE */ - 431, /* (347) bufsize_opt ::= */ - 431, /* (348) bufsize_opt ::= BUFSIZE NK_INTEGER */ - 432, /* (349) language_opt ::= */ - 432, /* (350) language_opt ::= LANGUAGE NK_STRING */ - 429, /* (351) or_replace_opt ::= */ - 429, /* (352) or_replace_opt ::= OR REPLACE */ - 343, /* (353) cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery */ - 343, /* (354) cmd ::= DROP STREAM exists_opt stream_name */ - 343, /* (355) cmd ::= PAUSE STREAM exists_opt stream_name */ - 343, /* (356) cmd ::= RESUME STREAM exists_opt ignore_opt stream_name */ - 435, /* (357) col_list_opt ::= */ - 435, /* (358) col_list_opt ::= NK_LP col_name_list NK_RP */ - 436, /* (359) tag_def_or_ref_opt ::= */ - 436, /* (360) tag_def_or_ref_opt ::= tags_def */ - 436, /* (361) tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP */ - 434, /* (362) stream_options ::= */ - 434, /* (363) stream_options ::= stream_options TRIGGER AT_ONCE */ - 434, /* (364) stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ - 434, /* (365) stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ - 434, /* (366) stream_options ::= stream_options WATERMARK duration_literal */ - 434, /* (367) stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ - 434, /* (368) stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ - 434, /* (369) stream_options ::= stream_options DELETE_MARK duration_literal */ - 434, /* (370) stream_options ::= stream_options IGNORE UPDATE NK_INTEGER */ - 437, /* (371) subtable_opt ::= */ - 437, /* (372) subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ - 438, /* (373) ignore_opt ::= */ - 438, /* (374) ignore_opt ::= IGNORE UNTREATED */ - 343, /* (375) cmd ::= KILL CONNECTION NK_INTEGER */ - 343, /* (376) cmd ::= KILL QUERY NK_STRING */ - 343, /* (377) cmd ::= KILL TRANSACTION NK_INTEGER */ - 343, /* (378) cmd ::= BALANCE VGROUP */ - 343, /* (379) cmd ::= BALANCE VGROUP LEADER */ - 343, /* (380) cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ - 343, /* (381) cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ - 343, /* (382) cmd ::= SPLIT VGROUP NK_INTEGER */ - 440, /* (383) dnode_list ::= DNODE NK_INTEGER */ - 440, /* (384) dnode_list ::= dnode_list DNODE NK_INTEGER */ - 343, /* (385) cmd ::= DELETE FROM full_table_name where_clause_opt */ - 343, /* (386) cmd ::= query_or_subquery */ - 343, /* (387) cmd ::= insert_query */ - 428, /* (388) insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ - 428, /* (389) insert_query ::= INSERT INTO full_table_name query_or_subquery */ - 346, /* (390) literal ::= NK_INTEGER */ - 346, /* (391) literal ::= NK_FLOAT */ - 346, /* (392) literal ::= NK_STRING */ - 346, /* (393) literal ::= NK_BOOL */ - 346, /* (394) literal ::= TIMESTAMP NK_STRING */ - 346, /* (395) literal ::= duration_literal */ - 346, /* (396) literal ::= NULL */ - 346, /* (397) literal ::= NK_QUESTION */ - 399, /* (398) duration_literal ::= NK_VARIABLE */ - 375, /* (399) signed ::= NK_INTEGER */ - 375, /* (400) signed ::= NK_PLUS NK_INTEGER */ - 375, /* (401) signed ::= NK_MINUS NK_INTEGER */ - 375, /* (402) signed ::= NK_FLOAT */ - 375, /* (403) signed ::= NK_PLUS NK_FLOAT */ - 375, /* (404) signed ::= NK_MINUS NK_FLOAT */ - 389, /* (405) signed_literal ::= signed */ - 389, /* (406) signed_literal ::= NK_STRING */ - 389, /* (407) signed_literal ::= NK_BOOL */ - 389, /* (408) signed_literal ::= TIMESTAMP NK_STRING */ - 389, /* (409) signed_literal ::= duration_literal */ - 389, /* (410) signed_literal ::= NULL */ - 389, /* (411) signed_literal ::= literal_func */ - 389, /* (412) signed_literal ::= NK_QUESTION */ - 442, /* (413) literal_list ::= signed_literal */ - 442, /* (414) literal_list ::= literal_list NK_COMMA signed_literal */ - 358, /* (415) db_name ::= NK_ID */ - 359, /* (416) table_name ::= NK_ID */ - 387, /* (417) column_name ::= NK_ID */ - 401, /* (418) function_name ::= NK_ID */ - 443, /* (419) table_alias ::= NK_ID */ - 413, /* (420) column_alias ::= NK_ID */ - 351, /* (421) user_name ::= NK_ID */ - 360, /* (422) topic_name ::= NK_ID */ - 433, /* (423) stream_name ::= NK_ID */ - 425, /* (424) cgroup_name ::= NK_ID */ - 416, /* (425) index_name ::= NK_ID */ - 444, /* (426) expr_or_subquery ::= expression */ - 439, /* (427) expression ::= literal */ - 439, /* (428) expression ::= pseudo_column */ - 439, /* (429) expression ::= column_reference */ - 439, /* (430) expression ::= function_expression */ - 439, /* (431) expression ::= case_when_expression */ - 439, /* (432) expression ::= NK_LP expression NK_RP */ - 439, /* (433) expression ::= NK_PLUS expr_or_subquery */ - 439, /* (434) expression ::= NK_MINUS expr_or_subquery */ - 439, /* (435) expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ - 439, /* (436) expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ - 439, /* (437) expression ::= expr_or_subquery NK_STAR expr_or_subquery */ - 439, /* (438) expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ - 439, /* (439) expression ::= expr_or_subquery NK_REM expr_or_subquery */ - 439, /* (440) expression ::= column_reference NK_ARROW NK_STRING */ - 439, /* (441) expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ - 439, /* (442) expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ - 392, /* (443) expression_list ::= expr_or_subquery */ - 392, /* (444) expression_list ::= expression_list NK_COMMA expr_or_subquery */ - 446, /* (445) column_reference ::= column_name */ - 446, /* (446) column_reference ::= table_name NK_DOT column_name */ - 445, /* (447) pseudo_column ::= ROWTS */ - 445, /* (448) pseudo_column ::= TBNAME */ - 445, /* (449) pseudo_column ::= table_name NK_DOT TBNAME */ - 445, /* (450) pseudo_column ::= QSTART */ - 445, /* (451) pseudo_column ::= QEND */ - 445, /* (452) pseudo_column ::= QDURATION */ - 445, /* (453) pseudo_column ::= WSTART */ - 445, /* (454) pseudo_column ::= WEND */ - 445, /* (455) pseudo_column ::= WDURATION */ - 445, /* (456) pseudo_column ::= IROWTS */ - 445, /* (457) pseudo_column ::= ISFILLED */ - 445, /* (458) pseudo_column ::= QTAGS */ - 447, /* (459) function_expression ::= function_name NK_LP expression_list NK_RP */ - 447, /* (460) function_expression ::= star_func NK_LP star_func_para_list NK_RP */ - 447, /* (461) function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ - 447, /* (462) function_expression ::= literal_func */ - 441, /* (463) literal_func ::= noarg_func NK_LP NK_RP */ - 441, /* (464) literal_func ::= NOW */ - 451, /* (465) noarg_func ::= NOW */ - 451, /* (466) noarg_func ::= TODAY */ - 451, /* (467) noarg_func ::= TIMEZONE */ - 451, /* (468) noarg_func ::= DATABASE */ - 451, /* (469) noarg_func ::= CLIENT_VERSION */ - 451, /* (470) noarg_func ::= SERVER_VERSION */ - 451, /* (471) noarg_func ::= SERVER_STATUS */ - 451, /* (472) noarg_func ::= CURRENT_USER */ - 451, /* (473) noarg_func ::= USER */ - 449, /* (474) star_func ::= COUNT */ - 449, /* (475) star_func ::= FIRST */ - 449, /* (476) star_func ::= LAST */ - 449, /* (477) star_func ::= LAST_ROW */ - 450, /* (478) star_func_para_list ::= NK_STAR */ - 450, /* (479) star_func_para_list ::= other_para_list */ - 452, /* (480) other_para_list ::= star_func_para */ - 452, /* (481) other_para_list ::= other_para_list NK_COMMA star_func_para */ - 453, /* (482) star_func_para ::= expr_or_subquery */ - 453, /* (483) star_func_para ::= table_name NK_DOT NK_STAR */ - 448, /* (484) case_when_expression ::= CASE when_then_list case_when_else_opt END */ - 448, /* (485) case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ - 454, /* (486) when_then_list ::= when_then_expr */ - 454, /* (487) when_then_list ::= when_then_list when_then_expr */ - 457, /* (488) when_then_expr ::= WHEN common_expression THEN common_expression */ - 455, /* (489) case_when_else_opt ::= */ - 455, /* (490) case_when_else_opt ::= ELSE common_expression */ - 458, /* (491) predicate ::= expr_or_subquery compare_op expr_or_subquery */ - 458, /* (492) predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ - 458, /* (493) predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ - 458, /* (494) predicate ::= expr_or_subquery IS NULL */ - 458, /* (495) predicate ::= expr_or_subquery IS NOT NULL */ - 458, /* (496) predicate ::= expr_or_subquery in_op in_predicate_value */ - 459, /* (497) compare_op ::= NK_LT */ - 459, /* (498) compare_op ::= NK_GT */ - 459, /* (499) compare_op ::= NK_LE */ - 459, /* (500) compare_op ::= NK_GE */ - 459, /* (501) compare_op ::= NK_NE */ - 459, /* (502) compare_op ::= NK_EQ */ - 459, /* (503) compare_op ::= LIKE */ - 459, /* (504) compare_op ::= NOT LIKE */ - 459, /* (505) compare_op ::= MATCH */ - 459, /* (506) compare_op ::= NMATCH */ - 459, /* (507) compare_op ::= CONTAINS */ - 460, /* (508) in_op ::= IN */ - 460, /* (509) in_op ::= NOT IN */ - 461, /* (510) in_predicate_value ::= NK_LP literal_list NK_RP */ - 462, /* (511) boolean_value_expression ::= boolean_primary */ - 462, /* (512) boolean_value_expression ::= NOT boolean_primary */ - 462, /* (513) boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ - 462, /* (514) boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ - 463, /* (515) boolean_primary ::= predicate */ - 463, /* (516) boolean_primary ::= NK_LP boolean_value_expression NK_RP */ - 456, /* (517) common_expression ::= expr_or_subquery */ - 456, /* (518) common_expression ::= boolean_value_expression */ - 464, /* (519) from_clause_opt ::= */ - 464, /* (520) from_clause_opt ::= FROM table_reference_list */ - 465, /* (521) table_reference_list ::= table_reference */ - 465, /* (522) table_reference_list ::= table_reference_list NK_COMMA table_reference */ - 466, /* (523) table_reference ::= table_primary */ - 466, /* (524) table_reference ::= joined_table */ - 467, /* (525) table_primary ::= table_name alias_opt */ - 467, /* (526) table_primary ::= db_name NK_DOT table_name alias_opt */ - 467, /* (527) table_primary ::= subquery alias_opt */ - 467, /* (528) table_primary ::= parenthesized_joined_table */ - 469, /* (529) alias_opt ::= */ - 469, /* (530) alias_opt ::= table_alias */ - 469, /* (531) alias_opt ::= AS table_alias */ - 471, /* (532) parenthesized_joined_table ::= NK_LP joined_table NK_RP */ - 471, /* (533) parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ - 468, /* (534) joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ - 472, /* (535) join_type ::= */ - 472, /* (536) join_type ::= INNER */ - 473, /* (537) query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt */ - 474, /* (538) hint_list ::= */ - 474, /* (539) hint_list ::= NK_HINT */ - 476, /* (540) tag_mode_opt ::= */ - 476, /* (541) tag_mode_opt ::= TAGS */ - 475, /* (542) set_quantifier_opt ::= */ - 475, /* (543) set_quantifier_opt ::= DISTINCT */ - 475, /* (544) set_quantifier_opt ::= ALL */ - 477, /* (545) select_list ::= select_item */ - 477, /* (546) select_list ::= select_list NK_COMMA select_item */ - 485, /* (547) select_item ::= NK_STAR */ - 485, /* (548) select_item ::= common_expression */ - 485, /* (549) select_item ::= common_expression column_alias */ - 485, /* (550) select_item ::= common_expression AS column_alias */ - 485, /* (551) select_item ::= table_name NK_DOT NK_STAR */ - 424, /* (552) where_clause_opt ::= */ - 424, /* (553) where_clause_opt ::= WHERE search_condition */ - 478, /* (554) partition_by_clause_opt ::= */ - 478, /* (555) partition_by_clause_opt ::= PARTITION BY partition_list */ - 486, /* (556) partition_list ::= partition_item */ - 486, /* (557) partition_list ::= partition_list NK_COMMA partition_item */ - 487, /* (558) partition_item ::= expr_or_subquery */ - 487, /* (559) partition_item ::= expr_or_subquery column_alias */ - 487, /* (560) partition_item ::= expr_or_subquery AS column_alias */ - 482, /* (561) twindow_clause_opt ::= */ - 482, /* (562) twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ - 482, /* (563) twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ - 482, /* (564) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ - 482, /* (565) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ - 482, /* (566) twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ - 418, /* (567) sliding_opt ::= */ - 418, /* (568) sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ - 481, /* (569) fill_opt ::= */ - 481, /* (570) fill_opt ::= FILL NK_LP fill_mode NK_RP */ - 481, /* (571) fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP */ - 481, /* (572) fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP */ - 488, /* (573) fill_mode ::= NONE */ - 488, /* (574) fill_mode ::= PREV */ - 488, /* (575) fill_mode ::= NULL */ - 488, /* (576) fill_mode ::= NULL_F */ - 488, /* (577) fill_mode ::= LINEAR */ - 488, /* (578) fill_mode ::= NEXT */ - 483, /* (579) group_by_clause_opt ::= */ - 483, /* (580) group_by_clause_opt ::= GROUP BY group_by_list */ - 489, /* (581) group_by_list ::= expr_or_subquery */ - 489, /* (582) group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ - 484, /* (583) having_clause_opt ::= */ - 484, /* (584) having_clause_opt ::= HAVING search_condition */ - 479, /* (585) range_opt ::= */ - 479, /* (586) range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ - 479, /* (587) range_opt ::= RANGE NK_LP expr_or_subquery NK_RP */ - 480, /* (588) every_opt ::= */ - 480, /* (589) every_opt ::= EVERY NK_LP duration_literal NK_RP */ - 490, /* (590) query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ - 491, /* (591) query_simple ::= query_specification */ - 491, /* (592) query_simple ::= union_query_expression */ - 495, /* (593) union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ - 495, /* (594) union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ - 496, /* (595) query_simple_or_subquery ::= query_simple */ - 496, /* (596) query_simple_or_subquery ::= subquery */ - 423, /* (597) query_or_subquery ::= query_expression */ - 423, /* (598) query_or_subquery ::= subquery */ - 492, /* (599) order_by_clause_opt ::= */ - 492, /* (600) order_by_clause_opt ::= ORDER BY sort_specification_list */ - 493, /* (601) slimit_clause_opt ::= */ - 493, /* (602) slimit_clause_opt ::= SLIMIT NK_INTEGER */ - 493, /* (603) slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ - 493, /* (604) slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ - 494, /* (605) limit_clause_opt ::= */ - 494, /* (606) limit_clause_opt ::= LIMIT NK_INTEGER */ - 494, /* (607) limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ - 494, /* (608) limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ - 470, /* (609) subquery ::= NK_LP query_expression NK_RP */ - 470, /* (610) subquery ::= NK_LP subquery NK_RP */ - 361, /* (611) search_condition ::= common_expression */ - 497, /* (612) sort_specification_list ::= sort_specification */ - 497, /* (613) sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ - 498, /* (614) sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ - 499, /* (615) ordering_specification_opt ::= */ - 499, /* (616) ordering_specification_opt ::= ASC */ - 499, /* (617) ordering_specification_opt ::= DESC */ - 500, /* (618) null_ordering_opt ::= */ - 500, /* (619) null_ordering_opt ::= NULLS FIRST */ - 500, /* (620) null_ordering_opt ::= NULLS LAST */ + 406, /* (287) db_name_cond_opt ::= */ + 406, /* (288) db_name_cond_opt ::= db_name NK_DOT */ + 405, /* (289) like_pattern_opt ::= */ + 405, /* (290) like_pattern_opt ::= LIKE NK_STRING */ + 407, /* (291) table_name_cond ::= table_name */ + 408, /* (292) from_db_opt ::= */ + 408, /* (293) from_db_opt ::= FROM db_name */ + 409, /* (294) tag_list_opt ::= */ + 409, /* (295) tag_list_opt ::= tag_item */ + 409, /* (296) tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ + 411, /* (297) tag_item ::= TBNAME */ + 411, /* (298) tag_item ::= QTAGS */ + 411, /* (299) tag_item ::= column_name */ + 411, /* (300) tag_item ::= column_name column_alias */ + 411, /* (301) tag_item ::= column_name AS column_alias */ + 403, /* (302) db_kind_opt ::= */ + 403, /* (303) db_kind_opt ::= USER */ + 403, /* (304) db_kind_opt ::= SYSTEM */ + 343, /* (305) cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options */ + 343, /* (306) cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP */ + 343, /* (307) cmd ::= DROP INDEX exists_opt full_index_name */ + 414, /* (308) full_index_name ::= index_name */ + 414, /* (309) full_index_name ::= db_name NK_DOT index_name */ + 413, /* (310) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ + 413, /* (311) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt */ + 416, /* (312) func_list ::= func */ + 416, /* (313) func_list ::= func_list NK_COMMA func */ + 419, /* (314) func ::= sma_func_name NK_LP expression_list NK_RP */ + 420, /* (315) sma_func_name ::= function_name */ + 420, /* (316) sma_func_name ::= COUNT */ + 420, /* (317) sma_func_name ::= FIRST */ + 420, /* (318) sma_func_name ::= LAST */ + 420, /* (319) sma_func_name ::= LAST_ROW */ + 418, /* (320) sma_stream_opt ::= */ + 418, /* (321) sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ + 418, /* (322) sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ + 418, /* (323) sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ + 421, /* (324) with_meta ::= AS */ + 421, /* (325) with_meta ::= WITH META AS */ + 421, /* (326) with_meta ::= ONLY META AS */ + 343, /* (327) cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ + 343, /* (328) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name */ + 343, /* (329) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt */ + 343, /* (330) cmd ::= DROP TOPIC exists_opt topic_name */ + 343, /* (331) cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ + 343, /* (332) cmd ::= DESC full_table_name */ + 343, /* (333) cmd ::= DESCRIBE full_table_name */ + 343, /* (334) cmd ::= RESET QUERY CACHE */ + 343, /* (335) cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ + 343, /* (336) cmd ::= EXPLAIN analyze_opt explain_options insert_query */ + 425, /* (337) analyze_opt ::= */ + 425, /* (338) analyze_opt ::= ANALYZE */ + 426, /* (339) explain_options ::= */ + 426, /* (340) explain_options ::= explain_options VERBOSE NK_BOOL */ + 426, /* (341) explain_options ::= explain_options RATIO NK_FLOAT */ + 343, /* (342) cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt */ + 343, /* (343) cmd ::= DROP FUNCTION exists_opt function_name */ + 429, /* (344) agg_func_opt ::= */ + 429, /* (345) agg_func_opt ::= AGGREGATE */ + 430, /* (346) bufsize_opt ::= */ + 430, /* (347) bufsize_opt ::= BUFSIZE NK_INTEGER */ + 431, /* (348) language_opt ::= */ + 431, /* (349) language_opt ::= LANGUAGE NK_STRING */ + 428, /* (350) or_replace_opt ::= */ + 428, /* (351) or_replace_opt ::= OR REPLACE */ + 343, /* (352) cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery */ + 343, /* (353) cmd ::= DROP STREAM exists_opt stream_name */ + 343, /* (354) cmd ::= PAUSE STREAM exists_opt stream_name */ + 343, /* (355) cmd ::= RESUME STREAM exists_opt ignore_opt stream_name */ + 434, /* (356) col_list_opt ::= */ + 434, /* (357) col_list_opt ::= NK_LP col_name_list NK_RP */ + 435, /* (358) tag_def_or_ref_opt ::= */ + 435, /* (359) tag_def_or_ref_opt ::= tags_def */ + 435, /* (360) tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP */ + 433, /* (361) stream_options ::= */ + 433, /* (362) stream_options ::= stream_options TRIGGER AT_ONCE */ + 433, /* (363) stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ + 433, /* (364) stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ + 433, /* (365) stream_options ::= stream_options WATERMARK duration_literal */ + 433, /* (366) stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ + 433, /* (367) stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ + 433, /* (368) stream_options ::= stream_options DELETE_MARK duration_literal */ + 433, /* (369) stream_options ::= stream_options IGNORE UPDATE NK_INTEGER */ + 436, /* (370) subtable_opt ::= */ + 436, /* (371) subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ + 437, /* (372) ignore_opt ::= */ + 437, /* (373) ignore_opt ::= IGNORE UNTREATED */ + 343, /* (374) cmd ::= KILL CONNECTION NK_INTEGER */ + 343, /* (375) cmd ::= KILL QUERY NK_STRING */ + 343, /* (376) cmd ::= KILL TRANSACTION NK_INTEGER */ + 343, /* (377) cmd ::= BALANCE VGROUP */ + 343, /* (378) cmd ::= BALANCE VGROUP LEADER */ + 343, /* (379) cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ + 343, /* (380) cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ + 343, /* (381) cmd ::= SPLIT VGROUP NK_INTEGER */ + 439, /* (382) dnode_list ::= DNODE NK_INTEGER */ + 439, /* (383) dnode_list ::= dnode_list DNODE NK_INTEGER */ + 343, /* (384) cmd ::= DELETE FROM full_table_name where_clause_opt */ + 343, /* (385) cmd ::= query_or_subquery */ + 343, /* (386) cmd ::= insert_query */ + 427, /* (387) insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ + 427, /* (388) insert_query ::= INSERT INTO full_table_name query_or_subquery */ + 346, /* (389) literal ::= NK_INTEGER */ + 346, /* (390) literal ::= NK_FLOAT */ + 346, /* (391) literal ::= NK_STRING */ + 346, /* (392) literal ::= NK_BOOL */ + 346, /* (393) literal ::= TIMESTAMP NK_STRING */ + 346, /* (394) literal ::= duration_literal */ + 346, /* (395) literal ::= NULL */ + 346, /* (396) literal ::= NK_QUESTION */ + 399, /* (397) duration_literal ::= NK_VARIABLE */ + 375, /* (398) signed ::= NK_INTEGER */ + 375, /* (399) signed ::= NK_PLUS NK_INTEGER */ + 375, /* (400) signed ::= NK_MINUS NK_INTEGER */ + 375, /* (401) signed ::= NK_FLOAT */ + 375, /* (402) signed ::= NK_PLUS NK_FLOAT */ + 375, /* (403) signed ::= NK_MINUS NK_FLOAT */ + 389, /* (404) signed_literal ::= signed */ + 389, /* (405) signed_literal ::= NK_STRING */ + 389, /* (406) signed_literal ::= NK_BOOL */ + 389, /* (407) signed_literal ::= TIMESTAMP NK_STRING */ + 389, /* (408) signed_literal ::= duration_literal */ + 389, /* (409) signed_literal ::= NULL */ + 389, /* (410) signed_literal ::= literal_func */ + 389, /* (411) signed_literal ::= NK_QUESTION */ + 441, /* (412) literal_list ::= signed_literal */ + 441, /* (413) literal_list ::= literal_list NK_COMMA signed_literal */ + 358, /* (414) db_name ::= NK_ID */ + 359, /* (415) table_name ::= NK_ID */ + 387, /* (416) column_name ::= NK_ID */ + 401, /* (417) function_name ::= NK_ID */ + 442, /* (418) table_alias ::= NK_ID */ + 412, /* (419) column_alias ::= NK_ID */ + 351, /* (420) user_name ::= NK_ID */ + 360, /* (421) topic_name ::= NK_ID */ + 432, /* (422) stream_name ::= NK_ID */ + 424, /* (423) cgroup_name ::= NK_ID */ + 415, /* (424) index_name ::= NK_ID */ + 443, /* (425) expr_or_subquery ::= expression */ + 438, /* (426) expression ::= literal */ + 438, /* (427) expression ::= pseudo_column */ + 438, /* (428) expression ::= column_reference */ + 438, /* (429) expression ::= function_expression */ + 438, /* (430) expression ::= case_when_expression */ + 438, /* (431) expression ::= NK_LP expression NK_RP */ + 438, /* (432) expression ::= NK_PLUS expr_or_subquery */ + 438, /* (433) expression ::= NK_MINUS expr_or_subquery */ + 438, /* (434) expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ + 438, /* (435) expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ + 438, /* (436) expression ::= expr_or_subquery NK_STAR expr_or_subquery */ + 438, /* (437) expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ + 438, /* (438) expression ::= expr_or_subquery NK_REM expr_or_subquery */ + 438, /* (439) expression ::= column_reference NK_ARROW NK_STRING */ + 438, /* (440) expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ + 438, /* (441) expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ + 392, /* (442) expression_list ::= expr_or_subquery */ + 392, /* (443) expression_list ::= expression_list NK_COMMA expr_or_subquery */ + 445, /* (444) column_reference ::= column_name */ + 445, /* (445) column_reference ::= table_name NK_DOT column_name */ + 444, /* (446) pseudo_column ::= ROWTS */ + 444, /* (447) pseudo_column ::= TBNAME */ + 444, /* (448) pseudo_column ::= table_name NK_DOT TBNAME */ + 444, /* (449) pseudo_column ::= QSTART */ + 444, /* (450) pseudo_column ::= QEND */ + 444, /* (451) pseudo_column ::= QDURATION */ + 444, /* (452) pseudo_column ::= WSTART */ + 444, /* (453) pseudo_column ::= WEND */ + 444, /* (454) pseudo_column ::= WDURATION */ + 444, /* (455) pseudo_column ::= IROWTS */ + 444, /* (456) pseudo_column ::= ISFILLED */ + 444, /* (457) pseudo_column ::= QTAGS */ + 446, /* (458) function_expression ::= function_name NK_LP expression_list NK_RP */ + 446, /* (459) function_expression ::= star_func NK_LP star_func_para_list NK_RP */ + 446, /* (460) function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ + 446, /* (461) function_expression ::= literal_func */ + 440, /* (462) literal_func ::= noarg_func NK_LP NK_RP */ + 440, /* (463) literal_func ::= NOW */ + 450, /* (464) noarg_func ::= NOW */ + 450, /* (465) noarg_func ::= TODAY */ + 450, /* (466) noarg_func ::= TIMEZONE */ + 450, /* (467) noarg_func ::= DATABASE */ + 450, /* (468) noarg_func ::= CLIENT_VERSION */ + 450, /* (469) noarg_func ::= SERVER_VERSION */ + 450, /* (470) noarg_func ::= SERVER_STATUS */ + 450, /* (471) noarg_func ::= CURRENT_USER */ + 450, /* (472) noarg_func ::= USER */ + 448, /* (473) star_func ::= COUNT */ + 448, /* (474) star_func ::= FIRST */ + 448, /* (475) star_func ::= LAST */ + 448, /* (476) star_func ::= LAST_ROW */ + 449, /* (477) star_func_para_list ::= NK_STAR */ + 449, /* (478) star_func_para_list ::= other_para_list */ + 451, /* (479) other_para_list ::= star_func_para */ + 451, /* (480) other_para_list ::= other_para_list NK_COMMA star_func_para */ + 452, /* (481) star_func_para ::= expr_or_subquery */ + 452, /* (482) star_func_para ::= table_name NK_DOT NK_STAR */ + 447, /* (483) case_when_expression ::= CASE when_then_list case_when_else_opt END */ + 447, /* (484) case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ + 453, /* (485) when_then_list ::= when_then_expr */ + 453, /* (486) when_then_list ::= when_then_list when_then_expr */ + 456, /* (487) when_then_expr ::= WHEN common_expression THEN common_expression */ + 454, /* (488) case_when_else_opt ::= */ + 454, /* (489) case_when_else_opt ::= ELSE common_expression */ + 457, /* (490) predicate ::= expr_or_subquery compare_op expr_or_subquery */ + 457, /* (491) predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ + 457, /* (492) predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ + 457, /* (493) predicate ::= expr_or_subquery IS NULL */ + 457, /* (494) predicate ::= expr_or_subquery IS NOT NULL */ + 457, /* (495) predicate ::= expr_or_subquery in_op in_predicate_value */ + 458, /* (496) compare_op ::= NK_LT */ + 458, /* (497) compare_op ::= NK_GT */ + 458, /* (498) compare_op ::= NK_LE */ + 458, /* (499) compare_op ::= NK_GE */ + 458, /* (500) compare_op ::= NK_NE */ + 458, /* (501) compare_op ::= NK_EQ */ + 458, /* (502) compare_op ::= LIKE */ + 458, /* (503) compare_op ::= NOT LIKE */ + 458, /* (504) compare_op ::= MATCH */ + 458, /* (505) compare_op ::= NMATCH */ + 458, /* (506) compare_op ::= CONTAINS */ + 459, /* (507) in_op ::= IN */ + 459, /* (508) in_op ::= NOT IN */ + 460, /* (509) in_predicate_value ::= NK_LP literal_list NK_RP */ + 461, /* (510) boolean_value_expression ::= boolean_primary */ + 461, /* (511) boolean_value_expression ::= NOT boolean_primary */ + 461, /* (512) boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ + 461, /* (513) boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ + 462, /* (514) boolean_primary ::= predicate */ + 462, /* (515) boolean_primary ::= NK_LP boolean_value_expression NK_RP */ + 455, /* (516) common_expression ::= expr_or_subquery */ + 455, /* (517) common_expression ::= boolean_value_expression */ + 463, /* (518) from_clause_opt ::= */ + 463, /* (519) from_clause_opt ::= FROM table_reference_list */ + 464, /* (520) table_reference_list ::= table_reference */ + 464, /* (521) table_reference_list ::= table_reference_list NK_COMMA table_reference */ + 465, /* (522) table_reference ::= table_primary */ + 465, /* (523) table_reference ::= joined_table */ + 466, /* (524) table_primary ::= table_name alias_opt */ + 466, /* (525) table_primary ::= db_name NK_DOT table_name alias_opt */ + 466, /* (526) table_primary ::= subquery alias_opt */ + 466, /* (527) table_primary ::= parenthesized_joined_table */ + 468, /* (528) alias_opt ::= */ + 468, /* (529) alias_opt ::= table_alias */ + 468, /* (530) alias_opt ::= AS table_alias */ + 470, /* (531) parenthesized_joined_table ::= NK_LP joined_table NK_RP */ + 470, /* (532) parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ + 467, /* (533) joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ + 471, /* (534) join_type ::= */ + 471, /* (535) join_type ::= INNER */ + 472, /* (536) query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt */ + 473, /* (537) hint_list ::= */ + 473, /* (538) hint_list ::= NK_HINT */ + 475, /* (539) tag_mode_opt ::= */ + 475, /* (540) tag_mode_opt ::= TAGS */ + 474, /* (541) set_quantifier_opt ::= */ + 474, /* (542) set_quantifier_opt ::= DISTINCT */ + 474, /* (543) set_quantifier_opt ::= ALL */ + 476, /* (544) select_list ::= select_item */ + 476, /* (545) select_list ::= select_list NK_COMMA select_item */ + 484, /* (546) select_item ::= NK_STAR */ + 484, /* (547) select_item ::= common_expression */ + 484, /* (548) select_item ::= common_expression column_alias */ + 484, /* (549) select_item ::= common_expression AS column_alias */ + 484, /* (550) select_item ::= table_name NK_DOT NK_STAR */ + 423, /* (551) where_clause_opt ::= */ + 423, /* (552) where_clause_opt ::= WHERE search_condition */ + 477, /* (553) partition_by_clause_opt ::= */ + 477, /* (554) partition_by_clause_opt ::= PARTITION BY partition_list */ + 485, /* (555) partition_list ::= partition_item */ + 485, /* (556) partition_list ::= partition_list NK_COMMA partition_item */ + 486, /* (557) partition_item ::= expr_or_subquery */ + 486, /* (558) partition_item ::= expr_or_subquery column_alias */ + 486, /* (559) partition_item ::= expr_or_subquery AS column_alias */ + 481, /* (560) twindow_clause_opt ::= */ + 481, /* (561) twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ + 481, /* (562) twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ + 481, /* (563) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ + 481, /* (564) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ + 481, /* (565) twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ + 417, /* (566) sliding_opt ::= */ + 417, /* (567) sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ + 480, /* (568) fill_opt ::= */ + 480, /* (569) fill_opt ::= FILL NK_LP fill_mode NK_RP */ + 480, /* (570) fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP */ + 480, /* (571) fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP */ + 487, /* (572) fill_mode ::= NONE */ + 487, /* (573) fill_mode ::= PREV */ + 487, /* (574) fill_mode ::= NULL */ + 487, /* (575) fill_mode ::= NULL_F */ + 487, /* (576) fill_mode ::= LINEAR */ + 487, /* (577) fill_mode ::= NEXT */ + 482, /* (578) group_by_clause_opt ::= */ + 482, /* (579) group_by_clause_opt ::= GROUP BY group_by_list */ + 488, /* (580) group_by_list ::= expr_or_subquery */ + 488, /* (581) group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ + 483, /* (582) having_clause_opt ::= */ + 483, /* (583) having_clause_opt ::= HAVING search_condition */ + 478, /* (584) range_opt ::= */ + 478, /* (585) range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ + 478, /* (586) range_opt ::= RANGE NK_LP expr_or_subquery NK_RP */ + 479, /* (587) every_opt ::= */ + 479, /* (588) every_opt ::= EVERY NK_LP duration_literal NK_RP */ + 489, /* (589) query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ + 490, /* (590) query_simple ::= query_specification */ + 490, /* (591) query_simple ::= union_query_expression */ + 494, /* (592) union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ + 494, /* (593) union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ + 495, /* (594) query_simple_or_subquery ::= query_simple */ + 495, /* (595) query_simple_or_subquery ::= subquery */ + 422, /* (596) query_or_subquery ::= query_expression */ + 422, /* (597) query_or_subquery ::= subquery */ + 491, /* (598) order_by_clause_opt ::= */ + 491, /* (599) order_by_clause_opt ::= ORDER BY sort_specification_list */ + 492, /* (600) slimit_clause_opt ::= */ + 492, /* (601) slimit_clause_opt ::= SLIMIT NK_INTEGER */ + 492, /* (602) slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ + 492, /* (603) slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ + 493, /* (604) limit_clause_opt ::= */ + 493, /* (605) limit_clause_opt ::= LIMIT NK_INTEGER */ + 493, /* (606) limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ + 493, /* (607) limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ + 469, /* (608) subquery ::= NK_LP query_expression NK_RP */ + 469, /* (609) subquery ::= NK_LP subquery NK_RP */ + 361, /* (610) search_condition ::= common_expression */ + 496, /* (611) sort_specification_list ::= sort_specification */ + 496, /* (612) sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ + 497, /* (613) sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ + 498, /* (614) ordering_specification_opt ::= */ + 498, /* (615) ordering_specification_opt ::= ASC */ + 498, /* (616) ordering_specification_opt ::= DESC */ + 499, /* (617) null_ordering_opt ::= */ + 499, /* (618) null_ordering_opt ::= NULLS FIRST */ + 499, /* (619) null_ordering_opt ::= NULLS LAST */ }; /* For rule J, yyRuleInfoNRhs[J] contains the negative of the number @@ -4591,344 +4585,343 @@ static const signed char yyRuleInfoNRhs[] = { -3, /* (280) cmd ::= SHOW CLUSTER ALIVE */ 0, /* (281) table_kind_db_name_cond_opt ::= */ -1, /* (282) table_kind_db_name_cond_opt ::= table_kind */ - -1, /* (283) table_kind_db_name_cond_opt ::= db_name_cond */ - -2, /* (284) table_kind_db_name_cond_opt ::= table_kind db_name_cond */ + -2, /* (283) table_kind_db_name_cond_opt ::= db_name NK_DOT */ + -3, /* (284) table_kind_db_name_cond_opt ::= table_kind db_name NK_DOT */ -1, /* (285) table_kind ::= NORMAL */ -1, /* (286) table_kind ::= CHILD */ - -2, /* (287) db_name_cond ::= db_name NK_DOT */ - 0, /* (288) db_name_cond_opt ::= */ - -2, /* (289) db_name_cond_opt ::= db_name NK_DOT */ - 0, /* (290) like_pattern_opt ::= */ - -2, /* (291) like_pattern_opt ::= LIKE NK_STRING */ - -1, /* (292) table_name_cond ::= table_name */ - 0, /* (293) from_db_opt ::= */ - -2, /* (294) from_db_opt ::= FROM db_name */ - 0, /* (295) tag_list_opt ::= */ - -1, /* (296) tag_list_opt ::= tag_item */ - -3, /* (297) tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ - -1, /* (298) tag_item ::= TBNAME */ - -1, /* (299) tag_item ::= QTAGS */ - -1, /* (300) tag_item ::= column_name */ - -2, /* (301) tag_item ::= column_name column_alias */ - -3, /* (302) tag_item ::= column_name AS column_alias */ - 0, /* (303) db_kind_opt ::= */ - -1, /* (304) db_kind_opt ::= USER */ - -1, /* (305) db_kind_opt ::= SYSTEM */ - -8, /* (306) cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options */ - -9, /* (307) cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP */ - -4, /* (308) cmd ::= DROP INDEX exists_opt full_index_name */ - -1, /* (309) full_index_name ::= index_name */ - -3, /* (310) full_index_name ::= db_name NK_DOT index_name */ - -10, /* (311) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ - -12, /* (312) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt */ - -1, /* (313) func_list ::= func */ - -3, /* (314) func_list ::= func_list NK_COMMA func */ - -4, /* (315) func ::= sma_func_name NK_LP expression_list NK_RP */ - -1, /* (316) sma_func_name ::= function_name */ - -1, /* (317) sma_func_name ::= COUNT */ - -1, /* (318) sma_func_name ::= FIRST */ - -1, /* (319) sma_func_name ::= LAST */ - -1, /* (320) sma_func_name ::= LAST_ROW */ - 0, /* (321) sma_stream_opt ::= */ - -3, /* (322) sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ - -3, /* (323) sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ - -3, /* (324) sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ - -1, /* (325) with_meta ::= AS */ - -3, /* (326) with_meta ::= WITH META AS */ - -3, /* (327) with_meta ::= ONLY META AS */ - -6, /* (328) cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ - -7, /* (329) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name */ - -8, /* (330) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt */ - -4, /* (331) cmd ::= DROP TOPIC exists_opt topic_name */ - -7, /* (332) cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ - -2, /* (333) cmd ::= DESC full_table_name */ - -2, /* (334) cmd ::= DESCRIBE full_table_name */ - -3, /* (335) cmd ::= RESET QUERY CACHE */ - -4, /* (336) cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ - -4, /* (337) cmd ::= EXPLAIN analyze_opt explain_options insert_query */ - 0, /* (338) analyze_opt ::= */ - -1, /* (339) analyze_opt ::= ANALYZE */ - 0, /* (340) explain_options ::= */ - -3, /* (341) explain_options ::= explain_options VERBOSE NK_BOOL */ - -3, /* (342) explain_options ::= explain_options RATIO NK_FLOAT */ - -12, /* (343) cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt */ - -4, /* (344) cmd ::= DROP FUNCTION exists_opt function_name */ - 0, /* (345) agg_func_opt ::= */ - -1, /* (346) agg_func_opt ::= AGGREGATE */ - 0, /* (347) bufsize_opt ::= */ - -2, /* (348) bufsize_opt ::= BUFSIZE NK_INTEGER */ - 0, /* (349) language_opt ::= */ - -2, /* (350) language_opt ::= LANGUAGE NK_STRING */ - 0, /* (351) or_replace_opt ::= */ - -2, /* (352) or_replace_opt ::= OR REPLACE */ - -12, /* (353) cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery */ - -4, /* (354) cmd ::= DROP STREAM exists_opt stream_name */ - -4, /* (355) cmd ::= PAUSE STREAM exists_opt stream_name */ - -5, /* (356) cmd ::= RESUME STREAM exists_opt ignore_opt stream_name */ - 0, /* (357) col_list_opt ::= */ - -3, /* (358) col_list_opt ::= NK_LP col_name_list NK_RP */ - 0, /* (359) tag_def_or_ref_opt ::= */ - -1, /* (360) tag_def_or_ref_opt ::= tags_def */ - -4, /* (361) tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP */ - 0, /* (362) stream_options ::= */ - -3, /* (363) stream_options ::= stream_options TRIGGER AT_ONCE */ - -3, /* (364) stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ - -4, /* (365) stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ - -3, /* (366) stream_options ::= stream_options WATERMARK duration_literal */ - -4, /* (367) stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ - -3, /* (368) stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ - -3, /* (369) stream_options ::= stream_options DELETE_MARK duration_literal */ - -4, /* (370) stream_options ::= stream_options IGNORE UPDATE NK_INTEGER */ - 0, /* (371) subtable_opt ::= */ - -4, /* (372) subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ - 0, /* (373) ignore_opt ::= */ - -2, /* (374) ignore_opt ::= IGNORE UNTREATED */ - -3, /* (375) cmd ::= KILL CONNECTION NK_INTEGER */ - -3, /* (376) cmd ::= KILL QUERY NK_STRING */ - -3, /* (377) cmd ::= KILL TRANSACTION NK_INTEGER */ - -2, /* (378) cmd ::= BALANCE VGROUP */ - -3, /* (379) cmd ::= BALANCE VGROUP LEADER */ - -4, /* (380) cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ - -4, /* (381) cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ - -3, /* (382) cmd ::= SPLIT VGROUP NK_INTEGER */ - -2, /* (383) dnode_list ::= DNODE NK_INTEGER */ - -3, /* (384) dnode_list ::= dnode_list DNODE NK_INTEGER */ - -4, /* (385) cmd ::= DELETE FROM full_table_name where_clause_opt */ - -1, /* (386) cmd ::= query_or_subquery */ - -1, /* (387) cmd ::= insert_query */ - -7, /* (388) insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ - -4, /* (389) insert_query ::= INSERT INTO full_table_name query_or_subquery */ - -1, /* (390) literal ::= NK_INTEGER */ - -1, /* (391) literal ::= NK_FLOAT */ - -1, /* (392) literal ::= NK_STRING */ - -1, /* (393) literal ::= NK_BOOL */ - -2, /* (394) literal ::= TIMESTAMP NK_STRING */ - -1, /* (395) literal ::= duration_literal */ - -1, /* (396) literal ::= NULL */ - -1, /* (397) literal ::= NK_QUESTION */ - -1, /* (398) duration_literal ::= NK_VARIABLE */ - -1, /* (399) signed ::= NK_INTEGER */ - -2, /* (400) signed ::= NK_PLUS NK_INTEGER */ - -2, /* (401) signed ::= NK_MINUS NK_INTEGER */ - -1, /* (402) signed ::= NK_FLOAT */ - -2, /* (403) signed ::= NK_PLUS NK_FLOAT */ - -2, /* (404) signed ::= NK_MINUS NK_FLOAT */ - -1, /* (405) signed_literal ::= signed */ - -1, /* (406) signed_literal ::= NK_STRING */ - -1, /* (407) signed_literal ::= NK_BOOL */ - -2, /* (408) signed_literal ::= TIMESTAMP NK_STRING */ - -1, /* (409) signed_literal ::= duration_literal */ - -1, /* (410) signed_literal ::= NULL */ - -1, /* (411) signed_literal ::= literal_func */ - -1, /* (412) signed_literal ::= NK_QUESTION */ - -1, /* (413) literal_list ::= signed_literal */ - -3, /* (414) literal_list ::= literal_list NK_COMMA signed_literal */ - -1, /* (415) db_name ::= NK_ID */ - -1, /* (416) table_name ::= NK_ID */ - -1, /* (417) column_name ::= NK_ID */ - -1, /* (418) function_name ::= NK_ID */ - -1, /* (419) table_alias ::= NK_ID */ - -1, /* (420) column_alias ::= NK_ID */ - -1, /* (421) user_name ::= NK_ID */ - -1, /* (422) topic_name ::= NK_ID */ - -1, /* (423) stream_name ::= NK_ID */ - -1, /* (424) cgroup_name ::= NK_ID */ - -1, /* (425) index_name ::= NK_ID */ - -1, /* (426) expr_or_subquery ::= expression */ - -1, /* (427) expression ::= literal */ - -1, /* (428) expression ::= pseudo_column */ - -1, /* (429) expression ::= column_reference */ - -1, /* (430) expression ::= function_expression */ - -1, /* (431) expression ::= case_when_expression */ - -3, /* (432) expression ::= NK_LP expression NK_RP */ - -2, /* (433) expression ::= NK_PLUS expr_or_subquery */ - -2, /* (434) expression ::= NK_MINUS expr_or_subquery */ - -3, /* (435) expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ - -3, /* (436) expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ - -3, /* (437) expression ::= expr_or_subquery NK_STAR expr_or_subquery */ - -3, /* (438) expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ - -3, /* (439) expression ::= expr_or_subquery NK_REM expr_or_subquery */ - -3, /* (440) expression ::= column_reference NK_ARROW NK_STRING */ - -3, /* (441) expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ - -3, /* (442) expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ - -1, /* (443) expression_list ::= expr_or_subquery */ - -3, /* (444) expression_list ::= expression_list NK_COMMA expr_or_subquery */ - -1, /* (445) column_reference ::= column_name */ - -3, /* (446) column_reference ::= table_name NK_DOT column_name */ - -1, /* (447) pseudo_column ::= ROWTS */ - -1, /* (448) pseudo_column ::= TBNAME */ - -3, /* (449) pseudo_column ::= table_name NK_DOT TBNAME */ - -1, /* (450) pseudo_column ::= QSTART */ - -1, /* (451) pseudo_column ::= QEND */ - -1, /* (452) pseudo_column ::= QDURATION */ - -1, /* (453) pseudo_column ::= WSTART */ - -1, /* (454) pseudo_column ::= WEND */ - -1, /* (455) pseudo_column ::= WDURATION */ - -1, /* (456) pseudo_column ::= IROWTS */ - -1, /* (457) pseudo_column ::= ISFILLED */ - -1, /* (458) pseudo_column ::= QTAGS */ - -4, /* (459) function_expression ::= function_name NK_LP expression_list NK_RP */ - -4, /* (460) function_expression ::= star_func NK_LP star_func_para_list NK_RP */ - -6, /* (461) function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ - -1, /* (462) function_expression ::= literal_func */ - -3, /* (463) literal_func ::= noarg_func NK_LP NK_RP */ - -1, /* (464) literal_func ::= NOW */ - -1, /* (465) noarg_func ::= NOW */ - -1, /* (466) noarg_func ::= TODAY */ - -1, /* (467) noarg_func ::= TIMEZONE */ - -1, /* (468) noarg_func ::= DATABASE */ - -1, /* (469) noarg_func ::= CLIENT_VERSION */ - -1, /* (470) noarg_func ::= SERVER_VERSION */ - -1, /* (471) noarg_func ::= SERVER_STATUS */ - -1, /* (472) noarg_func ::= CURRENT_USER */ - -1, /* (473) noarg_func ::= USER */ - -1, /* (474) star_func ::= COUNT */ - -1, /* (475) star_func ::= FIRST */ - -1, /* (476) star_func ::= LAST */ - -1, /* (477) star_func ::= LAST_ROW */ - -1, /* (478) star_func_para_list ::= NK_STAR */ - -1, /* (479) star_func_para_list ::= other_para_list */ - -1, /* (480) other_para_list ::= star_func_para */ - -3, /* (481) other_para_list ::= other_para_list NK_COMMA star_func_para */ - -1, /* (482) star_func_para ::= expr_or_subquery */ - -3, /* (483) star_func_para ::= table_name NK_DOT NK_STAR */ - -4, /* (484) case_when_expression ::= CASE when_then_list case_when_else_opt END */ - -5, /* (485) case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ - -1, /* (486) when_then_list ::= when_then_expr */ - -2, /* (487) when_then_list ::= when_then_list when_then_expr */ - -4, /* (488) when_then_expr ::= WHEN common_expression THEN common_expression */ - 0, /* (489) case_when_else_opt ::= */ - -2, /* (490) case_when_else_opt ::= ELSE common_expression */ - -3, /* (491) predicate ::= expr_or_subquery compare_op expr_or_subquery */ - -5, /* (492) predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ - -6, /* (493) predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ - -3, /* (494) predicate ::= expr_or_subquery IS NULL */ - -4, /* (495) predicate ::= expr_or_subquery IS NOT NULL */ - -3, /* (496) predicate ::= expr_or_subquery in_op in_predicate_value */ - -1, /* (497) compare_op ::= NK_LT */ - -1, /* (498) compare_op ::= NK_GT */ - -1, /* (499) compare_op ::= NK_LE */ - -1, /* (500) compare_op ::= NK_GE */ - -1, /* (501) compare_op ::= NK_NE */ - -1, /* (502) compare_op ::= NK_EQ */ - -1, /* (503) compare_op ::= LIKE */ - -2, /* (504) compare_op ::= NOT LIKE */ - -1, /* (505) compare_op ::= MATCH */ - -1, /* (506) compare_op ::= NMATCH */ - -1, /* (507) compare_op ::= CONTAINS */ - -1, /* (508) in_op ::= IN */ - -2, /* (509) in_op ::= NOT IN */ - -3, /* (510) in_predicate_value ::= NK_LP literal_list NK_RP */ - -1, /* (511) boolean_value_expression ::= boolean_primary */ - -2, /* (512) boolean_value_expression ::= NOT boolean_primary */ - -3, /* (513) boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ - -3, /* (514) boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ - -1, /* (515) boolean_primary ::= predicate */ - -3, /* (516) boolean_primary ::= NK_LP boolean_value_expression NK_RP */ - -1, /* (517) common_expression ::= expr_or_subquery */ - -1, /* (518) common_expression ::= boolean_value_expression */ - 0, /* (519) from_clause_opt ::= */ - -2, /* (520) from_clause_opt ::= FROM table_reference_list */ - -1, /* (521) table_reference_list ::= table_reference */ - -3, /* (522) table_reference_list ::= table_reference_list NK_COMMA table_reference */ - -1, /* (523) table_reference ::= table_primary */ - -1, /* (524) table_reference ::= joined_table */ - -2, /* (525) table_primary ::= table_name alias_opt */ - -4, /* (526) table_primary ::= db_name NK_DOT table_name alias_opt */ - -2, /* (527) table_primary ::= subquery alias_opt */ - -1, /* (528) table_primary ::= parenthesized_joined_table */ - 0, /* (529) alias_opt ::= */ - -1, /* (530) alias_opt ::= table_alias */ - -2, /* (531) alias_opt ::= AS table_alias */ - -3, /* (532) parenthesized_joined_table ::= NK_LP joined_table NK_RP */ - -3, /* (533) parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ - -6, /* (534) joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ - 0, /* (535) join_type ::= */ - -1, /* (536) join_type ::= INNER */ - -14, /* (537) query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt */ - 0, /* (538) hint_list ::= */ - -1, /* (539) hint_list ::= NK_HINT */ - 0, /* (540) tag_mode_opt ::= */ - -1, /* (541) tag_mode_opt ::= TAGS */ - 0, /* (542) set_quantifier_opt ::= */ - -1, /* (543) set_quantifier_opt ::= DISTINCT */ - -1, /* (544) set_quantifier_opt ::= ALL */ - -1, /* (545) select_list ::= select_item */ - -3, /* (546) select_list ::= select_list NK_COMMA select_item */ - -1, /* (547) select_item ::= NK_STAR */ - -1, /* (548) select_item ::= common_expression */ - -2, /* (549) select_item ::= common_expression column_alias */ - -3, /* (550) select_item ::= common_expression AS column_alias */ - -3, /* (551) select_item ::= table_name NK_DOT NK_STAR */ - 0, /* (552) where_clause_opt ::= */ - -2, /* (553) where_clause_opt ::= WHERE search_condition */ - 0, /* (554) partition_by_clause_opt ::= */ - -3, /* (555) partition_by_clause_opt ::= PARTITION BY partition_list */ - -1, /* (556) partition_list ::= partition_item */ - -3, /* (557) partition_list ::= partition_list NK_COMMA partition_item */ - -1, /* (558) partition_item ::= expr_or_subquery */ - -2, /* (559) partition_item ::= expr_or_subquery column_alias */ - -3, /* (560) partition_item ::= expr_or_subquery AS column_alias */ - 0, /* (561) twindow_clause_opt ::= */ - -6, /* (562) twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ - -4, /* (563) twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ - -6, /* (564) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ - -8, /* (565) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ - -7, /* (566) twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ - 0, /* (567) sliding_opt ::= */ - -4, /* (568) sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ - 0, /* (569) fill_opt ::= */ - -4, /* (570) fill_opt ::= FILL NK_LP fill_mode NK_RP */ - -6, /* (571) fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP */ - -6, /* (572) fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP */ - -1, /* (573) fill_mode ::= NONE */ - -1, /* (574) fill_mode ::= PREV */ - -1, /* (575) fill_mode ::= NULL */ - -1, /* (576) fill_mode ::= NULL_F */ - -1, /* (577) fill_mode ::= LINEAR */ - -1, /* (578) fill_mode ::= NEXT */ - 0, /* (579) group_by_clause_opt ::= */ - -3, /* (580) group_by_clause_opt ::= GROUP BY group_by_list */ - -1, /* (581) group_by_list ::= expr_or_subquery */ - -3, /* (582) group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ - 0, /* (583) having_clause_opt ::= */ - -2, /* (584) having_clause_opt ::= HAVING search_condition */ - 0, /* (585) range_opt ::= */ - -6, /* (586) range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ - -4, /* (587) range_opt ::= RANGE NK_LP expr_or_subquery NK_RP */ - 0, /* (588) every_opt ::= */ - -4, /* (589) every_opt ::= EVERY NK_LP duration_literal NK_RP */ - -4, /* (590) query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ - -1, /* (591) query_simple ::= query_specification */ - -1, /* (592) query_simple ::= union_query_expression */ - -4, /* (593) union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ - -3, /* (594) union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ - -1, /* (595) query_simple_or_subquery ::= query_simple */ - -1, /* (596) query_simple_or_subquery ::= subquery */ - -1, /* (597) query_or_subquery ::= query_expression */ - -1, /* (598) query_or_subquery ::= subquery */ - 0, /* (599) order_by_clause_opt ::= */ - -3, /* (600) order_by_clause_opt ::= ORDER BY sort_specification_list */ - 0, /* (601) slimit_clause_opt ::= */ - -2, /* (602) slimit_clause_opt ::= SLIMIT NK_INTEGER */ - -4, /* (603) slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ - -4, /* (604) slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ - 0, /* (605) limit_clause_opt ::= */ - -2, /* (606) limit_clause_opt ::= LIMIT NK_INTEGER */ - -4, /* (607) limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ - -4, /* (608) limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ - -3, /* (609) subquery ::= NK_LP query_expression NK_RP */ - -3, /* (610) subquery ::= NK_LP subquery NK_RP */ - -1, /* (611) search_condition ::= common_expression */ - -1, /* (612) sort_specification_list ::= sort_specification */ - -3, /* (613) sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ - -3, /* (614) sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ - 0, /* (615) ordering_specification_opt ::= */ - -1, /* (616) ordering_specification_opt ::= ASC */ - -1, /* (617) ordering_specification_opt ::= DESC */ - 0, /* (618) null_ordering_opt ::= */ - -2, /* (619) null_ordering_opt ::= NULLS FIRST */ - -2, /* (620) null_ordering_opt ::= NULLS LAST */ + 0, /* (287) db_name_cond_opt ::= */ + -2, /* (288) db_name_cond_opt ::= db_name NK_DOT */ + 0, /* (289) like_pattern_opt ::= */ + -2, /* (290) like_pattern_opt ::= LIKE NK_STRING */ + -1, /* (291) table_name_cond ::= table_name */ + 0, /* (292) from_db_opt ::= */ + -2, /* (293) from_db_opt ::= FROM db_name */ + 0, /* (294) tag_list_opt ::= */ + -1, /* (295) tag_list_opt ::= tag_item */ + -3, /* (296) tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ + -1, /* (297) tag_item ::= TBNAME */ + -1, /* (298) tag_item ::= QTAGS */ + -1, /* (299) tag_item ::= column_name */ + -2, /* (300) tag_item ::= column_name column_alias */ + -3, /* (301) tag_item ::= column_name AS column_alias */ + 0, /* (302) db_kind_opt ::= */ + -1, /* (303) db_kind_opt ::= USER */ + -1, /* (304) db_kind_opt ::= SYSTEM */ + -8, /* (305) cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options */ + -9, /* (306) cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP */ + -4, /* (307) cmd ::= DROP INDEX exists_opt full_index_name */ + -1, /* (308) full_index_name ::= index_name */ + -3, /* (309) full_index_name ::= db_name NK_DOT index_name */ + -10, /* (310) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ + -12, /* (311) index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt */ + -1, /* (312) func_list ::= func */ + -3, /* (313) func_list ::= func_list NK_COMMA func */ + -4, /* (314) func ::= sma_func_name NK_LP expression_list NK_RP */ + -1, /* (315) sma_func_name ::= function_name */ + -1, /* (316) sma_func_name ::= COUNT */ + -1, /* (317) sma_func_name ::= FIRST */ + -1, /* (318) sma_func_name ::= LAST */ + -1, /* (319) sma_func_name ::= LAST_ROW */ + 0, /* (320) sma_stream_opt ::= */ + -3, /* (321) sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ + -3, /* (322) sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ + -3, /* (323) sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ + -1, /* (324) with_meta ::= AS */ + -3, /* (325) with_meta ::= WITH META AS */ + -3, /* (326) with_meta ::= ONLY META AS */ + -6, /* (327) cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ + -7, /* (328) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name */ + -8, /* (329) cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt */ + -4, /* (330) cmd ::= DROP TOPIC exists_opt topic_name */ + -7, /* (331) cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ + -2, /* (332) cmd ::= DESC full_table_name */ + -2, /* (333) cmd ::= DESCRIBE full_table_name */ + -3, /* (334) cmd ::= RESET QUERY CACHE */ + -4, /* (335) cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ + -4, /* (336) cmd ::= EXPLAIN analyze_opt explain_options insert_query */ + 0, /* (337) analyze_opt ::= */ + -1, /* (338) analyze_opt ::= ANALYZE */ + 0, /* (339) explain_options ::= */ + -3, /* (340) explain_options ::= explain_options VERBOSE NK_BOOL */ + -3, /* (341) explain_options ::= explain_options RATIO NK_FLOAT */ + -12, /* (342) cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt */ + -4, /* (343) cmd ::= DROP FUNCTION exists_opt function_name */ + 0, /* (344) agg_func_opt ::= */ + -1, /* (345) agg_func_opt ::= AGGREGATE */ + 0, /* (346) bufsize_opt ::= */ + -2, /* (347) bufsize_opt ::= BUFSIZE NK_INTEGER */ + 0, /* (348) language_opt ::= */ + -2, /* (349) language_opt ::= LANGUAGE NK_STRING */ + 0, /* (350) or_replace_opt ::= */ + -2, /* (351) or_replace_opt ::= OR REPLACE */ + -12, /* (352) cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery */ + -4, /* (353) cmd ::= DROP STREAM exists_opt stream_name */ + -4, /* (354) cmd ::= PAUSE STREAM exists_opt stream_name */ + -5, /* (355) cmd ::= RESUME STREAM exists_opt ignore_opt stream_name */ + 0, /* (356) col_list_opt ::= */ + -3, /* (357) col_list_opt ::= NK_LP col_name_list NK_RP */ + 0, /* (358) tag_def_or_ref_opt ::= */ + -1, /* (359) tag_def_or_ref_opt ::= tags_def */ + -4, /* (360) tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP */ + 0, /* (361) stream_options ::= */ + -3, /* (362) stream_options ::= stream_options TRIGGER AT_ONCE */ + -3, /* (363) stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ + -4, /* (364) stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ + -3, /* (365) stream_options ::= stream_options WATERMARK duration_literal */ + -4, /* (366) stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ + -3, /* (367) stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ + -3, /* (368) stream_options ::= stream_options DELETE_MARK duration_literal */ + -4, /* (369) stream_options ::= stream_options IGNORE UPDATE NK_INTEGER */ + 0, /* (370) subtable_opt ::= */ + -4, /* (371) subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ + 0, /* (372) ignore_opt ::= */ + -2, /* (373) ignore_opt ::= IGNORE UNTREATED */ + -3, /* (374) cmd ::= KILL CONNECTION NK_INTEGER */ + -3, /* (375) cmd ::= KILL QUERY NK_STRING */ + -3, /* (376) cmd ::= KILL TRANSACTION NK_INTEGER */ + -2, /* (377) cmd ::= BALANCE VGROUP */ + -3, /* (378) cmd ::= BALANCE VGROUP LEADER */ + -4, /* (379) cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ + -4, /* (380) cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ + -3, /* (381) cmd ::= SPLIT VGROUP NK_INTEGER */ + -2, /* (382) dnode_list ::= DNODE NK_INTEGER */ + -3, /* (383) dnode_list ::= dnode_list DNODE NK_INTEGER */ + -4, /* (384) cmd ::= DELETE FROM full_table_name where_clause_opt */ + -1, /* (385) cmd ::= query_or_subquery */ + -1, /* (386) cmd ::= insert_query */ + -7, /* (387) insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ + -4, /* (388) insert_query ::= INSERT INTO full_table_name query_or_subquery */ + -1, /* (389) literal ::= NK_INTEGER */ + -1, /* (390) literal ::= NK_FLOAT */ + -1, /* (391) literal ::= NK_STRING */ + -1, /* (392) literal ::= NK_BOOL */ + -2, /* (393) literal ::= TIMESTAMP NK_STRING */ + -1, /* (394) literal ::= duration_literal */ + -1, /* (395) literal ::= NULL */ + -1, /* (396) literal ::= NK_QUESTION */ + -1, /* (397) duration_literal ::= NK_VARIABLE */ + -1, /* (398) signed ::= NK_INTEGER */ + -2, /* (399) signed ::= NK_PLUS NK_INTEGER */ + -2, /* (400) signed ::= NK_MINUS NK_INTEGER */ + -1, /* (401) signed ::= NK_FLOAT */ + -2, /* (402) signed ::= NK_PLUS NK_FLOAT */ + -2, /* (403) signed ::= NK_MINUS NK_FLOAT */ + -1, /* (404) signed_literal ::= signed */ + -1, /* (405) signed_literal ::= NK_STRING */ + -1, /* (406) signed_literal ::= NK_BOOL */ + -2, /* (407) signed_literal ::= TIMESTAMP NK_STRING */ + -1, /* (408) signed_literal ::= duration_literal */ + -1, /* (409) signed_literal ::= NULL */ + -1, /* (410) signed_literal ::= literal_func */ + -1, /* (411) signed_literal ::= NK_QUESTION */ + -1, /* (412) literal_list ::= signed_literal */ + -3, /* (413) literal_list ::= literal_list NK_COMMA signed_literal */ + -1, /* (414) db_name ::= NK_ID */ + -1, /* (415) table_name ::= NK_ID */ + -1, /* (416) column_name ::= NK_ID */ + -1, /* (417) function_name ::= NK_ID */ + -1, /* (418) table_alias ::= NK_ID */ + -1, /* (419) column_alias ::= NK_ID */ + -1, /* (420) user_name ::= NK_ID */ + -1, /* (421) topic_name ::= NK_ID */ + -1, /* (422) stream_name ::= NK_ID */ + -1, /* (423) cgroup_name ::= NK_ID */ + -1, /* (424) index_name ::= NK_ID */ + -1, /* (425) expr_or_subquery ::= expression */ + -1, /* (426) expression ::= literal */ + -1, /* (427) expression ::= pseudo_column */ + -1, /* (428) expression ::= column_reference */ + -1, /* (429) expression ::= function_expression */ + -1, /* (430) expression ::= case_when_expression */ + -3, /* (431) expression ::= NK_LP expression NK_RP */ + -2, /* (432) expression ::= NK_PLUS expr_or_subquery */ + -2, /* (433) expression ::= NK_MINUS expr_or_subquery */ + -3, /* (434) expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ + -3, /* (435) expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ + -3, /* (436) expression ::= expr_or_subquery NK_STAR expr_or_subquery */ + -3, /* (437) expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ + -3, /* (438) expression ::= expr_or_subquery NK_REM expr_or_subquery */ + -3, /* (439) expression ::= column_reference NK_ARROW NK_STRING */ + -3, /* (440) expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ + -3, /* (441) expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ + -1, /* (442) expression_list ::= expr_or_subquery */ + -3, /* (443) expression_list ::= expression_list NK_COMMA expr_or_subquery */ + -1, /* (444) column_reference ::= column_name */ + -3, /* (445) column_reference ::= table_name NK_DOT column_name */ + -1, /* (446) pseudo_column ::= ROWTS */ + -1, /* (447) pseudo_column ::= TBNAME */ + -3, /* (448) pseudo_column ::= table_name NK_DOT TBNAME */ + -1, /* (449) pseudo_column ::= QSTART */ + -1, /* (450) pseudo_column ::= QEND */ + -1, /* (451) pseudo_column ::= QDURATION */ + -1, /* (452) pseudo_column ::= WSTART */ + -1, /* (453) pseudo_column ::= WEND */ + -1, /* (454) pseudo_column ::= WDURATION */ + -1, /* (455) pseudo_column ::= IROWTS */ + -1, /* (456) pseudo_column ::= ISFILLED */ + -1, /* (457) pseudo_column ::= QTAGS */ + -4, /* (458) function_expression ::= function_name NK_LP expression_list NK_RP */ + -4, /* (459) function_expression ::= star_func NK_LP star_func_para_list NK_RP */ + -6, /* (460) function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ + -1, /* (461) function_expression ::= literal_func */ + -3, /* (462) literal_func ::= noarg_func NK_LP NK_RP */ + -1, /* (463) literal_func ::= NOW */ + -1, /* (464) noarg_func ::= NOW */ + -1, /* (465) noarg_func ::= TODAY */ + -1, /* (466) noarg_func ::= TIMEZONE */ + -1, /* (467) noarg_func ::= DATABASE */ + -1, /* (468) noarg_func ::= CLIENT_VERSION */ + -1, /* (469) noarg_func ::= SERVER_VERSION */ + -1, /* (470) noarg_func ::= SERVER_STATUS */ + -1, /* (471) noarg_func ::= CURRENT_USER */ + -1, /* (472) noarg_func ::= USER */ + -1, /* (473) star_func ::= COUNT */ + -1, /* (474) star_func ::= FIRST */ + -1, /* (475) star_func ::= LAST */ + -1, /* (476) star_func ::= LAST_ROW */ + -1, /* (477) star_func_para_list ::= NK_STAR */ + -1, /* (478) star_func_para_list ::= other_para_list */ + -1, /* (479) other_para_list ::= star_func_para */ + -3, /* (480) other_para_list ::= other_para_list NK_COMMA star_func_para */ + -1, /* (481) star_func_para ::= expr_or_subquery */ + -3, /* (482) star_func_para ::= table_name NK_DOT NK_STAR */ + -4, /* (483) case_when_expression ::= CASE when_then_list case_when_else_opt END */ + -5, /* (484) case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ + -1, /* (485) when_then_list ::= when_then_expr */ + -2, /* (486) when_then_list ::= when_then_list when_then_expr */ + -4, /* (487) when_then_expr ::= WHEN common_expression THEN common_expression */ + 0, /* (488) case_when_else_opt ::= */ + -2, /* (489) case_when_else_opt ::= ELSE common_expression */ + -3, /* (490) predicate ::= expr_or_subquery compare_op expr_or_subquery */ + -5, /* (491) predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ + -6, /* (492) predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ + -3, /* (493) predicate ::= expr_or_subquery IS NULL */ + -4, /* (494) predicate ::= expr_or_subquery IS NOT NULL */ + -3, /* (495) predicate ::= expr_or_subquery in_op in_predicate_value */ + -1, /* (496) compare_op ::= NK_LT */ + -1, /* (497) compare_op ::= NK_GT */ + -1, /* (498) compare_op ::= NK_LE */ + -1, /* (499) compare_op ::= NK_GE */ + -1, /* (500) compare_op ::= NK_NE */ + -1, /* (501) compare_op ::= NK_EQ */ + -1, /* (502) compare_op ::= LIKE */ + -2, /* (503) compare_op ::= NOT LIKE */ + -1, /* (504) compare_op ::= MATCH */ + -1, /* (505) compare_op ::= NMATCH */ + -1, /* (506) compare_op ::= CONTAINS */ + -1, /* (507) in_op ::= IN */ + -2, /* (508) in_op ::= NOT IN */ + -3, /* (509) in_predicate_value ::= NK_LP literal_list NK_RP */ + -1, /* (510) boolean_value_expression ::= boolean_primary */ + -2, /* (511) boolean_value_expression ::= NOT boolean_primary */ + -3, /* (512) boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ + -3, /* (513) boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ + -1, /* (514) boolean_primary ::= predicate */ + -3, /* (515) boolean_primary ::= NK_LP boolean_value_expression NK_RP */ + -1, /* (516) common_expression ::= expr_or_subquery */ + -1, /* (517) common_expression ::= boolean_value_expression */ + 0, /* (518) from_clause_opt ::= */ + -2, /* (519) from_clause_opt ::= FROM table_reference_list */ + -1, /* (520) table_reference_list ::= table_reference */ + -3, /* (521) table_reference_list ::= table_reference_list NK_COMMA table_reference */ + -1, /* (522) table_reference ::= table_primary */ + -1, /* (523) table_reference ::= joined_table */ + -2, /* (524) table_primary ::= table_name alias_opt */ + -4, /* (525) table_primary ::= db_name NK_DOT table_name alias_opt */ + -2, /* (526) table_primary ::= subquery alias_opt */ + -1, /* (527) table_primary ::= parenthesized_joined_table */ + 0, /* (528) alias_opt ::= */ + -1, /* (529) alias_opt ::= table_alias */ + -2, /* (530) alias_opt ::= AS table_alias */ + -3, /* (531) parenthesized_joined_table ::= NK_LP joined_table NK_RP */ + -3, /* (532) parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ + -6, /* (533) joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ + 0, /* (534) join_type ::= */ + -1, /* (535) join_type ::= INNER */ + -14, /* (536) query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt */ + 0, /* (537) hint_list ::= */ + -1, /* (538) hint_list ::= NK_HINT */ + 0, /* (539) tag_mode_opt ::= */ + -1, /* (540) tag_mode_opt ::= TAGS */ + 0, /* (541) set_quantifier_opt ::= */ + -1, /* (542) set_quantifier_opt ::= DISTINCT */ + -1, /* (543) set_quantifier_opt ::= ALL */ + -1, /* (544) select_list ::= select_item */ + -3, /* (545) select_list ::= select_list NK_COMMA select_item */ + -1, /* (546) select_item ::= NK_STAR */ + -1, /* (547) select_item ::= common_expression */ + -2, /* (548) select_item ::= common_expression column_alias */ + -3, /* (549) select_item ::= common_expression AS column_alias */ + -3, /* (550) select_item ::= table_name NK_DOT NK_STAR */ + 0, /* (551) where_clause_opt ::= */ + -2, /* (552) where_clause_opt ::= WHERE search_condition */ + 0, /* (553) partition_by_clause_opt ::= */ + -3, /* (554) partition_by_clause_opt ::= PARTITION BY partition_list */ + -1, /* (555) partition_list ::= partition_item */ + -3, /* (556) partition_list ::= partition_list NK_COMMA partition_item */ + -1, /* (557) partition_item ::= expr_or_subquery */ + -2, /* (558) partition_item ::= expr_or_subquery column_alias */ + -3, /* (559) partition_item ::= expr_or_subquery AS column_alias */ + 0, /* (560) twindow_clause_opt ::= */ + -6, /* (561) twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ + -4, /* (562) twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ + -6, /* (563) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ + -8, /* (564) twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ + -7, /* (565) twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ + 0, /* (566) sliding_opt ::= */ + -4, /* (567) sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ + 0, /* (568) fill_opt ::= */ + -4, /* (569) fill_opt ::= FILL NK_LP fill_mode NK_RP */ + -6, /* (570) fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP */ + -6, /* (571) fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP */ + -1, /* (572) fill_mode ::= NONE */ + -1, /* (573) fill_mode ::= PREV */ + -1, /* (574) fill_mode ::= NULL */ + -1, /* (575) fill_mode ::= NULL_F */ + -1, /* (576) fill_mode ::= LINEAR */ + -1, /* (577) fill_mode ::= NEXT */ + 0, /* (578) group_by_clause_opt ::= */ + -3, /* (579) group_by_clause_opt ::= GROUP BY group_by_list */ + -1, /* (580) group_by_list ::= expr_or_subquery */ + -3, /* (581) group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ + 0, /* (582) having_clause_opt ::= */ + -2, /* (583) having_clause_opt ::= HAVING search_condition */ + 0, /* (584) range_opt ::= */ + -6, /* (585) range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ + -4, /* (586) range_opt ::= RANGE NK_LP expr_or_subquery NK_RP */ + 0, /* (587) every_opt ::= */ + -4, /* (588) every_opt ::= EVERY NK_LP duration_literal NK_RP */ + -4, /* (589) query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ + -1, /* (590) query_simple ::= query_specification */ + -1, /* (591) query_simple ::= union_query_expression */ + -4, /* (592) union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ + -3, /* (593) union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ + -1, /* (594) query_simple_or_subquery ::= query_simple */ + -1, /* (595) query_simple_or_subquery ::= subquery */ + -1, /* (596) query_or_subquery ::= query_expression */ + -1, /* (597) query_or_subquery ::= subquery */ + 0, /* (598) order_by_clause_opt ::= */ + -3, /* (599) order_by_clause_opt ::= ORDER BY sort_specification_list */ + 0, /* (600) slimit_clause_opt ::= */ + -2, /* (601) slimit_clause_opt ::= SLIMIT NK_INTEGER */ + -4, /* (602) slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ + -4, /* (603) slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ + 0, /* (604) limit_clause_opt ::= */ + -2, /* (605) limit_clause_opt ::= LIMIT NK_INTEGER */ + -4, /* (606) limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ + -4, /* (607) limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ + -3, /* (608) subquery ::= NK_LP query_expression NK_RP */ + -3, /* (609) subquery ::= NK_LP subquery NK_RP */ + -1, /* (610) search_condition ::= common_expression */ + -1, /* (611) sort_specification_list ::= sort_specification */ + -3, /* (612) sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ + -3, /* (613) sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ + 0, /* (614) ordering_specification_opt ::= */ + -1, /* (615) ordering_specification_opt ::= ASC */ + -1, /* (616) ordering_specification_opt ::= DESC */ + 0, /* (617) null_ordering_opt ::= */ + -2, /* (618) null_ordering_opt ::= NULLS FIRST */ + -2, /* (619) null_ordering_opt ::= NULLS LAST */ }; static void yy_accept(yyParser*); /* Forward Declaration */ @@ -4973,19 +4966,19 @@ static YYACTIONTYPE yy_reduce( case 0: /* cmd ::= CREATE ACCOUNT NK_ID PASS NK_STRING account_options */ #line 50 "sql.y" { pCxt->errCode = generateSyntaxErrMsg(&pCxt->msgBuf, TSDB_CODE_PAR_EXPRIE_STATEMENT); } -#line 4976 "sql.c" +#line 4969 "sql.c" yy_destructor(yypParser,344,&yymsp[0].minor); break; case 1: /* cmd ::= ALTER ACCOUNT NK_ID alter_account_options */ #line 51 "sql.y" { pCxt->errCode = generateSyntaxErrMsg(&pCxt->msgBuf, TSDB_CODE_PAR_EXPRIE_STATEMENT); } -#line 4982 "sql.c" +#line 4975 "sql.c" yy_destructor(yypParser,345,&yymsp[0].minor); break; case 2: /* account_options ::= */ #line 55 "sql.y" { } -#line 4988 "sql.c" +#line 4981 "sql.c" break; case 3: /* account_options ::= account_options PPS literal */ case 4: /* account_options ::= account_options TSERIES literal */ yytestcase(yyruleno==4); @@ -4999,7 +4992,7 @@ static YYACTIONTYPE yy_reduce( { yy_destructor(yypParser,344,&yymsp[-2].minor); #line 56 "sql.y" { } -#line 5002 "sql.c" +#line 4995 "sql.c" yy_destructor(yypParser,346,&yymsp[0].minor); } break; @@ -5007,14 +5000,14 @@ static YYACTIONTYPE yy_reduce( { yy_destructor(yypParser,347,&yymsp[0].minor); #line 68 "sql.y" { } -#line 5010 "sql.c" +#line 5003 "sql.c" } break; case 13: /* alter_account_options ::= alter_account_options alter_account_option */ { yy_destructor(yypParser,345,&yymsp[-1].minor); #line 69 "sql.y" { } -#line 5017 "sql.c" +#line 5010 "sql.c" yy_destructor(yypParser,347,&yymsp[0].minor); } break; @@ -5030,715 +5023,715 @@ static YYACTIONTYPE yy_reduce( case 23: /* alter_account_option ::= STATE literal */ yytestcase(yyruleno==23); #line 73 "sql.y" { } -#line 5033 "sql.c" +#line 5026 "sql.c" yy_destructor(yypParser,346,&yymsp[0].minor); break; case 24: /* ip_range_list ::= NK_STRING */ #line 86 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } -#line 5039 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } +#line 5032 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; case 25: /* ip_range_list ::= ip_range_list NK_COMMA NK_STRING */ #line 87 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-2].minor.yy298, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } -#line 5045 "sql.c" - yymsp[-2].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-2].minor.yy424, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } +#line 5038 "sql.c" + yymsp[-2].minor.yy424 = yylhsminor.yy424; break; case 26: /* white_list ::= HOST ip_range_list */ #line 91 "sql.y" -{ yymsp[-1].minor.yy298 = yymsp[0].minor.yy298; } -#line 5051 "sql.c" +{ yymsp[-1].minor.yy424 = yymsp[0].minor.yy424; } +#line 5044 "sql.c" break; case 27: /* white_list_opt ::= */ case 182: /* specific_cols_opt ::= */ yytestcase(yyruleno==182); case 213: /* tags_def_opt ::= */ yytestcase(yyruleno==213); - case 295: /* tag_list_opt ::= */ yytestcase(yyruleno==295); - case 357: /* col_list_opt ::= */ yytestcase(yyruleno==357); - case 359: /* tag_def_or_ref_opt ::= */ yytestcase(yyruleno==359); - case 554: /* partition_by_clause_opt ::= */ yytestcase(yyruleno==554); - case 579: /* group_by_clause_opt ::= */ yytestcase(yyruleno==579); - case 599: /* order_by_clause_opt ::= */ yytestcase(yyruleno==599); + case 294: /* tag_list_opt ::= */ yytestcase(yyruleno==294); + case 356: /* col_list_opt ::= */ yytestcase(yyruleno==356); + case 358: /* tag_def_or_ref_opt ::= */ yytestcase(yyruleno==358); + case 553: /* partition_by_clause_opt ::= */ yytestcase(yyruleno==553); + case 578: /* group_by_clause_opt ::= */ yytestcase(yyruleno==578); + case 598: /* order_by_clause_opt ::= */ yytestcase(yyruleno==598); #line 95 "sql.y" -{ yymsp[1].minor.yy298 = NULL; } -#line 5064 "sql.c" +{ yymsp[1].minor.yy424 = NULL; } +#line 5057 "sql.c" break; case 28: /* white_list_opt ::= white_list */ case 214: /* tags_def_opt ::= tags_def */ yytestcase(yyruleno==214); - case 360: /* tag_def_or_ref_opt ::= tags_def */ yytestcase(yyruleno==360); - case 479: /* star_func_para_list ::= other_para_list */ yytestcase(yyruleno==479); + case 359: /* tag_def_or_ref_opt ::= tags_def */ yytestcase(yyruleno==359); + case 478: /* star_func_para_list ::= other_para_list */ yytestcase(yyruleno==478); #line 96 "sql.y" -{ yylhsminor.yy298 = yymsp[0].minor.yy298; } -#line 5072 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = yymsp[0].minor.yy424; } +#line 5065 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; case 29: /* cmd ::= CREATE USER user_name PASS NK_STRING sysinfo_opt white_list_opt */ #line 100 "sql.y" { - pCxt->pRootNode = createCreateUserStmt(pCxt, &yymsp[-4].minor.yy203, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy797); - pCxt->pRootNode = addCreateUserStmtWhiteList(pCxt, pCxt->pRootNode, yymsp[0].minor.yy298); + pCxt->pRootNode = createCreateUserStmt(pCxt, &yymsp[-4].minor.yy329, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy903); + pCxt->pRootNode = addCreateUserStmtWhiteList(pCxt, pCxt->pRootNode, yymsp[0].minor.yy424); } -#line 5081 "sql.c" +#line 5074 "sql.c" break; case 30: /* cmd ::= ALTER USER user_name PASS NK_STRING */ #line 104 "sql.y" -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy203, TSDB_ALTER_USER_PASSWD, &yymsp[0].minor.yy0); } -#line 5086 "sql.c" +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy329, TSDB_ALTER_USER_PASSWD, &yymsp[0].minor.yy0); } +#line 5079 "sql.c" break; case 31: /* cmd ::= ALTER USER user_name ENABLE NK_INTEGER */ #line 105 "sql.y" -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy203, TSDB_ALTER_USER_ENABLE, &yymsp[0].minor.yy0); } -#line 5091 "sql.c" +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy329, TSDB_ALTER_USER_ENABLE, &yymsp[0].minor.yy0); } +#line 5084 "sql.c" break; case 32: /* cmd ::= ALTER USER user_name SYSINFO NK_INTEGER */ #line 106 "sql.y" -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy203, TSDB_ALTER_USER_SYSINFO, &yymsp[0].minor.yy0); } -#line 5096 "sql.c" +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy329, TSDB_ALTER_USER_SYSINFO, &yymsp[0].minor.yy0); } +#line 5089 "sql.c" break; case 33: /* cmd ::= ALTER USER user_name ADD white_list */ #line 107 "sql.y" -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy203, TSDB_ALTER_USER_ADD_WHITE_LIST, yymsp[0].minor.yy298); } -#line 5101 "sql.c" +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy329, TSDB_ALTER_USER_ADD_WHITE_LIST, yymsp[0].minor.yy424); } +#line 5094 "sql.c" break; case 34: /* cmd ::= ALTER USER user_name DROP white_list */ #line 108 "sql.y" -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy203, TSDB_ALTER_USER_DROP_WHITE_LIST, yymsp[0].minor.yy298); } -#line 5106 "sql.c" +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy329, TSDB_ALTER_USER_DROP_WHITE_LIST, yymsp[0].minor.yy424); } +#line 5099 "sql.c" break; case 35: /* cmd ::= DROP USER user_name */ #line 109 "sql.y" -{ pCxt->pRootNode = createDropUserStmt(pCxt, &yymsp[0].minor.yy203); } -#line 5111 "sql.c" +{ pCxt->pRootNode = createDropUserStmt(pCxt, &yymsp[0].minor.yy329); } +#line 5104 "sql.c" break; case 36: /* sysinfo_opt ::= */ #line 113 "sql.y" -{ yymsp[1].minor.yy797 = 1; } -#line 5116 "sql.c" +{ yymsp[1].minor.yy903 = 1; } +#line 5109 "sql.c" break; case 37: /* sysinfo_opt ::= SYSINFO NK_INTEGER */ #line 114 "sql.y" -{ yymsp[-1].minor.yy797 = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); } -#line 5121 "sql.c" +{ yymsp[-1].minor.yy903 = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); } +#line 5114 "sql.c" break; case 38: /* cmd ::= GRANT privileges ON priv_level with_opt TO user_name */ #line 117 "sql.y" -{ pCxt->pRootNode = createGrantStmt(pCxt, yymsp[-5].minor.yy999, &yymsp[-3].minor.yy345, &yymsp[0].minor.yy203, yymsp[-2].minor.yy122); } -#line 5126 "sql.c" +{ pCxt->pRootNode = createGrantStmt(pCxt, yymsp[-5].minor.yy109, &yymsp[-3].minor.yy297, &yymsp[0].minor.yy329, yymsp[-2].minor.yy712); } +#line 5119 "sql.c" break; case 39: /* cmd ::= REVOKE privileges ON priv_level with_opt FROM user_name */ #line 118 "sql.y" -{ pCxt->pRootNode = createRevokeStmt(pCxt, yymsp[-5].minor.yy999, &yymsp[-3].minor.yy345, &yymsp[0].minor.yy203, yymsp[-2].minor.yy122); } -#line 5131 "sql.c" +{ pCxt->pRootNode = createRevokeStmt(pCxt, yymsp[-5].minor.yy109, &yymsp[-3].minor.yy297, &yymsp[0].minor.yy329, yymsp[-2].minor.yy712); } +#line 5124 "sql.c" break; case 40: /* privileges ::= ALL */ #line 122 "sql.y" -{ yymsp[0].minor.yy999 = PRIVILEGE_TYPE_ALL; } -#line 5136 "sql.c" +{ yymsp[0].minor.yy109 = PRIVILEGE_TYPE_ALL; } +#line 5129 "sql.c" break; case 41: /* privileges ::= priv_type_list */ case 43: /* priv_type_list ::= priv_type */ yytestcase(yyruleno==43); #line 123 "sql.y" -{ yylhsminor.yy999 = yymsp[0].minor.yy999; } -#line 5142 "sql.c" - yymsp[0].minor.yy999 = yylhsminor.yy999; +{ yylhsminor.yy109 = yymsp[0].minor.yy109; } +#line 5135 "sql.c" + yymsp[0].minor.yy109 = yylhsminor.yy109; break; case 42: /* privileges ::= SUBSCRIBE */ #line 124 "sql.y" -{ yymsp[0].minor.yy999 = PRIVILEGE_TYPE_SUBSCRIBE; } -#line 5148 "sql.c" +{ yymsp[0].minor.yy109 = PRIVILEGE_TYPE_SUBSCRIBE; } +#line 5141 "sql.c" break; case 44: /* priv_type_list ::= priv_type_list NK_COMMA priv_type */ #line 129 "sql.y" -{ yylhsminor.yy999 = yymsp[-2].minor.yy999 | yymsp[0].minor.yy999; } -#line 5153 "sql.c" - yymsp[-2].minor.yy999 = yylhsminor.yy999; +{ yylhsminor.yy109 = yymsp[-2].minor.yy109 | yymsp[0].minor.yy109; } +#line 5146 "sql.c" + yymsp[-2].minor.yy109 = yylhsminor.yy109; break; case 45: /* priv_type ::= READ */ #line 133 "sql.y" -{ yymsp[0].minor.yy999 = PRIVILEGE_TYPE_READ; } -#line 5159 "sql.c" +{ yymsp[0].minor.yy109 = PRIVILEGE_TYPE_READ; } +#line 5152 "sql.c" break; case 46: /* priv_type ::= WRITE */ #line 134 "sql.y" -{ yymsp[0].minor.yy999 = PRIVILEGE_TYPE_WRITE; } -#line 5164 "sql.c" +{ yymsp[0].minor.yy109 = PRIVILEGE_TYPE_WRITE; } +#line 5157 "sql.c" break; case 47: /* priv_level ::= NK_STAR NK_DOT NK_STAR */ #line 138 "sql.y" -{ yylhsminor.yy345.first = yymsp[-2].minor.yy0; yylhsminor.yy345.second = yymsp[0].minor.yy0; } -#line 5169 "sql.c" - yymsp[-2].minor.yy345 = yylhsminor.yy345; +{ yylhsminor.yy297.first = yymsp[-2].minor.yy0; yylhsminor.yy297.second = yymsp[0].minor.yy0; } +#line 5162 "sql.c" + yymsp[-2].minor.yy297 = yylhsminor.yy297; break; case 48: /* priv_level ::= db_name NK_DOT NK_STAR */ #line 139 "sql.y" -{ yylhsminor.yy345.first = yymsp[-2].minor.yy203; yylhsminor.yy345.second = yymsp[0].minor.yy0; } -#line 5175 "sql.c" - yymsp[-2].minor.yy345 = yylhsminor.yy345; +{ yylhsminor.yy297.first = yymsp[-2].minor.yy329; yylhsminor.yy297.second = yymsp[0].minor.yy0; } +#line 5168 "sql.c" + yymsp[-2].minor.yy297 = yylhsminor.yy297; break; case 49: /* priv_level ::= db_name NK_DOT table_name */ #line 140 "sql.y" -{ yylhsminor.yy345.first = yymsp[-2].minor.yy203; yylhsminor.yy345.second = yymsp[0].minor.yy203; } -#line 5181 "sql.c" - yymsp[-2].minor.yy345 = yylhsminor.yy345; +{ yylhsminor.yy297.first = yymsp[-2].minor.yy329; yylhsminor.yy297.second = yymsp[0].minor.yy329; } +#line 5174 "sql.c" + yymsp[-2].minor.yy297 = yylhsminor.yy297; break; case 50: /* priv_level ::= topic_name */ #line 141 "sql.y" -{ yylhsminor.yy345.first = yymsp[0].minor.yy203; yylhsminor.yy345.second = nil_token; } -#line 5187 "sql.c" - yymsp[0].minor.yy345 = yylhsminor.yy345; +{ yylhsminor.yy297.first = yymsp[0].minor.yy329; yylhsminor.yy297.second = nil_token; } +#line 5180 "sql.c" + yymsp[0].minor.yy297 = yylhsminor.yy297; break; case 51: /* with_opt ::= */ case 151: /* start_opt ::= */ yytestcase(yyruleno==151); case 155: /* end_opt ::= */ yytestcase(yyruleno==155); - case 290: /* like_pattern_opt ::= */ yytestcase(yyruleno==290); - case 371: /* subtable_opt ::= */ yytestcase(yyruleno==371); - case 489: /* case_when_else_opt ::= */ yytestcase(yyruleno==489); - case 519: /* from_clause_opt ::= */ yytestcase(yyruleno==519); - case 552: /* where_clause_opt ::= */ yytestcase(yyruleno==552); - case 561: /* twindow_clause_opt ::= */ yytestcase(yyruleno==561); - case 567: /* sliding_opt ::= */ yytestcase(yyruleno==567); - case 569: /* fill_opt ::= */ yytestcase(yyruleno==569); - case 583: /* having_clause_opt ::= */ yytestcase(yyruleno==583); - case 585: /* range_opt ::= */ yytestcase(yyruleno==585); - case 588: /* every_opt ::= */ yytestcase(yyruleno==588); - case 601: /* slimit_clause_opt ::= */ yytestcase(yyruleno==601); - case 605: /* limit_clause_opt ::= */ yytestcase(yyruleno==605); + case 289: /* like_pattern_opt ::= */ yytestcase(yyruleno==289); + case 370: /* subtable_opt ::= */ yytestcase(yyruleno==370); + case 488: /* case_when_else_opt ::= */ yytestcase(yyruleno==488); + case 518: /* from_clause_opt ::= */ yytestcase(yyruleno==518); + case 551: /* where_clause_opt ::= */ yytestcase(yyruleno==551); + case 560: /* twindow_clause_opt ::= */ yytestcase(yyruleno==560); + case 566: /* sliding_opt ::= */ yytestcase(yyruleno==566); + case 568: /* fill_opt ::= */ yytestcase(yyruleno==568); + case 582: /* having_clause_opt ::= */ yytestcase(yyruleno==582); + case 584: /* range_opt ::= */ yytestcase(yyruleno==584); + case 587: /* every_opt ::= */ yytestcase(yyruleno==587); + case 600: /* slimit_clause_opt ::= */ yytestcase(yyruleno==600); + case 604: /* limit_clause_opt ::= */ yytestcase(yyruleno==604); #line 143 "sql.y" -{ yymsp[1].minor.yy122 = NULL; } -#line 5208 "sql.c" +{ yymsp[1].minor.yy712 = NULL; } +#line 5201 "sql.c" break; case 52: /* with_opt ::= WITH search_condition */ - case 520: /* from_clause_opt ::= FROM table_reference_list */ yytestcase(yyruleno==520); - case 553: /* where_clause_opt ::= WHERE search_condition */ yytestcase(yyruleno==553); - case 584: /* having_clause_opt ::= HAVING search_condition */ yytestcase(yyruleno==584); + case 519: /* from_clause_opt ::= FROM table_reference_list */ yytestcase(yyruleno==519); + case 552: /* where_clause_opt ::= WHERE search_condition */ yytestcase(yyruleno==552); + case 583: /* having_clause_opt ::= HAVING search_condition */ yytestcase(yyruleno==583); #line 144 "sql.y" -{ yymsp[-1].minor.yy122 = yymsp[0].minor.yy122; } -#line 5216 "sql.c" +{ yymsp[-1].minor.yy712 = yymsp[0].minor.yy712; } +#line 5209 "sql.c" break; case 53: /* cmd ::= CREATE DNODE dnode_endpoint */ #line 147 "sql.y" -{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[0].minor.yy203, NULL); } -#line 5221 "sql.c" +{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[0].minor.yy329, NULL); } +#line 5214 "sql.c" break; case 54: /* cmd ::= CREATE DNODE dnode_endpoint PORT NK_INTEGER */ #line 148 "sql.y" -{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy0); } -#line 5226 "sql.c" +{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy0); } +#line 5219 "sql.c" break; case 55: /* cmd ::= DROP DNODE NK_INTEGER force_opt */ #line 149 "sql.y" -{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy983, false); } -#line 5231 "sql.c" +{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy737, false); } +#line 5224 "sql.c" break; case 56: /* cmd ::= DROP DNODE dnode_endpoint force_opt */ #line 150 "sql.y" -{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy203, yymsp[0].minor.yy983, false); } -#line 5236 "sql.c" +{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy329, yymsp[0].minor.yy737, false); } +#line 5229 "sql.c" break; case 57: /* cmd ::= DROP DNODE NK_INTEGER unsafe_opt */ #line 151 "sql.y" -{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy0, false, yymsp[0].minor.yy983); } -#line 5241 "sql.c" +{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy0, false, yymsp[0].minor.yy737); } +#line 5234 "sql.c" break; case 58: /* cmd ::= DROP DNODE dnode_endpoint unsafe_opt */ #line 152 "sql.y" -{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy203, false, yymsp[0].minor.yy983); } -#line 5246 "sql.c" +{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy329, false, yymsp[0].minor.yy737); } +#line 5239 "sql.c" break; case 59: /* cmd ::= ALTER DNODE NK_INTEGER NK_STRING */ #line 153 "sql.y" { pCxt->pRootNode = createAlterDnodeStmt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0, NULL); } -#line 5251 "sql.c" +#line 5244 "sql.c" break; case 60: /* cmd ::= ALTER DNODE NK_INTEGER NK_STRING NK_STRING */ #line 154 "sql.y" { pCxt->pRootNode = createAlterDnodeStmt(pCxt, &yymsp[-2].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0); } -#line 5256 "sql.c" +#line 5249 "sql.c" break; case 61: /* cmd ::= ALTER ALL DNODES NK_STRING */ #line 155 "sql.y" { pCxt->pRootNode = createAlterDnodeStmt(pCxt, NULL, &yymsp[0].minor.yy0, NULL); } -#line 5261 "sql.c" +#line 5254 "sql.c" break; case 62: /* cmd ::= ALTER ALL DNODES NK_STRING NK_STRING */ #line 156 "sql.y" { pCxt->pRootNode = createAlterDnodeStmt(pCxt, NULL, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0); } -#line 5266 "sql.c" +#line 5259 "sql.c" break; case 63: /* cmd ::= RESTORE DNODE NK_INTEGER */ #line 157 "sql.y" { pCxt->pRootNode = createRestoreComponentNodeStmt(pCxt, QUERY_NODE_RESTORE_DNODE_STMT, &yymsp[0].minor.yy0); } -#line 5271 "sql.c" +#line 5264 "sql.c" break; case 64: /* dnode_endpoint ::= NK_STRING */ case 65: /* dnode_endpoint ::= NK_ID */ yytestcase(yyruleno==65); case 66: /* dnode_endpoint ::= NK_IPTOKEN */ yytestcase(yyruleno==66); - case 317: /* sma_func_name ::= COUNT */ yytestcase(yyruleno==317); - case 318: /* sma_func_name ::= FIRST */ yytestcase(yyruleno==318); - case 319: /* sma_func_name ::= LAST */ yytestcase(yyruleno==319); - case 320: /* sma_func_name ::= LAST_ROW */ yytestcase(yyruleno==320); - case 415: /* db_name ::= NK_ID */ yytestcase(yyruleno==415); - case 416: /* table_name ::= NK_ID */ yytestcase(yyruleno==416); - case 417: /* column_name ::= NK_ID */ yytestcase(yyruleno==417); - case 418: /* function_name ::= NK_ID */ yytestcase(yyruleno==418); - case 419: /* table_alias ::= NK_ID */ yytestcase(yyruleno==419); - case 420: /* column_alias ::= NK_ID */ yytestcase(yyruleno==420); - case 421: /* user_name ::= NK_ID */ yytestcase(yyruleno==421); - case 422: /* topic_name ::= NK_ID */ yytestcase(yyruleno==422); - case 423: /* stream_name ::= NK_ID */ yytestcase(yyruleno==423); - case 424: /* cgroup_name ::= NK_ID */ yytestcase(yyruleno==424); - case 425: /* index_name ::= NK_ID */ yytestcase(yyruleno==425); - case 465: /* noarg_func ::= NOW */ yytestcase(yyruleno==465); - case 466: /* noarg_func ::= TODAY */ yytestcase(yyruleno==466); - case 467: /* noarg_func ::= TIMEZONE */ yytestcase(yyruleno==467); - case 468: /* noarg_func ::= DATABASE */ yytestcase(yyruleno==468); - case 469: /* noarg_func ::= CLIENT_VERSION */ yytestcase(yyruleno==469); - case 470: /* noarg_func ::= SERVER_VERSION */ yytestcase(yyruleno==470); - case 471: /* noarg_func ::= SERVER_STATUS */ yytestcase(yyruleno==471); - case 472: /* noarg_func ::= CURRENT_USER */ yytestcase(yyruleno==472); - case 473: /* noarg_func ::= USER */ yytestcase(yyruleno==473); - case 474: /* star_func ::= COUNT */ yytestcase(yyruleno==474); - case 475: /* star_func ::= FIRST */ yytestcase(yyruleno==475); - case 476: /* star_func ::= LAST */ yytestcase(yyruleno==476); - case 477: /* star_func ::= LAST_ROW */ yytestcase(yyruleno==477); + case 316: /* sma_func_name ::= COUNT */ yytestcase(yyruleno==316); + case 317: /* sma_func_name ::= FIRST */ yytestcase(yyruleno==317); + case 318: /* sma_func_name ::= LAST */ yytestcase(yyruleno==318); + case 319: /* sma_func_name ::= LAST_ROW */ yytestcase(yyruleno==319); + case 414: /* db_name ::= NK_ID */ yytestcase(yyruleno==414); + case 415: /* table_name ::= NK_ID */ yytestcase(yyruleno==415); + case 416: /* column_name ::= NK_ID */ yytestcase(yyruleno==416); + case 417: /* function_name ::= NK_ID */ yytestcase(yyruleno==417); + case 418: /* table_alias ::= NK_ID */ yytestcase(yyruleno==418); + case 419: /* column_alias ::= NK_ID */ yytestcase(yyruleno==419); + case 420: /* user_name ::= NK_ID */ yytestcase(yyruleno==420); + case 421: /* topic_name ::= NK_ID */ yytestcase(yyruleno==421); + case 422: /* stream_name ::= NK_ID */ yytestcase(yyruleno==422); + case 423: /* cgroup_name ::= NK_ID */ yytestcase(yyruleno==423); + case 424: /* index_name ::= NK_ID */ yytestcase(yyruleno==424); + case 464: /* noarg_func ::= NOW */ yytestcase(yyruleno==464); + case 465: /* noarg_func ::= TODAY */ yytestcase(yyruleno==465); + case 466: /* noarg_func ::= TIMEZONE */ yytestcase(yyruleno==466); + case 467: /* noarg_func ::= DATABASE */ yytestcase(yyruleno==467); + case 468: /* noarg_func ::= CLIENT_VERSION */ yytestcase(yyruleno==468); + case 469: /* noarg_func ::= SERVER_VERSION */ yytestcase(yyruleno==469); + case 470: /* noarg_func ::= SERVER_STATUS */ yytestcase(yyruleno==470); + case 471: /* noarg_func ::= CURRENT_USER */ yytestcase(yyruleno==471); + case 472: /* noarg_func ::= USER */ yytestcase(yyruleno==472); + case 473: /* star_func ::= COUNT */ yytestcase(yyruleno==473); + case 474: /* star_func ::= FIRST */ yytestcase(yyruleno==474); + case 475: /* star_func ::= LAST */ yytestcase(yyruleno==475); + case 476: /* star_func ::= LAST_ROW */ yytestcase(yyruleno==476); #line 161 "sql.y" -{ yylhsminor.yy203 = yymsp[0].minor.yy0; } -#line 5306 "sql.c" - yymsp[0].minor.yy203 = yylhsminor.yy203; +{ yylhsminor.yy329 = yymsp[0].minor.yy0; } +#line 5299 "sql.c" + yymsp[0].minor.yy329 = yylhsminor.yy329; break; case 67: /* force_opt ::= */ case 91: /* not_exists_opt ::= */ yytestcase(yyruleno==91); case 93: /* exists_opt ::= */ yytestcase(yyruleno==93); - case 338: /* analyze_opt ::= */ yytestcase(yyruleno==338); - case 345: /* agg_func_opt ::= */ yytestcase(yyruleno==345); - case 351: /* or_replace_opt ::= */ yytestcase(yyruleno==351); - case 373: /* ignore_opt ::= */ yytestcase(yyruleno==373); - case 540: /* tag_mode_opt ::= */ yytestcase(yyruleno==540); - case 542: /* set_quantifier_opt ::= */ yytestcase(yyruleno==542); + case 337: /* analyze_opt ::= */ yytestcase(yyruleno==337); + case 344: /* agg_func_opt ::= */ yytestcase(yyruleno==344); + case 350: /* or_replace_opt ::= */ yytestcase(yyruleno==350); + case 372: /* ignore_opt ::= */ yytestcase(yyruleno==372); + case 539: /* tag_mode_opt ::= */ yytestcase(yyruleno==539); + case 541: /* set_quantifier_opt ::= */ yytestcase(yyruleno==541); #line 167 "sql.y" -{ yymsp[1].minor.yy983 = false; } -#line 5320 "sql.c" +{ yymsp[1].minor.yy737 = false; } +#line 5313 "sql.c" break; case 68: /* force_opt ::= FORCE */ case 69: /* unsafe_opt ::= UNSAFE */ yytestcase(yyruleno==69); - case 339: /* analyze_opt ::= ANALYZE */ yytestcase(yyruleno==339); - case 346: /* agg_func_opt ::= AGGREGATE */ yytestcase(yyruleno==346); - case 541: /* tag_mode_opt ::= TAGS */ yytestcase(yyruleno==541); - case 543: /* set_quantifier_opt ::= DISTINCT */ yytestcase(yyruleno==543); + case 338: /* analyze_opt ::= ANALYZE */ yytestcase(yyruleno==338); + case 345: /* agg_func_opt ::= AGGREGATE */ yytestcase(yyruleno==345); + case 540: /* tag_mode_opt ::= TAGS */ yytestcase(yyruleno==540); + case 542: /* set_quantifier_opt ::= DISTINCT */ yytestcase(yyruleno==542); #line 168 "sql.y" -{ yymsp[0].minor.yy983 = true; } -#line 5330 "sql.c" +{ yymsp[0].minor.yy737 = true; } +#line 5323 "sql.c" break; case 70: /* cmd ::= ALTER LOCAL NK_STRING */ #line 175 "sql.y" { pCxt->pRootNode = createAlterLocalStmt(pCxt, &yymsp[0].minor.yy0, NULL); } -#line 5335 "sql.c" +#line 5328 "sql.c" break; case 71: /* cmd ::= ALTER LOCAL NK_STRING NK_STRING */ #line 176 "sql.y" { pCxt->pRootNode = createAlterLocalStmt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0); } -#line 5340 "sql.c" +#line 5333 "sql.c" break; case 72: /* cmd ::= CREATE QNODE ON DNODE NK_INTEGER */ #line 179 "sql.y" { pCxt->pRootNode = createCreateComponentNodeStmt(pCxt, QUERY_NODE_CREATE_QNODE_STMT, &yymsp[0].minor.yy0); } -#line 5345 "sql.c" +#line 5338 "sql.c" break; case 73: /* cmd ::= DROP QNODE ON DNODE NK_INTEGER */ #line 180 "sql.y" { pCxt->pRootNode = createDropComponentNodeStmt(pCxt, QUERY_NODE_DROP_QNODE_STMT, &yymsp[0].minor.yy0); } -#line 5350 "sql.c" +#line 5343 "sql.c" break; case 74: /* cmd ::= RESTORE QNODE ON DNODE NK_INTEGER */ #line 181 "sql.y" { pCxt->pRootNode = createRestoreComponentNodeStmt(pCxt, QUERY_NODE_RESTORE_QNODE_STMT, &yymsp[0].minor.yy0); } -#line 5355 "sql.c" +#line 5348 "sql.c" break; case 75: /* cmd ::= CREATE BNODE ON DNODE NK_INTEGER */ #line 184 "sql.y" { pCxt->pRootNode = createCreateComponentNodeStmt(pCxt, QUERY_NODE_CREATE_BNODE_STMT, &yymsp[0].minor.yy0); } -#line 5360 "sql.c" +#line 5353 "sql.c" break; case 76: /* cmd ::= DROP BNODE ON DNODE NK_INTEGER */ #line 185 "sql.y" { pCxt->pRootNode = createDropComponentNodeStmt(pCxt, QUERY_NODE_DROP_BNODE_STMT, &yymsp[0].minor.yy0); } -#line 5365 "sql.c" +#line 5358 "sql.c" break; case 77: /* cmd ::= CREATE SNODE ON DNODE NK_INTEGER */ #line 188 "sql.y" { pCxt->pRootNode = createCreateComponentNodeStmt(pCxt, QUERY_NODE_CREATE_SNODE_STMT, &yymsp[0].minor.yy0); } -#line 5370 "sql.c" +#line 5363 "sql.c" break; case 78: /* cmd ::= DROP SNODE ON DNODE NK_INTEGER */ #line 189 "sql.y" { pCxt->pRootNode = createDropComponentNodeStmt(pCxt, QUERY_NODE_DROP_SNODE_STMT, &yymsp[0].minor.yy0); } -#line 5375 "sql.c" +#line 5368 "sql.c" break; case 79: /* cmd ::= CREATE MNODE ON DNODE NK_INTEGER */ #line 192 "sql.y" { pCxt->pRootNode = createCreateComponentNodeStmt(pCxt, QUERY_NODE_CREATE_MNODE_STMT, &yymsp[0].minor.yy0); } -#line 5380 "sql.c" +#line 5373 "sql.c" break; case 80: /* cmd ::= DROP MNODE ON DNODE NK_INTEGER */ #line 193 "sql.y" { pCxt->pRootNode = createDropComponentNodeStmt(pCxt, QUERY_NODE_DROP_MNODE_STMT, &yymsp[0].minor.yy0); } -#line 5385 "sql.c" +#line 5378 "sql.c" break; case 81: /* cmd ::= RESTORE MNODE ON DNODE NK_INTEGER */ #line 194 "sql.y" { pCxt->pRootNode = createRestoreComponentNodeStmt(pCxt, QUERY_NODE_RESTORE_MNODE_STMT, &yymsp[0].minor.yy0); } -#line 5390 "sql.c" +#line 5383 "sql.c" break; case 82: /* cmd ::= RESTORE VNODE ON DNODE NK_INTEGER */ #line 197 "sql.y" { pCxt->pRootNode = createRestoreComponentNodeStmt(pCxt, QUERY_NODE_RESTORE_VNODE_STMT, &yymsp[0].minor.yy0); } -#line 5395 "sql.c" +#line 5388 "sql.c" break; case 83: /* cmd ::= CREATE DATABASE not_exists_opt db_name db_options */ #line 200 "sql.y" -{ pCxt->pRootNode = createCreateDatabaseStmt(pCxt, yymsp[-2].minor.yy983, &yymsp[-1].minor.yy203, yymsp[0].minor.yy122); } -#line 5400 "sql.c" +{ pCxt->pRootNode = createCreateDatabaseStmt(pCxt, yymsp[-2].minor.yy737, &yymsp[-1].minor.yy329, yymsp[0].minor.yy712); } +#line 5393 "sql.c" break; case 84: /* cmd ::= DROP DATABASE exists_opt db_name */ #line 201 "sql.y" -{ pCxt->pRootNode = createDropDatabaseStmt(pCxt, yymsp[-1].minor.yy983, &yymsp[0].minor.yy203); } -#line 5405 "sql.c" +{ pCxt->pRootNode = createDropDatabaseStmt(pCxt, yymsp[-1].minor.yy737, &yymsp[0].minor.yy329); } +#line 5398 "sql.c" break; case 85: /* cmd ::= USE db_name */ #line 202 "sql.y" -{ pCxt->pRootNode = createUseDatabaseStmt(pCxt, &yymsp[0].minor.yy203); } -#line 5410 "sql.c" +{ pCxt->pRootNode = createUseDatabaseStmt(pCxt, &yymsp[0].minor.yy329); } +#line 5403 "sql.c" break; case 86: /* cmd ::= ALTER DATABASE db_name alter_db_options */ #line 203 "sql.y" -{ pCxt->pRootNode = createAlterDatabaseStmt(pCxt, &yymsp[-1].minor.yy203, yymsp[0].minor.yy122); } -#line 5415 "sql.c" +{ pCxt->pRootNode = createAlterDatabaseStmt(pCxt, &yymsp[-1].minor.yy329, yymsp[0].minor.yy712); } +#line 5408 "sql.c" break; case 87: /* cmd ::= FLUSH DATABASE db_name */ #line 204 "sql.y" -{ pCxt->pRootNode = createFlushDatabaseStmt(pCxt, &yymsp[0].minor.yy203); } -#line 5420 "sql.c" +{ pCxt->pRootNode = createFlushDatabaseStmt(pCxt, &yymsp[0].minor.yy329); } +#line 5413 "sql.c" break; case 88: /* cmd ::= TRIM DATABASE db_name speed_opt */ #line 205 "sql.y" -{ pCxt->pRootNode = createTrimDatabaseStmt(pCxt, &yymsp[-1].minor.yy203, yymsp[0].minor.yy652); } -#line 5425 "sql.c" +{ pCxt->pRootNode = createTrimDatabaseStmt(pCxt, &yymsp[-1].minor.yy329, yymsp[0].minor.yy860); } +#line 5418 "sql.c" break; case 89: /* cmd ::= COMPACT DATABASE db_name start_opt end_opt */ #line 206 "sql.y" -{ pCxt->pRootNode = createCompactStmt(pCxt, &yymsp[-2].minor.yy203, yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 5430 "sql.c" +{ pCxt->pRootNode = createCompactStmt(pCxt, &yymsp[-2].minor.yy329, yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 5423 "sql.c" break; case 90: /* not_exists_opt ::= IF NOT EXISTS */ #line 210 "sql.y" -{ yymsp[-2].minor.yy983 = true; } -#line 5435 "sql.c" +{ yymsp[-2].minor.yy737 = true; } +#line 5428 "sql.c" break; case 92: /* exists_opt ::= IF EXISTS */ - case 352: /* or_replace_opt ::= OR REPLACE */ yytestcase(yyruleno==352); - case 374: /* ignore_opt ::= IGNORE UNTREATED */ yytestcase(yyruleno==374); + case 351: /* or_replace_opt ::= OR REPLACE */ yytestcase(yyruleno==351); + case 373: /* ignore_opt ::= IGNORE UNTREATED */ yytestcase(yyruleno==373); #line 215 "sql.y" -{ yymsp[-1].minor.yy983 = true; } -#line 5442 "sql.c" +{ yymsp[-1].minor.yy737 = true; } +#line 5435 "sql.c" break; case 94: /* db_options ::= */ #line 218 "sql.y" -{ yymsp[1].minor.yy122 = createDefaultDatabaseOptions(pCxt); } -#line 5447 "sql.c" +{ yymsp[1].minor.yy712 = createDefaultDatabaseOptions(pCxt); } +#line 5440 "sql.c" break; case 95: /* db_options ::= db_options BUFFER NK_INTEGER */ #line 219 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_BUFFER, &yymsp[0].minor.yy0); } -#line 5452 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_BUFFER, &yymsp[0].minor.yy0); } +#line 5445 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 96: /* db_options ::= db_options CACHEMODEL NK_STRING */ #line 220 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_CACHEMODEL, &yymsp[0].minor.yy0); } -#line 5458 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_CACHEMODEL, &yymsp[0].minor.yy0); } +#line 5451 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 97: /* db_options ::= db_options CACHESIZE NK_INTEGER */ #line 221 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_CACHESIZE, &yymsp[0].minor.yy0); } -#line 5464 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_CACHESIZE, &yymsp[0].minor.yy0); } +#line 5457 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 98: /* db_options ::= db_options COMP NK_INTEGER */ #line 222 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_COMP, &yymsp[0].minor.yy0); } -#line 5470 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_COMP, &yymsp[0].minor.yy0); } +#line 5463 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 99: /* db_options ::= db_options DURATION NK_INTEGER */ case 100: /* db_options ::= db_options DURATION NK_VARIABLE */ yytestcase(yyruleno==100); #line 223 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_DAYS, &yymsp[0].minor.yy0); } -#line 5477 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_DAYS, &yymsp[0].minor.yy0); } +#line 5470 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 101: /* db_options ::= db_options MAXROWS NK_INTEGER */ #line 225 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_MAXROWS, &yymsp[0].minor.yy0); } -#line 5483 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_MAXROWS, &yymsp[0].minor.yy0); } +#line 5476 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 102: /* db_options ::= db_options MINROWS NK_INTEGER */ #line 226 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_MINROWS, &yymsp[0].minor.yy0); } -#line 5489 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_MINROWS, &yymsp[0].minor.yy0); } +#line 5482 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 103: /* db_options ::= db_options KEEP integer_list */ case 104: /* db_options ::= db_options KEEP variable_list */ yytestcase(yyruleno==104); #line 227 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_KEEP, yymsp[0].minor.yy298); } -#line 5496 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_KEEP, yymsp[0].minor.yy424); } +#line 5489 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 105: /* db_options ::= db_options PAGES NK_INTEGER */ #line 229 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_PAGES, &yymsp[0].minor.yy0); } -#line 5502 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_PAGES, &yymsp[0].minor.yy0); } +#line 5495 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 106: /* db_options ::= db_options PAGESIZE NK_INTEGER */ #line 230 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_PAGESIZE, &yymsp[0].minor.yy0); } -#line 5508 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_PAGESIZE, &yymsp[0].minor.yy0); } +#line 5501 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 107: /* db_options ::= db_options TSDB_PAGESIZE NK_INTEGER */ #line 231 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_TSDB_PAGESIZE, &yymsp[0].minor.yy0); } -#line 5514 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_TSDB_PAGESIZE, &yymsp[0].minor.yy0); } +#line 5507 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 108: /* db_options ::= db_options PRECISION NK_STRING */ #line 232 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_PRECISION, &yymsp[0].minor.yy0); } -#line 5520 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_PRECISION, &yymsp[0].minor.yy0); } +#line 5513 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 109: /* db_options ::= db_options REPLICA NK_INTEGER */ #line 233 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_REPLICA, &yymsp[0].minor.yy0); } -#line 5526 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_REPLICA, &yymsp[0].minor.yy0); } +#line 5519 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 110: /* db_options ::= db_options VGROUPS NK_INTEGER */ #line 235 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_VGROUPS, &yymsp[0].minor.yy0); } -#line 5532 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_VGROUPS, &yymsp[0].minor.yy0); } +#line 5525 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 111: /* db_options ::= db_options SINGLE_STABLE NK_INTEGER */ #line 236 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_SINGLE_STABLE, &yymsp[0].minor.yy0); } -#line 5538 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_SINGLE_STABLE, &yymsp[0].minor.yy0); } +#line 5531 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 112: /* db_options ::= db_options RETENTIONS retention_list */ #line 237 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_RETENTIONS, yymsp[0].minor.yy298); } -#line 5544 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_RETENTIONS, yymsp[0].minor.yy424); } +#line 5537 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 113: /* db_options ::= db_options SCHEMALESS NK_INTEGER */ #line 238 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_SCHEMALESS, &yymsp[0].minor.yy0); } -#line 5550 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_SCHEMALESS, &yymsp[0].minor.yy0); } +#line 5543 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 114: /* db_options ::= db_options WAL_LEVEL NK_INTEGER */ #line 239 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_WAL, &yymsp[0].minor.yy0); } -#line 5556 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_WAL, &yymsp[0].minor.yy0); } +#line 5549 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 115: /* db_options ::= db_options WAL_FSYNC_PERIOD NK_INTEGER */ #line 240 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_FSYNC, &yymsp[0].minor.yy0); } -#line 5562 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_FSYNC, &yymsp[0].minor.yy0); } +#line 5555 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 116: /* db_options ::= db_options WAL_RETENTION_PERIOD NK_INTEGER */ #line 241 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_WAL_RETENTION_PERIOD, &yymsp[0].minor.yy0); } -#line 5568 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_WAL_RETENTION_PERIOD, &yymsp[0].minor.yy0); } +#line 5561 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 117: /* db_options ::= db_options WAL_RETENTION_PERIOD NK_MINUS NK_INTEGER */ #line 242 "sql.y" { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-3].minor.yy122, DB_OPTION_WAL_RETENTION_PERIOD, &t); + yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-3].minor.yy712, DB_OPTION_WAL_RETENTION_PERIOD, &t); } -#line 5578 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +#line 5571 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; case 118: /* db_options ::= db_options WAL_RETENTION_SIZE NK_INTEGER */ #line 247 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_WAL_RETENTION_SIZE, &yymsp[0].minor.yy0); } -#line 5584 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_WAL_RETENTION_SIZE, &yymsp[0].minor.yy0); } +#line 5577 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 119: /* db_options ::= db_options WAL_RETENTION_SIZE NK_MINUS NK_INTEGER */ #line 248 "sql.y" { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-3].minor.yy122, DB_OPTION_WAL_RETENTION_SIZE, &t); + yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-3].minor.yy712, DB_OPTION_WAL_RETENTION_SIZE, &t); } -#line 5594 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +#line 5587 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; case 120: /* db_options ::= db_options WAL_ROLL_PERIOD NK_INTEGER */ #line 253 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_WAL_ROLL_PERIOD, &yymsp[0].minor.yy0); } -#line 5600 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_WAL_ROLL_PERIOD, &yymsp[0].minor.yy0); } +#line 5593 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 121: /* db_options ::= db_options WAL_SEGMENT_SIZE NK_INTEGER */ #line 254 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_WAL_SEGMENT_SIZE, &yymsp[0].minor.yy0); } -#line 5606 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_WAL_SEGMENT_SIZE, &yymsp[0].minor.yy0); } +#line 5599 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 122: /* db_options ::= db_options STT_TRIGGER NK_INTEGER */ #line 255 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_STT_TRIGGER, &yymsp[0].minor.yy0); } -#line 5612 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_STT_TRIGGER, &yymsp[0].minor.yy0); } +#line 5605 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 123: /* db_options ::= db_options TABLE_PREFIX signed */ #line 256 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_TABLE_PREFIX, yymsp[0].minor.yy122); } -#line 5618 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_TABLE_PREFIX, yymsp[0].minor.yy712); } +#line 5611 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 124: /* db_options ::= db_options TABLE_SUFFIX signed */ #line 257 "sql.y" -{ yylhsminor.yy122 = setDatabaseOption(pCxt, yymsp[-2].minor.yy122, DB_OPTION_TABLE_SUFFIX, yymsp[0].minor.yy122); } -#line 5624 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setDatabaseOption(pCxt, yymsp[-2].minor.yy712, DB_OPTION_TABLE_SUFFIX, yymsp[0].minor.yy712); } +#line 5617 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 125: /* alter_db_options ::= alter_db_option */ #line 259 "sql.y" -{ yylhsminor.yy122 = createAlterDatabaseOptions(pCxt); yylhsminor.yy122 = setAlterDatabaseOption(pCxt, yylhsminor.yy122, &yymsp[0].minor.yy29); } -#line 5630 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterDatabaseOptions(pCxt); yylhsminor.yy712 = setAlterDatabaseOption(pCxt, yylhsminor.yy712, &yymsp[0].minor.yy245); } +#line 5623 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; case 126: /* alter_db_options ::= alter_db_options alter_db_option */ #line 260 "sql.y" -{ yylhsminor.yy122 = setAlterDatabaseOption(pCxt, yymsp[-1].minor.yy122, &yymsp[0].minor.yy29); } -#line 5636 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setAlterDatabaseOption(pCxt, yymsp[-1].minor.yy712, &yymsp[0].minor.yy245); } +#line 5629 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; case 127: /* alter_db_option ::= BUFFER NK_INTEGER */ #line 264 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_BUFFER; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5642 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_BUFFER; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5635 "sql.c" break; case 128: /* alter_db_option ::= CACHEMODEL NK_STRING */ #line 265 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_CACHEMODEL; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5647 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_CACHEMODEL; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5640 "sql.c" break; case 129: /* alter_db_option ::= CACHESIZE NK_INTEGER */ #line 266 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_CACHESIZE; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5652 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_CACHESIZE; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5645 "sql.c" break; case 130: /* alter_db_option ::= WAL_FSYNC_PERIOD NK_INTEGER */ #line 267 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_FSYNC; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5657 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_FSYNC; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5650 "sql.c" break; case 131: /* alter_db_option ::= KEEP integer_list */ case 132: /* alter_db_option ::= KEEP variable_list */ yytestcase(yyruleno==132); #line 268 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_KEEP; yymsp[-1].minor.yy29.pList = yymsp[0].minor.yy298; } -#line 5663 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_KEEP; yymsp[-1].minor.yy245.pList = yymsp[0].minor.yy424; } +#line 5656 "sql.c" break; case 133: /* alter_db_option ::= PAGES NK_INTEGER */ #line 270 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_PAGES; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5668 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_PAGES; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5661 "sql.c" break; case 134: /* alter_db_option ::= REPLICA NK_INTEGER */ #line 271 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_REPLICA; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5673 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_REPLICA; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5666 "sql.c" break; case 135: /* alter_db_option ::= WAL_LEVEL NK_INTEGER */ #line 273 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_WAL; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5678 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_WAL; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5671 "sql.c" break; case 136: /* alter_db_option ::= STT_TRIGGER NK_INTEGER */ #line 274 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_STT_TRIGGER; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5683 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_STT_TRIGGER; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5676 "sql.c" break; case 137: /* alter_db_option ::= MINROWS NK_INTEGER */ #line 275 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_MINROWS; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5688 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_MINROWS; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5681 "sql.c" break; case 138: /* alter_db_option ::= WAL_RETENTION_PERIOD NK_INTEGER */ #line 276 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_WAL_RETENTION_PERIOD; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5693 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_WAL_RETENTION_PERIOD; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5686 "sql.c" break; case 139: /* alter_db_option ::= WAL_RETENTION_PERIOD NK_MINUS NK_INTEGER */ #line 277 "sql.y" { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yymsp[-2].minor.yy29.type = DB_OPTION_WAL_RETENTION_PERIOD; yymsp[-2].minor.yy29.val = t; + yymsp[-2].minor.yy245.type = DB_OPTION_WAL_RETENTION_PERIOD; yymsp[-2].minor.yy245.val = t; } -#line 5702 "sql.c" +#line 5695 "sql.c" break; case 140: /* alter_db_option ::= WAL_RETENTION_SIZE NK_INTEGER */ #line 282 "sql.y" -{ yymsp[-1].minor.yy29.type = DB_OPTION_WAL_RETENTION_SIZE; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 5707 "sql.c" +{ yymsp[-1].minor.yy245.type = DB_OPTION_WAL_RETENTION_SIZE; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 5700 "sql.c" break; case 141: /* alter_db_option ::= WAL_RETENTION_SIZE NK_MINUS NK_INTEGER */ #line 283 "sql.y" { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yymsp[-2].minor.yy29.type = DB_OPTION_WAL_RETENTION_SIZE; yymsp[-2].minor.yy29.val = t; + yymsp[-2].minor.yy245.type = DB_OPTION_WAL_RETENTION_SIZE; yymsp[-2].minor.yy245.val = t; } -#line 5716 "sql.c" +#line 5709 "sql.c" break; case 142: /* integer_list ::= NK_INTEGER */ #line 291 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } -#line 5721 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } +#line 5714 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; case 143: /* integer_list ::= integer_list NK_COMMA NK_INTEGER */ - case 384: /* dnode_list ::= dnode_list DNODE NK_INTEGER */ yytestcase(yyruleno==384); + case 383: /* dnode_list ::= dnode_list DNODE NK_INTEGER */ yytestcase(yyruleno==383); #line 292 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-2].minor.yy298, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } -#line 5728 "sql.c" - yymsp[-2].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-2].minor.yy424, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } +#line 5721 "sql.c" + yymsp[-2].minor.yy424 = yylhsminor.yy424; break; case 144: /* variable_list ::= NK_VARIABLE */ #line 296 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } -#line 5734 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = createNodeList(pCxt, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } +#line 5727 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; case 145: /* variable_list ::= variable_list NK_COMMA NK_VARIABLE */ #line 297 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-2].minor.yy298, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } -#line 5740 "sql.c" - yymsp[-2].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-2].minor.yy424, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } +#line 5733 "sql.c" + yymsp[-2].minor.yy424 = yylhsminor.yy424; break; case 146: /* retention_list ::= retention */ case 176: /* multi_create_clause ::= create_subtable_clause */ yytestcase(yyruleno==176); @@ -5746,1829 +5739,1827 @@ static YYACTIONTYPE yy_reduce( case 186: /* column_def_list ::= column_def */ yytestcase(yyruleno==186); case 230: /* rollup_func_list ::= rollup_func_name */ yytestcase(yyruleno==230); case 235: /* col_name_list ::= col_name */ yytestcase(yyruleno==235); - case 296: /* tag_list_opt ::= tag_item */ yytestcase(yyruleno==296); - case 313: /* func_list ::= func */ yytestcase(yyruleno==313); - case 413: /* literal_list ::= signed_literal */ yytestcase(yyruleno==413); - case 480: /* other_para_list ::= star_func_para */ yytestcase(yyruleno==480); - case 486: /* when_then_list ::= when_then_expr */ yytestcase(yyruleno==486); - case 545: /* select_list ::= select_item */ yytestcase(yyruleno==545); - case 556: /* partition_list ::= partition_item */ yytestcase(yyruleno==556); - case 612: /* sort_specification_list ::= sort_specification */ yytestcase(yyruleno==612); + case 295: /* tag_list_opt ::= tag_item */ yytestcase(yyruleno==295); + case 312: /* func_list ::= func */ yytestcase(yyruleno==312); + case 412: /* literal_list ::= signed_literal */ yytestcase(yyruleno==412); + case 479: /* other_para_list ::= star_func_para */ yytestcase(yyruleno==479); + case 485: /* when_then_list ::= when_then_expr */ yytestcase(yyruleno==485); + case 544: /* select_list ::= select_item */ yytestcase(yyruleno==544); + case 555: /* partition_list ::= partition_item */ yytestcase(yyruleno==555); + case 611: /* sort_specification_list ::= sort_specification */ yytestcase(yyruleno==611); #line 301 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, yymsp[0].minor.yy122); } -#line 5759 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = createNodeList(pCxt, yymsp[0].minor.yy712); } +#line 5752 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; case 147: /* retention_list ::= retention_list NK_COMMA retention */ case 180: /* multi_drop_clause ::= multi_drop_clause NK_COMMA drop_table_clause */ yytestcase(yyruleno==180); case 187: /* column_def_list ::= column_def_list NK_COMMA column_def */ yytestcase(yyruleno==187); case 231: /* rollup_func_list ::= rollup_func_list NK_COMMA rollup_func_name */ yytestcase(yyruleno==231); case 236: /* col_name_list ::= col_name_list NK_COMMA col_name */ yytestcase(yyruleno==236); - case 297: /* tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ yytestcase(yyruleno==297); - case 314: /* func_list ::= func_list NK_COMMA func */ yytestcase(yyruleno==314); - case 414: /* literal_list ::= literal_list NK_COMMA signed_literal */ yytestcase(yyruleno==414); - case 481: /* other_para_list ::= other_para_list NK_COMMA star_func_para */ yytestcase(yyruleno==481); - case 546: /* select_list ::= select_list NK_COMMA select_item */ yytestcase(yyruleno==546); - case 557: /* partition_list ::= partition_list NK_COMMA partition_item */ yytestcase(yyruleno==557); - case 613: /* sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ yytestcase(yyruleno==613); + case 296: /* tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ yytestcase(yyruleno==296); + case 313: /* func_list ::= func_list NK_COMMA func */ yytestcase(yyruleno==313); + case 413: /* literal_list ::= literal_list NK_COMMA signed_literal */ yytestcase(yyruleno==413); + case 480: /* other_para_list ::= other_para_list NK_COMMA star_func_para */ yytestcase(yyruleno==480); + case 545: /* select_list ::= select_list NK_COMMA select_item */ yytestcase(yyruleno==545); + case 556: /* partition_list ::= partition_list NK_COMMA partition_item */ yytestcase(yyruleno==556); + case 612: /* sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ yytestcase(yyruleno==612); #line 302 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-2].minor.yy298, yymsp[0].minor.yy122); } -#line 5776 "sql.c" - yymsp[-2].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-2].minor.yy424, yymsp[0].minor.yy712); } +#line 5769 "sql.c" + yymsp[-2].minor.yy424 = yylhsminor.yy424; break; case 148: /* retention ::= NK_VARIABLE NK_COLON NK_VARIABLE */ #line 304 "sql.y" -{ yylhsminor.yy122 = createNodeListNodeEx(pCxt, createDurationValueNode(pCxt, &yymsp[-2].minor.yy0), createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } -#line 5782 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createNodeListNodeEx(pCxt, createDurationValueNode(pCxt, &yymsp[-2].minor.yy0), createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } +#line 5775 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 149: /* speed_opt ::= */ - case 347: /* bufsize_opt ::= */ yytestcase(yyruleno==347); + case 346: /* bufsize_opt ::= */ yytestcase(yyruleno==346); #line 308 "sql.y" -{ yymsp[1].minor.yy652 = 0; } -#line 5789 "sql.c" +{ yymsp[1].minor.yy860 = 0; } +#line 5782 "sql.c" break; case 150: /* speed_opt ::= BWLIMIT NK_INTEGER */ - case 348: /* bufsize_opt ::= BUFSIZE NK_INTEGER */ yytestcase(yyruleno==348); + case 347: /* bufsize_opt ::= BUFSIZE NK_INTEGER */ yytestcase(yyruleno==347); #line 309 "sql.y" -{ yymsp[-1].minor.yy652 = taosStr2Int32(yymsp[0].minor.yy0.z, NULL, 10); } -#line 5795 "sql.c" +{ yymsp[-1].minor.yy860 = taosStr2Int32(yymsp[0].minor.yy0.z, NULL, 10); } +#line 5788 "sql.c" break; case 152: /* start_opt ::= START WITH NK_INTEGER */ case 156: /* end_opt ::= END WITH NK_INTEGER */ yytestcase(yyruleno==156); #line 312 "sql.y" -{ yymsp[-2].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0); } -#line 5801 "sql.c" +{ yymsp[-2].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0); } +#line 5794 "sql.c" break; case 153: /* start_opt ::= START WITH NK_STRING */ case 157: /* end_opt ::= END WITH NK_STRING */ yytestcase(yyruleno==157); #line 313 "sql.y" -{ yymsp[-2].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } -#line 5807 "sql.c" +{ yymsp[-2].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } +#line 5800 "sql.c" break; case 154: /* start_opt ::= START WITH TIMESTAMP NK_STRING */ case 158: /* end_opt ::= END WITH TIMESTAMP NK_STRING */ yytestcase(yyruleno==158); #line 314 "sql.y" -{ yymsp[-3].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } -#line 5813 "sql.c" +{ yymsp[-3].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } +#line 5806 "sql.c" break; case 159: /* cmd ::= CREATE TABLE not_exists_opt full_table_name NK_LP column_def_list NK_RP tags_def_opt table_options */ case 161: /* cmd ::= CREATE STABLE not_exists_opt full_table_name NK_LP column_def_list NK_RP tags_def table_options */ yytestcase(yyruleno==161); #line 323 "sql.y" -{ pCxt->pRootNode = createCreateTableStmt(pCxt, yymsp[-6].minor.yy983, yymsp[-5].minor.yy122, yymsp[-3].minor.yy298, yymsp[-1].minor.yy298, yymsp[0].minor.yy122); } -#line 5819 "sql.c" +{ pCxt->pRootNode = createCreateTableStmt(pCxt, yymsp[-6].minor.yy737, yymsp[-5].minor.yy712, yymsp[-3].minor.yy424, yymsp[-1].minor.yy424, yymsp[0].minor.yy712); } +#line 5812 "sql.c" break; case 160: /* cmd ::= CREATE TABLE multi_create_clause */ #line 324 "sql.y" -{ pCxt->pRootNode = createCreateMultiTableStmt(pCxt, yymsp[0].minor.yy298); } -#line 5824 "sql.c" +{ pCxt->pRootNode = createCreateMultiTableStmt(pCxt, yymsp[0].minor.yy424); } +#line 5817 "sql.c" break; case 162: /* cmd ::= DROP TABLE multi_drop_clause */ #line 327 "sql.y" -{ pCxt->pRootNode = createDropTableStmt(pCxt, yymsp[0].minor.yy298); } -#line 5829 "sql.c" +{ pCxt->pRootNode = createDropTableStmt(pCxt, yymsp[0].minor.yy424); } +#line 5822 "sql.c" break; case 163: /* cmd ::= DROP STABLE exists_opt full_table_name */ #line 328 "sql.y" -{ pCxt->pRootNode = createDropSuperTableStmt(pCxt, yymsp[-1].minor.yy983, yymsp[0].minor.yy122); } -#line 5834 "sql.c" +{ pCxt->pRootNode = createDropSuperTableStmt(pCxt, yymsp[-1].minor.yy737, yymsp[0].minor.yy712); } +#line 5827 "sql.c" break; case 164: /* cmd ::= ALTER TABLE alter_table_clause */ - case 386: /* cmd ::= query_or_subquery */ yytestcase(yyruleno==386); - case 387: /* cmd ::= insert_query */ yytestcase(yyruleno==387); + case 385: /* cmd ::= query_or_subquery */ yytestcase(yyruleno==385); + case 386: /* cmd ::= insert_query */ yytestcase(yyruleno==386); #line 330 "sql.y" -{ pCxt->pRootNode = yymsp[0].minor.yy122; } -#line 5841 "sql.c" +{ pCxt->pRootNode = yymsp[0].minor.yy712; } +#line 5834 "sql.c" break; case 165: /* cmd ::= ALTER STABLE alter_table_clause */ #line 331 "sql.y" -{ pCxt->pRootNode = setAlterSuperTableType(yymsp[0].minor.yy122); } -#line 5846 "sql.c" +{ pCxt->pRootNode = setAlterSuperTableType(yymsp[0].minor.yy712); } +#line 5839 "sql.c" break; case 166: /* alter_table_clause ::= full_table_name alter_table_options */ #line 333 "sql.y" -{ yylhsminor.yy122 = createAlterTableModifyOptions(pCxt, yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 5851 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableModifyOptions(pCxt, yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 5844 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; case 167: /* alter_table_clause ::= full_table_name ADD COLUMN column_name type_name */ #line 335 "sql.y" -{ yylhsminor.yy122 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy122, TSDB_ALTER_TABLE_ADD_COLUMN, &yymsp[-1].minor.yy203, yymsp[0].minor.yy388); } -#line 5857 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy712, TSDB_ALTER_TABLE_ADD_COLUMN, &yymsp[-1].minor.yy329, yymsp[0].minor.yy784); } +#line 5850 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 168: /* alter_table_clause ::= full_table_name DROP COLUMN column_name */ #line 336 "sql.y" -{ yylhsminor.yy122 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy122, TSDB_ALTER_TABLE_DROP_COLUMN, &yymsp[0].minor.yy203); } -#line 5863 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy712, TSDB_ALTER_TABLE_DROP_COLUMN, &yymsp[0].minor.yy329); } +#line 5856 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; case 169: /* alter_table_clause ::= full_table_name MODIFY COLUMN column_name type_name */ #line 338 "sql.y" -{ yylhsminor.yy122 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy122, TSDB_ALTER_TABLE_UPDATE_COLUMN_BYTES, &yymsp[-1].minor.yy203, yymsp[0].minor.yy388); } -#line 5869 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy712, TSDB_ALTER_TABLE_UPDATE_COLUMN_BYTES, &yymsp[-1].minor.yy329, yymsp[0].minor.yy784); } +#line 5862 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 170: /* alter_table_clause ::= full_table_name RENAME COLUMN column_name column_name */ #line 340 "sql.y" -{ yylhsminor.yy122 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy122, TSDB_ALTER_TABLE_UPDATE_COLUMN_NAME, &yymsp[-1].minor.yy203, &yymsp[0].minor.yy203); } -#line 5875 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy712, TSDB_ALTER_TABLE_UPDATE_COLUMN_NAME, &yymsp[-1].minor.yy329, &yymsp[0].minor.yy329); } +#line 5868 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 171: /* alter_table_clause ::= full_table_name ADD TAG column_name type_name */ #line 342 "sql.y" -{ yylhsminor.yy122 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy122, TSDB_ALTER_TABLE_ADD_TAG, &yymsp[-1].minor.yy203, yymsp[0].minor.yy388); } -#line 5881 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy712, TSDB_ALTER_TABLE_ADD_TAG, &yymsp[-1].minor.yy329, yymsp[0].minor.yy784); } +#line 5874 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 172: /* alter_table_clause ::= full_table_name DROP TAG column_name */ #line 343 "sql.y" -{ yylhsminor.yy122 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy122, TSDB_ALTER_TABLE_DROP_TAG, &yymsp[0].minor.yy203); } -#line 5887 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy712, TSDB_ALTER_TABLE_DROP_TAG, &yymsp[0].minor.yy329); } +#line 5880 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; case 173: /* alter_table_clause ::= full_table_name MODIFY TAG column_name type_name */ #line 345 "sql.y" -{ yylhsminor.yy122 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy122, TSDB_ALTER_TABLE_UPDATE_TAG_BYTES, &yymsp[-1].minor.yy203, yymsp[0].minor.yy388); } -#line 5893 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy712, TSDB_ALTER_TABLE_UPDATE_TAG_BYTES, &yymsp[-1].minor.yy329, yymsp[0].minor.yy784); } +#line 5886 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 174: /* alter_table_clause ::= full_table_name RENAME TAG column_name column_name */ #line 347 "sql.y" -{ yylhsminor.yy122 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy122, TSDB_ALTER_TABLE_UPDATE_TAG_NAME, &yymsp[-1].minor.yy203, &yymsp[0].minor.yy203); } -#line 5899 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy712, TSDB_ALTER_TABLE_UPDATE_TAG_NAME, &yymsp[-1].minor.yy329, &yymsp[0].minor.yy329); } +#line 5892 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 175: /* alter_table_clause ::= full_table_name SET TAG column_name NK_EQ signed_literal */ #line 349 "sql.y" -{ yylhsminor.yy122 = createAlterTableSetTag(pCxt, yymsp[-5].minor.yy122, &yymsp[-2].minor.yy203, yymsp[0].minor.yy122); } -#line 5905 "sql.c" - yymsp[-5].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableSetTag(pCxt, yymsp[-5].minor.yy712, &yymsp[-2].minor.yy329, yymsp[0].minor.yy712); } +#line 5898 "sql.c" + yymsp[-5].minor.yy712 = yylhsminor.yy712; break; case 177: /* multi_create_clause ::= multi_create_clause create_subtable_clause */ - case 487: /* when_then_list ::= when_then_list when_then_expr */ yytestcase(yyruleno==487); + case 486: /* when_then_list ::= when_then_list when_then_expr */ yytestcase(yyruleno==486); #line 354 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-1].minor.yy298, yymsp[0].minor.yy122); } -#line 5912 "sql.c" - yymsp[-1].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-1].minor.yy424, yymsp[0].minor.yy712); } +#line 5905 "sql.c" + yymsp[-1].minor.yy424 = yylhsminor.yy424; break; case 178: /* create_subtable_clause ::= not_exists_opt full_table_name USING full_table_name specific_cols_opt TAGS NK_LP expression_list NK_RP table_options */ #line 358 "sql.y" -{ yylhsminor.yy122 = createCreateSubTableClause(pCxt, yymsp[-9].minor.yy983, yymsp[-8].minor.yy122, yymsp[-6].minor.yy122, yymsp[-5].minor.yy298, yymsp[-2].minor.yy298, yymsp[0].minor.yy122); } -#line 5918 "sql.c" - yymsp[-9].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createCreateSubTableClause(pCxt, yymsp[-9].minor.yy737, yymsp[-8].minor.yy712, yymsp[-6].minor.yy712, yymsp[-5].minor.yy424, yymsp[-2].minor.yy424, yymsp[0].minor.yy712); } +#line 5911 "sql.c" + yymsp[-9].minor.yy712 = yylhsminor.yy712; break; case 181: /* drop_table_clause ::= exists_opt full_table_name */ #line 365 "sql.y" -{ yylhsminor.yy122 = createDropTableClause(pCxt, yymsp[-1].minor.yy983, yymsp[0].minor.yy122); } -#line 5924 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createDropTableClause(pCxt, yymsp[-1].minor.yy737, yymsp[0].minor.yy712); } +#line 5917 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; case 183: /* specific_cols_opt ::= NK_LP col_name_list NK_RP */ - case 358: /* col_list_opt ::= NK_LP col_name_list NK_RP */ yytestcase(yyruleno==358); + case 357: /* col_list_opt ::= NK_LP col_name_list NK_RP */ yytestcase(yyruleno==357); #line 370 "sql.y" -{ yymsp[-2].minor.yy298 = yymsp[-1].minor.yy298; } -#line 5931 "sql.c" +{ yymsp[-2].minor.yy424 = yymsp[-1].minor.yy424; } +#line 5924 "sql.c" break; case 184: /* full_table_name ::= table_name */ #line 372 "sql.y" -{ yylhsminor.yy122 = createRealTableNode(pCxt, NULL, &yymsp[0].minor.yy203, NULL); } -#line 5936 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRealTableNode(pCxt, NULL, &yymsp[0].minor.yy329, NULL); } +#line 5929 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; case 185: /* full_table_name ::= db_name NK_DOT table_name */ #line 373 "sql.y" -{ yylhsminor.yy122 = createRealTableNode(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy203, NULL); } -#line 5942 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRealTableNode(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy329, NULL); } +#line 5935 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 188: /* column_def ::= column_name type_name */ #line 380 "sql.y" -{ yylhsminor.yy122 = createColumnDefNode(pCxt, &yymsp[-1].minor.yy203, yymsp[0].minor.yy388, NULL); } -#line 5948 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createColumnDefNode(pCxt, &yymsp[-1].minor.yy329, yymsp[0].minor.yy784, NULL); } +#line 5941 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; case 189: /* type_name ::= BOOL */ #line 385 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_BOOL); } -#line 5954 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_BOOL); } +#line 5947 "sql.c" break; case 190: /* type_name ::= TINYINT */ #line 386 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_TINYINT); } -#line 5959 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_TINYINT); } +#line 5952 "sql.c" break; case 191: /* type_name ::= SMALLINT */ #line 387 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_SMALLINT); } -#line 5964 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_SMALLINT); } +#line 5957 "sql.c" break; case 192: /* type_name ::= INT */ case 193: /* type_name ::= INTEGER */ yytestcase(yyruleno==193); #line 388 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_INT); } -#line 5970 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_INT); } +#line 5963 "sql.c" break; case 194: /* type_name ::= BIGINT */ #line 390 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_BIGINT); } -#line 5975 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_BIGINT); } +#line 5968 "sql.c" break; case 195: /* type_name ::= FLOAT */ #line 391 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_FLOAT); } -#line 5980 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_FLOAT); } +#line 5973 "sql.c" break; case 196: /* type_name ::= DOUBLE */ #line 392 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_DOUBLE); } -#line 5985 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_DOUBLE); } +#line 5978 "sql.c" break; case 197: /* type_name ::= BINARY NK_LP NK_INTEGER NK_RP */ #line 393 "sql.y" -{ yymsp[-3].minor.yy388 = createVarLenDataType(TSDB_DATA_TYPE_BINARY, &yymsp[-1].minor.yy0); } -#line 5990 "sql.c" +{ yymsp[-3].minor.yy784 = createVarLenDataType(TSDB_DATA_TYPE_BINARY, &yymsp[-1].minor.yy0); } +#line 5983 "sql.c" break; case 198: /* type_name ::= TIMESTAMP */ #line 394 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_TIMESTAMP); } -#line 5995 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_TIMESTAMP); } +#line 5988 "sql.c" break; case 199: /* type_name ::= NCHAR NK_LP NK_INTEGER NK_RP */ #line 395 "sql.y" -{ yymsp[-3].minor.yy388 = createVarLenDataType(TSDB_DATA_TYPE_NCHAR, &yymsp[-1].minor.yy0); } -#line 6000 "sql.c" +{ yymsp[-3].minor.yy784 = createVarLenDataType(TSDB_DATA_TYPE_NCHAR, &yymsp[-1].minor.yy0); } +#line 5993 "sql.c" break; case 200: /* type_name ::= TINYINT UNSIGNED */ #line 396 "sql.y" -{ yymsp[-1].minor.yy388 = createDataType(TSDB_DATA_TYPE_UTINYINT); } -#line 6005 "sql.c" +{ yymsp[-1].minor.yy784 = createDataType(TSDB_DATA_TYPE_UTINYINT); } +#line 5998 "sql.c" break; case 201: /* type_name ::= SMALLINT UNSIGNED */ #line 397 "sql.y" -{ yymsp[-1].minor.yy388 = createDataType(TSDB_DATA_TYPE_USMALLINT); } -#line 6010 "sql.c" +{ yymsp[-1].minor.yy784 = createDataType(TSDB_DATA_TYPE_USMALLINT); } +#line 6003 "sql.c" break; case 202: /* type_name ::= INT UNSIGNED */ #line 398 "sql.y" -{ yymsp[-1].minor.yy388 = createDataType(TSDB_DATA_TYPE_UINT); } -#line 6015 "sql.c" +{ yymsp[-1].minor.yy784 = createDataType(TSDB_DATA_TYPE_UINT); } +#line 6008 "sql.c" break; case 203: /* type_name ::= BIGINT UNSIGNED */ #line 399 "sql.y" -{ yymsp[-1].minor.yy388 = createDataType(TSDB_DATA_TYPE_UBIGINT); } -#line 6020 "sql.c" +{ yymsp[-1].minor.yy784 = createDataType(TSDB_DATA_TYPE_UBIGINT); } +#line 6013 "sql.c" break; case 204: /* type_name ::= JSON */ #line 400 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_JSON); } -#line 6025 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_JSON); } +#line 6018 "sql.c" break; case 205: /* type_name ::= VARCHAR NK_LP NK_INTEGER NK_RP */ #line 401 "sql.y" -{ yymsp[-3].minor.yy388 = createVarLenDataType(TSDB_DATA_TYPE_VARCHAR, &yymsp[-1].minor.yy0); } -#line 6030 "sql.c" +{ yymsp[-3].minor.yy784 = createVarLenDataType(TSDB_DATA_TYPE_VARCHAR, &yymsp[-1].minor.yy0); } +#line 6023 "sql.c" break; case 206: /* type_name ::= MEDIUMBLOB */ #line 402 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_MEDIUMBLOB); } -#line 6035 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_MEDIUMBLOB); } +#line 6028 "sql.c" break; case 207: /* type_name ::= BLOB */ #line 403 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_BLOB); } -#line 6040 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_BLOB); } +#line 6033 "sql.c" break; case 208: /* type_name ::= VARBINARY NK_LP NK_INTEGER NK_RP */ #line 404 "sql.y" -{ yymsp[-3].minor.yy388 = createVarLenDataType(TSDB_DATA_TYPE_VARBINARY, &yymsp[-1].minor.yy0); } -#line 6045 "sql.c" +{ yymsp[-3].minor.yy784 = createVarLenDataType(TSDB_DATA_TYPE_VARBINARY, &yymsp[-1].minor.yy0); } +#line 6038 "sql.c" break; case 209: /* type_name ::= GEOMETRY NK_LP NK_INTEGER NK_RP */ #line 405 "sql.y" -{ yymsp[-3].minor.yy388 = createVarLenDataType(TSDB_DATA_TYPE_GEOMETRY, &yymsp[-1].minor.yy0); } -#line 6050 "sql.c" +{ yymsp[-3].minor.yy784 = createVarLenDataType(TSDB_DATA_TYPE_GEOMETRY, &yymsp[-1].minor.yy0); } +#line 6043 "sql.c" break; case 210: /* type_name ::= DECIMAL */ #line 406 "sql.y" -{ yymsp[0].minor.yy388 = createDataType(TSDB_DATA_TYPE_DECIMAL); } -#line 6055 "sql.c" +{ yymsp[0].minor.yy784 = createDataType(TSDB_DATA_TYPE_DECIMAL); } +#line 6048 "sql.c" break; case 211: /* type_name ::= DECIMAL NK_LP NK_INTEGER NK_RP */ #line 407 "sql.y" -{ yymsp[-3].minor.yy388 = createDataType(TSDB_DATA_TYPE_DECIMAL); } -#line 6060 "sql.c" +{ yymsp[-3].minor.yy784 = createDataType(TSDB_DATA_TYPE_DECIMAL); } +#line 6053 "sql.c" break; case 212: /* type_name ::= DECIMAL NK_LP NK_INTEGER NK_COMMA NK_INTEGER NK_RP */ #line 408 "sql.y" -{ yymsp[-5].minor.yy388 = createDataType(TSDB_DATA_TYPE_DECIMAL); } -#line 6065 "sql.c" +{ yymsp[-5].minor.yy784 = createDataType(TSDB_DATA_TYPE_DECIMAL); } +#line 6058 "sql.c" break; case 215: /* tags_def ::= TAGS NK_LP column_def_list NK_RP */ - case 361: /* tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP */ yytestcase(yyruleno==361); + case 360: /* tag_def_or_ref_opt ::= TAGS NK_LP col_name_list NK_RP */ yytestcase(yyruleno==360); #line 417 "sql.y" -{ yymsp[-3].minor.yy298 = yymsp[-1].minor.yy298; } -#line 6071 "sql.c" +{ yymsp[-3].minor.yy424 = yymsp[-1].minor.yy424; } +#line 6064 "sql.c" break; case 216: /* table_options ::= */ #line 419 "sql.y" -{ yymsp[1].minor.yy122 = createDefaultTableOptions(pCxt); } -#line 6076 "sql.c" +{ yymsp[1].minor.yy712 = createDefaultTableOptions(pCxt); } +#line 6069 "sql.c" break; case 217: /* table_options ::= table_options COMMENT NK_STRING */ #line 420 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-2].minor.yy122, TABLE_OPTION_COMMENT, &yymsp[0].minor.yy0); } -#line 6081 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-2].minor.yy712, TABLE_OPTION_COMMENT, &yymsp[0].minor.yy0); } +#line 6074 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 218: /* table_options ::= table_options MAX_DELAY duration_list */ #line 421 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-2].minor.yy122, TABLE_OPTION_MAXDELAY, yymsp[0].minor.yy298); } -#line 6087 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-2].minor.yy712, TABLE_OPTION_MAXDELAY, yymsp[0].minor.yy424); } +#line 6080 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 219: /* table_options ::= table_options WATERMARK duration_list */ #line 422 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-2].minor.yy122, TABLE_OPTION_WATERMARK, yymsp[0].minor.yy298); } -#line 6093 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-2].minor.yy712, TABLE_OPTION_WATERMARK, yymsp[0].minor.yy424); } +#line 6086 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 220: /* table_options ::= table_options ROLLUP NK_LP rollup_func_list NK_RP */ #line 423 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-4].minor.yy122, TABLE_OPTION_ROLLUP, yymsp[-1].minor.yy298); } -#line 6099 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-4].minor.yy712, TABLE_OPTION_ROLLUP, yymsp[-1].minor.yy424); } +#line 6092 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 221: /* table_options ::= table_options TTL NK_INTEGER */ #line 424 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-2].minor.yy122, TABLE_OPTION_TTL, &yymsp[0].minor.yy0); } -#line 6105 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-2].minor.yy712, TABLE_OPTION_TTL, &yymsp[0].minor.yy0); } +#line 6098 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 222: /* table_options ::= table_options SMA NK_LP col_name_list NK_RP */ #line 425 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-4].minor.yy122, TABLE_OPTION_SMA, yymsp[-1].minor.yy298); } -#line 6111 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-4].minor.yy712, TABLE_OPTION_SMA, yymsp[-1].minor.yy424); } +#line 6104 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; case 223: /* table_options ::= table_options DELETE_MARK duration_list */ #line 426 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-2].minor.yy122, TABLE_OPTION_DELETE_MARK, yymsp[0].minor.yy298); } -#line 6117 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-2].minor.yy712, TABLE_OPTION_DELETE_MARK, yymsp[0].minor.yy424); } +#line 6110 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; case 224: /* alter_table_options ::= alter_table_option */ #line 428 "sql.y" -{ yylhsminor.yy122 = createAlterTableOptions(pCxt); yylhsminor.yy122 = setTableOption(pCxt, yylhsminor.yy122, yymsp[0].minor.yy29.type, &yymsp[0].minor.yy29.val); } -#line 6123 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createAlterTableOptions(pCxt); yylhsminor.yy712 = setTableOption(pCxt, yylhsminor.yy712, yymsp[0].minor.yy245.type, &yymsp[0].minor.yy245.val); } +#line 6116 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; case 225: /* alter_table_options ::= alter_table_options alter_table_option */ #line 429 "sql.y" -{ yylhsminor.yy122 = setTableOption(pCxt, yymsp[-1].minor.yy122, yymsp[0].minor.yy29.type, &yymsp[0].minor.yy29.val); } -#line 6129 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setTableOption(pCxt, yymsp[-1].minor.yy712, yymsp[0].minor.yy245.type, &yymsp[0].minor.yy245.val); } +#line 6122 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; case 226: /* alter_table_option ::= COMMENT NK_STRING */ #line 433 "sql.y" -{ yymsp[-1].minor.yy29.type = TABLE_OPTION_COMMENT; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 6135 "sql.c" +{ yymsp[-1].minor.yy245.type = TABLE_OPTION_COMMENT; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 6128 "sql.c" break; case 227: /* alter_table_option ::= TTL NK_INTEGER */ #line 434 "sql.y" -{ yymsp[-1].minor.yy29.type = TABLE_OPTION_TTL; yymsp[-1].minor.yy29.val = yymsp[0].minor.yy0; } -#line 6140 "sql.c" +{ yymsp[-1].minor.yy245.type = TABLE_OPTION_TTL; yymsp[-1].minor.yy245.val = yymsp[0].minor.yy0; } +#line 6133 "sql.c" break; case 228: /* duration_list ::= duration_literal */ - case 443: /* expression_list ::= expr_or_subquery */ yytestcase(yyruleno==443); + case 442: /* expression_list ::= expr_or_subquery */ yytestcase(yyruleno==442); #line 438 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); } -#line 6146 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = createNodeList(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); } +#line 6139 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; case 229: /* duration_list ::= duration_list NK_COMMA duration_literal */ - case 444: /* expression_list ::= expression_list NK_COMMA expr_or_subquery */ yytestcase(yyruleno==444); + case 443: /* expression_list ::= expression_list NK_COMMA expr_or_subquery */ yytestcase(yyruleno==443); #line 439 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-2].minor.yy298, releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); } -#line 6153 "sql.c" - yymsp[-2].minor.yy298 = yylhsminor.yy298; +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-2].minor.yy424, releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); } +#line 6146 "sql.c" + yymsp[-2].minor.yy424 = yylhsminor.yy424; break; case 232: /* rollup_func_name ::= function_name */ #line 446 "sql.y" -{ yylhsminor.yy122 = createFunctionNode(pCxt, &yymsp[0].minor.yy203, NULL); } -#line 6159 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createFunctionNode(pCxt, &yymsp[0].minor.yy329, NULL); } +#line 6152 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; case 233: /* rollup_func_name ::= FIRST */ case 234: /* rollup_func_name ::= LAST */ yytestcase(yyruleno==234); - case 299: /* tag_item ::= QTAGS */ yytestcase(yyruleno==299); + case 298: /* tag_item ::= QTAGS */ yytestcase(yyruleno==298); #line 447 "sql.y" -{ yylhsminor.yy122 = createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL); } -#line 6167 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL); } +#line 6160 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; case 237: /* col_name ::= column_name */ - case 300: /* tag_item ::= column_name */ yytestcase(yyruleno==300); + case 299: /* tag_item ::= column_name */ yytestcase(yyruleno==299); #line 455 "sql.y" -{ yylhsminor.yy122 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy203); } -#line 6174 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy329); } +#line 6167 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; case 238: /* cmd ::= SHOW DNODES */ #line 458 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_DNODES_STMT); } -#line 6180 "sql.c" +#line 6173 "sql.c" break; case 239: /* cmd ::= SHOW USERS */ #line 459 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_USERS_STMT); } -#line 6185 "sql.c" +#line 6178 "sql.c" break; case 240: /* cmd ::= SHOW USER PRIVILEGES */ #line 460 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_USER_PRIVILEGES_STMT); } -#line 6190 "sql.c" +#line 6183 "sql.c" break; case 241: /* cmd ::= SHOW db_kind_opt DATABASES */ #line 461 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_DATABASES_STMT); - setShowKind(pCxt, pCxt->pRootNode, yymsp[-1].minor.yy579); + setShowKind(pCxt, pCxt->pRootNode, yymsp[-1].minor.yy289); } -#line 6198 "sql.c" +#line 6191 "sql.c" break; case 242: /* cmd ::= SHOW table_kind_db_name_cond_opt TABLES like_pattern_opt */ #line 465 "sql.y" { - pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TABLES_STMT, yymsp[-2].minor.yy343.pDbName, yymsp[0].minor.yy122, OP_TYPE_LIKE); - setShowKind(pCxt, pCxt->pRootNode, yymsp[-2].minor.yy343.kind); + pCxt->pRootNode = createShowTablesStmt(pCxt, yymsp[-2].minor.yy517, yymsp[0].minor.yy712, OP_TYPE_LIKE); } -#line 6206 "sql.c" +#line 6198 "sql.c" break; case 243: /* cmd ::= SHOW db_name_cond_opt STABLES like_pattern_opt */ -#line 469 "sql.y" -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_STABLES_STMT, yymsp[-2].minor.yy122, yymsp[0].minor.yy122, OP_TYPE_LIKE); } -#line 6211 "sql.c" +#line 468 "sql.y" +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_STABLES_STMT, yymsp[-2].minor.yy712, yymsp[0].minor.yy712, OP_TYPE_LIKE); } +#line 6203 "sql.c" break; case 244: /* cmd ::= SHOW db_name_cond_opt VGROUPS */ -#line 470 "sql.y" -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_VGROUPS_STMT, yymsp[-1].minor.yy122, NULL, OP_TYPE_LIKE); } -#line 6216 "sql.c" +#line 469 "sql.y" +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_VGROUPS_STMT, yymsp[-1].minor.yy712, NULL, OP_TYPE_LIKE); } +#line 6208 "sql.c" break; case 245: /* cmd ::= SHOW MNODES */ -#line 471 "sql.y" +#line 470 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_MNODES_STMT); } -#line 6221 "sql.c" +#line 6213 "sql.c" break; case 246: /* cmd ::= SHOW QNODES */ -#line 473 "sql.y" +#line 472 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_QNODES_STMT); } -#line 6226 "sql.c" +#line 6218 "sql.c" break; case 247: /* cmd ::= SHOW FUNCTIONS */ -#line 474 "sql.y" +#line 473 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_FUNCTIONS_STMT); } -#line 6231 "sql.c" +#line 6223 "sql.c" break; case 248: /* cmd ::= SHOW INDEXES FROM table_name_cond from_db_opt */ -#line 475 "sql.y" -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_INDEXES_STMT, yymsp[0].minor.yy122, yymsp[-1].minor.yy122, OP_TYPE_EQUAL); } -#line 6236 "sql.c" +#line 474 "sql.y" +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_INDEXES_STMT, yymsp[0].minor.yy712, yymsp[-1].minor.yy712, OP_TYPE_EQUAL); } +#line 6228 "sql.c" break; case 249: /* cmd ::= SHOW INDEXES FROM db_name NK_DOT table_name */ -#line 476 "sql.y" -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_INDEXES_STMT, createIdentifierValueNode(pCxt, &yymsp[-2].minor.yy203), createIdentifierValueNode(pCxt, &yymsp[0].minor.yy203), OP_TYPE_EQUAL); } -#line 6241 "sql.c" +#line 475 "sql.y" +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_INDEXES_STMT, createIdentifierValueNode(pCxt, &yymsp[-2].minor.yy329), createIdentifierValueNode(pCxt, &yymsp[0].minor.yy329), OP_TYPE_EQUAL); } +#line 6233 "sql.c" break; case 250: /* cmd ::= SHOW STREAMS */ -#line 477 "sql.y" +#line 476 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_STREAMS_STMT); } -#line 6246 "sql.c" +#line 6238 "sql.c" break; case 251: /* cmd ::= SHOW ACCOUNTS */ -#line 478 "sql.y" +#line 477 "sql.y" { pCxt->errCode = generateSyntaxErrMsg(&pCxt->msgBuf, TSDB_CODE_PAR_EXPRIE_STATEMENT); } -#line 6251 "sql.c" +#line 6243 "sql.c" break; case 252: /* cmd ::= SHOW APPS */ -#line 479 "sql.y" +#line 478 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_APPS_STMT); } -#line 6256 "sql.c" +#line 6248 "sql.c" break; case 253: /* cmd ::= SHOW CONNECTIONS */ -#line 480 "sql.y" +#line 479 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_CONNECTIONS_STMT); } -#line 6261 "sql.c" +#line 6253 "sql.c" break; case 254: /* cmd ::= SHOW LICENCES */ case 255: /* cmd ::= SHOW GRANTS */ yytestcase(yyruleno==255); -#line 481 "sql.y" +#line 480 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_LICENCES_STMT); } -#line 6267 "sql.c" +#line 6259 "sql.c" break; case 256: /* cmd ::= SHOW CREATE DATABASE db_name */ -#line 483 "sql.y" -{ pCxt->pRootNode = createShowCreateDatabaseStmt(pCxt, &yymsp[0].minor.yy203); } -#line 6272 "sql.c" +#line 482 "sql.y" +{ pCxt->pRootNode = createShowCreateDatabaseStmt(pCxt, &yymsp[0].minor.yy329); } +#line 6264 "sql.c" break; case 257: /* cmd ::= SHOW CREATE TABLE full_table_name */ -#line 484 "sql.y" -{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_TABLE_STMT, yymsp[0].minor.yy122); } -#line 6277 "sql.c" +#line 483 "sql.y" +{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_TABLE_STMT, yymsp[0].minor.yy712); } +#line 6269 "sql.c" break; case 258: /* cmd ::= SHOW CREATE STABLE full_table_name */ -#line 485 "sql.y" -{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_STABLE_STMT, yymsp[0].minor.yy122); } -#line 6282 "sql.c" +#line 484 "sql.y" +{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_STABLE_STMT, yymsp[0].minor.yy712); } +#line 6274 "sql.c" break; case 259: /* cmd ::= SHOW QUERIES */ -#line 486 "sql.y" +#line 485 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_QUERIES_STMT); } -#line 6287 "sql.c" +#line 6279 "sql.c" break; case 260: /* cmd ::= SHOW SCORES */ -#line 487 "sql.y" +#line 486 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_SCORES_STMT); } -#line 6292 "sql.c" +#line 6284 "sql.c" break; case 261: /* cmd ::= SHOW TOPICS */ -#line 488 "sql.y" +#line 487 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_TOPICS_STMT); } -#line 6297 "sql.c" +#line 6289 "sql.c" break; case 262: /* cmd ::= SHOW VARIABLES */ case 263: /* cmd ::= SHOW CLUSTER VARIABLES */ yytestcase(yyruleno==263); -#line 489 "sql.y" +#line 488 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_VARIABLES_STMT); } -#line 6303 "sql.c" +#line 6295 "sql.c" break; case 264: /* cmd ::= SHOW LOCAL VARIABLES */ -#line 491 "sql.y" +#line 490 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_LOCAL_VARIABLES_STMT); } -#line 6308 "sql.c" +#line 6300 "sql.c" break; case 265: /* cmd ::= SHOW DNODE NK_INTEGER VARIABLES like_pattern_opt */ -#line 492 "sql.y" -{ pCxt->pRootNode = createShowDnodeVariablesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[-2].minor.yy0), yymsp[0].minor.yy122); } -#line 6313 "sql.c" +#line 491 "sql.y" +{ pCxt->pRootNode = createShowDnodeVariablesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[-2].minor.yy0), yymsp[0].minor.yy712); } +#line 6305 "sql.c" break; case 266: /* cmd ::= SHOW BNODES */ -#line 493 "sql.y" +#line 492 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_BNODES_STMT); } -#line 6318 "sql.c" +#line 6310 "sql.c" break; case 267: /* cmd ::= SHOW SNODES */ -#line 494 "sql.y" +#line 493 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_SNODES_STMT); } -#line 6323 "sql.c" +#line 6315 "sql.c" break; case 268: /* cmd ::= SHOW CLUSTER */ -#line 495 "sql.y" +#line 494 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_CLUSTER_STMT); } -#line 6328 "sql.c" +#line 6320 "sql.c" break; case 269: /* cmd ::= SHOW TRANSACTIONS */ -#line 496 "sql.y" +#line 495 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_TRANSACTIONS_STMT); } -#line 6333 "sql.c" +#line 6325 "sql.c" break; case 270: /* cmd ::= SHOW TABLE DISTRIBUTED full_table_name */ -#line 497 "sql.y" -{ pCxt->pRootNode = createShowTableDistributedStmt(pCxt, yymsp[0].minor.yy122); } -#line 6338 "sql.c" +#line 496 "sql.y" +{ pCxt->pRootNode = createShowTableDistributedStmt(pCxt, yymsp[0].minor.yy712); } +#line 6330 "sql.c" break; case 271: /* cmd ::= SHOW CONSUMERS */ -#line 498 "sql.y" +#line 497 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_CONSUMERS_STMT); } -#line 6343 "sql.c" +#line 6335 "sql.c" break; case 272: /* cmd ::= SHOW SUBSCRIPTIONS */ -#line 499 "sql.y" +#line 498 "sql.y" { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_SUBSCRIPTIONS_STMT); } -#line 6348 "sql.c" +#line 6340 "sql.c" break; case 273: /* cmd ::= SHOW TAGS FROM table_name_cond from_db_opt */ -#line 500 "sql.y" -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TAGS_STMT, yymsp[0].minor.yy122, yymsp[-1].minor.yy122, OP_TYPE_EQUAL); } -#line 6353 "sql.c" +#line 499 "sql.y" +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TAGS_STMT, yymsp[0].minor.yy712, yymsp[-1].minor.yy712, OP_TYPE_EQUAL); } +#line 6345 "sql.c" break; case 274: /* cmd ::= SHOW TAGS FROM db_name NK_DOT table_name */ -#line 501 "sql.y" -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TAGS_STMT, createIdentifierValueNode(pCxt, &yymsp[-2].minor.yy203), createIdentifierValueNode(pCxt, &yymsp[0].minor.yy203), OP_TYPE_EQUAL); } -#line 6358 "sql.c" +#line 500 "sql.y" +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TAGS_STMT, createIdentifierValueNode(pCxt, &yymsp[-2].minor.yy329), createIdentifierValueNode(pCxt, &yymsp[0].minor.yy329), OP_TYPE_EQUAL); } +#line 6350 "sql.c" break; case 275: /* cmd ::= SHOW TABLE TAGS tag_list_opt FROM table_name_cond from_db_opt */ -#line 502 "sql.y" -{ pCxt->pRootNode = createShowTableTagsStmt(pCxt, yymsp[-1].minor.yy122, yymsp[0].minor.yy122, yymsp[-3].minor.yy298); } -#line 6363 "sql.c" +#line 501 "sql.y" +{ pCxt->pRootNode = createShowTableTagsStmt(pCxt, yymsp[-1].minor.yy712, yymsp[0].minor.yy712, yymsp[-3].minor.yy424); } +#line 6355 "sql.c" break; case 276: /* cmd ::= SHOW TABLE TAGS tag_list_opt FROM db_name NK_DOT table_name */ -#line 503 "sql.y" -{ pCxt->pRootNode = createShowTableTagsStmt(pCxt, createIdentifierValueNode(pCxt, &yymsp[0].minor.yy203), createIdentifierValueNode(pCxt, &yymsp[-2].minor.yy203), yymsp[-4].minor.yy298); } -#line 6368 "sql.c" +#line 502 "sql.y" +{ pCxt->pRootNode = createShowTableTagsStmt(pCxt, createIdentifierValueNode(pCxt, &yymsp[0].minor.yy329), createIdentifierValueNode(pCxt, &yymsp[-2].minor.yy329), yymsp[-4].minor.yy424); } +#line 6360 "sql.c" break; case 277: /* cmd ::= SHOW VNODES ON DNODE NK_INTEGER */ -#line 504 "sql.y" +#line 503 "sql.y" { pCxt->pRootNode = createShowVnodesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0), NULL); } -#line 6373 "sql.c" +#line 6365 "sql.c" break; case 278: /* cmd ::= SHOW VNODES */ -#line 505 "sql.y" +#line 504 "sql.y" { pCxt->pRootNode = createShowVnodesStmt(pCxt, NULL, NULL); } -#line 6378 "sql.c" +#line 6370 "sql.c" break; case 279: /* cmd ::= SHOW db_name_cond_opt ALIVE */ -#line 507 "sql.y" -{ pCxt->pRootNode = createShowAliveStmt(pCxt, yymsp[-1].minor.yy122, QUERY_NODE_SHOW_DB_ALIVE_STMT); } -#line 6383 "sql.c" +#line 506 "sql.y" +{ pCxt->pRootNode = createShowAliveStmt(pCxt, yymsp[-1].minor.yy712, QUERY_NODE_SHOW_DB_ALIVE_STMT); } +#line 6375 "sql.c" break; case 280: /* cmd ::= SHOW CLUSTER ALIVE */ -#line 508 "sql.y" +#line 507 "sql.y" { pCxt->pRootNode = createShowAliveStmt(pCxt, NULL, QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT); } -#line 6388 "sql.c" +#line 6380 "sql.c" break; case 281: /* table_kind_db_name_cond_opt ::= */ -#line 512 "sql.y" -{ yymsp[1].minor.yy343.kind = SHOW_KIND_ALL; yymsp[1].minor.yy343.pDbName = NULL; } -#line 6393 "sql.c" +#line 511 "sql.y" +{ yymsp[1].minor.yy517.kind = SHOW_KIND_ALL; yymsp[1].minor.yy517.dbName = nil_token; } +#line 6385 "sql.c" break; case 282: /* table_kind_db_name_cond_opt ::= table_kind */ +#line 512 "sql.y" +{ yylhsminor.yy517.kind = yymsp[0].minor.yy289; yylhsminor.yy517.dbName = nil_token; } +#line 6390 "sql.c" + yymsp[0].minor.yy517 = yylhsminor.yy517; + break; + case 283: /* table_kind_db_name_cond_opt ::= db_name NK_DOT */ #line 513 "sql.y" -{ yylhsminor.yy343.kind = yymsp[0].minor.yy579; yylhsminor.yy343.pDbName = NULL; } -#line 6398 "sql.c" - yymsp[0].minor.yy343 = yylhsminor.yy343; +{ yylhsminor.yy517.kind = SHOW_KIND_ALL; yylhsminor.yy517.dbName = yymsp[-1].minor.yy329; } +#line 6396 "sql.c" + yymsp[-1].minor.yy517 = yylhsminor.yy517; break; - case 283: /* table_kind_db_name_cond_opt ::= db_name_cond */ + case 284: /* table_kind_db_name_cond_opt ::= table_kind db_name NK_DOT */ #line 514 "sql.y" -{ yylhsminor.yy343.kind = SHOW_KIND_ALL; yylhsminor.yy343.pDbName = yymsp[0].minor.yy122; } -#line 6404 "sql.c" - yymsp[0].minor.yy343 = yylhsminor.yy343; - break; - case 284: /* table_kind_db_name_cond_opt ::= table_kind db_name_cond */ -#line 515 "sql.y" -{ yylhsminor.yy343.kind = yymsp[-1].minor.yy579; yylhsminor.yy343.pDbName = yymsp[0].minor.yy122; } -#line 6410 "sql.c" - yymsp[-1].minor.yy343 = yylhsminor.yy343; +{ yylhsminor.yy517.kind = yymsp[-2].minor.yy289; yylhsminor.yy517.dbName = yymsp[-1].minor.yy329; } +#line 6402 "sql.c" + yymsp[-2].minor.yy517 = yylhsminor.yy517; break; case 285: /* table_kind ::= NORMAL */ -#line 519 "sql.y" -{ yymsp[0].minor.yy579 = SHOW_KIND_TABLES_NORMAL; } -#line 6416 "sql.c" +#line 518 "sql.y" +{ yymsp[0].minor.yy289 = SHOW_KIND_TABLES_NORMAL; } +#line 6408 "sql.c" break; case 286: /* table_kind ::= CHILD */ -#line 520 "sql.y" -{ yymsp[0].minor.yy579 = SHOW_KIND_TABLES_CHILD; } -#line 6421 "sql.c" +#line 519 "sql.y" +{ yymsp[0].minor.yy289 = SHOW_KIND_TABLES_CHILD; } +#line 6413 "sql.c" break; - case 287: /* db_name_cond ::= db_name NK_DOT */ - case 289: /* db_name_cond_opt ::= db_name NK_DOT */ yytestcase(yyruleno==289); + case 287: /* db_name_cond_opt ::= */ + case 292: /* from_db_opt ::= */ yytestcase(yyruleno==292); +#line 521 "sql.y" +{ yymsp[1].minor.yy712 = createDefaultDatabaseCondValue(pCxt); } +#line 6419 "sql.c" + break; + case 288: /* db_name_cond_opt ::= db_name NK_DOT */ #line 522 "sql.y" -{ yylhsminor.yy122 = createIdentifierValueNode(pCxt, &yymsp[-1].minor.yy203); } -#line 6427 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createIdentifierValueNode(pCxt, &yymsp[-1].minor.yy329); } +#line 6424 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 288: /* db_name_cond_opt ::= */ - case 293: /* from_db_opt ::= */ yytestcase(yyruleno==293); -#line 524 "sql.y" -{ yymsp[1].minor.yy122 = createDefaultDatabaseCondValue(pCxt); } -#line 6434 "sql.c" + case 290: /* like_pattern_opt ::= LIKE NK_STRING */ +#line 525 "sql.y" +{ yymsp[-1].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } +#line 6430 "sql.c" break; - case 291: /* like_pattern_opt ::= LIKE NK_STRING */ -#line 528 "sql.y" -{ yymsp[-1].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } -#line 6439 "sql.c" + case 291: /* table_name_cond ::= table_name */ +#line 527 "sql.y" +{ yylhsminor.yy712 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy329); } +#line 6435 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 292: /* table_name_cond ::= table_name */ + case 293: /* from_db_opt ::= FROM db_name */ #line 530 "sql.y" -{ yylhsminor.yy122 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy203); } -#line 6444 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yymsp[-1].minor.yy712 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy329); } +#line 6441 "sql.c" break; - case 294: /* from_db_opt ::= FROM db_name */ -#line 533 "sql.y" -{ yymsp[-1].minor.yy122 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy203); } -#line 6450 "sql.c" + case 297: /* tag_item ::= TBNAME */ +#line 538 "sql.y" +{ yylhsminor.yy712 = setProjectionAlias(pCxt, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL), &yymsp[0].minor.yy0); } +#line 6446 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 298: /* tag_item ::= TBNAME */ + case 300: /* tag_item ::= column_name column_alias */ #line 541 "sql.y" -{ yylhsminor.yy122 = setProjectionAlias(pCxt, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL), &yymsp[0].minor.yy0); } -#line 6455 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-1].minor.yy329), &yymsp[0].minor.yy329); } +#line 6452 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 301: /* tag_item ::= column_name column_alias */ -#line 544 "sql.y" -{ yylhsminor.yy122 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-1].minor.yy203), &yymsp[0].minor.yy203); } -#line 6461 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; + case 301: /* tag_item ::= column_name AS column_alias */ +#line 542 "sql.y" +{ yylhsminor.yy712 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-2].minor.yy329), &yymsp[0].minor.yy329); } +#line 6458 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 302: /* tag_item ::= column_name AS column_alias */ -#line 545 "sql.y" -{ yylhsminor.yy122 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-2].minor.yy203), &yymsp[0].minor.yy203); } -#line 6467 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 302: /* db_kind_opt ::= */ +#line 546 "sql.y" +{ yymsp[1].minor.yy289 = SHOW_KIND_ALL; } +#line 6464 "sql.c" break; - case 303: /* db_kind_opt ::= */ -#line 549 "sql.y" -{ yymsp[1].minor.yy579 = SHOW_KIND_ALL; } -#line 6473 "sql.c" + case 303: /* db_kind_opt ::= USER */ +#line 547 "sql.y" +{ yymsp[0].minor.yy289 = SHOW_KIND_DATABASES_USER; } +#line 6469 "sql.c" break; - case 304: /* db_kind_opt ::= USER */ -#line 550 "sql.y" -{ yymsp[0].minor.yy579 = SHOW_KIND_DATABASES_USER; } -#line 6478 "sql.c" + case 304: /* db_kind_opt ::= SYSTEM */ +#line 548 "sql.y" +{ yymsp[0].minor.yy289 = SHOW_KIND_DATABASES_SYSTEM; } +#line 6474 "sql.c" break; - case 305: /* db_kind_opt ::= SYSTEM */ -#line 551 "sql.y" -{ yymsp[0].minor.yy579 = SHOW_KIND_DATABASES_SYSTEM; } -#line 6483 "sql.c" + case 305: /* cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options */ +#line 552 "sql.y" +{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_SMA, yymsp[-4].minor.yy737, yymsp[-3].minor.yy712, yymsp[-1].minor.yy712, NULL, yymsp[0].minor.yy712); } +#line 6479 "sql.c" break; - case 306: /* cmd ::= CREATE SMA INDEX not_exists_opt col_name ON full_table_name index_options */ + case 306: /* cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP */ +#line 554 "sql.y" +{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_NORMAL, yymsp[-6].minor.yy737, yymsp[-5].minor.yy712, yymsp[-3].minor.yy712, yymsp[-1].minor.yy424, NULL); } +#line 6484 "sql.c" + break; + case 307: /* cmd ::= DROP INDEX exists_opt full_index_name */ #line 555 "sql.y" -{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_SMA, yymsp[-4].minor.yy983, yymsp[-3].minor.yy122, yymsp[-1].minor.yy122, NULL, yymsp[0].minor.yy122); } -#line 6488 "sql.c" +{ pCxt->pRootNode = createDropIndexStmt(pCxt, yymsp[-1].minor.yy737, yymsp[0].minor.yy712); } +#line 6489 "sql.c" break; - case 307: /* cmd ::= CREATE INDEX not_exists_opt col_name ON full_table_name NK_LP col_name_list NK_RP */ + case 308: /* full_index_name ::= index_name */ #line 557 "sql.y" -{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_NORMAL, yymsp[-6].minor.yy983, yymsp[-5].minor.yy122, yymsp[-3].minor.yy122, yymsp[-1].minor.yy298, NULL); } -#line 6493 "sql.c" +{ yylhsminor.yy712 = createRealTableNodeForIndexName(pCxt, NULL, &yymsp[0].minor.yy329); } +#line 6494 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 308: /* cmd ::= DROP INDEX exists_opt full_index_name */ + case 309: /* full_index_name ::= db_name NK_DOT index_name */ #line 558 "sql.y" -{ pCxt->pRootNode = createDropIndexStmt(pCxt, yymsp[-1].minor.yy983, yymsp[0].minor.yy122); } -#line 6498 "sql.c" +{ yylhsminor.yy712 = createRealTableNodeForIndexName(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy329); } +#line 6500 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 309: /* full_index_name ::= index_name */ -#line 560 "sql.y" -{ yylhsminor.yy122 = createRealTableNodeForIndexName(pCxt, NULL, &yymsp[0].minor.yy203); } -#line 6503 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; - break; - case 310: /* full_index_name ::= db_name NK_DOT index_name */ + case 310: /* index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ #line 561 "sql.y" -{ yylhsminor.yy122 = createRealTableNodeForIndexName(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy203); } -#line 6509 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yymsp[-9].minor.yy712 = createIndexOption(pCxt, yymsp[-7].minor.yy424, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), NULL, yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 6506 "sql.c" break; - case 311: /* index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ + case 311: /* index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt */ #line 564 "sql.y" -{ yymsp[-9].minor.yy122 = createIndexOption(pCxt, yymsp[-7].minor.yy298, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), NULL, yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 6515 "sql.c" +{ yymsp[-11].minor.yy712 = createIndexOption(pCxt, yymsp[-9].minor.yy424, releaseRawExprNode(pCxt, yymsp[-5].minor.yy712), releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 6511 "sql.c" break; - case 312: /* index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt sma_stream_opt */ -#line 567 "sql.y" -{ yymsp[-11].minor.yy122 = createIndexOption(pCxt, yymsp[-9].minor.yy298, releaseRawExprNode(pCxt, yymsp[-5].minor.yy122), releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 6520 "sql.c" + case 314: /* func ::= sma_func_name NK_LP expression_list NK_RP */ +#line 571 "sql.y" +{ yylhsminor.yy712 = createFunctionNode(pCxt, &yymsp[-3].minor.yy329, yymsp[-1].minor.yy424); } +#line 6516 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 315: /* func ::= sma_func_name NK_LP expression_list NK_RP */ -#line 574 "sql.y" -{ yylhsminor.yy122 = createFunctionNode(pCxt, &yymsp[-3].minor.yy203, yymsp[-1].minor.yy298); } -#line 6525 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; + case 315: /* sma_func_name ::= function_name */ + case 529: /* alias_opt ::= table_alias */ yytestcase(yyruleno==529); +#line 575 "sql.y" +{ yylhsminor.yy329 = yymsp[0].minor.yy329; } +#line 6523 "sql.c" + yymsp[0].minor.yy329 = yylhsminor.yy329; break; - case 316: /* sma_func_name ::= function_name */ - case 530: /* alias_opt ::= table_alias */ yytestcase(yyruleno==530); -#line 578 "sql.y" -{ yylhsminor.yy203 = yymsp[0].minor.yy203; } -#line 6532 "sql.c" - yymsp[0].minor.yy203 = yylhsminor.yy203; + case 320: /* sma_stream_opt ::= */ + case 361: /* stream_options ::= */ yytestcase(yyruleno==361); +#line 581 "sql.y" +{ yymsp[1].minor.yy712 = createStreamOptions(pCxt); } +#line 6530 "sql.c" break; - case 321: /* sma_stream_opt ::= */ - case 362: /* stream_options ::= */ yytestcase(yyruleno==362); + case 321: /* sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ +#line 582 "sql.y" +{ ((SStreamOptions*)yymsp[-2].minor.yy712)->pWatermark = releaseRawExprNode(pCxt, yymsp[0].minor.yy712); yylhsminor.yy712 = yymsp[-2].minor.yy712; } +#line 6535 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; + break; + case 322: /* sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ +#line 583 "sql.y" +{ ((SStreamOptions*)yymsp[-2].minor.yy712)->pDelay = releaseRawExprNode(pCxt, yymsp[0].minor.yy712); yylhsminor.yy712 = yymsp[-2].minor.yy712; } +#line 6541 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; + break; + case 323: /* sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ #line 584 "sql.y" -{ yymsp[1].minor.yy122 = createStreamOptions(pCxt); } -#line 6539 "sql.c" +{ ((SStreamOptions*)yymsp[-2].minor.yy712)->pDeleteMark = releaseRawExprNode(pCxt, yymsp[0].minor.yy712); yylhsminor.yy712 = yymsp[-2].minor.yy712; } +#line 6547 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 322: /* sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ -#line 585 "sql.y" -{ ((SStreamOptions*)yymsp[-2].minor.yy122)->pWatermark = releaseRawExprNode(pCxt, yymsp[0].minor.yy122); yylhsminor.yy122 = yymsp[-2].minor.yy122; } -#line 6544 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 324: /* with_meta ::= AS */ +#line 589 "sql.y" +{ yymsp[0].minor.yy860 = 0; } +#line 6553 "sql.c" break; - case 323: /* sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ -#line 586 "sql.y" -{ ((SStreamOptions*)yymsp[-2].minor.yy122)->pDelay = releaseRawExprNode(pCxt, yymsp[0].minor.yy122); yylhsminor.yy122 = yymsp[-2].minor.yy122; } -#line 6550 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 325: /* with_meta ::= WITH META AS */ +#line 590 "sql.y" +{ yymsp[-2].minor.yy860 = 1; } +#line 6558 "sql.c" break; - case 324: /* sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ -#line 587 "sql.y" -{ ((SStreamOptions*)yymsp[-2].minor.yy122)->pDeleteMark = releaseRawExprNode(pCxt, yymsp[0].minor.yy122); yylhsminor.yy122 = yymsp[-2].minor.yy122; } -#line 6556 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 326: /* with_meta ::= ONLY META AS */ +#line 591 "sql.y" +{ yymsp[-2].minor.yy860 = 2; } +#line 6563 "sql.c" break; - case 325: /* with_meta ::= AS */ -#line 592 "sql.y" -{ yymsp[0].minor.yy652 = 0; } -#line 6562 "sql.c" - break; - case 326: /* with_meta ::= WITH META AS */ + case 327: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ #line 593 "sql.y" -{ yymsp[-2].minor.yy652 = 1; } -#line 6567 "sql.c" +{ pCxt->pRootNode = createCreateTopicStmtUseQuery(pCxt, yymsp[-3].minor.yy737, &yymsp[-2].minor.yy329, yymsp[0].minor.yy712); } +#line 6568 "sql.c" break; - case 327: /* with_meta ::= ONLY META AS */ -#line 594 "sql.y" -{ yymsp[-2].minor.yy652 = 2; } -#line 6572 "sql.c" + case 328: /* cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name */ +#line 595 "sql.y" +{ pCxt->pRootNode = createCreateTopicStmtUseDb(pCxt, yymsp[-4].minor.yy737, &yymsp[-3].minor.yy329, &yymsp[0].minor.yy329, yymsp[-2].minor.yy860); } +#line 6573 "sql.c" break; - case 328: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ -#line 596 "sql.y" -{ pCxt->pRootNode = createCreateTopicStmtUseQuery(pCxt, yymsp[-3].minor.yy983, &yymsp[-2].minor.yy203, yymsp[0].minor.yy122); } -#line 6577 "sql.c" + case 329: /* cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt */ +#line 597 "sql.y" +{ pCxt->pRootNode = createCreateTopicStmtUseTable(pCxt, yymsp[-5].minor.yy737, &yymsp[-4].minor.yy329, yymsp[-1].minor.yy712, yymsp[-3].minor.yy860, yymsp[0].minor.yy712); } +#line 6578 "sql.c" break; - case 329: /* cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta DATABASE db_name */ -#line 598 "sql.y" -{ pCxt->pRootNode = createCreateTopicStmtUseDb(pCxt, yymsp[-4].minor.yy983, &yymsp[-3].minor.yy203, &yymsp[0].minor.yy203, yymsp[-2].minor.yy652); } -#line 6582 "sql.c" + case 330: /* cmd ::= DROP TOPIC exists_opt topic_name */ +#line 599 "sql.y" +{ pCxt->pRootNode = createDropTopicStmt(pCxt, yymsp[-1].minor.yy737, &yymsp[0].minor.yy329); } +#line 6583 "sql.c" break; - case 330: /* cmd ::= CREATE TOPIC not_exists_opt topic_name with_meta STABLE full_table_name where_clause_opt */ + case 331: /* cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ #line 600 "sql.y" -{ pCxt->pRootNode = createCreateTopicStmtUseTable(pCxt, yymsp[-5].minor.yy983, &yymsp[-4].minor.yy203, yymsp[-1].minor.yy122, yymsp[-3].minor.yy652, yymsp[0].minor.yy122); } -#line 6587 "sql.c" +{ pCxt->pRootNode = createDropCGroupStmt(pCxt, yymsp[-3].minor.yy737, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy329); } +#line 6588 "sql.c" break; - case 331: /* cmd ::= DROP TOPIC exists_opt topic_name */ -#line 602 "sql.y" -{ pCxt->pRootNode = createDropTopicStmt(pCxt, yymsp[-1].minor.yy983, &yymsp[0].minor.yy203); } -#line 6592 "sql.c" - break; - case 332: /* cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ + case 332: /* cmd ::= DESC full_table_name */ + case 333: /* cmd ::= DESCRIBE full_table_name */ yytestcase(yyruleno==333); #line 603 "sql.y" -{ pCxt->pRootNode = createDropCGroupStmt(pCxt, yymsp[-3].minor.yy983, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy203); } -#line 6597 "sql.c" +{ pCxt->pRootNode = createDescribeStmt(pCxt, yymsp[0].minor.yy712); } +#line 6594 "sql.c" break; - case 333: /* cmd ::= DESC full_table_name */ - case 334: /* cmd ::= DESCRIBE full_table_name */ yytestcase(yyruleno==334); -#line 606 "sql.y" -{ pCxt->pRootNode = createDescribeStmt(pCxt, yymsp[0].minor.yy122); } -#line 6603 "sql.c" - break; - case 335: /* cmd ::= RESET QUERY CACHE */ -#line 610 "sql.y" + case 334: /* cmd ::= RESET QUERY CACHE */ +#line 607 "sql.y" { pCxt->pRootNode = createResetQueryCacheStmt(pCxt); } -#line 6608 "sql.c" +#line 6599 "sql.c" break; - case 336: /* cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ - case 337: /* cmd ::= EXPLAIN analyze_opt explain_options insert_query */ yytestcase(yyruleno==337); -#line 613 "sql.y" -{ pCxt->pRootNode = createExplainStmt(pCxt, yymsp[-2].minor.yy983, yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 6614 "sql.c" + case 335: /* cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ + case 336: /* cmd ::= EXPLAIN analyze_opt explain_options insert_query */ yytestcase(yyruleno==336); +#line 610 "sql.y" +{ pCxt->pRootNode = createExplainStmt(pCxt, yymsp[-2].minor.yy737, yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 6605 "sql.c" break; - case 340: /* explain_options ::= */ -#line 621 "sql.y" -{ yymsp[1].minor.yy122 = createDefaultExplainOptions(pCxt); } -#line 6619 "sql.c" + case 339: /* explain_options ::= */ +#line 618 "sql.y" +{ yymsp[1].minor.yy712 = createDefaultExplainOptions(pCxt); } +#line 6610 "sql.c" break; - case 341: /* explain_options ::= explain_options VERBOSE NK_BOOL */ -#line 622 "sql.y" -{ yylhsminor.yy122 = setExplainVerbose(pCxt, yymsp[-2].minor.yy122, &yymsp[0].minor.yy0); } -#line 6624 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 340: /* explain_options ::= explain_options VERBOSE NK_BOOL */ +#line 619 "sql.y" +{ yylhsminor.yy712 = setExplainVerbose(pCxt, yymsp[-2].minor.yy712, &yymsp[0].minor.yy0); } +#line 6615 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 342: /* explain_options ::= explain_options RATIO NK_FLOAT */ -#line 623 "sql.y" -{ yylhsminor.yy122 = setExplainRatio(pCxt, yymsp[-2].minor.yy122, &yymsp[0].minor.yy0); } -#line 6630 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 341: /* explain_options ::= explain_options RATIO NK_FLOAT */ +#line 620 "sql.y" +{ yylhsminor.yy712 = setExplainRatio(pCxt, yymsp[-2].minor.yy712, &yymsp[0].minor.yy0); } +#line 6621 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 343: /* cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt */ -#line 628 "sql.y" -{ pCxt->pRootNode = createCreateFunctionStmt(pCxt, yymsp[-7].minor.yy983, yymsp[-9].minor.yy983, &yymsp[-6].minor.yy203, &yymsp[-4].minor.yy0, yymsp[-2].minor.yy388, yymsp[-1].minor.yy652, &yymsp[0].minor.yy203, yymsp[-10].minor.yy983); } -#line 6636 "sql.c" + case 342: /* cmd ::= CREATE or_replace_opt agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt language_opt */ +#line 625 "sql.y" +{ pCxt->pRootNode = createCreateFunctionStmt(pCxt, yymsp[-7].minor.yy737, yymsp[-9].minor.yy737, &yymsp[-6].minor.yy329, &yymsp[-4].minor.yy0, yymsp[-2].minor.yy784, yymsp[-1].minor.yy860, &yymsp[0].minor.yy329, yymsp[-10].minor.yy737); } +#line 6627 "sql.c" break; - case 344: /* cmd ::= DROP FUNCTION exists_opt function_name */ -#line 629 "sql.y" -{ pCxt->pRootNode = createDropFunctionStmt(pCxt, yymsp[-1].minor.yy983, &yymsp[0].minor.yy203); } -#line 6641 "sql.c" + case 343: /* cmd ::= DROP FUNCTION exists_opt function_name */ +#line 626 "sql.y" +{ pCxt->pRootNode = createDropFunctionStmt(pCxt, yymsp[-1].minor.yy737, &yymsp[0].minor.yy329); } +#line 6632 "sql.c" break; - case 349: /* language_opt ::= */ -#line 643 "sql.y" -{ yymsp[1].minor.yy203 = nil_token; } -#line 6646 "sql.c" + case 348: /* language_opt ::= */ +#line 640 "sql.y" +{ yymsp[1].minor.yy329 = nil_token; } +#line 6637 "sql.c" break; - case 350: /* language_opt ::= LANGUAGE NK_STRING */ -#line 644 "sql.y" -{ yymsp[-1].minor.yy203 = yymsp[0].minor.yy0; } -#line 6651 "sql.c" + case 349: /* language_opt ::= LANGUAGE NK_STRING */ +#line 641 "sql.y" +{ yymsp[-1].minor.yy329 = yymsp[0].minor.yy0; } +#line 6642 "sql.c" break; - case 353: /* cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery */ + case 352: /* cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name col_list_opt tag_def_or_ref_opt subtable_opt AS query_or_subquery */ +#line 651 "sql.y" +{ pCxt->pRootNode = createCreateStreamStmt(pCxt, yymsp[-9].minor.yy737, &yymsp[-8].minor.yy329, yymsp[-5].minor.yy712, yymsp[-7].minor.yy712, yymsp[-3].minor.yy424, yymsp[-2].minor.yy712, yymsp[0].minor.yy712, yymsp[-4].minor.yy424); } +#line 6647 "sql.c" + break; + case 353: /* cmd ::= DROP STREAM exists_opt stream_name */ +#line 652 "sql.y" +{ pCxt->pRootNode = createDropStreamStmt(pCxt, yymsp[-1].minor.yy737, &yymsp[0].minor.yy329); } +#line 6652 "sql.c" + break; + case 354: /* cmd ::= PAUSE STREAM exists_opt stream_name */ +#line 653 "sql.y" +{ pCxt->pRootNode = createPauseStreamStmt(pCxt, yymsp[-1].minor.yy737, &yymsp[0].minor.yy329); } +#line 6657 "sql.c" + break; + case 355: /* cmd ::= RESUME STREAM exists_opt ignore_opt stream_name */ #line 654 "sql.y" -{ pCxt->pRootNode = createCreateStreamStmt(pCxt, yymsp[-9].minor.yy983, &yymsp[-8].minor.yy203, yymsp[-5].minor.yy122, yymsp[-7].minor.yy122, yymsp[-3].minor.yy298, yymsp[-2].minor.yy122, yymsp[0].minor.yy122, yymsp[-4].minor.yy298); } -#line 6656 "sql.c" +{ pCxt->pRootNode = createResumeStreamStmt(pCxt, yymsp[-2].minor.yy737, yymsp[-1].minor.yy737, &yymsp[0].minor.yy329); } +#line 6662 "sql.c" break; - case 354: /* cmd ::= DROP STREAM exists_opt stream_name */ -#line 655 "sql.y" -{ pCxt->pRootNode = createDropStreamStmt(pCxt, yymsp[-1].minor.yy983, &yymsp[0].minor.yy203); } -#line 6661 "sql.c" + case 362: /* stream_options ::= stream_options TRIGGER AT_ONCE */ + case 363: /* stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ yytestcase(yyruleno==363); +#line 668 "sql.y" +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-2].minor.yy712, SOPT_TRIGGER_TYPE_SET, &yymsp[0].minor.yy0, NULL); } +#line 6668 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 355: /* cmd ::= PAUSE STREAM exists_opt stream_name */ -#line 656 "sql.y" -{ pCxt->pRootNode = createPauseStreamStmt(pCxt, yymsp[-1].minor.yy983, &yymsp[0].minor.yy203); } -#line 6666 "sql.c" + case 364: /* stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ +#line 670 "sql.y" +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-3].minor.yy712, SOPT_TRIGGER_TYPE_SET, &yymsp[-1].minor.yy0, releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); } +#line 6674 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 356: /* cmd ::= RESUME STREAM exists_opt ignore_opt stream_name */ -#line 657 "sql.y" -{ pCxt->pRootNode = createResumeStreamStmt(pCxt, yymsp[-2].minor.yy983, yymsp[-1].minor.yy983, &yymsp[0].minor.yy203); } -#line 6671 "sql.c" - break; - case 363: /* stream_options ::= stream_options TRIGGER AT_ONCE */ - case 364: /* stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ yytestcase(yyruleno==364); + case 365: /* stream_options ::= stream_options WATERMARK duration_literal */ #line 671 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-2].minor.yy122, SOPT_TRIGGER_TYPE_SET, &yymsp[0].minor.yy0, NULL); } -#line 6677 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-2].minor.yy712, SOPT_WATERMARK_SET, NULL, releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); } +#line 6680 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 365: /* stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ + case 366: /* stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ +#line 672 "sql.y" +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-3].minor.yy712, SOPT_IGNORE_EXPIRED_SET, &yymsp[0].minor.yy0, NULL); } +#line 6686 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; + break; + case 367: /* stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ #line 673 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-3].minor.yy122, SOPT_TRIGGER_TYPE_SET, &yymsp[-1].minor.yy0, releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); } -#line 6683 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-2].minor.yy712, SOPT_FILL_HISTORY_SET, &yymsp[0].minor.yy0, NULL); } +#line 6692 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 366: /* stream_options ::= stream_options WATERMARK duration_literal */ + case 368: /* stream_options ::= stream_options DELETE_MARK duration_literal */ #line 674 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-2].minor.yy122, SOPT_WATERMARK_SET, NULL, releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); } -#line 6689 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-2].minor.yy712, SOPT_DELETE_MARK_SET, NULL, releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); } +#line 6698 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 367: /* stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ + case 369: /* stream_options ::= stream_options IGNORE UPDATE NK_INTEGER */ #line 675 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-3].minor.yy122, SOPT_IGNORE_EXPIRED_SET, &yymsp[0].minor.yy0, NULL); } -#line 6695 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setStreamOptions(pCxt, yymsp[-3].minor.yy712, SOPT_IGNORE_UPDATE_SET, &yymsp[0].minor.yy0, NULL); } +#line 6704 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 368: /* stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ -#line 676 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-2].minor.yy122, SOPT_FILL_HISTORY_SET, &yymsp[0].minor.yy0, NULL); } -#line 6701 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; - break; - case 369: /* stream_options ::= stream_options DELETE_MARK duration_literal */ -#line 677 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-2].minor.yy122, SOPT_DELETE_MARK_SET, NULL, releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); } -#line 6707 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; - break; - case 370: /* stream_options ::= stream_options IGNORE UPDATE NK_INTEGER */ + case 371: /* subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ + case 567: /* sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ yytestcase(yyruleno==567); + case 588: /* every_opt ::= EVERY NK_LP duration_literal NK_RP */ yytestcase(yyruleno==588); #line 678 "sql.y" -{ yylhsminor.yy122 = setStreamOptions(pCxt, yymsp[-3].minor.yy122, SOPT_IGNORE_UPDATE_SET, &yymsp[0].minor.yy0, NULL); } -#line 6713 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +{ yymsp[-3].minor.yy712 = releaseRawExprNode(pCxt, yymsp[-1].minor.yy712); } +#line 6712 "sql.c" break; - case 372: /* subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ - case 568: /* sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ yytestcase(yyruleno==568); - case 589: /* every_opt ::= EVERY NK_LP duration_literal NK_RP */ yytestcase(yyruleno==589); -#line 681 "sql.y" -{ yymsp[-3].minor.yy122 = releaseRawExprNode(pCxt, yymsp[-1].minor.yy122); } -#line 6721 "sql.c" - break; - case 375: /* cmd ::= KILL CONNECTION NK_INTEGER */ -#line 689 "sql.y" + case 374: /* cmd ::= KILL CONNECTION NK_INTEGER */ +#line 686 "sql.y" { pCxt->pRootNode = createKillStmt(pCxt, QUERY_NODE_KILL_CONNECTION_STMT, &yymsp[0].minor.yy0); } -#line 6726 "sql.c" +#line 6717 "sql.c" break; - case 376: /* cmd ::= KILL QUERY NK_STRING */ -#line 690 "sql.y" + case 375: /* cmd ::= KILL QUERY NK_STRING */ +#line 687 "sql.y" { pCxt->pRootNode = createKillQueryStmt(pCxt, &yymsp[0].minor.yy0); } -#line 6731 "sql.c" +#line 6722 "sql.c" break; - case 377: /* cmd ::= KILL TRANSACTION NK_INTEGER */ -#line 691 "sql.y" + case 376: /* cmd ::= KILL TRANSACTION NK_INTEGER */ +#line 688 "sql.y" { pCxt->pRootNode = createKillStmt(pCxt, QUERY_NODE_KILL_TRANSACTION_STMT, &yymsp[0].minor.yy0); } -#line 6736 "sql.c" +#line 6727 "sql.c" break; - case 378: /* cmd ::= BALANCE VGROUP */ -#line 694 "sql.y" + case 377: /* cmd ::= BALANCE VGROUP */ +#line 691 "sql.y" { pCxt->pRootNode = createBalanceVgroupStmt(pCxt); } -#line 6741 "sql.c" +#line 6732 "sql.c" break; - case 379: /* cmd ::= BALANCE VGROUP LEADER */ -#line 695 "sql.y" + case 378: /* cmd ::= BALANCE VGROUP LEADER */ +#line 692 "sql.y" { pCxt->pRootNode = createBalanceVgroupLeaderStmt(pCxt); } -#line 6746 "sql.c" +#line 6737 "sql.c" break; - case 380: /* cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ -#line 696 "sql.y" + case 379: /* cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ +#line 693 "sql.y" { pCxt->pRootNode = createMergeVgroupStmt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0); } -#line 6751 "sql.c" +#line 6742 "sql.c" break; - case 381: /* cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ -#line 697 "sql.y" -{ pCxt->pRootNode = createRedistributeVgroupStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy298); } -#line 6756 "sql.c" + case 380: /* cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ +#line 694 "sql.y" +{ pCxt->pRootNode = createRedistributeVgroupStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy424); } +#line 6747 "sql.c" break; - case 382: /* cmd ::= SPLIT VGROUP NK_INTEGER */ -#line 698 "sql.y" + case 381: /* cmd ::= SPLIT VGROUP NK_INTEGER */ +#line 695 "sql.y" { pCxt->pRootNode = createSplitVgroupStmt(pCxt, &yymsp[0].minor.yy0); } -#line 6761 "sql.c" +#line 6752 "sql.c" break; - case 383: /* dnode_list ::= DNODE NK_INTEGER */ -#line 702 "sql.y" -{ yymsp[-1].minor.yy298 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } -#line 6766 "sql.c" + case 382: /* dnode_list ::= DNODE NK_INTEGER */ +#line 699 "sql.y" +{ yymsp[-1].minor.yy424 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } +#line 6757 "sql.c" break; - case 385: /* cmd ::= DELETE FROM full_table_name where_clause_opt */ -#line 709 "sql.y" -{ pCxt->pRootNode = createDeleteStmt(pCxt, yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 6771 "sql.c" + case 384: /* cmd ::= DELETE FROM full_table_name where_clause_opt */ +#line 706 "sql.y" +{ pCxt->pRootNode = createDeleteStmt(pCxt, yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 6762 "sql.c" break; - case 388: /* insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ -#line 718 "sql.y" -{ yymsp[-6].minor.yy122 = createInsertStmt(pCxt, yymsp[-4].minor.yy122, yymsp[-2].minor.yy298, yymsp[0].minor.yy122); } -#line 6776 "sql.c" + case 387: /* insert_query ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ +#line 715 "sql.y" +{ yymsp[-6].minor.yy712 = createInsertStmt(pCxt, yymsp[-4].minor.yy712, yymsp[-2].minor.yy424, yymsp[0].minor.yy712); } +#line 6767 "sql.c" break; - case 389: /* insert_query ::= INSERT INTO full_table_name query_or_subquery */ + case 388: /* insert_query ::= INSERT INTO full_table_name query_or_subquery */ +#line 716 "sql.y" +{ yymsp[-3].minor.yy712 = createInsertStmt(pCxt, yymsp[-1].minor.yy712, NULL, yymsp[0].minor.yy712); } +#line 6772 "sql.c" + break; + case 389: /* literal ::= NK_INTEGER */ #line 719 "sql.y" -{ yymsp[-3].minor.yy122 = createInsertStmt(pCxt, yymsp[-1].minor.yy122, NULL, yymsp[0].minor.yy122); } -#line 6781 "sql.c" +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0)); } +#line 6777 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 390: /* literal ::= NK_INTEGER */ + case 390: /* literal ::= NK_FLOAT */ +#line 720 "sql.y" +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0)); } +#line 6783 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; + break; + case 391: /* literal ::= NK_STRING */ +#line 721 "sql.y" +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } +#line 6789 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; + break; + case 392: /* literal ::= NK_BOOL */ #line 722 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0)); } -#line 6786 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0)); } +#line 6795 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 391: /* literal ::= NK_FLOAT */ + case 393: /* literal ::= TIMESTAMP NK_STRING */ #line 723 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0)); } -#line 6792 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0)); } +#line 6801 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 392: /* literal ::= NK_STRING */ + case 394: /* literal ::= duration_literal */ + case 404: /* signed_literal ::= signed */ yytestcase(yyruleno==404); + case 425: /* expr_or_subquery ::= expression */ yytestcase(yyruleno==425); + case 426: /* expression ::= literal */ yytestcase(yyruleno==426); + case 427: /* expression ::= pseudo_column */ yytestcase(yyruleno==427); + case 428: /* expression ::= column_reference */ yytestcase(yyruleno==428); + case 429: /* expression ::= function_expression */ yytestcase(yyruleno==429); + case 430: /* expression ::= case_when_expression */ yytestcase(yyruleno==430); + case 461: /* function_expression ::= literal_func */ yytestcase(yyruleno==461); + case 510: /* boolean_value_expression ::= boolean_primary */ yytestcase(yyruleno==510); + case 514: /* boolean_primary ::= predicate */ yytestcase(yyruleno==514); + case 516: /* common_expression ::= expr_or_subquery */ yytestcase(yyruleno==516); + case 517: /* common_expression ::= boolean_value_expression */ yytestcase(yyruleno==517); + case 520: /* table_reference_list ::= table_reference */ yytestcase(yyruleno==520); + case 522: /* table_reference ::= table_primary */ yytestcase(yyruleno==522); + case 523: /* table_reference ::= joined_table */ yytestcase(yyruleno==523); + case 527: /* table_primary ::= parenthesized_joined_table */ yytestcase(yyruleno==527); + case 590: /* query_simple ::= query_specification */ yytestcase(yyruleno==590); + case 591: /* query_simple ::= union_query_expression */ yytestcase(yyruleno==591); + case 594: /* query_simple_or_subquery ::= query_simple */ yytestcase(yyruleno==594); + case 596: /* query_or_subquery ::= query_expression */ yytestcase(yyruleno==596); #line 724 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } -#line 6798 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = yymsp[0].minor.yy712; } +#line 6827 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 393: /* literal ::= NK_BOOL */ + case 395: /* literal ::= NULL */ #line 725 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0)); } -#line 6804 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0)); } +#line 6833 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 394: /* literal ::= TIMESTAMP NK_STRING */ + case 396: /* literal ::= NK_QUESTION */ #line 726 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0)); } -#line 6810 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0)); } +#line 6839 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 395: /* literal ::= duration_literal */ - case 405: /* signed_literal ::= signed */ yytestcase(yyruleno==405); - case 426: /* expr_or_subquery ::= expression */ yytestcase(yyruleno==426); - case 427: /* expression ::= literal */ yytestcase(yyruleno==427); - case 428: /* expression ::= pseudo_column */ yytestcase(yyruleno==428); - case 429: /* expression ::= column_reference */ yytestcase(yyruleno==429); - case 430: /* expression ::= function_expression */ yytestcase(yyruleno==430); - case 431: /* expression ::= case_when_expression */ yytestcase(yyruleno==431); - case 462: /* function_expression ::= literal_func */ yytestcase(yyruleno==462); - case 511: /* boolean_value_expression ::= boolean_primary */ yytestcase(yyruleno==511); - case 515: /* boolean_primary ::= predicate */ yytestcase(yyruleno==515); - case 517: /* common_expression ::= expr_or_subquery */ yytestcase(yyruleno==517); - case 518: /* common_expression ::= boolean_value_expression */ yytestcase(yyruleno==518); - case 521: /* table_reference_list ::= table_reference */ yytestcase(yyruleno==521); - case 523: /* table_reference ::= table_primary */ yytestcase(yyruleno==523); - case 524: /* table_reference ::= joined_table */ yytestcase(yyruleno==524); - case 528: /* table_primary ::= parenthesized_joined_table */ yytestcase(yyruleno==528); - case 591: /* query_simple ::= query_specification */ yytestcase(yyruleno==591); - case 592: /* query_simple ::= union_query_expression */ yytestcase(yyruleno==592); - case 595: /* query_simple_or_subquery ::= query_simple */ yytestcase(yyruleno==595); - case 597: /* query_or_subquery ::= query_expression */ yytestcase(yyruleno==597); -#line 727 "sql.y" -{ yylhsminor.yy122 = yymsp[0].minor.yy122; } -#line 6836 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; - break; - case 396: /* literal ::= NULL */ + case 397: /* duration_literal ::= NK_VARIABLE */ #line 728 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0)); } -#line 6842 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } +#line 6845 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 397: /* literal ::= NK_QUESTION */ -#line 729 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0)); } -#line 6848 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; + case 398: /* signed ::= NK_INTEGER */ +#line 730 "sql.y" +{ yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } +#line 6851 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 398: /* duration_literal ::= NK_VARIABLE */ + case 399: /* signed ::= NK_PLUS NK_INTEGER */ #line 731 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } -#line 6854 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yymsp[-1].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } +#line 6857 "sql.c" break; - case 399: /* signed ::= NK_INTEGER */ -#line 733 "sql.y" -{ yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } -#line 6860 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; - break; - case 400: /* signed ::= NK_PLUS NK_INTEGER */ -#line 734 "sql.y" -{ yymsp[-1].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } + case 400: /* signed ::= NK_MINUS NK_INTEGER */ +#line 732 "sql.y" +{ + SToken t = yymsp[-1].minor.yy0; + t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; + yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &t); + } #line 6866 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 401: /* signed ::= NK_MINUS NK_INTEGER */ -#line 735 "sql.y" + case 401: /* signed ::= NK_FLOAT */ +#line 737 "sql.y" +{ yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } +#line 6872 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; + break; + case 402: /* signed ::= NK_PLUS NK_FLOAT */ +#line 738 "sql.y" +{ yymsp[-1].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } +#line 6878 "sql.c" + break; + case 403: /* signed ::= NK_MINUS NK_FLOAT */ +#line 739 "sql.y" { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &t); + yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &t); } -#line 6875 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; - break; - case 402: /* signed ::= NK_FLOAT */ -#line 740 "sql.y" -{ yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } -#line 6881 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; - break; - case 403: /* signed ::= NK_PLUS NK_FLOAT */ -#line 741 "sql.y" -{ yymsp[-1].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } #line 6887 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 404: /* signed ::= NK_MINUS NK_FLOAT */ -#line 742 "sql.y" -{ - SToken t = yymsp[-1].minor.yy0; - t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &t); - } -#line 6896 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; + case 405: /* signed_literal ::= NK_STRING */ +#line 746 "sql.y" +{ yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } +#line 6893 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 406: /* signed_literal ::= NK_STRING */ + case 406: /* signed_literal ::= NK_BOOL */ +#line 747 "sql.y" +{ yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0); } +#line 6899 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; + break; + case 407: /* signed_literal ::= TIMESTAMP NK_STRING */ +#line 748 "sql.y" +{ yymsp[-1].minor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } +#line 6905 "sql.c" + break; + case 408: /* signed_literal ::= duration_literal */ + case 410: /* signed_literal ::= literal_func */ yytestcase(yyruleno==410); + case 481: /* star_func_para ::= expr_or_subquery */ yytestcase(yyruleno==481); + case 547: /* select_item ::= common_expression */ yytestcase(yyruleno==547); + case 557: /* partition_item ::= expr_or_subquery */ yytestcase(yyruleno==557); + case 595: /* query_simple_or_subquery ::= subquery */ yytestcase(yyruleno==595); + case 597: /* query_or_subquery ::= subquery */ yytestcase(yyruleno==597); + case 610: /* search_condition ::= common_expression */ yytestcase(yyruleno==610); #line 749 "sql.y" -{ yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } -#line 6902 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = releaseRawExprNode(pCxt, yymsp[0].minor.yy712); } +#line 6917 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 407: /* signed_literal ::= NK_BOOL */ + case 409: /* signed_literal ::= NULL */ #line 750 "sql.y" -{ yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0); } -#line 6908 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0); } +#line 6923 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 408: /* signed_literal ::= TIMESTAMP NK_STRING */ -#line 751 "sql.y" -{ yymsp[-1].minor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } -#line 6914 "sql.c" - break; - case 409: /* signed_literal ::= duration_literal */ - case 411: /* signed_literal ::= literal_func */ yytestcase(yyruleno==411); - case 482: /* star_func_para ::= expr_or_subquery */ yytestcase(yyruleno==482); - case 548: /* select_item ::= common_expression */ yytestcase(yyruleno==548); - case 558: /* partition_item ::= expr_or_subquery */ yytestcase(yyruleno==558); - case 596: /* query_simple_or_subquery ::= subquery */ yytestcase(yyruleno==596); - case 598: /* query_or_subquery ::= subquery */ yytestcase(yyruleno==598); - case 611: /* search_condition ::= common_expression */ yytestcase(yyruleno==611); + case 411: /* signed_literal ::= NK_QUESTION */ #line 752 "sql.y" -{ yylhsminor.yy122 = releaseRawExprNode(pCxt, yymsp[0].minor.yy122); } -#line 6926 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0); } +#line 6929 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 410: /* signed_literal ::= NULL */ -#line 753 "sql.y" -{ yylhsminor.yy122 = createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0); } -#line 6932 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; + case 431: /* expression ::= NK_LP expression NK_RP */ + case 515: /* boolean_primary ::= NK_LP boolean_value_expression NK_RP */ yytestcase(yyruleno==515); + case 609: /* subquery ::= NK_LP subquery NK_RP */ yytestcase(yyruleno==609); +#line 813 "sql.y" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, releaseRawExprNode(pCxt, yymsp[-1].minor.yy712)); } +#line 6937 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 412: /* signed_literal ::= NK_QUESTION */ -#line 755 "sql.y" -{ yylhsminor.yy122 = createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0); } -#line 6938 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; - break; - case 432: /* expression ::= NK_LP expression NK_RP */ - case 516: /* boolean_primary ::= NK_LP boolean_value_expression NK_RP */ yytestcase(yyruleno==516); - case 610: /* subquery ::= NK_LP subquery NK_RP */ yytestcase(yyruleno==610); -#line 816 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, releaseRawExprNode(pCxt, yymsp[-1].minor.yy122)); } -#line 6946 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; - break; - case 433: /* expression ::= NK_PLUS expr_or_subquery */ -#line 817 "sql.y" + case 432: /* expression ::= NK_PLUS expr_or_subquery */ +#line 814 "sql.y" { - SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); + SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); + } +#line 6946 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; + break; + case 433: /* expression ::= NK_MINUS expr_or_subquery */ +#line 818 "sql.y" +{ + SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, createOperatorNode(pCxt, OP_TYPE_MINUS, releaseRawExprNode(pCxt, yymsp[0].minor.yy712), NULL)); } #line 6955 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 434: /* expression ::= NK_MINUS expr_or_subquery */ -#line 821 "sql.y" + case 434: /* expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ +#line 822 "sql.y" { - SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, createOperatorNode(pCxt, OP_TYPE_MINUS, releaseRawExprNode(pCxt, yymsp[0].minor.yy122), NULL)); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_ADD, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 6964 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +#line 6965 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 435: /* expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ -#line 825 "sql.y" + case 435: /* expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ +#line 827 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_ADD, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_SUB, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 6974 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 6975 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 436: /* expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ -#line 830 "sql.y" + case 436: /* expression ::= expr_or_subquery NK_STAR expr_or_subquery */ +#line 832 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_SUB, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_MULTI, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 6984 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 6985 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 437: /* expression ::= expr_or_subquery NK_STAR expr_or_subquery */ -#line 835 "sql.y" + case 437: /* expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ +#line 837 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_MULTI, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_DIV, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 6994 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 6995 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 438: /* expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ -#line 840 "sql.y" + case 438: /* expression ::= expr_or_subquery NK_REM expr_or_subquery */ +#line 842 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_DIV, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_REM, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7004 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 7005 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 439: /* expression ::= expr_or_subquery NK_REM expr_or_subquery */ -#line 845 "sql.y" + case 439: /* expression ::= column_reference NK_ARROW NK_STRING */ +#line 847 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_REM, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_JSON_GET_VALUE, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0))); } #line 7014 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 440: /* expression ::= column_reference NK_ARROW NK_STRING */ -#line 850 "sql.y" + case 440: /* expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ +#line 851 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_JSON_GET_VALUE, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7023 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 7024 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 441: /* expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ -#line 854 "sql.y" + case 441: /* expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ +#line 856 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7033 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 7034 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 442: /* expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ -#line 859 "sql.y" -{ - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); - } -#line 7043 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 444: /* column_reference ::= column_name */ +#line 867 "sql.y" +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy329, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy329)); } +#line 7040 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 445: /* column_reference ::= column_name */ + case 445: /* column_reference ::= table_name NK_DOT column_name */ +#line 868 "sql.y" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy329, createColumnNode(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy329)); } +#line 7046 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; + break; + case 446: /* pseudo_column ::= ROWTS */ + case 447: /* pseudo_column ::= TBNAME */ yytestcase(yyruleno==447); + case 449: /* pseudo_column ::= QSTART */ yytestcase(yyruleno==449); + case 450: /* pseudo_column ::= QEND */ yytestcase(yyruleno==450); + case 451: /* pseudo_column ::= QDURATION */ yytestcase(yyruleno==451); + case 452: /* pseudo_column ::= WSTART */ yytestcase(yyruleno==452); + case 453: /* pseudo_column ::= WEND */ yytestcase(yyruleno==453); + case 454: /* pseudo_column ::= WDURATION */ yytestcase(yyruleno==454); + case 455: /* pseudo_column ::= IROWTS */ yytestcase(yyruleno==455); + case 456: /* pseudo_column ::= ISFILLED */ yytestcase(yyruleno==456); + case 457: /* pseudo_column ::= QTAGS */ yytestcase(yyruleno==457); + case 463: /* literal_func ::= NOW */ yytestcase(yyruleno==463); #line 870 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy203, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy203)); } -#line 7049 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL)); } +#line 7063 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 446: /* column_reference ::= table_name NK_DOT column_name */ -#line 871 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy203, createColumnNode(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy203)); } -#line 7055 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 448: /* pseudo_column ::= table_name NK_DOT TBNAME */ +#line 872 "sql.y" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[-2].minor.yy329)))); } +#line 7069 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 447: /* pseudo_column ::= ROWTS */ - case 448: /* pseudo_column ::= TBNAME */ yytestcase(yyruleno==448); - case 450: /* pseudo_column ::= QSTART */ yytestcase(yyruleno==450); - case 451: /* pseudo_column ::= QEND */ yytestcase(yyruleno==451); - case 452: /* pseudo_column ::= QDURATION */ yytestcase(yyruleno==452); - case 453: /* pseudo_column ::= WSTART */ yytestcase(yyruleno==453); - case 454: /* pseudo_column ::= WEND */ yytestcase(yyruleno==454); - case 455: /* pseudo_column ::= WDURATION */ yytestcase(yyruleno==455); - case 456: /* pseudo_column ::= IROWTS */ yytestcase(yyruleno==456); - case 457: /* pseudo_column ::= ISFILLED */ yytestcase(yyruleno==457); - case 458: /* pseudo_column ::= QTAGS */ yytestcase(yyruleno==458); - case 464: /* literal_func ::= NOW */ yytestcase(yyruleno==464); -#line 873 "sql.y" -{ yylhsminor.yy122 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL)); } -#line 7072 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; + case 458: /* function_expression ::= function_name NK_LP expression_list NK_RP */ + case 459: /* function_expression ::= star_func NK_LP star_func_para_list NK_RP */ yytestcase(yyruleno==459); +#line 883 "sql.y" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy329, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-3].minor.yy329, yymsp[-1].minor.yy424)); } +#line 7076 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 449: /* pseudo_column ::= table_name NK_DOT TBNAME */ -#line 875 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[-2].minor.yy203)))); } -#line 7078 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; - break; - case 459: /* function_expression ::= function_name NK_LP expression_list NK_RP */ - case 460: /* function_expression ::= star_func NK_LP star_func_para_list NK_RP */ yytestcase(yyruleno==460); + case 460: /* function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ #line 886 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy203, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-3].minor.yy203, yymsp[-1].minor.yy298)); } -#line 7085 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0, createCastFunctionNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), yymsp[-1].minor.yy784)); } +#line 7082 "sql.c" + yymsp[-5].minor.yy712 = yylhsminor.yy712; break; - case 461: /* function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ + case 462: /* literal_func ::= noarg_func NK_LP NK_RP */ #line 889 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0, createCastFunctionNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), yymsp[-1].minor.yy388)); } -#line 7091 "sql.c" - yymsp[-5].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-2].minor.yy329, NULL)); } +#line 7088 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 463: /* literal_func ::= noarg_func NK_LP NK_RP */ -#line 892 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-2].minor.yy203, NULL)); } -#line 7097 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 477: /* star_func_para_list ::= NK_STAR */ +#line 913 "sql.y" +{ yylhsminor.yy424 = createNodeList(pCxt, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0)); } +#line 7094 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; - case 478: /* star_func_para_list ::= NK_STAR */ -#line 916 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0)); } -#line 7103 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; + case 482: /* star_func_para ::= table_name NK_DOT NK_STAR */ + case 550: /* select_item ::= table_name NK_DOT NK_STAR */ yytestcase(yyruleno==550); +#line 922 "sql.y" +{ yylhsminor.yy712 = createColumnNode(pCxt, &yymsp[-2].minor.yy329, &yymsp[0].minor.yy0); } +#line 7101 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 483: /* star_func_para ::= table_name NK_DOT NK_STAR */ - case 551: /* select_item ::= table_name NK_DOT NK_STAR */ yytestcase(yyruleno==551); + case 483: /* case_when_expression ::= CASE when_then_list case_when_else_opt END */ #line 925 "sql.y" -{ yylhsminor.yy122 = createColumnNode(pCxt, &yymsp[-2].minor.yy203, &yymsp[0].minor.yy0); } -#line 7110 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, NULL, yymsp[-2].minor.yy424, yymsp[-1].minor.yy712)); } +#line 7107 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 484: /* case_when_expression ::= CASE when_then_list case_when_else_opt END */ -#line 928 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, NULL, yymsp[-2].minor.yy298, yymsp[-1].minor.yy122)); } -#line 7116 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; + case 484: /* case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ +#line 927 "sql.y" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), yymsp[-2].minor.yy424, yymsp[-1].minor.yy712)); } +#line 7113 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; - case 485: /* case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ -#line 930 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), yymsp[-2].minor.yy298, yymsp[-1].minor.yy122)); } -#line 7122 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; + case 487: /* when_then_expr ::= WHEN common_expression THEN common_expression */ +#line 934 "sql.y" +{ yymsp[-3].minor.yy712 = createWhenThenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712)); } +#line 7119 "sql.c" break; - case 488: /* when_then_expr ::= WHEN common_expression THEN common_expression */ + case 489: /* case_when_else_opt ::= ELSE common_expression */ #line 937 "sql.y" -{ yymsp[-3].minor.yy122 = createWhenThenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122)); } -#line 7128 "sql.c" +{ yymsp[-1].minor.yy712 = releaseRawExprNode(pCxt, yymsp[0].minor.yy712); } +#line 7124 "sql.c" break; - case 490: /* case_when_else_opt ::= ELSE common_expression */ + case 490: /* predicate ::= expr_or_subquery compare_op expr_or_subquery */ + case 495: /* predicate ::= expr_or_subquery in_op in_predicate_value */ yytestcase(yyruleno==495); #line 940 "sql.y" -{ yymsp[-1].minor.yy122 = releaseRawExprNode(pCxt, yymsp[0].minor.yy122); } -#line 7133 "sql.c" - break; - case 491: /* predicate ::= expr_or_subquery compare_op expr_or_subquery */ - case 496: /* predicate ::= expr_or_subquery in_op in_predicate_value */ yytestcase(yyruleno==496); -#line 943 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, yymsp[-1].minor.yy416, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, yymsp[-1].minor.yy540, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7143 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 7134 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 492: /* predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ -#line 950 "sql.y" + case 491: /* predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ +#line 947 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-4].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-4].minor.yy122), releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-4].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-4].minor.yy712), releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7153 "sql.c" - yymsp[-4].minor.yy122 = yylhsminor.yy122; +#line 7144 "sql.c" + yymsp[-4].minor.yy712 = yylhsminor.yy712; break; - case 493: /* predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ -#line 956 "sql.y" + case 492: /* predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ +#line 953 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-5].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createNotBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy122), releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-5].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createNotBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy712), releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); + } +#line 7154 "sql.c" + yymsp[-5].minor.yy712 = yylhsminor.yy712; + break; + case 493: /* predicate ::= expr_or_subquery IS NULL */ +#line 958 "sql.y" +{ + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NULL, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), NULL)); } #line 7163 "sql.c" - yymsp[-5].minor.yy122 = yylhsminor.yy122; + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 494: /* predicate ::= expr_or_subquery IS NULL */ -#line 961 "sql.y" + case 494: /* predicate ::= expr_or_subquery IS NOT NULL */ +#line 962 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NULL, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), NULL)); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-3].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NOT_NULL, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), NULL)); } #line 7172 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 495: /* predicate ::= expr_or_subquery IS NOT NULL */ -#line 965 "sql.y" -{ - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-3].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NOT_NULL, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), NULL)); - } -#line 7181 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; + case 496: /* compare_op ::= NK_LT */ +#line 974 "sql.y" +{ yymsp[0].minor.yy540 = OP_TYPE_LOWER_THAN; } +#line 7178 "sql.c" break; - case 497: /* compare_op ::= NK_LT */ + case 497: /* compare_op ::= NK_GT */ +#line 975 "sql.y" +{ yymsp[0].minor.yy540 = OP_TYPE_GREATER_THAN; } +#line 7183 "sql.c" + break; + case 498: /* compare_op ::= NK_LE */ +#line 976 "sql.y" +{ yymsp[0].minor.yy540 = OP_TYPE_LOWER_EQUAL; } +#line 7188 "sql.c" + break; + case 499: /* compare_op ::= NK_GE */ #line 977 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_LOWER_THAN; } -#line 7187 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_GREATER_EQUAL; } +#line 7193 "sql.c" break; - case 498: /* compare_op ::= NK_GT */ + case 500: /* compare_op ::= NK_NE */ #line 978 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_GREATER_THAN; } -#line 7192 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_NOT_EQUAL; } +#line 7198 "sql.c" break; - case 499: /* compare_op ::= NK_LE */ + case 501: /* compare_op ::= NK_EQ */ #line 979 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_LOWER_EQUAL; } -#line 7197 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_EQUAL; } +#line 7203 "sql.c" break; - case 500: /* compare_op ::= NK_GE */ + case 502: /* compare_op ::= LIKE */ #line 980 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_GREATER_EQUAL; } -#line 7202 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_LIKE; } +#line 7208 "sql.c" break; - case 501: /* compare_op ::= NK_NE */ + case 503: /* compare_op ::= NOT LIKE */ #line 981 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_NOT_EQUAL; } -#line 7207 "sql.c" +{ yymsp[-1].minor.yy540 = OP_TYPE_NOT_LIKE; } +#line 7213 "sql.c" break; - case 502: /* compare_op ::= NK_EQ */ + case 504: /* compare_op ::= MATCH */ #line 982 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_EQUAL; } -#line 7212 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_MATCH; } +#line 7218 "sql.c" break; - case 503: /* compare_op ::= LIKE */ + case 505: /* compare_op ::= NMATCH */ #line 983 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_LIKE; } -#line 7217 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_NMATCH; } +#line 7223 "sql.c" break; - case 504: /* compare_op ::= NOT LIKE */ + case 506: /* compare_op ::= CONTAINS */ #line 984 "sql.y" -{ yymsp[-1].minor.yy416 = OP_TYPE_NOT_LIKE; } -#line 7222 "sql.c" +{ yymsp[0].minor.yy540 = OP_TYPE_JSON_CONTAINS; } +#line 7228 "sql.c" break; - case 505: /* compare_op ::= MATCH */ -#line 985 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_MATCH; } -#line 7227 "sql.c" + case 507: /* in_op ::= IN */ +#line 988 "sql.y" +{ yymsp[0].minor.yy540 = OP_TYPE_IN; } +#line 7233 "sql.c" break; - case 506: /* compare_op ::= NMATCH */ -#line 986 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_NMATCH; } -#line 7232 "sql.c" + case 508: /* in_op ::= NOT IN */ +#line 989 "sql.y" +{ yymsp[-1].minor.yy540 = OP_TYPE_NOT_IN; } +#line 7238 "sql.c" break; - case 507: /* compare_op ::= CONTAINS */ -#line 987 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_JSON_CONTAINS; } -#line 7237 "sql.c" - break; - case 508: /* in_op ::= IN */ + case 509: /* in_predicate_value ::= NK_LP literal_list NK_RP */ #line 991 "sql.y" -{ yymsp[0].minor.yy416 = OP_TYPE_IN; } -#line 7242 "sql.c" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, createNodeListNode(pCxt, yymsp[-1].minor.yy424)); } +#line 7243 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 509: /* in_op ::= NOT IN */ -#line 992 "sql.y" -{ yymsp[-1].minor.yy416 = OP_TYPE_NOT_IN; } -#line 7247 "sql.c" - break; - case 510: /* in_predicate_value ::= NK_LP literal_list NK_RP */ -#line 994 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, createNodeListNode(pCxt, yymsp[-1].minor.yy298)); } + case 511: /* boolean_value_expression ::= NOT boolean_primary */ +#line 995 "sql.y" +{ + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_NOT, releaseRawExprNode(pCxt, yymsp[0].minor.yy712), NULL)); + } #line 7252 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 512: /* boolean_value_expression ::= NOT boolean_primary */ -#line 998 "sql.y" + case 512: /* boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ +#line 1000 "sql.y" { - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_NOT, releaseRawExprNode(pCxt, yymsp[0].minor.yy122), NULL)); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7261 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; +#line 7262 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 513: /* boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ -#line 1003 "sql.y" + case 513: /* boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ +#line 1006 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy712); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy712); + yylhsminor.yy712 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } -#line 7271 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 7272 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 514: /* boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ -#line 1009 "sql.y" + case 521: /* table_reference_list ::= table_reference_list NK_COMMA table_reference */ +#line 1024 "sql.y" +{ yylhsminor.yy712 = createJoinTableNode(pCxt, JOIN_TYPE_INNER, yymsp[-2].minor.yy712, yymsp[0].minor.yy712, NULL); } +#line 7278 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; + break; + case 524: /* table_primary ::= table_name alias_opt */ +#line 1030 "sql.y" +{ yylhsminor.yy712 = createRealTableNode(pCxt, NULL, &yymsp[-1].minor.yy329, &yymsp[0].minor.yy329); } +#line 7284 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; + break; + case 525: /* table_primary ::= db_name NK_DOT table_name alias_opt */ +#line 1031 "sql.y" +{ yylhsminor.yy712 = createRealTableNode(pCxt, &yymsp[-3].minor.yy329, &yymsp[-1].minor.yy329, &yymsp[0].minor.yy329); } +#line 7290 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; + break; + case 526: /* table_primary ::= subquery alias_opt */ +#line 1032 "sql.y" +{ yylhsminor.yy712 = createTempTableNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy712), &yymsp[0].minor.yy329); } +#line 7296 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; + break; + case 528: /* alias_opt ::= */ +#line 1037 "sql.y" +{ yymsp[1].minor.yy329 = nil_token; } +#line 7302 "sql.c" + break; + case 530: /* alias_opt ::= AS table_alias */ +#line 1039 "sql.y" +{ yymsp[-1].minor.yy329 = yymsp[0].minor.yy329; } +#line 7307 "sql.c" + break; + case 531: /* parenthesized_joined_table ::= NK_LP joined_table NK_RP */ + case 532: /* parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ yytestcase(yyruleno==532); +#line 1041 "sql.y" +{ yymsp[-2].minor.yy712 = yymsp[-1].minor.yy712; } +#line 7313 "sql.c" + break; + case 533: /* joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ +#line 1046 "sql.y" +{ yylhsminor.yy712 = createJoinTableNode(pCxt, yymsp[-4].minor.yy412, yymsp[-5].minor.yy712, yymsp[-2].minor.yy712, yymsp[0].minor.yy712); } +#line 7318 "sql.c" + yymsp[-5].minor.yy712 = yylhsminor.yy712; + break; + case 534: /* join_type ::= */ +#line 1050 "sql.y" +{ yymsp[1].minor.yy412 = JOIN_TYPE_INNER; } +#line 7324 "sql.c" + break; + case 535: /* join_type ::= INNER */ +#line 1051 "sql.y" +{ yymsp[0].minor.yy412 = JOIN_TYPE_INNER; } +#line 7329 "sql.c" + break; + case 536: /* query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt */ +#line 1057 "sql.y" { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy122); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy122); - yylhsminor.yy122 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); + yymsp[-13].minor.yy712 = createSelectStmt(pCxt, yymsp[-11].minor.yy737, yymsp[-9].minor.yy424, yymsp[-8].minor.yy712, yymsp[-12].minor.yy424); + yymsp[-13].minor.yy712 = setSelectStmtTagMode(pCxt, yymsp[-13].minor.yy712, yymsp[-10].minor.yy737); + yymsp[-13].minor.yy712 = addWhereClause(pCxt, yymsp[-13].minor.yy712, yymsp[-7].minor.yy712); + yymsp[-13].minor.yy712 = addPartitionByClause(pCxt, yymsp[-13].minor.yy712, yymsp[-6].minor.yy424); + yymsp[-13].minor.yy712 = addWindowClauseClause(pCxt, yymsp[-13].minor.yy712, yymsp[-2].minor.yy712); + yymsp[-13].minor.yy712 = addGroupByClause(pCxt, yymsp[-13].minor.yy712, yymsp[-1].minor.yy424); + yymsp[-13].minor.yy712 = addHavingClause(pCxt, yymsp[-13].minor.yy712, yymsp[0].minor.yy712); + yymsp[-13].minor.yy712 = addRangeClause(pCxt, yymsp[-13].minor.yy712, yymsp[-5].minor.yy712); + yymsp[-13].minor.yy712 = addEveryClause(pCxt, yymsp[-13].minor.yy712, yymsp[-4].minor.yy712); + yymsp[-13].minor.yy712 = addFillClause(pCxt, yymsp[-13].minor.yy712, yymsp[-3].minor.yy712); } -#line 7281 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; +#line 7345 "sql.c" break; - case 522: /* table_reference_list ::= table_reference_list NK_COMMA table_reference */ -#line 1027 "sql.y" -{ yylhsminor.yy122 = createJoinTableNode(pCxt, JOIN_TYPE_INNER, yymsp[-2].minor.yy122, yymsp[0].minor.yy122, NULL); } -#line 7287 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 537: /* hint_list ::= */ +#line 1072 "sql.y" +{ yymsp[1].minor.yy424 = createHintNodeList(pCxt, NULL); } +#line 7350 "sql.c" break; - case 525: /* table_primary ::= table_name alias_opt */ -#line 1033 "sql.y" -{ yylhsminor.yy122 = createRealTableNode(pCxt, NULL, &yymsp[-1].minor.yy203, &yymsp[0].minor.yy203); } -#line 7293 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; + case 538: /* hint_list ::= NK_HINT */ +#line 1073 "sql.y" +{ yylhsminor.yy424 = createHintNodeList(pCxt, &yymsp[0].minor.yy0); } +#line 7355 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; - case 526: /* table_primary ::= db_name NK_DOT table_name alias_opt */ -#line 1034 "sql.y" -{ yylhsminor.yy122 = createRealTableNode(pCxt, &yymsp[-3].minor.yy203, &yymsp[-1].minor.yy203, &yymsp[0].minor.yy203); } -#line 7299 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; + case 543: /* set_quantifier_opt ::= ALL */ +#line 1084 "sql.y" +{ yymsp[0].minor.yy737 = false; } +#line 7361 "sql.c" break; - case 527: /* table_primary ::= subquery alias_opt */ -#line 1035 "sql.y" -{ yylhsminor.yy122 = createTempTableNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy122), &yymsp[0].minor.yy203); } -#line 7305 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; + case 546: /* select_item ::= NK_STAR */ +#line 1091 "sql.y" +{ yylhsminor.yy712 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0); } +#line 7366 "sql.c" + yymsp[0].minor.yy712 = yylhsminor.yy712; break; - case 529: /* alias_opt ::= */ -#line 1040 "sql.y" -{ yymsp[1].minor.yy203 = nil_token; } -#line 7311 "sql.c" + case 548: /* select_item ::= common_expression column_alias */ + case 558: /* partition_item ::= expr_or_subquery column_alias */ yytestcase(yyruleno==558); +#line 1093 "sql.y" +{ yylhsminor.yy712 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy712), &yymsp[0].minor.yy329); } +#line 7373 "sql.c" + yymsp[-1].minor.yy712 = yylhsminor.yy712; break; - case 531: /* alias_opt ::= AS table_alias */ -#line 1042 "sql.y" -{ yymsp[-1].minor.yy203 = yymsp[0].minor.yy203; } -#line 7316 "sql.c" - break; - case 532: /* parenthesized_joined_table ::= NK_LP joined_table NK_RP */ - case 533: /* parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ yytestcase(yyruleno==533); -#line 1044 "sql.y" -{ yymsp[-2].minor.yy122 = yymsp[-1].minor.yy122; } -#line 7322 "sql.c" - break; - case 534: /* joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ -#line 1049 "sql.y" -{ yylhsminor.yy122 = createJoinTableNode(pCxt, yymsp[-4].minor.yy498, yymsp[-5].minor.yy122, yymsp[-2].minor.yy122, yymsp[0].minor.yy122); } -#line 7327 "sql.c" - yymsp[-5].minor.yy122 = yylhsminor.yy122; - break; - case 535: /* join_type ::= */ -#line 1053 "sql.y" -{ yymsp[1].minor.yy498 = JOIN_TYPE_INNER; } -#line 7333 "sql.c" - break; - case 536: /* join_type ::= INNER */ -#line 1054 "sql.y" -{ yymsp[0].minor.yy498 = JOIN_TYPE_INNER; } -#line 7338 "sql.c" - break; - case 537: /* query_specification ::= SELECT hint_list set_quantifier_opt tag_mode_opt select_list from_clause_opt where_clause_opt partition_by_clause_opt range_opt every_opt fill_opt twindow_clause_opt group_by_clause_opt having_clause_opt */ -#line 1060 "sql.y" -{ - yymsp[-13].minor.yy122 = createSelectStmt(pCxt, yymsp[-11].minor.yy983, yymsp[-9].minor.yy298, yymsp[-8].minor.yy122, yymsp[-12].minor.yy298); - yymsp[-13].minor.yy122 = setSelectStmtTagMode(pCxt, yymsp[-13].minor.yy122, yymsp[-10].minor.yy983); - yymsp[-13].minor.yy122 = addWhereClause(pCxt, yymsp[-13].minor.yy122, yymsp[-7].minor.yy122); - yymsp[-13].minor.yy122 = addPartitionByClause(pCxt, yymsp[-13].minor.yy122, yymsp[-6].minor.yy298); - yymsp[-13].minor.yy122 = addWindowClauseClause(pCxt, yymsp[-13].minor.yy122, yymsp[-2].minor.yy122); - yymsp[-13].minor.yy122 = addGroupByClause(pCxt, yymsp[-13].minor.yy122, yymsp[-1].minor.yy298); - yymsp[-13].minor.yy122 = addHavingClause(pCxt, yymsp[-13].minor.yy122, yymsp[0].minor.yy122); - yymsp[-13].minor.yy122 = addRangeClause(pCxt, yymsp[-13].minor.yy122, yymsp[-5].minor.yy122); - yymsp[-13].minor.yy122 = addEveryClause(pCxt, yymsp[-13].minor.yy122, yymsp[-4].minor.yy122); - yymsp[-13].minor.yy122 = addFillClause(pCxt, yymsp[-13].minor.yy122, yymsp[-3].minor.yy122); - } -#line 7354 "sql.c" - break; - case 538: /* hint_list ::= */ -#line 1075 "sql.y" -{ yymsp[1].minor.yy298 = createHintNodeList(pCxt, NULL); } -#line 7359 "sql.c" - break; - case 539: /* hint_list ::= NK_HINT */ -#line 1076 "sql.y" -{ yylhsminor.yy298 = createHintNodeList(pCxt, &yymsp[0].minor.yy0); } -#line 7364 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; - break; - case 544: /* set_quantifier_opt ::= ALL */ -#line 1087 "sql.y" -{ yymsp[0].minor.yy983 = false; } -#line 7370 "sql.c" - break; - case 547: /* select_item ::= NK_STAR */ + case 549: /* select_item ::= common_expression AS column_alias */ + case 559: /* partition_item ::= expr_or_subquery AS column_alias */ yytestcase(yyruleno==559); #line 1094 "sql.y" -{ yylhsminor.yy122 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0); } -#line 7375 "sql.c" - yymsp[0].minor.yy122 = yylhsminor.yy122; +{ yylhsminor.yy712 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), &yymsp[0].minor.yy329); } +#line 7380 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 549: /* select_item ::= common_expression column_alias */ - case 559: /* partition_item ::= expr_or_subquery column_alias */ yytestcase(yyruleno==559); -#line 1096 "sql.y" -{ yylhsminor.yy122 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy122), &yymsp[0].minor.yy203); } -#line 7382 "sql.c" - yymsp[-1].minor.yy122 = yylhsminor.yy122; + case 554: /* partition_by_clause_opt ::= PARTITION BY partition_list */ + case 579: /* group_by_clause_opt ::= GROUP BY group_by_list */ yytestcase(yyruleno==579); + case 599: /* order_by_clause_opt ::= ORDER BY sort_specification_list */ yytestcase(yyruleno==599); +#line 1103 "sql.y" +{ yymsp[-2].minor.yy424 = yymsp[0].minor.yy424; } +#line 7388 "sql.c" break; - case 550: /* select_item ::= common_expression AS column_alias */ - case 560: /* partition_item ::= expr_or_subquery AS column_alias */ yytestcase(yyruleno==560); -#line 1097 "sql.y" -{ yylhsminor.yy122 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), &yymsp[0].minor.yy203); } -#line 7389 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 561: /* twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ +#line 1116 "sql.y" +{ yymsp[-5].minor.yy712 = createSessionWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), releaseRawExprNode(pCxt, yymsp[-1].minor.yy712)); } +#line 7393 "sql.c" break; - case 555: /* partition_by_clause_opt ::= PARTITION BY partition_list */ - case 580: /* group_by_clause_opt ::= GROUP BY group_by_list */ yytestcase(yyruleno==580); - case 600: /* order_by_clause_opt ::= ORDER BY sort_specification_list */ yytestcase(yyruleno==600); -#line 1106 "sql.y" -{ yymsp[-2].minor.yy298 = yymsp[0].minor.yy298; } -#line 7397 "sql.c" + case 562: /* twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ +#line 1117 "sql.y" +{ yymsp[-3].minor.yy712 = createStateWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy712)); } +#line 7398 "sql.c" break; - case 562: /* twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ + case 563: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ #line 1119 "sql.y" -{ yymsp[-5].minor.yy122 = createSessionWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), releaseRawExprNode(pCxt, yymsp[-1].minor.yy122)); } -#line 7402 "sql.c" +{ yymsp[-5].minor.yy712 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), NULL, yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 7403 "sql.c" break; - case 563: /* twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ -#line 1120 "sql.y" -{ yymsp[-3].minor.yy122 = createStateWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy122)); } -#line 7407 "sql.c" - break; - case 564: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ + case 564: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ #line 1122 "sql.y" -{ yymsp[-5].minor.yy122 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), NULL, yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 7412 "sql.c" +{ yymsp[-7].minor.yy712 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy712), releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), yymsp[-1].minor.yy712, yymsp[0].minor.yy712); } +#line 7408 "sql.c" break; - case 565: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ -#line 1125 "sql.y" -{ yymsp[-7].minor.yy122 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy122), releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), yymsp[-1].minor.yy122, yymsp[0].minor.yy122); } -#line 7417 "sql.c" + case 565: /* twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ +#line 1124 "sql.y" +{ yymsp[-6].minor.yy712 = createEventWindowNode(pCxt, yymsp[-3].minor.yy712, yymsp[0].minor.yy712); } +#line 7413 "sql.c" break; - case 566: /* twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ -#line 1127 "sql.y" -{ yymsp[-6].minor.yy122 = createEventWindowNode(pCxt, yymsp[-3].minor.yy122, yymsp[0].minor.yy122); } -#line 7422 "sql.c" + case 569: /* fill_opt ::= FILL NK_LP fill_mode NK_RP */ +#line 1130 "sql.y" +{ yymsp[-3].minor.yy712 = createFillNode(pCxt, yymsp[-1].minor.yy294, NULL); } +#line 7418 "sql.c" break; - case 570: /* fill_opt ::= FILL NK_LP fill_mode NK_RP */ -#line 1133 "sql.y" -{ yymsp[-3].minor.yy122 = createFillNode(pCxt, yymsp[-1].minor.yy312, NULL); } -#line 7427 "sql.c" + case 570: /* fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP */ +#line 1131 "sql.y" +{ yymsp[-5].minor.yy712 = createFillNode(pCxt, FILL_MODE_VALUE, createNodeListNode(pCxt, yymsp[-1].minor.yy424)); } +#line 7423 "sql.c" break; - case 571: /* fill_opt ::= FILL NK_LP VALUE NK_COMMA expression_list NK_RP */ -#line 1134 "sql.y" -{ yymsp[-5].minor.yy122 = createFillNode(pCxt, FILL_MODE_VALUE, createNodeListNode(pCxt, yymsp[-1].minor.yy298)); } -#line 7432 "sql.c" + case 571: /* fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP */ +#line 1132 "sql.y" +{ yymsp[-5].minor.yy712 = createFillNode(pCxt, FILL_MODE_VALUE_F, createNodeListNode(pCxt, yymsp[-1].minor.yy424)); } +#line 7428 "sql.c" break; - case 572: /* fill_opt ::= FILL NK_LP VALUE_F NK_COMMA expression_list NK_RP */ -#line 1135 "sql.y" -{ yymsp[-5].minor.yy122 = createFillNode(pCxt, FILL_MODE_VALUE_F, createNodeListNode(pCxt, yymsp[-1].minor.yy298)); } -#line 7437 "sql.c" + case 572: /* fill_mode ::= NONE */ +#line 1136 "sql.y" +{ yymsp[0].minor.yy294 = FILL_MODE_NONE; } +#line 7433 "sql.c" break; - case 573: /* fill_mode ::= NONE */ + case 573: /* fill_mode ::= PREV */ +#line 1137 "sql.y" +{ yymsp[0].minor.yy294 = FILL_MODE_PREV; } +#line 7438 "sql.c" + break; + case 574: /* fill_mode ::= NULL */ +#line 1138 "sql.y" +{ yymsp[0].minor.yy294 = FILL_MODE_NULL; } +#line 7443 "sql.c" + break; + case 575: /* fill_mode ::= NULL_F */ #line 1139 "sql.y" -{ yymsp[0].minor.yy312 = FILL_MODE_NONE; } -#line 7442 "sql.c" +{ yymsp[0].minor.yy294 = FILL_MODE_NULL_F; } +#line 7448 "sql.c" break; - case 574: /* fill_mode ::= PREV */ + case 576: /* fill_mode ::= LINEAR */ #line 1140 "sql.y" -{ yymsp[0].minor.yy312 = FILL_MODE_PREV; } -#line 7447 "sql.c" +{ yymsp[0].minor.yy294 = FILL_MODE_LINEAR; } +#line 7453 "sql.c" break; - case 575: /* fill_mode ::= NULL */ + case 577: /* fill_mode ::= NEXT */ #line 1141 "sql.y" -{ yymsp[0].minor.yy312 = FILL_MODE_NULL; } -#line 7452 "sql.c" +{ yymsp[0].minor.yy294 = FILL_MODE_NEXT; } +#line 7458 "sql.c" break; - case 576: /* fill_mode ::= NULL_F */ -#line 1142 "sql.y" -{ yymsp[0].minor.yy312 = FILL_MODE_NULL_F; } -#line 7457 "sql.c" + case 580: /* group_by_list ::= expr_or_subquery */ +#line 1150 "sql.y" +{ yylhsminor.yy424 = createNodeList(pCxt, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } +#line 7463 "sql.c" + yymsp[0].minor.yy424 = yylhsminor.yy424; break; - case 577: /* fill_mode ::= LINEAR */ -#line 1143 "sql.y" -{ yymsp[0].minor.yy312 = FILL_MODE_LINEAR; } -#line 7462 "sql.c" + case 581: /* group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ +#line 1151 "sql.y" +{ yylhsminor.yy424 = addNodeToList(pCxt, yymsp[-2].minor.yy424, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy712))); } +#line 7469 "sql.c" + yymsp[-2].minor.yy424 = yylhsminor.yy424; break; - case 578: /* fill_mode ::= NEXT */ -#line 1144 "sql.y" -{ yymsp[0].minor.yy312 = FILL_MODE_NEXT; } -#line 7467 "sql.c" + case 585: /* range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ +#line 1158 "sql.y" +{ yymsp[-5].minor.yy712 = createInterpTimeRange(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy712), releaseRawExprNode(pCxt, yymsp[-1].minor.yy712)); } +#line 7475 "sql.c" break; - case 581: /* group_by_list ::= expr_or_subquery */ -#line 1153 "sql.y" -{ yylhsminor.yy298 = createNodeList(pCxt, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); } -#line 7472 "sql.c" - yymsp[0].minor.yy298 = yylhsminor.yy298; + case 586: /* range_opt ::= RANGE NK_LP expr_or_subquery NK_RP */ +#line 1160 "sql.y" +{ yymsp[-3].minor.yy712 = createInterpTimePoint(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy712)); } +#line 7480 "sql.c" break; - case 582: /* group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ -#line 1154 "sql.y" -{ yylhsminor.yy298 = addNodeToList(pCxt, yymsp[-2].minor.yy298, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy122))); } -#line 7478 "sql.c" - yymsp[-2].minor.yy298 = yylhsminor.yy298; - break; - case 586: /* range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ -#line 1161 "sql.y" -{ yymsp[-5].minor.yy122 = createInterpTimeRange(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy122), releaseRawExprNode(pCxt, yymsp[-1].minor.yy122)); } -#line 7484 "sql.c" - break; - case 587: /* range_opt ::= RANGE NK_LP expr_or_subquery NK_RP */ -#line 1163 "sql.y" -{ yymsp[-3].minor.yy122 = createInterpTimePoint(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy122)); } -#line 7489 "sql.c" - break; - case 590: /* query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ -#line 1170 "sql.y" + case 589: /* query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ +#line 1167 "sql.y" { - yylhsminor.yy122 = addOrderByClause(pCxt, yymsp[-3].minor.yy122, yymsp[-2].minor.yy298); - yylhsminor.yy122 = addSlimitClause(pCxt, yylhsminor.yy122, yymsp[-1].minor.yy122); - yylhsminor.yy122 = addLimitClause(pCxt, yylhsminor.yy122, yymsp[0].minor.yy122); + yylhsminor.yy712 = addOrderByClause(pCxt, yymsp[-3].minor.yy712, yymsp[-2].minor.yy424); + yylhsminor.yy712 = addSlimitClause(pCxt, yylhsminor.yy712, yymsp[-1].minor.yy712); + yylhsminor.yy712 = addLimitClause(pCxt, yylhsminor.yy712, yymsp[0].minor.yy712); } -#line 7498 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; +#line 7489 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 593: /* union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ -#line 1180 "sql.y" -{ yylhsminor.yy122 = createSetOperator(pCxt, SET_OP_TYPE_UNION_ALL, yymsp[-3].minor.yy122, yymsp[0].minor.yy122); } -#line 7504 "sql.c" - yymsp[-3].minor.yy122 = yylhsminor.yy122; + case 592: /* union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ +#line 1177 "sql.y" +{ yylhsminor.yy712 = createSetOperator(pCxt, SET_OP_TYPE_UNION_ALL, yymsp[-3].minor.yy712, yymsp[0].minor.yy712); } +#line 7495 "sql.c" + yymsp[-3].minor.yy712 = yylhsminor.yy712; break; - case 594: /* union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ -#line 1182 "sql.y" -{ yylhsminor.yy122 = createSetOperator(pCxt, SET_OP_TYPE_UNION, yymsp[-2].minor.yy122, yymsp[0].minor.yy122); } -#line 7510 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 593: /* union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ +#line 1179 "sql.y" +{ yylhsminor.yy712 = createSetOperator(pCxt, SET_OP_TYPE_UNION, yymsp[-2].minor.yy712, yymsp[0].minor.yy712); } +#line 7501 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 602: /* slimit_clause_opt ::= SLIMIT NK_INTEGER */ - case 606: /* limit_clause_opt ::= LIMIT NK_INTEGER */ yytestcase(yyruleno==606); -#line 1196 "sql.y" -{ yymsp[-1].minor.yy122 = createLimitNode(pCxt, &yymsp[0].minor.yy0, NULL); } -#line 7517 "sql.c" + case 601: /* slimit_clause_opt ::= SLIMIT NK_INTEGER */ + case 605: /* limit_clause_opt ::= LIMIT NK_INTEGER */ yytestcase(yyruleno==605); +#line 1193 "sql.y" +{ yymsp[-1].minor.yy712 = createLimitNode(pCxt, &yymsp[0].minor.yy0, NULL); } +#line 7508 "sql.c" break; - case 603: /* slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ - case 607: /* limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ yytestcase(yyruleno==607); -#line 1197 "sql.y" -{ yymsp[-3].minor.yy122 = createLimitNode(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); } -#line 7523 "sql.c" + case 602: /* slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ + case 606: /* limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ yytestcase(yyruleno==606); +#line 1194 "sql.y" +{ yymsp[-3].minor.yy712 = createLimitNode(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); } +#line 7514 "sql.c" break; - case 604: /* slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ - case 608: /* limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ yytestcase(yyruleno==608); -#line 1198 "sql.y" -{ yymsp[-3].minor.yy122 = createLimitNode(pCxt, &yymsp[0].minor.yy0, &yymsp[-2].minor.yy0); } -#line 7529 "sql.c" + case 603: /* slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ + case 607: /* limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ yytestcase(yyruleno==607); +#line 1195 "sql.y" +{ yymsp[-3].minor.yy712 = createLimitNode(pCxt, &yymsp[0].minor.yy0, &yymsp[-2].minor.yy0); } +#line 7520 "sql.c" break; - case 609: /* subquery ::= NK_LP query_expression NK_RP */ -#line 1206 "sql.y" -{ yylhsminor.yy122 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, yymsp[-1].minor.yy122); } -#line 7534 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 608: /* subquery ::= NK_LP query_expression NK_RP */ +#line 1203 "sql.y" +{ yylhsminor.yy712 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, yymsp[-1].minor.yy712); } +#line 7525 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 614: /* sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ -#line 1220 "sql.y" -{ yylhsminor.yy122 = createOrderByExprNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy122), yymsp[-1].minor.yy626, yymsp[0].minor.yy877); } -#line 7540 "sql.c" - yymsp[-2].minor.yy122 = yylhsminor.yy122; + case 613: /* sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ +#line 1217 "sql.y" +{ yylhsminor.yy712 = createOrderByExprNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy712), yymsp[-1].minor.yy938, yymsp[0].minor.yy857); } +#line 7531 "sql.c" + yymsp[-2].minor.yy712 = yylhsminor.yy712; break; - case 615: /* ordering_specification_opt ::= */ -#line 1224 "sql.y" -{ yymsp[1].minor.yy626 = ORDER_ASC; } -#line 7546 "sql.c" + case 614: /* ordering_specification_opt ::= */ +#line 1221 "sql.y" +{ yymsp[1].minor.yy938 = ORDER_ASC; } +#line 7537 "sql.c" break; - case 616: /* ordering_specification_opt ::= ASC */ -#line 1225 "sql.y" -{ yymsp[0].minor.yy626 = ORDER_ASC; } -#line 7551 "sql.c" + case 615: /* ordering_specification_opt ::= ASC */ +#line 1222 "sql.y" +{ yymsp[0].minor.yy938 = ORDER_ASC; } +#line 7542 "sql.c" break; - case 617: /* ordering_specification_opt ::= DESC */ -#line 1226 "sql.y" -{ yymsp[0].minor.yy626 = ORDER_DESC; } -#line 7556 "sql.c" + case 616: /* ordering_specification_opt ::= DESC */ +#line 1223 "sql.y" +{ yymsp[0].minor.yy938 = ORDER_DESC; } +#line 7547 "sql.c" break; - case 618: /* null_ordering_opt ::= */ -#line 1230 "sql.y" -{ yymsp[1].minor.yy877 = NULL_ORDER_DEFAULT; } -#line 7561 "sql.c" + case 617: /* null_ordering_opt ::= */ +#line 1227 "sql.y" +{ yymsp[1].minor.yy857 = NULL_ORDER_DEFAULT; } +#line 7552 "sql.c" break; - case 619: /* null_ordering_opt ::= NULLS FIRST */ -#line 1231 "sql.y" -{ yymsp[-1].minor.yy877 = NULL_ORDER_FIRST; } -#line 7566 "sql.c" + case 618: /* null_ordering_opt ::= NULLS FIRST */ +#line 1228 "sql.y" +{ yymsp[-1].minor.yy857 = NULL_ORDER_FIRST; } +#line 7557 "sql.c" break; - case 620: /* null_ordering_opt ::= NULLS LAST */ -#line 1232 "sql.y" -{ yymsp[-1].minor.yy877 = NULL_ORDER_LAST; } -#line 7571 "sql.c" + case 619: /* null_ordering_opt ::= NULLS LAST */ +#line 1229 "sql.y" +{ yymsp[-1].minor.yy857 = NULL_ORDER_LAST; } +#line 7562 "sql.c" break; default: break; @@ -7641,7 +7632,7 @@ static void yy_syntax_error( } else if (TSDB_CODE_PAR_DB_NOT_SPECIFIED == pCxt->errCode && TK_NK_FLOAT == TOKEN.type) { pCxt->errCode = generateSyntaxErrMsg(&pCxt->msgBuf, TSDB_CODE_PAR_SYNTAX_ERROR, TOKEN.z); } -#line 7644 "sql.c" +#line 7635 "sql.c" /************ End %syntax_error code ******************************************/ ParseARG_STORE /* Suppress warning about unused %extra_argument variable */ ParseCTX_STORE