diff --git a/include/common/taosdef.h b/include/common/taosdef.h index bf4de9d4ded1d0955bef05b1e3000be0bf34d8aa..d1ca446904594fa57d54031d5b39e529795d70da 100644 --- a/include/common/taosdef.h +++ b/include/common/taosdef.h @@ -30,6 +30,11 @@ typedef int64_t tb_uid_t; #define IS_TSWINDOW_SPECIFIED(win) (((win).skey != INT64_MIN) || ((win).ekey != INT64_MAX)) #define TSWINDOW_IS_EQUAL(t1, t2) (((t1).skey == (t2).skey) && ((t1).ekey == (t2).ekey)) +//define show cluster alive and show db.alive +#define SHOW_STATUS_NOT_AVAILABLE 0 +#define SHOW_STATUS_AVAILABLE 1 +#define SHOW_STATUS_HALF_AVAILABLE 2 + typedef enum { TSDB_SUPER_TABLE = 1, // super table TSDB_CHILD_TABLE = 2, // table created from super table diff --git a/include/common/ttokendef.h b/include/common/ttokendef.h index 04970ccc349984b3d08f0a5709e5025f0ee28798..597371d9d1a50fce133f8a78c16a72d031119978 100644 --- a/include/common/ttokendef.h +++ b/include/common/ttokendef.h @@ -175,171 +175,172 @@ #define TK_CONSUMERS 157 #define TK_SUBSCRIPTIONS 158 #define TK_VNODES 159 -#define TK_LIKE 160 -#define TK_TBNAME 161 -#define TK_QTAGS 162 -#define TK_AS 163 -#define TK_INDEX 164 -#define TK_FUNCTION 165 -#define TK_INTERVAL 166 -#define TK_COUNT 167 -#define TK_LAST_ROW 168 -#define TK_TOPIC 169 -#define TK_WITH 170 -#define TK_META 171 -#define TK_CONSUMER 172 -#define TK_GROUP 173 -#define TK_DESC 174 -#define TK_DESCRIBE 175 -#define TK_RESET 176 -#define TK_QUERY 177 -#define TK_CACHE 178 -#define TK_EXPLAIN 179 -#define TK_ANALYZE 180 -#define TK_VERBOSE 181 -#define TK_NK_BOOL 182 -#define TK_RATIO 183 -#define TK_NK_FLOAT 184 -#define TK_OUTPUTTYPE 185 -#define TK_AGGREGATE 186 -#define TK_BUFSIZE 187 -#define TK_STREAM 188 -#define TK_INTO 189 -#define TK_TRIGGER 190 -#define TK_AT_ONCE 191 -#define TK_WINDOW_CLOSE 192 -#define TK_IGNORE 193 -#define TK_EXPIRED 194 -#define TK_FILL_HISTORY 195 -#define TK_SUBTABLE 196 -#define TK_KILL 197 -#define TK_CONNECTION 198 -#define TK_TRANSACTION 199 -#define TK_BALANCE 200 -#define TK_VGROUP 201 -#define TK_MERGE 202 -#define TK_REDISTRIBUTE 203 -#define TK_SPLIT 204 -#define TK_DELETE 205 -#define TK_INSERT 206 -#define TK_NULL 207 -#define TK_NK_QUESTION 208 -#define TK_NK_ARROW 209 -#define TK_ROWTS 210 -#define TK_QSTART 211 -#define TK_QEND 212 -#define TK_QDURATION 213 -#define TK_WSTART 214 -#define TK_WEND 215 -#define TK_WDURATION 216 -#define TK_IROWTS 217 -#define TK_ISFILLED 218 -#define TK_CAST 219 -#define TK_NOW 220 -#define TK_TODAY 221 -#define TK_TIMEZONE 222 -#define TK_CLIENT_VERSION 223 -#define TK_SERVER_VERSION 224 -#define TK_SERVER_STATUS 225 -#define TK_CURRENT_USER 226 -#define TK_CASE 227 -#define TK_END 228 -#define TK_WHEN 229 -#define TK_THEN 230 -#define TK_ELSE 231 -#define TK_BETWEEN 232 -#define TK_IS 233 -#define TK_NK_LT 234 -#define TK_NK_GT 235 -#define TK_NK_LE 236 -#define TK_NK_GE 237 -#define TK_NK_NE 238 -#define TK_MATCH 239 -#define TK_NMATCH 240 -#define TK_CONTAINS 241 -#define TK_IN 242 -#define TK_JOIN 243 -#define TK_INNER 244 -#define TK_SELECT 245 -#define TK_DISTINCT 246 -#define TK_WHERE 247 -#define TK_PARTITION 248 -#define TK_BY 249 -#define TK_SESSION 250 -#define TK_STATE_WINDOW 251 -#define TK_EVENT_WINDOW 252 -#define TK_START 253 -#define TK_SLIDING 254 -#define TK_FILL 255 -#define TK_VALUE 256 -#define TK_NONE 257 -#define TK_PREV 258 -#define TK_LINEAR 259 -#define TK_NEXT 260 -#define TK_HAVING 261 -#define TK_RANGE 262 -#define TK_EVERY 263 -#define TK_ORDER 264 -#define TK_SLIMIT 265 -#define TK_SOFFSET 266 -#define TK_LIMIT 267 -#define TK_OFFSET 268 -#define TK_ASC 269 -#define TK_NULLS 270 -#define TK_ABORT 271 -#define TK_AFTER 272 -#define TK_ATTACH 273 -#define TK_BEFORE 274 -#define TK_BEGIN 275 -#define TK_BITAND 276 -#define TK_BITNOT 277 -#define TK_BITOR 278 -#define TK_BLOCKS 279 -#define TK_CHANGE 280 -#define TK_COMMA 281 -#define TK_COMPACT 282 -#define TK_CONCAT 283 -#define TK_CONFLICT 284 -#define TK_COPY 285 -#define TK_DEFERRED 286 -#define TK_DELIMITERS 287 -#define TK_DETACH 288 -#define TK_DIVIDE 289 -#define TK_DOT 290 -#define TK_EACH 291 -#define TK_FAIL 292 -#define TK_FILE 293 -#define TK_FOR 294 -#define TK_GLOB 295 -#define TK_ID 296 -#define TK_IMMEDIATE 297 -#define TK_IMPORT 298 -#define TK_INITIALLY 299 -#define TK_INSTEAD 300 -#define TK_ISNULL 301 -#define TK_KEY 302 -#define TK_MODULES 303 -#define TK_NK_BITNOT 304 -#define TK_NK_SEMI 305 -#define TK_NOTNULL 306 -#define TK_OF 307 -#define TK_PLUS 308 -#define TK_PRIVILEGE 309 -#define TK_RAISE 310 -#define TK_REPLACE 311 -#define TK_RESTRICT 312 -#define TK_ROW 313 -#define TK_SEMI 314 -#define TK_STAR 315 -#define TK_STATEMENT 316 -#define TK_STRICT 317 -#define TK_STRING 318 -#define TK_TIMES 319 -#define TK_UPDATE 320 -#define TK_VALUES 321 -#define TK_VARIABLE 322 -#define TK_VIEW 323 -#define TK_WAL 324 +#define TK_ALIVE 160 +#define TK_LIKE 161 +#define TK_TBNAME 162 +#define TK_QTAGS 163 +#define TK_AS 164 +#define TK_INDEX 165 +#define TK_FUNCTION 166 +#define TK_INTERVAL 167 +#define TK_COUNT 168 +#define TK_LAST_ROW 169 +#define TK_TOPIC 170 +#define TK_WITH 171 +#define TK_META 172 +#define TK_CONSUMER 173 +#define TK_GROUP 174 +#define TK_DESC 175 +#define TK_DESCRIBE 176 +#define TK_RESET 177 +#define TK_QUERY 178 +#define TK_CACHE 179 +#define TK_EXPLAIN 180 +#define TK_ANALYZE 181 +#define TK_VERBOSE 182 +#define TK_NK_BOOL 183 +#define TK_RATIO 184 +#define TK_NK_FLOAT 185 +#define TK_OUTPUTTYPE 186 +#define TK_AGGREGATE 187 +#define TK_BUFSIZE 188 +#define TK_STREAM 189 +#define TK_INTO 190 +#define TK_TRIGGER 191 +#define TK_AT_ONCE 192 +#define TK_WINDOW_CLOSE 193 +#define TK_IGNORE 194 +#define TK_EXPIRED 195 +#define TK_FILL_HISTORY 196 +#define TK_SUBTABLE 197 +#define TK_KILL 198 +#define TK_CONNECTION 199 +#define TK_TRANSACTION 200 +#define TK_BALANCE 201 +#define TK_VGROUP 202 +#define TK_MERGE 203 +#define TK_REDISTRIBUTE 204 +#define TK_SPLIT 205 +#define TK_DELETE 206 +#define TK_INSERT 207 +#define TK_NULL 208 +#define TK_NK_QUESTION 209 +#define TK_NK_ARROW 210 +#define TK_ROWTS 211 +#define TK_QSTART 212 +#define TK_QEND 213 +#define TK_QDURATION 214 +#define TK_WSTART 215 +#define TK_WEND 216 +#define TK_WDURATION 217 +#define TK_IROWTS 218 +#define TK_ISFILLED 219 +#define TK_CAST 220 +#define TK_NOW 221 +#define TK_TODAY 222 +#define TK_TIMEZONE 223 +#define TK_CLIENT_VERSION 224 +#define TK_SERVER_VERSION 225 +#define TK_SERVER_STATUS 226 +#define TK_CURRENT_USER 227 +#define TK_CASE 228 +#define TK_END 229 +#define TK_WHEN 230 +#define TK_THEN 231 +#define TK_ELSE 232 +#define TK_BETWEEN 233 +#define TK_IS 234 +#define TK_NK_LT 235 +#define TK_NK_GT 236 +#define TK_NK_LE 237 +#define TK_NK_GE 238 +#define TK_NK_NE 239 +#define TK_MATCH 240 +#define TK_NMATCH 241 +#define TK_CONTAINS 242 +#define TK_IN 243 +#define TK_JOIN 244 +#define TK_INNER 245 +#define TK_SELECT 246 +#define TK_DISTINCT 247 +#define TK_WHERE 248 +#define TK_PARTITION 249 +#define TK_BY 250 +#define TK_SESSION 251 +#define TK_STATE_WINDOW 252 +#define TK_EVENT_WINDOW 253 +#define TK_START 254 +#define TK_SLIDING 255 +#define TK_FILL 256 +#define TK_VALUE 257 +#define TK_NONE 258 +#define TK_PREV 259 +#define TK_LINEAR 260 +#define TK_NEXT 261 +#define TK_HAVING 262 +#define TK_RANGE 263 +#define TK_EVERY 264 +#define TK_ORDER 265 +#define TK_SLIMIT 266 +#define TK_SOFFSET 267 +#define TK_LIMIT 268 +#define TK_OFFSET 269 +#define TK_ASC 270 +#define TK_NULLS 271 +#define TK_ABORT 272 +#define TK_AFTER 273 +#define TK_ATTACH 274 +#define TK_BEFORE 275 +#define TK_BEGIN 276 +#define TK_BITAND 277 +#define TK_BITNOT 278 +#define TK_BITOR 279 +#define TK_BLOCKS 280 +#define TK_CHANGE 281 +#define TK_COMMA 282 +#define TK_COMPACT 283 +#define TK_CONCAT 284 +#define TK_CONFLICT 285 +#define TK_COPY 286 +#define TK_DEFERRED 287 +#define TK_DELIMITERS 288 +#define TK_DETACH 289 +#define TK_DIVIDE 290 +#define TK_DOT 291 +#define TK_EACH 292 +#define TK_FAIL 293 +#define TK_FILE 294 +#define TK_FOR 295 +#define TK_GLOB 296 +#define TK_ID 297 +#define TK_IMMEDIATE 298 +#define TK_IMPORT 299 +#define TK_INITIALLY 300 +#define TK_INSTEAD 301 +#define TK_ISNULL 302 +#define TK_KEY 303 +#define TK_MODULES 304 +#define TK_NK_BITNOT 305 +#define TK_NK_SEMI 306 +#define TK_NOTNULL 307 +#define TK_OF 308 +#define TK_PLUS 309 +#define TK_PRIVILEGE 310 +#define TK_RAISE 311 +#define TK_REPLACE 312 +#define TK_RESTRICT 313 +#define TK_ROW 314 +#define TK_SEMI 315 +#define TK_STAR 316 +#define TK_STATEMENT 317 +#define TK_STRICT 318 +#define TK_STRING 319 +#define TK_TIMES 320 +#define TK_UPDATE 321 +#define TK_VALUES 322 +#define TK_VARIABLE 323 +#define TK_VIEW 324 +#define TK_WAL 325 #define TK_NK_SPACE 600 #define TK_NK_COMMENT 601 diff --git a/include/libs/command/command.h b/include/libs/command/command.h index b3339a417ba463212c3abc163b57519194953c10..a8b1a0902acac276080d905554a3773f68e66b1c 100644 --- a/include/libs/command/command.h +++ b/include/libs/command/command.h @@ -22,7 +22,7 @@ typedef struct SExplainCtx SExplainCtx; -int32_t qExecCommand(bool sysInfoUser, SNode *pStmt, SRetrieveTableRsp **pRsp); +int32_t qExecCommand(int64_t* pConnId, bool sysInfoUser, SNode *pStmt, SRetrieveTableRsp **pRsp); int32_t qExecStaticExplain(SQueryPlan *pDag, SRetrieveTableRsp **pRsp); int32_t qExecExplainBegin(SQueryPlan *pDag, SExplainCtx **pCtx, int64_t startTs); diff --git a/include/libs/nodes/cmdnodes.h b/include/libs/nodes/cmdnodes.h index 22b8381aefcf579aa60c6d74ef52a61d7b0bad61..b6461b197610a877d552929aaec8bdbc6bc9baeb 100644 --- a/include/libs/nodes/cmdnodes.h +++ b/include/libs/nodes/cmdnodes.h @@ -40,6 +40,7 @@ extern "C" { #define SHOW_LOCAL_VARIABLES_RESULT_FIELD1_LEN (TSDB_CONFIG_OPTION_LEN + VARSTR_HEADER_SIZE) #define SHOW_LOCAL_VARIABLES_RESULT_FIELD2_LEN (TSDB_CONFIG_VALUE_LEN + VARSTR_HEADER_SIZE) +#define SHOW_ALIVE_RESULT_COLS 1 #define PRIVILEGE_TYPE_MASK(n) (1 << n) #define PRIVILEGE_TYPE_ALL PRIVILEGE_TYPE_MASK(0) @@ -262,6 +263,11 @@ typedef struct SShowCreateDatabaseStmt { void* pCfg; // SDbCfgInfo } SShowCreateDatabaseStmt; +typedef struct SShowAliveStmt { + ENodeType type; + char dbName[TSDB_DB_NAME_LEN]; +} SShowAliveStmt; + typedef struct SShowCreateTableStmt { ENodeType type; char dbName[TSDB_DB_NAME_LEN]; diff --git a/include/libs/nodes/nodes.h b/include/libs/nodes/nodes.h index e111f36077575adc381c59ba1de62ccbab07af24..24b436ec994f903cd09c4c6bd918c813b192254d 100644 --- a/include/libs/nodes/nodes.h +++ b/include/libs/nodes/nodes.h @@ -208,6 +208,8 @@ typedef enum ENodeType { QUERY_NODE_DELETE_STMT, QUERY_NODE_INSERT_STMT, QUERY_NODE_QUERY, + QUERY_NODE_SHOW_DB_ALIVE_STMT, + QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT, // logic plan node QUERY_NODE_LOGIC_PLAN_SCAN = 1000, diff --git a/source/client/src/clientImpl.c b/source/client/src/clientImpl.c index 6f61d59846a7acb5afc4ff61bfaf60af5ae6917c..75288cfa143266cb09800cb2f6ecfe34adec1d77 100644 --- a/source/client/src/clientImpl.c +++ b/source/client/src/clientImpl.c @@ -272,7 +272,7 @@ int32_t parseSql(SRequestObj* pRequest, bool topicQuery, SQuery** pQuery, SStmtC int32_t execLocalCmd(SRequestObj* pRequest, SQuery* pQuery) { SRetrieveTableRsp* pRsp = NULL; - int32_t code = qExecCommand(pRequest->pTscObj->sysInfo, pQuery->pRoot, &pRsp); + int32_t code = qExecCommand(&pRequest->pTscObj->id, pRequest->pTscObj->sysInfo, pQuery->pRoot, &pRsp); if (TSDB_CODE_SUCCESS == code && NULL != pRsp) { code = setQueryResultFromRsp(&pRequest->body.resInfo, pRsp, false, true); } @@ -310,7 +310,7 @@ void asyncExecLocalCmd(SRequestObj* pRequest, SQuery* pQuery) { return; } - int32_t code = qExecCommand(pRequest->pTscObj->sysInfo, pQuery->pRoot, &pRsp); + int32_t code = qExecCommand(&pRequest->pTscObj->id ,pRequest->pTscObj->sysInfo, pQuery->pRoot, &pRsp); if (TSDB_CODE_SUCCESS == code && NULL != pRsp) { code = setQueryResultFromRsp(&pRequest->body.resInfo, pRsp, false, true); } diff --git a/source/libs/command/src/command.c b/source/libs/command/src/command.c index a179ec24f91cf7b5564862796633d4ad4f965f85..538ce64a97f364725207229e346a342ed26db3c4 100644 --- a/source/libs/command/src/command.c +++ b/source/libs/command/src/command.c @@ -21,6 +21,7 @@ #include "tdatablock.h" #include "tglobal.h" #include "tgrant.h" +#include "taosdef.h" extern SConfig* tsCfg; @@ -154,6 +155,23 @@ static int32_t buildCreateDBResultDataBlock(SSDataBlock** pOutput) { return code; } +static int32_t buildAliveResultDataBlock(SSDataBlock** pOutput) { + SSDataBlock* pBlock = createDataBlock(); + if (NULL == pBlock) { + return TSDB_CODE_OUT_OF_MEMORY; + } + + SColumnInfoData infoData = createColumnInfoData(TSDB_DATA_TYPE_INT, sizeof(int32_t), 1); + int32_t code = blockDataAppendColInfo(pBlock, &infoData); + + if (TSDB_CODE_SUCCESS == code) { + *pOutput = pBlock; + } else { + blockDataDestroy(pBlock); + } + return code; +} + int64_t getValOfDiffPrecision(int8_t unit, int64_t val) { int64_t v = 0; switch (unit) { @@ -281,6 +299,108 @@ static void setCreateDBResultIntoDataBlock(SSDataBlock* pBlock, char* dbFName, S colDataAppend(pCol2, 0, buf2, false); } +#define CHECK_LEADER(n) (row[n] && (fields[n].type == TSDB_DATA_TYPE_VARCHAR && strncasecmp(row[n], "leader", varDataLen((char *)row[n] - VARSTR_HEADER_SIZE)) == 0)) +// on this row, if have leader return true else return false +bool existLeaderRole(TAOS_ROW row, TAOS_FIELD* fields, int nFields) { + // vgroup_id | db_name | tables | v1_dnode | v1_status | v2_dnode | v2_status | v3_dnode | v3_status | v4_dnode | + // v4_status | cacheload | tsma | + if (nFields != 13) { + return false; + } + + // check have leader on cloumn v*_status on 4 6 8 10 + if (CHECK_LEADER(4) || CHECK_LEADER(6) || CHECK_LEADER(8) || CHECK_LEADER(10)) { + return true; + } + + return false; +} + +// get db alive status, return 1 is alive else return 0 +int32_t getAliveStatusFromApi(int64_t* pConnId, char* dbName, int32_t* pStatus) { + char sql[128 + TSDB_DB_NAME_LEN] = "select * from information_schema.ins_vgroups"; + int32_t code; + + // filter with db name + if (dbName && dbName[0] != 0) { + char str[64 + TSDB_DB_NAME_LEN] = ""; + // test db name exist + sprintf(str, "show create database %s ;", dbName); + TAOS_RES* dbRes = taos_query(pConnId, str); + code = taos_errno(dbRes); + if (code != TSDB_CODE_SUCCESS) { + taos_free_result(dbRes); + return code; + } + taos_free_result(dbRes); + + sprintf(str, " where db_name='%s' ;", dbName); + strcat(sql, str); + } + + TAOS_RES* res = taos_query(pConnId, sql); + code = taos_errno(res); + if (code != TSDB_CODE_SUCCESS) { + taos_free_result(res); + return code; + } + + TAOS_ROW row = NULL; + TAOS_FIELD* fields = taos_fetch_fields(res); + int32_t nFields = taos_num_fields(res); + int32_t nAvailble = 0; + int32_t nUnAvailble = 0; + + while ((row = taos_fetch_row(res)) != NULL) { + if (existLeaderRole(row, fields, nFields)) { + nAvailble++; + } else { + nUnAvailble++; + } + } + taos_free_result(res); + + int32_t status = 0; + if (nAvailble + nUnAvailble == 0 || nUnAvailble == 0) { + status = SHOW_STATUS_AVAILABLE; + } else if (nAvailble > 0 && nUnAvailble > 0) { + status = SHOW_STATUS_HALF_AVAILABLE; + } else { + status = SHOW_STATUS_NOT_AVAILABLE; + } + + if (pStatus) { + *pStatus = status; + } + return TSDB_CODE_SUCCESS; +} + +static int32_t setAliveResultIntoDataBlock(int64_t* pConnId, SSDataBlock* pBlock, char* dbName) { + blockDataEnsureCapacity(pBlock, 1); + pBlock->info.rows = 1; + + SColumnInfoData* pCol1 = taosArrayGet(pBlock->pDataBlock, 0); + int32_t status = 0; + int32_t code = getAliveStatusFromApi(pConnId, dbName, &status); + if (code == TSDB_CODE_SUCCESS) { + colDataAppend(pCol1, 0, (const char*)&status, false); + } + return code; +} + +static int32_t execShowAliveStatus(int64_t* pConnId, SShowAliveStmt* pStmt, SRetrieveTableRsp** pRsp) { + SSDataBlock* pBlock = NULL; + int32_t code = buildAliveResultDataBlock(&pBlock); + if (TSDB_CODE_SUCCESS == code) { + code = setAliveResultIntoDataBlock(pConnId, pBlock, pStmt->dbName); + } + if (TSDB_CODE_SUCCESS == code) { + code = buildRetrieveTableRsp(pBlock, SHOW_ALIVE_RESULT_COLS, pRsp); + } + blockDataDestroy(pBlock); + return code; +} + static int32_t execShowCreateDatabase(SShowCreateDatabaseStmt* pStmt, SRetrieveTableRsp** pRsp) { SSDataBlock* pBlock = NULL; int32_t code = buildCreateDBResultDataBlock(&pBlock); @@ -736,7 +856,7 @@ static int32_t execSelectWithoutFrom(SSelectStmt* pSelect, SRetrieveTableRsp** p return code; } -int32_t qExecCommand(bool sysInfoUser, SNode* pStmt, SRetrieveTableRsp** pRsp) { +int32_t qExecCommand(int64_t* pConnId, bool sysInfoUser, SNode* pStmt, SRetrieveTableRsp** pRsp) { switch (nodeType(pStmt)) { case QUERY_NODE_DESCRIBE_STMT: return execDescribe(sysInfoUser, pStmt, pRsp); @@ -754,6 +874,9 @@ int32_t qExecCommand(bool sysInfoUser, SNode* pStmt, SRetrieveTableRsp** pRsp) { return execShowLocalVariables(pRsp); case QUERY_NODE_SELECT_STMT: return execSelectWithoutFrom((SSelectStmt*)pStmt, pRsp); + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: + return execShowAliveStatus(pConnId, (SShowAliveStmt*)pStmt, pRsp); default: break; } diff --git a/source/libs/nodes/src/nodesCodeFuncs.c b/source/libs/nodes/src/nodesCodeFuncs.c index e9ec2ce306078b6ea4cb49089d83e44cdf4ac412..c17077950f8081294f2a188896cf147d3871f925 100644 --- a/source/libs/nodes/src/nodesCodeFuncs.c +++ b/source/libs/nodes/src/nodesCodeFuncs.c @@ -173,6 +173,10 @@ const char* nodesNodeName(ENodeType type) { return "BalanceVgroupStmt"; case QUERY_NODE_MERGE_VGROUP_STMT: return "MergeVgroupStmt"; + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + return "ShowDbAliveStmt"; + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: + return "ShowClusterAliveStmt"; case QUERY_NODE_REDISTRIBUTE_VGROUP_STMT: return "RedistributeVgroupStmt"; case QUERY_NODE_SPLIT_VGROUP_STMT: diff --git a/source/libs/nodes/src/nodesUtilFuncs.c b/source/libs/nodes/src/nodesUtilFuncs.c index dd06326dcb54259e76e4f7e2ce2eb82e286cb64e..61bb3778fa2d692816e99f43c5b09713b7673341 100644 --- a/source/libs/nodes/src/nodesUtilFuncs.c +++ b/source/libs/nodes/src/nodesUtilFuncs.c @@ -434,6 +434,9 @@ SNode* nodesMakeNode(ENodeType type) { return makeNode(type, sizeof(SShowDnodeVariablesStmt)); case QUERY_NODE_SHOW_CREATE_DATABASE_STMT: return makeNode(type, sizeof(SShowCreateDatabaseStmt)); + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: + return makeNode(type, sizeof(SShowAliveStmt)); case QUERY_NODE_SHOW_CREATE_TABLE_STMT: case QUERY_NODE_SHOW_CREATE_STABLE_STMT: return makeNode(type, sizeof(SShowCreateTableStmt)); @@ -960,6 +963,8 @@ void nodesDestroyNode(SNode* pNode) { case QUERY_NODE_SHOW_USERS_STMT: case QUERY_NODE_SHOW_LICENCES_STMT: case QUERY_NODE_SHOW_VGROUPS_STMT: + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: case QUERY_NODE_SHOW_TOPICS_STMT: case QUERY_NODE_SHOW_CONSUMERS_STMT: case QUERY_NODE_SHOW_CONNECTIONS_STMT: diff --git a/source/libs/parser/inc/parAst.h b/source/libs/parser/inc/parAst.h index 1d20ae83a28ef9ab79dc409476980fa79f8f0012..61fe781f49b9e4a8dca29c645f8c53e57fc96299 100644 --- a/source/libs/parser/inc/parAst.h +++ b/source/libs/parser/inc/parAst.h @@ -176,6 +176,7 @@ SNode* createShowStmt(SAstCreateContext* pCxt, ENodeType type); SNode* createShowStmtWithCond(SAstCreateContext* pCxt, ENodeType type, SNode* pDbName, 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); SNode* createShowTableDistributedStmt(SAstCreateContext* pCxt, SNode* pRealTable); SNode* createShowDnodeVariablesStmt(SAstCreateContext* pCxt, SNode* pDnodeId, SNode* pLikePattern); diff --git a/source/libs/parser/inc/sql.y b/source/libs/parser/inc/sql.y index 9dfea07b81955df95457563618a3ed2965056698..6a21a5c9fe1c9ec50f16b5b957b18c1ff3ea43d8 100644 --- a/source/libs/parser/inc/sql.y +++ b/source/libs/parser/inc/sql.y @@ -433,6 +433,9 @@ cmd ::= SHOW TAGS FROM table_name_cond(A) from_db_opt(B). cmd ::= SHOW TABLE TAGS tag_list_opt(C) FROM table_name_cond(A) from_db_opt(B). { pCxt->pRootNode = createShowTableTagsStmt(pCxt, A, B, C); } cmd ::= SHOW VNODES NK_INTEGER(A). { pCxt->pRootNode = createShowVnodesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &A), NULL); } cmd ::= SHOW VNODES NK_STRING(A). { pCxt->pRootNode = createShowVnodesStmt(pCxt, NULL, createValueNode(pCxt, TSDB_DATA_TYPE_VARCHAR, &A)); } +// show alive +cmd ::= SHOW db_name_cond_opt(A) ALIVE. { pCxt->pRootNode = createShowAliveStmt(pCxt, A, QUERY_NODE_SHOW_DB_ALIVE_STMT); } +cmd ::= SHOW CLUSTER ALIVE. { pCxt->pRootNode = createShowAliveStmt(pCxt, NULL, QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT); } 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 238486662031727e6a607a00e7f105cafc156f25..4de51f33504d3df7355297dae81574fb6daee7ac 100644 --- a/source/libs/parser/src/parAstCreater.c +++ b/source/libs/parser/src/parAstCreater.c @@ -1370,6 +1370,38 @@ SNode* createShowCreateDatabaseStmt(SAstCreateContext* pCxt, SToken* pDbName) { return (SNode*)pStmt; } +SNode* createShowAliveStmt(SAstCreateContext* pCxt, SNode* pNode, ENodeType type) { + CHECK_PARSER_STATUS(pCxt); + SToken dbToken = {0}; + SToken* pDbToken = NULL; + + if (pNode) { + SValueNode* pDbName = (SValueNode*)pNode; + if (pDbName->literal) { + dbToken.z = pDbName->literal; + dbToken.n = strlen(pDbName->literal); + pDbToken = &dbToken; + } + } + + if (pDbToken && !checkDbName(pCxt, pDbToken, true)) { + nodesDestroyNode(pNode); + return NULL; + } + + SShowAliveStmt* pStmt = (SShowAliveStmt*)nodesMakeNode(type); + CHECK_OUT_OF_MEM(pStmt); + + if (pDbToken) { + COPY_STRING_FORM_ID_TOKEN(pStmt->dbName, pDbToken); + } + if (pNode) { + nodesDestroyNode(pNode); + } + + return (SNode*)pStmt; +} + SNode* createShowCreateTableStmt(SAstCreateContext* pCxt, ENodeType type, SNode* pRealTable) { CHECK_PARSER_STATUS(pCxt); SShowCreateTableStmt* pStmt = (SShowCreateTableStmt*)nodesMakeNode(type); diff --git a/source/libs/parser/src/parAuthenticator.c b/source/libs/parser/src/parAuthenticator.c index d99d7d744579836def251114671c2c58b45259df..e4de60fd051d6f7f4e781160305ffb95a3ec7d3e 100644 --- a/source/libs/parser/src/parAuthenticator.c +++ b/source/libs/parser/src/parAuthenticator.c @@ -145,6 +145,8 @@ static int32_t authQuery(SAuthCxt* pCxt, SNode* pStmt) { case QUERY_NODE_SHOW_CLUSTER_STMT: case QUERY_NODE_SHOW_LICENCES_STMT: case QUERY_NODE_SHOW_VGROUPS_STMT: + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: case QUERY_NODE_SHOW_CREATE_DATABASE_STMT: case QUERY_NODE_SHOW_TABLE_DISTRIBUTED_STMT: case QUERY_NODE_SHOW_VNODES_STMT: diff --git a/source/libs/parser/src/parTokenizer.c b/source/libs/parser/src/parTokenizer.c index 94b32a3de219d52a1a90e36531979c3487ca28d3..cacb6f3c3be3a6dbf884de757b5f1b40ce361f52 100644 --- a/source/libs/parser/src/parTokenizer.c +++ b/source/libs/parser/src/parTokenizer.c @@ -269,6 +269,7 @@ static SKeyword keywordTable[] = { {"_WDURATION", TK_WDURATION}, {"_WEND", TK_WEND}, {"_WSTART", TK_WSTART}, + {"ALIVE", TK_ALIVE}, }; // clang-format on diff --git a/source/libs/parser/src/parTranslater.c b/source/libs/parser/src/parTranslater.c index 3b2c19f27918c8ffc5d10fd0cfac70ec6a672abb..7cebe4a67c7eacdd4aad2e7ca4f3396d450487ad 100644 --- a/source/libs/parser/src/parTranslater.c +++ b/source/libs/parser/src/parTranslater.c @@ -6229,6 +6229,20 @@ static int32_t extractShowCreateDatabaseResultSchema(int32_t* numOfCols, SSchema return TSDB_CODE_SUCCESS; } +static int32_t extractShowAliveResultSchema(int32_t* numOfCols, SSchema** pSchema) { + *numOfCols = 1; + *pSchema = taosMemoryCalloc((*numOfCols), sizeof(SSchema)); + if (NULL == (*pSchema)) { + return TSDB_CODE_OUT_OF_MEMORY; + } + + (*pSchema)[0].type = TSDB_DATA_TYPE_INT; + (*pSchema)[0].bytes = sizeof(int32_t); + strcpy((*pSchema)[0].name, "status"); + + return TSDB_CODE_SUCCESS; +} + static int32_t extractShowCreateTableResultSchema(int32_t* numOfCols, SSchema** pSchema) { *numOfCols = 2; *pSchema = taosMemoryCalloc((*numOfCols), sizeof(SSchema)); @@ -6280,6 +6294,9 @@ int32_t extractResultSchema(const SNode* pRoot, int32_t* numOfCols, SSchema** pS return extractDescribeResultSchema(numOfCols, pSchema); case QUERY_NODE_SHOW_CREATE_DATABASE_STMT: return extractShowCreateDatabaseResultSchema(numOfCols, pSchema); + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: + return extractShowAliveResultSchema(numOfCols, pSchema); case QUERY_NODE_SHOW_CREATE_TABLE_STMT: case QUERY_NODE_SHOW_CREATE_STABLE_STMT: return extractShowCreateTableResultSchema(numOfCols, pSchema); @@ -7799,6 +7816,8 @@ static int32_t setQuery(STranslateContext* pCxt, SQuery* pQuery) { break; case QUERY_NODE_DESCRIBE_STMT: case QUERY_NODE_SHOW_CREATE_DATABASE_STMT: + case QUERY_NODE_SHOW_DB_ALIVE_STMT: + case QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT: case QUERY_NODE_SHOW_CREATE_TABLE_STMT: case QUERY_NODE_SHOW_CREATE_STABLE_STMT: case QUERY_NODE_SHOW_LOCAL_VARIABLES_STMT: diff --git a/source/libs/parser/src/sql.c b/source/libs/parser/src/sql.c index 9449b60d5c64dc855d9503b8ea4caa36153b825e..d91c75129a80ca57bf3406141adb416a3abfe9ab 100644 --- a/source/libs/parser/src/sql.c +++ b/source/libs/parser/src/sql.c @@ -104,26 +104,26 @@ #endif /************* Begin control #defines *****************************************/ #define YYCODETYPE unsigned short int -#define YYNOCODE 461 +#define YYNOCODE 462 #define YYACTIONTYPE unsigned short int #define ParseTOKENTYPE SToken typedef union { int yyinit; ParseTOKENTYPE yy0; - EOrder yy32; - SToken yy77; - int32_t yy248; - int8_t yy287; - ENullOrder yy385; - EJoinType yy560; - SNode* yy600; - SNodeList* yy601; - SAlterOption yy661; - EOperatorType yy666; - int64_t yy717; - EFillMode yy798; - bool yy841; - SDataType yy888; + int8_t yy47; + EOperatorType yy128; + EJoinType yy288; + SNodeList* yy376; + SNode* yy476; + int32_t yy508; + SDataType yy532; + EOrder yy554; + EFillMode yy690; + ENullOrder yy697; + SToken yy701; + bool yy845; + SAlterOption yy893; + int64_t yy921; } YYMINORTYPE; #ifndef YYSTACKDEPTH #define YYSTACKDEPTH 100 @@ -139,17 +139,18 @@ typedef union { #define ParseCTX_FETCH #define ParseCTX_STORE #define YYFALLBACK 1 -#define YYNSTATE 722 -#define YYNRULE 546 -#define YYNTOKEN 325 -#define YY_MAX_SHIFT 721 -#define YY_MIN_SHIFTREDUCE 1069 -#define YY_MAX_SHIFTREDUCE 1614 -#define YY_ERROR_ACTION 1615 -#define YY_ACCEPT_ACTION 1616 -#define YY_NO_ACTION 1617 -#define YY_MIN_REDUCE 1618 -#define YY_MAX_REDUCE 2163 +#define YYNSTATE 724 +#define YYNRULE 548 +#define YYNRULE_WITH_ACTION 548 +#define YYNTOKEN 326 +#define YY_MAX_SHIFT 723 +#define YY_MIN_SHIFTREDUCE 1071 +#define YY_MAX_SHIFTREDUCE 1618 +#define YY_ERROR_ACTION 1619 +#define YY_ACCEPT_ACTION 1620 +#define YY_NO_ACTION 1621 +#define YY_MIN_REDUCE 1622 +#define YY_MAX_REDUCE 2169 /************* End control #defines *******************************************/ #define YY_NLOOKAHEAD ((int)(sizeof(yy_lookahead)/sizeof(yy_lookahead[0]))) @@ -216,812 +217,811 @@ typedef union { ** yy_default[] Default action for each state. ** *********** Begin parsing tables **********************************************/ -#define YY_ACTTAB_COUNT (3069) +#define YY_ACTTAB_COUNT (2895) static const YYACTIONTYPE yy_action[] = { - /* 0 */ 35, 280, 465, 1886, 466, 1654, 474, 372, 466, 1654, - /* 10 */ 1817, 1819, 45, 43, 1544, 1964, 1884, 598, 1760, 471, - /* 20 */ 367, 412, 1394, 38, 37, 467, 1960, 44, 42, 41, - /* 30 */ 40, 39, 172, 1474, 464, 1392, 232, 469, 1660, 1801, - /* 40 */ 576, 610, 38, 37, 2134, 547, 44, 42, 41, 40, - /* 50 */ 39, 8, 610, 338, 1871, 1956, 1962, 349, 1469, 575, - /* 60 */ 178, 324, 190, 18, 2135, 577, 621, 38, 37, 1977, - /* 70 */ 1400, 44, 42, 41, 40, 39, 473, 1420, 588, 469, - /* 80 */ 1660, 38, 37, 45, 43, 44, 42, 41, 40, 39, - /* 90 */ 2139, 367, 174, 1394, 1618, 14, 139, 331, 81, 2036, - /* 100 */ 1995, 80, 60, 27, 1474, 1811, 1392, 1421, 591, 137, - /* 110 */ 162, 1581, 1630, 1946, 611, 627, 48, 718, 128, 127, - /* 120 */ 126, 125, 124, 123, 122, 121, 120, 48, 129, 1469, - /* 130 */ 103, 163, 1476, 1477, 18, 504, 1725, 448, 1503, 1976, - /* 140 */ 64, 1400, 483, 2012, 138, 1771, 106, 1978, 631, 1980, - /* 150 */ 1981, 626, 1763, 621, 1419, 2139, 1824, 149, 175, 2134, - /* 160 */ 2065, 1449, 1459, 355, 361, 2061, 14, 1475, 1478, 260, - /* 170 */ 2073, 587, 1822, 130, 586, 2138, 610, 2134, 180, 2135, - /* 180 */ 2137, 2139, 1395, 1604, 1393, 2134, 2091, 533, 718, 1271, - /* 190 */ 1272, 263, 575, 178, 1504, 194, 193, 2135, 577, 49, - /* 200 */ 531, 2138, 529, 1476, 1477, 2135, 2136, 1398, 1399, 53, - /* 210 */ 1448, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 623, - /* 220 */ 619, 1467, 1468, 1470, 1471, 1472, 1473, 2, 60, 60, - /* 230 */ 89, 60, 1449, 1459, 2080, 1419, 159, 119, 1475, 1478, - /* 240 */ 118, 117, 116, 115, 114, 113, 112, 111, 110, 571, - /* 250 */ 262, 230, 181, 1395, 2080, 1393, 1537, 38, 37, 1641, - /* 260 */ 2077, 44, 42, 41, 40, 39, 34, 365, 1498, 1499, - /* 270 */ 1500, 1501, 1502, 1506, 1507, 1508, 1509, 181, 1398, 1399, - /* 280 */ 2076, 1448, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, - /* 290 */ 623, 619, 1467, 1468, 1470, 1471, 1472, 1473, 2, 401, - /* 300 */ 11, 45, 43, 1946, 1964, 1394, 1548, 1640, 1995, 367, - /* 310 */ 413, 1394, 1419, 86, 326, 1960, 570, 537, 1392, 535, - /* 320 */ 403, 399, 1474, 414, 1392, 1228, 653, 652, 651, 1232, - /* 330 */ 650, 1234, 1235, 649, 1237, 646, 1687, 1243, 643, 1245, - /* 340 */ 1246, 640, 637, 216, 1956, 1962, 362, 1469, 160, 181, - /* 350 */ 406, 1946, 18, 1400, 1824, 621, 569, 1774, 167, 1400, - /* 360 */ 1121, 360, 1120, 665, 500, 496, 492, 488, 213, 1639, - /* 370 */ 1822, 1638, 45, 43, 1479, 215, 1324, 1325, 181, 181, - /* 380 */ 367, 181, 1394, 1824, 14, 44, 42, 41, 40, 39, - /* 390 */ 371, 1122, 552, 1474, 657, 1392, 2134, 1815, 1637, 1822, - /* 400 */ 718, 519, 518, 517, 85, 1102, 718, 211, 1619, 134, - /* 410 */ 513, 2140, 178, 1946, 512, 1946, 2135, 577, 1469, 511, - /* 420 */ 516, 1476, 1477, 1611, 1636, 510, 271, 272, 1400, 119, - /* 430 */ 1400, 270, 118, 117, 116, 115, 114, 113, 112, 111, - /* 440 */ 110, 588, 1946, 1420, 1104, 661, 1107, 1108, 1815, 1886, - /* 450 */ 1449, 1459, 611, 1450, 1824, 46, 1475, 1478, 1121, 358, - /* 460 */ 1120, 335, 1883, 598, 611, 1395, 54, 1393, 1946, 618, - /* 470 */ 1822, 1395, 137, 1393, 210, 204, 1635, 718, 183, 209, - /* 480 */ 38, 37, 479, 1771, 44, 42, 41, 40, 39, 1122, - /* 490 */ 1398, 1399, 1476, 1477, 84, 1771, 1398, 1399, 202, 1448, - /* 500 */ 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 623, 619, - /* 510 */ 1467, 1468, 1470, 1471, 1472, 1473, 2, 1767, 1610, 1421, - /* 520 */ 1946, 1449, 1459, 588, 1188, 1634, 576, 1475, 1478, 611, - /* 530 */ 2134, 590, 176, 2073, 2074, 611, 135, 2078, 1419, 519, - /* 540 */ 518, 517, 1395, 410, 1393, 575, 178, 134, 513, 411, - /* 550 */ 2135, 577, 512, 1633, 137, 1339, 1340, 511, 516, 1190, - /* 560 */ 1771, 1977, 1632, 510, 1818, 1819, 1771, 1398, 1399, 1946, - /* 570 */ 1448, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 623, - /* 580 */ 619, 1467, 1468, 1470, 1471, 1472, 1473, 2, 45, 43, - /* 590 */ 1338, 1341, 1995, 1749, 84, 359, 367, 1946, 1394, 1418, - /* 600 */ 628, 1616, 613, 160, 2037, 1946, 1946, 627, 133, 1474, - /* 610 */ 231, 1392, 1773, 1495, 177, 2073, 2074, 1766, 135, 2078, - /* 620 */ 38, 37, 1977, 2080, 44, 42, 41, 40, 39, 524, - /* 630 */ 566, 1976, 1422, 611, 1469, 2012, 656, 1571, 106, 1978, - /* 640 */ 631, 1980, 1981, 626, 534, 621, 1400, 129, 140, 2075, - /* 650 */ 146, 2036, 2065, 1995, 509, 483, 361, 2061, 229, 45, - /* 660 */ 43, 628, 262, 611, 1771, 382, 1946, 367, 627, 1394, - /* 670 */ 11, 46, 9, 527, 1629, 1371, 1372, 420, 521, 1628, - /* 680 */ 1474, 1824, 1392, 228, 1762, 60, 563, 1569, 1570, 1572, - /* 690 */ 1573, 1933, 1976, 718, 1771, 1960, 2012, 1823, 611, 164, - /* 700 */ 1978, 631, 1980, 1981, 626, 1469, 621, 552, 1476, 1477, - /* 710 */ 1867, 2134, 281, 1627, 572, 567, 561, 1400, 1946, 67, - /* 720 */ 1748, 186, 66, 1946, 1956, 1962, 2140, 178, 1626, 1771, - /* 730 */ 1484, 2135, 577, 13, 12, 621, 1419, 1449, 1459, 389, - /* 740 */ 553, 2102, 14, 1475, 1478, 611, 38, 37, 1505, 1747, - /* 750 */ 44, 42, 41, 40, 39, 31, 172, 1946, 1395, 434, - /* 760 */ 1393, 38, 37, 1867, 718, 44, 42, 41, 40, 39, - /* 770 */ 1967, 405, 1946, 404, 188, 240, 1771, 1422, 1872, 1476, - /* 780 */ 1477, 1746, 1625, 1398, 1399, 1419, 1448, 1451, 1452, 1453, - /* 790 */ 1454, 1455, 1456, 1457, 1458, 623, 619, 1467, 1468, 1470, - /* 800 */ 1471, 1472, 1473, 2, 41, 40, 39, 611, 1449, 1459, - /* 810 */ 323, 665, 1417, 11, 1475, 1478, 370, 97, 1969, 442, - /* 820 */ 32, 435, 455, 580, 160, 454, 1946, 663, 1517, 1395, - /* 830 */ 1510, 1393, 1624, 1773, 1560, 181, 373, 1422, 1771, 1764, - /* 840 */ 426, 1965, 456, 1541, 160, 428, 151, 150, 660, 659, - /* 850 */ 658, 148, 1960, 1773, 1398, 1399, 677, 1448, 1451, 1452, - /* 860 */ 1453, 1454, 1455, 1456, 1457, 1458, 623, 619, 1467, 1468, - /* 870 */ 1470, 1471, 1472, 1473, 2, 1623, 1946, 1450, 515, 514, - /* 880 */ 161, 1956, 1962, 33, 52, 300, 339, 1684, 663, 38, - /* 890 */ 37, 551, 621, 44, 42, 41, 40, 39, 416, 298, - /* 900 */ 70, 2138, 615, 69, 2037, 689, 687, 151, 150, 660, - /* 910 */ 659, 658, 148, 1867, 662, 294, 1756, 1815, 1801, 1946, - /* 920 */ 187, 198, 461, 459, 192, 678, 1450, 1741, 452, 1107, - /* 930 */ 1108, 447, 446, 445, 444, 441, 440, 439, 438, 437, - /* 940 */ 433, 432, 431, 430, 340, 423, 422, 421, 594, 418, - /* 950 */ 417, 337, 695, 694, 693, 692, 377, 60, 691, 690, - /* 960 */ 141, 685, 684, 683, 682, 681, 680, 679, 153, 675, - /* 970 */ 674, 673, 376, 375, 670, 669, 668, 667, 666, 1622, - /* 980 */ 239, 611, 663, 1621, 1758, 611, 380, 1854, 379, 508, - /* 990 */ 552, 2085, 1537, 611, 2134, 481, 105, 1613, 1614, 482, - /* 1000 */ 1977, 151, 150, 660, 659, 658, 148, 1768, 1754, 2140, - /* 1010 */ 178, 507, 1771, 71, 2135, 577, 1771, 50, 143, 3, - /* 1020 */ 131, 583, 221, 1946, 1771, 219, 235, 1946, 552, 611, - /* 1030 */ 552, 1995, 2134, 1403, 2134, 1674, 78, 77, 409, 591, - /* 1040 */ 588, 185, 611, 145, 1946, 581, 627, 2140, 178, 2140, - /* 1050 */ 178, 1631, 2135, 577, 2135, 577, 548, 520, 540, 322, - /* 1060 */ 1771, 611, 397, 79, 395, 391, 387, 384, 381, 622, - /* 1070 */ 1976, 137, 1977, 1771, 2012, 592, 62, 106, 1978, 631, - /* 1080 */ 1980, 1981, 626, 611, 621, 1540, 1402, 223, 244, 175, - /* 1090 */ 222, 2065, 1771, 1667, 655, 361, 2061, 596, 611, 611, - /* 1100 */ 552, 1665, 225, 1995, 2134, 224, 227, 181, 611, 226, - /* 1110 */ 343, 628, 597, 275, 1771, 522, 1946, 2092, 627, 2140, - /* 1120 */ 178, 238, 606, 525, 2135, 577, 1977, 611, 1568, 1771, - /* 1130 */ 1771, 179, 2073, 2074, 149, 135, 2078, 1726, 429, 1771, - /* 1140 */ 246, 608, 1976, 13, 12, 102, 2012, 47, 2105, 106, - /* 1150 */ 1978, 631, 1980, 1981, 626, 99, 621, 1995, 1771, 268, - /* 1160 */ 87, 2154, 579, 2065, 68, 628, 257, 361, 2061, 214, - /* 1170 */ 1946, 344, 627, 342, 341, 147, 506, 564, 2099, 251, - /* 1180 */ 508, 611, 1406, 611, 149, 62, 595, 1977, 47, 47, - /* 1190 */ 1661, 635, 147, 1996, 149, 374, 1976, 609, 378, 1336, - /* 1200 */ 2012, 132, 507, 106, 1978, 631, 1980, 1981, 626, 1876, - /* 1210 */ 621, 273, 1771, 1655, 1771, 2154, 603, 2065, 1995, 1150, - /* 1220 */ 147, 361, 2061, 1812, 2095, 671, 628, 277, 364, 363, - /* 1230 */ 672, 1946, 2112, 627, 589, 1405, 1221, 1511, 1408, 713, - /* 1240 */ 1460, 293, 1, 1249, 1253, 584, 1260, 1169, 259, 1474, - /* 1250 */ 1977, 1401, 1167, 1258, 1151, 256, 4, 1976, 383, 388, - /* 1260 */ 336, 2012, 1358, 288, 106, 1978, 631, 1980, 1981, 626, - /* 1270 */ 1977, 621, 152, 191, 1469, 415, 2154, 1422, 2065, 1877, - /* 1280 */ 419, 1995, 361, 2061, 450, 424, 1400, 1417, 436, 628, - /* 1290 */ 1869, 443, 449, 559, 1946, 451, 627, 457, 195, 458, - /* 1300 */ 460, 1995, 462, 1423, 463, 1425, 475, 201, 472, 628, - /* 1310 */ 1420, 476, 203, 1424, 1946, 1426, 627, 477, 478, 480, - /* 1320 */ 1976, 206, 484, 208, 2012, 82, 83, 106, 1978, 631, - /* 1330 */ 1980, 1981, 626, 617, 621, 212, 1124, 541, 501, 2154, - /* 1340 */ 1976, 2065, 503, 502, 2012, 361, 2061, 106, 1978, 631, - /* 1350 */ 1980, 1981, 626, 505, 621, 1761, 2128, 109, 325, 2154, - /* 1360 */ 218, 2065, 1923, 1922, 1757, 361, 2061, 220, 539, 154, - /* 1370 */ 721, 233, 155, 1977, 1759, 1755, 2084, 156, 157, 542, - /* 1380 */ 289, 236, 549, 543, 287, 546, 2111, 565, 2096, 556, - /* 1390 */ 601, 2110, 562, 2087, 350, 568, 2106, 574, 1409, 171, - /* 1400 */ 1404, 250, 168, 252, 1995, 711, 707, 703, 699, 285, - /* 1410 */ 242, 245, 628, 7, 557, 555, 554, 1946, 1537, 627, - /* 1420 */ 2157, 585, 2133, 1412, 1414, 351, 582, 255, 136, 1421, - /* 1430 */ 593, 253, 1977, 254, 2081, 354, 619, 1467, 1468, 1470, - /* 1440 */ 1471, 1472, 1473, 1976, 290, 104, 264, 2012, 278, 92, - /* 1450 */ 106, 1978, 631, 1980, 1981, 626, 599, 621, 600, 1894, - /* 1460 */ 1893, 1892, 2040, 1995, 2065, 291, 604, 357, 361, 2061, - /* 1470 */ 94, 628, 292, 96, 605, 1772, 1946, 258, 627, 59, - /* 1480 */ 2046, 607, 98, 1816, 633, 295, 1977, 1742, 714, 51, - /* 1490 */ 715, 327, 717, 328, 1940, 319, 284, 299, 1939, 304, - /* 1500 */ 75, 297, 1976, 1938, 1937, 76, 2012, 1934, 385, 106, - /* 1510 */ 1978, 631, 1980, 1981, 626, 266, 621, 1995, 318, 308, - /* 1520 */ 265, 2038, 386, 2065, 1386, 628, 1387, 361, 2061, 390, - /* 1530 */ 1946, 184, 627, 1932, 392, 393, 394, 1365, 1931, 234, - /* 1540 */ 396, 1930, 1929, 398, 400, 1928, 402, 1977, 1361, 1360, - /* 1550 */ 1905, 1904, 407, 408, 1903, 1902, 1976, 1315, 1862, 1861, - /* 1560 */ 2012, 1859, 142, 106, 1978, 631, 1980, 1981, 626, 1858, - /* 1570 */ 621, 1857, 1860, 1856, 1855, 614, 1853, 2065, 1995, 1852, - /* 1580 */ 1851, 361, 2061, 189, 425, 1850, 628, 427, 1849, 1848, - /* 1590 */ 1847, 1946, 1846, 627, 144, 1834, 1833, 1832, 1831, 1830, - /* 1600 */ 1829, 1828, 1827, 1317, 453, 1977, 1845, 1844, 1843, 1842, - /* 1610 */ 1841, 1840, 1839, 1838, 1837, 1836, 1835, 1976, 1826, 1825, - /* 1620 */ 1689, 2012, 1196, 196, 107, 1978, 631, 1980, 1981, 626, - /* 1630 */ 1688, 621, 1686, 197, 1650, 199, 1995, 1110, 2065, 1109, - /* 1640 */ 1649, 1918, 2064, 2061, 628, 1912, 1901, 173, 207, 1946, - /* 1650 */ 1900, 627, 1966, 1880, 1750, 1143, 73, 1685, 1683, 1977, - /* 1660 */ 1681, 1679, 1677, 485, 200, 74, 205, 1664, 468, 470, - /* 1670 */ 487, 489, 493, 497, 491, 1976, 1663, 486, 495, 2012, - /* 1680 */ 1646, 490, 107, 1978, 631, 1980, 1981, 626, 1977, 621, - /* 1690 */ 1995, 494, 498, 1752, 499, 1264, 2065, 1751, 628, 1265, - /* 1700 */ 616, 2061, 1675, 1946, 1187, 627, 1186, 1185, 61, 1184, - /* 1710 */ 686, 1179, 688, 1181, 1180, 1668, 1178, 345, 346, 1995, - /* 1720 */ 523, 1666, 347, 526, 1645, 528, 1644, 625, 1643, 629, - /* 1730 */ 532, 108, 1946, 2012, 627, 1917, 107, 1978, 631, 1980, - /* 1740 */ 1981, 626, 530, 621, 217, 1376, 1977, 1375, 1378, 55, - /* 1750 */ 2065, 536, 1367, 1911, 330, 2061, 544, 1899, 1976, 1897, - /* 1760 */ 26, 2139, 2012, 19, 16, 316, 1978, 631, 1980, 1981, - /* 1770 */ 626, 624, 621, 612, 2030, 558, 560, 1995, 1583, 28, - /* 1780 */ 241, 58, 243, 1567, 248, 628, 166, 247, 249, 29, - /* 1790 */ 1946, 1967, 627, 30, 1559, 20, 63, 17, 88, 1598, - /* 1800 */ 1977, 1603, 1604, 1597, 21, 352, 1602, 56, 1601, 353, - /* 1810 */ 1534, 545, 1533, 261, 237, 1898, 1976, 1896, 1895, 348, - /* 1820 */ 2012, 57, 550, 165, 1978, 631, 1980, 1981, 626, 5, - /* 1830 */ 621, 1995, 158, 6, 169, 1879, 91, 90, 22, 628, - /* 1840 */ 93, 267, 1565, 269, 1946, 274, 627, 65, 1878, 95, - /* 1850 */ 279, 23, 99, 12, 1977, 1410, 2015, 170, 1464, 1462, - /* 1860 */ 620, 182, 36, 1441, 15, 602, 634, 369, 276, 638, - /* 1870 */ 1976, 1461, 1433, 24, 2012, 578, 2155, 107, 1978, 631, - /* 1880 */ 1980, 1981, 626, 25, 621, 1995, 632, 1250, 1247, 636, - /* 1890 */ 639, 2065, 1244, 628, 641, 642, 2062, 644, 1946, 645, - /* 1900 */ 627, 1238, 1236, 1486, 647, 1242, 1977, 10, 648, 1241, - /* 1910 */ 1227, 100, 282, 1259, 101, 654, 1496, 1240, 1239, 1255, - /* 1920 */ 72, 1141, 1977, 664, 1976, 1175, 1174, 630, 2012, 1173, - /* 1930 */ 1172, 164, 1978, 631, 1980, 1981, 626, 1995, 621, 1171, - /* 1940 */ 1170, 1485, 1168, 1166, 1165, 628, 1164, 1194, 676, 1162, - /* 1950 */ 1946, 1161, 627, 1995, 283, 1160, 1159, 1158, 1157, 1156, - /* 1960 */ 1189, 628, 1153, 1191, 1152, 1149, 1946, 1148, 627, 1147, - /* 1970 */ 1146, 1682, 696, 2103, 697, 698, 1976, 1680, 700, 701, - /* 1980 */ 2012, 702, 1678, 310, 1978, 631, 1980, 1981, 626, 704, - /* 1990 */ 621, 706, 1976, 705, 1676, 708, 2012, 709, 710, 165, - /* 2000 */ 1978, 631, 1980, 1981, 626, 1662, 621, 712, 1099, 1642, - /* 2010 */ 286, 1977, 716, 1617, 1396, 296, 719, 720, 1617, 1617, - /* 2020 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 573, 1617, 1977, - /* 2030 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2040 */ 1617, 1617, 1995, 1617, 1617, 1617, 1617, 356, 1617, 1617, - /* 2050 */ 628, 1617, 2156, 1617, 1617, 1946, 1617, 627, 1617, 1617, - /* 2060 */ 1995, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 625, 1617, - /* 2070 */ 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, - /* 2080 */ 1617, 1976, 1617, 1977, 1617, 2012, 1617, 1617, 317, 1978, - /* 2090 */ 631, 1980, 1981, 626, 1617, 621, 1617, 1617, 1617, 1976, - /* 2100 */ 1977, 1617, 1617, 2012, 1617, 1617, 316, 1978, 631, 1980, - /* 2110 */ 1981, 626, 1617, 621, 1995, 2031, 1617, 1617, 1617, 366, - /* 2120 */ 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, - /* 2130 */ 1617, 1995, 1617, 1617, 1617, 1617, 368, 1617, 1617, 628, - /* 2140 */ 1617, 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, - /* 2150 */ 1617, 1617, 1977, 1976, 1617, 1617, 1617, 2012, 1617, 1617, - /* 2160 */ 317, 1978, 631, 1980, 1981, 626, 1617, 621, 1977, 1617, - /* 2170 */ 1976, 1617, 1617, 1617, 2012, 1617, 1617, 317, 1978, 631, - /* 2180 */ 1980, 1981, 626, 1995, 621, 1617, 1617, 1617, 1617, 1617, - /* 2190 */ 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, 1995, - /* 2200 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, 1617, - /* 2210 */ 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, 1617, - /* 2220 */ 1977, 1617, 538, 1617, 1617, 1617, 2012, 1617, 1617, 312, - /* 2230 */ 1978, 631, 1980, 1981, 626, 1617, 621, 1617, 1976, 1617, - /* 2240 */ 1617, 1617, 2012, 1617, 1617, 301, 1978, 631, 1980, 1981, - /* 2250 */ 626, 1995, 621, 1617, 1617, 1617, 1617, 1617, 1617, 628, - /* 2260 */ 1617, 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, - /* 2270 */ 1617, 1617, 1617, 1617, 1977, 1617, 1617, 1617, 1617, 1617, - /* 2280 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2290 */ 1976, 1617, 1617, 1617, 2012, 1977, 1617, 302, 1978, 631, - /* 2300 */ 1980, 1981, 626, 1617, 621, 1995, 1617, 1617, 1617, 1617, - /* 2310 */ 1617, 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, - /* 2320 */ 627, 1617, 1617, 1617, 1617, 1617, 1995, 1617, 1617, 1617, - /* 2330 */ 1617, 1617, 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, - /* 2340 */ 1617, 627, 1617, 1617, 1976, 1617, 1617, 1617, 2012, 1617, - /* 2350 */ 1617, 303, 1978, 631, 1980, 1981, 626, 1617, 621, 1617, - /* 2360 */ 1617, 1617, 1617, 1617, 1617, 1976, 1617, 1617, 1617, 2012, - /* 2370 */ 1617, 1977, 309, 1978, 631, 1980, 1981, 626, 1617, 621, - /* 2380 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1977, - /* 2390 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2400 */ 1617, 1617, 1995, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2410 */ 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, - /* 2420 */ 1995, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, - /* 2430 */ 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, - /* 2440 */ 1617, 1976, 1617, 1977, 1617, 2012, 1617, 1617, 313, 1978, - /* 2450 */ 631, 1980, 1981, 626, 1617, 621, 1617, 1617, 1617, 1976, - /* 2460 */ 1977, 1617, 1617, 2012, 1617, 1617, 305, 1978, 631, 1980, - /* 2470 */ 1981, 626, 1617, 621, 1995, 1617, 1617, 1617, 1617, 1617, - /* 2480 */ 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, - /* 2490 */ 1617, 1995, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 628, - /* 2500 */ 1617, 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, - /* 2510 */ 1617, 1617, 1977, 1976, 1617, 1617, 1617, 2012, 1617, 1617, - /* 2520 */ 314, 1978, 631, 1980, 1981, 626, 1617, 621, 1977, 1617, - /* 2530 */ 1976, 1617, 1617, 1617, 2012, 1617, 1617, 306, 1978, 631, - /* 2540 */ 1980, 1981, 626, 1995, 621, 1617, 1617, 1617, 1617, 1617, - /* 2550 */ 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, 1995, - /* 2560 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, 1617, - /* 2570 */ 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, 1617, - /* 2580 */ 1977, 1617, 1976, 1617, 1617, 1617, 2012, 1617, 1617, 315, - /* 2590 */ 1978, 631, 1980, 1981, 626, 1617, 621, 1617, 1976, 1617, - /* 2600 */ 1617, 1617, 2012, 1977, 1617, 307, 1978, 631, 1980, 1981, - /* 2610 */ 626, 1995, 621, 1617, 1617, 1617, 1617, 1617, 1617, 628, - /* 2620 */ 1617, 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, - /* 2630 */ 1617, 1617, 1617, 1617, 1995, 1617, 1617, 1617, 1617, 1617, - /* 2640 */ 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, - /* 2650 */ 1976, 1617, 1617, 1617, 2012, 1977, 1617, 320, 1978, 631, - /* 2660 */ 1980, 1981, 626, 1617, 621, 1617, 1617, 1617, 1617, 1617, - /* 2670 */ 1617, 1617, 1617, 1976, 1617, 1617, 1617, 2012, 1617, 1617, - /* 2680 */ 321, 1978, 631, 1980, 1981, 626, 1995, 621, 1617, 1617, - /* 2690 */ 1617, 1617, 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, - /* 2700 */ 1617, 627, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2710 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1977, 1617, - /* 2720 */ 1617, 1617, 1617, 1617, 1617, 1976, 1617, 1617, 1617, 2012, - /* 2730 */ 1617, 1617, 1989, 1978, 631, 1980, 1981, 626, 1617, 621, - /* 2740 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1995, - /* 2750 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, 1617, - /* 2760 */ 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, 1617, - /* 2770 */ 1977, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2780 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1976, 1977, - /* 2790 */ 1617, 1617, 2012, 1617, 1617, 1988, 1978, 631, 1980, 1981, - /* 2800 */ 626, 1995, 621, 1617, 1617, 1617, 1617, 1617, 1617, 628, - /* 2810 */ 1617, 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, - /* 2820 */ 1995, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, - /* 2830 */ 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, - /* 2840 */ 1976, 1977, 1617, 1617, 2012, 1617, 1617, 1987, 1978, 631, - /* 2850 */ 1980, 1981, 626, 1617, 621, 1617, 1617, 1977, 1617, 1976, - /* 2860 */ 1617, 1617, 1617, 2012, 1617, 1617, 332, 1978, 631, 1980, - /* 2870 */ 1981, 626, 1995, 621, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2880 */ 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, 1995, 1617, - /* 2890 */ 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, 1617, 1617, - /* 2900 */ 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, 1617, 1977, - /* 2910 */ 1617, 1976, 1617, 1617, 1617, 2012, 1617, 1617, 333, 1978, - /* 2920 */ 631, 1980, 1981, 626, 1617, 621, 1617, 1976, 1617, 1617, - /* 2930 */ 1617, 2012, 1977, 1617, 329, 1978, 631, 1980, 1981, 626, - /* 2940 */ 1995, 621, 1617, 1617, 1617, 1617, 1617, 1617, 628, 1617, - /* 2950 */ 1617, 1617, 1617, 1946, 1617, 627, 1617, 1617, 1617, 1617, - /* 2960 */ 1617, 1617, 1617, 1995, 1617, 1617, 1617, 1617, 1617, 1617, - /* 2970 */ 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, 627, 1976, - /* 2980 */ 1617, 1617, 1617, 2012, 1977, 1617, 334, 1978, 631, 1980, - /* 2990 */ 1981, 626, 1617, 621, 1617, 1617, 1617, 1617, 1617, 1617, - /* 3000 */ 1617, 1617, 629, 1617, 1617, 1617, 2012, 1617, 1617, 312, - /* 3010 */ 1978, 631, 1980, 1981, 626, 1995, 621, 1617, 1617, 1617, - /* 3020 */ 1617, 1617, 1617, 628, 1617, 1617, 1617, 1617, 1946, 1617, - /* 3030 */ 627, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 3040 */ 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, - /* 3050 */ 1617, 1617, 1617, 1617, 1976, 1617, 1617, 1617, 2012, 1617, - /* 3060 */ 1617, 311, 1978, 631, 1980, 1981, 626, 1617, 621, + /* 0 */ 1766, 1764, 372, 1892, 578, 1821, 1823, 467, 2140, 468, + /* 10 */ 1658, 1966, 45, 43, 1548, 1970, 1890, 600, 232, 2001, + /* 20 */ 367, 1805, 1398, 577, 178, 612, 1966, 572, 2141, 579, + /* 30 */ 103, 590, 172, 1478, 466, 1396, 1691, 471, 1664, 1552, + /* 40 */ 1962, 1968, 38, 37, 138, 1423, 44, 42, 41, 40, + /* 50 */ 39, 623, 1767, 339, 1877, 1962, 1968, 349, 1473, 163, + /* 60 */ 8, 2145, 137, 18, 1729, 2140, 623, 571, 119, 1983, + /* 70 */ 1404, 118, 117, 116, 115, 114, 113, 112, 111, 110, + /* 80 */ 1828, 2144, 359, 45, 43, 2141, 2143, 336, 473, 1104, + /* 90 */ 160, 367, 612, 1398, 469, 14, 1826, 332, 174, 1777, + /* 100 */ 2001, 521, 520, 519, 1478, 590, 1396, 160, 593, 134, + /* 110 */ 515, 1815, 1488, 1952, 514, 629, 1778, 720, 1423, 513, + /* 120 */ 518, 592, 176, 2079, 2080, 512, 135, 2084, 1106, 1473, + /* 130 */ 1109, 1110, 1480, 1481, 18, 612, 137, 1753, 1507, 1982, + /* 140 */ 485, 1404, 1123, 2018, 1122, 190, 106, 1984, 633, 1986, + /* 150 */ 1987, 628, 578, 623, 60, 2145, 2140, 215, 175, 2140, + /* 160 */ 2071, 1407, 1453, 1463, 361, 2067, 14, 48, 1479, 1482, + /* 170 */ 665, 577, 178, 1124, 1423, 2144, 2141, 579, 180, 2141, + /* 180 */ 2142, 81, 573, 1399, 80, 1397, 2097, 1454, 720, 151, + /* 190 */ 150, 662, 661, 660, 148, 1508, 177, 2079, 2080, 485, + /* 200 */ 135, 2084, 475, 1480, 1481, 471, 1664, 263, 1402, 1403, + /* 210 */ 48, 1452, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, + /* 220 */ 625, 621, 1471, 1472, 1474, 1475, 1476, 1477, 2, 521, + /* 230 */ 520, 519, 139, 1453, 1463, 2042, 568, 134, 515, 1479, + /* 240 */ 1482, 405, 514, 404, 60, 1423, 89, 513, 518, 60, + /* 250 */ 230, 35, 280, 512, 1399, 64, 1397, 38, 37, 1424, + /* 260 */ 1454, 44, 42, 41, 40, 39, 1541, 34, 365, 1502, + /* 270 */ 1503, 1504, 1505, 1506, 1510, 1511, 1512, 1513, 1424, 1402, + /* 280 */ 1403, 84, 1452, 1455, 1456, 1457, 1458, 1459, 1460, 1461, + /* 290 */ 1462, 625, 621, 1471, 1472, 1474, 1475, 1476, 1477, 2, + /* 300 */ 1828, 11, 45, 43, 1771, 181, 590, 355, 1751, 60, + /* 310 */ 367, 1410, 1398, 86, 327, 667, 1826, 539, 590, 537, + /* 320 */ 574, 569, 563, 1478, 1620, 1396, 1230, 655, 654, 653, + /* 330 */ 1234, 652, 1236, 1237, 651, 1239, 648, 137, 1245, 645, + /* 340 */ 1247, 1248, 642, 639, 216, 1645, 60, 412, 1473, 137, + /* 350 */ 38, 37, 1971, 18, 44, 42, 41, 40, 39, 167, + /* 360 */ 1404, 181, 1644, 1966, 149, 502, 498, 494, 490, 213, + /* 370 */ 667, 1273, 1274, 45, 43, 1483, 44, 42, 41, 40, + /* 380 */ 39, 367, 162, 1398, 1634, 14, 27, 322, 382, 1952, + /* 390 */ 1343, 1344, 1962, 1968, 1478, 181, 1396, 179, 2079, 2080, + /* 400 */ 181, 135, 2084, 623, 613, 85, 1952, 720, 211, 260, + /* 410 */ 2079, 589, 1828, 130, 588, 1623, 53, 2140, 129, 1473, + /* 420 */ 1822, 1823, 1480, 1481, 1615, 506, 1342, 1345, 1827, 231, + /* 430 */ 554, 1404, 577, 178, 2140, 1775, 119, 2141, 579, 118, + /* 440 */ 117, 116, 115, 114, 113, 112, 111, 110, 1643, 2146, + /* 450 */ 178, 1892, 1453, 1463, 2141, 579, 46, 84, 1479, 1482, + /* 460 */ 181, 358, 38, 37, 1889, 600, 44, 42, 41, 40, + /* 470 */ 39, 133, 413, 1399, 1426, 1397, 210, 204, 720, 1422, + /* 480 */ 1770, 209, 38, 37, 481, 414, 44, 42, 41, 40, + /* 490 */ 39, 1190, 1952, 1480, 1481, 1375, 1376, 181, 1402, 1403, + /* 500 */ 202, 1452, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, + /* 510 */ 625, 621, 1471, 1472, 1474, 1475, 1476, 1477, 2, 1614, + /* 520 */ 1642, 723, 658, 1453, 1463, 476, 1192, 468, 1658, 1479, + /* 530 */ 1482, 613, 38, 37, 450, 287, 44, 42, 41, 40, + /* 540 */ 39, 49, 517, 516, 1399, 54, 1397, 38, 37, 1425, + /* 550 */ 171, 44, 42, 41, 40, 39, 713, 709, 705, 701, + /* 560 */ 285, 1858, 1775, 1983, 1952, 11, 1123, 1509, 1122, 1402, + /* 570 */ 1403, 1423, 1452, 1455, 1456, 1457, 1458, 1459, 1460, 1461, + /* 580 */ 1462, 625, 621, 1471, 1472, 1474, 1475, 1476, 1477, 2, + /* 590 */ 45, 43, 194, 193, 2001, 1404, 104, 1124, 367, 278, + /* 600 */ 1398, 679, 630, 613, 11, 1828, 9, 1952, 1752, 629, + /* 610 */ 1426, 1478, 360, 1396, 406, 449, 31, 183, 240, 1635, + /* 620 */ 1585, 1826, 38, 37, 1983, 2086, 44, 42, 41, 40, + /* 630 */ 39, 1760, 609, 1982, 1775, 1564, 1473, 2018, 159, 32, + /* 640 */ 106, 1984, 633, 1986, 1987, 628, 1970, 623, 1404, 1514, + /* 650 */ 140, 2083, 146, 2042, 2071, 2001, 554, 1966, 361, 2067, + /* 660 */ 2140, 45, 43, 630, 2086, 613, 370, 266, 1952, 367, + /* 670 */ 629, 1398, 265, 46, 160, 2146, 178, 1575, 1983, 410, + /* 680 */ 2141, 579, 1478, 1777, 1396, 1426, 1962, 1968, 362, 1369, + /* 690 */ 2082, 234, 181, 262, 1982, 720, 1775, 623, 2018, 2086, + /* 700 */ 582, 164, 1984, 633, 1986, 1987, 628, 1473, 623, 2001, + /* 710 */ 1480, 1481, 430, 1328, 1329, 665, 615, 630, 2043, 1404, + /* 720 */ 1641, 429, 1952, 1750, 629, 2081, 565, 1573, 1574, 1576, + /* 730 */ 1577, 97, 1398, 2145, 151, 150, 662, 661, 660, 148, + /* 740 */ 1453, 1463, 555, 2108, 14, 1396, 1479, 1482, 1982, 617, + /* 750 */ 1425, 2043, 2018, 1768, 187, 106, 1984, 633, 1986, 1987, + /* 760 */ 628, 1399, 623, 1397, 1952, 33, 720, 2160, 1762, 2071, + /* 770 */ 535, 38, 37, 361, 2067, 44, 42, 41, 40, 39, + /* 780 */ 1404, 1480, 1481, 533, 2105, 531, 1402, 1403, 172, 1452, + /* 790 */ 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 625, 621, + /* 800 */ 1471, 1472, 1474, 1475, 1476, 1477, 2, 613, 1873, 613, + /* 810 */ 1878, 1453, 1463, 325, 401, 1421, 373, 1479, 1482, 186, + /* 820 */ 1873, 411, 443, 145, 160, 457, 1608, 720, 456, 239, + /* 830 */ 665, 188, 1399, 1777, 1397, 403, 399, 1640, 1775, 1828, + /* 840 */ 1775, 1639, 1423, 426, 294, 458, 371, 1805, 428, 151, + /* 850 */ 150, 662, 661, 660, 148, 1826, 1545, 1402, 1403, 1758, + /* 860 */ 1452, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 625, + /* 870 */ 621, 1471, 1472, 1474, 1475, 1476, 1477, 2, 41, 40, + /* 880 */ 39, 1952, 510, 161, 1622, 1952, 613, 1873, 300, 340, + /* 890 */ 1688, 613, 52, 1399, 262, 1397, 691, 689, 192, 553, + /* 900 */ 129, 416, 298, 70, 509, 420, 69, 511, 128, 127, + /* 910 */ 126, 125, 124, 123, 122, 121, 120, 1775, 1402, 1403, + /* 920 */ 13, 12, 1775, 583, 198, 463, 461, 659, 343, 663, + /* 930 */ 1819, 454, 1819, 2144, 448, 447, 446, 445, 442, 441, + /* 940 */ 440, 439, 438, 434, 433, 432, 431, 324, 423, 422, + /* 950 */ 421, 1638, 418, 417, 338, 697, 696, 695, 694, 377, + /* 960 */ 60, 693, 692, 141, 687, 686, 685, 684, 683, 682, + /* 970 */ 681, 153, 677, 676, 675, 376, 375, 672, 671, 670, + /* 980 */ 669, 668, 613, 1637, 1454, 526, 1109, 1110, 1636, 344, + /* 990 */ 613, 342, 341, 1633, 508, 1952, 435, 613, 510, 105, + /* 1000 */ 536, 38, 37, 1665, 436, 44, 42, 41, 40, 39, + /* 1010 */ 1632, 483, 1983, 1775, 229, 1521, 613, 613, 596, 613, + /* 1020 */ 509, 1775, 613, 680, 613, 1745, 549, 1952, 1775, 529, + /* 1030 */ 484, 1772, 1952, 550, 523, 1939, 594, 1952, 598, 228, + /* 1040 */ 78, 77, 409, 2001, 1730, 185, 664, 1775, 1775, 1819, + /* 1050 */ 1775, 593, 715, 1775, 1952, 1775, 1952, 50, 629, 3, + /* 1060 */ 554, 585, 1631, 323, 2140, 143, 397, 131, 395, 391, + /* 1070 */ 387, 384, 381, 613, 1983, 67, 2091, 1541, 66, 2146, + /* 1080 */ 178, 613, 1982, 389, 2141, 579, 2018, 599, 613, 106, + /* 1090 */ 1984, 633, 1986, 1987, 628, 275, 623, 1983, 238, 1544, + /* 1100 */ 71, 175, 608, 2071, 1775, 2001, 1952, 361, 2067, 613, + /* 1110 */ 1678, 181, 1775, 630, 235, 1630, 613, 1629, 1952, 1775, + /* 1120 */ 629, 271, 272, 610, 221, 624, 270, 219, 2001, 2098, + /* 1130 */ 611, 613, 522, 1617, 1618, 613, 630, 87, 620, 1628, + /* 1140 */ 1775, 1952, 657, 629, 1982, 281, 1671, 1775, 2018, 374, + /* 1150 */ 79, 106, 1984, 633, 1986, 1987, 628, 1627, 623, 1952, + /* 1160 */ 1669, 1952, 1775, 2160, 380, 2071, 1775, 1982, 524, 361, + /* 1170 */ 2067, 2018, 379, 1983, 106, 1984, 633, 1986, 1987, 628, + /* 1180 */ 2118, 623, 527, 1952, 1626, 1625, 2160, 1406, 2071, 62, + /* 1190 */ 364, 363, 361, 2067, 223, 581, 1983, 222, 2111, 225, + /* 1200 */ 1412, 1952, 224, 561, 2001, 227, 554, 257, 226, 244, + /* 1210 */ 2140, 1478, 630, 1405, 554, 566, 214, 1952, 2140, 629, + /* 1220 */ 149, 13, 12, 251, 378, 2146, 178, 2001, 1952, 1952, + /* 1230 */ 2141, 579, 47, 2146, 178, 630, 1473, 47, 2141, 579, + /* 1240 */ 1952, 1572, 629, 1982, 1882, 268, 68, 2018, 1404, 2002, + /* 1250 */ 106, 1984, 633, 1986, 1987, 628, 147, 623, 149, 542, + /* 1260 */ 673, 246, 2160, 62, 2071, 1983, 1982, 1659, 361, 2067, + /* 1270 */ 2018, 47, 597, 106, 1984, 633, 1986, 1987, 628, 2134, + /* 1280 */ 623, 1973, 1171, 1499, 1464, 2160, 586, 2071, 1983, 1340, + /* 1290 */ 674, 361, 2067, 1152, 1816, 619, 2001, 273, 605, 2101, + /* 1300 */ 637, 554, 2090, 147, 627, 2140, 102, 149, 277, 1952, + /* 1310 */ 1223, 629, 1169, 591, 256, 1515, 99, 1, 4, 2001, + /* 1320 */ 2146, 178, 132, 293, 147, 2141, 579, 630, 1153, 1975, + /* 1330 */ 383, 259, 1952, 388, 629, 1982, 1362, 1409, 337, 2018, + /* 1340 */ 288, 191, 316, 1984, 633, 1986, 1987, 628, 626, 623, + /* 1350 */ 614, 2036, 1251, 415, 1426, 1255, 419, 1883, 1982, 1262, + /* 1360 */ 452, 1413, 2018, 1408, 424, 106, 1984, 633, 1986, 1987, + /* 1370 */ 628, 1421, 623, 437, 1260, 1983, 152, 2046, 1875, 2071, + /* 1380 */ 444, 459, 451, 361, 2067, 453, 1416, 1418, 460, 195, + /* 1390 */ 462, 464, 1427, 465, 474, 1429, 1424, 478, 1983, 621, + /* 1400 */ 1471, 1472, 1474, 1475, 1476, 1477, 2001, 477, 201, 203, + /* 1410 */ 1428, 479, 1430, 486, 630, 480, 482, 206, 1126, 1952, + /* 1420 */ 208, 629, 82, 83, 212, 503, 504, 505, 507, 2001, + /* 1430 */ 109, 1765, 218, 1929, 326, 541, 543, 630, 289, 544, + /* 1440 */ 1928, 551, 1952, 1761, 629, 1982, 233, 220, 154, 2018, + /* 1450 */ 155, 1763, 106, 1984, 633, 1986, 1987, 628, 1759, 623, + /* 1460 */ 236, 156, 157, 567, 2044, 2102, 2071, 548, 1982, 2117, + /* 1470 */ 361, 2067, 2018, 1983, 2116, 106, 1984, 633, 1986, 1987, + /* 1480 */ 628, 558, 623, 603, 545, 242, 564, 616, 350, 2071, + /* 1490 */ 2112, 570, 7, 361, 2067, 245, 2093, 576, 168, 250, + /* 1500 */ 1983, 556, 252, 559, 2001, 557, 351, 1541, 2163, 587, + /* 1510 */ 584, 258, 630, 255, 2139, 136, 1425, 1952, 595, 629, + /* 1520 */ 354, 2087, 290, 601, 253, 264, 92, 602, 291, 1900, + /* 1530 */ 1899, 2001, 1898, 254, 357, 606, 94, 607, 96, 630, + /* 1540 */ 1776, 59, 292, 1982, 1952, 2052, 629, 2018, 98, 716, + /* 1550 */ 107, 1984, 633, 1986, 1987, 628, 635, 623, 1746, 295, + /* 1560 */ 1820, 717, 284, 719, 2071, 319, 1983, 51, 2070, 2067, + /* 1570 */ 1982, 304, 318, 299, 2018, 297, 328, 107, 1984, 633, + /* 1580 */ 1986, 1987, 628, 329, 623, 308, 1946, 1945, 75, 1944, + /* 1590 */ 1943, 2071, 76, 1940, 385, 618, 2067, 2001, 386, 1390, + /* 1600 */ 1391, 184, 390, 1938, 392, 630, 393, 394, 1937, 396, + /* 1610 */ 1952, 1936, 629, 398, 1935, 1934, 400, 402, 1365, 1364, + /* 1620 */ 1911, 1983, 1910, 407, 1909, 408, 1908, 1319, 1866, 1865, + /* 1630 */ 1863, 1862, 1861, 142, 1864, 1860, 631, 1859, 1857, 1983, + /* 1640 */ 2018, 1856, 1855, 107, 1984, 633, 1986, 1987, 628, 189, + /* 1650 */ 623, 425, 2001, 1854, 427, 1868, 1853, 2071, 1852, 1851, + /* 1660 */ 630, 331, 2067, 1850, 1849, 1952, 1848, 629, 1321, 144, + /* 1670 */ 2001, 1847, 1846, 1845, 1844, 1843, 1842, 1841, 630, 1840, + /* 1680 */ 1839, 1838, 1837, 1952, 455, 629, 1836, 1867, 1835, 1834, + /* 1690 */ 1833, 1982, 1832, 1983, 1831, 2018, 1830, 1829, 165, 1984, + /* 1700 */ 633, 1986, 1987, 628, 1198, 623, 1693, 196, 1692, 1982, + /* 1710 */ 197, 1690, 1654, 2018, 1983, 1112, 107, 1984, 633, 1986, + /* 1720 */ 1987, 628, 173, 623, 2001, 199, 1653, 1111, 1924, 1918, + /* 1730 */ 2071, 1907, 630, 1906, 73, 2068, 207, 1952, 1972, 629, + /* 1740 */ 470, 1886, 200, 74, 205, 2001, 472, 1754, 1689, 1145, + /* 1750 */ 580, 2161, 1687, 630, 487, 488, 489, 1685, 1952, 491, + /* 1760 */ 629, 493, 492, 1982, 1683, 495, 496, 2018, 1681, 499, + /* 1770 */ 164, 1984, 633, 1986, 1987, 628, 497, 623, 501, 1983, + /* 1780 */ 500, 1668, 1667, 1650, 1982, 1756, 1267, 1266, 2018, 1755, + /* 1790 */ 1189, 310, 1984, 633, 1986, 1987, 628, 1188, 623, 1181, + /* 1800 */ 1983, 1187, 61, 1679, 1186, 217, 1183, 688, 1182, 1180, + /* 1810 */ 2001, 690, 2109, 345, 1672, 346, 1670, 347, 630, 528, + /* 1820 */ 525, 1649, 530, 1952, 1648, 629, 1647, 532, 534, 108, + /* 1830 */ 26, 2001, 1380, 1379, 538, 575, 356, 1923, 1382, 630, + /* 1840 */ 1371, 1917, 546, 158, 1952, 1905, 629, 1903, 19, 1982, + /* 1850 */ 16, 2145, 1587, 2018, 560, 28, 165, 1984, 633, 1986, + /* 1860 */ 1987, 628, 58, 623, 55, 63, 562, 241, 20, 1983, + /* 1870 */ 1982, 243, 1571, 547, 2018, 166, 237, 317, 1984, 633, + /* 1880 */ 1986, 1987, 628, 247, 623, 348, 5, 1983, 552, 29, + /* 1890 */ 248, 6, 1563, 17, 88, 30, 249, 1973, 1607, 21, + /* 1900 */ 2001, 1602, 1601, 1608, 352, 1606, 1605, 353, 627, 2162, + /* 1910 */ 261, 1538, 57, 1952, 56, 629, 1904, 1902, 2001, 1537, + /* 1920 */ 169, 1901, 1885, 366, 90, 91, 630, 267, 22, 1884, + /* 1930 */ 1569, 1952, 93, 629, 269, 274, 279, 65, 95, 1982, + /* 1940 */ 99, 23, 1983, 2018, 276, 604, 316, 1984, 633, 1986, + /* 1950 */ 1987, 628, 1490, 623, 12, 2037, 10, 1982, 1414, 2021, + /* 1960 */ 622, 2018, 1500, 1445, 317, 1984, 633, 1986, 1987, 628, + /* 1970 */ 1468, 623, 1489, 2001, 1466, 36, 1244, 1465, 368, 170, + /* 1980 */ 15, 630, 24, 25, 182, 634, 1952, 1437, 629, 636, + /* 1990 */ 1252, 369, 1249, 638, 640, 641, 632, 1983, 1246, 643, + /* 2000 */ 644, 646, 1240, 647, 649, 1238, 650, 1229, 100, 1243, + /* 2010 */ 656, 1242, 1982, 1983, 1241, 282, 2018, 1261, 101, 317, + /* 2020 */ 1984, 633, 1986, 1987, 628, 72, 623, 1257, 2001, 1143, + /* 2030 */ 666, 1177, 1176, 1175, 1174, 1173, 630, 1172, 1170, 1168, + /* 2040 */ 1196, 1952, 1167, 629, 2001, 1166, 1164, 678, 1163, 1162, + /* 2050 */ 283, 1160, 630, 1161, 1159, 1158, 1193, 1952, 1191, 629, + /* 2060 */ 1155, 1154, 1151, 1150, 1149, 1983, 1686, 540, 1148, 698, + /* 2070 */ 699, 2018, 1684, 702, 312, 1984, 633, 1986, 1987, 628, + /* 2080 */ 700, 623, 704, 1982, 703, 1682, 706, 2018, 1983, 1680, + /* 2090 */ 301, 1984, 633, 1986, 1987, 628, 2001, 623, 707, 708, + /* 2100 */ 710, 711, 712, 1666, 630, 714, 1101, 1646, 286, 1952, + /* 2110 */ 1400, 629, 718, 722, 296, 721, 1621, 1621, 1621, 2001, + /* 2120 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, 1621, + /* 2130 */ 1621, 1621, 1952, 1621, 629, 1982, 1621, 1621, 1621, 2018, + /* 2140 */ 1983, 1621, 302, 1984, 633, 1986, 1987, 628, 1621, 623, + /* 2150 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1982, 1621, + /* 2160 */ 1621, 1983, 2018, 1621, 1621, 303, 1984, 633, 1986, 1987, + /* 2170 */ 628, 2001, 623, 1621, 1621, 1621, 1621, 1621, 1621, 630, + /* 2180 */ 1621, 1621, 1621, 1621, 1952, 1621, 629, 1621, 1621, 1621, + /* 2190 */ 1621, 1621, 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2200 */ 630, 1621, 1621, 1621, 1621, 1952, 1621, 629, 1621, 1621, + /* 2210 */ 1982, 1621, 1621, 1621, 2018, 1621, 1621, 309, 1984, 633, + /* 2220 */ 1986, 1987, 628, 1621, 623, 1621, 1621, 1621, 1621, 1621, + /* 2230 */ 1983, 1982, 1621, 1621, 1621, 2018, 1621, 1621, 313, 1984, + /* 2240 */ 633, 1986, 1987, 628, 1621, 623, 1621, 1621, 1983, 1621, + /* 2250 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2260 */ 1621, 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, + /* 2270 */ 1621, 1621, 1621, 1621, 1952, 1621, 629, 1621, 1621, 2001, + /* 2280 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, 1621, + /* 2290 */ 1621, 1621, 1952, 1621, 629, 1621, 1621, 1621, 1621, 1621, + /* 2300 */ 1982, 1621, 1621, 1983, 2018, 1621, 1621, 305, 1984, 633, + /* 2310 */ 1986, 1987, 628, 1621, 623, 1621, 1621, 1621, 1982, 1621, + /* 2320 */ 1621, 1621, 2018, 1621, 1621, 314, 1984, 633, 1986, 1987, + /* 2330 */ 628, 1621, 623, 1621, 2001, 1621, 1621, 1621, 1621, 1621, + /* 2340 */ 1621, 1621, 630, 1621, 1621, 1621, 1621, 1952, 1621, 629, + /* 2350 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1983, 1621, + /* 2360 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2370 */ 1621, 1621, 1621, 1982, 1983, 1621, 1621, 2018, 1621, 1621, + /* 2380 */ 306, 1984, 633, 1986, 1987, 628, 1621, 623, 1621, 2001, + /* 2390 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, 1621, + /* 2400 */ 1621, 1621, 1952, 1621, 629, 2001, 1621, 1621, 1621, 1621, + /* 2410 */ 1621, 1621, 1621, 630, 1621, 1621, 1621, 1621, 1952, 1621, + /* 2420 */ 629, 1621, 1621, 1621, 1621, 1621, 1983, 1621, 1982, 1621, + /* 2430 */ 1621, 1621, 2018, 1621, 1621, 315, 1984, 633, 1986, 1987, + /* 2440 */ 628, 1621, 623, 1621, 1982, 1621, 1621, 1621, 2018, 1983, + /* 2450 */ 1621, 307, 1984, 633, 1986, 1987, 628, 2001, 623, 1621, + /* 2460 */ 1621, 1621, 1621, 1621, 1621, 630, 1621, 1621, 1621, 1621, + /* 2470 */ 1952, 1621, 629, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2480 */ 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, + /* 2490 */ 1621, 1621, 1621, 1952, 1621, 629, 1982, 1621, 1621, 1621, + /* 2500 */ 2018, 1983, 1621, 320, 1984, 633, 1986, 1987, 628, 1621, + /* 2510 */ 623, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1982, + /* 2520 */ 1621, 1621, 1983, 2018, 1621, 1621, 321, 1984, 633, 1986, + /* 2530 */ 1987, 628, 2001, 623, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2540 */ 630, 1621, 1621, 1621, 1621, 1952, 1621, 629, 1621, 1621, + /* 2550 */ 1621, 1621, 1621, 2001, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2560 */ 1621, 630, 1621, 1621, 1621, 1621, 1952, 1621, 629, 1621, + /* 2570 */ 1621, 1982, 1621, 1621, 1621, 2018, 1621, 1621, 1995, 1984, + /* 2580 */ 633, 1986, 1987, 628, 1621, 623, 1621, 1621, 1621, 1621, + /* 2590 */ 1621, 1983, 1982, 1621, 1621, 1621, 2018, 1621, 1621, 1994, + /* 2600 */ 1984, 633, 1986, 1987, 628, 1621, 623, 1621, 1621, 1983, + /* 2610 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2620 */ 1621, 1621, 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2630 */ 630, 1621, 1621, 1621, 1621, 1952, 1621, 629, 1621, 1621, + /* 2640 */ 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, + /* 2650 */ 1621, 1621, 1621, 1952, 1621, 629, 1621, 1621, 1621, 1621, + /* 2660 */ 1621, 1982, 1621, 1621, 1983, 2018, 1621, 1621, 1993, 1984, + /* 2670 */ 633, 1986, 1987, 628, 1621, 623, 1621, 1621, 1621, 1982, + /* 2680 */ 1621, 1621, 1621, 2018, 1621, 1621, 333, 1984, 633, 1986, + /* 2690 */ 1987, 628, 1621, 623, 1621, 2001, 1621, 1621, 1621, 1621, + /* 2700 */ 1621, 1621, 1621, 630, 1621, 1621, 1621, 1621, 1952, 1621, + /* 2710 */ 629, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1983, + /* 2720 */ 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2730 */ 1621, 1621, 1621, 1621, 1982, 1983, 1621, 1621, 2018, 1621, + /* 2740 */ 1621, 334, 1984, 633, 1986, 1987, 628, 1621, 623, 1621, + /* 2750 */ 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, + /* 2760 */ 1621, 1621, 1621, 1952, 1621, 629, 2001, 1621, 1621, 1621, + /* 2770 */ 1621, 1621, 1621, 1621, 630, 1621, 1621, 1621, 1621, 1952, + /* 2780 */ 1621, 629, 1621, 1621, 1621, 1621, 1621, 1983, 1621, 1982, + /* 2790 */ 1621, 1621, 1621, 2018, 1621, 1621, 330, 1984, 633, 1986, + /* 2800 */ 1987, 628, 1621, 623, 1621, 1982, 1621, 1621, 1621, 2018, + /* 2810 */ 1983, 1621, 335, 1984, 633, 1986, 1987, 628, 2001, 623, + /* 2820 */ 1621, 1621, 1621, 1621, 1621, 1621, 630, 1621, 1621, 1621, + /* 2830 */ 1621, 1952, 1621, 629, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2840 */ 1621, 2001, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 630, + /* 2850 */ 1621, 1621, 1621, 1621, 1952, 1621, 629, 631, 1621, 1621, + /* 2860 */ 1621, 2018, 1621, 1621, 312, 1984, 633, 1986, 1987, 628, + /* 2870 */ 1621, 623, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, + /* 2880 */ 1982, 1621, 1621, 1621, 2018, 1621, 1621, 311, 1984, 633, + /* 2890 */ 1986, 1987, 628, 1621, 623, }; static const YYCODETYPE yy_lookahead[] = { - /* 0 */ 420, 421, 332, 374, 334, 335, 332, 370, 334, 335, - /* 10 */ 373, 374, 12, 13, 14, 361, 387, 388, 360, 14, - /* 20 */ 20, 336, 22, 8, 9, 20, 372, 12, 13, 14, - /* 30 */ 15, 16, 359, 33, 333, 35, 352, 336, 337, 355, - /* 40 */ 431, 20, 8, 9, 435, 393, 12, 13, 14, 15, - /* 50 */ 16, 39, 20, 380, 381, 401, 402, 403, 58, 450, - /* 60 */ 451, 376, 58, 63, 455, 456, 412, 8, 9, 328, - /* 70 */ 70, 12, 13, 14, 15, 16, 333, 20, 336, 336, - /* 80 */ 337, 8, 9, 12, 13, 12, 13, 14, 15, 16, - /* 90 */ 3, 20, 358, 22, 0, 95, 415, 63, 94, 418, - /* 100 */ 359, 97, 95, 44, 33, 371, 35, 20, 367, 367, - /* 110 */ 327, 96, 329, 372, 336, 374, 95, 117, 24, 25, - /* 120 */ 26, 27, 28, 29, 30, 31, 32, 95, 350, 58, - /* 130 */ 340, 343, 132, 133, 63, 357, 348, 79, 104, 398, - /* 140 */ 4, 70, 62, 402, 354, 367, 405, 406, 407, 408, - /* 150 */ 409, 410, 362, 412, 20, 431, 359, 44, 417, 435, - /* 160 */ 419, 161, 162, 366, 423, 424, 95, 167, 168, 427, - /* 170 */ 428, 429, 375, 431, 432, 451, 20, 435, 437, 455, - /* 180 */ 456, 431, 182, 96, 184, 435, 445, 21, 117, 132, - /* 190 */ 133, 58, 450, 451, 160, 137, 138, 455, 456, 95, - /* 200 */ 34, 451, 36, 132, 133, 455, 456, 207, 208, 96, - /* 210 */ 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - /* 220 */ 220, 221, 222, 223, 224, 225, 226, 227, 95, 95, - /* 230 */ 97, 95, 161, 162, 404, 20, 163, 21, 167, 168, - /* 240 */ 24, 25, 26, 27, 28, 29, 30, 31, 32, 20, - /* 250 */ 163, 127, 245, 182, 404, 184, 244, 8, 9, 328, - /* 260 */ 430, 12, 13, 14, 15, 16, 232, 233, 234, 235, - /* 270 */ 236, 237, 238, 239, 240, 241, 242, 245, 207, 208, - /* 280 */ 430, 210, 211, 212, 213, 214, 215, 216, 217, 218, - /* 290 */ 219, 220, 221, 222, 223, 224, 225, 226, 227, 177, - /* 300 */ 229, 12, 13, 372, 361, 22, 14, 328, 359, 20, - /* 310 */ 22, 22, 20, 189, 190, 372, 367, 193, 35, 195, - /* 320 */ 198, 199, 33, 35, 35, 108, 109, 110, 111, 112, - /* 330 */ 113, 114, 115, 116, 117, 118, 0, 120, 121, 122, - /* 340 */ 123, 124, 125, 33, 401, 402, 403, 58, 359, 245, - /* 350 */ 389, 372, 63, 70, 359, 412, 407, 368, 48, 70, - /* 360 */ 20, 366, 22, 62, 54, 55, 56, 57, 58, 328, - /* 370 */ 375, 328, 12, 13, 14, 35, 161, 162, 245, 245, - /* 380 */ 20, 245, 22, 359, 95, 12, 13, 14, 15, 16, - /* 390 */ 366, 51, 431, 33, 369, 35, 435, 372, 328, 375, - /* 400 */ 117, 65, 66, 67, 94, 4, 117, 97, 0, 73, - /* 410 */ 74, 450, 451, 372, 78, 372, 455, 456, 58, 83, - /* 420 */ 84, 132, 133, 174, 328, 89, 126, 127, 70, 21, - /* 430 */ 70, 131, 24, 25, 26, 27, 28, 29, 30, 31, - /* 440 */ 32, 336, 372, 20, 43, 369, 45, 46, 372, 374, - /* 450 */ 161, 162, 336, 161, 359, 95, 167, 168, 20, 384, - /* 460 */ 22, 366, 387, 388, 336, 182, 350, 184, 372, 63, - /* 470 */ 375, 182, 367, 184, 164, 165, 328, 117, 350, 169, - /* 480 */ 8, 9, 172, 367, 12, 13, 14, 15, 16, 51, - /* 490 */ 207, 208, 132, 133, 342, 367, 207, 208, 188, 210, - /* 500 */ 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - /* 510 */ 221, 222, 223, 224, 225, 226, 227, 365, 269, 20, - /* 520 */ 372, 161, 162, 336, 35, 328, 431, 167, 168, 336, - /* 530 */ 435, 426, 427, 428, 429, 336, 431, 432, 20, 65, - /* 540 */ 66, 67, 182, 350, 184, 450, 451, 73, 74, 350, - /* 550 */ 455, 456, 78, 328, 367, 132, 133, 83, 84, 70, - /* 560 */ 367, 328, 328, 89, 373, 374, 367, 207, 208, 372, - /* 570 */ 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - /* 580 */ 220, 221, 222, 223, 224, 225, 226, 227, 12, 13, - /* 590 */ 167, 168, 359, 0, 342, 351, 20, 372, 22, 20, - /* 600 */ 367, 325, 416, 359, 418, 372, 372, 374, 356, 33, - /* 610 */ 126, 35, 368, 207, 427, 428, 429, 365, 431, 432, - /* 620 */ 8, 9, 328, 404, 12, 13, 14, 15, 16, 4, - /* 630 */ 166, 398, 20, 336, 58, 402, 106, 207, 405, 406, - /* 640 */ 407, 408, 409, 410, 19, 412, 70, 350, 415, 430, - /* 650 */ 417, 418, 419, 359, 357, 62, 423, 424, 33, 12, - /* 660 */ 13, 367, 163, 336, 367, 389, 372, 20, 374, 22, - /* 670 */ 229, 95, 231, 48, 328, 191, 192, 350, 53, 328, - /* 680 */ 33, 359, 35, 58, 361, 95, 256, 257, 258, 259, - /* 690 */ 260, 0, 398, 117, 367, 372, 402, 375, 336, 405, - /* 700 */ 406, 407, 408, 409, 410, 58, 412, 431, 132, 133, - /* 710 */ 367, 435, 350, 328, 250, 251, 252, 70, 372, 94, - /* 720 */ 0, 378, 97, 372, 401, 402, 450, 451, 328, 367, - /* 730 */ 14, 455, 456, 1, 2, 412, 20, 161, 162, 48, - /* 740 */ 446, 447, 95, 167, 168, 336, 8, 9, 160, 0, - /* 750 */ 12, 13, 14, 15, 16, 2, 359, 372, 182, 350, - /* 760 */ 184, 8, 9, 367, 117, 12, 13, 14, 15, 16, - /* 770 */ 47, 181, 372, 183, 378, 163, 367, 20, 381, 132, - /* 780 */ 133, 0, 328, 207, 208, 20, 210, 211, 212, 213, - /* 790 */ 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - /* 800 */ 224, 225, 226, 227, 14, 15, 16, 336, 161, 162, - /* 810 */ 18, 62, 20, 229, 167, 168, 351, 340, 95, 27, - /* 820 */ 232, 350, 30, 44, 359, 33, 372, 107, 96, 182, - /* 830 */ 242, 184, 328, 368, 96, 245, 351, 20, 367, 362, - /* 840 */ 48, 361, 50, 4, 359, 53, 126, 127, 128, 129, - /* 850 */ 130, 131, 372, 368, 207, 208, 70, 210, 211, 212, - /* 860 */ 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - /* 870 */ 223, 224, 225, 226, 227, 328, 372, 161, 345, 346, - /* 880 */ 18, 401, 402, 2, 163, 23, 94, 0, 107, 8, - /* 890 */ 9, 170, 412, 12, 13, 14, 15, 16, 106, 37, - /* 900 */ 38, 3, 416, 41, 418, 345, 346, 126, 127, 128, - /* 910 */ 129, 130, 131, 367, 369, 352, 360, 372, 355, 372, - /* 920 */ 163, 59, 60, 61, 378, 347, 161, 349, 136, 45, - /* 930 */ 46, 139, 140, 141, 142, 143, 144, 145, 146, 147, - /* 940 */ 148, 149, 150, 151, 152, 153, 154, 155, 389, 157, - /* 950 */ 158, 159, 65, 66, 67, 68, 69, 95, 71, 72, - /* 960 */ 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - /* 970 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 328, - /* 980 */ 163, 336, 107, 328, 360, 336, 389, 0, 389, 107, - /* 990 */ 431, 243, 244, 336, 435, 350, 134, 132, 133, 350, - /* 1000 */ 328, 126, 127, 128, 129, 130, 131, 350, 360, 450, - /* 1010 */ 451, 129, 367, 106, 455, 456, 367, 42, 42, 44, - /* 1020 */ 44, 44, 99, 372, 367, 102, 360, 372, 431, 336, - /* 1030 */ 431, 359, 435, 35, 435, 0, 174, 175, 176, 367, - /* 1040 */ 336, 179, 336, 350, 372, 266, 374, 450, 451, 450, - /* 1050 */ 451, 329, 455, 456, 455, 456, 350, 22, 389, 197, - /* 1060 */ 367, 336, 200, 156, 202, 203, 204, 205, 206, 360, - /* 1070 */ 398, 367, 328, 367, 402, 350, 44, 405, 406, 407, - /* 1080 */ 408, 409, 410, 336, 412, 246, 35, 99, 44, 417, - /* 1090 */ 102, 419, 367, 0, 360, 423, 424, 350, 336, 336, - /* 1100 */ 431, 0, 99, 359, 435, 102, 99, 245, 336, 102, - /* 1110 */ 37, 367, 350, 350, 367, 22, 372, 445, 374, 450, - /* 1120 */ 451, 58, 350, 22, 455, 456, 328, 336, 96, 367, - /* 1130 */ 367, 427, 428, 429, 44, 431, 432, 348, 151, 367, - /* 1140 */ 96, 350, 398, 1, 2, 95, 402, 44, 382, 405, - /* 1150 */ 406, 407, 408, 409, 410, 105, 412, 359, 367, 44, - /* 1160 */ 97, 417, 264, 419, 44, 367, 459, 423, 424, 338, - /* 1170 */ 372, 98, 374, 100, 101, 44, 103, 448, 434, 442, - /* 1180 */ 107, 336, 184, 336, 44, 44, 96, 328, 44, 44, - /* 1190 */ 0, 44, 44, 359, 44, 350, 398, 350, 338, 96, - /* 1200 */ 402, 44, 129, 405, 406, 407, 408, 409, 410, 382, - /* 1210 */ 412, 96, 367, 335, 367, 417, 96, 419, 359, 35, - /* 1220 */ 44, 423, 424, 371, 382, 13, 367, 96, 12, 13, - /* 1230 */ 13, 372, 434, 374, 433, 184, 96, 96, 22, 49, - /* 1240 */ 96, 96, 436, 96, 96, 268, 96, 35, 452, 33, - /* 1250 */ 328, 35, 35, 96, 70, 425, 247, 398, 400, 48, - /* 1260 */ 399, 402, 180, 391, 405, 406, 407, 408, 409, 410, - /* 1270 */ 328, 412, 96, 42, 58, 379, 417, 20, 419, 382, - /* 1280 */ 379, 359, 423, 424, 160, 377, 70, 20, 336, 367, - /* 1290 */ 336, 379, 377, 434, 372, 377, 374, 93, 336, 344, - /* 1300 */ 336, 359, 336, 20, 330, 20, 395, 342, 330, 367, - /* 1310 */ 20, 374, 342, 20, 372, 20, 374, 337, 390, 337, - /* 1320 */ 398, 342, 336, 342, 402, 342, 342, 405, 406, 407, - /* 1330 */ 408, 409, 410, 117, 412, 342, 52, 397, 339, 417, - /* 1340 */ 398, 419, 330, 339, 402, 423, 424, 405, 406, 407, - /* 1350 */ 408, 409, 410, 359, 412, 359, 434, 336, 330, 417, - /* 1360 */ 359, 419, 372, 372, 359, 423, 424, 359, 196, 359, - /* 1370 */ 19, 340, 359, 328, 359, 359, 434, 359, 359, 187, - /* 1380 */ 395, 340, 336, 394, 33, 374, 441, 255, 382, 372, - /* 1390 */ 254, 441, 372, 444, 372, 372, 382, 173, 182, 48, - /* 1400 */ 184, 443, 441, 440, 359, 54, 55, 56, 57, 58, - /* 1410 */ 385, 385, 367, 261, 263, 262, 248, 372, 244, 374, - /* 1420 */ 460, 267, 454, 207, 208, 270, 265, 400, 367, 20, - /* 1430 */ 336, 439, 328, 438, 404, 337, 220, 221, 222, 223, - /* 1440 */ 224, 225, 226, 398, 385, 94, 340, 402, 97, 340, - /* 1450 */ 405, 406, 407, 408, 409, 410, 372, 412, 372, 372, - /* 1460 */ 372, 372, 417, 359, 419, 385, 165, 372, 423, 424, - /* 1470 */ 340, 367, 355, 340, 383, 367, 372, 453, 374, 95, - /* 1480 */ 422, 130, 95, 372, 363, 336, 328, 349, 36, 392, - /* 1490 */ 331, 386, 330, 386, 0, 396, 340, 326, 0, 353, - /* 1500 */ 189, 341, 398, 0, 0, 42, 402, 0, 35, 405, - /* 1510 */ 406, 407, 408, 409, 410, 164, 412, 359, 353, 353, - /* 1520 */ 169, 417, 201, 419, 35, 367, 35, 423, 424, 201, - /* 1530 */ 372, 35, 374, 0, 35, 35, 201, 186, 0, 188, - /* 1540 */ 201, 0, 0, 35, 22, 0, 35, 328, 184, 182, - /* 1550 */ 0, 0, 178, 177, 0, 0, 398, 47, 0, 0, - /* 1560 */ 402, 0, 42, 405, 406, 407, 408, 409, 410, 0, - /* 1570 */ 412, 0, 0, 0, 0, 417, 0, 419, 359, 0, - /* 1580 */ 0, 423, 424, 151, 35, 0, 367, 151, 0, 0, - /* 1590 */ 0, 372, 0, 374, 42, 0, 0, 0, 0, 0, - /* 1600 */ 0, 0, 0, 22, 135, 328, 0, 0, 0, 0, - /* 1610 */ 0, 0, 0, 0, 0, 0, 0, 398, 0, 0, - /* 1620 */ 0, 402, 35, 58, 405, 406, 407, 408, 409, 410, - /* 1630 */ 0, 412, 0, 58, 0, 42, 359, 14, 419, 14, - /* 1640 */ 0, 0, 423, 424, 367, 0, 0, 44, 173, 372, - /* 1650 */ 0, 374, 47, 0, 0, 64, 39, 0, 0, 328, - /* 1660 */ 0, 0, 0, 35, 40, 39, 39, 0, 47, 47, - /* 1670 */ 39, 35, 35, 35, 39, 398, 0, 48, 39, 402, - /* 1680 */ 0, 48, 405, 406, 407, 408, 409, 410, 328, 412, - /* 1690 */ 359, 48, 48, 0, 39, 22, 419, 0, 367, 35, - /* 1700 */ 423, 424, 0, 372, 35, 374, 35, 35, 104, 35, - /* 1710 */ 44, 22, 44, 35, 35, 0, 35, 22, 22, 359, - /* 1720 */ 50, 0, 22, 35, 0, 35, 0, 367, 0, 398, - /* 1730 */ 22, 20, 372, 402, 374, 0, 405, 406, 407, 408, - /* 1740 */ 409, 410, 35, 412, 102, 35, 328, 35, 96, 163, - /* 1750 */ 419, 194, 35, 0, 423, 424, 22, 0, 398, 0, - /* 1760 */ 95, 3, 402, 44, 249, 405, 406, 407, 408, 409, - /* 1770 */ 410, 411, 412, 413, 414, 228, 253, 359, 96, 95, - /* 1780 */ 95, 44, 96, 96, 44, 367, 95, 95, 47, 95, - /* 1790 */ 372, 47, 374, 44, 96, 249, 3, 249, 95, 35, - /* 1800 */ 328, 96, 96, 35, 44, 35, 35, 243, 35, 35, - /* 1810 */ 96, 163, 96, 47, 165, 0, 398, 0, 0, 163, - /* 1820 */ 402, 44, 171, 405, 406, 407, 408, 409, 410, 170, - /* 1830 */ 412, 359, 185, 170, 47, 0, 39, 95, 95, 367, - /* 1840 */ 39, 96, 96, 95, 372, 95, 374, 95, 0, 95, - /* 1850 */ 47, 44, 105, 2, 328, 22, 95, 47, 96, 96, - /* 1860 */ 95, 47, 95, 22, 95, 166, 35, 35, 164, 35, - /* 1870 */ 398, 96, 96, 95, 402, 457, 458, 405, 406, 407, - /* 1880 */ 408, 409, 410, 95, 412, 359, 106, 96, 96, 95, - /* 1890 */ 95, 419, 96, 367, 35, 95, 424, 35, 372, 95, - /* 1900 */ 374, 96, 96, 228, 35, 119, 328, 230, 95, 119, - /* 1910 */ 22, 95, 44, 35, 95, 107, 207, 119, 119, 22, - /* 1920 */ 95, 64, 328, 63, 398, 35, 35, 209, 402, 35, - /* 1930 */ 35, 405, 406, 407, 408, 409, 410, 359, 412, 35, - /* 1940 */ 35, 228, 35, 35, 35, 367, 35, 70, 92, 35, - /* 1950 */ 372, 35, 374, 359, 44, 35, 22, 35, 35, 35, - /* 1960 */ 35, 367, 35, 70, 35, 35, 372, 35, 374, 22, - /* 1970 */ 35, 0, 35, 447, 48, 39, 398, 0, 35, 48, - /* 1980 */ 402, 39, 0, 405, 406, 407, 408, 409, 410, 35, - /* 1990 */ 412, 39, 398, 48, 0, 35, 402, 48, 39, 405, - /* 2000 */ 406, 407, 408, 409, 410, 0, 412, 35, 35, 0, - /* 2010 */ 22, 328, 21, 461, 22, 22, 21, 20, 461, 461, - /* 2020 */ 461, 461, 461, 461, 461, 461, 461, 449, 461, 328, - /* 2030 */ 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, - /* 2040 */ 461, 461, 359, 461, 461, 461, 461, 364, 461, 461, - /* 2050 */ 367, 461, 458, 461, 461, 372, 461, 374, 461, 461, - /* 2060 */ 359, 461, 461, 461, 461, 461, 461, 461, 367, 461, - /* 2070 */ 461, 461, 461, 372, 461, 374, 461, 461, 461, 461, - /* 2080 */ 461, 398, 461, 328, 461, 402, 461, 461, 405, 406, - /* 2090 */ 407, 408, 409, 410, 461, 412, 461, 461, 461, 398, - /* 2100 */ 328, 461, 461, 402, 461, 461, 405, 406, 407, 408, - /* 2110 */ 409, 410, 461, 412, 359, 414, 461, 461, 461, 364, - /* 2120 */ 461, 461, 367, 461, 461, 461, 461, 372, 461, 374, - /* 2130 */ 461, 359, 461, 461, 461, 461, 364, 461, 461, 367, - /* 2140 */ 461, 461, 461, 461, 372, 461, 374, 461, 461, 461, - /* 2150 */ 461, 461, 328, 398, 461, 461, 461, 402, 461, 461, - /* 2160 */ 405, 406, 407, 408, 409, 410, 461, 412, 328, 461, - /* 2170 */ 398, 461, 461, 461, 402, 461, 461, 405, 406, 407, - /* 2180 */ 408, 409, 410, 359, 412, 461, 461, 461, 461, 461, - /* 2190 */ 461, 367, 461, 461, 461, 461, 372, 461, 374, 359, - /* 2200 */ 461, 461, 461, 461, 461, 461, 461, 367, 461, 461, - /* 2210 */ 461, 461, 372, 461, 374, 461, 461, 461, 461, 461, - /* 2220 */ 328, 461, 398, 461, 461, 461, 402, 461, 461, 405, - /* 2230 */ 406, 407, 408, 409, 410, 461, 412, 461, 398, 461, - /* 2240 */ 461, 461, 402, 461, 461, 405, 406, 407, 408, 409, - /* 2250 */ 410, 359, 412, 461, 461, 461, 461, 461, 461, 367, - /* 2260 */ 461, 461, 461, 461, 372, 461, 374, 461, 461, 461, - /* 2270 */ 461, 461, 461, 461, 328, 461, 461, 461, 461, 461, - /* 2280 */ 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, - /* 2290 */ 398, 461, 461, 461, 402, 328, 461, 405, 406, 407, - /* 2300 */ 408, 409, 410, 461, 412, 359, 461, 461, 461, 461, - /* 2310 */ 461, 461, 461, 367, 461, 461, 461, 461, 372, 461, - /* 2320 */ 374, 461, 461, 461, 461, 461, 359, 461, 461, 461, - /* 2330 */ 461, 461, 461, 461, 367, 461, 461, 461, 461, 372, - /* 2340 */ 461, 374, 461, 461, 398, 461, 461, 461, 402, 461, - /* 2350 */ 461, 405, 406, 407, 408, 409, 410, 461, 412, 461, - /* 2360 */ 461, 461, 461, 461, 461, 398, 461, 461, 461, 402, - /* 2370 */ 461, 328, 405, 406, 407, 408, 409, 410, 461, 412, - /* 2380 */ 461, 461, 461, 461, 461, 461, 461, 461, 461, 328, - /* 2390 */ 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, - /* 2400 */ 461, 461, 359, 461, 461, 461, 461, 461, 461, 461, - /* 2410 */ 367, 461, 461, 461, 461, 372, 461, 374, 461, 461, - /* 2420 */ 359, 461, 461, 461, 461, 461, 461, 461, 367, 461, - /* 2430 */ 461, 461, 461, 372, 461, 374, 461, 461, 461, 461, - /* 2440 */ 461, 398, 461, 328, 461, 402, 461, 461, 405, 406, - /* 2450 */ 407, 408, 409, 410, 461, 412, 461, 461, 461, 398, - /* 2460 */ 328, 461, 461, 402, 461, 461, 405, 406, 407, 408, - /* 2470 */ 409, 410, 461, 412, 359, 461, 461, 461, 461, 461, - /* 2480 */ 461, 461, 367, 461, 461, 461, 461, 372, 461, 374, - /* 2490 */ 461, 359, 461, 461, 461, 461, 461, 461, 461, 367, - /* 2500 */ 461, 461, 461, 461, 372, 461, 374, 461, 461, 461, - /* 2510 */ 461, 461, 328, 398, 461, 461, 461, 402, 461, 461, - /* 2520 */ 405, 406, 407, 408, 409, 410, 461, 412, 328, 461, - /* 2530 */ 398, 461, 461, 461, 402, 461, 461, 405, 406, 407, - /* 2540 */ 408, 409, 410, 359, 412, 461, 461, 461, 461, 461, - /* 2550 */ 461, 367, 461, 461, 461, 461, 372, 461, 374, 359, - /* 2560 */ 461, 461, 461, 461, 461, 461, 461, 367, 461, 461, - /* 2570 */ 461, 461, 372, 461, 374, 461, 461, 461, 461, 461, - /* 2580 */ 328, 461, 398, 461, 461, 461, 402, 461, 461, 405, - /* 2590 */ 406, 407, 408, 409, 410, 461, 412, 461, 398, 461, - /* 2600 */ 461, 461, 402, 328, 461, 405, 406, 407, 408, 409, - /* 2610 */ 410, 359, 412, 461, 461, 461, 461, 461, 461, 367, - /* 2620 */ 461, 461, 461, 461, 372, 461, 374, 461, 461, 461, - /* 2630 */ 461, 461, 461, 461, 359, 461, 461, 461, 461, 461, - /* 2640 */ 461, 461, 367, 461, 461, 461, 461, 372, 461, 374, - /* 2650 */ 398, 461, 461, 461, 402, 328, 461, 405, 406, 407, - /* 2660 */ 408, 409, 410, 461, 412, 461, 461, 461, 461, 461, - /* 2670 */ 461, 461, 461, 398, 461, 461, 461, 402, 461, 461, - /* 2680 */ 405, 406, 407, 408, 409, 410, 359, 412, 461, 461, - /* 2690 */ 461, 461, 461, 461, 367, 461, 461, 461, 461, 372, - /* 2700 */ 461, 374, 461, 461, 461, 461, 461, 461, 461, 461, - /* 2710 */ 461, 461, 461, 461, 461, 461, 461, 461, 328, 461, - /* 2720 */ 461, 461, 461, 461, 461, 398, 461, 461, 461, 402, - /* 2730 */ 461, 461, 405, 406, 407, 408, 409, 410, 461, 412, - /* 2740 */ 461, 461, 461, 461, 461, 461, 461, 461, 461, 359, - /* 2750 */ 461, 461, 461, 461, 461, 461, 461, 367, 461, 461, - /* 2760 */ 461, 461, 372, 461, 374, 461, 461, 461, 461, 461, - /* 2770 */ 328, 461, 461, 461, 461, 461, 461, 461, 461, 461, - /* 2780 */ 461, 461, 461, 461, 461, 461, 461, 461, 398, 328, - /* 2790 */ 461, 461, 402, 461, 461, 405, 406, 407, 408, 409, - /* 2800 */ 410, 359, 412, 461, 461, 461, 461, 461, 461, 367, - /* 2810 */ 461, 461, 461, 461, 372, 461, 374, 461, 461, 461, - /* 2820 */ 359, 461, 461, 461, 461, 461, 461, 461, 367, 461, - /* 2830 */ 461, 461, 461, 372, 461, 374, 461, 461, 461, 461, - /* 2840 */ 398, 328, 461, 461, 402, 461, 461, 405, 406, 407, - /* 2850 */ 408, 409, 410, 461, 412, 461, 461, 328, 461, 398, - /* 2860 */ 461, 461, 461, 402, 461, 461, 405, 406, 407, 408, - /* 2870 */ 409, 410, 359, 412, 461, 461, 461, 461, 461, 461, - /* 2880 */ 367, 461, 461, 461, 461, 372, 461, 374, 359, 461, - /* 2890 */ 461, 461, 461, 461, 461, 461, 367, 461, 461, 461, - /* 2900 */ 461, 372, 461, 374, 461, 461, 461, 461, 461, 328, - /* 2910 */ 461, 398, 461, 461, 461, 402, 461, 461, 405, 406, - /* 2920 */ 407, 408, 409, 410, 461, 412, 461, 398, 461, 461, - /* 2930 */ 461, 402, 328, 461, 405, 406, 407, 408, 409, 410, - /* 2940 */ 359, 412, 461, 461, 461, 461, 461, 461, 367, 461, - /* 2950 */ 461, 461, 461, 372, 461, 374, 461, 461, 461, 461, - /* 2960 */ 461, 461, 461, 359, 461, 461, 461, 461, 461, 461, - /* 2970 */ 461, 367, 461, 461, 461, 461, 372, 461, 374, 398, - /* 2980 */ 461, 461, 461, 402, 328, 461, 405, 406, 407, 408, - /* 2990 */ 409, 410, 461, 412, 461, 461, 461, 461, 461, 461, - /* 3000 */ 461, 461, 398, 461, 461, 461, 402, 461, 461, 405, - /* 3010 */ 406, 407, 408, 409, 410, 359, 412, 461, 461, 461, - /* 3020 */ 461, 461, 461, 367, 461, 461, 461, 461, 372, 461, - /* 3030 */ 374, 461, 461, 461, 461, 461, 461, 461, 461, 461, - /* 3040 */ 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, - /* 3050 */ 461, 461, 461, 461, 398, 461, 461, 461, 402, 461, - /* 3060 */ 461, 405, 406, 407, 408, 409, 410, 461, 412, + /* 0 */ 362, 361, 371, 375, 432, 374, 375, 333, 436, 335, + /* 10 */ 336, 373, 12, 13, 14, 362, 388, 389, 353, 360, + /* 20 */ 20, 356, 22, 451, 452, 20, 373, 368, 456, 457, + /* 30 */ 341, 337, 360, 33, 334, 35, 0, 337, 338, 14, + /* 40 */ 402, 403, 8, 9, 355, 20, 12, 13, 14, 15, + /* 50 */ 16, 413, 363, 381, 382, 402, 403, 404, 58, 344, + /* 60 */ 39, 432, 368, 63, 349, 436, 413, 408, 21, 329, + /* 70 */ 70, 24, 25, 26, 27, 28, 29, 30, 31, 32, + /* 80 */ 360, 452, 352, 12, 13, 456, 457, 367, 14, 4, + /* 90 */ 360, 20, 20, 22, 20, 95, 376, 63, 359, 369, + /* 100 */ 360, 65, 66, 67, 33, 337, 35, 360, 368, 73, + /* 110 */ 74, 372, 14, 373, 78, 375, 369, 117, 20, 83, + /* 120 */ 84, 427, 428, 429, 430, 89, 432, 433, 43, 58, + /* 130 */ 45, 46, 132, 133, 63, 20, 368, 0, 104, 399, + /* 140 */ 62, 70, 20, 403, 22, 58, 406, 407, 408, 409, + /* 150 */ 410, 411, 432, 413, 95, 432, 436, 35, 418, 436, + /* 160 */ 420, 35, 162, 163, 424, 425, 95, 95, 168, 169, + /* 170 */ 107, 451, 452, 51, 20, 452, 456, 457, 438, 456, + /* 180 */ 457, 94, 20, 183, 97, 185, 446, 162, 117, 126, + /* 190 */ 127, 128, 129, 130, 131, 161, 428, 429, 430, 62, + /* 200 */ 432, 433, 334, 132, 133, 337, 338, 58, 208, 209, + /* 210 */ 95, 211, 212, 213, 214, 215, 216, 217, 218, 219, + /* 220 */ 220, 221, 222, 223, 224, 225, 226, 227, 228, 65, + /* 230 */ 66, 67, 416, 162, 163, 419, 167, 73, 74, 168, + /* 240 */ 169, 182, 78, 184, 95, 20, 97, 83, 84, 95, + /* 250 */ 127, 421, 422, 89, 183, 4, 185, 8, 9, 20, + /* 260 */ 162, 12, 13, 14, 15, 16, 245, 233, 234, 235, + /* 270 */ 236, 237, 238, 239, 240, 241, 242, 243, 20, 208, + /* 280 */ 209, 343, 211, 212, 213, 214, 215, 216, 217, 218, + /* 290 */ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + /* 300 */ 360, 230, 12, 13, 366, 246, 337, 367, 0, 95, + /* 310 */ 20, 185, 22, 190, 191, 62, 376, 194, 337, 196, + /* 320 */ 251, 252, 253, 33, 326, 35, 108, 109, 110, 111, + /* 330 */ 112, 113, 114, 115, 116, 117, 118, 368, 120, 121, + /* 340 */ 122, 123, 124, 125, 33, 329, 95, 337, 58, 368, + /* 350 */ 8, 9, 362, 63, 12, 13, 14, 15, 16, 48, + /* 360 */ 70, 246, 329, 373, 44, 54, 55, 56, 57, 58, + /* 370 */ 62, 132, 133, 12, 13, 14, 12, 13, 14, 15, + /* 380 */ 16, 20, 328, 22, 330, 95, 44, 377, 390, 373, + /* 390 */ 132, 133, 402, 403, 33, 246, 35, 428, 429, 430, + /* 400 */ 246, 432, 433, 413, 337, 94, 373, 117, 97, 428, + /* 410 */ 429, 430, 360, 432, 433, 0, 96, 436, 351, 58, + /* 420 */ 374, 375, 132, 133, 175, 358, 168, 169, 376, 126, + /* 430 */ 432, 70, 451, 452, 436, 368, 21, 456, 457, 24, + /* 440 */ 25, 26, 27, 28, 29, 30, 31, 32, 329, 451, + /* 450 */ 452, 375, 162, 163, 456, 457, 95, 343, 168, 169, + /* 460 */ 246, 385, 8, 9, 388, 389, 12, 13, 14, 15, + /* 470 */ 16, 357, 22, 183, 20, 185, 165, 166, 117, 20, + /* 480 */ 366, 170, 8, 9, 173, 35, 12, 13, 14, 15, + /* 490 */ 16, 35, 373, 132, 133, 192, 193, 246, 208, 209, + /* 500 */ 189, 211, 212, 213, 214, 215, 216, 217, 218, 219, + /* 510 */ 220, 221, 222, 223, 224, 225, 226, 227, 228, 270, + /* 520 */ 329, 19, 106, 162, 163, 333, 70, 335, 336, 168, + /* 530 */ 169, 337, 8, 9, 79, 33, 12, 13, 14, 15, + /* 540 */ 16, 95, 346, 347, 183, 351, 185, 8, 9, 20, + /* 550 */ 48, 12, 13, 14, 15, 16, 54, 55, 56, 57, + /* 560 */ 58, 0, 368, 329, 373, 230, 20, 161, 22, 208, + /* 570 */ 209, 20, 211, 212, 213, 214, 215, 216, 217, 218, + /* 580 */ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + /* 590 */ 12, 13, 137, 138, 360, 70, 94, 51, 20, 97, + /* 600 */ 22, 70, 368, 337, 230, 360, 232, 373, 0, 375, + /* 610 */ 20, 33, 367, 35, 390, 160, 2, 351, 164, 330, + /* 620 */ 96, 376, 8, 9, 329, 405, 12, 13, 14, 15, + /* 630 */ 16, 361, 130, 399, 368, 96, 58, 403, 164, 233, + /* 640 */ 406, 407, 408, 409, 410, 411, 362, 413, 70, 243, + /* 650 */ 416, 431, 418, 419, 420, 360, 432, 373, 424, 425, + /* 660 */ 436, 12, 13, 368, 405, 337, 352, 165, 373, 20, + /* 670 */ 375, 22, 170, 95, 360, 451, 452, 208, 329, 351, + /* 680 */ 456, 457, 33, 369, 35, 20, 402, 403, 404, 187, + /* 690 */ 431, 189, 246, 164, 399, 117, 368, 413, 403, 405, + /* 700 */ 44, 406, 407, 408, 409, 410, 411, 58, 413, 360, + /* 710 */ 132, 133, 151, 162, 163, 107, 417, 368, 419, 70, + /* 720 */ 329, 160, 373, 0, 375, 431, 257, 258, 259, 260, + /* 730 */ 261, 341, 22, 3, 126, 127, 128, 129, 130, 131, + /* 740 */ 162, 163, 447, 448, 95, 35, 168, 169, 399, 417, + /* 750 */ 20, 419, 403, 363, 164, 406, 407, 408, 409, 410, + /* 760 */ 411, 183, 413, 185, 373, 2, 117, 418, 361, 420, + /* 770 */ 21, 8, 9, 424, 425, 12, 13, 14, 15, 16, + /* 780 */ 70, 132, 133, 34, 435, 36, 208, 209, 360, 211, + /* 790 */ 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + /* 800 */ 222, 223, 224, 225, 226, 227, 228, 337, 368, 337, + /* 810 */ 382, 162, 163, 18, 178, 20, 352, 168, 169, 379, + /* 820 */ 368, 351, 27, 351, 360, 30, 96, 117, 33, 164, + /* 830 */ 107, 379, 183, 369, 185, 199, 200, 329, 368, 360, + /* 840 */ 368, 329, 20, 48, 353, 50, 367, 356, 53, 126, + /* 850 */ 127, 128, 129, 130, 131, 376, 4, 208, 209, 361, + /* 860 */ 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, + /* 870 */ 221, 222, 223, 224, 225, 226, 227, 228, 14, 15, + /* 880 */ 16, 373, 107, 18, 0, 373, 337, 368, 23, 94, + /* 890 */ 0, 337, 164, 183, 164, 185, 346, 347, 379, 171, + /* 900 */ 351, 106, 37, 38, 129, 351, 41, 358, 24, 25, + /* 910 */ 26, 27, 28, 29, 30, 31, 32, 368, 208, 209, + /* 920 */ 1, 2, 368, 267, 59, 60, 61, 370, 37, 370, + /* 930 */ 373, 136, 373, 3, 139, 140, 141, 142, 143, 144, + /* 940 */ 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + /* 950 */ 155, 329, 157, 158, 159, 65, 66, 67, 68, 69, + /* 960 */ 95, 71, 72, 73, 74, 75, 76, 77, 78, 79, + /* 970 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + /* 980 */ 90, 91, 337, 329, 162, 4, 45, 46, 329, 98, + /* 990 */ 337, 100, 101, 329, 103, 373, 351, 337, 107, 134, + /* 1000 */ 19, 8, 9, 0, 351, 12, 13, 14, 15, 16, + /* 1010 */ 329, 351, 329, 368, 33, 96, 337, 337, 390, 337, + /* 1020 */ 129, 368, 337, 348, 337, 350, 394, 373, 368, 48, + /* 1030 */ 351, 351, 373, 351, 53, 0, 351, 373, 351, 58, + /* 1040 */ 175, 176, 177, 360, 349, 180, 370, 368, 368, 373, + /* 1050 */ 368, 368, 49, 368, 373, 368, 373, 42, 375, 44, + /* 1060 */ 432, 44, 329, 198, 436, 42, 201, 44, 203, 204, + /* 1070 */ 205, 206, 207, 337, 329, 94, 244, 245, 97, 451, + /* 1080 */ 452, 337, 399, 48, 456, 457, 403, 351, 337, 406, + /* 1090 */ 407, 408, 409, 410, 411, 351, 413, 329, 58, 247, + /* 1100 */ 106, 418, 351, 420, 368, 360, 373, 424, 425, 337, + /* 1110 */ 0, 246, 368, 368, 361, 329, 337, 329, 373, 368, + /* 1120 */ 375, 126, 127, 351, 99, 361, 131, 102, 360, 446, + /* 1130 */ 351, 337, 22, 132, 133, 337, 368, 97, 63, 329, + /* 1140 */ 368, 373, 361, 375, 399, 351, 0, 368, 403, 351, + /* 1150 */ 156, 406, 407, 408, 409, 410, 411, 329, 413, 373, + /* 1160 */ 0, 373, 368, 418, 390, 420, 368, 399, 22, 424, + /* 1170 */ 425, 403, 390, 329, 406, 407, 408, 409, 410, 411, + /* 1180 */ 435, 413, 22, 373, 329, 329, 418, 35, 420, 44, + /* 1190 */ 12, 13, 424, 425, 99, 265, 329, 102, 383, 99, + /* 1200 */ 22, 373, 102, 435, 360, 99, 432, 460, 102, 44, + /* 1210 */ 436, 33, 368, 35, 432, 449, 339, 373, 436, 375, + /* 1220 */ 44, 1, 2, 443, 339, 451, 452, 360, 373, 373, + /* 1230 */ 456, 457, 44, 451, 452, 368, 58, 44, 456, 457, + /* 1240 */ 373, 96, 375, 399, 383, 44, 44, 403, 70, 360, + /* 1250 */ 406, 407, 408, 409, 410, 411, 44, 413, 44, 390, + /* 1260 */ 13, 96, 418, 44, 420, 329, 399, 336, 424, 425, + /* 1270 */ 403, 44, 96, 406, 407, 408, 409, 410, 411, 435, + /* 1280 */ 413, 47, 35, 208, 96, 418, 269, 420, 329, 96, + /* 1290 */ 13, 424, 425, 35, 372, 117, 360, 96, 96, 383, + /* 1300 */ 44, 432, 435, 44, 368, 436, 95, 44, 96, 373, + /* 1310 */ 96, 375, 35, 434, 426, 96, 105, 437, 248, 360, + /* 1320 */ 451, 452, 44, 96, 44, 456, 457, 368, 70, 95, + /* 1330 */ 401, 453, 373, 48, 375, 399, 181, 185, 400, 403, + /* 1340 */ 392, 42, 406, 407, 408, 409, 410, 411, 412, 413, + /* 1350 */ 414, 415, 96, 380, 20, 96, 380, 383, 399, 96, + /* 1360 */ 161, 183, 403, 185, 378, 406, 407, 408, 409, 410, + /* 1370 */ 411, 20, 413, 337, 96, 329, 96, 418, 337, 420, + /* 1380 */ 380, 93, 378, 424, 425, 378, 208, 209, 345, 337, + /* 1390 */ 337, 337, 20, 331, 331, 20, 20, 375, 329, 221, + /* 1400 */ 222, 223, 224, 225, 226, 227, 360, 396, 343, 343, + /* 1410 */ 20, 338, 20, 337, 368, 391, 338, 343, 52, 373, + /* 1420 */ 343, 375, 343, 343, 343, 340, 340, 331, 360, 360, + /* 1430 */ 337, 360, 360, 373, 331, 197, 398, 368, 396, 188, + /* 1440 */ 373, 337, 373, 360, 375, 399, 341, 360, 360, 403, + /* 1450 */ 360, 360, 406, 407, 408, 409, 410, 411, 360, 413, + /* 1460 */ 341, 360, 360, 256, 418, 383, 420, 375, 399, 442, + /* 1470 */ 424, 425, 403, 329, 442, 406, 407, 408, 409, 410, + /* 1480 */ 411, 373, 413, 255, 395, 386, 373, 418, 373, 420, + /* 1490 */ 383, 373, 262, 424, 425, 386, 445, 174, 442, 444, + /* 1500 */ 329, 249, 441, 264, 360, 263, 271, 245, 461, 268, + /* 1510 */ 266, 454, 368, 401, 455, 368, 20, 373, 337, 375, + /* 1520 */ 338, 405, 386, 373, 440, 341, 341, 373, 386, 373, + /* 1530 */ 373, 360, 373, 439, 373, 166, 341, 384, 341, 368, + /* 1540 */ 368, 95, 356, 399, 373, 423, 375, 403, 95, 36, + /* 1550 */ 406, 407, 408, 409, 410, 411, 364, 413, 350, 337, + /* 1560 */ 373, 332, 341, 331, 420, 397, 329, 393, 424, 425, + /* 1570 */ 399, 354, 354, 327, 403, 342, 387, 406, 407, 408, + /* 1580 */ 409, 410, 411, 387, 413, 354, 0, 0, 190, 0, + /* 1590 */ 0, 420, 42, 0, 35, 424, 425, 360, 202, 35, + /* 1600 */ 35, 35, 202, 0, 35, 368, 35, 202, 0, 202, + /* 1610 */ 373, 0, 375, 35, 0, 0, 22, 35, 185, 183, + /* 1620 */ 0, 329, 0, 179, 0, 178, 0, 47, 0, 0, + /* 1630 */ 0, 0, 0, 42, 0, 0, 399, 0, 0, 329, + /* 1640 */ 403, 0, 0, 406, 407, 408, 409, 410, 411, 151, + /* 1650 */ 413, 35, 360, 0, 151, 0, 0, 420, 0, 0, + /* 1660 */ 368, 424, 425, 0, 0, 373, 0, 375, 22, 42, + /* 1670 */ 360, 0, 0, 0, 0, 0, 0, 0, 368, 0, + /* 1680 */ 0, 0, 0, 373, 135, 375, 0, 0, 0, 0, + /* 1690 */ 0, 399, 0, 329, 0, 403, 0, 0, 406, 407, + /* 1700 */ 408, 409, 410, 411, 35, 413, 0, 58, 0, 399, + /* 1710 */ 58, 0, 0, 403, 329, 14, 406, 407, 408, 409, + /* 1720 */ 410, 411, 44, 413, 360, 42, 0, 14, 0, 0, + /* 1730 */ 420, 0, 368, 0, 39, 425, 174, 373, 47, 375, + /* 1740 */ 47, 0, 40, 39, 39, 360, 47, 0, 0, 64, + /* 1750 */ 458, 459, 0, 368, 35, 48, 39, 0, 373, 35, + /* 1760 */ 375, 39, 48, 399, 0, 35, 48, 403, 0, 35, + /* 1770 */ 406, 407, 408, 409, 410, 411, 39, 413, 39, 329, + /* 1780 */ 48, 0, 0, 0, 399, 0, 35, 22, 403, 0, + /* 1790 */ 35, 406, 407, 408, 409, 410, 411, 35, 413, 22, + /* 1800 */ 329, 35, 104, 0, 35, 102, 35, 44, 35, 35, + /* 1810 */ 360, 44, 448, 22, 0, 22, 0, 22, 368, 35, + /* 1820 */ 50, 0, 35, 373, 0, 375, 0, 35, 22, 20, + /* 1830 */ 95, 360, 35, 35, 195, 450, 365, 0, 96, 368, + /* 1840 */ 35, 0, 22, 186, 373, 0, 375, 0, 44, 399, + /* 1850 */ 250, 3, 96, 403, 229, 95, 406, 407, 408, 409, + /* 1860 */ 410, 411, 44, 413, 164, 3, 254, 95, 250, 329, + /* 1870 */ 399, 96, 96, 164, 403, 95, 166, 406, 407, 408, + /* 1880 */ 409, 410, 411, 95, 413, 164, 171, 329, 172, 95, + /* 1890 */ 44, 171, 96, 250, 95, 44, 47, 47, 96, 44, + /* 1900 */ 360, 35, 35, 96, 35, 35, 35, 35, 368, 459, + /* 1910 */ 47, 96, 44, 373, 244, 375, 0, 0, 360, 96, + /* 1920 */ 47, 0, 0, 365, 95, 39, 368, 96, 95, 0, + /* 1930 */ 96, 373, 39, 375, 95, 95, 47, 95, 95, 399, + /* 1940 */ 105, 44, 329, 403, 165, 167, 406, 407, 408, 409, + /* 1950 */ 410, 411, 229, 413, 2, 415, 231, 399, 22, 95, + /* 1960 */ 95, 403, 208, 22, 406, 407, 408, 409, 410, 411, + /* 1970 */ 96, 413, 229, 360, 96, 95, 119, 96, 365, 47, + /* 1980 */ 95, 368, 95, 95, 47, 106, 373, 96, 375, 35, + /* 1990 */ 96, 35, 96, 95, 35, 95, 210, 329, 96, 35, + /* 2000 */ 95, 35, 96, 95, 35, 96, 95, 22, 95, 119, + /* 2010 */ 107, 119, 399, 329, 119, 44, 403, 35, 95, 406, + /* 2020 */ 407, 408, 409, 410, 411, 95, 413, 22, 360, 64, + /* 2030 */ 63, 35, 35, 35, 35, 35, 368, 35, 35, 35, + /* 2040 */ 70, 373, 35, 375, 360, 35, 35, 92, 35, 35, + /* 2050 */ 44, 35, 368, 22, 35, 35, 70, 373, 35, 375, + /* 2060 */ 35, 35, 35, 35, 22, 329, 0, 399, 35, 35, + /* 2070 */ 48, 403, 0, 35, 406, 407, 408, 409, 410, 411, + /* 2080 */ 39, 413, 39, 399, 48, 0, 35, 403, 329, 0, + /* 2090 */ 406, 407, 408, 409, 410, 411, 360, 413, 48, 39, + /* 2100 */ 35, 48, 39, 0, 368, 35, 35, 0, 22, 373, + /* 2110 */ 22, 375, 21, 20, 22, 21, 462, 462, 462, 360, + /* 2120 */ 462, 462, 462, 462, 462, 462, 462, 368, 462, 462, + /* 2130 */ 462, 462, 373, 462, 375, 399, 462, 462, 462, 403, + /* 2140 */ 329, 462, 406, 407, 408, 409, 410, 411, 462, 413, + /* 2150 */ 462, 462, 462, 462, 462, 462, 462, 462, 399, 462, + /* 2160 */ 462, 329, 403, 462, 462, 406, 407, 408, 409, 410, + /* 2170 */ 411, 360, 413, 462, 462, 462, 462, 462, 462, 368, + /* 2180 */ 462, 462, 462, 462, 373, 462, 375, 462, 462, 462, + /* 2190 */ 462, 462, 360, 462, 462, 462, 462, 462, 462, 462, + /* 2200 */ 368, 462, 462, 462, 462, 373, 462, 375, 462, 462, + /* 2210 */ 399, 462, 462, 462, 403, 462, 462, 406, 407, 408, + /* 2220 */ 409, 410, 411, 462, 413, 462, 462, 462, 462, 462, + /* 2230 */ 329, 399, 462, 462, 462, 403, 462, 462, 406, 407, + /* 2240 */ 408, 409, 410, 411, 462, 413, 462, 462, 329, 462, + /* 2250 */ 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, + /* 2260 */ 462, 360, 462, 462, 462, 462, 462, 462, 462, 368, + /* 2270 */ 462, 462, 462, 462, 373, 462, 375, 462, 462, 360, + /* 2280 */ 462, 462, 462, 462, 462, 462, 462, 368, 462, 462, + /* 2290 */ 462, 462, 373, 462, 375, 462, 462, 462, 462, 462, + /* 2300 */ 399, 462, 462, 329, 403, 462, 462, 406, 407, 408, + /* 2310 */ 409, 410, 411, 462, 413, 462, 462, 462, 399, 462, + /* 2320 */ 462, 462, 403, 462, 462, 406, 407, 408, 409, 410, + /* 2330 */ 411, 462, 413, 462, 360, 462, 462, 462, 462, 462, + /* 2340 */ 462, 462, 368, 462, 462, 462, 462, 373, 462, 375, + /* 2350 */ 462, 462, 462, 462, 462, 462, 462, 462, 329, 462, + /* 2360 */ 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, + /* 2370 */ 462, 462, 462, 399, 329, 462, 462, 403, 462, 462, + /* 2380 */ 406, 407, 408, 409, 410, 411, 462, 413, 462, 360, + /* 2390 */ 462, 462, 462, 462, 462, 462, 462, 368, 462, 462, + /* 2400 */ 462, 462, 373, 462, 375, 360, 462, 462, 462, 462, + /* 2410 */ 462, 462, 462, 368, 462, 462, 462, 462, 373, 462, + /* 2420 */ 375, 462, 462, 462, 462, 462, 329, 462, 399, 462, + /* 2430 */ 462, 462, 403, 462, 462, 406, 407, 408, 409, 410, + /* 2440 */ 411, 462, 413, 462, 399, 462, 462, 462, 403, 329, + /* 2450 */ 462, 406, 407, 408, 409, 410, 411, 360, 413, 462, + /* 2460 */ 462, 462, 462, 462, 462, 368, 462, 462, 462, 462, + /* 2470 */ 373, 462, 375, 462, 462, 462, 462, 462, 462, 462, + /* 2480 */ 360, 462, 462, 462, 462, 462, 462, 462, 368, 462, + /* 2490 */ 462, 462, 462, 373, 462, 375, 399, 462, 462, 462, + /* 2500 */ 403, 329, 462, 406, 407, 408, 409, 410, 411, 462, + /* 2510 */ 413, 462, 462, 462, 462, 462, 462, 462, 462, 399, + /* 2520 */ 462, 462, 329, 403, 462, 462, 406, 407, 408, 409, + /* 2530 */ 410, 411, 360, 413, 462, 462, 462, 462, 462, 462, + /* 2540 */ 368, 462, 462, 462, 462, 373, 462, 375, 462, 462, + /* 2550 */ 462, 462, 462, 360, 462, 462, 462, 462, 462, 462, + /* 2560 */ 462, 368, 462, 462, 462, 462, 373, 462, 375, 462, + /* 2570 */ 462, 399, 462, 462, 462, 403, 462, 462, 406, 407, + /* 2580 */ 408, 409, 410, 411, 462, 413, 462, 462, 462, 462, + /* 2590 */ 462, 329, 399, 462, 462, 462, 403, 462, 462, 406, + /* 2600 */ 407, 408, 409, 410, 411, 462, 413, 462, 462, 329, + /* 2610 */ 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, + /* 2620 */ 462, 462, 360, 462, 462, 462, 462, 462, 462, 462, + /* 2630 */ 368, 462, 462, 462, 462, 373, 462, 375, 462, 462, + /* 2640 */ 360, 462, 462, 462, 462, 462, 462, 462, 368, 462, + /* 2650 */ 462, 462, 462, 373, 462, 375, 462, 462, 462, 462, + /* 2660 */ 462, 399, 462, 462, 329, 403, 462, 462, 406, 407, + /* 2670 */ 408, 409, 410, 411, 462, 413, 462, 462, 462, 399, + /* 2680 */ 462, 462, 462, 403, 462, 462, 406, 407, 408, 409, + /* 2690 */ 410, 411, 462, 413, 462, 360, 462, 462, 462, 462, + /* 2700 */ 462, 462, 462, 368, 462, 462, 462, 462, 373, 462, + /* 2710 */ 375, 462, 462, 462, 462, 462, 462, 462, 462, 329, + /* 2720 */ 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, + /* 2730 */ 462, 462, 462, 462, 399, 329, 462, 462, 403, 462, + /* 2740 */ 462, 406, 407, 408, 409, 410, 411, 462, 413, 462, + /* 2750 */ 360, 462, 462, 462, 462, 462, 462, 462, 368, 462, + /* 2760 */ 462, 462, 462, 373, 462, 375, 360, 462, 462, 462, + /* 2770 */ 462, 462, 462, 462, 368, 462, 462, 462, 462, 373, + /* 2780 */ 462, 375, 462, 462, 462, 462, 462, 329, 462, 399, + /* 2790 */ 462, 462, 462, 403, 462, 462, 406, 407, 408, 409, + /* 2800 */ 410, 411, 462, 413, 462, 399, 462, 462, 462, 403, + /* 2810 */ 329, 462, 406, 407, 408, 409, 410, 411, 360, 413, + /* 2820 */ 462, 462, 462, 462, 462, 462, 368, 462, 462, 462, + /* 2830 */ 462, 373, 462, 375, 462, 462, 462, 462, 462, 462, + /* 2840 */ 462, 360, 462, 462, 462, 462, 462, 462, 462, 368, + /* 2850 */ 462, 462, 462, 462, 373, 462, 375, 399, 462, 462, + /* 2860 */ 462, 403, 462, 462, 406, 407, 408, 409, 410, 411, + /* 2870 */ 462, 413, 462, 462, 462, 462, 462, 462, 462, 462, + /* 2880 */ 399, 462, 462, 462, 403, 462, 462, 406, 407, 408, + /* 2890 */ 409, 410, 411, 462, 413, 326, 326, 326, 326, 326, + /* 2900 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2910 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2920 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2930 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2940 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2950 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2960 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2970 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2980 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 2990 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3000 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3010 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3020 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3030 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3040 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3050 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3060 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3070 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3080 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3090 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3100 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3110 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3120 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3130 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3140 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3150 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3160 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3170 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3180 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3190 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3200 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3210 */ 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, + /* 3220 */ 326, }; -#define YY_SHIFT_COUNT (721) +#define YY_SHIFT_COUNT (723) #define YY_SHIFT_MIN (0) -#define YY_SHIFT_MAX (2009) +#define YY_SHIFT_MAX (2107) static const unsigned short int yy_shift_ofst[] = { - /* 0 */ 862, 0, 71, 0, 289, 289, 289, 289, 289, 289, - /* 10 */ 289, 289, 289, 289, 289, 360, 576, 576, 647, 576, - /* 20 */ 576, 576, 576, 576, 576, 576, 576, 576, 576, 576, - /* 30 */ 576, 576, 576, 576, 576, 576, 576, 576, 576, 576, - /* 40 */ 576, 576, 576, 576, 576, 576, 576, 576, 32, 134, - /* 50 */ 21, 590, 133, 7, 104, 7, 21, 21, 1216, 1216, - /* 60 */ 7, 1216, 1216, 136, 7, 423, 156, 156, 423, 401, - /* 70 */ 401, 215, 57, 5, 5, 156, 156, 156, 156, 156, - /* 80 */ 156, 156, 156, 156, 156, 80, 156, 156, 229, 156, - /* 90 */ 518, 156, 156, 156, 156, 518, 156, 156, 518, 156, - /* 100 */ 518, 518, 518, 156, 301, 792, 34, 34, 216, 474, - /* 110 */ 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, - /* 120 */ 283, 283, 283, 283, 283, 283, 283, 283, 283, 1073, - /* 130 */ 87, 215, 57, 593, 489, 499, 499, 499, 749, 441, - /* 140 */ 441, 489, 579, 579, 579, 530, 584, 518, 358, 518, - /* 150 */ 358, 358, 530, 786, 217, 217, 217, 217, 217, 217, - /* 160 */ 217, 1351, 408, 336, 612, 249, 430, 340, 464, 292, - /* 170 */ 716, 438, 757, 884, 882, 817, 748, 12, 898, 748, - /* 180 */ 975, 839, 765, 1009, 1211, 1082, 1231, 1257, 1231, 1124, - /* 190 */ 1267, 1267, 1231, 1124, 1124, 1204, 1267, 1267, 1267, 1283, - /* 200 */ 1283, 1285, 80, 1290, 80, 1293, 1295, 80, 1293, 80, - /* 210 */ 80, 80, 1267, 80, 1284, 1284, 1283, 518, 518, 518, - /* 220 */ 518, 518, 518, 518, 518, 518, 518, 518, 1267, 1283, - /* 230 */ 358, 358, 1172, 1285, 301, 1192, 1290, 301, 1267, 1257, - /* 240 */ 1257, 358, 1132, 1136, 358, 1132, 1136, 358, 358, 518, - /* 250 */ 1152, 1224, 1132, 1151, 1153, 1168, 1009, 1155, 1154, 1161, - /* 260 */ 1174, 579, 1409, 1267, 1293, 301, 301, 1136, 358, 358, - /* 270 */ 358, 358, 358, 1136, 358, 1301, 301, 530, 301, 579, - /* 280 */ 1384, 1387, 358, 786, 1267, 301, 1452, 1283, 3069, 3069, - /* 290 */ 3069, 3069, 3069, 3069, 3069, 3069, 3069, 887, 310, 94, - /* 300 */ 625, 15, 59, 738, 720, 753, 881, 73, 781, 472, - /* 310 */ 472, 472, 472, 472, 472, 472, 472, 472, 875, 124, - /* 320 */ 373, 373, 122, 4, 58, 166, 484, 300, 300, 790, - /* 330 */ 732, 588, 790, 790, 790, 113, 691, 288, 976, 907, - /* 340 */ 987, 923, 988, 1003, 1007, 1035, 1093, 1101, 1063, 1032, - /* 350 */ 1044, 865, 779, 977, 721, 1090, 1103, 1115, 1120, 1131, - /* 360 */ 1140, 1142, 1141, 998, 1051, 406, 1144, 723, 1145, 1147, - /* 370 */ 1148, 1150, 1157, 1176, 1050, 1212, 1217, 1184, 1190, 1494, - /* 380 */ 1498, 1311, 1503, 1504, 1463, 1507, 1473, 1321, 1489, 1491, - /* 390 */ 1496, 1328, 1533, 1499, 1500, 1335, 1538, 1339, 1541, 1508, - /* 400 */ 1542, 1522, 1545, 1511, 1364, 1367, 1550, 1551, 1374, 1376, - /* 410 */ 1554, 1555, 1510, 1558, 1559, 1561, 1520, 1569, 1571, 1572, - /* 420 */ 1573, 1574, 1576, 1579, 1580, 1432, 1549, 1585, 1436, 1588, - /* 430 */ 1589, 1590, 1592, 1606, 1607, 1608, 1609, 1610, 1611, 1612, - /* 440 */ 1613, 1614, 1615, 1616, 1552, 1595, 1596, 1597, 1598, 1599, - /* 450 */ 1581, 1600, 1601, 1602, 1469, 1618, 1619, 1587, 1620, 1565, - /* 460 */ 1630, 1575, 1632, 1634, 1593, 1617, 1603, 1605, 1623, 1621, - /* 470 */ 1625, 1622, 1640, 1624, 1626, 1641, 1645, 1646, 1627, 1475, - /* 480 */ 1650, 1653, 1654, 1591, 1657, 1658, 1628, 1629, 1631, 1660, - /* 490 */ 1636, 1633, 1635, 1661, 1637, 1643, 1639, 1662, 1638, 1644, - /* 500 */ 1655, 1667, 1676, 1680, 1693, 1604, 1642, 1664, 1673, 1697, - /* 510 */ 1669, 1671, 1672, 1674, 1666, 1668, 1678, 1679, 1689, 1681, - /* 520 */ 1702, 1695, 1715, 1696, 1670, 1721, 1700, 1688, 1724, 1690, - /* 530 */ 1726, 1707, 1728, 1708, 1711, 1710, 1712, 1557, 1652, 1665, - /* 540 */ 1735, 1586, 1717, 1753, 1647, 1734, 1648, 1649, 1757, 1759, - /* 550 */ 1656, 1651, 1758, 1719, 1515, 1684, 1682, 1685, 1659, 1547, - /* 560 */ 1663, 1523, 1686, 1737, 1687, 1691, 1692, 1694, 1698, 1740, - /* 570 */ 1741, 1744, 1703, 1749, 1546, 1705, 1706, 1793, 1760, 1548, - /* 580 */ 1764, 1768, 1770, 1771, 1773, 1774, 1714, 1716, 1766, 1564, - /* 590 */ 1777, 1787, 1815, 1817, 1818, 1835, 1742, 1797, 1743, 1745, - /* 600 */ 1746, 1748, 1750, 1699, 1752, 1848, 1801, 1704, 1754, 1747, - /* 610 */ 1605, 1803, 1807, 1675, 1677, 1713, 1851, 1833, 1709, 1761, - /* 620 */ 1762, 1765, 1763, 1767, 1775, 1810, 1769, 1778, 1814, 1776, - /* 630 */ 1841, 1718, 1788, 1780, 1791, 1831, 1832, 1794, 1792, 1834, - /* 640 */ 1795, 1796, 1859, 1800, 1805, 1862, 1804, 1806, 1869, 1813, - /* 650 */ 1786, 1790, 1798, 1799, 1888, 1808, 1816, 1868, 1819, 1878, - /* 660 */ 1825, 1868, 1868, 1897, 1857, 1860, 1890, 1891, 1894, 1895, - /* 670 */ 1904, 1905, 1907, 1908, 1909, 1911, 1877, 1856, 1910, 1914, - /* 680 */ 1916, 1920, 1934, 1922, 1923, 1924, 1893, 1666, 1925, 1668, - /* 690 */ 1927, 1929, 1930, 1932, 1947, 1935, 1971, 1937, 1926, 1936, - /* 700 */ 1977, 1943, 1931, 1942, 1982, 1954, 1945, 1952, 1994, 1960, - /* 710 */ 1949, 1959, 2005, 1972, 1973, 2009, 1988, 1991, 1992, 1993, - /* 720 */ 1995, 1997, + /* 0 */ 865, 0, 71, 0, 290, 290, 290, 290, 290, 290, + /* 10 */ 290, 290, 290, 290, 290, 361, 578, 578, 649, 578, + /* 20 */ 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, + /* 30 */ 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, + /* 40 */ 578, 578, 578, 578, 578, 578, 578, 578, 115, 154, + /* 50 */ 72, 59, 149, 214, 446, 214, 72, 72, 1178, 1178, + /* 60 */ 214, 1178, 1178, 251, 214, 258, 5, 5, 258, 85, + /* 70 */ 85, 551, 239, 74, 74, 5, 5, 5, 5, 5, + /* 80 */ 5, 5, 5, 5, 5, 78, 5, 5, 162, 5, + /* 90 */ 225, 5, 5, 5, 5, 225, 5, 5, 225, 5, + /* 100 */ 225, 225, 225, 5, 253, 795, 34, 34, 47, 164, + /* 110 */ 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, + /* 120 */ 710, 710, 710, 710, 710, 710, 710, 710, 710, 891, + /* 130 */ 730, 551, 239, 137, 456, 529, 529, 529, 308, 374, + /* 140 */ 374, 456, 459, 459, 459, 416, 335, 225, 525, 225, + /* 150 */ 525, 525, 416, 531, 218, 218, 218, 218, 218, 218, + /* 160 */ 218, 502, 415, 36, 454, 249, 469, 122, 69, 25, + /* 170 */ 98, 546, 590, 941, 775, 665, 832, 21, 930, 832, + /* 180 */ 1015, 852, 822, 1070, 1285, 1155, 1299, 1334, 1299, 1199, + /* 190 */ 1351, 1351, 1299, 1199, 1199, 1288, 1351, 1351, 1351, 1372, + /* 200 */ 1372, 1375, 78, 1376, 78, 1390, 1392, 78, 1390, 78, + /* 210 */ 78, 78, 1351, 78, 1366, 1366, 1372, 225, 225, 225, + /* 220 */ 225, 225, 225, 225, 225, 225, 225, 225, 1351, 1372, + /* 230 */ 525, 525, 1238, 1375, 253, 1251, 1376, 253, 1351, 1334, + /* 240 */ 1334, 525, 1207, 1228, 525, 1207, 1228, 525, 525, 225, + /* 250 */ 1230, 1323, 1207, 1239, 1242, 1252, 1070, 1235, 1241, 1244, + /* 260 */ 1262, 459, 1496, 1351, 1390, 253, 253, 1228, 525, 525, + /* 270 */ 525, 525, 525, 1228, 525, 1369, 253, 416, 253, 459, + /* 280 */ 1446, 1453, 525, 531, 1351, 253, 1513, 1372, 2895, 2895, + /* 290 */ 2895, 2895, 2895, 2895, 2895, 2895, 2895, 890, 311, 884, + /* 300 */ 981, 524, 342, 539, 608, 614, 763, 474, 723, 993, + /* 310 */ 993, 993, 993, 993, 993, 993, 993, 993, 63, 123, + /* 320 */ 364, 364, 455, 636, 561, 87, 749, 303, 995, 995, + /* 330 */ 864, 919, 406, 864, 864, 864, 320, 1035, 450, 1023, + /* 340 */ 994, 1025, 1095, 1100, 1106, 1110, 1146, 1160, 1040, 1145, + /* 350 */ 1165, 1001, 656, 1017, 728, 1176, 1193, 1201, 1202, 1212, + /* 360 */ 1214, 1220, 1219, 126, 1152, 1075, 1188, 1234, 1227, 1256, + /* 370 */ 1259, 1263, 1278, 1280, 1211, 1247, 1277, 1258, 1003, 1586, + /* 380 */ 1587, 1398, 1589, 1590, 1550, 1593, 1559, 1396, 1564, 1565, + /* 390 */ 1566, 1400, 1603, 1569, 1571, 1405, 1608, 1407, 1611, 1578, + /* 400 */ 1614, 1594, 1615, 1582, 1433, 1436, 1620, 1622, 1444, 1447, + /* 410 */ 1624, 1626, 1580, 1628, 1629, 1630, 1591, 1631, 1632, 1634, + /* 420 */ 1635, 1637, 1638, 1641, 1642, 1498, 1616, 1653, 1503, 1655, + /* 430 */ 1656, 1658, 1659, 1663, 1664, 1666, 1671, 1672, 1673, 1674, + /* 440 */ 1675, 1676, 1677, 1679, 1680, 1627, 1681, 1682, 1686, 1687, + /* 450 */ 1688, 1689, 1646, 1690, 1692, 1694, 1549, 1696, 1697, 1669, + /* 460 */ 1706, 1649, 1708, 1652, 1711, 1712, 1683, 1695, 1678, 1691, + /* 470 */ 1701, 1693, 1713, 1699, 1726, 1702, 1704, 1728, 1729, 1731, + /* 480 */ 1705, 1562, 1733, 1741, 1747, 1685, 1748, 1752, 1719, 1707, + /* 490 */ 1717, 1757, 1724, 1714, 1722, 1764, 1730, 1718, 1737, 1768, + /* 500 */ 1734, 1732, 1739, 1781, 1782, 1783, 1785, 1698, 1703, 1751, + /* 510 */ 1765, 1789, 1755, 1762, 1766, 1769, 1763, 1767, 1771, 1773, + /* 520 */ 1777, 1774, 1803, 1791, 1814, 1793, 1770, 1816, 1795, 1784, + /* 530 */ 1821, 1787, 1824, 1792, 1826, 1806, 1809, 1797, 1798, 1639, + /* 540 */ 1742, 1735, 1837, 1700, 1805, 1841, 1657, 1820, 1709, 1710, + /* 550 */ 1845, 1847, 1721, 1716, 1848, 1804, 1600, 1760, 1756, 1772, + /* 560 */ 1715, 1625, 1720, 1612, 1775, 1818, 1776, 1780, 1788, 1794, + /* 570 */ 1796, 1846, 1849, 1850, 1799, 1851, 1618, 1802, 1807, 1862, + /* 580 */ 1855, 1643, 1866, 1867, 1869, 1870, 1871, 1872, 1815, 1823, + /* 590 */ 1863, 1670, 1868, 1873, 1916, 1917, 1921, 1922, 1829, 1886, + /* 600 */ 1833, 1831, 1834, 1839, 1840, 1778, 1842, 1929, 1893, 1779, + /* 610 */ 1843, 1835, 1691, 1889, 1897, 1723, 1725, 1743, 1952, 1936, + /* 620 */ 1754, 1864, 1874, 1865, 1878, 1880, 1881, 1932, 1885, 1887, + /* 630 */ 1937, 1891, 1941, 1786, 1888, 1879, 1894, 1954, 1956, 1898, + /* 640 */ 1896, 1959, 1900, 1902, 1964, 1905, 1906, 1966, 1908, 1909, + /* 650 */ 1969, 1911, 1857, 1890, 1892, 1895, 1985, 1903, 1913, 1971, + /* 660 */ 1923, 1982, 1930, 1971, 1971, 2005, 1965, 1967, 1996, 1997, + /* 670 */ 1998, 1999, 2000, 2002, 2003, 2004, 2007, 2010, 1970, 1955, + /* 680 */ 2006, 2011, 2013, 2014, 2031, 2016, 2019, 2020, 1986, 1763, + /* 690 */ 2023, 1767, 2025, 2026, 2027, 2028, 2042, 2033, 2066, 2034, + /* 700 */ 2022, 2041, 2072, 2038, 2036, 2043, 2085, 2051, 2050, 2060, + /* 710 */ 2089, 2065, 2053, 2063, 2103, 2070, 2071, 2107, 2086, 2091, + /* 720 */ 2088, 2092, 2094, 2093, }; #define YY_REDUCE_COUNT (296) -#define YY_REDUCE_MIN (-420) -#define YY_REDUCE_MAX (2656) +#define YY_REDUCE_MIN (-428) +#define YY_REDUCE_MAX (2481) static const short yy_reduce_ofst[] = { - /* 0 */ 276, -259, 233, 672, 744, 798, 859, 922, 942, 1045, - /* 10 */ 1104, 1158, 1219, 1277, 1331, 1360, 294, 1418, 1472, 1526, - /* 20 */ 1578, 1594, 1683, 1701, 1755, 1772, 1824, 1840, 1892, 1946, - /* 30 */ 1967, 2043, 2061, 2115, 2132, 2184, 2200, 2252, 2275, 2327, - /* 40 */ 2390, 2442, 2461, 2513, 2529, 2581, 2604, 2656, -258, 95, - /* 50 */ 105, -39, 559, 597, 599, 669, 187, 704, -346, -57, - /* 60 */ -391, 323, 480, -276, -250, 75, -222, 297, -371, -330, - /* 70 */ -326, -327, -363, -299, -257, 116, 128, 193, 199, 327, - /* 80 */ 409, 471, 645, 649, 657, 252, 693, 706, -51, 725, - /* 90 */ -203, 747, 762, 763, 772, 244, 791, 847, -5, 362, - /* 100 */ 465, 24, 485, 845, -210, -315, -420, -420, -217, -212, - /* 110 */ -69, -21, 41, 43, 70, 96, 148, 197, 225, 234, - /* 120 */ 346, 351, 385, 400, 454, 504, 547, 651, 655, -266, - /* 130 */ -170, 397, 191, 152, 533, -170, -150, 219, 477, 186, - /* 140 */ 486, 560, 343, 396, 546, -316, -319, -11, 25, 322, - /* 150 */ 76, 545, 563, 578, -342, 556, 624, 648, 666, 709, - /* 160 */ 734, -348, 722, 789, 766, 707, 729, 831, 737, 834, - /* 170 */ 834, 860, 827, 878, 852, 842, 801, 801, 796, 801, - /* 180 */ 830, 806, 834, 858, 861, 872, 896, 897, 901, 908, - /* 190 */ 952, 954, 912, 915, 918, 955, 962, 964, 966, 974, - /* 200 */ 978, 911, 965, 937, 970, 980, 928, 979, 982, 981, - /* 210 */ 983, 984, 986, 993, 999, 1004, 1012, 994, 996, 1001, - /* 220 */ 1005, 1008, 1010, 1013, 1015, 1016, 1018, 1019, 1021, 1028, - /* 230 */ 990, 991, 940, 985, 1031, 989, 1011, 1041, 1046, 1006, - /* 240 */ 1014, 1017, 945, 1025, 1020, 950, 1026, 1022, 1023, 834, - /* 250 */ 949, 958, 961, 963, 992, 995, 1027, 960, 968, 1024, - /* 260 */ 801, 1061, 1030, 1094, 1098, 1106, 1109, 1059, 1084, 1086, - /* 270 */ 1087, 1088, 1089, 1080, 1095, 1091, 1130, 1117, 1133, 1108, - /* 280 */ 1058, 1121, 1111, 1138, 1149, 1156, 1159, 1162, 1097, 1099, - /* 290 */ 1105, 1107, 1146, 1165, 1166, 1160, 1171, + /* 0 */ -2, -260, 234, 683, 349, 745, 768, 844, 867, 959, + /* 10 */ 1046, 1069, 1144, 1171, 1237, 936, 295, 1292, 1310, 1364, + /* 20 */ 1385, 1450, 1471, 1540, 1558, 1613, 1668, 1684, 1736, 1759, + /* 30 */ 1811, 1832, 1901, 1919, 1974, 2029, 2045, 2097, 2120, 2172, + /* 40 */ 2193, 2262, 2280, 2335, 2390, 2406, 2458, 2481, -19, -280, + /* 50 */ -306, 224, 628, 774, 782, 869, -232, -31, -347, 284, + /* 60 */ -428, -362, -10, -371, -277, 76, 67, 549, -372, -326, + /* 70 */ 192, -328, -369, -300, -132, 194, 266, 328, 470, 554, + /* 80 */ 645, 653, 660, 679, 680, 114, 472, 682, -341, 685, + /* 90 */ -60, 687, 736, 744, 751, -270, 772, 779, 245, 794, + /* 100 */ 314, 479, 464, 798, -311, 10, -170, -170, 54, -285, + /* 110 */ 16, 33, 119, 191, 391, 508, 512, 622, 654, 659, + /* 120 */ 664, 681, 733, 786, 788, 810, 828, 855, 856, -261, + /* 130 */ 220, 428, 46, -62, 196, 220, 259, 294, 390, 299, + /* 140 */ 332, 550, 440, 452, 519, -335, -184, -253, 557, 52, + /* 150 */ 559, 676, 491, 675, -360, 270, 407, 498, 753, 764, + /* 160 */ 781, 632, 289, 695, 815, 747, 766, 877, 780, 889, + /* 170 */ 889, 885, 861, 931, 922, 916, 879, 879, 878, 879, + /* 180 */ 888, 880, 889, 929, 938, 948, 973, 974, 976, 986, + /* 190 */ 1036, 1041, 1000, 1004, 1007, 1043, 1052, 1053, 1054, 1062, + /* 200 */ 1063, 1011, 1065, 1022, 1066, 1073, 1024, 1074, 1078, 1077, + /* 210 */ 1079, 1080, 1076, 1081, 1085, 1086, 1096, 1068, 1071, 1072, + /* 220 */ 1083, 1087, 1088, 1090, 1091, 1098, 1101, 1102, 1093, 1103, + /* 230 */ 1060, 1067, 1038, 1042, 1105, 1089, 1092, 1119, 1104, 1082, + /* 240 */ 1107, 1108, 1027, 1099, 1113, 1032, 1109, 1115, 1118, 889, + /* 250 */ 1051, 1055, 1056, 1061, 1084, 1094, 1112, 1047, 1059, 1057, + /* 260 */ 879, 1147, 1116, 1181, 1182, 1184, 1185, 1136, 1150, 1154, + /* 270 */ 1156, 1157, 1159, 1142, 1161, 1153, 1195, 1186, 1197, 1172, + /* 280 */ 1122, 1192, 1187, 1208, 1222, 1221, 1229, 1232, 1174, 1168, + /* 290 */ 1189, 1196, 1217, 1218, 1231, 1233, 1246, }; static const YYACTIONTYPE yy_default[] = { - /* 0 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 10 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 20 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 30 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 40 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 50 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 60 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 70 */ 1615, 1870, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 80 */ 1615, 1615, 1615, 1615, 1615, 1693, 1615, 1615, 1615, 1615, - /* 90 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 100 */ 1615, 1615, 1615, 1615, 1691, 1863, 2067, 1615, 1615, 1615, - /* 110 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 120 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 130 */ 2079, 1615, 1615, 1693, 1615, 2079, 2079, 2079, 1691, 2039, - /* 140 */ 2039, 1615, 1615, 1615, 1615, 1800, 1615, 1615, 1615, 1615, - /* 150 */ 1615, 1615, 1800, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 160 */ 1615, 1913, 1615, 1615, 2104, 2158, 1615, 1615, 2107, 1615, - /* 170 */ 1615, 1615, 1875, 1615, 1753, 2094, 2071, 2085, 2142, 2072, - /* 180 */ 2069, 2088, 1615, 2098, 1615, 1906, 1868, 1615, 1868, 1865, - /* 190 */ 1615, 1615, 1868, 1865, 1865, 1744, 1615, 1615, 1615, 1615, - /* 200 */ 1615, 1615, 1693, 1615, 1693, 1615, 1615, 1693, 1615, 1693, - /* 210 */ 1693, 1693, 1615, 1693, 1672, 1672, 1615, 1615, 1615, 1615, - /* 220 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 230 */ 1615, 1615, 1926, 1615, 1691, 1915, 1615, 1691, 1615, 1615, - /* 240 */ 1615, 1615, 2115, 2113, 1615, 2115, 2113, 1615, 1615, 1615, - /* 250 */ 2127, 2123, 2115, 2131, 2129, 2100, 2098, 2161, 2148, 2144, - /* 260 */ 2085, 1615, 1615, 1615, 1615, 1691, 1691, 2113, 1615, 1615, - /* 270 */ 1615, 1615, 1615, 2113, 1615, 1615, 1691, 1615, 1691, 1615, - /* 280 */ 1615, 1769, 1615, 1615, 1615, 1691, 1647, 1615, 1908, 1919, - /* 290 */ 1891, 1891, 1803, 1803, 1803, 1694, 1620, 1615, 1615, 1615, - /* 300 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 2126, - /* 310 */ 2125, 1994, 1615, 2043, 2042, 2041, 2032, 1993, 1765, 1615, - /* 320 */ 1992, 1991, 1615, 1615, 1615, 1615, 1615, 1882, 1881, 1985, - /* 330 */ 1615, 1615, 1986, 1984, 1983, 1615, 1615, 1615, 1615, 1615, - /* 340 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 350 */ 1615, 1615, 2145, 2149, 1615, 1615, 1615, 1615, 1615, 1615, - /* 360 */ 1615, 2068, 1615, 1615, 1615, 1615, 1615, 1968, 1615, 1615, - /* 370 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 380 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 390 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 400 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 410 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 420 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 430 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 440 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 450 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 460 */ 1615, 1615, 1615, 1615, 1615, 1615, 1652, 1973, 1615, 1615, - /* 470 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 480 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 490 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 500 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 510 */ 1615, 1615, 1615, 1615, 1732, 1731, 1615, 1615, 1615, 1615, - /* 520 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 530 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1976, 1615, - /* 540 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 550 */ 1615, 1615, 2141, 2101, 1615, 1615, 1615, 1615, 1615, 1615, - /* 560 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 570 */ 1615, 1968, 1615, 2124, 1615, 1615, 2139, 1615, 2143, 1615, - /* 580 */ 1615, 1615, 1615, 1615, 1615, 1615, 2078, 2074, 1615, 1615, - /* 590 */ 2070, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 600 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 610 */ 1967, 1615, 2029, 1615, 1615, 1615, 2063, 1615, 1615, 2014, - /* 620 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1976, - /* 630 */ 1615, 1979, 1615, 1615, 1615, 1615, 1615, 1797, 1615, 1615, - /* 640 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 650 */ 1782, 1780, 1779, 1778, 1615, 1775, 1615, 1810, 1615, 1615, - /* 660 */ 1615, 1806, 1805, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 670 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1712, 1615, - /* 680 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1704, 1615, 1703, - /* 690 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 700 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 710 */ 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, - /* 720 */ 1615, 1615, + /* 0 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 10 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 20 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 30 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 40 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 50 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 60 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 70 */ 1619, 1876, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 80 */ 1619, 1619, 1619, 1619, 1619, 1697, 1619, 1619, 1619, 1619, + /* 90 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 100 */ 1619, 1619, 1619, 1619, 1695, 1869, 2073, 1619, 1619, 1619, + /* 110 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 120 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 130 */ 2085, 1619, 1619, 1697, 1619, 2085, 2085, 2085, 1695, 2045, + /* 140 */ 2045, 1619, 1619, 1619, 1619, 1804, 1619, 1619, 1619, 1619, + /* 150 */ 1619, 1619, 1804, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 160 */ 1619, 1919, 1619, 1619, 2110, 2164, 1619, 1619, 2113, 1619, + /* 170 */ 1619, 1619, 1881, 1619, 1757, 2100, 2077, 2091, 2148, 2078, + /* 180 */ 2075, 2094, 1619, 2104, 1619, 1912, 1874, 1619, 1874, 1871, + /* 190 */ 1619, 1619, 1874, 1871, 1871, 1748, 1619, 1619, 1619, 1619, + /* 200 */ 1619, 1619, 1697, 1619, 1697, 1619, 1619, 1697, 1619, 1697, + /* 210 */ 1697, 1697, 1619, 1697, 1676, 1676, 1619, 1619, 1619, 1619, + /* 220 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 230 */ 1619, 1619, 1932, 1619, 1695, 1921, 1619, 1695, 1619, 1619, + /* 240 */ 1619, 1619, 2121, 2119, 1619, 2121, 2119, 1619, 1619, 1619, + /* 250 */ 2133, 2129, 2121, 2137, 2135, 2106, 2104, 2167, 2154, 2150, + /* 260 */ 2091, 1619, 1619, 1619, 1619, 1695, 1695, 2119, 1619, 1619, + /* 270 */ 1619, 1619, 1619, 2119, 1619, 1619, 1695, 1619, 1695, 1619, + /* 280 */ 1619, 1773, 1619, 1619, 1619, 1695, 1651, 1619, 1914, 1925, + /* 290 */ 1897, 1897, 1807, 1807, 1807, 1698, 1624, 1619, 1619, 1619, + /* 300 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 2132, + /* 310 */ 2131, 2000, 1619, 2049, 2048, 2047, 2038, 1999, 1769, 1619, + /* 320 */ 1998, 1997, 1619, 1619, 1619, 1619, 1619, 1619, 1888, 1887, + /* 330 */ 1991, 1619, 1619, 1992, 1990, 1989, 1619, 1619, 1619, 1619, + /* 340 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 350 */ 1619, 1619, 2151, 2155, 1619, 1619, 1619, 1619, 1619, 1619, + /* 360 */ 1619, 2074, 1619, 1619, 1619, 1619, 1619, 1974, 1619, 1619, + /* 370 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 380 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 390 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 400 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 410 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 420 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 430 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 440 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 450 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 460 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1656, 1979, + /* 470 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 480 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 490 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 500 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 510 */ 1619, 1619, 1619, 1619, 1619, 1619, 1736, 1735, 1619, 1619, + /* 520 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 530 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 540 */ 1982, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 550 */ 1619, 1619, 1619, 1619, 2147, 2107, 1619, 1619, 1619, 1619, + /* 560 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 570 */ 1619, 1619, 1619, 1974, 1619, 2130, 1619, 1619, 2145, 1619, + /* 580 */ 2149, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 2084, 2080, + /* 590 */ 1619, 1619, 2076, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 600 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 610 */ 1619, 1619, 1973, 1619, 2035, 1619, 1619, 1619, 2069, 1619, + /* 620 */ 1619, 2020, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 630 */ 1619, 1982, 1619, 1985, 1619, 1619, 1619, 1619, 1619, 1801, + /* 640 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 650 */ 1619, 1619, 1786, 1784, 1783, 1782, 1619, 1779, 1619, 1814, + /* 660 */ 1619, 1619, 1619, 1810, 1809, 1619, 1619, 1619, 1619, 1619, + /* 670 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 680 */ 1716, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1708, + /* 690 */ 1619, 1707, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 700 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 710 */ 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, + /* 720 */ 1619, 1619, 1619, 1619, }; /********** End of lemon-generated parsing tables *****************************/ @@ -1201,6 +1201,7 @@ static const YYCODETYPE yyFallback[] = { 0, /* CONSUMERS => nothing */ 0, /* SUBSCRIPTIONS => nothing */ 0, /* VNODES => nothing */ + 0, /* ALIVE => nothing */ 0, /* LIKE => nothing */ 0, /* TBNAME => nothing */ 0, /* QTAGS => nothing */ @@ -1269,7 +1270,7 @@ static const YYCODETYPE yyFallback[] = { 0, /* SERVER_STATUS => nothing */ 0, /* CURRENT_USER => nothing */ 0, /* CASE => nothing */ - 271, /* END => ABORT */ + 272, /* END => ABORT */ 0, /* WHEN => nothing */ 0, /* THEN => nothing */ 0, /* ELSE => nothing */ @@ -1313,59 +1314,59 @@ static const YYCODETYPE yyFallback[] = { 0, /* ASC => nothing */ 0, /* NULLS => nothing */ 0, /* ABORT => nothing */ - 271, /* AFTER => ABORT */ - 271, /* ATTACH => ABORT */ - 271, /* BEFORE => ABORT */ - 271, /* BEGIN => ABORT */ - 271, /* BITAND => ABORT */ - 271, /* BITNOT => ABORT */ - 271, /* BITOR => ABORT */ - 271, /* BLOCKS => ABORT */ - 271, /* CHANGE => ABORT */ - 271, /* COMMA => ABORT */ - 271, /* COMPACT => ABORT */ - 271, /* CONCAT => ABORT */ - 271, /* CONFLICT => ABORT */ - 271, /* COPY => ABORT */ - 271, /* DEFERRED => ABORT */ - 271, /* DELIMITERS => ABORT */ - 271, /* DETACH => ABORT */ - 271, /* DIVIDE => ABORT */ - 271, /* DOT => ABORT */ - 271, /* EACH => ABORT */ - 271, /* FAIL => ABORT */ - 271, /* FILE => ABORT */ - 271, /* FOR => ABORT */ - 271, /* GLOB => ABORT */ - 271, /* ID => ABORT */ - 271, /* IMMEDIATE => ABORT */ - 271, /* IMPORT => ABORT */ - 271, /* INITIALLY => ABORT */ - 271, /* INSTEAD => ABORT */ - 271, /* ISNULL => ABORT */ - 271, /* KEY => ABORT */ - 271, /* MODULES => ABORT */ - 271, /* NK_BITNOT => ABORT */ - 271, /* NK_SEMI => ABORT */ - 271, /* NOTNULL => ABORT */ - 271, /* OF => ABORT */ - 271, /* PLUS => ABORT */ - 271, /* PRIVILEGE => ABORT */ - 271, /* RAISE => ABORT */ - 271, /* REPLACE => ABORT */ - 271, /* RESTRICT => ABORT */ - 271, /* ROW => ABORT */ - 271, /* SEMI => ABORT */ - 271, /* STAR => ABORT */ - 271, /* STATEMENT => ABORT */ - 271, /* STRICT => ABORT */ - 271, /* STRING => ABORT */ - 271, /* TIMES => ABORT */ - 271, /* UPDATE => ABORT */ - 271, /* VALUES => ABORT */ - 271, /* VARIABLE => ABORT */ - 271, /* VIEW => ABORT */ - 271, /* WAL => ABORT */ + 272, /* AFTER => ABORT */ + 272, /* ATTACH => ABORT */ + 272, /* BEFORE => ABORT */ + 272, /* BEGIN => ABORT */ + 272, /* BITAND => ABORT */ + 272, /* BITNOT => ABORT */ + 272, /* BITOR => ABORT */ + 272, /* BLOCKS => ABORT */ + 272, /* CHANGE => ABORT */ + 272, /* COMMA => ABORT */ + 272, /* COMPACT => ABORT */ + 272, /* CONCAT => ABORT */ + 272, /* CONFLICT => ABORT */ + 272, /* COPY => ABORT */ + 272, /* DEFERRED => ABORT */ + 272, /* DELIMITERS => ABORT */ + 272, /* DETACH => ABORT */ + 272, /* DIVIDE => ABORT */ + 272, /* DOT => ABORT */ + 272, /* EACH => ABORT */ + 272, /* FAIL => ABORT */ + 272, /* FILE => ABORT */ + 272, /* FOR => ABORT */ + 272, /* GLOB => ABORT */ + 272, /* ID => ABORT */ + 272, /* IMMEDIATE => ABORT */ + 272, /* IMPORT => ABORT */ + 272, /* INITIALLY => ABORT */ + 272, /* INSTEAD => ABORT */ + 272, /* ISNULL => ABORT */ + 272, /* KEY => ABORT */ + 272, /* MODULES => ABORT */ + 272, /* NK_BITNOT => ABORT */ + 272, /* NK_SEMI => ABORT */ + 272, /* NOTNULL => ABORT */ + 272, /* OF => ABORT */ + 272, /* PLUS => ABORT */ + 272, /* PRIVILEGE => ABORT */ + 272, /* RAISE => ABORT */ + 272, /* REPLACE => ABORT */ + 272, /* RESTRICT => ABORT */ + 272, /* ROW => ABORT */ + 272, /* SEMI => ABORT */ + 272, /* STAR => ABORT */ + 272, /* STATEMENT => ABORT */ + 272, /* STRICT => ABORT */ + 272, /* STRING => ABORT */ + 272, /* TIMES => ABORT */ + 272, /* UPDATE => ABORT */ + 272, /* VALUES => ABORT */ + 272, /* VARIABLE => ABORT */ + 272, /* VIEW => ABORT */ + 272, /* WAL => ABORT */ }; #endif /* YYFALLBACK */ @@ -1613,307 +1614,308 @@ static const char *const yyTokenName[] = { /* 157 */ "CONSUMERS", /* 158 */ "SUBSCRIPTIONS", /* 159 */ "VNODES", - /* 160 */ "LIKE", - /* 161 */ "TBNAME", - /* 162 */ "QTAGS", - /* 163 */ "AS", - /* 164 */ "INDEX", - /* 165 */ "FUNCTION", - /* 166 */ "INTERVAL", - /* 167 */ "COUNT", - /* 168 */ "LAST_ROW", - /* 169 */ "TOPIC", - /* 170 */ "WITH", - /* 171 */ "META", - /* 172 */ "CONSUMER", - /* 173 */ "GROUP", - /* 174 */ "DESC", - /* 175 */ "DESCRIBE", - /* 176 */ "RESET", - /* 177 */ "QUERY", - /* 178 */ "CACHE", - /* 179 */ "EXPLAIN", - /* 180 */ "ANALYZE", - /* 181 */ "VERBOSE", - /* 182 */ "NK_BOOL", - /* 183 */ "RATIO", - /* 184 */ "NK_FLOAT", - /* 185 */ "OUTPUTTYPE", - /* 186 */ "AGGREGATE", - /* 187 */ "BUFSIZE", - /* 188 */ "STREAM", - /* 189 */ "INTO", - /* 190 */ "TRIGGER", - /* 191 */ "AT_ONCE", - /* 192 */ "WINDOW_CLOSE", - /* 193 */ "IGNORE", - /* 194 */ "EXPIRED", - /* 195 */ "FILL_HISTORY", - /* 196 */ "SUBTABLE", - /* 197 */ "KILL", - /* 198 */ "CONNECTION", - /* 199 */ "TRANSACTION", - /* 200 */ "BALANCE", - /* 201 */ "VGROUP", - /* 202 */ "MERGE", - /* 203 */ "REDISTRIBUTE", - /* 204 */ "SPLIT", - /* 205 */ "DELETE", - /* 206 */ "INSERT", - /* 207 */ "NULL", - /* 208 */ "NK_QUESTION", - /* 209 */ "NK_ARROW", - /* 210 */ "ROWTS", - /* 211 */ "QSTART", - /* 212 */ "QEND", - /* 213 */ "QDURATION", - /* 214 */ "WSTART", - /* 215 */ "WEND", - /* 216 */ "WDURATION", - /* 217 */ "IROWTS", - /* 218 */ "ISFILLED", - /* 219 */ "CAST", - /* 220 */ "NOW", - /* 221 */ "TODAY", - /* 222 */ "TIMEZONE", - /* 223 */ "CLIENT_VERSION", - /* 224 */ "SERVER_VERSION", - /* 225 */ "SERVER_STATUS", - /* 226 */ "CURRENT_USER", - /* 227 */ "CASE", - /* 228 */ "END", - /* 229 */ "WHEN", - /* 230 */ "THEN", - /* 231 */ "ELSE", - /* 232 */ "BETWEEN", - /* 233 */ "IS", - /* 234 */ "NK_LT", - /* 235 */ "NK_GT", - /* 236 */ "NK_LE", - /* 237 */ "NK_GE", - /* 238 */ "NK_NE", - /* 239 */ "MATCH", - /* 240 */ "NMATCH", - /* 241 */ "CONTAINS", - /* 242 */ "IN", - /* 243 */ "JOIN", - /* 244 */ "INNER", - /* 245 */ "SELECT", - /* 246 */ "DISTINCT", - /* 247 */ "WHERE", - /* 248 */ "PARTITION", - /* 249 */ "BY", - /* 250 */ "SESSION", - /* 251 */ "STATE_WINDOW", - /* 252 */ "EVENT_WINDOW", - /* 253 */ "START", - /* 254 */ "SLIDING", - /* 255 */ "FILL", - /* 256 */ "VALUE", - /* 257 */ "NONE", - /* 258 */ "PREV", - /* 259 */ "LINEAR", - /* 260 */ "NEXT", - /* 261 */ "HAVING", - /* 262 */ "RANGE", - /* 263 */ "EVERY", - /* 264 */ "ORDER", - /* 265 */ "SLIMIT", - /* 266 */ "SOFFSET", - /* 267 */ "LIMIT", - /* 268 */ "OFFSET", - /* 269 */ "ASC", - /* 270 */ "NULLS", - /* 271 */ "ABORT", - /* 272 */ "AFTER", - /* 273 */ "ATTACH", - /* 274 */ "BEFORE", - /* 275 */ "BEGIN", - /* 276 */ "BITAND", - /* 277 */ "BITNOT", - /* 278 */ "BITOR", - /* 279 */ "BLOCKS", - /* 280 */ "CHANGE", - /* 281 */ "COMMA", - /* 282 */ "COMPACT", - /* 283 */ "CONCAT", - /* 284 */ "CONFLICT", - /* 285 */ "COPY", - /* 286 */ "DEFERRED", - /* 287 */ "DELIMITERS", - /* 288 */ "DETACH", - /* 289 */ "DIVIDE", - /* 290 */ "DOT", - /* 291 */ "EACH", - /* 292 */ "FAIL", - /* 293 */ "FILE", - /* 294 */ "FOR", - /* 295 */ "GLOB", - /* 296 */ "ID", - /* 297 */ "IMMEDIATE", - /* 298 */ "IMPORT", - /* 299 */ "INITIALLY", - /* 300 */ "INSTEAD", - /* 301 */ "ISNULL", - /* 302 */ "KEY", - /* 303 */ "MODULES", - /* 304 */ "NK_BITNOT", - /* 305 */ "NK_SEMI", - /* 306 */ "NOTNULL", - /* 307 */ "OF", - /* 308 */ "PLUS", - /* 309 */ "PRIVILEGE", - /* 310 */ "RAISE", - /* 311 */ "REPLACE", - /* 312 */ "RESTRICT", - /* 313 */ "ROW", - /* 314 */ "SEMI", - /* 315 */ "STAR", - /* 316 */ "STATEMENT", - /* 317 */ "STRICT", - /* 318 */ "STRING", - /* 319 */ "TIMES", - /* 320 */ "UPDATE", - /* 321 */ "VALUES", - /* 322 */ "VARIABLE", - /* 323 */ "VIEW", - /* 324 */ "WAL", - /* 325 */ "cmd", - /* 326 */ "account_options", - /* 327 */ "alter_account_options", - /* 328 */ "literal", - /* 329 */ "alter_account_option", - /* 330 */ "user_name", - /* 331 */ "sysinfo_opt", - /* 332 */ "privileges", - /* 333 */ "priv_level", - /* 334 */ "priv_type_list", - /* 335 */ "priv_type", - /* 336 */ "db_name", - /* 337 */ "topic_name", - /* 338 */ "dnode_endpoint", - /* 339 */ "force_opt", - /* 340 */ "not_exists_opt", - /* 341 */ "db_options", - /* 342 */ "exists_opt", - /* 343 */ "alter_db_options", - /* 344 */ "speed_opt", - /* 345 */ "integer_list", - /* 346 */ "variable_list", - /* 347 */ "retention_list", - /* 348 */ "alter_db_option", - /* 349 */ "retention", - /* 350 */ "full_table_name", - /* 351 */ "column_def_list", - /* 352 */ "tags_def_opt", - /* 353 */ "table_options", - /* 354 */ "multi_create_clause", - /* 355 */ "tags_def", - /* 356 */ "multi_drop_clause", - /* 357 */ "alter_table_clause", - /* 358 */ "alter_table_options", - /* 359 */ "column_name", - /* 360 */ "type_name", - /* 361 */ "signed_literal", - /* 362 */ "create_subtable_clause", - /* 363 */ "specific_cols_opt", - /* 364 */ "expression_list", - /* 365 */ "drop_table_clause", - /* 366 */ "col_name_list", - /* 367 */ "table_name", - /* 368 */ "column_def", - /* 369 */ "duration_list", - /* 370 */ "rollup_func_list", - /* 371 */ "alter_table_option", - /* 372 */ "duration_literal", - /* 373 */ "rollup_func_name", - /* 374 */ "function_name", - /* 375 */ "col_name", - /* 376 */ "db_name_cond_opt", - /* 377 */ "like_pattern_opt", - /* 378 */ "table_name_cond", - /* 379 */ "from_db_opt", - /* 380 */ "tag_list_opt", - /* 381 */ "tag_item", - /* 382 */ "column_alias", - /* 383 */ "index_options", - /* 384 */ "func_list", - /* 385 */ "sliding_opt", - /* 386 */ "sma_stream_opt", - /* 387 */ "func", - /* 388 */ "sma_func_name", - /* 389 */ "query_or_subquery", - /* 390 */ "cgroup_name", - /* 391 */ "analyze_opt", - /* 392 */ "explain_options", - /* 393 */ "agg_func_opt", - /* 394 */ "bufsize_opt", - /* 395 */ "stream_name", - /* 396 */ "stream_options", - /* 397 */ "subtable_opt", - /* 398 */ "expression", - /* 399 */ "dnode_list", - /* 400 */ "where_clause_opt", - /* 401 */ "signed", - /* 402 */ "literal_func", - /* 403 */ "literal_list", - /* 404 */ "table_alias", - /* 405 */ "expr_or_subquery", - /* 406 */ "pseudo_column", - /* 407 */ "column_reference", - /* 408 */ "function_expression", - /* 409 */ "case_when_expression", - /* 410 */ "star_func", - /* 411 */ "star_func_para_list", - /* 412 */ "noarg_func", - /* 413 */ "other_para_list", - /* 414 */ "star_func_para", - /* 415 */ "when_then_list", - /* 416 */ "case_when_else_opt", - /* 417 */ "common_expression", - /* 418 */ "when_then_expr", - /* 419 */ "predicate", - /* 420 */ "compare_op", - /* 421 */ "in_op", - /* 422 */ "in_predicate_value", - /* 423 */ "boolean_value_expression", - /* 424 */ "boolean_primary", - /* 425 */ "from_clause_opt", - /* 426 */ "table_reference_list", - /* 427 */ "table_reference", - /* 428 */ "table_primary", - /* 429 */ "joined_table", - /* 430 */ "alias_opt", - /* 431 */ "subquery", - /* 432 */ "parenthesized_joined_table", - /* 433 */ "join_type", - /* 434 */ "search_condition", - /* 435 */ "query_specification", - /* 436 */ "set_quantifier_opt", - /* 437 */ "select_list", - /* 438 */ "partition_by_clause_opt", - /* 439 */ "range_opt", - /* 440 */ "every_opt", - /* 441 */ "fill_opt", - /* 442 */ "twindow_clause_opt", - /* 443 */ "group_by_clause_opt", - /* 444 */ "having_clause_opt", - /* 445 */ "select_item", - /* 446 */ "partition_list", - /* 447 */ "partition_item", - /* 448 */ "fill_mode", - /* 449 */ "group_by_list", - /* 450 */ "query_expression", - /* 451 */ "query_simple", - /* 452 */ "order_by_clause_opt", - /* 453 */ "slimit_clause_opt", - /* 454 */ "limit_clause_opt", - /* 455 */ "union_query_expression", - /* 456 */ "query_simple_or_subquery", - /* 457 */ "sort_specification_list", - /* 458 */ "sort_specification", - /* 459 */ "ordering_specification_opt", - /* 460 */ "null_ordering_opt", + /* 160 */ "ALIVE", + /* 161 */ "LIKE", + /* 162 */ "TBNAME", + /* 163 */ "QTAGS", + /* 164 */ "AS", + /* 165 */ "INDEX", + /* 166 */ "FUNCTION", + /* 167 */ "INTERVAL", + /* 168 */ "COUNT", + /* 169 */ "LAST_ROW", + /* 170 */ "TOPIC", + /* 171 */ "WITH", + /* 172 */ "META", + /* 173 */ "CONSUMER", + /* 174 */ "GROUP", + /* 175 */ "DESC", + /* 176 */ "DESCRIBE", + /* 177 */ "RESET", + /* 178 */ "QUERY", + /* 179 */ "CACHE", + /* 180 */ "EXPLAIN", + /* 181 */ "ANALYZE", + /* 182 */ "VERBOSE", + /* 183 */ "NK_BOOL", + /* 184 */ "RATIO", + /* 185 */ "NK_FLOAT", + /* 186 */ "OUTPUTTYPE", + /* 187 */ "AGGREGATE", + /* 188 */ "BUFSIZE", + /* 189 */ "STREAM", + /* 190 */ "INTO", + /* 191 */ "TRIGGER", + /* 192 */ "AT_ONCE", + /* 193 */ "WINDOW_CLOSE", + /* 194 */ "IGNORE", + /* 195 */ "EXPIRED", + /* 196 */ "FILL_HISTORY", + /* 197 */ "SUBTABLE", + /* 198 */ "KILL", + /* 199 */ "CONNECTION", + /* 200 */ "TRANSACTION", + /* 201 */ "BALANCE", + /* 202 */ "VGROUP", + /* 203 */ "MERGE", + /* 204 */ "REDISTRIBUTE", + /* 205 */ "SPLIT", + /* 206 */ "DELETE", + /* 207 */ "INSERT", + /* 208 */ "NULL", + /* 209 */ "NK_QUESTION", + /* 210 */ "NK_ARROW", + /* 211 */ "ROWTS", + /* 212 */ "QSTART", + /* 213 */ "QEND", + /* 214 */ "QDURATION", + /* 215 */ "WSTART", + /* 216 */ "WEND", + /* 217 */ "WDURATION", + /* 218 */ "IROWTS", + /* 219 */ "ISFILLED", + /* 220 */ "CAST", + /* 221 */ "NOW", + /* 222 */ "TODAY", + /* 223 */ "TIMEZONE", + /* 224 */ "CLIENT_VERSION", + /* 225 */ "SERVER_VERSION", + /* 226 */ "SERVER_STATUS", + /* 227 */ "CURRENT_USER", + /* 228 */ "CASE", + /* 229 */ "END", + /* 230 */ "WHEN", + /* 231 */ "THEN", + /* 232 */ "ELSE", + /* 233 */ "BETWEEN", + /* 234 */ "IS", + /* 235 */ "NK_LT", + /* 236 */ "NK_GT", + /* 237 */ "NK_LE", + /* 238 */ "NK_GE", + /* 239 */ "NK_NE", + /* 240 */ "MATCH", + /* 241 */ "NMATCH", + /* 242 */ "CONTAINS", + /* 243 */ "IN", + /* 244 */ "JOIN", + /* 245 */ "INNER", + /* 246 */ "SELECT", + /* 247 */ "DISTINCT", + /* 248 */ "WHERE", + /* 249 */ "PARTITION", + /* 250 */ "BY", + /* 251 */ "SESSION", + /* 252 */ "STATE_WINDOW", + /* 253 */ "EVENT_WINDOW", + /* 254 */ "START", + /* 255 */ "SLIDING", + /* 256 */ "FILL", + /* 257 */ "VALUE", + /* 258 */ "NONE", + /* 259 */ "PREV", + /* 260 */ "LINEAR", + /* 261 */ "NEXT", + /* 262 */ "HAVING", + /* 263 */ "RANGE", + /* 264 */ "EVERY", + /* 265 */ "ORDER", + /* 266 */ "SLIMIT", + /* 267 */ "SOFFSET", + /* 268 */ "LIMIT", + /* 269 */ "OFFSET", + /* 270 */ "ASC", + /* 271 */ "NULLS", + /* 272 */ "ABORT", + /* 273 */ "AFTER", + /* 274 */ "ATTACH", + /* 275 */ "BEFORE", + /* 276 */ "BEGIN", + /* 277 */ "BITAND", + /* 278 */ "BITNOT", + /* 279 */ "BITOR", + /* 280 */ "BLOCKS", + /* 281 */ "CHANGE", + /* 282 */ "COMMA", + /* 283 */ "COMPACT", + /* 284 */ "CONCAT", + /* 285 */ "CONFLICT", + /* 286 */ "COPY", + /* 287 */ "DEFERRED", + /* 288 */ "DELIMITERS", + /* 289 */ "DETACH", + /* 290 */ "DIVIDE", + /* 291 */ "DOT", + /* 292 */ "EACH", + /* 293 */ "FAIL", + /* 294 */ "FILE", + /* 295 */ "FOR", + /* 296 */ "GLOB", + /* 297 */ "ID", + /* 298 */ "IMMEDIATE", + /* 299 */ "IMPORT", + /* 300 */ "INITIALLY", + /* 301 */ "INSTEAD", + /* 302 */ "ISNULL", + /* 303 */ "KEY", + /* 304 */ "MODULES", + /* 305 */ "NK_BITNOT", + /* 306 */ "NK_SEMI", + /* 307 */ "NOTNULL", + /* 308 */ "OF", + /* 309 */ "PLUS", + /* 310 */ "PRIVILEGE", + /* 311 */ "RAISE", + /* 312 */ "REPLACE", + /* 313 */ "RESTRICT", + /* 314 */ "ROW", + /* 315 */ "SEMI", + /* 316 */ "STAR", + /* 317 */ "STATEMENT", + /* 318 */ "STRICT", + /* 319 */ "STRING", + /* 320 */ "TIMES", + /* 321 */ "UPDATE", + /* 322 */ "VALUES", + /* 323 */ "VARIABLE", + /* 324 */ "VIEW", + /* 325 */ "WAL", + /* 326 */ "cmd", + /* 327 */ "account_options", + /* 328 */ "alter_account_options", + /* 329 */ "literal", + /* 330 */ "alter_account_option", + /* 331 */ "user_name", + /* 332 */ "sysinfo_opt", + /* 333 */ "privileges", + /* 334 */ "priv_level", + /* 335 */ "priv_type_list", + /* 336 */ "priv_type", + /* 337 */ "db_name", + /* 338 */ "topic_name", + /* 339 */ "dnode_endpoint", + /* 340 */ "force_opt", + /* 341 */ "not_exists_opt", + /* 342 */ "db_options", + /* 343 */ "exists_opt", + /* 344 */ "alter_db_options", + /* 345 */ "speed_opt", + /* 346 */ "integer_list", + /* 347 */ "variable_list", + /* 348 */ "retention_list", + /* 349 */ "alter_db_option", + /* 350 */ "retention", + /* 351 */ "full_table_name", + /* 352 */ "column_def_list", + /* 353 */ "tags_def_opt", + /* 354 */ "table_options", + /* 355 */ "multi_create_clause", + /* 356 */ "tags_def", + /* 357 */ "multi_drop_clause", + /* 358 */ "alter_table_clause", + /* 359 */ "alter_table_options", + /* 360 */ "column_name", + /* 361 */ "type_name", + /* 362 */ "signed_literal", + /* 363 */ "create_subtable_clause", + /* 364 */ "specific_cols_opt", + /* 365 */ "expression_list", + /* 366 */ "drop_table_clause", + /* 367 */ "col_name_list", + /* 368 */ "table_name", + /* 369 */ "column_def", + /* 370 */ "duration_list", + /* 371 */ "rollup_func_list", + /* 372 */ "alter_table_option", + /* 373 */ "duration_literal", + /* 374 */ "rollup_func_name", + /* 375 */ "function_name", + /* 376 */ "col_name", + /* 377 */ "db_name_cond_opt", + /* 378 */ "like_pattern_opt", + /* 379 */ "table_name_cond", + /* 380 */ "from_db_opt", + /* 381 */ "tag_list_opt", + /* 382 */ "tag_item", + /* 383 */ "column_alias", + /* 384 */ "index_options", + /* 385 */ "func_list", + /* 386 */ "sliding_opt", + /* 387 */ "sma_stream_opt", + /* 388 */ "func", + /* 389 */ "sma_func_name", + /* 390 */ "query_or_subquery", + /* 391 */ "cgroup_name", + /* 392 */ "analyze_opt", + /* 393 */ "explain_options", + /* 394 */ "agg_func_opt", + /* 395 */ "bufsize_opt", + /* 396 */ "stream_name", + /* 397 */ "stream_options", + /* 398 */ "subtable_opt", + /* 399 */ "expression", + /* 400 */ "dnode_list", + /* 401 */ "where_clause_opt", + /* 402 */ "signed", + /* 403 */ "literal_func", + /* 404 */ "literal_list", + /* 405 */ "table_alias", + /* 406 */ "expr_or_subquery", + /* 407 */ "pseudo_column", + /* 408 */ "column_reference", + /* 409 */ "function_expression", + /* 410 */ "case_when_expression", + /* 411 */ "star_func", + /* 412 */ "star_func_para_list", + /* 413 */ "noarg_func", + /* 414 */ "other_para_list", + /* 415 */ "star_func_para", + /* 416 */ "when_then_list", + /* 417 */ "case_when_else_opt", + /* 418 */ "common_expression", + /* 419 */ "when_then_expr", + /* 420 */ "predicate", + /* 421 */ "compare_op", + /* 422 */ "in_op", + /* 423 */ "in_predicate_value", + /* 424 */ "boolean_value_expression", + /* 425 */ "boolean_primary", + /* 426 */ "from_clause_opt", + /* 427 */ "table_reference_list", + /* 428 */ "table_reference", + /* 429 */ "table_primary", + /* 430 */ "joined_table", + /* 431 */ "alias_opt", + /* 432 */ "subquery", + /* 433 */ "parenthesized_joined_table", + /* 434 */ "join_type", + /* 435 */ "search_condition", + /* 436 */ "query_specification", + /* 437 */ "set_quantifier_opt", + /* 438 */ "select_list", + /* 439 */ "partition_by_clause_opt", + /* 440 */ "range_opt", + /* 441 */ "every_opt", + /* 442 */ "fill_opt", + /* 443 */ "twindow_clause_opt", + /* 444 */ "group_by_clause_opt", + /* 445 */ "having_clause_opt", + /* 446 */ "select_item", + /* 447 */ "partition_list", + /* 448 */ "partition_item", + /* 449 */ "fill_mode", + /* 450 */ "group_by_list", + /* 451 */ "query_expression", + /* 452 */ "query_simple", + /* 453 */ "order_by_clause_opt", + /* 454 */ "slimit_clause_opt", + /* 455 */ "limit_clause_opt", + /* 456 */ "union_query_expression", + /* 457 */ "query_simple_or_subquery", + /* 458 */ "sort_specification_list", + /* 459 */ "sort_specification", + /* 460 */ "ordering_specification_opt", + /* 461 */ "null_ordering_opt", }; #endif /* defined(YYCOVERAGE) || !defined(NDEBUG) */ @@ -2166,307 +2168,309 @@ static const char *const yyRuleName[] = { /* 242 */ "cmd ::= SHOW TABLE TAGS tag_list_opt FROM table_name_cond from_db_opt", /* 243 */ "cmd ::= SHOW VNODES NK_INTEGER", /* 244 */ "cmd ::= SHOW VNODES NK_STRING", - /* 245 */ "db_name_cond_opt ::=", - /* 246 */ "db_name_cond_opt ::= db_name NK_DOT", - /* 247 */ "like_pattern_opt ::=", - /* 248 */ "like_pattern_opt ::= LIKE NK_STRING", - /* 249 */ "table_name_cond ::= table_name", - /* 250 */ "from_db_opt ::=", - /* 251 */ "from_db_opt ::= FROM db_name", - /* 252 */ "tag_list_opt ::=", - /* 253 */ "tag_list_opt ::= tag_item", - /* 254 */ "tag_list_opt ::= tag_list_opt NK_COMMA tag_item", - /* 255 */ "tag_item ::= TBNAME", - /* 256 */ "tag_item ::= QTAGS", - /* 257 */ "tag_item ::= column_name", - /* 258 */ "tag_item ::= column_name column_alias", - /* 259 */ "tag_item ::= column_name AS column_alias", - /* 260 */ "cmd ::= CREATE SMA INDEX not_exists_opt full_table_name ON full_table_name index_options", - /* 261 */ "cmd ::= CREATE INDEX not_exists_opt full_table_name ON full_table_name NK_LP col_name_list NK_RP", - /* 262 */ "cmd ::= DROP INDEX exists_opt full_table_name", - /* 263 */ "index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt", - /* 264 */ "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", - /* 265 */ "func_list ::= func", - /* 266 */ "func_list ::= func_list NK_COMMA func", - /* 267 */ "func ::= sma_func_name NK_LP expression_list NK_RP", - /* 268 */ "sma_func_name ::= function_name", - /* 269 */ "sma_func_name ::= COUNT", - /* 270 */ "sma_func_name ::= FIRST", - /* 271 */ "sma_func_name ::= LAST", - /* 272 */ "sma_func_name ::= LAST_ROW", - /* 273 */ "sma_stream_opt ::=", - /* 274 */ "sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal", - /* 275 */ "sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal", - /* 276 */ "sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal", - /* 277 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery", - /* 278 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS DATABASE db_name", - /* 279 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS DATABASE db_name", - /* 280 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS STABLE full_table_name", - /* 281 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS STABLE full_table_name", - /* 282 */ "cmd ::= DROP TOPIC exists_opt topic_name", - /* 283 */ "cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name", - /* 284 */ "cmd ::= DESC full_table_name", - /* 285 */ "cmd ::= DESCRIBE full_table_name", - /* 286 */ "cmd ::= RESET QUERY CACHE", - /* 287 */ "cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery", - /* 288 */ "analyze_opt ::=", - /* 289 */ "analyze_opt ::= ANALYZE", - /* 290 */ "explain_options ::=", - /* 291 */ "explain_options ::= explain_options VERBOSE NK_BOOL", - /* 292 */ "explain_options ::= explain_options RATIO NK_FLOAT", - /* 293 */ "cmd ::= CREATE agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt", - /* 294 */ "cmd ::= DROP FUNCTION exists_opt function_name", - /* 295 */ "agg_func_opt ::=", - /* 296 */ "agg_func_opt ::= AGGREGATE", - /* 297 */ "bufsize_opt ::=", - /* 298 */ "bufsize_opt ::= BUFSIZE NK_INTEGER", - /* 299 */ "cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name tags_def_opt subtable_opt AS query_or_subquery", - /* 300 */ "cmd ::= DROP STREAM exists_opt stream_name", - /* 301 */ "stream_options ::=", - /* 302 */ "stream_options ::= stream_options TRIGGER AT_ONCE", - /* 303 */ "stream_options ::= stream_options TRIGGER WINDOW_CLOSE", - /* 304 */ "stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal", - /* 305 */ "stream_options ::= stream_options WATERMARK duration_literal", - /* 306 */ "stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER", - /* 307 */ "stream_options ::= stream_options FILL_HISTORY NK_INTEGER", - /* 308 */ "subtable_opt ::=", - /* 309 */ "subtable_opt ::= SUBTABLE NK_LP expression NK_RP", - /* 310 */ "cmd ::= KILL CONNECTION NK_INTEGER", - /* 311 */ "cmd ::= KILL QUERY NK_STRING", - /* 312 */ "cmd ::= KILL TRANSACTION NK_INTEGER", - /* 313 */ "cmd ::= BALANCE VGROUP", - /* 314 */ "cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER", - /* 315 */ "cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list", - /* 316 */ "cmd ::= SPLIT VGROUP NK_INTEGER", - /* 317 */ "dnode_list ::= DNODE NK_INTEGER", - /* 318 */ "dnode_list ::= dnode_list DNODE NK_INTEGER", - /* 319 */ "cmd ::= DELETE FROM full_table_name where_clause_opt", - /* 320 */ "cmd ::= query_or_subquery", - /* 321 */ "cmd ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery", - /* 322 */ "cmd ::= INSERT INTO full_table_name query_or_subquery", - /* 323 */ "literal ::= NK_INTEGER", - /* 324 */ "literal ::= NK_FLOAT", - /* 325 */ "literal ::= NK_STRING", - /* 326 */ "literal ::= NK_BOOL", - /* 327 */ "literal ::= TIMESTAMP NK_STRING", - /* 328 */ "literal ::= duration_literal", - /* 329 */ "literal ::= NULL", - /* 330 */ "literal ::= NK_QUESTION", - /* 331 */ "duration_literal ::= NK_VARIABLE", - /* 332 */ "signed ::= NK_INTEGER", - /* 333 */ "signed ::= NK_PLUS NK_INTEGER", - /* 334 */ "signed ::= NK_MINUS NK_INTEGER", - /* 335 */ "signed ::= NK_FLOAT", - /* 336 */ "signed ::= NK_PLUS NK_FLOAT", - /* 337 */ "signed ::= NK_MINUS NK_FLOAT", - /* 338 */ "signed_literal ::= signed", - /* 339 */ "signed_literal ::= NK_STRING", - /* 340 */ "signed_literal ::= NK_BOOL", - /* 341 */ "signed_literal ::= TIMESTAMP NK_STRING", - /* 342 */ "signed_literal ::= duration_literal", - /* 343 */ "signed_literal ::= NULL", - /* 344 */ "signed_literal ::= literal_func", - /* 345 */ "signed_literal ::= NK_QUESTION", - /* 346 */ "literal_list ::= signed_literal", - /* 347 */ "literal_list ::= literal_list NK_COMMA signed_literal", - /* 348 */ "db_name ::= NK_ID", - /* 349 */ "table_name ::= NK_ID", - /* 350 */ "column_name ::= NK_ID", - /* 351 */ "function_name ::= NK_ID", - /* 352 */ "table_alias ::= NK_ID", - /* 353 */ "column_alias ::= NK_ID", - /* 354 */ "user_name ::= NK_ID", - /* 355 */ "topic_name ::= NK_ID", - /* 356 */ "stream_name ::= NK_ID", - /* 357 */ "cgroup_name ::= NK_ID", - /* 358 */ "expr_or_subquery ::= expression", - /* 359 */ "expression ::= literal", - /* 360 */ "expression ::= pseudo_column", - /* 361 */ "expression ::= column_reference", - /* 362 */ "expression ::= function_expression", - /* 363 */ "expression ::= case_when_expression", - /* 364 */ "expression ::= NK_LP expression NK_RP", - /* 365 */ "expression ::= NK_PLUS expr_or_subquery", - /* 366 */ "expression ::= NK_MINUS expr_or_subquery", - /* 367 */ "expression ::= expr_or_subquery NK_PLUS expr_or_subquery", - /* 368 */ "expression ::= expr_or_subquery NK_MINUS expr_or_subquery", - /* 369 */ "expression ::= expr_or_subquery NK_STAR expr_or_subquery", - /* 370 */ "expression ::= expr_or_subquery NK_SLASH expr_or_subquery", - /* 371 */ "expression ::= expr_or_subquery NK_REM expr_or_subquery", - /* 372 */ "expression ::= column_reference NK_ARROW NK_STRING", - /* 373 */ "expression ::= expr_or_subquery NK_BITAND expr_or_subquery", - /* 374 */ "expression ::= expr_or_subquery NK_BITOR expr_or_subquery", - /* 375 */ "expression_list ::= expr_or_subquery", - /* 376 */ "expression_list ::= expression_list NK_COMMA expr_or_subquery", - /* 377 */ "column_reference ::= column_name", - /* 378 */ "column_reference ::= table_name NK_DOT column_name", - /* 379 */ "pseudo_column ::= ROWTS", - /* 380 */ "pseudo_column ::= TBNAME", - /* 381 */ "pseudo_column ::= table_name NK_DOT TBNAME", - /* 382 */ "pseudo_column ::= QSTART", - /* 383 */ "pseudo_column ::= QEND", - /* 384 */ "pseudo_column ::= QDURATION", - /* 385 */ "pseudo_column ::= WSTART", - /* 386 */ "pseudo_column ::= WEND", - /* 387 */ "pseudo_column ::= WDURATION", - /* 388 */ "pseudo_column ::= IROWTS", - /* 389 */ "pseudo_column ::= ISFILLED", - /* 390 */ "pseudo_column ::= QTAGS", - /* 391 */ "function_expression ::= function_name NK_LP expression_list NK_RP", - /* 392 */ "function_expression ::= star_func NK_LP star_func_para_list NK_RP", - /* 393 */ "function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP", - /* 394 */ "function_expression ::= literal_func", - /* 395 */ "literal_func ::= noarg_func NK_LP NK_RP", - /* 396 */ "literal_func ::= NOW", - /* 397 */ "noarg_func ::= NOW", - /* 398 */ "noarg_func ::= TODAY", - /* 399 */ "noarg_func ::= TIMEZONE", - /* 400 */ "noarg_func ::= DATABASE", - /* 401 */ "noarg_func ::= CLIENT_VERSION", - /* 402 */ "noarg_func ::= SERVER_VERSION", - /* 403 */ "noarg_func ::= SERVER_STATUS", - /* 404 */ "noarg_func ::= CURRENT_USER", - /* 405 */ "noarg_func ::= USER", - /* 406 */ "star_func ::= COUNT", - /* 407 */ "star_func ::= FIRST", - /* 408 */ "star_func ::= LAST", - /* 409 */ "star_func ::= LAST_ROW", - /* 410 */ "star_func_para_list ::= NK_STAR", - /* 411 */ "star_func_para_list ::= other_para_list", - /* 412 */ "other_para_list ::= star_func_para", - /* 413 */ "other_para_list ::= other_para_list NK_COMMA star_func_para", - /* 414 */ "star_func_para ::= expr_or_subquery", - /* 415 */ "star_func_para ::= table_name NK_DOT NK_STAR", - /* 416 */ "case_when_expression ::= CASE when_then_list case_when_else_opt END", - /* 417 */ "case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END", - /* 418 */ "when_then_list ::= when_then_expr", - /* 419 */ "when_then_list ::= when_then_list when_then_expr", - /* 420 */ "when_then_expr ::= WHEN common_expression THEN common_expression", - /* 421 */ "case_when_else_opt ::=", - /* 422 */ "case_when_else_opt ::= ELSE common_expression", - /* 423 */ "predicate ::= expr_or_subquery compare_op expr_or_subquery", - /* 424 */ "predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery", - /* 425 */ "predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery", - /* 426 */ "predicate ::= expr_or_subquery IS NULL", - /* 427 */ "predicate ::= expr_or_subquery IS NOT NULL", - /* 428 */ "predicate ::= expr_or_subquery in_op in_predicate_value", - /* 429 */ "compare_op ::= NK_LT", - /* 430 */ "compare_op ::= NK_GT", - /* 431 */ "compare_op ::= NK_LE", - /* 432 */ "compare_op ::= NK_GE", - /* 433 */ "compare_op ::= NK_NE", - /* 434 */ "compare_op ::= NK_EQ", - /* 435 */ "compare_op ::= LIKE", - /* 436 */ "compare_op ::= NOT LIKE", - /* 437 */ "compare_op ::= MATCH", - /* 438 */ "compare_op ::= NMATCH", - /* 439 */ "compare_op ::= CONTAINS", - /* 440 */ "in_op ::= IN", - /* 441 */ "in_op ::= NOT IN", - /* 442 */ "in_predicate_value ::= NK_LP literal_list NK_RP", - /* 443 */ "boolean_value_expression ::= boolean_primary", - /* 444 */ "boolean_value_expression ::= NOT boolean_primary", - /* 445 */ "boolean_value_expression ::= boolean_value_expression OR boolean_value_expression", - /* 446 */ "boolean_value_expression ::= boolean_value_expression AND boolean_value_expression", - /* 447 */ "boolean_primary ::= predicate", - /* 448 */ "boolean_primary ::= NK_LP boolean_value_expression NK_RP", - /* 449 */ "common_expression ::= expr_or_subquery", - /* 450 */ "common_expression ::= boolean_value_expression", - /* 451 */ "from_clause_opt ::=", - /* 452 */ "from_clause_opt ::= FROM table_reference_list", - /* 453 */ "table_reference_list ::= table_reference", - /* 454 */ "table_reference_list ::= table_reference_list NK_COMMA table_reference", - /* 455 */ "table_reference ::= table_primary", - /* 456 */ "table_reference ::= joined_table", - /* 457 */ "table_primary ::= table_name alias_opt", - /* 458 */ "table_primary ::= db_name NK_DOT table_name alias_opt", - /* 459 */ "table_primary ::= subquery alias_opt", - /* 460 */ "table_primary ::= parenthesized_joined_table", - /* 461 */ "alias_opt ::=", - /* 462 */ "alias_opt ::= table_alias", - /* 463 */ "alias_opt ::= AS table_alias", - /* 464 */ "parenthesized_joined_table ::= NK_LP joined_table NK_RP", - /* 465 */ "parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP", - /* 466 */ "joined_table ::= table_reference join_type JOIN table_reference ON search_condition", - /* 467 */ "join_type ::=", - /* 468 */ "join_type ::= INNER", - /* 469 */ "query_specification ::= SELECT set_quantifier_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", - /* 470 */ "set_quantifier_opt ::=", - /* 471 */ "set_quantifier_opt ::= DISTINCT", - /* 472 */ "set_quantifier_opt ::= ALL", - /* 473 */ "select_list ::= select_item", - /* 474 */ "select_list ::= select_list NK_COMMA select_item", - /* 475 */ "select_item ::= NK_STAR", - /* 476 */ "select_item ::= common_expression", - /* 477 */ "select_item ::= common_expression column_alias", - /* 478 */ "select_item ::= common_expression AS column_alias", - /* 479 */ "select_item ::= table_name NK_DOT NK_STAR", - /* 480 */ "where_clause_opt ::=", - /* 481 */ "where_clause_opt ::= WHERE search_condition", - /* 482 */ "partition_by_clause_opt ::=", - /* 483 */ "partition_by_clause_opt ::= PARTITION BY partition_list", - /* 484 */ "partition_list ::= partition_item", - /* 485 */ "partition_list ::= partition_list NK_COMMA partition_item", - /* 486 */ "partition_item ::= expr_or_subquery", - /* 487 */ "partition_item ::= expr_or_subquery column_alias", - /* 488 */ "partition_item ::= expr_or_subquery AS column_alias", - /* 489 */ "twindow_clause_opt ::=", - /* 490 */ "twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP", - /* 491 */ "twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP", - /* 492 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt", - /* 493 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt", - /* 494 */ "twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition", - /* 495 */ "sliding_opt ::=", - /* 496 */ "sliding_opt ::= SLIDING NK_LP duration_literal NK_RP", - /* 497 */ "fill_opt ::=", - /* 498 */ "fill_opt ::= FILL NK_LP fill_mode NK_RP", - /* 499 */ "fill_opt ::= FILL NK_LP VALUE NK_COMMA literal_list NK_RP", - /* 500 */ "fill_mode ::= NONE", - /* 501 */ "fill_mode ::= PREV", - /* 502 */ "fill_mode ::= NULL", - /* 503 */ "fill_mode ::= LINEAR", - /* 504 */ "fill_mode ::= NEXT", - /* 505 */ "group_by_clause_opt ::=", - /* 506 */ "group_by_clause_opt ::= GROUP BY group_by_list", - /* 507 */ "group_by_list ::= expr_or_subquery", - /* 508 */ "group_by_list ::= group_by_list NK_COMMA expr_or_subquery", - /* 509 */ "having_clause_opt ::=", - /* 510 */ "having_clause_opt ::= HAVING search_condition", - /* 511 */ "range_opt ::=", - /* 512 */ "range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP", - /* 513 */ "every_opt ::=", - /* 514 */ "every_opt ::= EVERY NK_LP duration_literal NK_RP", - /* 515 */ "query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt", - /* 516 */ "query_simple ::= query_specification", - /* 517 */ "query_simple ::= union_query_expression", - /* 518 */ "union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery", - /* 519 */ "union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery", - /* 520 */ "query_simple_or_subquery ::= query_simple", - /* 521 */ "query_simple_or_subquery ::= subquery", - /* 522 */ "query_or_subquery ::= query_expression", - /* 523 */ "query_or_subquery ::= subquery", - /* 524 */ "order_by_clause_opt ::=", - /* 525 */ "order_by_clause_opt ::= ORDER BY sort_specification_list", - /* 526 */ "slimit_clause_opt ::=", - /* 527 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER", - /* 528 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER", - /* 529 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER", - /* 530 */ "limit_clause_opt ::=", - /* 531 */ "limit_clause_opt ::= LIMIT NK_INTEGER", - /* 532 */ "limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER", - /* 533 */ "limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER", - /* 534 */ "subquery ::= NK_LP query_expression NK_RP", - /* 535 */ "subquery ::= NK_LP subquery NK_RP", - /* 536 */ "search_condition ::= common_expression", - /* 537 */ "sort_specification_list ::= sort_specification", - /* 538 */ "sort_specification_list ::= sort_specification_list NK_COMMA sort_specification", - /* 539 */ "sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt", - /* 540 */ "ordering_specification_opt ::=", - /* 541 */ "ordering_specification_opt ::= ASC", - /* 542 */ "ordering_specification_opt ::= DESC", - /* 543 */ "null_ordering_opt ::=", - /* 544 */ "null_ordering_opt ::= NULLS FIRST", - /* 545 */ "null_ordering_opt ::= NULLS LAST", + /* 245 */ "cmd ::= SHOW db_name_cond_opt ALIVE", + /* 246 */ "cmd ::= SHOW CLUSTER ALIVE", + /* 247 */ "db_name_cond_opt ::=", + /* 248 */ "db_name_cond_opt ::= db_name NK_DOT", + /* 249 */ "like_pattern_opt ::=", + /* 250 */ "like_pattern_opt ::= LIKE NK_STRING", + /* 251 */ "table_name_cond ::= table_name", + /* 252 */ "from_db_opt ::=", + /* 253 */ "from_db_opt ::= FROM db_name", + /* 254 */ "tag_list_opt ::=", + /* 255 */ "tag_list_opt ::= tag_item", + /* 256 */ "tag_list_opt ::= tag_list_opt NK_COMMA tag_item", + /* 257 */ "tag_item ::= TBNAME", + /* 258 */ "tag_item ::= QTAGS", + /* 259 */ "tag_item ::= column_name", + /* 260 */ "tag_item ::= column_name column_alias", + /* 261 */ "tag_item ::= column_name AS column_alias", + /* 262 */ "cmd ::= CREATE SMA INDEX not_exists_opt full_table_name ON full_table_name index_options", + /* 263 */ "cmd ::= CREATE INDEX not_exists_opt full_table_name ON full_table_name NK_LP col_name_list NK_RP", + /* 264 */ "cmd ::= DROP INDEX exists_opt full_table_name", + /* 265 */ "index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt", + /* 266 */ "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", + /* 267 */ "func_list ::= func", + /* 268 */ "func_list ::= func_list NK_COMMA func", + /* 269 */ "func ::= sma_func_name NK_LP expression_list NK_RP", + /* 270 */ "sma_func_name ::= function_name", + /* 271 */ "sma_func_name ::= COUNT", + /* 272 */ "sma_func_name ::= FIRST", + /* 273 */ "sma_func_name ::= LAST", + /* 274 */ "sma_func_name ::= LAST_ROW", + /* 275 */ "sma_stream_opt ::=", + /* 276 */ "sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal", + /* 277 */ "sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal", + /* 278 */ "sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal", + /* 279 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery", + /* 280 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS DATABASE db_name", + /* 281 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS DATABASE db_name", + /* 282 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name AS STABLE full_table_name", + /* 283 */ "cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS STABLE full_table_name", + /* 284 */ "cmd ::= DROP TOPIC exists_opt topic_name", + /* 285 */ "cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name", + /* 286 */ "cmd ::= DESC full_table_name", + /* 287 */ "cmd ::= DESCRIBE full_table_name", + /* 288 */ "cmd ::= RESET QUERY CACHE", + /* 289 */ "cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery", + /* 290 */ "analyze_opt ::=", + /* 291 */ "analyze_opt ::= ANALYZE", + /* 292 */ "explain_options ::=", + /* 293 */ "explain_options ::= explain_options VERBOSE NK_BOOL", + /* 294 */ "explain_options ::= explain_options RATIO NK_FLOAT", + /* 295 */ "cmd ::= CREATE agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt", + /* 296 */ "cmd ::= DROP FUNCTION exists_opt function_name", + /* 297 */ "agg_func_opt ::=", + /* 298 */ "agg_func_opt ::= AGGREGATE", + /* 299 */ "bufsize_opt ::=", + /* 300 */ "bufsize_opt ::= BUFSIZE NK_INTEGER", + /* 301 */ "cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name tags_def_opt subtable_opt AS query_or_subquery", + /* 302 */ "cmd ::= DROP STREAM exists_opt stream_name", + /* 303 */ "stream_options ::=", + /* 304 */ "stream_options ::= stream_options TRIGGER AT_ONCE", + /* 305 */ "stream_options ::= stream_options TRIGGER WINDOW_CLOSE", + /* 306 */ "stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal", + /* 307 */ "stream_options ::= stream_options WATERMARK duration_literal", + /* 308 */ "stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER", + /* 309 */ "stream_options ::= stream_options FILL_HISTORY NK_INTEGER", + /* 310 */ "subtable_opt ::=", + /* 311 */ "subtable_opt ::= SUBTABLE NK_LP expression NK_RP", + /* 312 */ "cmd ::= KILL CONNECTION NK_INTEGER", + /* 313 */ "cmd ::= KILL QUERY NK_STRING", + /* 314 */ "cmd ::= KILL TRANSACTION NK_INTEGER", + /* 315 */ "cmd ::= BALANCE VGROUP", + /* 316 */ "cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER", + /* 317 */ "cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list", + /* 318 */ "cmd ::= SPLIT VGROUP NK_INTEGER", + /* 319 */ "dnode_list ::= DNODE NK_INTEGER", + /* 320 */ "dnode_list ::= dnode_list DNODE NK_INTEGER", + /* 321 */ "cmd ::= DELETE FROM full_table_name where_clause_opt", + /* 322 */ "cmd ::= query_or_subquery", + /* 323 */ "cmd ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery", + /* 324 */ "cmd ::= INSERT INTO full_table_name query_or_subquery", + /* 325 */ "literal ::= NK_INTEGER", + /* 326 */ "literal ::= NK_FLOAT", + /* 327 */ "literal ::= NK_STRING", + /* 328 */ "literal ::= NK_BOOL", + /* 329 */ "literal ::= TIMESTAMP NK_STRING", + /* 330 */ "literal ::= duration_literal", + /* 331 */ "literal ::= NULL", + /* 332 */ "literal ::= NK_QUESTION", + /* 333 */ "duration_literal ::= NK_VARIABLE", + /* 334 */ "signed ::= NK_INTEGER", + /* 335 */ "signed ::= NK_PLUS NK_INTEGER", + /* 336 */ "signed ::= NK_MINUS NK_INTEGER", + /* 337 */ "signed ::= NK_FLOAT", + /* 338 */ "signed ::= NK_PLUS NK_FLOAT", + /* 339 */ "signed ::= NK_MINUS NK_FLOAT", + /* 340 */ "signed_literal ::= signed", + /* 341 */ "signed_literal ::= NK_STRING", + /* 342 */ "signed_literal ::= NK_BOOL", + /* 343 */ "signed_literal ::= TIMESTAMP NK_STRING", + /* 344 */ "signed_literal ::= duration_literal", + /* 345 */ "signed_literal ::= NULL", + /* 346 */ "signed_literal ::= literal_func", + /* 347 */ "signed_literal ::= NK_QUESTION", + /* 348 */ "literal_list ::= signed_literal", + /* 349 */ "literal_list ::= literal_list NK_COMMA signed_literal", + /* 350 */ "db_name ::= NK_ID", + /* 351 */ "table_name ::= NK_ID", + /* 352 */ "column_name ::= NK_ID", + /* 353 */ "function_name ::= NK_ID", + /* 354 */ "table_alias ::= NK_ID", + /* 355 */ "column_alias ::= NK_ID", + /* 356 */ "user_name ::= NK_ID", + /* 357 */ "topic_name ::= NK_ID", + /* 358 */ "stream_name ::= NK_ID", + /* 359 */ "cgroup_name ::= NK_ID", + /* 360 */ "expr_or_subquery ::= expression", + /* 361 */ "expression ::= literal", + /* 362 */ "expression ::= pseudo_column", + /* 363 */ "expression ::= column_reference", + /* 364 */ "expression ::= function_expression", + /* 365 */ "expression ::= case_when_expression", + /* 366 */ "expression ::= NK_LP expression NK_RP", + /* 367 */ "expression ::= NK_PLUS expr_or_subquery", + /* 368 */ "expression ::= NK_MINUS expr_or_subquery", + /* 369 */ "expression ::= expr_or_subquery NK_PLUS expr_or_subquery", + /* 370 */ "expression ::= expr_or_subquery NK_MINUS expr_or_subquery", + /* 371 */ "expression ::= expr_or_subquery NK_STAR expr_or_subquery", + /* 372 */ "expression ::= expr_or_subquery NK_SLASH expr_or_subquery", + /* 373 */ "expression ::= expr_or_subquery NK_REM expr_or_subquery", + /* 374 */ "expression ::= column_reference NK_ARROW NK_STRING", + /* 375 */ "expression ::= expr_or_subquery NK_BITAND expr_or_subquery", + /* 376 */ "expression ::= expr_or_subquery NK_BITOR expr_or_subquery", + /* 377 */ "expression_list ::= expr_or_subquery", + /* 378 */ "expression_list ::= expression_list NK_COMMA expr_or_subquery", + /* 379 */ "column_reference ::= column_name", + /* 380 */ "column_reference ::= table_name NK_DOT column_name", + /* 381 */ "pseudo_column ::= ROWTS", + /* 382 */ "pseudo_column ::= TBNAME", + /* 383 */ "pseudo_column ::= table_name NK_DOT TBNAME", + /* 384 */ "pseudo_column ::= QSTART", + /* 385 */ "pseudo_column ::= QEND", + /* 386 */ "pseudo_column ::= QDURATION", + /* 387 */ "pseudo_column ::= WSTART", + /* 388 */ "pseudo_column ::= WEND", + /* 389 */ "pseudo_column ::= WDURATION", + /* 390 */ "pseudo_column ::= IROWTS", + /* 391 */ "pseudo_column ::= ISFILLED", + /* 392 */ "pseudo_column ::= QTAGS", + /* 393 */ "function_expression ::= function_name NK_LP expression_list NK_RP", + /* 394 */ "function_expression ::= star_func NK_LP star_func_para_list NK_RP", + /* 395 */ "function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP", + /* 396 */ "function_expression ::= literal_func", + /* 397 */ "literal_func ::= noarg_func NK_LP NK_RP", + /* 398 */ "literal_func ::= NOW", + /* 399 */ "noarg_func ::= NOW", + /* 400 */ "noarg_func ::= TODAY", + /* 401 */ "noarg_func ::= TIMEZONE", + /* 402 */ "noarg_func ::= DATABASE", + /* 403 */ "noarg_func ::= CLIENT_VERSION", + /* 404 */ "noarg_func ::= SERVER_VERSION", + /* 405 */ "noarg_func ::= SERVER_STATUS", + /* 406 */ "noarg_func ::= CURRENT_USER", + /* 407 */ "noarg_func ::= USER", + /* 408 */ "star_func ::= COUNT", + /* 409 */ "star_func ::= FIRST", + /* 410 */ "star_func ::= LAST", + /* 411 */ "star_func ::= LAST_ROW", + /* 412 */ "star_func_para_list ::= NK_STAR", + /* 413 */ "star_func_para_list ::= other_para_list", + /* 414 */ "other_para_list ::= star_func_para", + /* 415 */ "other_para_list ::= other_para_list NK_COMMA star_func_para", + /* 416 */ "star_func_para ::= expr_or_subquery", + /* 417 */ "star_func_para ::= table_name NK_DOT NK_STAR", + /* 418 */ "case_when_expression ::= CASE when_then_list case_when_else_opt END", + /* 419 */ "case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END", + /* 420 */ "when_then_list ::= when_then_expr", + /* 421 */ "when_then_list ::= when_then_list when_then_expr", + /* 422 */ "when_then_expr ::= WHEN common_expression THEN common_expression", + /* 423 */ "case_when_else_opt ::=", + /* 424 */ "case_when_else_opt ::= ELSE common_expression", + /* 425 */ "predicate ::= expr_or_subquery compare_op expr_or_subquery", + /* 426 */ "predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery", + /* 427 */ "predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery", + /* 428 */ "predicate ::= expr_or_subquery IS NULL", + /* 429 */ "predicate ::= expr_or_subquery IS NOT NULL", + /* 430 */ "predicate ::= expr_or_subquery in_op in_predicate_value", + /* 431 */ "compare_op ::= NK_LT", + /* 432 */ "compare_op ::= NK_GT", + /* 433 */ "compare_op ::= NK_LE", + /* 434 */ "compare_op ::= NK_GE", + /* 435 */ "compare_op ::= NK_NE", + /* 436 */ "compare_op ::= NK_EQ", + /* 437 */ "compare_op ::= LIKE", + /* 438 */ "compare_op ::= NOT LIKE", + /* 439 */ "compare_op ::= MATCH", + /* 440 */ "compare_op ::= NMATCH", + /* 441 */ "compare_op ::= CONTAINS", + /* 442 */ "in_op ::= IN", + /* 443 */ "in_op ::= NOT IN", + /* 444 */ "in_predicate_value ::= NK_LP literal_list NK_RP", + /* 445 */ "boolean_value_expression ::= boolean_primary", + /* 446 */ "boolean_value_expression ::= NOT boolean_primary", + /* 447 */ "boolean_value_expression ::= boolean_value_expression OR boolean_value_expression", + /* 448 */ "boolean_value_expression ::= boolean_value_expression AND boolean_value_expression", + /* 449 */ "boolean_primary ::= predicate", + /* 450 */ "boolean_primary ::= NK_LP boolean_value_expression NK_RP", + /* 451 */ "common_expression ::= expr_or_subquery", + /* 452 */ "common_expression ::= boolean_value_expression", + /* 453 */ "from_clause_opt ::=", + /* 454 */ "from_clause_opt ::= FROM table_reference_list", + /* 455 */ "table_reference_list ::= table_reference", + /* 456 */ "table_reference_list ::= table_reference_list NK_COMMA table_reference", + /* 457 */ "table_reference ::= table_primary", + /* 458 */ "table_reference ::= joined_table", + /* 459 */ "table_primary ::= table_name alias_opt", + /* 460 */ "table_primary ::= db_name NK_DOT table_name alias_opt", + /* 461 */ "table_primary ::= subquery alias_opt", + /* 462 */ "table_primary ::= parenthesized_joined_table", + /* 463 */ "alias_opt ::=", + /* 464 */ "alias_opt ::= table_alias", + /* 465 */ "alias_opt ::= AS table_alias", + /* 466 */ "parenthesized_joined_table ::= NK_LP joined_table NK_RP", + /* 467 */ "parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP", + /* 468 */ "joined_table ::= table_reference join_type JOIN table_reference ON search_condition", + /* 469 */ "join_type ::=", + /* 470 */ "join_type ::= INNER", + /* 471 */ "query_specification ::= SELECT set_quantifier_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", + /* 472 */ "set_quantifier_opt ::=", + /* 473 */ "set_quantifier_opt ::= DISTINCT", + /* 474 */ "set_quantifier_opt ::= ALL", + /* 475 */ "select_list ::= select_item", + /* 476 */ "select_list ::= select_list NK_COMMA select_item", + /* 477 */ "select_item ::= NK_STAR", + /* 478 */ "select_item ::= common_expression", + /* 479 */ "select_item ::= common_expression column_alias", + /* 480 */ "select_item ::= common_expression AS column_alias", + /* 481 */ "select_item ::= table_name NK_DOT NK_STAR", + /* 482 */ "where_clause_opt ::=", + /* 483 */ "where_clause_opt ::= WHERE search_condition", + /* 484 */ "partition_by_clause_opt ::=", + /* 485 */ "partition_by_clause_opt ::= PARTITION BY partition_list", + /* 486 */ "partition_list ::= partition_item", + /* 487 */ "partition_list ::= partition_list NK_COMMA partition_item", + /* 488 */ "partition_item ::= expr_or_subquery", + /* 489 */ "partition_item ::= expr_or_subquery column_alias", + /* 490 */ "partition_item ::= expr_or_subquery AS column_alias", + /* 491 */ "twindow_clause_opt ::=", + /* 492 */ "twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP", + /* 493 */ "twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP", + /* 494 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt", + /* 495 */ "twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt", + /* 496 */ "twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition", + /* 497 */ "sliding_opt ::=", + /* 498 */ "sliding_opt ::= SLIDING NK_LP duration_literal NK_RP", + /* 499 */ "fill_opt ::=", + /* 500 */ "fill_opt ::= FILL NK_LP fill_mode NK_RP", + /* 501 */ "fill_opt ::= FILL NK_LP VALUE NK_COMMA literal_list NK_RP", + /* 502 */ "fill_mode ::= NONE", + /* 503 */ "fill_mode ::= PREV", + /* 504 */ "fill_mode ::= NULL", + /* 505 */ "fill_mode ::= LINEAR", + /* 506 */ "fill_mode ::= NEXT", + /* 507 */ "group_by_clause_opt ::=", + /* 508 */ "group_by_clause_opt ::= GROUP BY group_by_list", + /* 509 */ "group_by_list ::= expr_or_subquery", + /* 510 */ "group_by_list ::= group_by_list NK_COMMA expr_or_subquery", + /* 511 */ "having_clause_opt ::=", + /* 512 */ "having_clause_opt ::= HAVING search_condition", + /* 513 */ "range_opt ::=", + /* 514 */ "range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP", + /* 515 */ "every_opt ::=", + /* 516 */ "every_opt ::= EVERY NK_LP duration_literal NK_RP", + /* 517 */ "query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt", + /* 518 */ "query_simple ::= query_specification", + /* 519 */ "query_simple ::= union_query_expression", + /* 520 */ "union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery", + /* 521 */ "union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery", + /* 522 */ "query_simple_or_subquery ::= query_simple", + /* 523 */ "query_simple_or_subquery ::= subquery", + /* 524 */ "query_or_subquery ::= query_expression", + /* 525 */ "query_or_subquery ::= subquery", + /* 526 */ "order_by_clause_opt ::=", + /* 527 */ "order_by_clause_opt ::= ORDER BY sort_specification_list", + /* 528 */ "slimit_clause_opt ::=", + /* 529 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER", + /* 530 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER", + /* 531 */ "slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER", + /* 532 */ "limit_clause_opt ::=", + /* 533 */ "limit_clause_opt ::= LIMIT NK_INTEGER", + /* 534 */ "limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER", + /* 535 */ "limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER", + /* 536 */ "subquery ::= NK_LP query_expression NK_RP", + /* 537 */ "subquery ::= NK_LP subquery NK_RP", + /* 538 */ "search_condition ::= common_expression", + /* 539 */ "sort_specification_list ::= sort_specification", + /* 540 */ "sort_specification_list ::= sort_specification_list NK_COMMA sort_specification", + /* 541 */ "sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt", + /* 542 */ "ordering_specification_opt ::=", + /* 543 */ "ordering_specification_opt ::= ASC", + /* 544 */ "ordering_specification_opt ::= DESC", + /* 545 */ "null_ordering_opt ::=", + /* 546 */ "null_ordering_opt ::= NULLS FIRST", + /* 547 */ "null_ordering_opt ::= NULLS LAST", }; #endif /* NDEBUG */ @@ -2593,194 +2597,194 @@ static void yy_destructor( */ /********* Begin destructor definitions ***************************************/ /* Default NON-TERMINAL Destructor */ - case 325: /* cmd */ - case 328: /* literal */ - case 341: /* db_options */ - case 343: /* alter_db_options */ - case 349: /* retention */ - case 350: /* full_table_name */ - case 353: /* table_options */ - case 357: /* alter_table_clause */ - case 358: /* alter_table_options */ - case 361: /* signed_literal */ - case 362: /* create_subtable_clause */ - case 365: /* drop_table_clause */ - case 368: /* column_def */ - case 372: /* duration_literal */ - case 373: /* rollup_func_name */ - case 375: /* col_name */ - case 376: /* db_name_cond_opt */ - case 377: /* like_pattern_opt */ - case 378: /* table_name_cond */ - case 379: /* from_db_opt */ - case 381: /* tag_item */ - case 383: /* index_options */ - case 385: /* sliding_opt */ - case 386: /* sma_stream_opt */ - case 387: /* func */ - case 389: /* query_or_subquery */ - case 392: /* explain_options */ - case 396: /* stream_options */ - case 397: /* subtable_opt */ - case 398: /* expression */ - case 400: /* where_clause_opt */ - case 401: /* signed */ - case 402: /* literal_func */ - case 405: /* expr_or_subquery */ - case 406: /* pseudo_column */ - case 407: /* column_reference */ - case 408: /* function_expression */ - case 409: /* case_when_expression */ - case 414: /* star_func_para */ - case 416: /* case_when_else_opt */ - case 417: /* common_expression */ - case 418: /* when_then_expr */ - case 419: /* predicate */ - case 422: /* in_predicate_value */ - case 423: /* boolean_value_expression */ - case 424: /* boolean_primary */ - case 425: /* from_clause_opt */ - case 426: /* table_reference_list */ - case 427: /* table_reference */ - case 428: /* table_primary */ - case 429: /* joined_table */ - case 431: /* subquery */ - case 432: /* parenthesized_joined_table */ - case 434: /* search_condition */ - case 435: /* query_specification */ - case 439: /* range_opt */ - case 440: /* every_opt */ - case 441: /* fill_opt */ - case 442: /* twindow_clause_opt */ - case 444: /* having_clause_opt */ - case 445: /* select_item */ - case 447: /* partition_item */ - case 450: /* query_expression */ - case 451: /* query_simple */ - case 453: /* slimit_clause_opt */ - case 454: /* limit_clause_opt */ - case 455: /* union_query_expression */ - case 456: /* query_simple_or_subquery */ - case 458: /* sort_specification */ + case 326: /* cmd */ + case 329: /* literal */ + case 342: /* db_options */ + case 344: /* alter_db_options */ + case 350: /* retention */ + case 351: /* full_table_name */ + case 354: /* table_options */ + case 358: /* alter_table_clause */ + case 359: /* alter_table_options */ + case 362: /* signed_literal */ + case 363: /* create_subtable_clause */ + case 366: /* drop_table_clause */ + case 369: /* column_def */ + case 373: /* duration_literal */ + case 374: /* rollup_func_name */ + case 376: /* col_name */ + case 377: /* db_name_cond_opt */ + case 378: /* like_pattern_opt */ + case 379: /* table_name_cond */ + case 380: /* from_db_opt */ + case 382: /* tag_item */ + case 384: /* index_options */ + case 386: /* sliding_opt */ + case 387: /* sma_stream_opt */ + case 388: /* func */ + case 390: /* query_or_subquery */ + case 393: /* explain_options */ + case 397: /* stream_options */ + case 398: /* subtable_opt */ + case 399: /* expression */ + case 401: /* where_clause_opt */ + case 402: /* signed */ + case 403: /* literal_func */ + case 406: /* expr_or_subquery */ + case 407: /* pseudo_column */ + case 408: /* column_reference */ + case 409: /* function_expression */ + case 410: /* case_when_expression */ + case 415: /* star_func_para */ + case 417: /* case_when_else_opt */ + case 418: /* common_expression */ + case 419: /* when_then_expr */ + case 420: /* predicate */ + case 423: /* in_predicate_value */ + case 424: /* boolean_value_expression */ + case 425: /* boolean_primary */ + case 426: /* from_clause_opt */ + case 427: /* table_reference_list */ + case 428: /* table_reference */ + case 429: /* table_primary */ + case 430: /* joined_table */ + case 432: /* subquery */ + case 433: /* parenthesized_joined_table */ + case 435: /* search_condition */ + case 436: /* query_specification */ + case 440: /* range_opt */ + case 441: /* every_opt */ + case 442: /* fill_opt */ + case 443: /* twindow_clause_opt */ + case 445: /* having_clause_opt */ + case 446: /* select_item */ + case 448: /* partition_item */ + case 451: /* query_expression */ + case 452: /* query_simple */ + case 454: /* slimit_clause_opt */ + case 455: /* limit_clause_opt */ + case 456: /* union_query_expression */ + case 457: /* query_simple_or_subquery */ + case 459: /* sort_specification */ { - nodesDestroyNode((yypminor->yy600)); + nodesDestroyNode((yypminor->yy476)); } break; - case 326: /* account_options */ - case 327: /* alter_account_options */ - case 329: /* alter_account_option */ - case 344: /* speed_opt */ - case 394: /* bufsize_opt */ + case 327: /* account_options */ + case 328: /* alter_account_options */ + case 330: /* alter_account_option */ + case 345: /* speed_opt */ + case 395: /* bufsize_opt */ { } break; - case 330: /* user_name */ - case 333: /* priv_level */ - case 336: /* db_name */ - case 337: /* topic_name */ - case 338: /* dnode_endpoint */ - case 359: /* column_name */ - case 367: /* table_name */ - case 374: /* function_name */ - case 382: /* column_alias */ - case 388: /* sma_func_name */ - case 390: /* cgroup_name */ - case 395: /* stream_name */ - case 404: /* table_alias */ - case 410: /* star_func */ - case 412: /* noarg_func */ - case 430: /* alias_opt */ + case 331: /* user_name */ + case 334: /* priv_level */ + case 337: /* db_name */ + case 338: /* topic_name */ + case 339: /* dnode_endpoint */ + case 360: /* column_name */ + case 368: /* table_name */ + case 375: /* function_name */ + case 383: /* column_alias */ + case 389: /* sma_func_name */ + case 391: /* cgroup_name */ + case 396: /* stream_name */ + case 405: /* table_alias */ + case 411: /* star_func */ + case 413: /* noarg_func */ + case 431: /* alias_opt */ { } break; - case 331: /* sysinfo_opt */ + case 332: /* sysinfo_opt */ { } break; - case 332: /* privileges */ - case 334: /* priv_type_list */ - case 335: /* priv_type */ + case 333: /* privileges */ + case 335: /* priv_type_list */ + case 336: /* priv_type */ { } break; - case 339: /* force_opt */ - case 340: /* not_exists_opt */ - case 342: /* exists_opt */ - case 391: /* analyze_opt */ - case 393: /* agg_func_opt */ - case 436: /* set_quantifier_opt */ + case 340: /* force_opt */ + case 341: /* not_exists_opt */ + case 343: /* exists_opt */ + case 392: /* analyze_opt */ + case 394: /* agg_func_opt */ + case 437: /* set_quantifier_opt */ { } break; - case 345: /* integer_list */ - case 346: /* variable_list */ - case 347: /* retention_list */ - case 351: /* column_def_list */ - case 352: /* tags_def_opt */ - case 354: /* multi_create_clause */ - case 355: /* tags_def */ - case 356: /* multi_drop_clause */ - case 363: /* specific_cols_opt */ - case 364: /* expression_list */ - case 366: /* col_name_list */ - case 369: /* duration_list */ - case 370: /* rollup_func_list */ - case 380: /* tag_list_opt */ - case 384: /* func_list */ - case 399: /* dnode_list */ - case 403: /* literal_list */ - case 411: /* star_func_para_list */ - case 413: /* other_para_list */ - case 415: /* when_then_list */ - case 437: /* select_list */ - case 438: /* partition_by_clause_opt */ - case 443: /* group_by_clause_opt */ - case 446: /* partition_list */ - case 449: /* group_by_list */ - case 452: /* order_by_clause_opt */ - case 457: /* sort_specification_list */ + case 346: /* integer_list */ + case 347: /* variable_list */ + case 348: /* retention_list */ + case 352: /* column_def_list */ + case 353: /* tags_def_opt */ + case 355: /* multi_create_clause */ + case 356: /* tags_def */ + case 357: /* multi_drop_clause */ + case 364: /* specific_cols_opt */ + case 365: /* expression_list */ + case 367: /* col_name_list */ + case 370: /* duration_list */ + case 371: /* rollup_func_list */ + case 381: /* tag_list_opt */ + case 385: /* func_list */ + case 400: /* dnode_list */ + case 404: /* literal_list */ + case 412: /* star_func_para_list */ + case 414: /* other_para_list */ + case 416: /* when_then_list */ + case 438: /* select_list */ + case 439: /* partition_by_clause_opt */ + case 444: /* group_by_clause_opt */ + case 447: /* partition_list */ + case 450: /* group_by_list */ + case 453: /* order_by_clause_opt */ + case 458: /* sort_specification_list */ { - nodesDestroyList((yypminor->yy601)); + nodesDestroyList((yypminor->yy376)); } break; - case 348: /* alter_db_option */ - case 371: /* alter_table_option */ + case 349: /* alter_db_option */ + case 372: /* alter_table_option */ { } break; - case 360: /* type_name */ + case 361: /* type_name */ { } break; - case 420: /* compare_op */ - case 421: /* in_op */ + case 421: /* compare_op */ + case 422: /* in_op */ { } break; - case 433: /* join_type */ + case 434: /* join_type */ { } break; - case 448: /* fill_mode */ + case 449: /* fill_mode */ { } break; - case 459: /* ordering_specification_opt */ + case 460: /* ordering_specification_opt */ { } break; - case 460: /* null_ordering_opt */ + case 461: /* null_ordering_opt */ { } @@ -2908,15 +2912,18 @@ static YYACTIONTYPE yy_find_shift_action( do{ i = yy_shift_ofst[stateno]; assert( i>=0 ); - /* assert( i+YYNTOKEN<=(int)YY_NLOOKAHEAD ); */ + assert( i<=YY_ACTTAB_COUNT ); + assert( i+YYNTOKEN<=(int)YY_NLOOKAHEAD ); assert( iLookAhead!=YYNOCODE ); assert( iLookAhead < YYNTOKEN ); i += iLookAhead; - if( i>=YY_NLOOKAHEAD || yy_lookahead[i]!=iLookAhead ){ + assert( i<(int)YY_NLOOKAHEAD ); + if( yy_lookahead[i]!=iLookAhead ){ #ifdef YYFALLBACK YYCODETYPE iFallback; /* Fallback token */ - if( iLookAhead %s\n", @@ -2931,16 +2938,8 @@ static YYACTIONTYPE yy_find_shift_action( #ifdef YYWILDCARD { int j = i - iLookAhead + YYWILDCARD; - if( -#if YY_SHIFT_MIN+YYWILDCARD<0 - j>=0 && -#endif -#if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT - j0 - ){ + assert( j<(int)(sizeof(yy_lookahead)/sizeof(yy_lookahead[0])) ); + if( yy_lookahead[j]==YYWILDCARD && iLookAhead>0 ){ #ifndef NDEBUG if( yyTraceFILE ){ fprintf(yyTraceFILE, "%sWILDCARD %s => %s\n", @@ -2954,6 +2953,7 @@ static YYACTIONTYPE yy_find_shift_action( #endif /* YYWILDCARD */ return yy_default[stateno]; }else{ + assert( i>=0 && iyytos; #ifndef NDEBUG if( yyTraceFILE && yyruleno<(int)(sizeof(yyRuleName)/sizeof(yyRuleName[0])) ){ - yysize = yyRuleInfo[yyruleno].nrhs; + yysize = yyRuleInfoNRhs[yyruleno]; if( yysize ){ - fprintf(yyTraceFILE, "%sReduce %d [%s], go to state %d.\n", + fprintf(yyTraceFILE, "%sReduce %d [%s]%s, pop back to state %d.\n", yyTracePrompt, - yyruleno, yyRuleName[yyruleno], yymsp[yysize].stateno); + yyruleno, yyRuleName[yyruleno], + yyrulenoyytos - yypParser->yystack)>yypParser->yyhwm ){ yypParser->yyhwm++; @@ -3713,11 +4267,11 @@ static YYACTIONTYPE yy_reduce( YYMINORTYPE yylhsminor; case 0: /* cmd ::= CREATE ACCOUNT NK_ID PASS NK_STRING account_options */ { pCxt->errCode = generateSyntaxErrMsg(&pCxt->msgBuf, TSDB_CODE_PAR_EXPRIE_STATEMENT); } - yy_destructor(yypParser,326,&yymsp[0].minor); + yy_destructor(yypParser,327,&yymsp[0].minor); break; case 1: /* cmd ::= ALTER ACCOUNT NK_ID alter_account_options */ { pCxt->errCode = generateSyntaxErrMsg(&pCxt->msgBuf, TSDB_CODE_PAR_EXPRIE_STATEMENT); } - yy_destructor(yypParser,327,&yymsp[0].minor); + yy_destructor(yypParser,328,&yymsp[0].minor); break; case 2: /* account_options ::= */ { } @@ -3731,20 +4285,20 @@ static YYACTIONTYPE yy_reduce( case 9: /* account_options ::= account_options USERS literal */ yytestcase(yyruleno==9); case 10: /* account_options ::= account_options CONNS literal */ yytestcase(yyruleno==10); case 11: /* account_options ::= account_options STATE literal */ yytestcase(yyruleno==11); -{ yy_destructor(yypParser,326,&yymsp[-2].minor); +{ yy_destructor(yypParser,327,&yymsp[-2].minor); { } - yy_destructor(yypParser,328,&yymsp[0].minor); + yy_destructor(yypParser,329,&yymsp[0].minor); } break; case 12: /* alter_account_options ::= alter_account_option */ -{ yy_destructor(yypParser,329,&yymsp[0].minor); +{ yy_destructor(yypParser,330,&yymsp[0].minor); { } } break; case 13: /* alter_account_options ::= alter_account_options alter_account_option */ -{ yy_destructor(yypParser,327,&yymsp[-1].minor); +{ yy_destructor(yypParser,328,&yymsp[-1].minor); { } - yy_destructor(yypParser,329,&yymsp[0].minor); + yy_destructor(yypParser,330,&yymsp[0].minor); } break; case 14: /* alter_account_option ::= PASS literal */ @@ -3758,81 +4312,81 @@ static YYACTIONTYPE yy_reduce( case 22: /* alter_account_option ::= CONNS literal */ yytestcase(yyruleno==22); case 23: /* alter_account_option ::= STATE literal */ yytestcase(yyruleno==23); { } - yy_destructor(yypParser,328,&yymsp[0].minor); + yy_destructor(yypParser,329,&yymsp[0].minor); break; case 24: /* cmd ::= CREATE USER user_name PASS NK_STRING sysinfo_opt */ -{ pCxt->pRootNode = createCreateUserStmt(pCxt, &yymsp[-3].minor.yy77, &yymsp[-1].minor.yy0, yymsp[0].minor.yy287); } +{ pCxt->pRootNode = createCreateUserStmt(pCxt, &yymsp[-3].minor.yy701, &yymsp[-1].minor.yy0, yymsp[0].minor.yy47); } break; case 25: /* cmd ::= ALTER USER user_name PASS NK_STRING */ -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy77, TSDB_ALTER_USER_PASSWD, &yymsp[0].minor.yy0); } +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy701, TSDB_ALTER_USER_PASSWD, &yymsp[0].minor.yy0); } break; case 26: /* cmd ::= ALTER USER user_name ENABLE NK_INTEGER */ -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy77, TSDB_ALTER_USER_ENABLE, &yymsp[0].minor.yy0); } +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy701, TSDB_ALTER_USER_ENABLE, &yymsp[0].minor.yy0); } break; case 27: /* cmd ::= ALTER USER user_name SYSINFO NK_INTEGER */ -{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy77, TSDB_ALTER_USER_SYSINFO, &yymsp[0].minor.yy0); } +{ pCxt->pRootNode = createAlterUserStmt(pCxt, &yymsp[-2].minor.yy701, TSDB_ALTER_USER_SYSINFO, &yymsp[0].minor.yy0); } break; case 28: /* cmd ::= DROP USER user_name */ -{ pCxt->pRootNode = createDropUserStmt(pCxt, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createDropUserStmt(pCxt, &yymsp[0].minor.yy701); } break; case 29: /* sysinfo_opt ::= */ -{ yymsp[1].minor.yy287 = 1; } +{ yymsp[1].minor.yy47 = 1; } break; case 30: /* sysinfo_opt ::= SYSINFO NK_INTEGER */ -{ yymsp[-1].minor.yy287 = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); } +{ yymsp[-1].minor.yy47 = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); } break; case 31: /* cmd ::= GRANT privileges ON priv_level TO user_name */ -{ pCxt->pRootNode = createGrantStmt(pCxt, yymsp[-4].minor.yy717, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createGrantStmt(pCxt, yymsp[-4].minor.yy921, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy701); } break; case 32: /* cmd ::= REVOKE privileges ON priv_level FROM user_name */ -{ pCxt->pRootNode = createRevokeStmt(pCxt, yymsp[-4].minor.yy717, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createRevokeStmt(pCxt, yymsp[-4].minor.yy921, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy701); } break; case 33: /* privileges ::= ALL */ -{ yymsp[0].minor.yy717 = PRIVILEGE_TYPE_ALL; } +{ yymsp[0].minor.yy921 = PRIVILEGE_TYPE_ALL; } break; case 34: /* privileges ::= priv_type_list */ case 36: /* priv_type_list ::= priv_type */ yytestcase(yyruleno==36); -{ yylhsminor.yy717 = yymsp[0].minor.yy717; } - yymsp[0].minor.yy717 = yylhsminor.yy717; +{ yylhsminor.yy921 = yymsp[0].minor.yy921; } + yymsp[0].minor.yy921 = yylhsminor.yy921; break; case 35: /* privileges ::= SUBSCRIBE */ -{ yymsp[0].minor.yy717 = PRIVILEGE_TYPE_SUBSCRIBE; } +{ yymsp[0].minor.yy921 = PRIVILEGE_TYPE_SUBSCRIBE; } break; case 37: /* priv_type_list ::= priv_type_list NK_COMMA priv_type */ -{ yylhsminor.yy717 = yymsp[-2].minor.yy717 | yymsp[0].minor.yy717; } - yymsp[-2].minor.yy717 = yylhsminor.yy717; +{ yylhsminor.yy921 = yymsp[-2].minor.yy921 | yymsp[0].minor.yy921; } + yymsp[-2].minor.yy921 = yylhsminor.yy921; break; case 38: /* priv_type ::= READ */ -{ yymsp[0].minor.yy717 = PRIVILEGE_TYPE_READ; } +{ yymsp[0].minor.yy921 = PRIVILEGE_TYPE_READ; } break; case 39: /* priv_type ::= WRITE */ -{ yymsp[0].minor.yy717 = PRIVILEGE_TYPE_WRITE; } +{ yymsp[0].minor.yy921 = PRIVILEGE_TYPE_WRITE; } break; case 40: /* priv_level ::= NK_STAR NK_DOT NK_STAR */ -{ yylhsminor.yy77 = yymsp[-2].minor.yy0; } - yymsp[-2].minor.yy77 = yylhsminor.yy77; +{ yylhsminor.yy701 = yymsp[-2].minor.yy0; } + yymsp[-2].minor.yy701 = yylhsminor.yy701; break; case 41: /* priv_level ::= db_name NK_DOT NK_STAR */ -{ yylhsminor.yy77 = yymsp[-2].minor.yy77; } - yymsp[-2].minor.yy77 = yylhsminor.yy77; +{ yylhsminor.yy701 = yymsp[-2].minor.yy701; } + yymsp[-2].minor.yy701 = yylhsminor.yy701; break; case 42: /* priv_level ::= topic_name */ - case 268: /* sma_func_name ::= function_name */ yytestcase(yyruleno==268); - case 462: /* alias_opt ::= table_alias */ yytestcase(yyruleno==462); -{ yylhsminor.yy77 = yymsp[0].minor.yy77; } - yymsp[0].minor.yy77 = yylhsminor.yy77; + case 270: /* sma_func_name ::= function_name */ yytestcase(yyruleno==270); + case 464: /* alias_opt ::= table_alias */ yytestcase(yyruleno==464); +{ yylhsminor.yy701 = yymsp[0].minor.yy701; } + yymsp[0].minor.yy701 = yylhsminor.yy701; break; case 43: /* cmd ::= CREATE DNODE dnode_endpoint */ -{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[0].minor.yy77, NULL); } +{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[0].minor.yy701, NULL); } break; case 44: /* cmd ::= CREATE DNODE dnode_endpoint PORT NK_INTEGER */ -{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy0); } +{ pCxt->pRootNode = createCreateDnodeStmt(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy0); } break; case 45: /* cmd ::= DROP DNODE NK_INTEGER force_opt */ -{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy841); } +{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy845); } break; case 46: /* cmd ::= DROP DNODE dnode_endpoint force_opt */ -{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy77, yymsp[0].minor.yy841); } +{ pCxt->pRootNode = createDropDnodeStmt(pCxt, &yymsp[-1].minor.yy701, yymsp[0].minor.yy845); } break; case 47: /* cmd ::= ALTER DNODE NK_INTEGER NK_STRING */ { pCxt->pRootNode = createAlterDnodeStmt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0, NULL); } @@ -3849,49 +4403,49 @@ static YYACTIONTYPE yy_reduce( case 51: /* dnode_endpoint ::= NK_STRING */ case 52: /* dnode_endpoint ::= NK_ID */ yytestcase(yyruleno==52); case 53: /* dnode_endpoint ::= NK_IPTOKEN */ yytestcase(yyruleno==53); - case 269: /* sma_func_name ::= COUNT */ yytestcase(yyruleno==269); - case 270: /* sma_func_name ::= FIRST */ yytestcase(yyruleno==270); - case 271: /* sma_func_name ::= LAST */ yytestcase(yyruleno==271); - case 272: /* sma_func_name ::= LAST_ROW */ yytestcase(yyruleno==272); - case 348: /* db_name ::= NK_ID */ yytestcase(yyruleno==348); - case 349: /* table_name ::= NK_ID */ yytestcase(yyruleno==349); - case 350: /* column_name ::= NK_ID */ yytestcase(yyruleno==350); - case 351: /* function_name ::= NK_ID */ yytestcase(yyruleno==351); - case 352: /* table_alias ::= NK_ID */ yytestcase(yyruleno==352); - case 353: /* column_alias ::= NK_ID */ yytestcase(yyruleno==353); - case 354: /* user_name ::= NK_ID */ yytestcase(yyruleno==354); - case 355: /* topic_name ::= NK_ID */ yytestcase(yyruleno==355); - case 356: /* stream_name ::= NK_ID */ yytestcase(yyruleno==356); - case 357: /* cgroup_name ::= NK_ID */ yytestcase(yyruleno==357); - case 397: /* noarg_func ::= NOW */ yytestcase(yyruleno==397); - case 398: /* noarg_func ::= TODAY */ yytestcase(yyruleno==398); - case 399: /* noarg_func ::= TIMEZONE */ yytestcase(yyruleno==399); - case 400: /* noarg_func ::= DATABASE */ yytestcase(yyruleno==400); - case 401: /* noarg_func ::= CLIENT_VERSION */ yytestcase(yyruleno==401); - case 402: /* noarg_func ::= SERVER_VERSION */ yytestcase(yyruleno==402); - case 403: /* noarg_func ::= SERVER_STATUS */ yytestcase(yyruleno==403); - case 404: /* noarg_func ::= CURRENT_USER */ yytestcase(yyruleno==404); - case 405: /* noarg_func ::= USER */ yytestcase(yyruleno==405); - case 406: /* star_func ::= COUNT */ yytestcase(yyruleno==406); - case 407: /* star_func ::= FIRST */ yytestcase(yyruleno==407); - case 408: /* star_func ::= LAST */ yytestcase(yyruleno==408); - case 409: /* star_func ::= LAST_ROW */ yytestcase(yyruleno==409); -{ yylhsminor.yy77 = yymsp[0].minor.yy0; } - yymsp[0].minor.yy77 = yylhsminor.yy77; + case 271: /* sma_func_name ::= COUNT */ yytestcase(yyruleno==271); + case 272: /* sma_func_name ::= FIRST */ yytestcase(yyruleno==272); + case 273: /* sma_func_name ::= LAST */ yytestcase(yyruleno==273); + case 274: /* sma_func_name ::= LAST_ROW */ yytestcase(yyruleno==274); + case 350: /* db_name ::= NK_ID */ yytestcase(yyruleno==350); + case 351: /* table_name ::= NK_ID */ yytestcase(yyruleno==351); + case 352: /* column_name ::= NK_ID */ yytestcase(yyruleno==352); + case 353: /* function_name ::= NK_ID */ yytestcase(yyruleno==353); + case 354: /* table_alias ::= NK_ID */ yytestcase(yyruleno==354); + case 355: /* column_alias ::= NK_ID */ yytestcase(yyruleno==355); + case 356: /* user_name ::= NK_ID */ yytestcase(yyruleno==356); + case 357: /* topic_name ::= NK_ID */ yytestcase(yyruleno==357); + case 358: /* stream_name ::= NK_ID */ yytestcase(yyruleno==358); + case 359: /* cgroup_name ::= NK_ID */ yytestcase(yyruleno==359); + case 399: /* noarg_func ::= NOW */ yytestcase(yyruleno==399); + case 400: /* noarg_func ::= TODAY */ yytestcase(yyruleno==400); + case 401: /* noarg_func ::= TIMEZONE */ yytestcase(yyruleno==401); + case 402: /* noarg_func ::= DATABASE */ yytestcase(yyruleno==402); + case 403: /* noarg_func ::= CLIENT_VERSION */ yytestcase(yyruleno==403); + case 404: /* noarg_func ::= SERVER_VERSION */ yytestcase(yyruleno==404); + case 405: /* noarg_func ::= SERVER_STATUS */ yytestcase(yyruleno==405); + case 406: /* noarg_func ::= CURRENT_USER */ yytestcase(yyruleno==406); + case 407: /* noarg_func ::= USER */ yytestcase(yyruleno==407); + case 408: /* star_func ::= COUNT */ yytestcase(yyruleno==408); + case 409: /* star_func ::= FIRST */ yytestcase(yyruleno==409); + case 410: /* star_func ::= LAST */ yytestcase(yyruleno==410); + case 411: /* star_func ::= LAST_ROW */ yytestcase(yyruleno==411); +{ yylhsminor.yy701 = yymsp[0].minor.yy0; } + yymsp[0].minor.yy701 = yylhsminor.yy701; break; case 54: /* force_opt ::= */ case 73: /* not_exists_opt ::= */ yytestcase(yyruleno==73); case 75: /* exists_opt ::= */ yytestcase(yyruleno==75); - case 288: /* analyze_opt ::= */ yytestcase(yyruleno==288); - case 295: /* agg_func_opt ::= */ yytestcase(yyruleno==295); - case 470: /* set_quantifier_opt ::= */ yytestcase(yyruleno==470); -{ yymsp[1].minor.yy841 = false; } + case 290: /* analyze_opt ::= */ yytestcase(yyruleno==290); + case 297: /* agg_func_opt ::= */ yytestcase(yyruleno==297); + case 472: /* set_quantifier_opt ::= */ yytestcase(yyruleno==472); +{ yymsp[1].minor.yy845 = false; } break; case 55: /* force_opt ::= FORCE */ - case 289: /* analyze_opt ::= ANALYZE */ yytestcase(yyruleno==289); - case 296: /* agg_func_opt ::= AGGREGATE */ yytestcase(yyruleno==296); - case 471: /* set_quantifier_opt ::= DISTINCT */ yytestcase(yyruleno==471); -{ yymsp[0].minor.yy841 = true; } + case 291: /* analyze_opt ::= ANALYZE */ yytestcase(yyruleno==291); + case 298: /* agg_func_opt ::= AGGREGATE */ yytestcase(yyruleno==298); + case 473: /* set_quantifier_opt ::= DISTINCT */ yytestcase(yyruleno==473); +{ yymsp[0].minor.yy845 = true; } break; case 56: /* cmd ::= ALTER LOCAL NK_STRING */ { pCxt->pRootNode = createAlterLocalStmt(pCxt, &yymsp[0].minor.yy0, NULL); } @@ -3924,206 +4478,206 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createDropComponentNodeStmt(pCxt, QUERY_NODE_DROP_MNODE_STMT, &yymsp[0].minor.yy0); } break; case 66: /* cmd ::= CREATE DATABASE not_exists_opt db_name db_options */ -{ pCxt->pRootNode = createCreateDatabaseStmt(pCxt, yymsp[-2].minor.yy841, &yymsp[-1].minor.yy77, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createCreateDatabaseStmt(pCxt, yymsp[-2].minor.yy845, &yymsp[-1].minor.yy701, yymsp[0].minor.yy476); } break; case 67: /* cmd ::= DROP DATABASE exists_opt db_name */ -{ pCxt->pRootNode = createDropDatabaseStmt(pCxt, yymsp[-1].minor.yy841, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createDropDatabaseStmt(pCxt, yymsp[-1].minor.yy845, &yymsp[0].minor.yy701); } break; case 68: /* cmd ::= USE db_name */ -{ pCxt->pRootNode = createUseDatabaseStmt(pCxt, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createUseDatabaseStmt(pCxt, &yymsp[0].minor.yy701); } break; case 69: /* cmd ::= ALTER DATABASE db_name alter_db_options */ -{ pCxt->pRootNode = createAlterDatabaseStmt(pCxt, &yymsp[-1].minor.yy77, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createAlterDatabaseStmt(pCxt, &yymsp[-1].minor.yy701, yymsp[0].minor.yy476); } break; case 70: /* cmd ::= FLUSH DATABASE db_name */ -{ pCxt->pRootNode = createFlushDatabaseStmt(pCxt, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createFlushDatabaseStmt(pCxt, &yymsp[0].minor.yy701); } break; case 71: /* cmd ::= TRIM DATABASE db_name speed_opt */ -{ pCxt->pRootNode = createTrimDatabaseStmt(pCxt, &yymsp[-1].minor.yy77, yymsp[0].minor.yy248); } +{ pCxt->pRootNode = createTrimDatabaseStmt(pCxt, &yymsp[-1].minor.yy701, yymsp[0].minor.yy508); } break; case 72: /* not_exists_opt ::= IF NOT EXISTS */ -{ yymsp[-2].minor.yy841 = true; } +{ yymsp[-2].minor.yy845 = true; } break; case 74: /* exists_opt ::= IF EXISTS */ -{ yymsp[-1].minor.yy841 = true; } +{ yymsp[-1].minor.yy845 = true; } break; case 76: /* db_options ::= */ -{ yymsp[1].minor.yy600 = createDefaultDatabaseOptions(pCxt); } +{ yymsp[1].minor.yy476 = createDefaultDatabaseOptions(pCxt); } break; case 77: /* db_options ::= db_options BUFFER NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_BUFFER, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_BUFFER, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 78: /* db_options ::= db_options CACHEMODEL NK_STRING */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_CACHEMODEL, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_CACHEMODEL, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 79: /* db_options ::= db_options CACHESIZE NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_CACHESIZE, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_CACHESIZE, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 80: /* db_options ::= db_options COMP NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_COMP, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_COMP, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 81: /* db_options ::= db_options DURATION NK_INTEGER */ case 82: /* db_options ::= db_options DURATION NK_VARIABLE */ yytestcase(yyruleno==82); -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_DAYS, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_DAYS, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 83: /* db_options ::= db_options MAXROWS NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_MAXROWS, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_MAXROWS, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 84: /* db_options ::= db_options MINROWS NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_MINROWS, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_MINROWS, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 85: /* db_options ::= db_options KEEP integer_list */ case 86: /* db_options ::= db_options KEEP variable_list */ yytestcase(yyruleno==86); -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_KEEP, yymsp[0].minor.yy601); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_KEEP, yymsp[0].minor.yy376); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 87: /* db_options ::= db_options PAGES NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_PAGES, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_PAGES, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 88: /* db_options ::= db_options PAGESIZE NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_PAGESIZE, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_PAGESIZE, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 89: /* db_options ::= db_options TSDB_PAGESIZE NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_TSDB_PAGESIZE, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_TSDB_PAGESIZE, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 90: /* db_options ::= db_options PRECISION NK_STRING */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_PRECISION, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_PRECISION, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 91: /* db_options ::= db_options REPLICA NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_REPLICA, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_REPLICA, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 92: /* db_options ::= db_options VGROUPS NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_VGROUPS, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_VGROUPS, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 93: /* db_options ::= db_options SINGLE_STABLE NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_SINGLE_STABLE, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_SINGLE_STABLE, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 94: /* db_options ::= db_options RETENTIONS retention_list */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_RETENTIONS, yymsp[0].minor.yy601); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_RETENTIONS, yymsp[0].minor.yy376); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 95: /* db_options ::= db_options SCHEMALESS NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_SCHEMALESS, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_SCHEMALESS, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 96: /* db_options ::= db_options WAL_LEVEL NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_WAL, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_WAL, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 97: /* db_options ::= db_options WAL_FSYNC_PERIOD NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_FSYNC, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_FSYNC, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 98: /* db_options ::= db_options WAL_RETENTION_PERIOD NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_WAL_RETENTION_PERIOD, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_WAL_RETENTION_PERIOD, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 99: /* db_options ::= db_options WAL_RETENTION_PERIOD NK_MINUS NK_INTEGER */ { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-3].minor.yy600, DB_OPTION_WAL_RETENTION_PERIOD, &t); + yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-3].minor.yy476, DB_OPTION_WAL_RETENTION_PERIOD, &t); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; case 100: /* db_options ::= db_options WAL_RETENTION_SIZE NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_WAL_RETENTION_SIZE, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_WAL_RETENTION_SIZE, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 101: /* db_options ::= db_options WAL_RETENTION_SIZE NK_MINUS NK_INTEGER */ { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-3].minor.yy600, DB_OPTION_WAL_RETENTION_SIZE, &t); + yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-3].minor.yy476, DB_OPTION_WAL_RETENTION_SIZE, &t); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; case 102: /* db_options ::= db_options WAL_ROLL_PERIOD NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_WAL_ROLL_PERIOD, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_WAL_ROLL_PERIOD, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 103: /* db_options ::= db_options WAL_SEGMENT_SIZE NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_WAL_SEGMENT_SIZE, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_WAL_SEGMENT_SIZE, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 104: /* db_options ::= db_options STT_TRIGGER NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_STT_TRIGGER, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_STT_TRIGGER, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 105: /* db_options ::= db_options TABLE_PREFIX NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_TABLE_PREFIX, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_TABLE_PREFIX, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 106: /* db_options ::= db_options TABLE_SUFFIX NK_INTEGER */ -{ yylhsminor.yy600 = setDatabaseOption(pCxt, yymsp[-2].minor.yy600, DB_OPTION_TABLE_SUFFIX, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setDatabaseOption(pCxt, yymsp[-2].minor.yy476, DB_OPTION_TABLE_SUFFIX, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 107: /* alter_db_options ::= alter_db_option */ -{ yylhsminor.yy600 = createAlterDatabaseOptions(pCxt); yylhsminor.yy600 = setAlterDatabaseOption(pCxt, yylhsminor.yy600, &yymsp[0].minor.yy661); } - yymsp[0].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterDatabaseOptions(pCxt); yylhsminor.yy476 = setAlterDatabaseOption(pCxt, yylhsminor.yy476, &yymsp[0].minor.yy893); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; case 108: /* alter_db_options ::= alter_db_options alter_db_option */ -{ yylhsminor.yy600 = setAlterDatabaseOption(pCxt, yymsp[-1].minor.yy600, &yymsp[0].minor.yy661); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setAlterDatabaseOption(pCxt, yymsp[-1].minor.yy476, &yymsp[0].minor.yy893); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; case 109: /* alter_db_option ::= BUFFER NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_BUFFER; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_BUFFER; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 110: /* alter_db_option ::= CACHEMODEL NK_STRING */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_CACHEMODEL; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_CACHEMODEL; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 111: /* alter_db_option ::= CACHESIZE NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_CACHESIZE; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_CACHESIZE; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 112: /* alter_db_option ::= WAL_FSYNC_PERIOD NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_FSYNC; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_FSYNC; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 113: /* alter_db_option ::= KEEP integer_list */ case 114: /* alter_db_option ::= KEEP variable_list */ yytestcase(yyruleno==114); -{ yymsp[-1].minor.yy661.type = DB_OPTION_KEEP; yymsp[-1].minor.yy661.pList = yymsp[0].minor.yy601; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_KEEP; yymsp[-1].minor.yy893.pList = yymsp[0].minor.yy376; } break; case 115: /* alter_db_option ::= PAGES NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_PAGES; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_PAGES; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 116: /* alter_db_option ::= REPLICA NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_REPLICA; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_REPLICA; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 117: /* alter_db_option ::= WAL_LEVEL NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_WAL; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_WAL; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 118: /* alter_db_option ::= STT_TRIGGER NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = DB_OPTION_STT_TRIGGER; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = DB_OPTION_STT_TRIGGER; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 119: /* integer_list ::= NK_INTEGER */ -{ yylhsminor.yy601 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy601 = yylhsminor.yy601; +{ yylhsminor.yy376 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy376 = yylhsminor.yy376; break; case 120: /* integer_list ::= integer_list NK_COMMA NK_INTEGER */ - case 318: /* dnode_list ::= dnode_list DNODE NK_INTEGER */ yytestcase(yyruleno==318); -{ yylhsminor.yy601 = addNodeToList(pCxt, yymsp[-2].minor.yy601, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } - yymsp[-2].minor.yy601 = yylhsminor.yy601; + case 320: /* dnode_list ::= dnode_list DNODE NK_INTEGER */ yytestcase(yyruleno==320); +{ yylhsminor.yy376 = addNodeToList(pCxt, yymsp[-2].minor.yy376, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } + yymsp[-2].minor.yy376 = yylhsminor.yy376; break; case 121: /* variable_list ::= NK_VARIABLE */ -{ yylhsminor.yy601 = createNodeList(pCxt, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy601 = yylhsminor.yy601; +{ yylhsminor.yy376 = createNodeList(pCxt, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy376 = yylhsminor.yy376; break; case 122: /* variable_list ::= variable_list NK_COMMA NK_VARIABLE */ -{ yylhsminor.yy601 = addNodeToList(pCxt, yymsp[-2].minor.yy601, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } - yymsp[-2].minor.yy601 = yylhsminor.yy601; +{ yylhsminor.yy376 = addNodeToList(pCxt, yymsp[-2].minor.yy376, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } + yymsp[-2].minor.yy376 = yylhsminor.yy376; break; case 123: /* retention_list ::= retention */ case 145: /* multi_create_clause ::= create_subtable_clause */ yytestcase(yyruleno==145); @@ -4131,288 +4685,288 @@ static YYACTIONTYPE yy_reduce( case 155: /* column_def_list ::= column_def */ yytestcase(yyruleno==155); case 199: /* rollup_func_list ::= rollup_func_name */ yytestcase(yyruleno==199); case 204: /* col_name_list ::= col_name */ yytestcase(yyruleno==204); - case 253: /* tag_list_opt ::= tag_item */ yytestcase(yyruleno==253); - case 265: /* func_list ::= func */ yytestcase(yyruleno==265); - case 346: /* literal_list ::= signed_literal */ yytestcase(yyruleno==346); - case 412: /* other_para_list ::= star_func_para */ yytestcase(yyruleno==412); - case 418: /* when_then_list ::= when_then_expr */ yytestcase(yyruleno==418); - case 473: /* select_list ::= select_item */ yytestcase(yyruleno==473); - case 484: /* partition_list ::= partition_item */ yytestcase(yyruleno==484); - case 537: /* sort_specification_list ::= sort_specification */ yytestcase(yyruleno==537); -{ yylhsminor.yy601 = createNodeList(pCxt, yymsp[0].minor.yy600); } - yymsp[0].minor.yy601 = yylhsminor.yy601; + case 255: /* tag_list_opt ::= tag_item */ yytestcase(yyruleno==255); + case 267: /* func_list ::= func */ yytestcase(yyruleno==267); + case 348: /* literal_list ::= signed_literal */ yytestcase(yyruleno==348); + case 414: /* other_para_list ::= star_func_para */ yytestcase(yyruleno==414); + case 420: /* when_then_list ::= when_then_expr */ yytestcase(yyruleno==420); + case 475: /* select_list ::= select_item */ yytestcase(yyruleno==475); + case 486: /* partition_list ::= partition_item */ yytestcase(yyruleno==486); + case 539: /* sort_specification_list ::= sort_specification */ yytestcase(yyruleno==539); +{ yylhsminor.yy376 = createNodeList(pCxt, yymsp[0].minor.yy476); } + yymsp[0].minor.yy376 = yylhsminor.yy376; break; case 124: /* retention_list ::= retention_list NK_COMMA retention */ case 156: /* column_def_list ::= column_def_list NK_COMMA column_def */ yytestcase(yyruleno==156); case 200: /* rollup_func_list ::= rollup_func_list NK_COMMA rollup_func_name */ yytestcase(yyruleno==200); case 205: /* col_name_list ::= col_name_list NK_COMMA col_name */ yytestcase(yyruleno==205); - case 254: /* tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ yytestcase(yyruleno==254); - case 266: /* func_list ::= func_list NK_COMMA func */ yytestcase(yyruleno==266); - case 347: /* literal_list ::= literal_list NK_COMMA signed_literal */ yytestcase(yyruleno==347); - case 413: /* other_para_list ::= other_para_list NK_COMMA star_func_para */ yytestcase(yyruleno==413); - case 474: /* select_list ::= select_list NK_COMMA select_item */ yytestcase(yyruleno==474); - case 485: /* partition_list ::= partition_list NK_COMMA partition_item */ yytestcase(yyruleno==485); - case 538: /* sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ yytestcase(yyruleno==538); -{ yylhsminor.yy601 = addNodeToList(pCxt, yymsp[-2].minor.yy601, yymsp[0].minor.yy600); } - yymsp[-2].minor.yy601 = yylhsminor.yy601; + case 256: /* tag_list_opt ::= tag_list_opt NK_COMMA tag_item */ yytestcase(yyruleno==256); + case 268: /* func_list ::= func_list NK_COMMA func */ yytestcase(yyruleno==268); + case 349: /* literal_list ::= literal_list NK_COMMA signed_literal */ yytestcase(yyruleno==349); + case 415: /* other_para_list ::= other_para_list NK_COMMA star_func_para */ yytestcase(yyruleno==415); + case 476: /* select_list ::= select_list NK_COMMA select_item */ yytestcase(yyruleno==476); + case 487: /* partition_list ::= partition_list NK_COMMA partition_item */ yytestcase(yyruleno==487); + case 540: /* sort_specification_list ::= sort_specification_list NK_COMMA sort_specification */ yytestcase(yyruleno==540); +{ yylhsminor.yy376 = addNodeToList(pCxt, yymsp[-2].minor.yy376, yymsp[0].minor.yy476); } + yymsp[-2].minor.yy376 = yylhsminor.yy376; break; case 125: /* retention ::= NK_VARIABLE NK_COLON NK_VARIABLE */ -{ yylhsminor.yy600 = createNodeListNodeEx(pCxt, createDurationValueNode(pCxt, &yymsp[-2].minor.yy0), createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createNodeListNodeEx(pCxt, createDurationValueNode(pCxt, &yymsp[-2].minor.yy0), createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 126: /* speed_opt ::= */ - case 297: /* bufsize_opt ::= */ yytestcase(yyruleno==297); -{ yymsp[1].minor.yy248 = 0; } + case 299: /* bufsize_opt ::= */ yytestcase(yyruleno==299); +{ yymsp[1].minor.yy508 = 0; } break; case 127: /* speed_opt ::= MAX_SPEED NK_INTEGER */ - case 298: /* bufsize_opt ::= BUFSIZE NK_INTEGER */ yytestcase(yyruleno==298); -{ yymsp[-1].minor.yy248 = taosStr2Int32(yymsp[0].minor.yy0.z, NULL, 10); } + case 300: /* bufsize_opt ::= BUFSIZE NK_INTEGER */ yytestcase(yyruleno==300); +{ yymsp[-1].minor.yy508 = taosStr2Int32(yymsp[0].minor.yy0.z, NULL, 10); } break; case 128: /* cmd ::= CREATE TABLE not_exists_opt full_table_name NK_LP column_def_list NK_RP tags_def_opt table_options */ case 130: /* cmd ::= CREATE STABLE not_exists_opt full_table_name NK_LP column_def_list NK_RP tags_def table_options */ yytestcase(yyruleno==130); -{ pCxt->pRootNode = createCreateTableStmt(pCxt, yymsp[-6].minor.yy841, yymsp[-5].minor.yy600, yymsp[-3].minor.yy601, yymsp[-1].minor.yy601, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createCreateTableStmt(pCxt, yymsp[-6].minor.yy845, yymsp[-5].minor.yy476, yymsp[-3].minor.yy376, yymsp[-1].minor.yy376, yymsp[0].minor.yy476); } break; case 129: /* cmd ::= CREATE TABLE multi_create_clause */ -{ pCxt->pRootNode = createCreateMultiTableStmt(pCxt, yymsp[0].minor.yy601); } +{ pCxt->pRootNode = createCreateMultiTableStmt(pCxt, yymsp[0].minor.yy376); } break; case 131: /* cmd ::= DROP TABLE multi_drop_clause */ -{ pCxt->pRootNode = createDropTableStmt(pCxt, yymsp[0].minor.yy601); } +{ pCxt->pRootNode = createDropTableStmt(pCxt, yymsp[0].minor.yy376); } break; case 132: /* cmd ::= DROP STABLE exists_opt full_table_name */ -{ pCxt->pRootNode = createDropSuperTableStmt(pCxt, yymsp[-1].minor.yy841, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createDropSuperTableStmt(pCxt, yymsp[-1].minor.yy845, yymsp[0].minor.yy476); } break; case 133: /* cmd ::= ALTER TABLE alter_table_clause */ - case 320: /* cmd ::= query_or_subquery */ yytestcase(yyruleno==320); -{ pCxt->pRootNode = yymsp[0].minor.yy600; } + case 322: /* cmd ::= query_or_subquery */ yytestcase(yyruleno==322); +{ pCxt->pRootNode = yymsp[0].minor.yy476; } break; case 134: /* cmd ::= ALTER STABLE alter_table_clause */ -{ pCxt->pRootNode = setAlterSuperTableType(yymsp[0].minor.yy600); } +{ pCxt->pRootNode = setAlterSuperTableType(yymsp[0].minor.yy476); } break; case 135: /* alter_table_clause ::= full_table_name alter_table_options */ -{ yylhsminor.yy600 = createAlterTableModifyOptions(pCxt, yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableModifyOptions(pCxt, yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; case 136: /* alter_table_clause ::= full_table_name ADD COLUMN column_name type_name */ -{ yylhsminor.yy600 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy600, TSDB_ALTER_TABLE_ADD_COLUMN, &yymsp[-1].minor.yy77, yymsp[0].minor.yy888); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy476, TSDB_ALTER_TABLE_ADD_COLUMN, &yymsp[-1].minor.yy701, yymsp[0].minor.yy532); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 137: /* alter_table_clause ::= full_table_name DROP COLUMN column_name */ -{ yylhsminor.yy600 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy600, TSDB_ALTER_TABLE_DROP_COLUMN, &yymsp[0].minor.yy77); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy476, TSDB_ALTER_TABLE_DROP_COLUMN, &yymsp[0].minor.yy701); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; case 138: /* alter_table_clause ::= full_table_name MODIFY COLUMN column_name type_name */ -{ yylhsminor.yy600 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy600, TSDB_ALTER_TABLE_UPDATE_COLUMN_BYTES, &yymsp[-1].minor.yy77, yymsp[0].minor.yy888); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy476, TSDB_ALTER_TABLE_UPDATE_COLUMN_BYTES, &yymsp[-1].minor.yy701, yymsp[0].minor.yy532); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 139: /* alter_table_clause ::= full_table_name RENAME COLUMN column_name column_name */ -{ yylhsminor.yy600 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy600, TSDB_ALTER_TABLE_UPDATE_COLUMN_NAME, &yymsp[-1].minor.yy77, &yymsp[0].minor.yy77); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy476, TSDB_ALTER_TABLE_UPDATE_COLUMN_NAME, &yymsp[-1].minor.yy701, &yymsp[0].minor.yy701); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 140: /* alter_table_clause ::= full_table_name ADD TAG column_name type_name */ -{ yylhsminor.yy600 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy600, TSDB_ALTER_TABLE_ADD_TAG, &yymsp[-1].minor.yy77, yymsp[0].minor.yy888); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy476, TSDB_ALTER_TABLE_ADD_TAG, &yymsp[-1].minor.yy701, yymsp[0].minor.yy532); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 141: /* alter_table_clause ::= full_table_name DROP TAG column_name */ -{ yylhsminor.yy600 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy600, TSDB_ALTER_TABLE_DROP_TAG, &yymsp[0].minor.yy77); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableDropCol(pCxt, yymsp[-3].minor.yy476, TSDB_ALTER_TABLE_DROP_TAG, &yymsp[0].minor.yy701); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; case 142: /* alter_table_clause ::= full_table_name MODIFY TAG column_name type_name */ -{ yylhsminor.yy600 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy600, TSDB_ALTER_TABLE_UPDATE_TAG_BYTES, &yymsp[-1].minor.yy77, yymsp[0].minor.yy888); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableAddModifyCol(pCxt, yymsp[-4].minor.yy476, TSDB_ALTER_TABLE_UPDATE_TAG_BYTES, &yymsp[-1].minor.yy701, yymsp[0].minor.yy532); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 143: /* alter_table_clause ::= full_table_name RENAME TAG column_name column_name */ -{ yylhsminor.yy600 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy600, TSDB_ALTER_TABLE_UPDATE_TAG_NAME, &yymsp[-1].minor.yy77, &yymsp[0].minor.yy77); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableRenameCol(pCxt, yymsp[-4].minor.yy476, TSDB_ALTER_TABLE_UPDATE_TAG_NAME, &yymsp[-1].minor.yy701, &yymsp[0].minor.yy701); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 144: /* alter_table_clause ::= full_table_name SET TAG column_name NK_EQ signed_literal */ -{ yylhsminor.yy600 = createAlterTableSetTag(pCxt, yymsp[-5].minor.yy600, &yymsp[-2].minor.yy77, yymsp[0].minor.yy600); } - yymsp[-5].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableSetTag(pCxt, yymsp[-5].minor.yy476, &yymsp[-2].minor.yy701, yymsp[0].minor.yy476); } + yymsp[-5].minor.yy476 = yylhsminor.yy476; break; case 146: /* multi_create_clause ::= multi_create_clause create_subtable_clause */ case 149: /* multi_drop_clause ::= multi_drop_clause drop_table_clause */ yytestcase(yyruleno==149); - case 419: /* when_then_list ::= when_then_list when_then_expr */ yytestcase(yyruleno==419); -{ yylhsminor.yy601 = addNodeToList(pCxt, yymsp[-1].minor.yy601, yymsp[0].minor.yy600); } - yymsp[-1].minor.yy601 = yylhsminor.yy601; + case 421: /* when_then_list ::= when_then_list when_then_expr */ yytestcase(yyruleno==421); +{ yylhsminor.yy376 = addNodeToList(pCxt, yymsp[-1].minor.yy376, yymsp[0].minor.yy476); } + yymsp[-1].minor.yy376 = yylhsminor.yy376; break; case 147: /* 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 */ -{ yylhsminor.yy600 = createCreateSubTableClause(pCxt, yymsp[-9].minor.yy841, yymsp[-8].minor.yy600, yymsp[-6].minor.yy600, yymsp[-5].minor.yy601, yymsp[-2].minor.yy601, yymsp[0].minor.yy600); } - yymsp[-9].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createCreateSubTableClause(pCxt, yymsp[-9].minor.yy845, yymsp[-8].minor.yy476, yymsp[-6].minor.yy476, yymsp[-5].minor.yy376, yymsp[-2].minor.yy376, yymsp[0].minor.yy476); } + yymsp[-9].minor.yy476 = yylhsminor.yy476; break; case 150: /* drop_table_clause ::= exists_opt full_table_name */ -{ yylhsminor.yy600 = createDropTableClause(pCxt, yymsp[-1].minor.yy841, yymsp[0].minor.yy600); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createDropTableClause(pCxt, yymsp[-1].minor.yy845, yymsp[0].minor.yy476); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; case 151: /* specific_cols_opt ::= */ case 182: /* tags_def_opt ::= */ yytestcase(yyruleno==182); - case 252: /* tag_list_opt ::= */ yytestcase(yyruleno==252); - case 482: /* partition_by_clause_opt ::= */ yytestcase(yyruleno==482); - case 505: /* group_by_clause_opt ::= */ yytestcase(yyruleno==505); - case 524: /* order_by_clause_opt ::= */ yytestcase(yyruleno==524); -{ yymsp[1].minor.yy601 = NULL; } + case 254: /* tag_list_opt ::= */ yytestcase(yyruleno==254); + case 484: /* partition_by_clause_opt ::= */ yytestcase(yyruleno==484); + case 507: /* group_by_clause_opt ::= */ yytestcase(yyruleno==507); + case 526: /* order_by_clause_opt ::= */ yytestcase(yyruleno==526); +{ yymsp[1].minor.yy376 = NULL; } break; case 152: /* specific_cols_opt ::= NK_LP col_name_list NK_RP */ -{ yymsp[-2].minor.yy601 = yymsp[-1].minor.yy601; } +{ yymsp[-2].minor.yy376 = yymsp[-1].minor.yy376; } break; case 153: /* full_table_name ::= table_name */ -{ yylhsminor.yy600 = createRealTableNode(pCxt, NULL, &yymsp[0].minor.yy77, NULL); } - yymsp[0].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createRealTableNode(pCxt, NULL, &yymsp[0].minor.yy701, NULL); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; case 154: /* full_table_name ::= db_name NK_DOT table_name */ -{ yylhsminor.yy600 = createRealTableNode(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy77, NULL); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createRealTableNode(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy701, NULL); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 157: /* column_def ::= column_name type_name */ -{ yylhsminor.yy600 = createColumnDefNode(pCxt, &yymsp[-1].minor.yy77, yymsp[0].minor.yy888, NULL); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createColumnDefNode(pCxt, &yymsp[-1].minor.yy701, yymsp[0].minor.yy532, NULL); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; case 158: /* column_def ::= column_name type_name COMMENT NK_STRING */ -{ yylhsminor.yy600 = createColumnDefNode(pCxt, &yymsp[-3].minor.yy77, yymsp[-2].minor.yy888, &yymsp[0].minor.yy0); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createColumnDefNode(pCxt, &yymsp[-3].minor.yy701, yymsp[-2].minor.yy532, &yymsp[0].minor.yy0); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; case 159: /* type_name ::= BOOL */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_BOOL); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_BOOL); } break; case 160: /* type_name ::= TINYINT */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_TINYINT); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_TINYINT); } break; case 161: /* type_name ::= SMALLINT */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_SMALLINT); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_SMALLINT); } break; case 162: /* type_name ::= INT */ case 163: /* type_name ::= INTEGER */ yytestcase(yyruleno==163); -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_INT); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_INT); } break; case 164: /* type_name ::= BIGINT */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_BIGINT); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_BIGINT); } break; case 165: /* type_name ::= FLOAT */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_FLOAT); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_FLOAT); } break; case 166: /* type_name ::= DOUBLE */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_DOUBLE); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_DOUBLE); } break; case 167: /* type_name ::= BINARY NK_LP NK_INTEGER NK_RP */ -{ yymsp[-3].minor.yy888 = createVarLenDataType(TSDB_DATA_TYPE_BINARY, &yymsp[-1].minor.yy0); } +{ yymsp[-3].minor.yy532 = createVarLenDataType(TSDB_DATA_TYPE_BINARY, &yymsp[-1].minor.yy0); } break; case 168: /* type_name ::= TIMESTAMP */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_TIMESTAMP); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_TIMESTAMP); } break; case 169: /* type_name ::= NCHAR NK_LP NK_INTEGER NK_RP */ -{ yymsp[-3].minor.yy888 = createVarLenDataType(TSDB_DATA_TYPE_NCHAR, &yymsp[-1].minor.yy0); } +{ yymsp[-3].minor.yy532 = createVarLenDataType(TSDB_DATA_TYPE_NCHAR, &yymsp[-1].minor.yy0); } break; case 170: /* type_name ::= TINYINT UNSIGNED */ -{ yymsp[-1].minor.yy888 = createDataType(TSDB_DATA_TYPE_UTINYINT); } +{ yymsp[-1].minor.yy532 = createDataType(TSDB_DATA_TYPE_UTINYINT); } break; case 171: /* type_name ::= SMALLINT UNSIGNED */ -{ yymsp[-1].minor.yy888 = createDataType(TSDB_DATA_TYPE_USMALLINT); } +{ yymsp[-1].minor.yy532 = createDataType(TSDB_DATA_TYPE_USMALLINT); } break; case 172: /* type_name ::= INT UNSIGNED */ -{ yymsp[-1].minor.yy888 = createDataType(TSDB_DATA_TYPE_UINT); } +{ yymsp[-1].minor.yy532 = createDataType(TSDB_DATA_TYPE_UINT); } break; case 173: /* type_name ::= BIGINT UNSIGNED */ -{ yymsp[-1].minor.yy888 = createDataType(TSDB_DATA_TYPE_UBIGINT); } +{ yymsp[-1].minor.yy532 = createDataType(TSDB_DATA_TYPE_UBIGINT); } break; case 174: /* type_name ::= JSON */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_JSON); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_JSON); } break; case 175: /* type_name ::= VARCHAR NK_LP NK_INTEGER NK_RP */ -{ yymsp[-3].minor.yy888 = createVarLenDataType(TSDB_DATA_TYPE_VARCHAR, &yymsp[-1].minor.yy0); } +{ yymsp[-3].minor.yy532 = createVarLenDataType(TSDB_DATA_TYPE_VARCHAR, &yymsp[-1].minor.yy0); } break; case 176: /* type_name ::= MEDIUMBLOB */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_MEDIUMBLOB); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_MEDIUMBLOB); } break; case 177: /* type_name ::= BLOB */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_BLOB); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_BLOB); } break; case 178: /* type_name ::= VARBINARY NK_LP NK_INTEGER NK_RP */ -{ yymsp[-3].minor.yy888 = createVarLenDataType(TSDB_DATA_TYPE_VARBINARY, &yymsp[-1].minor.yy0); } +{ yymsp[-3].minor.yy532 = createVarLenDataType(TSDB_DATA_TYPE_VARBINARY, &yymsp[-1].minor.yy0); } break; case 179: /* type_name ::= DECIMAL */ -{ yymsp[0].minor.yy888 = createDataType(TSDB_DATA_TYPE_DECIMAL); } +{ yymsp[0].minor.yy532 = createDataType(TSDB_DATA_TYPE_DECIMAL); } break; case 180: /* type_name ::= DECIMAL NK_LP NK_INTEGER NK_RP */ -{ yymsp[-3].minor.yy888 = createDataType(TSDB_DATA_TYPE_DECIMAL); } +{ yymsp[-3].minor.yy532 = createDataType(TSDB_DATA_TYPE_DECIMAL); } break; case 181: /* type_name ::= DECIMAL NK_LP NK_INTEGER NK_COMMA NK_INTEGER NK_RP */ -{ yymsp[-5].minor.yy888 = createDataType(TSDB_DATA_TYPE_DECIMAL); } +{ yymsp[-5].minor.yy532 = createDataType(TSDB_DATA_TYPE_DECIMAL); } break; case 183: /* tags_def_opt ::= tags_def */ - case 411: /* star_func_para_list ::= other_para_list */ yytestcase(yyruleno==411); -{ yylhsminor.yy601 = yymsp[0].minor.yy601; } - yymsp[0].minor.yy601 = yylhsminor.yy601; + case 413: /* star_func_para_list ::= other_para_list */ yytestcase(yyruleno==413); +{ yylhsminor.yy376 = yymsp[0].minor.yy376; } + yymsp[0].minor.yy376 = yylhsminor.yy376; break; case 184: /* tags_def ::= TAGS NK_LP column_def_list NK_RP */ -{ yymsp[-3].minor.yy601 = yymsp[-1].minor.yy601; } +{ yymsp[-3].minor.yy376 = yymsp[-1].minor.yy376; } break; case 185: /* table_options ::= */ -{ yymsp[1].minor.yy600 = createDefaultTableOptions(pCxt); } +{ yymsp[1].minor.yy476 = createDefaultTableOptions(pCxt); } break; case 186: /* table_options ::= table_options COMMENT NK_STRING */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-2].minor.yy600, TABLE_OPTION_COMMENT, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-2].minor.yy476, TABLE_OPTION_COMMENT, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 187: /* table_options ::= table_options MAX_DELAY duration_list */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-2].minor.yy600, TABLE_OPTION_MAXDELAY, yymsp[0].minor.yy601); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-2].minor.yy476, TABLE_OPTION_MAXDELAY, yymsp[0].minor.yy376); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 188: /* table_options ::= table_options WATERMARK duration_list */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-2].minor.yy600, TABLE_OPTION_WATERMARK, yymsp[0].minor.yy601); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-2].minor.yy476, TABLE_OPTION_WATERMARK, yymsp[0].minor.yy376); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 189: /* table_options ::= table_options ROLLUP NK_LP rollup_func_list NK_RP */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-4].minor.yy600, TABLE_OPTION_ROLLUP, yymsp[-1].minor.yy601); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-4].minor.yy476, TABLE_OPTION_ROLLUP, yymsp[-1].minor.yy376); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 190: /* table_options ::= table_options TTL NK_INTEGER */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-2].minor.yy600, TABLE_OPTION_TTL, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-2].minor.yy476, TABLE_OPTION_TTL, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 191: /* table_options ::= table_options SMA NK_LP col_name_list NK_RP */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-4].minor.yy600, TABLE_OPTION_SMA, yymsp[-1].minor.yy601); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-4].minor.yy476, TABLE_OPTION_SMA, yymsp[-1].minor.yy376); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; case 192: /* table_options ::= table_options DELETE_MARK duration_list */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-2].minor.yy600, TABLE_OPTION_DELETE_MARK, yymsp[0].minor.yy601); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-2].minor.yy476, TABLE_OPTION_DELETE_MARK, yymsp[0].minor.yy376); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; case 193: /* alter_table_options ::= alter_table_option */ -{ yylhsminor.yy600 = createAlterTableOptions(pCxt); yylhsminor.yy600 = setTableOption(pCxt, yylhsminor.yy600, yymsp[0].minor.yy661.type, &yymsp[0].minor.yy661.val); } - yymsp[0].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createAlterTableOptions(pCxt); yylhsminor.yy476 = setTableOption(pCxt, yylhsminor.yy476, yymsp[0].minor.yy893.type, &yymsp[0].minor.yy893.val); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; case 194: /* alter_table_options ::= alter_table_options alter_table_option */ -{ yylhsminor.yy600 = setTableOption(pCxt, yymsp[-1].minor.yy600, yymsp[0].minor.yy661.type, &yymsp[0].minor.yy661.val); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = setTableOption(pCxt, yymsp[-1].minor.yy476, yymsp[0].minor.yy893.type, &yymsp[0].minor.yy893.val); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; case 195: /* alter_table_option ::= COMMENT NK_STRING */ -{ yymsp[-1].minor.yy661.type = TABLE_OPTION_COMMENT; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = TABLE_OPTION_COMMENT; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 196: /* alter_table_option ::= TTL NK_INTEGER */ -{ yymsp[-1].minor.yy661.type = TABLE_OPTION_TTL; yymsp[-1].minor.yy661.val = yymsp[0].minor.yy0; } +{ yymsp[-1].minor.yy893.type = TABLE_OPTION_TTL; yymsp[-1].minor.yy893.val = yymsp[0].minor.yy0; } break; case 197: /* duration_list ::= duration_literal */ - case 375: /* expression_list ::= expr_or_subquery */ yytestcase(yyruleno==375); -{ yylhsminor.yy601 = createNodeList(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy600)); } - yymsp[0].minor.yy601 = yylhsminor.yy601; + case 377: /* expression_list ::= expr_or_subquery */ yytestcase(yyruleno==377); +{ yylhsminor.yy376 = createNodeList(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy476)); } + yymsp[0].minor.yy376 = yylhsminor.yy376; break; case 198: /* duration_list ::= duration_list NK_COMMA duration_literal */ - case 376: /* expression_list ::= expression_list NK_COMMA expr_or_subquery */ yytestcase(yyruleno==376); -{ yylhsminor.yy601 = addNodeToList(pCxt, yymsp[-2].minor.yy601, releaseRawExprNode(pCxt, yymsp[0].minor.yy600)); } - yymsp[-2].minor.yy601 = yylhsminor.yy601; + case 378: /* expression_list ::= expression_list NK_COMMA expr_or_subquery */ yytestcase(yyruleno==378); +{ yylhsminor.yy376 = addNodeToList(pCxt, yymsp[-2].minor.yy376, releaseRawExprNode(pCxt, yymsp[0].minor.yy476)); } + yymsp[-2].minor.yy376 = yylhsminor.yy376; break; case 201: /* rollup_func_name ::= function_name */ -{ yylhsminor.yy600 = createFunctionNode(pCxt, &yymsp[0].minor.yy77, NULL); } - yymsp[0].minor.yy600 = yylhsminor.yy600; +{ yylhsminor.yy476 = createFunctionNode(pCxt, &yymsp[0].minor.yy701, NULL); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; case 202: /* rollup_func_name ::= FIRST */ case 203: /* rollup_func_name ::= LAST */ yytestcase(yyruleno==203); - case 256: /* tag_item ::= QTAGS */ yytestcase(yyruleno==256); -{ yylhsminor.yy600 = createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL); } - yymsp[0].minor.yy600 = yylhsminor.yy600; + case 258: /* tag_item ::= QTAGS */ yytestcase(yyruleno==258); +{ yylhsminor.yy476 = createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; case 206: /* col_name ::= column_name */ - case 257: /* tag_item ::= column_name */ yytestcase(yyruleno==257); -{ yylhsminor.yy600 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy77); } - yymsp[0].minor.yy600 = yylhsminor.yy600; + case 259: /* tag_item ::= column_name */ yytestcase(yyruleno==259); +{ yylhsminor.yy476 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy701); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; case 207: /* cmd ::= SHOW DNODES */ { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_DNODES_STMT); } @@ -4427,13 +4981,13 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_DATABASES_STMT); } break; case 211: /* cmd ::= SHOW db_name_cond_opt TABLES like_pattern_opt */ -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TABLES_STMT, yymsp[-2].minor.yy600, yymsp[0].minor.yy600, OP_TYPE_LIKE); } +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TABLES_STMT, yymsp[-2].minor.yy476, yymsp[0].minor.yy476, OP_TYPE_LIKE); } break; case 212: /* cmd ::= SHOW db_name_cond_opt STABLES like_pattern_opt */ -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_STABLES_STMT, yymsp[-2].minor.yy600, yymsp[0].minor.yy600, OP_TYPE_LIKE); } +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_STABLES_STMT, yymsp[-2].minor.yy476, yymsp[0].minor.yy476, OP_TYPE_LIKE); } break; case 213: /* cmd ::= SHOW db_name_cond_opt VGROUPS */ -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_VGROUPS_STMT, yymsp[-1].minor.yy600, NULL, OP_TYPE_LIKE); } +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_VGROUPS_STMT, yymsp[-1].minor.yy476, NULL, OP_TYPE_LIKE); } break; case 214: /* cmd ::= SHOW MNODES */ { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_MNODES_STMT); } @@ -4445,7 +4999,7 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_FUNCTIONS_STMT); } break; case 217: /* cmd ::= SHOW INDEXES FROM table_name_cond from_db_opt */ -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_INDEXES_STMT, yymsp[0].minor.yy600, yymsp[-1].minor.yy600, OP_TYPE_EQUAL); } +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_INDEXES_STMT, yymsp[0].minor.yy476, yymsp[-1].minor.yy476, OP_TYPE_EQUAL); } break; case 218: /* cmd ::= SHOW STREAMS */ { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_STREAMS_STMT); } @@ -4464,13 +5018,13 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_LICENCES_STMT); } break; case 224: /* cmd ::= SHOW CREATE DATABASE db_name */ -{ pCxt->pRootNode = createShowCreateDatabaseStmt(pCxt, &yymsp[0].minor.yy77); } +{ pCxt->pRootNode = createShowCreateDatabaseStmt(pCxt, &yymsp[0].minor.yy701); } break; case 225: /* cmd ::= SHOW CREATE TABLE full_table_name */ -{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_TABLE_STMT, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_TABLE_STMT, yymsp[0].minor.yy476); } break; case 226: /* cmd ::= SHOW CREATE STABLE full_table_name */ -{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_STABLE_STMT, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createShowCreateTableStmt(pCxt, QUERY_NODE_SHOW_CREATE_STABLE_STMT, yymsp[0].minor.yy476); } break; case 227: /* cmd ::= SHOW QUERIES */ { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_QUERIES_STMT); } @@ -4489,7 +5043,7 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_LOCAL_VARIABLES_STMT); } break; case 233: /* cmd ::= SHOW DNODE NK_INTEGER VARIABLES like_pattern_opt */ -{ pCxt->pRootNode = createShowDnodeVariablesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[-2].minor.yy0), yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createShowDnodeVariablesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[-2].minor.yy0), yymsp[0].minor.yy476); } break; case 234: /* cmd ::= SHOW BNODES */ { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_BNODES_STMT); } @@ -4504,7 +5058,7 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_TRANSACTIONS_STMT); } break; case 238: /* cmd ::= SHOW TABLE DISTRIBUTED full_table_name */ -{ pCxt->pRootNode = createShowTableDistributedStmt(pCxt, yymsp[0].minor.yy600); } +{ pCxt->pRootNode = createShowTableDistributedStmt(pCxt, yymsp[0].minor.yy476); } break; case 239: /* cmd ::= SHOW CONSUMERS */ { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_CONSUMERS_STMT); } @@ -4513,10 +5067,10 @@ static YYACTIONTYPE yy_reduce( { pCxt->pRootNode = createShowStmt(pCxt, QUERY_NODE_SHOW_SUBSCRIPTIONS_STMT); } break; case 241: /* cmd ::= SHOW TAGS FROM table_name_cond from_db_opt */ -{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TAGS_STMT, yymsp[0].minor.yy600, yymsp[-1].minor.yy600, OP_TYPE_EQUAL); } +{ pCxt->pRootNode = createShowStmtWithCond(pCxt, QUERY_NODE_SHOW_TAGS_STMT, yymsp[0].minor.yy476, yymsp[-1].minor.yy476, OP_TYPE_EQUAL); } break; case 242: /* cmd ::= SHOW TABLE TAGS tag_list_opt FROM table_name_cond from_db_opt */ -{ pCxt->pRootNode = createShowTableTagsStmt(pCxt, yymsp[-1].minor.yy600, yymsp[0].minor.yy600, yymsp[-3].minor.yy601); } +{ pCxt->pRootNode = createShowTableTagsStmt(pCxt, yymsp[-1].minor.yy476, yymsp[0].minor.yy476, yymsp[-3].minor.yy376); } break; case 243: /* cmd ::= SHOW VNODES NK_INTEGER */ { pCxt->pRootNode = createShowVnodesStmt(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0), NULL); } @@ -4524,750 +5078,756 @@ static YYACTIONTYPE yy_reduce( case 244: /* cmd ::= SHOW VNODES NK_STRING */ { pCxt->pRootNode = createShowVnodesStmt(pCxt, NULL, createValueNode(pCxt, TSDB_DATA_TYPE_VARCHAR, &yymsp[0].minor.yy0)); } break; - case 245: /* db_name_cond_opt ::= */ - case 250: /* from_db_opt ::= */ yytestcase(yyruleno==250); -{ yymsp[1].minor.yy600 = createDefaultDatabaseCondValue(pCxt); } + case 245: /* cmd ::= SHOW db_name_cond_opt ALIVE */ +{ pCxt->pRootNode = createShowAliveStmt(pCxt, yymsp[-1].minor.yy476, QUERY_NODE_SHOW_DB_ALIVE_STMT); } + break; + case 246: /* cmd ::= SHOW CLUSTER ALIVE */ +{ pCxt->pRootNode = createShowAliveStmt(pCxt, NULL, QUERY_NODE_SHOW_CLUSTER_ALIVE_STMT); } break; - case 246: /* db_name_cond_opt ::= db_name NK_DOT */ -{ yylhsminor.yy600 = createIdentifierValueNode(pCxt, &yymsp[-1].minor.yy77); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + case 247: /* db_name_cond_opt ::= */ + case 252: /* from_db_opt ::= */ yytestcase(yyruleno==252); +{ yymsp[1].minor.yy476 = createDefaultDatabaseCondValue(pCxt); } break; - case 247: /* like_pattern_opt ::= */ - case 308: /* subtable_opt ::= */ yytestcase(yyruleno==308); - case 421: /* case_when_else_opt ::= */ yytestcase(yyruleno==421); - case 451: /* from_clause_opt ::= */ yytestcase(yyruleno==451); - case 480: /* where_clause_opt ::= */ yytestcase(yyruleno==480); - case 489: /* twindow_clause_opt ::= */ yytestcase(yyruleno==489); - case 495: /* sliding_opt ::= */ yytestcase(yyruleno==495); - case 497: /* fill_opt ::= */ yytestcase(yyruleno==497); - case 509: /* having_clause_opt ::= */ yytestcase(yyruleno==509); - case 511: /* range_opt ::= */ yytestcase(yyruleno==511); - case 513: /* every_opt ::= */ yytestcase(yyruleno==513); - case 526: /* slimit_clause_opt ::= */ yytestcase(yyruleno==526); - case 530: /* limit_clause_opt ::= */ yytestcase(yyruleno==530); -{ yymsp[1].minor.yy600 = NULL; } + case 248: /* db_name_cond_opt ::= db_name NK_DOT */ +{ yylhsminor.yy476 = createIdentifierValueNode(pCxt, &yymsp[-1].minor.yy701); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 248: /* like_pattern_opt ::= LIKE NK_STRING */ -{ yymsp[-1].minor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } + case 249: /* like_pattern_opt ::= */ + case 310: /* subtable_opt ::= */ yytestcase(yyruleno==310); + case 423: /* case_when_else_opt ::= */ yytestcase(yyruleno==423); + case 453: /* from_clause_opt ::= */ yytestcase(yyruleno==453); + case 482: /* where_clause_opt ::= */ yytestcase(yyruleno==482); + case 491: /* twindow_clause_opt ::= */ yytestcase(yyruleno==491); + case 497: /* sliding_opt ::= */ yytestcase(yyruleno==497); + case 499: /* fill_opt ::= */ yytestcase(yyruleno==499); + case 511: /* having_clause_opt ::= */ yytestcase(yyruleno==511); + case 513: /* range_opt ::= */ yytestcase(yyruleno==513); + case 515: /* every_opt ::= */ yytestcase(yyruleno==515); + case 528: /* slimit_clause_opt ::= */ yytestcase(yyruleno==528); + case 532: /* limit_clause_opt ::= */ yytestcase(yyruleno==532); +{ yymsp[1].minor.yy476 = NULL; } break; - case 249: /* table_name_cond ::= table_name */ -{ yylhsminor.yy600 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy77); } - yymsp[0].minor.yy600 = yylhsminor.yy600; + case 250: /* like_pattern_opt ::= LIKE NK_STRING */ +{ yymsp[-1].minor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } break; - case 251: /* from_db_opt ::= FROM db_name */ -{ yymsp[-1].minor.yy600 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy77); } + case 251: /* table_name_cond ::= table_name */ +{ yylhsminor.yy476 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy701); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; - case 255: /* tag_item ::= TBNAME */ -{ yylhsminor.yy600 = setProjectionAlias(pCxt, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL), &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; + case 253: /* from_db_opt ::= FROM db_name */ +{ yymsp[-1].minor.yy476 = createIdentifierValueNode(pCxt, &yymsp[0].minor.yy701); } break; - case 258: /* tag_item ::= column_name column_alias */ -{ yylhsminor.yy600 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-1].minor.yy77), &yymsp[0].minor.yy77); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + case 257: /* tag_item ::= TBNAME */ +{ yylhsminor.yy476 = setProjectionAlias(pCxt, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL), &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; - case 259: /* tag_item ::= column_name AS column_alias */ -{ yylhsminor.yy600 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-2].minor.yy77), &yymsp[0].minor.yy77); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 260: /* tag_item ::= column_name column_alias */ +{ yylhsminor.yy476 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-1].minor.yy701), &yymsp[0].minor.yy701); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 260: /* cmd ::= CREATE SMA INDEX not_exists_opt full_table_name ON full_table_name index_options */ -{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_SMA, yymsp[-4].minor.yy841, yymsp[-3].minor.yy600, yymsp[-1].minor.yy600, NULL, yymsp[0].minor.yy600); } + case 261: /* tag_item ::= column_name AS column_alias */ +{ yylhsminor.yy476 = setProjectionAlias(pCxt, createColumnNode(pCxt, NULL, &yymsp[-2].minor.yy701), &yymsp[0].minor.yy701); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 261: /* cmd ::= CREATE INDEX not_exists_opt full_table_name ON full_table_name NK_LP col_name_list NK_RP */ -{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_NORMAL, yymsp[-6].minor.yy841, yymsp[-5].minor.yy600, yymsp[-3].minor.yy600, yymsp[-1].minor.yy601, NULL); } + case 262: /* cmd ::= CREATE SMA INDEX not_exists_opt full_table_name ON full_table_name index_options */ +{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_SMA, yymsp[-4].minor.yy845, yymsp[-3].minor.yy476, yymsp[-1].minor.yy476, NULL, yymsp[0].minor.yy476); } break; - case 262: /* cmd ::= DROP INDEX exists_opt full_table_name */ -{ pCxt->pRootNode = createDropIndexStmt(pCxt, yymsp[-1].minor.yy841, yymsp[0].minor.yy600); } + case 263: /* cmd ::= CREATE INDEX not_exists_opt full_table_name ON full_table_name NK_LP col_name_list NK_RP */ +{ pCxt->pRootNode = createCreateIndexStmt(pCxt, INDEX_TYPE_NORMAL, yymsp[-6].minor.yy845, yymsp[-5].minor.yy476, yymsp[-3].minor.yy476, yymsp[-1].minor.yy376, NULL); } break; - case 263: /* index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ -{ yymsp[-9].minor.yy600 = createIndexOption(pCxt, yymsp[-7].minor.yy601, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), NULL, yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } + case 264: /* cmd ::= DROP INDEX exists_opt full_table_name */ +{ pCxt->pRootNode = createDropIndexStmt(pCxt, yymsp[-1].minor.yy845, yymsp[0].minor.yy476); } break; - case 264: /* 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 */ -{ yymsp[-11].minor.yy600 = createIndexOption(pCxt, yymsp[-9].minor.yy601, releaseRawExprNode(pCxt, yymsp[-5].minor.yy600), releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } + case 265: /* index_options ::= FUNCTION NK_LP func_list NK_RP INTERVAL NK_LP duration_literal NK_RP sliding_opt sma_stream_opt */ +{ yymsp[-9].minor.yy476 = createIndexOption(pCxt, yymsp[-7].minor.yy376, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), NULL, yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } break; - case 267: /* func ::= sma_func_name NK_LP expression_list NK_RP */ -{ yylhsminor.yy600 = createFunctionNode(pCxt, &yymsp[-3].minor.yy77, yymsp[-1].minor.yy601); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + case 266: /* 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 */ +{ yymsp[-11].minor.yy476 = createIndexOption(pCxt, yymsp[-9].minor.yy376, releaseRawExprNode(pCxt, yymsp[-5].minor.yy476), releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } break; - case 273: /* sma_stream_opt ::= */ - case 301: /* stream_options ::= */ yytestcase(yyruleno==301); -{ yymsp[1].minor.yy600 = createStreamOptions(pCxt); } + case 269: /* func ::= sma_func_name NK_LP expression_list NK_RP */ +{ yylhsminor.yy476 = createFunctionNode(pCxt, &yymsp[-3].minor.yy701, yymsp[-1].minor.yy376); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 274: /* sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ - case 305: /* stream_options ::= stream_options WATERMARK duration_literal */ yytestcase(yyruleno==305); -{ ((SStreamOptions*)yymsp[-2].minor.yy600)->pWatermark = releaseRawExprNode(pCxt, yymsp[0].minor.yy600); yylhsminor.yy600 = yymsp[-2].minor.yy600; } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 275: /* sma_stream_opt ::= */ + case 303: /* stream_options ::= */ yytestcase(yyruleno==303); +{ yymsp[1].minor.yy476 = createStreamOptions(pCxt); } break; - case 275: /* sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ -{ ((SStreamOptions*)yymsp[-2].minor.yy600)->pDelay = releaseRawExprNode(pCxt, yymsp[0].minor.yy600); yylhsminor.yy600 = yymsp[-2].minor.yy600; } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 276: /* sma_stream_opt ::= sma_stream_opt WATERMARK duration_literal */ + case 307: /* stream_options ::= stream_options WATERMARK duration_literal */ yytestcase(yyruleno==307); +{ ((SStreamOptions*)yymsp[-2].minor.yy476)->pWatermark = releaseRawExprNode(pCxt, yymsp[0].minor.yy476); yylhsminor.yy476 = yymsp[-2].minor.yy476; } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 276: /* sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ -{ ((SStreamOptions*)yymsp[-2].minor.yy600)->pDeleteMark = releaseRawExprNode(pCxt, yymsp[0].minor.yy600); yylhsminor.yy600 = yymsp[-2].minor.yy600; } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 277: /* sma_stream_opt ::= sma_stream_opt MAX_DELAY duration_literal */ +{ ((SStreamOptions*)yymsp[-2].minor.yy476)->pDelay = releaseRawExprNode(pCxt, yymsp[0].minor.yy476); yylhsminor.yy476 = yymsp[-2].minor.yy476; } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 277: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ -{ pCxt->pRootNode = createCreateTopicStmtUseQuery(pCxt, yymsp[-3].minor.yy841, &yymsp[-2].minor.yy77, yymsp[0].minor.yy600); } + case 278: /* sma_stream_opt ::= sma_stream_opt DELETE_MARK duration_literal */ +{ ((SStreamOptions*)yymsp[-2].minor.yy476)->pDeleteMark = releaseRawExprNode(pCxt, yymsp[0].minor.yy476); yylhsminor.yy476 = yymsp[-2].minor.yy476; } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 278: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS DATABASE db_name */ -{ pCxt->pRootNode = createCreateTopicStmtUseDb(pCxt, yymsp[-4].minor.yy841, &yymsp[-3].minor.yy77, &yymsp[0].minor.yy77, false); } + case 279: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS query_or_subquery */ +{ pCxt->pRootNode = createCreateTopicStmtUseQuery(pCxt, yymsp[-3].minor.yy845, &yymsp[-2].minor.yy701, yymsp[0].minor.yy476); } break; - case 279: /* cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS DATABASE db_name */ -{ pCxt->pRootNode = createCreateTopicStmtUseDb(pCxt, yymsp[-6].minor.yy841, &yymsp[-5].minor.yy77, &yymsp[0].minor.yy77, true); } + case 280: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS DATABASE db_name */ +{ pCxt->pRootNode = createCreateTopicStmtUseDb(pCxt, yymsp[-4].minor.yy845, &yymsp[-3].minor.yy701, &yymsp[0].minor.yy701, false); } break; - case 280: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS STABLE full_table_name */ -{ pCxt->pRootNode = createCreateTopicStmtUseTable(pCxt, yymsp[-4].minor.yy841, &yymsp[-3].minor.yy77, yymsp[0].minor.yy600, false); } + case 281: /* cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS DATABASE db_name */ +{ pCxt->pRootNode = createCreateTopicStmtUseDb(pCxt, yymsp[-6].minor.yy845, &yymsp[-5].minor.yy701, &yymsp[0].minor.yy701, true); } break; - case 281: /* cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS STABLE full_table_name */ -{ pCxt->pRootNode = createCreateTopicStmtUseTable(pCxt, yymsp[-6].minor.yy841, &yymsp[-5].minor.yy77, yymsp[0].minor.yy600, true); } + case 282: /* cmd ::= CREATE TOPIC not_exists_opt topic_name AS STABLE full_table_name */ +{ pCxt->pRootNode = createCreateTopicStmtUseTable(pCxt, yymsp[-4].minor.yy845, &yymsp[-3].minor.yy701, yymsp[0].minor.yy476, false); } break; - case 282: /* cmd ::= DROP TOPIC exists_opt topic_name */ -{ pCxt->pRootNode = createDropTopicStmt(pCxt, yymsp[-1].minor.yy841, &yymsp[0].minor.yy77); } + case 283: /* cmd ::= CREATE TOPIC not_exists_opt topic_name WITH META AS STABLE full_table_name */ +{ pCxt->pRootNode = createCreateTopicStmtUseTable(pCxt, yymsp[-6].minor.yy845, &yymsp[-5].minor.yy701, yymsp[0].minor.yy476, true); } break; - case 283: /* cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ -{ pCxt->pRootNode = createDropCGroupStmt(pCxt, yymsp[-3].minor.yy841, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy77); } + case 284: /* cmd ::= DROP TOPIC exists_opt topic_name */ +{ pCxt->pRootNode = createDropTopicStmt(pCxt, yymsp[-1].minor.yy845, &yymsp[0].minor.yy701); } break; - case 284: /* cmd ::= DESC full_table_name */ - case 285: /* cmd ::= DESCRIBE full_table_name */ yytestcase(yyruleno==285); -{ pCxt->pRootNode = createDescribeStmt(pCxt, yymsp[0].minor.yy600); } + case 285: /* cmd ::= DROP CONSUMER GROUP exists_opt cgroup_name ON topic_name */ +{ pCxt->pRootNode = createDropCGroupStmt(pCxt, yymsp[-3].minor.yy845, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy701); } break; - case 286: /* cmd ::= RESET QUERY CACHE */ + case 286: /* cmd ::= DESC full_table_name */ + case 287: /* cmd ::= DESCRIBE full_table_name */ yytestcase(yyruleno==287); +{ pCxt->pRootNode = createDescribeStmt(pCxt, yymsp[0].minor.yy476); } + break; + case 288: /* cmd ::= RESET QUERY CACHE */ { pCxt->pRootNode = createResetQueryCacheStmt(pCxt); } break; - case 287: /* cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ -{ pCxt->pRootNode = createExplainStmt(pCxt, yymsp[-2].minor.yy841, yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } + case 289: /* cmd ::= EXPLAIN analyze_opt explain_options query_or_subquery */ +{ pCxt->pRootNode = createExplainStmt(pCxt, yymsp[-2].minor.yy845, yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } break; - case 290: /* explain_options ::= */ -{ yymsp[1].minor.yy600 = createDefaultExplainOptions(pCxt); } + case 292: /* explain_options ::= */ +{ yymsp[1].minor.yy476 = createDefaultExplainOptions(pCxt); } break; - case 291: /* explain_options ::= explain_options VERBOSE NK_BOOL */ -{ yylhsminor.yy600 = setExplainVerbose(pCxt, yymsp[-2].minor.yy600, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 293: /* explain_options ::= explain_options VERBOSE NK_BOOL */ +{ yylhsminor.yy476 = setExplainVerbose(pCxt, yymsp[-2].minor.yy476, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 292: /* explain_options ::= explain_options RATIO NK_FLOAT */ -{ yylhsminor.yy600 = setExplainRatio(pCxt, yymsp[-2].minor.yy600, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 294: /* explain_options ::= explain_options RATIO NK_FLOAT */ +{ yylhsminor.yy476 = setExplainRatio(pCxt, yymsp[-2].minor.yy476, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 293: /* cmd ::= CREATE agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt */ -{ pCxt->pRootNode = createCreateFunctionStmt(pCxt, yymsp[-6].minor.yy841, yymsp[-8].minor.yy841, &yymsp[-5].minor.yy77, &yymsp[-3].minor.yy0, yymsp[-1].minor.yy888, yymsp[0].minor.yy248); } + case 295: /* cmd ::= CREATE agg_func_opt FUNCTION not_exists_opt function_name AS NK_STRING OUTPUTTYPE type_name bufsize_opt */ +{ pCxt->pRootNode = createCreateFunctionStmt(pCxt, yymsp[-6].minor.yy845, yymsp[-8].minor.yy845, &yymsp[-5].minor.yy701, &yymsp[-3].minor.yy0, yymsp[-1].minor.yy532, yymsp[0].minor.yy508); } break; - case 294: /* cmd ::= DROP FUNCTION exists_opt function_name */ -{ pCxt->pRootNode = createDropFunctionStmt(pCxt, yymsp[-1].minor.yy841, &yymsp[0].minor.yy77); } + case 296: /* cmd ::= DROP FUNCTION exists_opt function_name */ +{ pCxt->pRootNode = createDropFunctionStmt(pCxt, yymsp[-1].minor.yy845, &yymsp[0].minor.yy701); } break; - case 299: /* cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name tags_def_opt subtable_opt AS query_or_subquery */ -{ pCxt->pRootNode = createCreateStreamStmt(pCxt, yymsp[-8].minor.yy841, &yymsp[-7].minor.yy77, yymsp[-4].minor.yy600, yymsp[-6].minor.yy600, yymsp[-3].minor.yy601, yymsp[-2].minor.yy600, yymsp[0].minor.yy600); } + case 301: /* cmd ::= CREATE STREAM not_exists_opt stream_name stream_options INTO full_table_name tags_def_opt subtable_opt AS query_or_subquery */ +{ pCxt->pRootNode = createCreateStreamStmt(pCxt, yymsp[-8].minor.yy845, &yymsp[-7].minor.yy701, yymsp[-4].minor.yy476, yymsp[-6].minor.yy476, yymsp[-3].minor.yy376, yymsp[-2].minor.yy476, yymsp[0].minor.yy476); } break; - case 300: /* cmd ::= DROP STREAM exists_opt stream_name */ -{ pCxt->pRootNode = createDropStreamStmt(pCxt, yymsp[-1].minor.yy841, &yymsp[0].minor.yy77); } + case 302: /* cmd ::= DROP STREAM exists_opt stream_name */ +{ pCxt->pRootNode = createDropStreamStmt(pCxt, yymsp[-1].minor.yy845, &yymsp[0].minor.yy701); } break; - case 302: /* stream_options ::= stream_options TRIGGER AT_ONCE */ -{ ((SStreamOptions*)yymsp[-2].minor.yy600)->triggerType = STREAM_TRIGGER_AT_ONCE; yylhsminor.yy600 = yymsp[-2].minor.yy600; } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 304: /* stream_options ::= stream_options TRIGGER AT_ONCE */ +{ ((SStreamOptions*)yymsp[-2].minor.yy476)->triggerType = STREAM_TRIGGER_AT_ONCE; yylhsminor.yy476 = yymsp[-2].minor.yy476; } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 303: /* stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ -{ ((SStreamOptions*)yymsp[-2].minor.yy600)->triggerType = STREAM_TRIGGER_WINDOW_CLOSE; yylhsminor.yy600 = yymsp[-2].minor.yy600; } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 305: /* stream_options ::= stream_options TRIGGER WINDOW_CLOSE */ +{ ((SStreamOptions*)yymsp[-2].minor.yy476)->triggerType = STREAM_TRIGGER_WINDOW_CLOSE; yylhsminor.yy476 = yymsp[-2].minor.yy476; } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 304: /* stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ -{ ((SStreamOptions*)yymsp[-3].minor.yy600)->triggerType = STREAM_TRIGGER_MAX_DELAY; ((SStreamOptions*)yymsp[-3].minor.yy600)->pDelay = releaseRawExprNode(pCxt, yymsp[0].minor.yy600); yylhsminor.yy600 = yymsp[-3].minor.yy600; } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + case 306: /* stream_options ::= stream_options TRIGGER MAX_DELAY duration_literal */ +{ ((SStreamOptions*)yymsp[-3].minor.yy476)->triggerType = STREAM_TRIGGER_MAX_DELAY; ((SStreamOptions*)yymsp[-3].minor.yy476)->pDelay = releaseRawExprNode(pCxt, yymsp[0].minor.yy476); yylhsminor.yy476 = yymsp[-3].minor.yy476; } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 306: /* stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ -{ ((SStreamOptions*)yymsp[-3].minor.yy600)->ignoreExpired = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); yylhsminor.yy600 = yymsp[-3].minor.yy600; } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + case 308: /* stream_options ::= stream_options IGNORE EXPIRED NK_INTEGER */ +{ ((SStreamOptions*)yymsp[-3].minor.yy476)->ignoreExpired = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); yylhsminor.yy476 = yymsp[-3].minor.yy476; } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 307: /* stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ -{ ((SStreamOptions*)yymsp[-2].minor.yy600)->fillHistory = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); yylhsminor.yy600 = yymsp[-2].minor.yy600; } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 309: /* stream_options ::= stream_options FILL_HISTORY NK_INTEGER */ +{ ((SStreamOptions*)yymsp[-2].minor.yy476)->fillHistory = taosStr2Int8(yymsp[0].minor.yy0.z, NULL, 10); yylhsminor.yy476 = yymsp[-2].minor.yy476; } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 309: /* subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ - case 496: /* sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ yytestcase(yyruleno==496); - case 514: /* every_opt ::= EVERY NK_LP duration_literal NK_RP */ yytestcase(yyruleno==514); -{ yymsp[-3].minor.yy600 = releaseRawExprNode(pCxt, yymsp[-1].minor.yy600); } + case 311: /* subtable_opt ::= SUBTABLE NK_LP expression NK_RP */ + case 498: /* sliding_opt ::= SLIDING NK_LP duration_literal NK_RP */ yytestcase(yyruleno==498); + case 516: /* every_opt ::= EVERY NK_LP duration_literal NK_RP */ yytestcase(yyruleno==516); +{ yymsp[-3].minor.yy476 = releaseRawExprNode(pCxt, yymsp[-1].minor.yy476); } break; - case 310: /* cmd ::= KILL CONNECTION NK_INTEGER */ + case 312: /* cmd ::= KILL CONNECTION NK_INTEGER */ { pCxt->pRootNode = createKillStmt(pCxt, QUERY_NODE_KILL_CONNECTION_STMT, &yymsp[0].minor.yy0); } break; - case 311: /* cmd ::= KILL QUERY NK_STRING */ + case 313: /* cmd ::= KILL QUERY NK_STRING */ { pCxt->pRootNode = createKillQueryStmt(pCxt, &yymsp[0].minor.yy0); } break; - case 312: /* cmd ::= KILL TRANSACTION NK_INTEGER */ + case 314: /* cmd ::= KILL TRANSACTION NK_INTEGER */ { pCxt->pRootNode = createKillStmt(pCxt, QUERY_NODE_KILL_TRANSACTION_STMT, &yymsp[0].minor.yy0); } break; - case 313: /* cmd ::= BALANCE VGROUP */ + case 315: /* cmd ::= BALANCE VGROUP */ { pCxt->pRootNode = createBalanceVgroupStmt(pCxt); } break; - case 314: /* cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ + case 316: /* cmd ::= MERGE VGROUP NK_INTEGER NK_INTEGER */ { pCxt->pRootNode = createMergeVgroupStmt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0); } break; - case 315: /* cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ -{ pCxt->pRootNode = createRedistributeVgroupStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy601); } + case 317: /* cmd ::= REDISTRIBUTE VGROUP NK_INTEGER dnode_list */ +{ pCxt->pRootNode = createRedistributeVgroupStmt(pCxt, &yymsp[-1].minor.yy0, yymsp[0].minor.yy376); } break; - case 316: /* cmd ::= SPLIT VGROUP NK_INTEGER */ + case 318: /* cmd ::= SPLIT VGROUP NK_INTEGER */ { pCxt->pRootNode = createSplitVgroupStmt(pCxt, &yymsp[0].minor.yy0); } break; - case 317: /* dnode_list ::= DNODE NK_INTEGER */ -{ yymsp[-1].minor.yy601 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } - break; - case 319: /* cmd ::= DELETE FROM full_table_name where_clause_opt */ -{ pCxt->pRootNode = createDeleteStmt(pCxt, yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } - break; - case 321: /* cmd ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ -{ pCxt->pRootNode = createInsertStmt(pCxt, yymsp[-4].minor.yy600, yymsp[-2].minor.yy601, yymsp[0].minor.yy600); } - break; - case 322: /* cmd ::= INSERT INTO full_table_name query_or_subquery */ -{ pCxt->pRootNode = createInsertStmt(pCxt, yymsp[-1].minor.yy600, NULL, yymsp[0].minor.yy600); } - break; - case 323: /* literal ::= NK_INTEGER */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 324: /* literal ::= NK_FLOAT */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 325: /* literal ::= NK_STRING */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 326: /* literal ::= NK_BOOL */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 327: /* literal ::= TIMESTAMP NK_STRING */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0)); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; - break; - case 328: /* literal ::= duration_literal */ - case 338: /* signed_literal ::= signed */ yytestcase(yyruleno==338); - case 358: /* expr_or_subquery ::= expression */ yytestcase(yyruleno==358); - case 359: /* expression ::= literal */ yytestcase(yyruleno==359); - case 360: /* expression ::= pseudo_column */ yytestcase(yyruleno==360); - case 361: /* expression ::= column_reference */ yytestcase(yyruleno==361); - case 362: /* expression ::= function_expression */ yytestcase(yyruleno==362); - case 363: /* expression ::= case_when_expression */ yytestcase(yyruleno==363); - case 394: /* function_expression ::= literal_func */ yytestcase(yyruleno==394); - case 443: /* boolean_value_expression ::= boolean_primary */ yytestcase(yyruleno==443); - case 447: /* boolean_primary ::= predicate */ yytestcase(yyruleno==447); - case 449: /* common_expression ::= expr_or_subquery */ yytestcase(yyruleno==449); - case 450: /* common_expression ::= boolean_value_expression */ yytestcase(yyruleno==450); - case 453: /* table_reference_list ::= table_reference */ yytestcase(yyruleno==453); - case 455: /* table_reference ::= table_primary */ yytestcase(yyruleno==455); - case 456: /* table_reference ::= joined_table */ yytestcase(yyruleno==456); - case 460: /* table_primary ::= parenthesized_joined_table */ yytestcase(yyruleno==460); - case 516: /* query_simple ::= query_specification */ yytestcase(yyruleno==516); - case 517: /* query_simple ::= union_query_expression */ yytestcase(yyruleno==517); - case 520: /* query_simple_or_subquery ::= query_simple */ yytestcase(yyruleno==520); - case 522: /* query_or_subquery ::= query_expression */ yytestcase(yyruleno==522); -{ yylhsminor.yy600 = yymsp[0].minor.yy600; } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 329: /* literal ::= NULL */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 330: /* literal ::= NK_QUESTION */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 331: /* duration_literal ::= NK_VARIABLE */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 332: /* signed ::= NK_INTEGER */ -{ yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 333: /* signed ::= NK_PLUS NK_INTEGER */ -{ yymsp[-1].minor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } - break; - case 334: /* signed ::= NK_MINUS NK_INTEGER */ + case 319: /* dnode_list ::= DNODE NK_INTEGER */ +{ yymsp[-1].minor.yy376 = createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &yymsp[0].minor.yy0)); } + break; + case 321: /* cmd ::= DELETE FROM full_table_name where_clause_opt */ +{ pCxt->pRootNode = createDeleteStmt(pCxt, yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } + break; + case 323: /* cmd ::= INSERT INTO full_table_name NK_LP col_name_list NK_RP query_or_subquery */ +{ pCxt->pRootNode = createInsertStmt(pCxt, yymsp[-4].minor.yy476, yymsp[-2].minor.yy376, yymsp[0].minor.yy476); } + break; + case 324: /* cmd ::= INSERT INTO full_table_name query_or_subquery */ +{ pCxt->pRootNode = createInsertStmt(pCxt, yymsp[-1].minor.yy476, NULL, yymsp[0].minor.yy476); } + break; + case 325: /* literal ::= NK_INTEGER */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 326: /* literal ::= NK_FLOAT */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 327: /* literal ::= NK_STRING */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 328: /* literal ::= NK_BOOL */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 329: /* literal ::= TIMESTAMP NK_STRING */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0)); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; + break; + case 330: /* literal ::= duration_literal */ + case 340: /* signed_literal ::= signed */ yytestcase(yyruleno==340); + case 360: /* expr_or_subquery ::= expression */ yytestcase(yyruleno==360); + case 361: /* expression ::= literal */ yytestcase(yyruleno==361); + case 362: /* expression ::= pseudo_column */ yytestcase(yyruleno==362); + case 363: /* expression ::= column_reference */ yytestcase(yyruleno==363); + case 364: /* expression ::= function_expression */ yytestcase(yyruleno==364); + case 365: /* expression ::= case_when_expression */ yytestcase(yyruleno==365); + case 396: /* function_expression ::= literal_func */ yytestcase(yyruleno==396); + case 445: /* boolean_value_expression ::= boolean_primary */ yytestcase(yyruleno==445); + case 449: /* boolean_primary ::= predicate */ yytestcase(yyruleno==449); + case 451: /* common_expression ::= expr_or_subquery */ yytestcase(yyruleno==451); + case 452: /* common_expression ::= boolean_value_expression */ yytestcase(yyruleno==452); + case 455: /* table_reference_list ::= table_reference */ yytestcase(yyruleno==455); + case 457: /* table_reference ::= table_primary */ yytestcase(yyruleno==457); + case 458: /* table_reference ::= joined_table */ yytestcase(yyruleno==458); + case 462: /* table_primary ::= parenthesized_joined_table */ yytestcase(yyruleno==462); + case 518: /* query_simple ::= query_specification */ yytestcase(yyruleno==518); + case 519: /* query_simple ::= union_query_expression */ yytestcase(yyruleno==519); + case 522: /* query_simple_or_subquery ::= query_simple */ yytestcase(yyruleno==522); + case 524: /* query_or_subquery ::= query_expression */ yytestcase(yyruleno==524); +{ yylhsminor.yy476 = yymsp[0].minor.yy476; } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 331: /* literal ::= NULL */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 332: /* literal ::= NK_QUESTION */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 333: /* duration_literal ::= NK_VARIABLE */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createDurationValueNode(pCxt, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 334: /* signed ::= NK_INTEGER */ +{ yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 335: /* signed ::= NK_PLUS NK_INTEGER */ +{ yymsp[-1].minor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_UBIGINT, &yymsp[0].minor.yy0); } + break; + case 336: /* signed ::= NK_MINUS NK_INTEGER */ { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &t); + yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_BIGINT, &t); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 335: /* signed ::= NK_FLOAT */ -{ yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; + case 337: /* signed ::= NK_FLOAT */ +{ yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; - case 336: /* signed ::= NK_PLUS NK_FLOAT */ -{ yymsp[-1].minor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } + case 338: /* signed ::= NK_PLUS NK_FLOAT */ +{ yymsp[-1].minor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &yymsp[0].minor.yy0); } break; - case 337: /* signed ::= NK_MINUS NK_FLOAT */ + case 339: /* signed ::= NK_MINUS NK_FLOAT */ { SToken t = yymsp[-1].minor.yy0; t.n = (yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z; - yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &t); + yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_DOUBLE, &t); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; - break; - case 339: /* signed_literal ::= NK_STRING */ -{ yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 340: /* signed_literal ::= NK_BOOL */ -{ yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 341: /* signed_literal ::= TIMESTAMP NK_STRING */ -{ yymsp[-1].minor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } - break; - case 342: /* signed_literal ::= duration_literal */ - case 344: /* signed_literal ::= literal_func */ yytestcase(yyruleno==344); - case 414: /* star_func_para ::= expr_or_subquery */ yytestcase(yyruleno==414); - case 476: /* select_item ::= common_expression */ yytestcase(yyruleno==476); - case 486: /* partition_item ::= expr_or_subquery */ yytestcase(yyruleno==486); - case 521: /* query_simple_or_subquery ::= subquery */ yytestcase(yyruleno==521); - case 523: /* query_or_subquery ::= subquery */ yytestcase(yyruleno==523); - case 536: /* search_condition ::= common_expression */ yytestcase(yyruleno==536); -{ yylhsminor.yy600 = releaseRawExprNode(pCxt, yymsp[0].minor.yy600); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 343: /* signed_literal ::= NULL */ -{ yylhsminor.yy600 = createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 345: /* signed_literal ::= NK_QUESTION */ -{ yylhsminor.yy600 = createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 364: /* expression ::= NK_LP expression NK_RP */ - case 448: /* boolean_primary ::= NK_LP boolean_value_expression NK_RP */ yytestcase(yyruleno==448); - case 535: /* subquery ::= NK_LP subquery NK_RP */ yytestcase(yyruleno==535); -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, releaseRawExprNode(pCxt, yymsp[-1].minor.yy600)); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; - break; - case 365: /* expression ::= NK_PLUS expr_or_subquery */ + yymsp[-1].minor.yy476 = yylhsminor.yy476; + break; + case 341: /* signed_literal ::= NK_STRING */ +{ yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 342: /* signed_literal ::= NK_BOOL */ +{ yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_BOOL, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 343: /* signed_literal ::= TIMESTAMP NK_STRING */ +{ yymsp[-1].minor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_TIMESTAMP, &yymsp[0].minor.yy0); } + break; + case 344: /* signed_literal ::= duration_literal */ + case 346: /* signed_literal ::= literal_func */ yytestcase(yyruleno==346); + case 416: /* star_func_para ::= expr_or_subquery */ yytestcase(yyruleno==416); + case 478: /* select_item ::= common_expression */ yytestcase(yyruleno==478); + case 488: /* partition_item ::= expr_or_subquery */ yytestcase(yyruleno==488); + case 523: /* query_simple_or_subquery ::= subquery */ yytestcase(yyruleno==523); + case 525: /* query_or_subquery ::= subquery */ yytestcase(yyruleno==525); + case 538: /* search_condition ::= common_expression */ yytestcase(yyruleno==538); +{ yylhsminor.yy476 = releaseRawExprNode(pCxt, yymsp[0].minor.yy476); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 345: /* signed_literal ::= NULL */ +{ yylhsminor.yy476 = createValueNode(pCxt, TSDB_DATA_TYPE_NULL, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 347: /* signed_literal ::= NK_QUESTION */ +{ yylhsminor.yy476 = createPlaceholderValueNode(pCxt, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 366: /* expression ::= NK_LP expression NK_RP */ + case 450: /* boolean_primary ::= NK_LP boolean_value_expression NK_RP */ yytestcase(yyruleno==450); + case 537: /* subquery ::= NK_LP subquery NK_RP */ yytestcase(yyruleno==537); +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, releaseRawExprNode(pCxt, yymsp[-1].minor.yy476)); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; + break; + case 367: /* expression ::= NK_PLUS expr_or_subquery */ { - SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, releaseRawExprNode(pCxt, yymsp[0].minor.yy600)); + SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, releaseRawExprNode(pCxt, yymsp[0].minor.yy476)); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 366: /* expression ::= NK_MINUS expr_or_subquery */ + case 368: /* expression ::= NK_MINUS expr_or_subquery */ { - SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, createOperatorNode(pCxt, OP_TYPE_MINUS, releaseRawExprNode(pCxt, yymsp[0].minor.yy600), NULL)); + SToken t = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &t, createOperatorNode(pCxt, OP_TYPE_MINUS, releaseRawExprNode(pCxt, yymsp[0].minor.yy476), NULL)); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 367: /* expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ + case 369: /* expression ::= expr_or_subquery NK_PLUS expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_ADD, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_ADD, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 368: /* expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ + case 370: /* expression ::= expr_or_subquery NK_MINUS expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_SUB, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_SUB, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 369: /* expression ::= expr_or_subquery NK_STAR expr_or_subquery */ + case 371: /* expression ::= expr_or_subquery NK_STAR expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_MULTI, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_MULTI, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 370: /* expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ + case 372: /* expression ::= expr_or_subquery NK_SLASH expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_DIV, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_DIV, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 371: /* expression ::= expr_or_subquery NK_REM expr_or_subquery */ + case 373: /* expression ::= expr_or_subquery NK_REM expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_REM, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_REM, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 372: /* expression ::= column_reference NK_ARROW NK_STRING */ + case 374: /* expression ::= column_reference NK_ARROW NK_STRING */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_JSON_GET_VALUE, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_JSON_GET_VALUE, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[0].minor.yy0))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 373: /* expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ + case 375: /* expression ::= expr_or_subquery NK_BITAND expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 374: /* expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ + case 376: /* expression ::= expr_or_subquery NK_BITOR expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, OP_TYPE_BIT_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; - break; - case 377: /* column_reference ::= column_name */ -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy77, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy77)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 378: /* column_reference ::= table_name NK_DOT column_name */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy77, createColumnNode(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy77)); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; - break; - case 379: /* pseudo_column ::= ROWTS */ - case 380: /* pseudo_column ::= TBNAME */ yytestcase(yyruleno==380); - case 382: /* pseudo_column ::= QSTART */ yytestcase(yyruleno==382); - case 383: /* pseudo_column ::= QEND */ yytestcase(yyruleno==383); - case 384: /* pseudo_column ::= QDURATION */ yytestcase(yyruleno==384); - case 385: /* pseudo_column ::= WSTART */ yytestcase(yyruleno==385); - case 386: /* pseudo_column ::= WEND */ yytestcase(yyruleno==386); - case 387: /* pseudo_column ::= WDURATION */ yytestcase(yyruleno==387); - case 388: /* pseudo_column ::= IROWTS */ yytestcase(yyruleno==388); - case 389: /* pseudo_column ::= ISFILLED */ yytestcase(yyruleno==389); - case 390: /* pseudo_column ::= QTAGS */ yytestcase(yyruleno==390); - case 396: /* literal_func ::= NOW */ yytestcase(yyruleno==396); -{ yylhsminor.yy600 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL)); } - yymsp[0].minor.yy600 = yylhsminor.yy600; - break; - case 381: /* pseudo_column ::= table_name NK_DOT TBNAME */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[-2].minor.yy77)))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; - break; - case 391: /* function_expression ::= function_name NK_LP expression_list NK_RP */ - case 392: /* function_expression ::= star_func NK_LP star_func_para_list NK_RP */ yytestcase(yyruleno==392); -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy77, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-3].minor.yy77, yymsp[-1].minor.yy601)); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; - break; - case 393: /* function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0, createCastFunctionNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), yymsp[-1].minor.yy888)); } - yymsp[-5].minor.yy600 = yylhsminor.yy600; - break; - case 395: /* literal_func ::= noarg_func NK_LP NK_RP */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-2].minor.yy77, NULL)); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; - break; - case 410: /* star_func_para_list ::= NK_STAR */ -{ yylhsminor.yy601 = createNodeList(pCxt, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0)); } - yymsp[0].minor.yy601 = yylhsminor.yy601; - break; - case 415: /* star_func_para ::= table_name NK_DOT NK_STAR */ - case 479: /* select_item ::= table_name NK_DOT NK_STAR */ yytestcase(yyruleno==479); -{ yylhsminor.yy600 = createColumnNode(pCxt, &yymsp[-2].minor.yy77, &yymsp[0].minor.yy0); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; - break; - case 416: /* case_when_expression ::= CASE when_then_list case_when_else_opt END */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, NULL, yymsp[-2].minor.yy601, yymsp[-1].minor.yy600)); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; - break; - case 417: /* case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), yymsp[-2].minor.yy601, yymsp[-1].minor.yy600)); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; - break; - case 420: /* when_then_expr ::= WHEN common_expression THEN common_expression */ -{ yymsp[-3].minor.yy600 = createWhenThenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600)); } - break; - case 422: /* case_when_else_opt ::= ELSE common_expression */ -{ yymsp[-1].minor.yy600 = releaseRawExprNode(pCxt, yymsp[0].minor.yy600); } - break; - case 423: /* predicate ::= expr_or_subquery compare_op expr_or_subquery */ - case 428: /* predicate ::= expr_or_subquery in_op in_predicate_value */ yytestcase(yyruleno==428); + yymsp[-2].minor.yy476 = yylhsminor.yy476; + break; + case 379: /* column_reference ::= column_name */ +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy701, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy701)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 380: /* column_reference ::= table_name NK_DOT column_name */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy701, createColumnNode(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy701)); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; + break; + case 381: /* pseudo_column ::= ROWTS */ + case 382: /* pseudo_column ::= TBNAME */ yytestcase(yyruleno==382); + case 384: /* pseudo_column ::= QSTART */ yytestcase(yyruleno==384); + case 385: /* pseudo_column ::= QEND */ yytestcase(yyruleno==385); + case 386: /* pseudo_column ::= QDURATION */ yytestcase(yyruleno==386); + case 387: /* pseudo_column ::= WSTART */ yytestcase(yyruleno==387); + case 388: /* pseudo_column ::= WEND */ yytestcase(yyruleno==388); + case 389: /* pseudo_column ::= WDURATION */ yytestcase(yyruleno==389); + case 390: /* pseudo_column ::= IROWTS */ yytestcase(yyruleno==390); + case 391: /* pseudo_column ::= ISFILLED */ yytestcase(yyruleno==391); + case 392: /* pseudo_column ::= QTAGS */ yytestcase(yyruleno==392); + case 398: /* literal_func ::= NOW */ yytestcase(yyruleno==398); +{ yylhsminor.yy476 = createRawExprNode(pCxt, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, NULL)); } + yymsp[0].minor.yy476 = yylhsminor.yy476; + break; + case 383: /* pseudo_column ::= table_name NK_DOT TBNAME */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[0].minor.yy0, createNodeList(pCxt, createValueNode(pCxt, TSDB_DATA_TYPE_BINARY, &yymsp[-2].minor.yy701)))); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; + break; + case 393: /* function_expression ::= function_name NK_LP expression_list NK_RP */ + case 394: /* function_expression ::= star_func NK_LP star_func_para_list NK_RP */ yytestcase(yyruleno==394); +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy701, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-3].minor.yy701, yymsp[-1].minor.yy376)); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; + break; + case 395: /* function_expression ::= CAST NK_LP expr_or_subquery AS type_name NK_RP */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0, createCastFunctionNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), yymsp[-1].minor.yy532)); } + yymsp[-5].minor.yy476 = yylhsminor.yy476; + break; + case 397: /* literal_func ::= noarg_func NK_LP NK_RP */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy0, createFunctionNode(pCxt, &yymsp[-2].minor.yy701, NULL)); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; + break; + case 412: /* star_func_para_list ::= NK_STAR */ +{ yylhsminor.yy376 = createNodeList(pCxt, createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0)); } + yymsp[0].minor.yy376 = yylhsminor.yy376; + break; + case 417: /* star_func_para ::= table_name NK_DOT NK_STAR */ + case 481: /* select_item ::= table_name NK_DOT NK_STAR */ yytestcase(yyruleno==481); +{ yylhsminor.yy476 = createColumnNode(pCxt, &yymsp[-2].minor.yy701, &yymsp[0].minor.yy0); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; + break; + case 418: /* case_when_expression ::= CASE when_then_list case_when_else_opt END */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, NULL, yymsp[-2].minor.yy376, yymsp[-1].minor.yy476)); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; + break; + case 419: /* case_when_expression ::= CASE common_expression when_then_list case_when_else_opt END */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0, createCaseWhenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), yymsp[-2].minor.yy376, yymsp[-1].minor.yy476)); } + yymsp[-4].minor.yy476 = yylhsminor.yy476; + break; + case 422: /* when_then_expr ::= WHEN common_expression THEN common_expression */ +{ yymsp[-3].minor.yy476 = createWhenThenNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476)); } + break; + case 424: /* case_when_else_opt ::= ELSE common_expression */ +{ yymsp[-1].minor.yy476 = releaseRawExprNode(pCxt, yymsp[0].minor.yy476); } + break; + case 425: /* predicate ::= expr_or_subquery compare_op expr_or_subquery */ + case 430: /* predicate ::= expr_or_subquery in_op in_predicate_value */ yytestcase(yyruleno==430); { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, yymsp[-1].minor.yy666, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createOperatorNode(pCxt, yymsp[-1].minor.yy128, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 424: /* predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ + case 426: /* predicate ::= expr_or_subquery BETWEEN expr_or_subquery AND expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-4].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-4].minor.yy600), releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-4].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-4].minor.yy476), releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-4].minor.yy600 = yylhsminor.yy600; + yymsp[-4].minor.yy476 = yylhsminor.yy476; break; - case 425: /* predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ + case 427: /* predicate ::= expr_or_subquery NOT BETWEEN expr_or_subquery AND expr_or_subquery */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-5].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createNotBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy600), releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-5].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createNotBetweenAnd(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy476), releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-5].minor.yy600 = yylhsminor.yy600; + yymsp[-5].minor.yy476 = yylhsminor.yy476; break; - case 426: /* predicate ::= expr_or_subquery IS NULL */ + case 428: /* predicate ::= expr_or_subquery IS NULL */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NULL, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), NULL)); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NULL, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), NULL)); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 427: /* predicate ::= expr_or_subquery IS NOT NULL */ + case 429: /* predicate ::= expr_or_subquery IS NOT NULL */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-3].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NOT_NULL, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), NULL)); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-3].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &yymsp[0].minor.yy0, createOperatorNode(pCxt, OP_TYPE_IS_NOT_NULL, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), NULL)); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 429: /* compare_op ::= NK_LT */ -{ yymsp[0].minor.yy666 = OP_TYPE_LOWER_THAN; } + case 431: /* compare_op ::= NK_LT */ +{ yymsp[0].minor.yy128 = OP_TYPE_LOWER_THAN; } break; - case 430: /* compare_op ::= NK_GT */ -{ yymsp[0].minor.yy666 = OP_TYPE_GREATER_THAN; } + case 432: /* compare_op ::= NK_GT */ +{ yymsp[0].minor.yy128 = OP_TYPE_GREATER_THAN; } break; - case 431: /* compare_op ::= NK_LE */ -{ yymsp[0].minor.yy666 = OP_TYPE_LOWER_EQUAL; } + case 433: /* compare_op ::= NK_LE */ +{ yymsp[0].minor.yy128 = OP_TYPE_LOWER_EQUAL; } break; - case 432: /* compare_op ::= NK_GE */ -{ yymsp[0].minor.yy666 = OP_TYPE_GREATER_EQUAL; } + case 434: /* compare_op ::= NK_GE */ +{ yymsp[0].minor.yy128 = OP_TYPE_GREATER_EQUAL; } break; - case 433: /* compare_op ::= NK_NE */ -{ yymsp[0].minor.yy666 = OP_TYPE_NOT_EQUAL; } + case 435: /* compare_op ::= NK_NE */ +{ yymsp[0].minor.yy128 = OP_TYPE_NOT_EQUAL; } break; - case 434: /* compare_op ::= NK_EQ */ -{ yymsp[0].minor.yy666 = OP_TYPE_EQUAL; } + case 436: /* compare_op ::= NK_EQ */ +{ yymsp[0].minor.yy128 = OP_TYPE_EQUAL; } break; - case 435: /* compare_op ::= LIKE */ -{ yymsp[0].minor.yy666 = OP_TYPE_LIKE; } + case 437: /* compare_op ::= LIKE */ +{ yymsp[0].minor.yy128 = OP_TYPE_LIKE; } break; - case 436: /* compare_op ::= NOT LIKE */ -{ yymsp[-1].minor.yy666 = OP_TYPE_NOT_LIKE; } + case 438: /* compare_op ::= NOT LIKE */ +{ yymsp[-1].minor.yy128 = OP_TYPE_NOT_LIKE; } break; - case 437: /* compare_op ::= MATCH */ -{ yymsp[0].minor.yy666 = OP_TYPE_MATCH; } + case 439: /* compare_op ::= MATCH */ +{ yymsp[0].minor.yy128 = OP_TYPE_MATCH; } break; - case 438: /* compare_op ::= NMATCH */ -{ yymsp[0].minor.yy666 = OP_TYPE_NMATCH; } + case 440: /* compare_op ::= NMATCH */ +{ yymsp[0].minor.yy128 = OP_TYPE_NMATCH; } break; - case 439: /* compare_op ::= CONTAINS */ -{ yymsp[0].minor.yy666 = OP_TYPE_JSON_CONTAINS; } + case 441: /* compare_op ::= CONTAINS */ +{ yymsp[0].minor.yy128 = OP_TYPE_JSON_CONTAINS; } break; - case 440: /* in_op ::= IN */ -{ yymsp[0].minor.yy666 = OP_TYPE_IN; } + case 442: /* in_op ::= IN */ +{ yymsp[0].minor.yy128 = OP_TYPE_IN; } break; - case 441: /* in_op ::= NOT IN */ -{ yymsp[-1].minor.yy666 = OP_TYPE_NOT_IN; } + case 443: /* in_op ::= NOT IN */ +{ yymsp[-1].minor.yy128 = OP_TYPE_NOT_IN; } break; - case 442: /* in_predicate_value ::= NK_LP literal_list NK_RP */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, createNodeListNode(pCxt, yymsp[-1].minor.yy601)); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 444: /* in_predicate_value ::= NK_LP literal_list NK_RP */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, createNodeListNode(pCxt, yymsp[-1].minor.yy376)); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 444: /* boolean_value_expression ::= NOT boolean_primary */ + case 446: /* boolean_value_expression ::= NOT boolean_primary */ { - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_NOT, releaseRawExprNode(pCxt, yymsp[0].minor.yy600), NULL)); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-1].minor.yy0, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_NOT, releaseRawExprNode(pCxt, yymsp[0].minor.yy476), NULL)); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 445: /* boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ + case 447: /* boolean_value_expression ::= boolean_value_expression OR boolean_value_expression */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_OR, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 446: /* boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ + case 448: /* boolean_value_expression ::= boolean_value_expression AND boolean_value_expression */ { - SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy600); - SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy600); - yylhsminor.yy600 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); + SToken s = getTokenFromRawExprNode(pCxt, yymsp[-2].minor.yy476); + SToken e = getTokenFromRawExprNode(pCxt, yymsp[0].minor.yy476); + yylhsminor.yy476 = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_AND, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 452: /* from_clause_opt ::= FROM table_reference_list */ - case 481: /* where_clause_opt ::= WHERE search_condition */ yytestcase(yyruleno==481); - case 510: /* having_clause_opt ::= HAVING search_condition */ yytestcase(yyruleno==510); -{ yymsp[-1].minor.yy600 = yymsp[0].minor.yy600; } + case 454: /* from_clause_opt ::= FROM table_reference_list */ + case 483: /* where_clause_opt ::= WHERE search_condition */ yytestcase(yyruleno==483); + case 512: /* having_clause_opt ::= HAVING search_condition */ yytestcase(yyruleno==512); +{ yymsp[-1].minor.yy476 = yymsp[0].minor.yy476; } break; - case 454: /* table_reference_list ::= table_reference_list NK_COMMA table_reference */ -{ yylhsminor.yy600 = createJoinTableNode(pCxt, JOIN_TYPE_INNER, yymsp[-2].minor.yy600, yymsp[0].minor.yy600, NULL); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 456: /* table_reference_list ::= table_reference_list NK_COMMA table_reference */ +{ yylhsminor.yy476 = createJoinTableNode(pCxt, JOIN_TYPE_INNER, yymsp[-2].minor.yy476, yymsp[0].minor.yy476, NULL); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 457: /* table_primary ::= table_name alias_opt */ -{ yylhsminor.yy600 = createRealTableNode(pCxt, NULL, &yymsp[-1].minor.yy77, &yymsp[0].minor.yy77); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + case 459: /* table_primary ::= table_name alias_opt */ +{ yylhsminor.yy476 = createRealTableNode(pCxt, NULL, &yymsp[-1].minor.yy701, &yymsp[0].minor.yy701); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 458: /* table_primary ::= db_name NK_DOT table_name alias_opt */ -{ yylhsminor.yy600 = createRealTableNode(pCxt, &yymsp[-3].minor.yy77, &yymsp[-1].minor.yy77, &yymsp[0].minor.yy77); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + case 460: /* table_primary ::= db_name NK_DOT table_name alias_opt */ +{ yylhsminor.yy476 = createRealTableNode(pCxt, &yymsp[-3].minor.yy701, &yymsp[-1].minor.yy701, &yymsp[0].minor.yy701); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 459: /* table_primary ::= subquery alias_opt */ -{ yylhsminor.yy600 = createTempTableNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy600), &yymsp[0].minor.yy77); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + case 461: /* table_primary ::= subquery alias_opt */ +{ yylhsminor.yy476 = createTempTableNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy476), &yymsp[0].minor.yy701); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 461: /* alias_opt ::= */ -{ yymsp[1].minor.yy77 = nil_token; } + case 463: /* alias_opt ::= */ +{ yymsp[1].minor.yy701 = nil_token; } break; - case 463: /* alias_opt ::= AS table_alias */ -{ yymsp[-1].minor.yy77 = yymsp[0].minor.yy77; } + case 465: /* alias_opt ::= AS table_alias */ +{ yymsp[-1].minor.yy701 = yymsp[0].minor.yy701; } break; - case 464: /* parenthesized_joined_table ::= NK_LP joined_table NK_RP */ - case 465: /* parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ yytestcase(yyruleno==465); -{ yymsp[-2].minor.yy600 = yymsp[-1].minor.yy600; } + case 466: /* parenthesized_joined_table ::= NK_LP joined_table NK_RP */ + case 467: /* parenthesized_joined_table ::= NK_LP parenthesized_joined_table NK_RP */ yytestcase(yyruleno==467); +{ yymsp[-2].minor.yy476 = yymsp[-1].minor.yy476; } break; - case 466: /* joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ -{ yylhsminor.yy600 = createJoinTableNode(pCxt, yymsp[-4].minor.yy560, yymsp[-5].minor.yy600, yymsp[-2].minor.yy600, yymsp[0].minor.yy600); } - yymsp[-5].minor.yy600 = yylhsminor.yy600; + case 468: /* joined_table ::= table_reference join_type JOIN table_reference ON search_condition */ +{ yylhsminor.yy476 = createJoinTableNode(pCxt, yymsp[-4].minor.yy288, yymsp[-5].minor.yy476, yymsp[-2].minor.yy476, yymsp[0].minor.yy476); } + yymsp[-5].minor.yy476 = yylhsminor.yy476; break; - case 467: /* join_type ::= */ -{ yymsp[1].minor.yy560 = JOIN_TYPE_INNER; } + case 469: /* join_type ::= */ +{ yymsp[1].minor.yy288 = JOIN_TYPE_INNER; } break; - case 468: /* join_type ::= INNER */ -{ yymsp[0].minor.yy560 = JOIN_TYPE_INNER; } + case 470: /* join_type ::= INNER */ +{ yymsp[0].minor.yy288 = JOIN_TYPE_INNER; } break; - case 469: /* query_specification ::= SELECT set_quantifier_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 */ + case 471: /* query_specification ::= SELECT set_quantifier_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 */ { - yymsp[-11].minor.yy600 = createSelectStmt(pCxt, yymsp[-10].minor.yy841, yymsp[-9].minor.yy601, yymsp[-8].minor.yy600); - yymsp[-11].minor.yy600 = addWhereClause(pCxt, yymsp[-11].minor.yy600, yymsp[-7].minor.yy600); - yymsp[-11].minor.yy600 = addPartitionByClause(pCxt, yymsp[-11].minor.yy600, yymsp[-6].minor.yy601); - yymsp[-11].minor.yy600 = addWindowClauseClause(pCxt, yymsp[-11].minor.yy600, yymsp[-2].minor.yy600); - yymsp[-11].minor.yy600 = addGroupByClause(pCxt, yymsp[-11].minor.yy600, yymsp[-1].minor.yy601); - yymsp[-11].minor.yy600 = addHavingClause(pCxt, yymsp[-11].minor.yy600, yymsp[0].minor.yy600); - yymsp[-11].minor.yy600 = addRangeClause(pCxt, yymsp[-11].minor.yy600, yymsp[-5].minor.yy600); - yymsp[-11].minor.yy600 = addEveryClause(pCxt, yymsp[-11].minor.yy600, yymsp[-4].minor.yy600); - yymsp[-11].minor.yy600 = addFillClause(pCxt, yymsp[-11].minor.yy600, yymsp[-3].minor.yy600); + yymsp[-11].minor.yy476 = createSelectStmt(pCxt, yymsp[-10].minor.yy845, yymsp[-9].minor.yy376, yymsp[-8].minor.yy476); + yymsp[-11].minor.yy476 = addWhereClause(pCxt, yymsp[-11].minor.yy476, yymsp[-7].minor.yy476); + yymsp[-11].minor.yy476 = addPartitionByClause(pCxt, yymsp[-11].minor.yy476, yymsp[-6].minor.yy376); + yymsp[-11].minor.yy476 = addWindowClauseClause(pCxt, yymsp[-11].minor.yy476, yymsp[-2].minor.yy476); + yymsp[-11].minor.yy476 = addGroupByClause(pCxt, yymsp[-11].minor.yy476, yymsp[-1].minor.yy376); + yymsp[-11].minor.yy476 = addHavingClause(pCxt, yymsp[-11].minor.yy476, yymsp[0].minor.yy476); + yymsp[-11].minor.yy476 = addRangeClause(pCxt, yymsp[-11].minor.yy476, yymsp[-5].minor.yy476); + yymsp[-11].minor.yy476 = addEveryClause(pCxt, yymsp[-11].minor.yy476, yymsp[-4].minor.yy476); + yymsp[-11].minor.yy476 = addFillClause(pCxt, yymsp[-11].minor.yy476, yymsp[-3].minor.yy476); } break; - case 472: /* set_quantifier_opt ::= ALL */ -{ yymsp[0].minor.yy841 = false; } + case 474: /* set_quantifier_opt ::= ALL */ +{ yymsp[0].minor.yy845 = false; } break; - case 475: /* select_item ::= NK_STAR */ -{ yylhsminor.yy600 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0); } - yymsp[0].minor.yy600 = yylhsminor.yy600; + case 477: /* select_item ::= NK_STAR */ +{ yylhsminor.yy476 = createColumnNode(pCxt, NULL, &yymsp[0].minor.yy0); } + yymsp[0].minor.yy476 = yylhsminor.yy476; break; - case 477: /* select_item ::= common_expression column_alias */ - case 487: /* partition_item ::= expr_or_subquery column_alias */ yytestcase(yyruleno==487); -{ yylhsminor.yy600 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy600), &yymsp[0].minor.yy77); } - yymsp[-1].minor.yy600 = yylhsminor.yy600; + case 479: /* select_item ::= common_expression column_alias */ + case 489: /* partition_item ::= expr_or_subquery column_alias */ yytestcase(yyruleno==489); +{ yylhsminor.yy476 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy476), &yymsp[0].minor.yy701); } + yymsp[-1].minor.yy476 = yylhsminor.yy476; break; - case 478: /* select_item ::= common_expression AS column_alias */ - case 488: /* partition_item ::= expr_or_subquery AS column_alias */ yytestcase(yyruleno==488); -{ yylhsminor.yy600 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), &yymsp[0].minor.yy77); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 480: /* select_item ::= common_expression AS column_alias */ + case 490: /* partition_item ::= expr_or_subquery AS column_alias */ yytestcase(yyruleno==490); +{ yylhsminor.yy476 = setProjectionAlias(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), &yymsp[0].minor.yy701); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 483: /* partition_by_clause_opt ::= PARTITION BY partition_list */ - case 506: /* group_by_clause_opt ::= GROUP BY group_by_list */ yytestcase(yyruleno==506); - case 525: /* order_by_clause_opt ::= ORDER BY sort_specification_list */ yytestcase(yyruleno==525); -{ yymsp[-2].minor.yy601 = yymsp[0].minor.yy601; } + case 485: /* partition_by_clause_opt ::= PARTITION BY partition_list */ + case 508: /* group_by_clause_opt ::= GROUP BY group_by_list */ yytestcase(yyruleno==508); + case 527: /* order_by_clause_opt ::= ORDER BY sort_specification_list */ yytestcase(yyruleno==527); +{ yymsp[-2].minor.yy376 = yymsp[0].minor.yy376; } break; - case 490: /* twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ -{ yymsp[-5].minor.yy600 = createSessionWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), releaseRawExprNode(pCxt, yymsp[-1].minor.yy600)); } + case 492: /* twindow_clause_opt ::= SESSION NK_LP column_reference NK_COMMA duration_literal NK_RP */ +{ yymsp[-5].minor.yy476 = createSessionWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), releaseRawExprNode(pCxt, yymsp[-1].minor.yy476)); } break; - case 491: /* twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ -{ yymsp[-3].minor.yy600 = createStateWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy600)); } + case 493: /* twindow_clause_opt ::= STATE_WINDOW NK_LP expr_or_subquery NK_RP */ +{ yymsp[-3].minor.yy476 = createStateWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-1].minor.yy476)); } break; - case 492: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ -{ yymsp[-5].minor.yy600 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), NULL, yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } + case 494: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_RP sliding_opt fill_opt */ +{ yymsp[-5].minor.yy476 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), NULL, yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } break; - case 493: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ -{ yymsp[-7].minor.yy600 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy600), releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), yymsp[-1].minor.yy600, yymsp[0].minor.yy600); } + case 495: /* twindow_clause_opt ::= INTERVAL NK_LP duration_literal NK_COMMA duration_literal NK_RP sliding_opt fill_opt */ +{ yymsp[-7].minor.yy476 = createIntervalWindowNode(pCxt, releaseRawExprNode(pCxt, yymsp[-5].minor.yy476), releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), yymsp[-1].minor.yy476, yymsp[0].minor.yy476); } break; - case 494: /* twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ -{ yymsp[-6].minor.yy600 = createEventWindowNode(pCxt, yymsp[-3].minor.yy600, yymsp[0].minor.yy600); } + case 496: /* twindow_clause_opt ::= EVENT_WINDOW START WITH search_condition END WITH search_condition */ +{ yymsp[-6].minor.yy476 = createEventWindowNode(pCxt, yymsp[-3].minor.yy476, yymsp[0].minor.yy476); } break; - case 498: /* fill_opt ::= FILL NK_LP fill_mode NK_RP */ -{ yymsp[-3].minor.yy600 = createFillNode(pCxt, yymsp[-1].minor.yy798, NULL); } + case 500: /* fill_opt ::= FILL NK_LP fill_mode NK_RP */ +{ yymsp[-3].minor.yy476 = createFillNode(pCxt, yymsp[-1].minor.yy690, NULL); } break; - case 499: /* fill_opt ::= FILL NK_LP VALUE NK_COMMA literal_list NK_RP */ -{ yymsp[-5].minor.yy600 = createFillNode(pCxt, FILL_MODE_VALUE, createNodeListNode(pCxt, yymsp[-1].minor.yy601)); } + case 501: /* fill_opt ::= FILL NK_LP VALUE NK_COMMA literal_list NK_RP */ +{ yymsp[-5].minor.yy476 = createFillNode(pCxt, FILL_MODE_VALUE, createNodeListNode(pCxt, yymsp[-1].minor.yy376)); } break; - case 500: /* fill_mode ::= NONE */ -{ yymsp[0].minor.yy798 = FILL_MODE_NONE; } + case 502: /* fill_mode ::= NONE */ +{ yymsp[0].minor.yy690 = FILL_MODE_NONE; } break; - case 501: /* fill_mode ::= PREV */ -{ yymsp[0].minor.yy798 = FILL_MODE_PREV; } + case 503: /* fill_mode ::= PREV */ +{ yymsp[0].minor.yy690 = FILL_MODE_PREV; } break; - case 502: /* fill_mode ::= NULL */ -{ yymsp[0].minor.yy798 = FILL_MODE_NULL; } + case 504: /* fill_mode ::= NULL */ +{ yymsp[0].minor.yy690 = FILL_MODE_NULL; } break; - case 503: /* fill_mode ::= LINEAR */ -{ yymsp[0].minor.yy798 = FILL_MODE_LINEAR; } + case 505: /* fill_mode ::= LINEAR */ +{ yymsp[0].minor.yy690 = FILL_MODE_LINEAR; } break; - case 504: /* fill_mode ::= NEXT */ -{ yymsp[0].minor.yy798 = FILL_MODE_NEXT; } + case 506: /* fill_mode ::= NEXT */ +{ yymsp[0].minor.yy690 = FILL_MODE_NEXT; } break; - case 507: /* group_by_list ::= expr_or_subquery */ -{ yylhsminor.yy601 = createNodeList(pCxt, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); } - yymsp[0].minor.yy601 = yylhsminor.yy601; + case 509: /* group_by_list ::= expr_or_subquery */ +{ yylhsminor.yy376 = createNodeList(pCxt, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } + yymsp[0].minor.yy376 = yylhsminor.yy376; break; - case 508: /* group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ -{ yylhsminor.yy601 = addNodeToList(pCxt, yymsp[-2].minor.yy601, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy600))); } - yymsp[-2].minor.yy601 = yylhsminor.yy601; + case 510: /* group_by_list ::= group_by_list NK_COMMA expr_or_subquery */ +{ yylhsminor.yy376 = addNodeToList(pCxt, yymsp[-2].minor.yy376, createGroupingSetNode(pCxt, releaseRawExprNode(pCxt, yymsp[0].minor.yy476))); } + yymsp[-2].minor.yy376 = yylhsminor.yy376; break; - case 512: /* range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ -{ yymsp[-5].minor.yy600 = createInterpTimeRange(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy600), releaseRawExprNode(pCxt, yymsp[-1].minor.yy600)); } + case 514: /* range_opt ::= RANGE NK_LP expr_or_subquery NK_COMMA expr_or_subquery NK_RP */ +{ yymsp[-5].minor.yy476 = createInterpTimeRange(pCxt, releaseRawExprNode(pCxt, yymsp[-3].minor.yy476), releaseRawExprNode(pCxt, yymsp[-1].minor.yy476)); } break; - case 515: /* query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ + case 517: /* query_expression ::= query_simple order_by_clause_opt slimit_clause_opt limit_clause_opt */ { - yylhsminor.yy600 = addOrderByClause(pCxt, yymsp[-3].minor.yy600, yymsp[-2].minor.yy601); - yylhsminor.yy600 = addSlimitClause(pCxt, yylhsminor.yy600, yymsp[-1].minor.yy600); - yylhsminor.yy600 = addLimitClause(pCxt, yylhsminor.yy600, yymsp[0].minor.yy600); + yylhsminor.yy476 = addOrderByClause(pCxt, yymsp[-3].minor.yy476, yymsp[-2].minor.yy376); + yylhsminor.yy476 = addSlimitClause(pCxt, yylhsminor.yy476, yymsp[-1].minor.yy476); + yylhsminor.yy476 = addLimitClause(pCxt, yylhsminor.yy476, yymsp[0].minor.yy476); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 518: /* union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ -{ yylhsminor.yy600 = createSetOperator(pCxt, SET_OP_TYPE_UNION_ALL, yymsp[-3].minor.yy600, yymsp[0].minor.yy600); } - yymsp[-3].minor.yy600 = yylhsminor.yy600; + case 520: /* union_query_expression ::= query_simple_or_subquery UNION ALL query_simple_or_subquery */ +{ yylhsminor.yy476 = createSetOperator(pCxt, SET_OP_TYPE_UNION_ALL, yymsp[-3].minor.yy476, yymsp[0].minor.yy476); } + yymsp[-3].minor.yy476 = yylhsminor.yy476; break; - case 519: /* union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ -{ yylhsminor.yy600 = createSetOperator(pCxt, SET_OP_TYPE_UNION, yymsp[-2].minor.yy600, yymsp[0].minor.yy600); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 521: /* union_query_expression ::= query_simple_or_subquery UNION query_simple_or_subquery */ +{ yylhsminor.yy476 = createSetOperator(pCxt, SET_OP_TYPE_UNION, yymsp[-2].minor.yy476, yymsp[0].minor.yy476); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 527: /* slimit_clause_opt ::= SLIMIT NK_INTEGER */ - case 531: /* limit_clause_opt ::= LIMIT NK_INTEGER */ yytestcase(yyruleno==531); -{ yymsp[-1].minor.yy600 = createLimitNode(pCxt, &yymsp[0].minor.yy0, NULL); } + case 529: /* slimit_clause_opt ::= SLIMIT NK_INTEGER */ + case 533: /* limit_clause_opt ::= LIMIT NK_INTEGER */ yytestcase(yyruleno==533); +{ yymsp[-1].minor.yy476 = createLimitNode(pCxt, &yymsp[0].minor.yy0, NULL); } break; - case 528: /* slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ - case 532: /* limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ yytestcase(yyruleno==532); -{ yymsp[-3].minor.yy600 = createLimitNode(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); } + case 530: /* slimit_clause_opt ::= SLIMIT NK_INTEGER SOFFSET NK_INTEGER */ + case 534: /* limit_clause_opt ::= LIMIT NK_INTEGER OFFSET NK_INTEGER */ yytestcase(yyruleno==534); +{ yymsp[-3].minor.yy476 = createLimitNode(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); } break; - case 529: /* slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ - case 533: /* limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ yytestcase(yyruleno==533); -{ yymsp[-3].minor.yy600 = createLimitNode(pCxt, &yymsp[0].minor.yy0, &yymsp[-2].minor.yy0); } + case 531: /* slimit_clause_opt ::= SLIMIT NK_INTEGER NK_COMMA NK_INTEGER */ + case 535: /* limit_clause_opt ::= LIMIT NK_INTEGER NK_COMMA NK_INTEGER */ yytestcase(yyruleno==535); +{ yymsp[-3].minor.yy476 = createLimitNode(pCxt, &yymsp[0].minor.yy0, &yymsp[-2].minor.yy0); } break; - case 534: /* subquery ::= NK_LP query_expression NK_RP */ -{ yylhsminor.yy600 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, yymsp[-1].minor.yy600); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 536: /* subquery ::= NK_LP query_expression NK_RP */ +{ yylhsminor.yy476 = createRawExprNodeExt(pCxt, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0, yymsp[-1].minor.yy476); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 539: /* sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ -{ yylhsminor.yy600 = createOrderByExprNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy600), yymsp[-1].minor.yy32, yymsp[0].minor.yy385); } - yymsp[-2].minor.yy600 = yylhsminor.yy600; + case 541: /* sort_specification ::= expr_or_subquery ordering_specification_opt null_ordering_opt */ +{ yylhsminor.yy476 = createOrderByExprNode(pCxt, releaseRawExprNode(pCxt, yymsp[-2].minor.yy476), yymsp[-1].minor.yy554, yymsp[0].minor.yy697); } + yymsp[-2].minor.yy476 = yylhsminor.yy476; break; - case 540: /* ordering_specification_opt ::= */ -{ yymsp[1].minor.yy32 = ORDER_ASC; } + case 542: /* ordering_specification_opt ::= */ +{ yymsp[1].minor.yy554 = ORDER_ASC; } break; - case 541: /* ordering_specification_opt ::= ASC */ -{ yymsp[0].minor.yy32 = ORDER_ASC; } + case 543: /* ordering_specification_opt ::= ASC */ +{ yymsp[0].minor.yy554 = ORDER_ASC; } break; - case 542: /* ordering_specification_opt ::= DESC */ -{ yymsp[0].minor.yy32 = ORDER_DESC; } + case 544: /* ordering_specification_opt ::= DESC */ +{ yymsp[0].minor.yy554 = ORDER_DESC; } break; - case 543: /* null_ordering_opt ::= */ -{ yymsp[1].minor.yy385 = NULL_ORDER_DEFAULT; } + case 545: /* null_ordering_opt ::= */ +{ yymsp[1].minor.yy697 = NULL_ORDER_DEFAULT; } break; - case 544: /* null_ordering_opt ::= NULLS FIRST */ -{ yymsp[-1].minor.yy385 = NULL_ORDER_FIRST; } + case 546: /* null_ordering_opt ::= NULLS FIRST */ +{ yymsp[-1].minor.yy697 = NULL_ORDER_FIRST; } break; - case 545: /* null_ordering_opt ::= NULLS LAST */ -{ yymsp[-1].minor.yy385 = NULL_ORDER_LAST; } + case 547: /* null_ordering_opt ::= NULLS LAST */ +{ yymsp[-1].minor.yy697 = NULL_ORDER_LAST; } break; default: break; /********** End reduce actions ************************************************/ }; - assert( yyruleno \\G;", 0, 0, NULL}, {"show connections;", 0, 0, NULL}, {"show cluster;", 0, 0, NULL}, + {"show cluster alive;", 0, 0, NULL}, {"show databases;", 0, 0, NULL}, {"show dnodes;", 0, 0, NULL}, {"show dnode variables;", 0, 0, NULL}, @@ -425,6 +426,7 @@ void showHelp() { show create table ;\n\ show connections;\n\ show cluster;\n\ + show cluster alive;\n\ show databases;\n\ show dnodes;\n\ show dnode variables;\n\