dt-sql-parser
Version:
SQL Parsers for BigData, built with antlr4
44,895 lines • 1.73 MB
JavaScript
// Generated from dt-sql-parser/src/grammar/hive/HiveSqlParser.g4 by ANTLR 4.13.1
// @ts-nocheck
import * as antlr from "antlr4ng";
import { SQLParserBase } from '../SQLParserBase';
export class HiveSqlParser extends SQLParserBase {
get grammarFileName() { return "HiveSqlParser.g4"; }
get literalNames() { return HiveSqlParser.literalNames; }
get symbolicNames() { return HiveSqlParser.symbolicNames; }
get ruleNames() { return HiveSqlParser.ruleNames; }
get serializedATN() { return HiveSqlParser._serializedATN; }
createFailedPredicateException(predicate, message) {
return new antlr.FailedPredicateException(this, predicate, message);
}
constructor(input) {
super(input);
this.interpreter = new antlr.ParserATNSimulator(this, HiveSqlParser._ATN, HiveSqlParser.decisionsToDFA, new antlr.PredictionContextCache());
}
program() {
let localContext = new ProgramContext(this.context, this.state);
this.enterRule(localContext, 0, HiveSqlParser.RULE_program);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 699;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 1538) !== 0) || _la === 48 || _la === 58 || ((((_la - 86)) & ~0x1F) === 0 && ((1 << (_la - 86)) & 540050201) !== 0) || ((((_la - 119)) & ~0x1F) === 0 && ((1 << (_la - 119)) & 17825795) !== 0) || ((((_la - 153)) & ~0x1F) === 0 && ((1 << (_la - 153)) & 8388865) !== 0) || ((((_la - 187)) & ~0x1F) === 0 && ((1 << (_la - 187)) & 33622025) !== 0) || ((((_la - 249)) & ~0x1F) === 0 && ((1 << (_la - 249)) & 810024961) !== 0) || ((((_la - 283)) & ~0x1F) === 0 && ((1 << (_la - 283)) & 35717185) !== 0) || _la === 318 || ((((_la - 351)) & ~0x1F) === 0 && ((1 << (_la - 351)) & 8537089) !== 0) || _la === 387 || _la === 399) {
{
{
this.state = 696;
this.statement();
}
}
this.state = 701;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 702;
this.match(HiveSqlParser.EOF);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
statement() {
let localContext = new StatementContext(this.context, this.state);
this.enterRule(localContext, 2, HiveSqlParser.RULE_statement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 706;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_EXPLAIN:
{
this.state = 704;
this.explainStatement();
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.LPAREN:
{
this.state = 705;
this.execStatement();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 709;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 2, this.context)) {
case 1:
{
this.state = 708;
this.match(HiveSqlParser.SEMICOLON);
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
explainStatement() {
let localContext = new ExplainStatementContext(this.context, this.state);
this.enterRule(localContext, 4, HiveSqlParser.RULE_explainStatement);
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 711;
this.match(HiveSqlParser.KW_EXPLAIN);
this.state = 721;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AUTHORIZATION:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_DDL:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXTENDED:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.LPAREN:
{
this.state = 715;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 3, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 712;
this.explainOption();
}
}
}
this.state = 717;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 3, this.context);
}
this.state = 718;
this.execStatement();
}
break;
case HiveSqlParser.KW_REWRITE:
{
this.state = 719;
this.match(HiveSqlParser.KW_REWRITE);
this.state = 720;
this.queryStatementExpression();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
explainOption() {
let localContext = new ExplainOptionContext(this.context, this.state);
this.enterRule(localContext, 6, HiveSqlParser.RULE_explainOption);
let _la;
try {
this.state = 745;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_EXTENDED:
this.enterOuterAlt(localContext, 1);
{
this.state = 723;
this.match(HiveSqlParser.KW_EXTENDED);
}
break;
case HiveSqlParser.KW_FORMATTED:
this.enterOuterAlt(localContext, 2);
{
this.state = 724;
this.match(HiveSqlParser.KW_FORMATTED);
}
break;
case HiveSqlParser.KW_DEPENDENCY:
this.enterOuterAlt(localContext, 3);
{
this.state = 725;
this.match(HiveSqlParser.KW_DEPENDENCY);
}
break;
case HiveSqlParser.KW_CBO:
this.enterOuterAlt(localContext, 4);
{
this.state = 726;
this.match(HiveSqlParser.KW_CBO);
this.state = 728;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 57 || _la === 172) {
{
this.state = 727;
_la = this.tokenStream.LA(1);
if (!(_la === 57 || _la === 172)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
}
break;
case HiveSqlParser.KW_LOGICAL:
this.enterOuterAlt(localContext, 5);
{
this.state = 730;
this.match(HiveSqlParser.KW_LOGICAL);
}
break;
case HiveSqlParser.KW_AUTHORIZATION:
this.enterOuterAlt(localContext, 6);
{
this.state = 731;
this.match(HiveSqlParser.KW_AUTHORIZATION);
}
break;
case HiveSqlParser.KW_ANALYZE:
this.enterOuterAlt(localContext, 7);
{
this.state = 732;
this.match(HiveSqlParser.KW_ANALYZE);
}
break;
case HiveSqlParser.KW_REOPTIMIZATION:
this.enterOuterAlt(localContext, 8);
{
this.state = 733;
this.match(HiveSqlParser.KW_REOPTIMIZATION);
}
break;
case HiveSqlParser.KW_LOCKS:
this.enterOuterAlt(localContext, 9);
{
this.state = 734;
this.match(HiveSqlParser.KW_LOCKS);
}
break;
case HiveSqlParser.KW_AST:
this.enterOuterAlt(localContext, 10);
{
this.state = 735;
this.match(HiveSqlParser.KW_AST);
}
break;
case HiveSqlParser.KW_VECTORIZATION:
this.enterOuterAlt(localContext, 11);
{
this.state = 736;
this.match(HiveSqlParser.KW_VECTORIZATION);
this.state = 738;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 225) {
{
this.state = 737;
this.match(HiveSqlParser.KW_ONLY);
}
}
this.state = 741;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 91 || _la === 121 || _la === 226 || _la === 325) {
{
this.state = 740;
this.vectorizationDetail();
}
}
}
break;
case HiveSqlParser.KW_DEBUG:
this.enterOuterAlt(localContext, 12);
{
this.state = 743;
this.match(HiveSqlParser.KW_DEBUG);
}
break;
case HiveSqlParser.KW_DDL:
this.enterOuterAlt(localContext, 13);
{
this.state = 744;
this.match(HiveSqlParser.KW_DDL);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
vectorizationDetail() {
let localContext = new VectorizationDetailContext(this.context, this.state);
this.enterRule(localContext, 8, HiveSqlParser.RULE_vectorizationDetail);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 747;
_la = this.tokenStream.LA(1);
if (!(_la === 91 || _la === 121 || _la === 226 || _la === 325)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
execStatement() {
let localContext = new ExecStatementContext(this.context, this.state);
this.enterRule(localContext, 10, HiveSqlParser.RULE_execStatement);
let _la;
try {
let alternative;
this.state = 820;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 17, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 749;
this.queryStatementExpression();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 750;
this.loadStatement();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 751;
this.exportStatement();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 752;
this.importStatement();
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 753;
this.replDumpStatement();
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 754;
this.replLoadStatement();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 755;
this.match(HiveSqlParser.KW_REPL);
this.state = 756;
this.match(HiveSqlParser.KW_STATUS);
this.state = 757;
localContext._dbName = this.dbSchemaName();
this.state = 760;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 9, this.context)) {
case 1:
{
this.state = 758;
this.match(HiveSqlParser.KW_WITH);
this.state = 759;
localContext._replConf = this.keyValueProperties();
}
break;
}
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 762;
this.ddlStatement();
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 763;
this.match(HiveSqlParser.KW_DELETE);
this.state = 764;
this.match(HiveSqlParser.KW_FROM);
this.state = 765;
this.tableName();
this.state = 767;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 384) {
{
this.state = 766;
this.whereClause();
}
}
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 769;
this.match(HiveSqlParser.KW_UPDATE);
this.state = 770;
this.tableName();
this.state = 771;
this.setColumnsClause();
this.state = 773;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 384) {
{
this.state = 772;
this.whereClause();
}
}
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 775;
this.sqlTransactionStatement();
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 776;
this.match(HiveSqlParser.KW_MERGE);
this.state = 778;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 436) {
{
this.state = 777;
this.match(HiveSqlParser.QUERY_HINT);
}
}
this.state = 780;
this.match(HiveSqlParser.KW_INTO);
this.state = 781;
this.tableName();
this.state = 786;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252585854) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394 || _la === 432) {
{
this.state = 783;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 782;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 785;
this.id_();
}
}
this.state = 788;
this.match(HiveSqlParser.KW_USING);
this.state = 789;
this.joinSourcePart();
this.state = 790;
this.match(HiveSqlParser.KW_ON);
this.state = 791;
this.expression();
this.state = 792;
this.whenClauses();
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 794;
this.match(HiveSqlParser.KW_PREPARE);
this.state = 795;
this.id_();
this.state = 796;
this.match(HiveSqlParser.KW_FROM);
this.state = 797;
this.queryStatementExpression();
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 799;
this.match(HiveSqlParser.KW_EXECUTE);
this.state = 800;
this.id_();
this.state = 801;
this.match(HiveSqlParser.KW_USING);
this.state = 802;
this.constantList();
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 804;
this.match(HiveSqlParser.KW_SET);
this.state = 805;
this.configPropertiesItem();
this.state = 810;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 395 || _la === 396) {
{
{
this.state = 806;
_la = this.tokenStream.LA(1);
if (!(_la === 395 || _la === 396)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 807;
this.configPropertiesItem();
}
}
this.state = 812;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 813;
this.match(HiveSqlParser.EQUAL);
this.state = 817;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 16, this.context);
while (alternative !== 1 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1 + 1) {
{
{
this.state = 814;
this.matchWildcard();
}
}
}
this.state = 819;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 16, this.context);
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
loadStatement() {
let localContext = new LoadStatementContext(this.context, this.state);
this.enterRule(localContext, 12, HiveSqlParser.RULE_loadStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 822;
this.match(HiveSqlParser.KW_LOAD);
this.state = 823;
this.match(HiveSqlParser.KW_DATA);
this.state = 825;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 188) {
{
this.state = 824;
this.match(HiveSqlParser.KW_LOCAL);
}
}
this.state = 827;
this.match(HiveSqlParser.KW_INPATH);
this.state = 828;
this.match(HiveSqlParser.StringLiteral);
this.state = 830;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 235) {
{
this.state = 829;
this.match(HiveSqlParser.KW_OVERWRITE);
}
}
this.state = 832;
this.match(HiveSqlParser.KW_INTO);
this.state = 833;
this.match(HiveSqlParser.KW_TABLE);
this.state = 834;
this.tableOrPartition();
this.state = 836;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 160) {
{
this.state = 835;
this.inputFileFormat();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
replicationClause() {
let localContext = new ReplicationClauseContext(this.context, this.state);
this.enterRule(localContext, 14, HiveSqlParser.RULE_replicationClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 838;
this.match(HiveSqlParser.KW_FOR);
this.state = 840;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 204) {
{
this.state = 839;
this.match(HiveSqlParser.KW_METADATA);
}
}
this.state = 842;
this.match(HiveSqlParser.KW_REPLICATION);
this.state = 843;
this.match(HiveSqlParser.LPAREN);
this.state = 844;
this.match(HiveSqlParser.StringLiteral);
this.state = 845;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
exportStatement() {
let localContext = new ExportStatementContext(this.context, this.state);
this.enterRule(localContext, 16, HiveSqlParser.RULE_exportStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 847;
this.match(HiveSqlParser.KW_EXPORT);
this.state = 848;
this.match(HiveSqlParser.KW_TABLE);
this.state = 849;
this.tableOrPartition();
this.state = 850;
this.match(HiveSqlParser.KW_TO);
this.state = 851;
this.match(HiveSqlParser.StringLiteral);
this.state = 853;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 134) {
{
this.state = 852;
this.replicationClause();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
importStatement() {
let localContext = new ImportStatementContext(this.context, this.state);
this.enterRule(localContext, 18, HiveSqlParser.RULE_importStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 855;
this.match(HiveSqlParser.KW_IMPORT);
this.state = 861;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 123 || _la === 329) {
{
this.state = 857;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 123) {
{
this.state = 856;
this.match(HiveSqlParser.KW_EXTERNAL);
}
}
this.state = 859;
this.match(HiveSqlParser.KW_TABLE);
this.state = 860;
this.tableOrPartition();
}
}
this.state = 863;
this.match(HiveSqlParser.KW_FROM);
this.state = 864;
localContext._path = this.match(HiveSqlParser.StringLiteral);
this.state = 866;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 865;
this.locationPath();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
replDumpStatement() {
let localContext = new ReplDumpStatementContext(this.context, this.state);
this.enterRule(localContext, 20, HiveSqlParser.RULE_replDumpStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 868;
this.match(HiveSqlParser.KW_REPL);
this.state = 869;
this.match(HiveSqlParser.KW_DUMP);
this.state = 870;
localContext._dbPolicy = this.replDbPolicy();
this.state = 873;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 26, this.context)) {
case 1:
{
this.state = 871;
this.match(HiveSqlParser.KW_REPLACE);
this.state = 872;
localContext._oldDbPolicy = this.replDbPolicy();
}
break;
}
this.state = 877;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 27, this.context)) {
case 1:
{
this.state = 875;
this.match(HiveSqlParser.KW_WITH);
this.state = 876;
localContext._replConf = this.keyValueProperties();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
replDbPolicy() {
let localContext = new ReplDbPolicyContext(this.context, this.state);
this.enterRule(localContext, 22, HiveSqlParser.RULE_replDbPolicy);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 879;
localContext._dbName = this.dbSchemaName();
this.state = 882;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 395) {
{
this.state = 880;
this.match(HiveSqlParser.DOT);
this.state = 881;
localContext._tablePolicy = this.replTableLevelPolicy();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
replLoadStatement() {
let localContext = new ReplLoadStatementContext(this.context, this.state);
this.enterRule(localContext, 24, HiveSqlParser.RULE_replLoadStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 884;
this.match(HiveSqlParser.KW_REPL);
this.state = 885;
this.match(HiveSqlParser.KW_LOAD);
this.state = 886;
localContext._sourceDbPolicy = this.replDbPolicy();
this.state = 889;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 166) {
{
this.state = 887;
this.match(HiveSqlParser.KW_INTO);
this.state = 888;
localContext._dbName = this.dbSchemaName();
}
}
this.state = 893;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 30, this.context)) {
case 1:
{
this.state = 891;
this.match(HiveSqlParser.KW_WITH);
this.state = 892;
localContext._replConf = this.keyValueProperties();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
replTableLevelPolicy() {
let localContext = new ReplTableLevelPolicyContext(this.context, this.state);
this.enterRule(localContext, 26, HiveSqlParser.RULE_replTableLevelPolicy);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 895;
localContext._replTablesIncludeList = this.match(HiveSqlParser.StringLiteral);
this.state = 898;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 395) {
{
this.state = 896;
this.match(HiveSqlParser.DOT);
this.state = 897;
localContext._replTablesExcludeList = this.match(HiveSqlParser.StringLiteral);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
ddlStatement() {
let localContext = new DdlStatementContext(this.context, this.state);
this.enterRule(localContext, 28, HiveSqlParser.RULE_ddlStatement);
let _la;
try {
this.state = 958;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 34, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 900;
this.createDatabaseStatement();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 901;
this.switchDatabaseStatement();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 902;
this.dropDatabaseStatement();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 903;
this.createTableStatement();
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 904;
this.dropTableStatement();
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 905;
this.truncateTableStatement();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 906;
this.alterStatement();
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 907;
this.descStatement();
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 908;
this.showStatement();
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 909;
this.metastoreCheck();
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 910;
this.createViewStatement();
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 911;
this.createMaterializedViewStatement();
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 912;
this.createScheduledQueryStatement();
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 913;
this.alterScheduledQueryStatement();
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 914;
this.dropScheduledQueryStatement();
}
break;
case 16:
this.enterOuterAlt(localContext, 16);
{
this.state = 915;
this.dropViewStatement();
}
break;
case 17:
this.enterOuterAlt(localContext, 17);
{
this.state = 916;
this.dropMaterializedViewStatement();
}
break;
case 18:
this.enterOuterAlt(localContext, 18);
{
this.state = 917;
this.createFunctionStatement();
}
break;
case 19:
this.enterOuterAlt(localContext, 19);
{
this.state = 918;
this.createMacroStatement();
}
break;
case 20:
this.enterOuterAlt(localContext, 20);
{
this.state = 919;
this.dropFunctionStatement();
}
break;
case 21:
this.enterOuterAlt(localContext, 21);
{
this.state = 920;
this.reloadFunctionsStatement();
}
break;
case 22:
this.enterOuterAlt(localContext, 22);
{
this.state = 921;
this.dropMacroStatement();
}
break;
case 23:
this.enterOuterAlt(localContext, 23);
{
this.state = 922;
this.createIndexStatement();
}
break;
case 24:
this.enterOuterAlt(localContext, 24);
{
this.state = 923;
this.dropIndexStatement();
}
break;
case 25:
this.enterOuterAlt(localContext, 25);
{
this.state = 924;
this.analyzeStatement();
}
break;
case 26:
this.enterOuterAlt(localContext, 26);
{
this.state = 925;
this.lockStatement();
}
break;
case 27:
this.enterOuterAlt(localContext, 27);
{
this.state = 926;
this.unlockStatement();
}
break;
case 28:
this.enterOuterAlt(localContext, 28);
{
this.state = 927;
this.lockDatabase();
}
break;
case 29:
this.enterOuterAlt(localContext, 29);
{
this.state = 928;
this.unlockDatabase();
}
break;
case 30:
this.enterOuterAlt(localContext, 30);
{
this.state = 929;
this.createRoleStatement();
}
break;
case 31:
this.enterOuterAlt(localContext, 31);
{
this.state = 930;
this.dropRoleStatement();
}
break;
case 32:
this.enterOuterAlt(localContext, 32);
{
this.state = 931;
this.grantPrivileges();
}
break;
case 33:
this.enterOuterAlt(localContext, 33);
{
this.state = 932;
this.revokePrivileges();
}
break;
case 34:
this.enterOuterAlt(localContext, 34);
{
this.state = 933;
this.showGrants();
}
break;
case 35:
this.enterOuterAlt(localContext, 35);
{
this.state = 934;
this.showRoleGrants();
}
break;
case 36:
this.enterOuterAlt(localContext, 36);
{
this.state = 935;
this.showRolePrincipals();
}
break;
case 37:
this.enterOuterAlt(localContext, 37);
{
this.state = 936;
this.showRoles();
}
break;
case 38:
this.enterOuterAlt(localContext, 38);
{
this.state = 937;
this.grantRole();
}
break;
case 39:
this.enterOuterAlt(localContext, 39);
{
this.state = 938;
this.revokeRole();
}
break;
case 40:
this.enterOuterAlt(localContext, 40);
{
this.state = 939;
this.setRole();
}
break;
case 41:
this.enterOuterAlt(localContext, 41);
{
this.state = 940;
this.showCurrentRole();
}
break;
case 42:
this.enterOuterAlt(localContext, 42);
{
this.state = 941;
this.match(HiveSqlParser.KW_ABORT);
this.state = 942;
_la = this.tokenStream.LA(1);
if (!(_la === 50 || _la === 346)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 944;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 943;
this.match(HiveSqlParser.Number);
}
}
this.state = 946;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 431);
}
break;
case 43:
this.enterOuterAlt(localContext, 43);
{
this.state = 948;
this.match(HiveSqlParser.KW_KILL);
this.state = 949;
this.match(HiveSqlParser.KW_QUERY);
this.state = 951;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 950;
this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 953;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 426);
}
break;
case 44:
this.enterOuterAlt(localContext, 44);
{
this.state = 955;
this.resourcePlanDdlStatements();
}
break;
case 45:
this.enterOuterAlt(localContext, 45);
{
this.state = 956;
this.createDataConnectorStatement();
}
break;
case 46:
this.enterOuterAlt(localContext, 46);
{
this.state = 957;
this.dropDataConnectorStatement();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
ifExists() {
let localContext = new IfExistsContext(this.context, this.state);
this.enterRule(localContext, 30, HiveSqlParser.RULE_ifExists);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 960;
this.match(HiveSqlParser.KW_IF);
this.state = 961;
this.match(HiveSqlParser.KW_EXISTS);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
ifNotExists() {
let localContext = new IfNotExistsContext(this.context, this.state);
this.enterRule(localContext, 32, HiveSqlParser.RULE_ifNotExists);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 963;
this.match(HiveSqlParser.KW_IF);
this.state = 964;
this.match(HiveSqlParser.KW_NOT);
this.state = 965;
this.match(HiveSqlParser.KW_EXISTS);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
restrictOrCascade() {
let localContext = new RestrictOrCascadeContext(this.context, this.state);
this.enterRule(localContext, 34, HiveSqlParser.RULE_restrictOrCascade);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 967;
_la = this.tokenStream.LA(1);
if (!(_la === 34 || _la === 282)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rewriteEnabled() {
let localContext = new RewriteEnabledContext(this.context, this.state);
this.enterRule(localContext, 36, HiveSqlParser.RULE_rewriteEnabled);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 969;
this.enable();
this.state = 970;
this.match(HiveSqlParser.KW_REWRITE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rewriteDisabled() {
let localContext = new RewriteDisabledContext(this.context, this.state);
this.enterRule(localContext, 38, HiveSqlParser.RULE_rewriteDisabled);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 972;
this.disable();
this.state = 973;
this.match(HiveSqlParser.KW_REWRITE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
storedAsDirs() {
let localContext = new StoredAsDirsContext(this.context, this.state);
this.enterRule(localContext, 40, HiveSqlParser.RULE_storedAsDirs);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 975;
this.match(HiveSqlParser.KW_STORED);
this.state = 976;
this.match(HiveSqlParser.KW_AS);
this.state = 977;
this.match(HiveSqlParser.KW_DIRECTORIES);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createDatabaseStatement() {
let localContext = new CreateDatabaseStatementContext(this.context, this.state);
this.enterRule(localContext, 42, HiveSqlParser.RULE_createDatabaseStatement);
let _la;
try {
this.state = 1019;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 44, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 979;
this.match(HiveSqlParser.KW_CREATE);
this.state = 981;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 273) {
{
this.state = 980;
this.match(HiveSqlParser.KW_REMOTE);
}
}
this.state = 983;
this.db_schema();
this.state = 985;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 984;
this.ifNotExists();
}
}
this.state = 987;
localContext._name = this.dbSchemaNameCreate();
this.state = 989;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 988;
this.databaseComment();
}
}
this.state = 992;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 991;
this.locationPath();
}
}
this.state = 996;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 196) {
{
this.state = 994;
this.match(HiveSqlParser.KW_MANAGEDLOCATION);
this.state = 995;
localContext._locn = this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 1001;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 40, this.context)) {
case 1:
{
this.state = 998;
this.match(HiveSqlParser.KW_WITH);
this.state = 999;
this.match(HiveSqlParser.KW_DBPROPERTIES);
this.state = 1000;
localContext._dbprops = this.keyValueProperties();
}
break;
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1003;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1004;
this.match(HiveSqlParser.KW_REMOTE);
this.state = 1005;
this.db_schema();
this.state = 1007;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1006;
this.ifNotExists();
}
}
this.state = 1009;
localContext._name = this.dbSchemaNameCreate();
this.state = 1011;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 1010;
this.databaseComment();
}
}
this.state = 1013;
this.dbConnectorName();
this.state = 1017;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 43, this.context)) {
case 1:
{
this.state = 1014;
this.match(HiveSqlParser.KW_WITH);
this.state = 1015;
this.match(HiveSqlParser.KW_DBPROPERTIES);
this.state = 1016;
localContext._dbprops = this.keyValueProperties();
}
break;
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dbConnectorName() {
let localContext = new DbConnectorNameContext(this.context, this.state);
this.enterRule(localContext, 44, HiveSqlParser.RULE_dbConnectorName);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1021;
this.match(HiveSqlParser.KW_USING);
this.state = 1022;
localContext._dcName = this.dbSchemaName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
switchDatabaseStatement() {
let localContext = new SwitchDatabaseStatementContext(this.context, this.state);
this.enterRule(localContext, 46, HiveSqlParser.RULE_switchDatabaseStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1024;
this.match(HiveSqlParser.KW_USE);
this.state = 1025;
this.dbSchemaName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropDatabaseStatement() {
let localContext = new DropDatabaseStatementContext(this.context, this.state);
this.enterRule(localContext, 48, HiveSqlParser.RULE_dropDatabaseStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1027;
this.match(HiveSqlParser.KW_DROP);
this.state = 1028;
this.db_schema();
this.state = 1030;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1029;
this.ifExists();
}
}
this.state = 1032;
this.dbSchemaName();
this.state = 1034;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 34 || _la === 282) {
{
this.state = 1033;
this.restrictOrCascade();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
databaseComment() {
let localContext = new DatabaseCommentContext(this.context, this.state);
this.enterRule(localContext, 50, HiveSqlParser.RULE_databaseComment);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1036;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 1037;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
truncateTableStatement() {
let localContext = new TruncateTableStatementContext(this.context, this.state);
this.enterRule(localContext, 52, HiveSqlParser.RULE_truncateTableStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1039;
this.match(HiveSqlParser.KW_TRUNCATE);
this.state = 1041;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 329) {
{
this.state = 1040;
this.match(HiveSqlParser.KW_TABLE);
}
}
this.state = 1043;
this.tableOrPartition();
this.state = 1049;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 46) {
{
this.state = 1044;
this.match(HiveSqlParser.KW_COLUMNS);
this.state = 1045;
this.match(HiveSqlParser.LPAREN);
this.state = 1046;
this.columnNameList();
this.state = 1047;
this.match(HiveSqlParser.RPAREN);
}
}
this.state = 1052;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 135) {
{
this.state = 1051;
this.match(HiveSqlParser.KW_FORCE);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropTableStatement() {
let localContext = new DropTableStatementContext(this.context, this.state);
this.enterRule(localContext, 54, HiveSqlParser.RULE_dropTableStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1054;
this.match(HiveSqlParser.KW_DROP);
this.state = 1055;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1057;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1056;
this.ifExists();
}
}
this.state = 1059;
this.tableName();
this.state = 1061;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 255) {
{
this.state = 1060;
this.match(HiveSqlParser.KW_PURGE);
}
}
this.state = 1064;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 134) {
{
this.state = 1063;
this.replicationClause();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
inputFileFormat() {
let localContext = new InputFileFormatContext(this.context, this.state);
this.enterRule(localContext, 56, HiveSqlParser.RULE_inputFileFormat);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1066;
this.match(HiveSqlParser.KW_INPUTFORMAT);
this.state = 1067;
localContext._inFmt = this.match(HiveSqlParser.StringLiteral);
this.state = 1068;
this.match(HiveSqlParser.KW_SERDE);
this.state = 1069;
localContext._serdeCls = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tabTypeExpr() {
let localContext = new TabTypeExprContext(this.context, this.state);
this.enterRule(localContext, 58, HiveSqlParser.RULE_tabTypeExpr);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1071;
this.id_();
this.state = 1074;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 395) {
{
this.state = 1072;
this.match(HiveSqlParser.DOT);
this.state = 1073;
this.id_();
}
}
this.state = 1089;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 56, this.context)) {
case 1:
{
this.state = 1076;
this.id_();
this.state = 1086;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 395) {
{
{
this.state = 1077;
this.match(HiveSqlParser.DOT);
this.state = 1082;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 54, this.context)) {
case 1:
{
this.state = 1078;
this.match(HiveSqlParser.KW_ELEM_TYPE);
}
break;
case 2:
{
this.state = 1079;
this.match(HiveSqlParser.KW_KEY_TYPE);
}
break;
case 3:
{
this.state = 1080;
this.match(HiveSqlParser.KW_VALUE_TYPE);
}
break;
case 4:
{
this.state = 1081;
this.id_();
}
break;
}
}
}
this.state = 1088;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partTypeExpr() {
let localContext = new PartTypeExprContext(this.context, this.state);
this.enterRule(localContext, 60, HiveSqlParser.RULE_partTypeExpr);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1091;
this.tabTypeExpr();
this.state = 1093;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 237) {
{
this.state = 1092;
this.partitionSpec();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tabPartColTypeExpr() {
let localContext = new TabPartColTypeExprContext(this.context, this.state);
this.enterRule(localContext, 62, HiveSqlParser.RULE_tabPartColTypeExpr);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1095;
this.tableOrView();
this.state = 1097;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 58, this.context)) {
case 1:
{
this.state = 1096;
this.partitionSpec();
}
break;
}
this.state = 1100;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 59, this.context)) {
case 1:
{
this.state = 1099;
this.extColumnName();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
descStatement() {
let localContext = new DescStatementContext(this.context, this.state);
this.enterRule(localContext, 64, HiveSqlParser.RULE_descStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1102;
_la = this.tokenStream.LA(1);
if (!(_la === 89 || _la === 90)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 1125;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 64, this.context)) {
case 1:
{
this.state = 1103;
this.db_schema();
this.state = 1105;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 122) {
{
this.state = 1104;
this.match(HiveSqlParser.KW_EXTENDED);
}
}
this.state = 1107;
localContext._dbName = this.dbSchemaName();
}
break;
case 2:
{
this.state = 1109;
this.match(HiveSqlParser.KW_DATACONNECTOR);
this.state = 1111;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 122) {
{
this.state = 1110;
this.match(HiveSqlParser.KW_EXTENDED);
}
}
this.state = 1113;
localContext._dcName = this.dbSchemaName();
}
break;
case 3:
{
this.state = 1114;
this.match(HiveSqlParser.KW_FUNCTION);
this.state = 1116;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 122) {
{
this.state = 1115;
this.match(HiveSqlParser.KW_EXTENDED);
}
}
this.state = 1118;
localContext._name = this.functionNameForDDL();
}
break;
case 4:
{
this.state = 1121;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_FORMATTED:
{
this.state = 1119;
localContext._descOptions = this.match(HiveSqlParser.KW_FORMATTED);
}
break;
case HiveSqlParser.KW_EXTENDED:
{
this.state = 1120;
localContext._descOptions = this.match(HiveSqlParser.KW_EXTENDED);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 1123;
localContext._parttype = this.tabPartColTypeExpr();
}
break;
case 5:
{
this.state = 1124;
localContext._parttype = this.tabPartColTypeExpr();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
analyzeStatement() {
let localContext = new AnalyzeStatementContext(this.context, this.state);
this.enterRule(localContext, 66, HiveSqlParser.RULE_analyzeStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1127;
this.match(HiveSqlParser.KW_ANALYZE);
this.state = 1128;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1129;
localContext._parttype = this.tableOrPartition();
this.state = 1142;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_COMPUTE:
{
this.state = 1130;
this.match(HiveSqlParser.KW_COMPUTE);
this.state = 1131;
this.match(HiveSqlParser.KW_STATISTICS);
this.state = 1138;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_NOSCAN:
{
this.state = 1132;
localContext._noscan = this.match(HiveSqlParser.KW_NOSCAN);
}
break;
case HiveSqlParser.KW_FOR:
{
this.state = 1133;
this.match(HiveSqlParser.KW_FOR);
this.state = 1134;
this.match(HiveSqlParser.KW_COLUMNS);
this.state = 1136;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 65, this.context)) {
case 1:
{
this.state = 1135;
localContext._statsColumnName = this.columnNameList();
}
break;
}
}
break;
case HiveSqlParser.EOF:
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.SEMICOLON:
case HiveSqlParser.LPAREN:
break;
default:
break;
}
}
break;
case HiveSqlParser.KW_CACHE:
{
this.state = 1140;
this.match(HiveSqlParser.KW_CACHE);
this.state = 1141;
this.match(HiveSqlParser.KW_METADATA);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
from_in() {
let localContext = new From_inContext(this.context, this.state);
this.enterRule(localContext, 68, HiveSqlParser.RULE_from_in);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1144;
_la = this.tokenStream.LA(1);
if (!(_la === 139 || _la === 154)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
db_schema() {
let localContext = new Db_schemaContext(this.context, this.state);
this.enterRule(localContext, 70, HiveSqlParser.RULE_db_schema);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1146;
_la = this.tokenStream.LA(1);
if (!(_la === 67 || _la === 295)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showStatement() {
let localContext = new ShowStatementContext(this.context, this.state);
this.enterRule(localContext, 72, HiveSqlParser.RULE_showStatement);
let _la;
try {
this.state = 1331;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 103, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1148;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1149;
_la = this.tokenStream.LA(1);
if (!(_la === 68 || _la === 296)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 1152;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 184) {
{
this.state = 1150;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1151;
this.showStmtIdentifier();
}
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1154;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1156;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 122) {
{
this.state = 1155;
localContext._isExtended = this.match(HiveSqlParser.KW_EXTENDED);
}
}
this.state = 1158;
this.match(HiveSqlParser.KW_TABLES);
this.state = 1162;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 70, this.context)) {
case 1:
{
this.state = 1159;
this.from_in();
this.state = 1160;
localContext._db_name = this.dbSchemaName();
}
break;
}
this.state = 1165;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 71, this.context)) {
case 1:
{
this.state = 1164;
localContext._filter = this.showTablesFilterExpr();
}
break;
}
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 1167;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1168;
this.match(HiveSqlParser.KW_VIEWS);
this.state = 1172;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 72, this.context)) {
case 1:
{
this.state = 1169;
this.from_in();
this.state = 1170;
localContext._db_name = this.dbSchemaName();
}
break;
}
this.state = 1177;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 73, this.context)) {
case 1:
{
this.state = 1174;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1175;
this.showStmtIdentifier();
}
break;
case 2:
{
this.state = 1176;
this.showStmtIdentifier();
}
break;
}
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 1179;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1180;
this.match(HiveSqlParser.KW_MATERIALIZED);
this.state = 1181;
this.match(HiveSqlParser.KW_VIEWS);
this.state = 1185;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 74, this.context)) {
case 1:
{
this.state = 1182;
this.from_in();
this.state = 1183;
localContext._db_name = this.dbSchemaName();
}
break;
}
this.state = 1190;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 75, this.context)) {
case 1:
{
this.state = 1187;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1188;
this.showStmtIdentifier();
}
break;
case 2:
{
this.state = 1189;
this.showStmtIdentifier();
}
break;
}
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 1192;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1194;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 315) {
{
this.state = 1193;
this.match(HiveSqlParser.KW_SORTED);
}
}
this.state = 1196;
this.match(HiveSqlParser.KW_COLUMNS);
this.state = 1197;
this.from_in();
this.state = 1198;
this.tableOrView();
this.state = 1202;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 77, this.context)) {
case 1:
{
this.state = 1199;
this.from_in();
this.state = 1200;
localContext._db_name = this.dbSchemaName();
}
break;
}
this.state = 1207;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 78, this.context)) {
case 1:
{
this.state = 1204;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1205;
this.showStmtIdentifier();
}
break;
case 2:
{
this.state = 1206;
this.showStmtIdentifier();
}
break;
}
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 1209;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1210;
this.match(HiveSqlParser.KW_FUNCTIONS);
this.state = 1213;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 184) {
{
this.state = 1211;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1212;
this.functionNameForDDL();
}
}
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 1215;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1216;
this.match(HiveSqlParser.KW_PARTITIONS);
this.state = 1217;
localContext._tabOrViewName = this.tableOrView();
this.state = 1219;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 237) {
{
this.state = 1218;
this.partitionSpec();
}
}
this.state = 1222;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 384) {
{
this.state = 1221;
this.whereClause();
}
}
this.state = 1225;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 1224;
this.orderByClause();
}
}
this.state = 1228;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 185) {
{
this.state = 1227;
this.limitClause();
}
}
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 1230;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1231;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1237;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_DATABASE:
case HiveSqlParser.KW_SCHEMA:
{
this.state = 1232;
this.db_schema();
this.state = 1233;
localContext._db_name = this.dbSchemaName();
}
break;
case HiveSqlParser.KW_TABLE:
{
this.state = 1235;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1236;
localContext._tabName = this.tableName();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 1239;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1240;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1241;
this.match(HiveSqlParser.KW_EXTENDED);
this.state = 1245;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 139 || _la === 154) {
{
this.state = 1242;
this.from_in();
this.state = 1243;
localContext._db_name = this.dbSchemaName();
}
}
this.state = 1247;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1248;
this.showStmtIdentifier();
this.state = 1250;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 237) {
{
this.state = 1249;
this.partitionSpec();
}
}
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 1252;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1253;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 1254;
this.tableName();
this.state = 1258;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 87, this.context)) {
case 1:
{
this.state = 1255;
this.match(HiveSqlParser.LPAREN);
this.state = 1256;
localContext._prptyName = this.match(HiveSqlParser.StringLiteral);
this.state = 1257;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 1260;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1261;
this.match(HiveSqlParser.KW_LOCKS);
this.state = 1273;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 91, this.context)) {
case 1:
{
this.state = 1262;
this.db_schema();
this.state = 1263;
localContext._dbName = this.dbSchemaName();
this.state = 1265;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 122) {
{
this.state = 1264;
localContext._isExtended = this.match(HiveSqlParser.KW_EXTENDED);
}
}
}
break;
case 2:
{
this.state = 1268;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 89, this.context)) {
case 1:
{
this.state = 1267;
localContext._parttype = this.partTypeExpr();
}
break;
}
this.state = 1271;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 122) {
{
this.state = 1270;
localContext._isExtended = this.match(HiveSqlParser.KW_EXTENDED);
}
}
}
break;
}
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 1275;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1276;
this.match(HiveSqlParser.KW_COMPACTIONS);
this.state = 1303;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_COMPACT_ID:
{
this.state = 1277;
this.match(HiveSqlParser.KW_COMPACT_ID);
this.state = 1278;
this.match(HiveSqlParser.EQUAL);
this.state = 1279;
localContext._compactId = this.match(HiveSqlParser.Number);
}
break;
case HiveSqlParser.EOF:
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASE:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_ORDER:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.SEMICOLON:
case HiveSqlParser.LPAREN:
case HiveSqlParser.Identifier:
{
this.state = 1286;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 93, this.context)) {
case 1:
{
{
this.state = 1280;
this.db_schema();
this.state = 1281;
localContext._dbName = this.dbSchemaName();
}
}
break;
case 2:
{
this.state = 1284;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 92, this.context)) {
case 1:
{
this.state = 1283;
localContext._parttype = this.partTypeExpr();
}
break;
}
}
break;
}
this.state = 1289;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 246) {
{
this.state = 1288;
this.compactionPool();
}
}
this.state = 1292;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 352) {
{
this.state = 1291;
this.compactionType();
}
}
this.state = 1295;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 320) {
{
this.state = 1294;
this.compactionStatus();
}
}
this.state = 1298;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 1297;
this.orderByClause();
}
}
this.state = 1301;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 185) {
{
this.state = 1300;
this.limitClause();
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 1305;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1306;
this.match(HiveSqlParser.KW_TRANSACTIONS);
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 1307;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1308;
this.match(HiveSqlParser.KW_CONF);
this.state = 1309;
this.match(HiveSqlParser.StringLiteral);
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 1310;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1311;
this.match(HiveSqlParser.KW_RESOURCE);
this.state = 1315;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_PLAN:
{
this.state = 1312;
this.match(HiveSqlParser.KW_PLAN);
this.state = 1313;
localContext._rp_name = this.id_();
}
break;
case HiveSqlParser.KW_PLANS:
{
this.state = 1314;
this.match(HiveSqlParser.KW_PLANS);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 16:
this.enterOuterAlt(localContext, 16);
{
this.state = 1317;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1318;
this.match(HiveSqlParser.KW_DATACONNECTORS);
}
break;
case 17:
this.enterOuterAlt(localContext, 17);
{
this.state = 1319;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1321;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 138) {
{
this.state = 1320;
this.match(HiveSqlParser.KW_FORMATTED);
}
}
this.state = 1323;
_la = this.tokenStream.LA(1);
if (!(_la === 155 || _la === 156)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 1324;
this.match(HiveSqlParser.KW_ON);
this.state = 1325;
this.tableName();
this.state = 1329;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 102, this.context)) {
case 1:
{
this.state = 1326;
this.from_in();
this.state = 1327;
this.dbSchemaName();
}
break;
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showTablesFilterExpr() {
let localContext = new ShowTablesFilterExprContext(this.context, this.state);
this.enterRule(localContext, 74, HiveSqlParser.RULE_showTablesFilterExpr);
try {
this.state = 1341;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_WHERE:
this.enterOuterAlt(localContext, 1);
{
this.state = 1333;
this.match(HiveSqlParser.KW_WHERE);
this.state = 1334;
this.id_();
this.state = 1335;
this.match(HiveSqlParser.EQUAL);
this.state = 1336;
this.match(HiveSqlParser.StringLiteral);
}
break;
case HiveSqlParser.KW_LIKE:
this.enterOuterAlt(localContext, 2);
{
this.state = 1338;
this.match(HiveSqlParser.KW_LIKE);
this.state = 1339;
this.showStmtIdentifier();
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.StringLiteral:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 3);
{
this.state = 1340;
this.showStmtIdentifier();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
lockStatement() {
let localContext = new LockStatementContext(this.context, this.state);
this.enterRule(localContext, 76, HiveSqlParser.RULE_lockStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1343;
this.match(HiveSqlParser.KW_LOCK);
this.state = 1344;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1345;
this.tableOrPartition();
this.state = 1346;
this.lockMode();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
lockDatabase() {
let localContext = new LockDatabaseContext(this.context, this.state);
this.enterRule(localContext, 78, HiveSqlParser.RULE_lockDatabase);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1348;
this.match(HiveSqlParser.KW_LOCK);
this.state = 1349;
this.db_schema();
this.state = 1350;
localContext._dbName = this.dbSchemaName();
this.state = 1351;
this.lockMode();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
lockMode() {
let localContext = new LockModeContext(this.context, this.state);
this.enterRule(localContext, 80, HiveSqlParser.RULE_lockMode);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1353;
_la = this.tokenStream.LA(1);
if (!(_la === 114 || _la === 307)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
unlockStatement() {
let localContext = new UnlockStatementContext(this.context, this.state);
this.enterRule(localContext, 82, HiveSqlParser.RULE_unlockStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1355;
this.match(HiveSqlParser.KW_UNLOCK);
this.state = 1356;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1357;
this.tableOrPartition();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
unlockDatabase() {
let localContext = new UnlockDatabaseContext(this.context, this.state);
this.enterRule(localContext, 84, HiveSqlParser.RULE_unlockDatabase);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1359;
this.match(HiveSqlParser.KW_UNLOCK);
this.state = 1360;
this.db_schema();
this.state = 1361;
localContext._dbName = this.dbSchemaName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createRoleStatement() {
let localContext = new CreateRoleStatementContext(this.context, this.state);
this.enterRule(localContext, 86, HiveSqlParser.RULE_createRoleStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1363;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1364;
this.match(HiveSqlParser.KW_ROLE);
this.state = 1365;
localContext._roleName = this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropRoleStatement() {
let localContext = new DropRoleStatementContext(this.context, this.state);
this.enterRule(localContext, 88, HiveSqlParser.RULE_dropRoleStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1367;
this.match(HiveSqlParser.KW_DROP);
this.state = 1368;
this.match(HiveSqlParser.KW_ROLE);
this.state = 1369;
localContext._roleName = this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
grantPrivileges() {
let localContext = new GrantPrivilegesContext(this.context, this.state);
this.enterRule(localContext, 90, HiveSqlParser.RULE_grantPrivileges);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1371;
this.match(HiveSqlParser.KW_GRANT);
this.state = 1372;
localContext._privList = this.privilegeList();
this.state = 1374;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 224) {
{
this.state = 1373;
this.privilegeObject();
}
}
this.state = 1376;
this.match(HiveSqlParser.KW_TO);
this.state = 1377;
this.principalSpecification();
this.state = 1379;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 106, this.context)) {
case 1:
{
this.state = 1378;
this.withGrantOption();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
revokePrivileges() {
let localContext = new RevokePrivilegesContext(this.context, this.state);
this.enterRule(localContext, 92, HiveSqlParser.RULE_revokePrivileges);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1381;
this.match(HiveSqlParser.KW_REVOKE);
this.state = 1383;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 143) {
{
this.state = 1382;
this.grantOptionFor();
}
}
this.state = 1385;
this.privilegeList();
this.state = 1387;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 224) {
{
this.state = 1386;
this.privilegeObject();
}
}
this.state = 1389;
this.match(HiveSqlParser.KW_FROM);
this.state = 1390;
this.principalSpecification();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
grantRole() {
let localContext = new GrantRoleContext(this.context, this.state);
this.enterRule(localContext, 94, HiveSqlParser.RULE_grantRole);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1392;
this.match(HiveSqlParser.KW_GRANT);
this.state = 1394;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 109, this.context)) {
case 1:
{
this.state = 1393;
this.match(HiveSqlParser.KW_ROLE);
}
break;
}
this.state = 1396;
this.id_();
this.state = 1401;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1397;
this.match(HiveSqlParser.COMMA);
this.state = 1398;
this.id_();
}
}
this.state = 1403;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 1404;
this.match(HiveSqlParser.KW_TO);
this.state = 1405;
this.principalSpecification();
this.state = 1407;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 111, this.context)) {
case 1:
{
this.state = 1406;
this.withAdminOption();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
revokeRole() {
let localContext = new RevokeRoleContext(this.context, this.state);
this.enterRule(localContext, 96, HiveSqlParser.RULE_revokeRole);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1409;
this.match(HiveSqlParser.KW_REVOKE);
this.state = 1411;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 112, this.context)) {
case 1:
{
this.state = 1410;
this.adminOptionFor();
}
break;
}
this.state = 1414;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 113, this.context)) {
case 1:
{
this.state = 1413;
this.match(HiveSqlParser.KW_ROLE);
}
break;
}
this.state = 1416;
this.id_();
this.state = 1421;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1417;
this.match(HiveSqlParser.COMMA);
this.state = 1418;
this.id_();
}
}
this.state = 1423;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 1424;
this.match(HiveSqlParser.KW_FROM);
this.state = 1425;
this.principalSpecification();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showRoleGrants() {
let localContext = new ShowRoleGrantsContext(this.context, this.state);
this.enterRule(localContext, 98, HiveSqlParser.RULE_showRoleGrants);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1427;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1428;
this.match(HiveSqlParser.KW_ROLE);
this.state = 1429;
this.match(HiveSqlParser.KW_GRANT);
this.state = 1430;
this.principalName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showRoles() {
let localContext = new ShowRolesContext(this.context, this.state);
this.enterRule(localContext, 100, HiveSqlParser.RULE_showRoles);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1432;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1433;
this.match(HiveSqlParser.KW_ROLES);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showCurrentRole() {
let localContext = new ShowCurrentRoleContext(this.context, this.state);
this.enterRule(localContext, 102, HiveSqlParser.RULE_showCurrentRole);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1435;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1436;
this.match(HiveSqlParser.KW_CURRENT);
this.state = 1437;
this.match(HiveSqlParser.KW_ROLES);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
setRole() {
let localContext = new SetRoleContext(this.context, this.state);
this.enterRule(localContext, 104, HiveSqlParser.RULE_setRole);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1439;
this.match(HiveSqlParser.KW_SET);
this.state = 1440;
this.match(HiveSqlParser.KW_ROLE);
this.state = 1444;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ALL:
{
this.state = 1441;
localContext._all = this.match(HiveSqlParser.KW_ALL);
}
break;
case HiveSqlParser.KW_NONE:
{
this.state = 1442;
localContext._none = this.match(HiveSqlParser.KW_NONE);
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.Identifier:
{
this.state = 1443;
this.id_();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showGrants() {
let localContext = new ShowGrantsContext(this.context, this.state);
this.enterRule(localContext, 106, HiveSqlParser.RULE_showGrants);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1446;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1447;
this.match(HiveSqlParser.KW_GRANT);
this.state = 1449;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 144 || _la === 287 || _la === 369) {
{
this.state = 1448;
this.principalName();
}
}
this.state = 1453;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 224) {
{
this.state = 1451;
this.match(HiveSqlParser.KW_ON);
this.state = 1452;
this.privilegeIncludeColObject();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showRolePrincipals() {
let localContext = new ShowRolePrincipalsContext(this.context, this.state);
this.enterRule(localContext, 108, HiveSqlParser.RULE_showRolePrincipals);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1455;
this.match(HiveSqlParser.KW_SHOW);
this.state = 1456;
this.match(HiveSqlParser.KW_PRINCIPALS);
this.state = 1457;
localContext._roleName = this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privilegeIncludeColObject() {
let localContext = new PrivilegeIncludeColObjectContext(this.context, this.state);
this.enterRule(localContext, 110, HiveSqlParser.RULE_privilegeIncludeColObject);
try {
this.state = 1461;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ALL:
this.enterOuterAlt(localContext, 1);
{
this.state = 1459;
this.match(HiveSqlParser.KW_ALL);
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASE:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLE:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 2);
{
this.state = 1460;
this.privObjectCols();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privilegeObject() {
let localContext = new PrivilegeObjectContext(this.context, this.state);
this.enterRule(localContext, 112, HiveSqlParser.RULE_privilegeObject);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1463;
this.match(HiveSqlParser.KW_ON);
this.state = 1464;
this.privObject();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privObject() {
let localContext = new PrivObjectContext(this.context, this.state);
this.enterRule(localContext, 114, HiveSqlParser.RULE_privObject);
let _la;
try {
this.state = 1477;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 120, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1466;
this.db_schema();
this.state = 1467;
this.dbSchemaName();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1470;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 329) {
{
this.state = 1469;
this.match(HiveSqlParser.KW_TABLE);
}
}
this.state = 1472;
this.tableOrPartition();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 1473;
this.match(HiveSqlParser.KW_URI);
this.state = 1474;
localContext._path = this.match(HiveSqlParser.StringLiteral);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 1475;
this.match(HiveSqlParser.KW_SERVER);
this.state = 1476;
this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privObjectCols() {
let localContext = new PrivObjectColsContext(this.context, this.state);
this.enterRule(localContext, 116, HiveSqlParser.RULE_privObjectCols);
let _la;
try {
this.state = 1499;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 124, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1479;
this.db_schema();
this.state = 1480;
this.dbSchemaName();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1483;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 329) {
{
this.state = 1482;
this.match(HiveSqlParser.KW_TABLE);
}
}
this.state = 1485;
this.tableName();
this.state = 1490;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 122, this.context)) {
case 1:
{
this.state = 1486;
this.match(HiveSqlParser.LPAREN);
this.state = 1487;
localContext._cols = this.columnNameList();
this.state = 1488;
this.match(HiveSqlParser.RPAREN);
}
break;
}
this.state = 1493;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 237) {
{
this.state = 1492;
this.partitionSpec();
}
}
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 1495;
this.match(HiveSqlParser.KW_URI);
this.state = 1496;
localContext._path = this.match(HiveSqlParser.StringLiteral);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 1497;
this.match(HiveSqlParser.KW_SERVER);
this.state = 1498;
this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privilegeList() {
let localContext = new PrivilegeListContext(this.context, this.state);
this.enterRule(localContext, 118, HiveSqlParser.RULE_privilegeList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1501;
this.privilegeDef();
this.state = 1506;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1502;
this.match(HiveSqlParser.COMMA);
this.state = 1503;
this.privilegeDef();
}
}
this.state = 1508;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privilegeDef() {
let localContext = new PrivilegeDefContext(this.context, this.state);
this.enterRule(localContext, 120, HiveSqlParser.RULE_privilegeDef);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1509;
this.privilegeType();
this.state = 1514;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 399) {
{
this.state = 1510;
this.match(HiveSqlParser.LPAREN);
this.state = 1511;
localContext._cols = this.columnNameList();
this.state = 1512;
this.match(HiveSqlParser.RPAREN);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
privilegeType() {
let localContext = new PrivilegeTypeContext(this.context, this.state);
this.enterRule(localContext, 122, HiveSqlParser.RULE_privilegeType);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1516;
_la = this.tokenStream.LA(1);
if (!(_la === 7 || _la === 9 || _la === 58 || _la === 86 || _la === 101 || _la === 155 || _la === 161 || _la === 190 || _la === 299 || _la === 309 || _la === 365)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
principalSpecification() {
let localContext = new PrincipalSpecificationContext(this.context, this.state);
this.enterRule(localContext, 124, HiveSqlParser.RULE_principalSpecification);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1518;
this.principalName();
this.state = 1523;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1519;
this.match(HiveSqlParser.COMMA);
this.state = 1520;
this.principalName();
}
}
this.state = 1525;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
principalName() {
let localContext = new PrincipalNameContext(this.context, this.state);
this.enterRule(localContext, 126, HiveSqlParser.RULE_principalName);
try {
this.state = 1532;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_USER:
this.enterOuterAlt(localContext, 1);
{
this.state = 1526;
this.match(HiveSqlParser.KW_USER);
this.state = 1527;
this.principalIdentifier();
}
break;
case HiveSqlParser.KW_GROUP:
this.enterOuterAlt(localContext, 2);
{
this.state = 1528;
this.match(HiveSqlParser.KW_GROUP);
this.state = 1529;
this.principalIdentifier();
}
break;
case HiveSqlParser.KW_ROLE:
this.enterOuterAlt(localContext, 3);
{
this.state = 1530;
this.match(HiveSqlParser.KW_ROLE);
this.state = 1531;
this.id_();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
principalAlterName() {
let localContext = new PrincipalAlterNameContext(this.context, this.state);
this.enterRule(localContext, 128, HiveSqlParser.RULE_principalAlterName);
try {
this.state = 1539;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 129, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1534;
this.match(HiveSqlParser.KW_USER);
this.state = 1535;
this.principalIdentifier();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1536;
this.match(HiveSqlParser.KW_ROLE);
this.state = 1537;
this.id_();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 1538;
this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
withGrantOption() {
let localContext = new WithGrantOptionContext(this.context, this.state);
this.enterRule(localContext, 130, HiveSqlParser.RULE_withGrantOption);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1541;
this.match(HiveSqlParser.KW_WITH);
this.state = 1542;
this.match(HiveSqlParser.KW_GRANT);
this.state = 1543;
this.match(HiveSqlParser.KW_OPTION);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
grantOptionFor() {
let localContext = new GrantOptionForContext(this.context, this.state);
this.enterRule(localContext, 132, HiveSqlParser.RULE_grantOptionFor);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1545;
this.match(HiveSqlParser.KW_GRANT);
this.state = 1546;
this.match(HiveSqlParser.KW_OPTION);
this.state = 1547;
this.match(HiveSqlParser.KW_FOR);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
adminOptionFor() {
let localContext = new AdminOptionForContext(this.context, this.state);
this.enterRule(localContext, 134, HiveSqlParser.RULE_adminOptionFor);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1549;
this.match(HiveSqlParser.KW_ADMIN);
this.state = 1550;
this.match(HiveSqlParser.KW_OPTION);
this.state = 1551;
this.match(HiveSqlParser.KW_FOR);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
withAdminOption() {
let localContext = new WithAdminOptionContext(this.context, this.state);
this.enterRule(localContext, 136, HiveSqlParser.RULE_withAdminOption);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1553;
this.match(HiveSqlParser.KW_WITH);
this.state = 1554;
this.match(HiveSqlParser.KW_ADMIN);
this.state = 1555;
this.match(HiveSqlParser.KW_OPTION);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
metastoreCheck() {
let localContext = new MetastoreCheckContext(this.context, this.state);
this.enterRule(localContext, 138, HiveSqlParser.RULE_metastoreCheck);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1557;
this.match(HiveSqlParser.KW_MSCK);
this.state = 1559;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 276) {
{
this.state = 1558;
localContext._repair = this.match(HiveSqlParser.KW_REPAIR);
}
}
{
this.state = 1561;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1562;
this.tableName();
this.state = 1568;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 132, this.context)) {
case 1:
{
this.state = 1563;
localContext._opt = this.tokenStream.LT(1);
_la = this.tokenStream.LA(1);
if (!(_la === 4 || _la === 101 || _la === 326)) {
localContext._opt = this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 1564;
localContext._parts = this.match(HiveSqlParser.KW_PARTITIONS);
this.state = 1566;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 131, this.context)) {
case 1:
{
this.state = 1565;
this.partitionSelectorSpec();
}
break;
}
}
break;
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
resourceList() {
let localContext = new ResourceListContext(this.context, this.state);
this.enterRule(localContext, 140, HiveSqlParser.RULE_resourceList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1570;
this.resource();
this.state = 1575;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1571;
this.match(HiveSqlParser.COMMA);
this.state = 1572;
this.resource();
}
}
this.state = 1577;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
resource() {
let localContext = new ResourceContext(this.context, this.state);
this.enterRule(localContext, 142, HiveSqlParser.RULE_resource);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1578;
localContext._resType = this.resourceType();
this.state = 1579;
localContext._resPath = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
resourceType() {
let localContext = new ResourceTypeContext(this.context, this.state);
this.enterRule(localContext, 144, HiveSqlParser.RULE_resourceType);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1581;
_la = this.tokenStream.LA(1);
if (!(_la === 15 || _la === 128 || _la === 170)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createFunctionStatement() {
let localContext = new CreateFunctionStatementContext(this.context, this.state);
this.enterRule(localContext, 146, HiveSqlParser.RULE_createFunctionStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1583;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1585;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 333) {
{
this.state = 1584;
localContext._temp = this.match(HiveSqlParser.KW_TEMPORARY);
}
}
this.state = 1587;
this.match(HiveSqlParser.KW_FUNCTION);
this.state = 1588;
this.functionNameCreate();
this.state = 1589;
this.match(HiveSqlParser.KW_AS);
this.state = 1590;
this.match(HiveSqlParser.StringLiteral);
this.state = 1593;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 370) {
{
this.state = 1591;
this.match(HiveSqlParser.KW_USING);
this.state = 1592;
localContext._rList = this.resourceList();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropFunctionStatement() {
let localContext = new DropFunctionStatementContext(this.context, this.state);
this.enterRule(localContext, 148, HiveSqlParser.RULE_dropFunctionStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1595;
this.match(HiveSqlParser.KW_DROP);
this.state = 1597;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 333) {
{
this.state = 1596;
localContext._temp = this.match(HiveSqlParser.KW_TEMPORARY);
}
}
this.state = 1599;
this.match(HiveSqlParser.KW_FUNCTION);
this.state = 1601;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1600;
this.ifExists();
}
}
this.state = 1603;
this.functionNameForDDL();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
reloadFunctionsStatement() {
let localContext = new ReloadFunctionsStatementContext(this.context, this.state);
this.enterRule(localContext, 150, HiveSqlParser.RULE_reloadFunctionsStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1605;
this.match(HiveSqlParser.KW_RELOAD);
this.state = 1606;
_la = this.tokenStream.LA(1);
if (!(_la === 141 || _la === 142)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createMacroStatement() {
let localContext = new CreateMacroStatementContext(this.context, this.state);
this.enterRule(localContext, 152, HiveSqlParser.RULE_createMacroStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1608;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1609;
this.match(HiveSqlParser.KW_TEMPORARY);
this.state = 1610;
this.match(HiveSqlParser.KW_MACRO);
this.state = 1611;
this.match(HiveSqlParser.Identifier);
this.state = 1612;
this.match(HiveSqlParser.LPAREN);
this.state = 1614;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252454782) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394 || _la === 432) {
{
this.state = 1613;
this.columnNameTypeList();
}
}
this.state = 1616;
this.match(HiveSqlParser.RPAREN);
this.state = 1617;
this.expression();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropMacroStatement() {
let localContext = new DropMacroStatementContext(this.context, this.state);
this.enterRule(localContext, 154, HiveSqlParser.RULE_dropMacroStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1619;
this.match(HiveSqlParser.KW_DROP);
this.state = 1620;
this.match(HiveSqlParser.KW_TEMPORARY);
this.state = 1621;
this.match(HiveSqlParser.KW_MACRO);
this.state = 1623;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1622;
this.ifExists();
}
}
this.state = 1625;
this.match(HiveSqlParser.Identifier);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createIndexStatement() {
let localContext = new CreateIndexStatementContext(this.context, this.state);
this.enterRule(localContext, 156, HiveSqlParser.RULE_createIndexStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1627;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1628;
this.match(HiveSqlParser.KW_INDEX);
this.state = 1629;
this.id_();
this.state = 1630;
this.match(HiveSqlParser.KW_ON);
this.state = 1631;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1632;
this.tableName();
this.state = 1633;
this.columnParenthesesList();
this.state = 1634;
this.match(HiveSqlParser.KW_AS);
this.state = 1635;
localContext._indextype = this.match(HiveSqlParser.StringLiteral);
this.state = 1639;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 140, this.context)) {
case 1:
{
this.state = 1636;
this.match(HiveSqlParser.KW_WITH);
this.state = 1637;
this.match(HiveSqlParser.KW_DEFERRED);
this.state = 1638;
this.match(HiveSqlParser.KW_REBUILD);
}
break;
}
this.state = 1643;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 150) {
{
this.state = 1641;
this.match(HiveSqlParser.KW_IDXPROPERTIES);
this.state = 1642;
this.tableProperties();
}
}
this.state = 1648;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 154) {
{
this.state = 1645;
this.match(HiveSqlParser.KW_IN);
this.state = 1646;
this.match(HiveSqlParser.KW_TABLE);
this.state = 1647;
this.tableName();
}
}
this.state = 1653;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 238) {
{
this.state = 1650;
this.match(HiveSqlParser.KW_PARTITIONED);
this.state = 1651;
this.match(HiveSqlParser.KW_BY);
this.state = 1652;
this.columnParenthesesList();
}
}
this.state = 1659;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291 || _la === 321) {
{
this.state = 1656;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 1655;
this.tableRowFormat();
}
}
this.state = 1658;
this.tableFileFormat();
}
}
this.state = 1662;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 1661;
this.locationPath();
}
}
this.state = 1665;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 1664;
this.tablePropertiesPrefixed();
}
}
this.state = 1668;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 1667;
this.tableComment();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropIndexStatement() {
let localContext = new DropIndexStatementContext(this.context, this.state);
this.enterRule(localContext, 158, HiveSqlParser.RULE_dropIndexStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1670;
this.match(HiveSqlParser.KW_DROP);
this.state = 1671;
this.match(HiveSqlParser.KW_INDEX);
this.state = 1673;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1672;
this.ifExists();
}
}
this.state = 1675;
this.id_();
this.state = 1676;
this.match(HiveSqlParser.KW_ON);
this.state = 1677;
this.tableName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createViewStatement() {
let localContext = new CreateViewStatementContext(this.context, this.state);
this.enterRule(localContext, 160, HiveSqlParser.RULE_createViewStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1679;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1682;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 228) {
{
this.state = 1680;
this.match(HiveSqlParser.KW_OR);
this.state = 1681;
this.match(HiveSqlParser.KW_REPLACE);
}
}
this.state = 1684;
this.match(HiveSqlParser.KW_VIEW);
this.state = 1686;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1685;
this.ifNotExists();
}
}
this.state = 1688;
localContext._name = this.viewNameCreate();
this.state = 1693;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 399) {
{
this.state = 1689;
this.match(HiveSqlParser.LPAREN);
this.state = 1690;
this.columnNameCommentList();
this.state = 1691;
this.match(HiveSqlParser.RPAREN);
}
}
this.state = 1696;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 1695;
this.tableComment();
}
}
this.state = 1699;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 238) {
{
this.state = 1698;
this.viewPartition();
}
}
this.state = 1702;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 1701;
this.tablePropertiesPrefixed();
}
}
this.state = 1704;
this.match(HiveSqlParser.KW_AS);
this.state = 1705;
this.selectStatementWithCTE();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewPartition() {
let localContext = new ViewPartitionContext(this.context, this.state);
this.enterRule(localContext, 162, HiveSqlParser.RULE_viewPartition);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1707;
this.match(HiveSqlParser.KW_PARTITIONED);
this.state = 1708;
this.match(HiveSqlParser.KW_ON);
this.state = 1714;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.LPAREN:
{
this.state = 1709;
this.match(HiveSqlParser.LPAREN);
this.state = 1710;
this.columnNameList();
}
break;
case HiveSqlParser.KW_SPEC:
{
this.state = 1711;
this.match(HiveSqlParser.KW_SPEC);
this.state = 1712;
this.match(HiveSqlParser.LPAREN);
this.state = 1713;
localContext._spec = this.partitionTransformSpec();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 1716;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewOrganization() {
let localContext = new ViewOrganizationContext(this.context, this.state);
this.enterRule(localContext, 164, HiveSqlParser.RULE_viewOrganization);
try {
this.state = 1720;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_CLUSTERED:
this.enterOuterAlt(localContext, 1);
{
this.state = 1718;
this.viewClusterSpec();
}
break;
case HiveSqlParser.KW_DISTRIBUTED:
this.enterOuterAlt(localContext, 2);
{
this.state = 1719;
this.viewComplexSpec();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewClusterSpec() {
let localContext = new ViewClusterSpecContext(this.context, this.state);
this.enterRule(localContext, 166, HiveSqlParser.RULE_viewClusterSpec);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1722;
this.match(HiveSqlParser.KW_CLUSTERED);
this.state = 1723;
this.match(HiveSqlParser.KW_ON);
this.state = 1724;
this.match(HiveSqlParser.LPAREN);
this.state = 1725;
this.columnNameList();
this.state = 1726;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewComplexSpec() {
let localContext = new ViewComplexSpecContext(this.context, this.state);
this.enterRule(localContext, 168, HiveSqlParser.RULE_viewComplexSpec);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1728;
this.viewDistSpec();
this.state = 1729;
this.viewSortSpec();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewDistSpec() {
let localContext = new ViewDistSpecContext(this.context, this.state);
this.enterRule(localContext, 170, HiveSqlParser.RULE_viewDistSpec);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1731;
this.match(HiveSqlParser.KW_DISTRIBUTED);
this.state = 1732;
this.match(HiveSqlParser.KW_ON);
this.state = 1733;
this.match(HiveSqlParser.LPAREN);
this.state = 1734;
localContext._colList = this.columnNameList();
this.state = 1735;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewSortSpec() {
let localContext = new ViewSortSpecContext(this.context, this.state);
this.enterRule(localContext, 172, HiveSqlParser.RULE_viewSortSpec);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1737;
this.match(HiveSqlParser.KW_SORTED);
this.state = 1738;
this.match(HiveSqlParser.KW_ON);
this.state = 1739;
this.match(HiveSqlParser.LPAREN);
this.state = 1740;
localContext._colList = this.columnNameList();
this.state = 1741;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropViewStatement() {
let localContext = new DropViewStatementContext(this.context, this.state);
this.enterRule(localContext, 174, HiveSqlParser.RULE_dropViewStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1743;
this.match(HiveSqlParser.KW_DROP);
this.state = 1744;
this.match(HiveSqlParser.KW_VIEW);
this.state = 1746;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1745;
this.ifExists();
}
}
this.state = 1748;
this.viewName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createMaterializedViewStatement() {
let localContext = new CreateMaterializedViewStatementContext(this.context, this.state);
this.enterRule(localContext, 176, HiveSqlParser.RULE_createMaterializedViewStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1750;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1751;
this.match(HiveSqlParser.KW_MATERIALIZED);
this.state = 1752;
this.match(HiveSqlParser.KW_VIEW);
this.state = 1754;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1753;
this.ifNotExists();
}
}
this.state = 1756;
localContext._name = this.viewNameCreate();
this.state = 1758;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 94 || _la === 95) {
{
this.state = 1757;
this.rewriteDisabled();
}
}
this.state = 1761;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 1760;
this.tableComment();
}
}
this.state = 1764;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 238) {
{
this.state = 1763;
this.viewPartition();
}
}
this.state = 1767;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 42 || _la === 98) {
{
this.state = 1766;
this.viewOrganization();
}
}
this.state = 1770;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 1769;
this.tableRowFormat();
}
}
this.state = 1773;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 1772;
this.tableFileFormat();
}
}
this.state = 1776;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 1775;
this.locationPath();
}
}
this.state = 1779;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 1778;
this.tablePropertiesPrefixed();
}
}
this.state = 1781;
this.match(HiveSqlParser.KW_AS);
this.state = 1782;
this.selectStatementWithCTE();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropMaterializedViewStatement() {
let localContext = new DropMaterializedViewStatementContext(this.context, this.state);
this.enterRule(localContext, 178, HiveSqlParser.RULE_dropMaterializedViewStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1784;
this.match(HiveSqlParser.KW_DROP);
this.state = 1785;
this.match(HiveSqlParser.KW_MATERIALIZED);
this.state = 1786;
this.match(HiveSqlParser.KW_VIEW);
this.state = 1788;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 1787;
this.ifExists();
}
}
this.state = 1790;
this.viewName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createScheduledQueryStatement() {
let localContext = new CreateScheduledQueryStatementContext(this.context, this.state);
this.enterRule(localContext, 180, HiveSqlParser.RULE_createScheduledQueryStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1792;
this.match(HiveSqlParser.KW_CREATE);
this.state = 1793;
this.match(HiveSqlParser.KW_SCHEDULED);
this.state = 1794;
this.match(HiveSqlParser.KW_QUERY);
this.state = 1795;
localContext._name = this.id_();
this.state = 1796;
this.scheduleSpec();
this.state = 1798;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 116) {
{
this.state = 1797;
this.executedAsSpec();
}
}
this.state = 1801;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (((((_la - 94)) & ~0x1F) === 0 && ((1 << (_la - 94)) & 12291) !== 0)) {
{
this.state = 1800;
this.enableSpecification();
}
}
this.state = 1803;
this.definedAsSpec();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropScheduledQueryStatement() {
let localContext = new DropScheduledQueryStatementContext(this.context, this.state);
this.enterRule(localContext, 182, HiveSqlParser.RULE_dropScheduledQueryStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1805;
this.match(HiveSqlParser.KW_DROP);
this.state = 1806;
this.match(HiveSqlParser.KW_SCHEDULED);
this.state = 1807;
this.match(HiveSqlParser.KW_QUERY);
this.state = 1808;
localContext._name = this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterScheduledQueryStatement() {
let localContext = new AlterScheduledQueryStatementContext(this.context, this.state);
this.enterRule(localContext, 184, HiveSqlParser.RULE_alterScheduledQueryStatement);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1810;
this.match(HiveSqlParser.KW_ALTER);
this.state = 1811;
this.match(HiveSqlParser.KW_SCHEDULED);
this.state = 1812;
this.match(HiveSqlParser.KW_QUERY);
this.state = 1813;
localContext._name = this.id_();
this.state = 1814;
localContext._mod = this.alterScheduledQueryChange();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterScheduledQueryChange() {
let localContext = new AlterScheduledQueryChangeContext(this.context, this.state);
this.enterRule(localContext, 186, HiveSqlParser.RULE_alterScheduledQueryChange);
try {
this.state = 1821;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_EVERY:
this.enterOuterAlt(localContext, 1);
{
this.state = 1816;
this.scheduleSpec();
}
break;
case HiveSqlParser.KW_EXECUTED:
this.enterOuterAlt(localContext, 2);
{
this.state = 1817;
this.executedAsSpec();
}
break;
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
this.enterOuterAlt(localContext, 3);
{
this.state = 1818;
this.enableSpecification();
}
break;
case HiveSqlParser.KW_AS:
case HiveSqlParser.KW_DEFINED:
this.enterOuterAlt(localContext, 4);
{
this.state = 1819;
this.definedAsSpec();
}
break;
case HiveSqlParser.KW_EXECUTE:
this.enterOuterAlt(localContext, 5);
{
this.state = 1820;
this.match(HiveSqlParser.KW_EXECUTE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
scheduleSpec() {
let localContext = new ScheduleSpecContext(this.context, this.state);
this.enterRule(localContext, 188, HiveSqlParser.RULE_scheduleSpec);
let _la;
try {
this.state = 1838;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_CRON:
this.enterOuterAlt(localContext, 1);
{
this.state = 1823;
this.match(HiveSqlParser.KW_CRON);
this.state = 1824;
localContext._cronString = this.match(HiveSqlParser.StringLiteral);
}
break;
case HiveSqlParser.KW_EVERY:
this.enterOuterAlt(localContext, 2);
{
this.state = 1825;
this.match(HiveSqlParser.KW_EVERY);
this.state = 1827;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 431) {
{
this.state = 1826;
localContext._value = this.match(HiveSqlParser.Number);
}
}
this.state = 1829;
localContext._qualifier = this.intervalQualifiers();
this.state = 1836;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 20 || _la === 223) {
{
this.state = 1833;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_AT:
{
this.state = 1830;
this.match(HiveSqlParser.KW_AT);
}
break;
case HiveSqlParser.KW_OFFSET:
{
this.state = 1831;
this.match(HiveSqlParser.KW_OFFSET);
this.state = 1832;
this.match(HiveSqlParser.KW_BY);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 1835;
localContext._offsetTs = this.match(HiveSqlParser.StringLiteral);
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
executedAsSpec() {
let localContext = new ExecutedAsSpecContext(this.context, this.state);
this.enterRule(localContext, 190, HiveSqlParser.RULE_executedAsSpec);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1840;
this.match(HiveSqlParser.KW_EXECUTED);
this.state = 1841;
this.match(HiveSqlParser.KW_AS);
this.state = 1842;
localContext._executedAs = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
definedAsSpec() {
let localContext = new DefinedAsSpecContext(this.context, this.state);
this.enterRule(localContext, 192, HiveSqlParser.RULE_definedAsSpec);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1845;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 85) {
{
this.state = 1844;
this.match(HiveSqlParser.KW_DEFINED);
}
}
this.state = 1847;
this.match(HiveSqlParser.KW_AS);
this.state = 1848;
this.statement();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
showStmtIdentifier() {
let localContext = new ShowStmtIdentifierContext(this.context, this.state);
this.enterRule(localContext, 194, HiveSqlParser.RULE_showStmtIdentifier);
try {
this.state = 1852;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 1);
{
this.state = 1850;
this.id_();
}
break;
case HiveSqlParser.StringLiteral:
this.enterOuterAlt(localContext, 2);
{
this.state = 1851;
this.match(HiveSqlParser.StringLiteral);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableComment() {
let localContext = new TableCommentContext(this.context, this.state);
this.enterRule(localContext, 196, HiveSqlParser.RULE_tableComment);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1854;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 1855;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableLifecycle() {
let localContext = new TableLifecycleContext(this.context, this.state);
this.enterRule(localContext, 198, HiveSqlParser.RULE_tableLifecycle);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1857;
this.match(HiveSqlParser.KW_LIFECYCLE);
this.state = 1858;
this.match(HiveSqlParser.Number);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createTablePartitionSpec() {
let localContext = new CreateTablePartitionSpecContext(this.context, this.state);
this.enterRule(localContext, 200, HiveSqlParser.RULE_createTablePartitionSpec);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1860;
this.match(HiveSqlParser.KW_PARTITIONED);
this.state = 1861;
this.match(HiveSqlParser.KW_BY);
this.state = 1870;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.LPAREN:
{
this.state = 1862;
this.match(HiveSqlParser.LPAREN);
this.state = 1865;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 178, this.context)) {
case 1:
{
this.state = 1863;
localContext._opt1 = this.createTablePartitionColumnTypeSpec();
}
break;
case 2:
{
this.state = 1864;
localContext._opt2 = this.columnNameList();
}
break;
}
}
break;
case HiveSqlParser.KW_SPEC:
{
this.state = 1867;
this.match(HiveSqlParser.KW_SPEC);
this.state = 1868;
this.match(HiveSqlParser.LPAREN);
this.state = 1869;
localContext._spec = this.partitionTransformSpec();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 1872;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createTablePartitionColumnTypeSpec() {
let localContext = new CreateTablePartitionColumnTypeSpecContext(this.context, this.state);
this.enterRule(localContext, 202, HiveSqlParser.RULE_createTablePartitionColumnTypeSpec);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1874;
this.columnNameTypeConstraint();
this.state = 1879;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1875;
this.match(HiveSqlParser.COMMA);
this.state = 1876;
this.columnNameTypeConstraint();
}
}
this.state = 1881;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionTransformSpec() {
let localContext = new PartitionTransformSpecContext(this.context, this.state);
this.enterRule(localContext, 204, HiveSqlParser.RULE_partitionTransformSpec);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1882;
this.partitionTransformType();
this.state = 1887;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1883;
this.match(HiveSqlParser.COMMA);
this.state = 1884;
this.partitionTransformType();
}
}
this.state = 1889;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionTransformType() {
let localContext = new PartitionTransformTypeContext(this.context, this.state);
this.enterRule(localContext, 206, HiveSqlParser.RULE_partitionTransformType);
let _la;
try {
this.state = 1908;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 183, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1890;
this.columnName();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1895;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
{
this.state = 1891;
this.year();
}
break;
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
{
this.state = 1892;
this.month();
}
break;
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
{
this.state = 1893;
this.day();
}
break;
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
{
this.state = 1894;
this.hour();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 1897;
this.match(HiveSqlParser.LPAREN);
this.state = 1898;
this.columnName();
this.state = 1899;
this.match(HiveSqlParser.RPAREN);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 1901;
_la = this.tokenStream.LA(1);
if (!(_la === 30 || _la === 351)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 1902;
this.match(HiveSqlParser.LPAREN);
this.state = 1903;
localContext._value = this.match(HiveSqlParser.Number);
this.state = 1904;
this.match(HiveSqlParser.COMMA);
this.state = 1905;
this.columnName();
this.state = 1906;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableBuckets() {
let localContext = new TableBucketsContext(this.context, this.state);
this.enterRule(localContext, 208, HiveSqlParser.RULE_tableBuckets);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1910;
this.match(HiveSqlParser.KW_CLUSTERED);
this.state = 1911;
this.match(HiveSqlParser.KW_BY);
this.state = 1912;
this.match(HiveSqlParser.LPAREN);
this.state = 1913;
localContext._bucketCols = this.columnNameList();
this.state = 1914;
this.match(HiveSqlParser.RPAREN);
this.state = 1921;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 315) {
{
this.state = 1915;
this.match(HiveSqlParser.KW_SORTED);
this.state = 1916;
this.match(HiveSqlParser.KW_BY);
this.state = 1917;
this.match(HiveSqlParser.LPAREN);
this.state = 1918;
localContext._sortCols = this.columnNameOrderList();
this.state = 1919;
this.match(HiveSqlParser.RPAREN);
}
}
this.state = 1923;
this.match(HiveSqlParser.KW_INTO);
this.state = 1924;
localContext._num = this.match(HiveSqlParser.Number);
this.state = 1925;
this.match(HiveSqlParser.KW_BUCKETS);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableSkewed() {
let localContext = new TableSkewedContext(this.context, this.state);
this.enterRule(localContext, 210, HiveSqlParser.RULE_tableSkewed);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1927;
this.match(HiveSqlParser.KW_SKEWED);
this.state = 1928;
this.match(HiveSqlParser.KW_BY);
this.state = 1929;
this.match(HiveSqlParser.LPAREN);
this.state = 1930;
localContext._skewedCols = this.columnNameList();
this.state = 1931;
this.match(HiveSqlParser.RPAREN);
this.state = 1932;
this.match(HiveSqlParser.KW_ON);
this.state = 1933;
this.match(HiveSqlParser.LPAREN);
this.state = 1934;
localContext._skewedValues = this.skewedValueElement();
this.state = 1935;
this.match(HiveSqlParser.RPAREN);
this.state = 1937;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 185, this.context)) {
case 1:
{
this.state = 1936;
this.storedAsDirs();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rowFormat() {
let localContext = new RowFormatContext(this.context, this.state);
this.enterRule(localContext, 212, HiveSqlParser.RULE_rowFormat);
try {
this.state = 1941;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 186, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1939;
this.rowFormatSerde();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1940;
this.rowFormatDelimited();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
recordReader() {
let localContext = new RecordReaderContext(this.context, this.state);
this.enterRule(localContext, 214, HiveSqlParser.RULE_recordReader);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1943;
this.match(HiveSqlParser.KW_RECORDREADER);
this.state = 1944;
this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
recordWriter() {
let localContext = new RecordWriterContext(this.context, this.state);
this.enterRule(localContext, 216, HiveSqlParser.RULE_recordWriter);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1946;
this.match(HiveSqlParser.KW_RECORDWRITER);
this.state = 1947;
this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rowFormatSerde() {
let localContext = new RowFormatSerdeContext(this.context, this.state);
this.enterRule(localContext, 218, HiveSqlParser.RULE_rowFormatSerde);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1949;
this.match(HiveSqlParser.KW_ROW);
this.state = 1950;
this.match(HiveSqlParser.KW_FORMAT);
this.state = 1951;
this.match(HiveSqlParser.KW_SERDE);
this.state = 1952;
localContext._name = this.match(HiveSqlParser.StringLiteral);
this.state = 1956;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 187, this.context)) {
case 1:
{
this.state = 1953;
this.match(HiveSqlParser.KW_WITH);
this.state = 1954;
this.match(HiveSqlParser.KW_SERDEPROPERTIES);
this.state = 1955;
localContext._serderops = this.tableProperties();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rowFormatDelimited() {
let localContext = new RowFormatDelimitedContext(this.context, this.state);
this.enterRule(localContext, 220, HiveSqlParser.RULE_rowFormatDelimited);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1958;
this.match(HiveSqlParser.KW_ROW);
this.state = 1959;
this.match(HiveSqlParser.KW_FORMAT);
this.state = 1960;
this.match(HiveSqlParser.KW_DELIMITED);
this.state = 1962;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 127) {
{
this.state = 1961;
this.tableRowFormatFieldIdentifier();
}
}
this.state = 1965;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 44) {
{
this.state = 1964;
this.tableRowFormatCollItemsIdentifier();
}
}
this.state = 1968;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 190, this.context)) {
case 1:
{
this.state = 1967;
this.tableRowFormatMapKeysIdentifier();
}
break;
}
this.state = 1971;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 186) {
{
this.state = 1970;
this.tableRowFormatLinesIdentifier();
}
}
this.state = 1974;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 219) {
{
this.state = 1973;
this.tableRowNullFormat();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableRowFormat() {
let localContext = new TableRowFormatContext(this.context, this.state);
this.enterRule(localContext, 222, HiveSqlParser.RULE_tableRowFormat);
try {
this.state = 1978;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 193, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1976;
this.rowFormatDelimited();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1977;
this.rowFormatSerde();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tablePropertiesPrefixed() {
let localContext = new TablePropertiesPrefixedContext(this.context, this.state);
this.enterRule(localContext, 224, HiveSqlParser.RULE_tablePropertiesPrefixed);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1980;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 1981;
this.tableProperties();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableProperties() {
let localContext = new TablePropertiesContext(this.context, this.state);
this.enterRule(localContext, 226, HiveSqlParser.RULE_tableProperties);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1983;
this.match(HiveSqlParser.LPAREN);
this.state = 1984;
this.tablePropertiesList();
this.state = 1985;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tablePropertiesList() {
let localContext = new TablePropertiesListContext(this.context, this.state);
this.enterRule(localContext, 228, HiveSqlParser.RULE_tablePropertiesList);
let _la;
try {
this.state = 1996;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 195, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 1987;
this.keyValuePropertyList();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 1988;
localContext._key = this.match(HiveSqlParser.StringLiteral);
this.state = 1993;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 1989;
this.match(HiveSqlParser.COMMA);
this.state = 1990;
localContext._key = this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 1995;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
keyValueProperties() {
let localContext = new KeyValuePropertiesContext(this.context, this.state);
this.enterRule(localContext, 230, HiveSqlParser.RULE_keyValueProperties);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 1998;
this.match(HiveSqlParser.LPAREN);
this.state = 1999;
this.keyValuePropertyList();
this.state = 2000;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
keyValuePropertyList() {
let localContext = new KeyValuePropertyListContext(this.context, this.state);
this.enterRule(localContext, 232, HiveSqlParser.RULE_keyValuePropertyList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2002;
this.keyValueProperty();
this.state = 2007;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2003;
this.match(HiveSqlParser.COMMA);
this.state = 2004;
this.keyValueProperty();
}
}
this.state = 2009;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
keyValueProperty() {
let localContext = new KeyValuePropertyContext(this.context, this.state);
this.enterRule(localContext, 234, HiveSqlParser.RULE_keyValueProperty);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2010;
localContext._key = this.match(HiveSqlParser.StringLiteral);
this.state = 2011;
this.match(HiveSqlParser.EQUAL);
this.state = 2012;
localContext._value = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableRowFormatFieldIdentifier() {
let localContext = new TableRowFormatFieldIdentifierContext(this.context, this.state);
this.enterRule(localContext, 236, HiveSqlParser.RULE_tableRowFormatFieldIdentifier);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2014;
this.match(HiveSqlParser.KW_FIELDS);
this.state = 2015;
this.match(HiveSqlParser.KW_TERMINATED);
this.state = 2016;
this.match(HiveSqlParser.KW_BY);
this.state = 2017;
localContext._fldIdnt = this.match(HiveSqlParser.StringLiteral);
this.state = 2021;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 110) {
{
this.state = 2018;
this.match(HiveSqlParser.KW_ESCAPED);
this.state = 2019;
this.match(HiveSqlParser.KW_BY);
this.state = 2020;
localContext._fldEscape = this.match(HiveSqlParser.StringLiteral);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableRowFormatCollItemsIdentifier() {
let localContext = new TableRowFormatCollItemsIdentifierContext(this.context, this.state);
this.enterRule(localContext, 238, HiveSqlParser.RULE_tableRowFormatCollItemsIdentifier);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2023;
this.match(HiveSqlParser.KW_COLLECTION);
this.state = 2024;
this.match(HiveSqlParser.KW_ITEMS);
this.state = 2025;
this.match(HiveSqlParser.KW_TERMINATED);
this.state = 2026;
this.match(HiveSqlParser.KW_BY);
this.state = 2027;
localContext._collIdnt = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableRowFormatMapKeysIdentifier() {
let localContext = new TableRowFormatMapKeysIdentifierContext(this.context, this.state);
this.enterRule(localContext, 240, HiveSqlParser.RULE_tableRowFormatMapKeysIdentifier);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2029;
this.match(HiveSqlParser.KW_MAP);
this.state = 2030;
this.match(HiveSqlParser.KW_KEYS);
this.state = 2031;
this.match(HiveSqlParser.KW_TERMINATED);
this.state = 2032;
this.match(HiveSqlParser.KW_BY);
this.state = 2033;
localContext._mapKeysIdnt = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableRowFormatLinesIdentifier() {
let localContext = new TableRowFormatLinesIdentifierContext(this.context, this.state);
this.enterRule(localContext, 242, HiveSqlParser.RULE_tableRowFormatLinesIdentifier);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2035;
this.match(HiveSqlParser.KW_LINES);
this.state = 2036;
this.match(HiveSqlParser.KW_TERMINATED);
this.state = 2037;
this.match(HiveSqlParser.KW_BY);
this.state = 2038;
localContext._linesIdnt = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableRowNullFormat() {
let localContext = new TableRowNullFormatContext(this.context, this.state);
this.enterRule(localContext, 244, HiveSqlParser.RULE_tableRowNullFormat);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2040;
this.match(HiveSqlParser.KW_NULL);
this.state = 2041;
this.match(HiveSqlParser.KW_DEFINED);
this.state = 2042;
this.match(HiveSqlParser.KW_AS);
this.state = 2043;
localContext._nullIdnt = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableFileFormat() {
let localContext = new TableFileFormatContext(this.context, this.state);
this.enterRule(localContext, 246, HiveSqlParser.RULE_tableFileFormat);
let _la;
try {
this.state = 2086;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 203, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2045;
this.match(HiveSqlParser.KW_STORED);
this.state = 2046;
this.match(HiveSqlParser.KW_AS);
this.state = 2047;
this.match(HiveSqlParser.KW_INPUTFORMAT);
this.state = 2048;
localContext._inFmt = this.match(HiveSqlParser.StringLiteral);
this.state = 2049;
this.match(HiveSqlParser.KW_OUTPUTFORMAT);
this.state = 2050;
localContext._outFmt = this.match(HiveSqlParser.StringLiteral);
this.state = 2055;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 159) {
{
this.state = 2051;
this.match(HiveSqlParser.KW_INPUTDRIVER);
this.state = 2052;
localContext._inDriver = this.match(HiveSqlParser.StringLiteral);
this.state = 2053;
this.match(HiveSqlParser.KW_OUTPUTDRIVER);
this.state = 2054;
localContext._outDriver = this.match(HiveSqlParser.StringLiteral);
}
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2057;
this.match(HiveSqlParser.KW_STORED);
this.state = 2058;
this.match(HiveSqlParser.KW_BY);
this.state = 2059;
localContext._storageHandler = this.match(HiveSqlParser.StringLiteral);
this.state = 2063;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 199, this.context)) {
case 1:
{
this.state = 2060;
this.match(HiveSqlParser.KW_WITH);
this.state = 2061;
this.match(HiveSqlParser.KW_SERDEPROPERTIES);
this.state = 2062;
localContext._serdeprops = this.tableProperties();
}
break;
}
this.state = 2068;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 2065;
this.match(HiveSqlParser.KW_STORED);
this.state = 2066;
this.match(HiveSqlParser.KW_AS);
this.state = 2067;
localContext._fileformat = this.id_();
}
}
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 2070;
this.match(HiveSqlParser.KW_STORED);
this.state = 2071;
this.match(HiveSqlParser.KW_BY);
this.state = 2072;
localContext._genericSpec = this.id_();
this.state = 2076;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 201, this.context)) {
case 1:
{
this.state = 2073;
this.match(HiveSqlParser.KW_WITH);
this.state = 2074;
this.match(HiveSqlParser.KW_SERDEPROPERTIES);
this.state = 2075;
localContext._serdeprops = this.tableProperties();
}
break;
}
this.state = 2081;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 2078;
this.match(HiveSqlParser.KW_STORED);
this.state = 2079;
this.match(HiveSqlParser.KW_AS);
this.state = 2080;
localContext._fileformat = this.id_();
}
}
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 2083;
this.match(HiveSqlParser.KW_STORED);
this.state = 2084;
this.match(HiveSqlParser.KW_AS);
this.state = 2085;
localContext._genericSpec = this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameTypeList() {
let localContext = new ColumnNameTypeListContext(this.context, this.state);
this.enterRule(localContext, 248, HiveSqlParser.RULE_columnNameTypeList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2088;
this.columnNameType();
this.state = 2093;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2089;
this.match(HiveSqlParser.COMMA);
this.state = 2090;
this.columnNameType();
}
}
this.state = 2095;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameTypeOrConstraintList() {
let localContext = new ColumnNameTypeOrConstraintListContext(this.context, this.state);
this.enterRule(localContext, 250, HiveSqlParser.RULE_columnNameTypeOrConstraintList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2096;
this.columnNameTypeOrConstraint();
this.state = 2101;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2097;
this.match(HiveSqlParser.COMMA);
this.state = 2098;
this.columnNameTypeOrConstraint();
}
}
this.state = 2103;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameColonTypeList() {
let localContext = new ColumnNameColonTypeListContext(this.context, this.state);
this.enterRule(localContext, 252, HiveSqlParser.RULE_columnNameColonTypeList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2104;
this.columnNameColonType();
this.state = 2109;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2105;
this.match(HiveSqlParser.COMMA);
this.state = 2106;
this.columnNameColonType();
}
}
this.state = 2111;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameList() {
let localContext = new ColumnNameListContext(this.context, this.state);
this.enterRule(localContext, 254, HiveSqlParser.RULE_columnNameList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2112;
this.columnName();
this.state = 2117;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2113;
this.match(HiveSqlParser.COMMA);
this.state = 2114;
this.columnName();
}
}
this.state = 2119;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnName() {
let localContext = new ColumnNameContext(this.context, this.state);
this.enterRule(localContext, 256, HiveSqlParser.RULE_columnName);
try {
this.state = 2122;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 208, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2120;
this.poolPath();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2121;
if (!(this.shouldMatchEmpty())) {
throw this.createFailedPredicateException("this.shouldMatchEmpty()");
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNamePath() {
let localContext = new ColumnNamePathContext(this.context, this.state);
this.enterRule(localContext, 258, HiveSqlParser.RULE_columnNamePath);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2124;
this.poolPath();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameCreate() {
let localContext = new ColumnNameCreateContext(this.context, this.state);
this.enterRule(localContext, 260, HiveSqlParser.RULE_columnNameCreate);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2126;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
extColumnName() {
let localContext = new ExtColumnNameContext(this.context, this.state);
this.enterRule(localContext, 262, HiveSqlParser.RULE_extColumnName);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2128;
this.columnName();
this.state = 2138;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 395) {
{
{
this.state = 2129;
this.match(HiveSqlParser.DOT);
this.state = 2134;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 209, this.context)) {
case 1:
{
this.state = 2130;
this.match(HiveSqlParser.KW_ELEM_TYPE);
}
break;
case 2:
{
this.state = 2131;
this.match(HiveSqlParser.KW_KEY_TYPE);
}
break;
case 3:
{
this.state = 2132;
this.match(HiveSqlParser.KW_VALUE_TYPE);
}
break;
case 4:
{
this.state = 2133;
this.id_();
}
break;
}
}
}
this.state = 2140;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameOrderList() {
let localContext = new ColumnNameOrderListContext(this.context, this.state);
this.enterRule(localContext, 264, HiveSqlParser.RULE_columnNameOrderList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2141;
this.columnNameOrder();
this.state = 2146;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2142;
this.match(HiveSqlParser.COMMA);
this.state = 2143;
this.columnNameOrder();
}
}
this.state = 2148;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnParenthesesList() {
let localContext = new ColumnParenthesesListContext(this.context, this.state);
this.enterRule(localContext, 266, HiveSqlParser.RULE_columnParenthesesList);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2149;
this.match(HiveSqlParser.LPAREN);
this.state = 2150;
this.columnNameList();
this.state = 2151;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
enableValidateSpecification() {
let localContext = new EnableValidateSpecificationContext(this.context, this.state);
this.enterRule(localContext, 268, HiveSqlParser.RULE_enableValidateSpecification);
let _la;
try {
this.state = 2158;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
this.enterOuterAlt(localContext, 1);
{
this.state = 2153;
this.enableSpecification();
this.state = 2155;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 217 || _la === 373) {
{
this.state = 2154;
this.validateSpecification();
}
}
}
break;
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_NOT:
this.enterOuterAlt(localContext, 2);
{
this.state = 2157;
this.enforcedSpecification();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
enableSpecification() {
let localContext = new EnableSpecificationContext(this.context, this.state);
this.enterRule(localContext, 270, HiveSqlParser.RULE_enableSpecification);
try {
this.state = 2162;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
this.enterOuterAlt(localContext, 1);
{
this.state = 2160;
this.enable();
}
break;
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
this.enterOuterAlt(localContext, 2);
{
this.state = 2161;
this.disable();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
validateSpecification() {
let localContext = new ValidateSpecificationContext(this.context, this.state);
this.enterRule(localContext, 272, HiveSqlParser.RULE_validateSpecification);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2164;
_la = this.tokenStream.LA(1);
if (!(_la === 217 || _la === 373)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
enforcedSpecification() {
let localContext = new EnforcedSpecificationContext(this.context, this.state);
this.enterRule(localContext, 274, HiveSqlParser.RULE_enforcedSpecification);
try {
this.state = 2169;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ENFORCED:
this.enterOuterAlt(localContext, 1);
{
this.state = 2166;
this.match(HiveSqlParser.KW_ENFORCED);
}
break;
case HiveSqlParser.KW_NOT:
this.enterOuterAlt(localContext, 2);
{
this.state = 2167;
this.match(HiveSqlParser.KW_NOT);
this.state = 2168;
this.match(HiveSqlParser.KW_ENFORCED);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
relySpecification() {
let localContext = new RelySpecificationContext(this.context, this.state);
this.enterRule(localContext, 276, HiveSqlParser.RULE_relySpecification);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2171;
_la = this.tokenStream.LA(1);
if (!(_la === 214 || _la === 272)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createConstraint() {
let localContext = new CreateConstraintContext(this.context, this.state);
this.enterRule(localContext, 278, HiveSqlParser.RULE_createConstraint);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2175;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 55) {
{
this.state = 2173;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2174;
localContext._constraintName = this.id_();
}
}
this.state = 2177;
this.tableLevelConstraint();
this.state = 2179;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (((((_la - 94)) & ~0x1F) === 0 && ((1 << (_la - 94)) & 45059) !== 0) || _la === 216) {
{
this.state = 2178;
this.constraintOptsCreate();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterConstraintWithName() {
let localContext = new AlterConstraintWithNameContext(this.context, this.state);
this.enterRule(localContext, 280, HiveSqlParser.RULE_alterConstraintWithName);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2181;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2182;
localContext._constraintName = this.id_();
this.state = 2183;
this.tableLevelConstraint();
this.state = 2185;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 218, this.context)) {
case 1:
{
this.state = 2184;
this.constraintOptsAlter();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableLevelConstraint() {
let localContext = new TableLevelConstraintContext(this.context, this.state);
this.enterRule(localContext, 282, HiveSqlParser.RULE_tableLevelConstraint);
try {
this.state = 2189;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_PRIMARY:
case HiveSqlParser.KW_UNIQUE:
this.enterOuterAlt(localContext, 1);
{
this.state = 2187;
this.pkUkConstraint();
}
break;
case HiveSqlParser.KW_CHECK:
this.enterOuterAlt(localContext, 2);
{
this.state = 2188;
this.checkConstraint();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
pkUkConstraint() {
let localContext = new PkUkConstraintContext(this.context, this.state);
this.enterRule(localContext, 284, HiveSqlParser.RULE_pkUkConstraint);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2191;
this.tableConstraintType();
this.state = 2192;
localContext._pkCols = this.columnParenthesesList();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
checkConstraint() {
let localContext = new CheckConstraintContext(this.context, this.state);
this.enterRule(localContext, 286, HiveSqlParser.RULE_checkConstraint);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2194;
this.match(HiveSqlParser.KW_CHECK);
this.state = 2195;
this.match(HiveSqlParser.LPAREN);
this.state = 2196;
this.expression();
this.state = 2197;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createForeignKey() {
let localContext = new CreateForeignKeyContext(this.context, this.state);
this.enterRule(localContext, 288, HiveSqlParser.RULE_createForeignKey);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2201;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 55) {
{
this.state = 2199;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2200;
localContext._constraintName = this.id_();
}
}
this.state = 2203;
this.match(HiveSqlParser.KW_FOREIGN);
this.state = 2204;
this.match(HiveSqlParser.KW_KEY);
this.state = 2205;
localContext._fkCols = this.columnParenthesesList();
this.state = 2206;
this.match(HiveSqlParser.KW_REFERENCES);
this.state = 2207;
localContext._tabName = this.tableName();
this.state = 2208;
localContext._parCols = this.columnParenthesesList();
this.state = 2210;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (((((_la - 94)) & ~0x1F) === 0 && ((1 << (_la - 94)) & 45059) !== 0) || _la === 216) {
{
this.state = 2209;
this.constraintOptsCreate();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterForeignKeyWithName() {
let localContext = new AlterForeignKeyWithNameContext(this.context, this.state);
this.enterRule(localContext, 290, HiveSqlParser.RULE_alterForeignKeyWithName);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2212;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2213;
localContext._constraintName = this.id_();
this.state = 2214;
this.match(HiveSqlParser.KW_FOREIGN);
this.state = 2215;
this.match(HiveSqlParser.KW_KEY);
this.state = 2216;
localContext._fkCols = this.columnParenthesesList();
this.state = 2217;
this.match(HiveSqlParser.KW_REFERENCES);
this.state = 2218;
localContext._tabName = this.tableName();
this.state = 2219;
localContext._parCols = this.columnParenthesesList();
this.state = 2221;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 222, this.context)) {
case 1:
{
this.state = 2220;
this.constraintOptsAlter();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
skewedValueElement() {
let localContext = new SkewedValueElementContext(this.context, this.state);
this.enterRule(localContext, 292, HiveSqlParser.RULE_skewedValueElement);
try {
this.state = 2225;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_CURRENT_DATE:
case HiveSqlParser.KW_CURRENT_TIMESTAMP:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATE:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FALSE:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULL:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMP:
case HiveSqlParser.KW_TIMESTAMPLOCALTZ:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TRUE:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.QUESTION:
case HiveSqlParser.StringLiteral:
case HiveSqlParser.IntegralLiteral:
case HiveSqlParser.NumberLiteral:
case HiveSqlParser.Number:
case HiveSqlParser.Identifier:
case HiveSqlParser.CharSetName:
this.enterOuterAlt(localContext, 1);
{
this.state = 2223;
this.constantList();
}
break;
case HiveSqlParser.LPAREN:
this.enterOuterAlt(localContext, 2);
{
this.state = 2224;
this.skewedColumnValuePairList();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
skewedColumnValuePairList() {
let localContext = new SkewedColumnValuePairListContext(this.context, this.state);
this.enterRule(localContext, 294, HiveSqlParser.RULE_skewedColumnValuePairList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2227;
this.skewedColumnValuePair();
this.state = 2232;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2228;
this.match(HiveSqlParser.COMMA);
this.state = 2229;
this.skewedColumnValuePair();
}
}
this.state = 2234;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
skewedColumnValuePair() {
let localContext = new SkewedColumnValuePairContext(this.context, this.state);
this.enterRule(localContext, 296, HiveSqlParser.RULE_skewedColumnValuePair);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2235;
this.match(HiveSqlParser.LPAREN);
this.state = 2236;
localContext._colValues = this.constantList();
this.state = 2237;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
constantList() {
let localContext = new ConstantListContext(this.context, this.state);
this.enterRule(localContext, 298, HiveSqlParser.RULE_constantList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2239;
this.constant();
this.state = 2244;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2240;
this.match(HiveSqlParser.COMMA);
this.state = 2241;
this.constant();
}
}
this.state = 2246;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
orderSpecification() {
let localContext = new OrderSpecificationContext(this.context, this.state);
this.enterRule(localContext, 300, HiveSqlParser.RULE_orderSpecification);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2247;
_la = this.tokenStream.LA(1);
if (!(_la === 18 || _la === 89)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
nullOrdering() {
let localContext = new NullOrderingContext(this.context, this.state);
this.enterRule(localContext, 302, HiveSqlParser.RULE_nullOrdering);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2249;
this.match(HiveSqlParser.KW_NULLS);
this.state = 2250;
_la = this.tokenStream.LA(1);
if (!(_la === 130 || _la === 177)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameOrder() {
let localContext = new ColumnNameOrderContext(this.context, this.state);
this.enterRule(localContext, 304, HiveSqlParser.RULE_columnNameOrder);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2252;
this.columnName();
this.state = 2254;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 18 || _la === 89) {
{
this.state = 2253;
localContext._orderSpec = this.orderSpecification();
}
}
this.state = 2257;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 220) {
{
this.state = 2256;
localContext._nullSpec = this.nullOrdering();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameCommentList() {
let localContext = new ColumnNameCommentListContext(this.context, this.state);
this.enterRule(localContext, 306, HiveSqlParser.RULE_columnNameCommentList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2259;
this.columnNameComment();
this.state = 2264;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2260;
this.match(HiveSqlParser.COMMA);
this.state = 2261;
this.columnNameComment();
}
}
this.state = 2266;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameComment() {
let localContext = new ColumnNameCommentContext(this.context, this.state);
this.enterRule(localContext, 308, HiveSqlParser.RULE_columnNameComment);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2267;
localContext._colName = this.columnNameCreate();
this.state = 2270;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 2268;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 2269;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnRefOrder() {
let localContext = new ColumnRefOrderContext(this.context, this.state);
this.enterRule(localContext, 310, HiveSqlParser.RULE_columnRefOrder);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2274;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 230, this.context)) {
case 1:
{
this.state = 2272;
this.columnName();
}
break;
case 2:
{
this.state = 2273;
this.expression();
}
break;
}
this.state = 2277;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 231, this.context)) {
case 1:
{
this.state = 2276;
localContext._orderSpec = this.orderSpecification();
}
break;
}
this.state = 2280;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 220) {
{
this.state = 2279;
localContext._nullSpec = this.nullOrdering();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameType() {
let localContext = new ColumnNameTypeContext(this.context, this.state);
this.enterRule(localContext, 312, HiveSqlParser.RULE_columnNameType);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2282;
localContext._colName = this.columnNameCreate();
this.state = 2283;
this.columnType();
this.state = 2286;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 2284;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 2285;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameTypeOrConstraint() {
let localContext = new ColumnNameTypeOrConstraintContext(this.context, this.state);
this.enterRule(localContext, 314, HiveSqlParser.RULE_columnNameTypeOrConstraint);
try {
this.state = 2290;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 234, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2288;
this.tableConstraint();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2289;
this.columnNameTypeConstraint();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableConstraint() {
let localContext = new TableConstraintContext(this.context, this.state);
this.enterRule(localContext, 316, HiveSqlParser.RULE_tableConstraint);
try {
this.state = 2294;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 235, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2292;
this.createForeignKey();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2293;
this.createConstraint();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameTypeConstraint() {
let localContext = new ColumnNameTypeConstraintContext(this.context, this.state);
this.enterRule(localContext, 318, HiveSqlParser.RULE_columnNameTypeConstraint);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2296;
localContext._colName = this.columnNameCreate();
this.state = 2297;
localContext._colType = this.columnType();
this.state = 2299;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 40 || _la === 55 || _la === 83 || _la === 216 || _la === 251 || _la === 269 || _la === 358) {
{
this.state = 2298;
this.columnConstraint();
}
}
this.state = 2303;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 2301;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 2302;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnConstraint() {
let localContext = new ColumnConstraintContext(this.context, this.state);
this.enterRule(localContext, 320, HiveSqlParser.RULE_columnConstraint);
try {
this.state = 2307;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 238, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2305;
this.foreignKeyConstraint();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2306;
this.colConstraint();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
foreignKeyConstraint() {
let localContext = new ForeignKeyConstraintContext(this.context, this.state);
this.enterRule(localContext, 322, HiveSqlParser.RULE_foreignKeyConstraint);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2311;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 55) {
{
this.state = 2309;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2310;
localContext._constraintName = this.id_();
}
}
this.state = 2313;
this.match(HiveSqlParser.KW_REFERENCES);
this.state = 2314;
localContext._tabName = this.tableName();
this.state = 2315;
this.match(HiveSqlParser.LPAREN);
this.state = 2316;
localContext._colName = this.columnName();
this.state = 2317;
this.match(HiveSqlParser.RPAREN);
this.state = 2319;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (((((_la - 94)) & ~0x1F) === 0 && ((1 << (_la - 94)) & 45059) !== 0) || _la === 216) {
{
this.state = 2318;
this.constraintOptsCreate();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
colConstraint() {
let localContext = new ColConstraintContext(this.context, this.state);
this.enterRule(localContext, 324, HiveSqlParser.RULE_colConstraint);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2323;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 55) {
{
this.state = 2321;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2322;
localContext._constraintName = this.id_();
}
}
this.state = 2325;
this.columnConstraintType();
this.state = 2327;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (((((_la - 94)) & ~0x1F) === 0 && ((1 << (_la - 94)) & 45059) !== 0) || _la === 216) {
{
this.state = 2326;
this.constraintOptsCreate();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterColumnConstraint() {
let localContext = new AlterColumnConstraintContext(this.context, this.state);
this.enterRule(localContext, 326, HiveSqlParser.RULE_alterColumnConstraint);
try {
this.state = 2331;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 243, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2329;
this.alterForeignKeyConstraint();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2330;
this.alterColConstraint();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterForeignKeyConstraint() {
let localContext = new AlterForeignKeyConstraintContext(this.context, this.state);
this.enterRule(localContext, 328, HiveSqlParser.RULE_alterForeignKeyConstraint);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2335;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 55) {
{
this.state = 2333;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2334;
localContext._constraintName = this.id_();
}
}
this.state = 2337;
this.match(HiveSqlParser.KW_REFERENCES);
this.state = 2338;
localContext._tabName = this.tableName();
this.state = 2339;
this.match(HiveSqlParser.LPAREN);
this.state = 2340;
localContext._colName = this.columnName();
this.state = 2341;
this.match(HiveSqlParser.RPAREN);
this.state = 2343;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 245, this.context)) {
case 1:
{
this.state = 2342;
this.constraintOptsAlter();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterColConstraint() {
let localContext = new AlterColConstraintContext(this.context, this.state);
this.enterRule(localContext, 330, HiveSqlParser.RULE_alterColConstraint);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2347;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 55) {
{
this.state = 2345;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2346;
localContext._constraintName = this.id_();
}
}
this.state = 2349;
this.columnConstraintType();
this.state = 2351;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 247, this.context)) {
case 1:
{
this.state = 2350;
this.constraintOptsAlter();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnConstraintType() {
let localContext = new ColumnConstraintTypeContext(this.context, this.state);
this.enterRule(localContext, 332, HiveSqlParser.RULE_columnConstraintType);
try {
this.state = 2359;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_NOT:
this.enterOuterAlt(localContext, 1);
{
this.state = 2353;
this.match(HiveSqlParser.KW_NOT);
this.state = 2354;
this.match(HiveSqlParser.KW_NULL);
}
break;
case HiveSqlParser.KW_DEFAULT:
this.enterOuterAlt(localContext, 2);
{
this.state = 2355;
this.match(HiveSqlParser.KW_DEFAULT);
this.state = 2356;
this.defaultVal();
}
break;
case HiveSqlParser.KW_CHECK:
this.enterOuterAlt(localContext, 3);
{
this.state = 2357;
this.checkConstraint();
}
break;
case HiveSqlParser.KW_PRIMARY:
case HiveSqlParser.KW_UNIQUE:
this.enterOuterAlt(localContext, 4);
{
this.state = 2358;
this.tableConstraintType();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
defaultVal() {
let localContext = new DefaultValContext(this.context, this.state);
this.enterRule(localContext, 334, HiveSqlParser.RULE_defaultVal);
try {
this.state = 2364;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 249, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2361;
this.constant();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2362;
this.function_();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 2363;
this.castExpression();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableConstraintType() {
let localContext = new TableConstraintTypeContext(this.context, this.state);
this.enterRule(localContext, 336, HiveSqlParser.RULE_tableConstraintType);
try {
this.state = 2369;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_PRIMARY:
this.enterOuterAlt(localContext, 1);
{
this.state = 2366;
this.match(HiveSqlParser.KW_PRIMARY);
this.state = 2367;
this.match(HiveSqlParser.KW_KEY);
}
break;
case HiveSqlParser.KW_UNIQUE:
this.enterOuterAlt(localContext, 2);
{
this.state = 2368;
this.match(HiveSqlParser.KW_UNIQUE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
constraintOptsCreate() {
let localContext = new ConstraintOptsCreateContext(this.context, this.state);
this.enterRule(localContext, 338, HiveSqlParser.RULE_constraintOptsCreate);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2371;
this.enableValidateSpecification();
this.state = 2373;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 214 || _la === 272) {
{
this.state = 2372;
this.relySpecification();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
constraintOptsAlter() {
let localContext = new ConstraintOptsAlterContext(this.context, this.state);
this.enterRule(localContext, 340, HiveSqlParser.RULE_constraintOptsAlter);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2375;
this.enableValidateSpecification();
this.state = 2377;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 214 || _la === 272) {
{
this.state = 2376;
this.relySpecification();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnNameColonType() {
let localContext = new ColumnNameColonTypeContext(this.context, this.state);
this.enterRule(localContext, 342, HiveSqlParser.RULE_columnNameColonType);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2379;
localContext._colName = this.columnNameCreate();
this.state = 2380;
this.match(HiveSqlParser.COLON);
this.state = 2381;
this.columnType();
this.state = 2384;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 2382;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 2383;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnType() {
let localContext = new ColumnTypeContext(this.context, this.state);
this.enterRule(localContext, 344, HiveSqlParser.RULE_columnType);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2386;
this.type_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnTypeList() {
let localContext = new ColumnTypeListContext(this.context, this.state);
this.enterRule(localContext, 346, HiveSqlParser.RULE_columnTypeList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2388;
this.columnType();
this.state = 2393;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2389;
this.match(HiveSqlParser.COMMA);
this.state = 2390;
this.columnType();
}
}
this.state = 2395;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
type_() {
let localContext = new TypeContext(this.context, this.state);
this.enterRule(localContext, 348, HiveSqlParser.RULE_type);
try {
this.state = 2401;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_BIGINT:
case HiveSqlParser.KW_BINARY:
case HiveSqlParser.KW_BOOLEAN:
case HiveSqlParser.KW_CHAR:
case HiveSqlParser.KW_DATE:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DEC:
case HiveSqlParser.KW_DECIMAL:
case HiveSqlParser.KW_NUMERIC:
case HiveSqlParser.KW_DOUBLE:
case HiveSqlParser.KW_FLOAT:
case HiveSqlParser.KW_INT:
case HiveSqlParser.KW_INTEGER:
case HiveSqlParser.KW_REAL:
case HiveSqlParser.KW_SMALLINT:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_TIMESTAMP:
case HiveSqlParser.KW_TIMESTAMPLOCALTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_VARCHAR:
this.enterOuterAlt(localContext, 1);
{
this.state = 2396;
this.primitiveType();
}
break;
case HiveSqlParser.KW_ARRAY:
this.enterOuterAlt(localContext, 2);
{
this.state = 2397;
this.listType();
}
break;
case HiveSqlParser.KW_STRUCT:
this.enterOuterAlt(localContext, 3);
{
this.state = 2398;
this.structType();
}
break;
case HiveSqlParser.KW_MAP:
this.enterOuterAlt(localContext, 4);
{
this.state = 2399;
this.mapType();
}
break;
case HiveSqlParser.KW_UNIONTYPE:
this.enterOuterAlt(localContext, 5);
{
this.state = 2400;
this.unionType();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
primitiveType() {
let localContext = new PrimitiveTypeContext(this.context, this.state);
this.enterRule(localContext, 350, HiveSqlParser.RULE_primitiveType);
let _la;
try {
this.state = 2440;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 259, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2403;
this.match(HiveSqlParser.KW_TINYINT);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2404;
this.match(HiveSqlParser.KW_SMALLINT);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 2405;
this.match(HiveSqlParser.KW_INT);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 2406;
this.match(HiveSqlParser.KW_INTEGER);
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 2407;
this.match(HiveSqlParser.KW_BIGINT);
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 2408;
this.match(HiveSqlParser.KW_BOOLEAN);
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 2409;
this.match(HiveSqlParser.KW_FLOAT);
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 2410;
this.match(HiveSqlParser.KW_REAL);
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 2411;
this.match(HiveSqlParser.KW_DOUBLE);
this.state = 2413;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 248) {
{
this.state = 2412;
this.match(HiveSqlParser.KW_PRECISION);
}
}
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 2415;
this.match(HiveSqlParser.KW_DATE);
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 2416;
this.match(HiveSqlParser.KW_DATETIME);
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 2417;
this.match(HiveSqlParser.KW_TIMESTAMP);
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 2418;
this.match(HiveSqlParser.KW_TIMESTAMPLOCALTZ);
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 2419;
this.match(HiveSqlParser.KW_TIMESTAMP);
this.state = 2420;
this.match(HiveSqlParser.KW_WITH);
this.state = 2421;
this.match(HiveSqlParser.KW_LOCAL);
this.state = 2422;
this.match(HiveSqlParser.KW_TIME);
this.state = 2423;
this.match(HiveSqlParser.KW_ZONE);
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 2424;
this.match(HiveSqlParser.KW_STRING);
}
break;
case 16:
this.enterOuterAlt(localContext, 16);
{
this.state = 2425;
this.match(HiveSqlParser.KW_BINARY);
}
break;
case 17:
this.enterOuterAlt(localContext, 17);
{
this.state = 2426;
this.decimal();
this.state = 2434;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 258, this.context)) {
case 1:
{
this.state = 2427;
this.match(HiveSqlParser.LPAREN);
this.state = 2428;
localContext._prec = this.match(HiveSqlParser.Number);
this.state = 2431;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 397) {
{
this.state = 2429;
this.match(HiveSqlParser.COMMA);
this.state = 2430;
localContext._scale = this.match(HiveSqlParser.Number);
}
}
this.state = 2433;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
break;
case 18:
this.enterOuterAlt(localContext, 18);
{
this.state = 2436;
_la = this.tokenStream.LA(1);
if (!(_la === 39 || _la === 376)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 2437;
this.match(HiveSqlParser.LPAREN);
this.state = 2438;
localContext._length = this.match(HiveSqlParser.Number);
this.state = 2439;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
listType() {
let localContext = new ListTypeContext(this.context, this.state);
this.enterRule(localContext, 352, HiveSqlParser.RULE_listType);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2442;
this.match(HiveSqlParser.KW_ARRAY);
this.state = 2443;
this.match(HiveSqlParser.LESSTHAN);
this.state = 2444;
this.type_();
this.state = 2445;
this.match(HiveSqlParser.GREATERTHAN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
structType() {
let localContext = new StructTypeContext(this.context, this.state);
this.enterRule(localContext, 354, HiveSqlParser.RULE_structType);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2447;
this.match(HiveSqlParser.KW_STRUCT);
this.state = 2448;
this.match(HiveSqlParser.LESSTHAN);
this.state = 2449;
this.columnNameColonTypeList();
this.state = 2450;
this.match(HiveSqlParser.GREATERTHAN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
mapType() {
let localContext = new MapTypeContext(this.context, this.state);
this.enterRule(localContext, 356, HiveSqlParser.RULE_mapType);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2452;
this.match(HiveSqlParser.KW_MAP);
this.state = 2453;
this.match(HiveSqlParser.LESSTHAN);
this.state = 2454;
localContext._left = this.primitiveType();
this.state = 2455;
this.match(HiveSqlParser.COMMA);
this.state = 2456;
localContext._right = this.type_();
this.state = 2457;
this.match(HiveSqlParser.GREATERTHAN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
unionType() {
let localContext = new UnionTypeContext(this.context, this.state);
this.enterRule(localContext, 358, HiveSqlParser.RULE_unionType);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2459;
this.match(HiveSqlParser.KW_UNIONTYPE);
this.state = 2460;
this.match(HiveSqlParser.LESSTHAN);
this.state = 2461;
this.columnTypeList();
this.state = 2462;
this.match(HiveSqlParser.GREATERTHAN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
setOperator() {
let localContext = new SetOperatorContext(this.context, this.state);
this.enterRule(localContext, 360, HiveSqlParser.RULE_setOperator);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2464;
_la = this.tokenStream.LA(1);
if (!(_la === 112 || _la === 164 || _la === 205 || _la === 356)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 2466;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 7 || _la === 96) {
{
this.state = 2465;
_la = this.tokenStream.LA(1);
if (!(_la === 7 || _la === 96)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
queryStatementExpression() {
let localContext = new QueryStatementExpressionContext(this.context, this.state);
this.enterRule(localContext, 362, HiveSqlParser.RULE_queryStatementExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2469;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 387) {
{
this.state = 2468;
localContext._w = this.withClause();
}
}
this.state = 2471;
this.queryStatementExpressionBody();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
queryStatementExpressionBody() {
let localContext = new QueryStatementExpressionBodyContext(this.context, this.state);
this.enterRule(localContext, 364, HiveSqlParser.RULE_queryStatementExpressionBody);
try {
this.state = 2475;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_FROM:
this.enterOuterAlt(localContext, 1);
{
this.state = 2473;
this.fromStatement();
}
break;
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.LPAREN:
this.enterOuterAlt(localContext, 2);
{
this.state = 2474;
this.regularBody();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
withClause() {
let localContext = new WithClauseContext(this.context, this.state);
this.enterRule(localContext, 366, HiveSqlParser.RULE_withClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2477;
this.match(HiveSqlParser.KW_WITH);
this.state = 2478;
this.cteStatement();
this.state = 2483;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2479;
this.match(HiveSqlParser.COMMA);
this.state = 2480;
this.cteStatement();
}
}
this.state = 2485;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
cteStatement() {
let localContext = new CteStatementContext(this.context, this.state);
this.enterRule(localContext, 368, HiveSqlParser.RULE_cteStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2486;
this.id_();
this.state = 2491;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 399) {
{
this.state = 2487;
this.match(HiveSqlParser.LPAREN);
this.state = 2488;
localContext._colAliases = this.columnNameList();
this.state = 2489;
this.match(HiveSqlParser.RPAREN);
}
}
this.state = 2493;
this.match(HiveSqlParser.KW_AS);
this.state = 2494;
this.match(HiveSqlParser.LPAREN);
this.state = 2495;
this.queryStatementExpression();
this.state = 2496;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
fromStatement() {
let localContext = new FromStatementContext(this.context, this.state);
this.enterRule(localContext, 370, HiveSqlParser.RULE_fromStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2498;
this.singleFromStatement();
this.state = 2504;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 112 || _la === 164 || _la === 205 || _la === 356) {
{
{
this.state = 2499;
localContext._u = this.setOperator();
this.state = 2500;
localContext._r = this.singleFromStatement();
}
}
this.state = 2506;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
singleFromStatement() {
let localContext = new SingleFromStatementContext(this.context, this.state);
this.enterRule(localContext, 372, HiveSqlParser.RULE_singleFromStatement);
let _la;
try {
this.state = 2578;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 288, this.context)) {
case 1:
localContext = new FromInsertStmtContext(localContext);
this.enterOuterAlt(localContext, 1);
{
this.state = 2507;
this.fromClause();
this.state = 2508;
this.insertClause();
this.state = 2509;
this.selectClause();
this.state = 2511;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 178 || _la === 397) {
{
this.state = 2510;
this.lateralView();
}
}
this.state = 2514;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 384) {
{
this.state = 2513;
this.whereClause();
}
}
this.state = 2517;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 144) {
{
this.state = 2516;
this.groupByClause();
}
}
this.state = 2520;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 146) {
{
this.state = 2519;
this.havingClause();
}
}
this.state = 2523;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 386) {
{
this.state = 2522;
this.window_clause();
}
}
this.state = 2526;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 256) {
{
this.state = 2525;
this.qualifyClause();
}
}
this.state = 2529;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 2528;
this.orderByClause();
}
}
this.state = 2532;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 41) {
{
this.state = 2531;
this.clusterByClause();
}
}
this.state = 2535;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 97) {
{
this.state = 2534;
this.distributeByClause();
}
}
this.state = 2538;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 314) {
{
this.state = 2537;
this.sortByClause();
}
}
this.state = 2541;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 185) {
{
this.state = 2540;
this.limitClause();
}
}
}
break;
case 2:
localContext = new FromSelectStmtContext(localContext);
this.enterOuterAlt(localContext, 2);
{
this.state = 2543;
this.fromClause();
this.state = 2544;
this.selectClause();
this.state = 2546;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 178 || _la === 397) {
{
this.state = 2545;
this.lateralView();
}
}
this.state = 2549;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 384) {
{
this.state = 2548;
this.whereClause();
}
}
this.state = 2552;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 144) {
{
this.state = 2551;
this.groupByClause();
}
}
this.state = 2555;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 146) {
{
this.state = 2554;
this.havingClause();
}
}
this.state = 2558;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 386) {
{
this.state = 2557;
this.window_clause();
}
}
this.state = 2561;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 256) {
{
this.state = 2560;
this.qualifyClause();
}
}
this.state = 2564;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 2563;
this.orderByClause();
}
}
this.state = 2567;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 41) {
{
this.state = 2566;
this.clusterByClause();
}
}
this.state = 2570;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 97) {
{
this.state = 2569;
this.distributeByClause();
}
}
this.state = 2573;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 314) {
{
this.state = 2572;
this.sortByClause();
}
}
this.state = 2576;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 185) {
{
this.state = 2575;
this.limitClause();
}
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
regularBody() {
let localContext = new RegularBodyContext(this.context, this.state);
this.enterRule(localContext, 374, HiveSqlParser.RULE_regularBody);
try {
this.state = 2584;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_INSERT:
localContext = new InsertStmtContext(localContext);
this.enterOuterAlt(localContext, 1);
{
this.state = 2580;
localContext._i = this.insertClause();
this.state = 2581;
localContext._s = this.selectStatement();
}
break;
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.LPAREN:
localContext = new SelectStmtContext(localContext);
this.enterOuterAlt(localContext, 2);
{
this.state = 2583;
this.selectStatement();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
atomSelectStatement() {
let localContext = new AtomSelectStatementContext(this.context, this.state);
this.enterRule(localContext, 376, HiveSqlParser.RULE_atomSelectStatement);
let _la;
try {
this.state = 2610;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_SELECT:
this.enterOuterAlt(localContext, 1);
{
this.state = 2586;
localContext._s = this.selectClause();
this.state = 2588;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 290, this.context)) {
case 1:
{
this.state = 2587;
localContext._f = this.fromClause();
}
break;
}
this.state = 2591;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 384) {
{
this.state = 2590;
localContext._w = this.whereClause();
}
}
this.state = 2594;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 144) {
{
this.state = 2593;
localContext._g = this.groupByClause();
}
}
this.state = 2597;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 146) {
{
this.state = 2596;
localContext._h = this.havingClause();
}
}
this.state = 2600;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 386) {
{
this.state = 2599;
localContext._win = this.window_clause();
}
}
this.state = 2603;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 256) {
{
this.state = 2602;
localContext._q = this.qualifyClause();
}
}
}
break;
case HiveSqlParser.LPAREN:
this.enterOuterAlt(localContext, 2);
{
this.state = 2605;
this.match(HiveSqlParser.LPAREN);
this.state = 2606;
this.selectStatement();
this.state = 2607;
this.match(HiveSqlParser.RPAREN);
}
break;
case HiveSqlParser.KW_VALUES:
this.enterOuterAlt(localContext, 3);
{
this.state = 2609;
this.valuesClause();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectStatement() {
let localContext = new SelectStatementContext(this.context, this.state);
this.enterRule(localContext, 378, HiveSqlParser.RULE_selectStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2612;
localContext._a = this.atomSelectStatement();
this.state = 2614;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 112 || _la === 164 || _la === 205 || _la === 356) {
{
this.state = 2613;
localContext._set_ = this.setOpSelectStatement();
}
}
this.state = 2617;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 2616;
localContext._o = this.orderByClause();
}
}
this.state = 2620;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 41) {
{
this.state = 2619;
localContext._c = this.clusterByClause();
}
}
this.state = 2623;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 97) {
{
this.state = 2622;
localContext._d = this.distributeByClause();
}
}
this.state = 2626;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 314) {
{
this.state = 2625;
localContext._sort = this.sortByClause();
}
}
this.state = 2629;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 185) {
{
this.state = 2628;
localContext._l = this.limitClause();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
setOpSelectStatement() {
let localContext = new SetOpSelectStatementContext(this.context, this.state);
this.enterRule(localContext, 380, HiveSqlParser.RULE_setOpSelectStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2634;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 2631;
localContext._u = this.setOperator();
this.state = 2632;
localContext._b = this.atomSelectStatement();
}
}
this.state = 2636;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 112 || _la === 164 || _la === 205 || _la === 356);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectStatementWithCTE() {
let localContext = new SelectStatementWithCTEContext(this.context, this.state);
this.enterRule(localContext, 382, HiveSqlParser.RULE_selectStatementWithCTE);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2639;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 387) {
{
this.state = 2638;
localContext._w = this.withClause();
}
}
this.state = 2641;
this.selectStatement();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
insertClause() {
let localContext = new InsertClauseContext(this.context, this.state);
this.enterRule(localContext, 384, HiveSqlParser.RULE_insertClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2643;
this.match(HiveSqlParser.KW_INSERT);
this.state = 2660;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_OVERWRITE:
{
this.state = 2644;
this.match(HiveSqlParser.KW_OVERWRITE);
this.state = 2645;
this.destination();
this.state = 2647;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 2646;
this.ifNotExists();
}
}
}
break;
case HiveSqlParser.KW_INTO:
{
this.state = 2649;
this.match(HiveSqlParser.KW_INTO);
this.state = 2651;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 329) {
{
this.state = 2650;
this.match(HiveSqlParser.KW_TABLE);
}
}
this.state = 2653;
this.tableOrPartition();
this.state = 2658;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 307, this.context)) {
case 1:
{
this.state = 2654;
this.match(HiveSqlParser.LPAREN);
this.state = 2655;
localContext._targetCols = this.columnNameList();
this.state = 2656;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
destination() {
let localContext = new DestinationContext(this.context, this.state);
this.enterRule(localContext, 386, HiveSqlParser.RULE_destination);
let _la;
try {
this.state = 2675;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_LOCAL:
this.enterOuterAlt(localContext, 1);
{
this.state = 2663;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 188) {
{
this.state = 2662;
localContext._local = this.match(HiveSqlParser.KW_LOCAL);
}
}
this.state = 2665;
this.match(HiveSqlParser.KW_DIRECTORY);
this.state = 2666;
this.match(HiveSqlParser.StringLiteral);
this.state = 2668;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 2667;
this.tableRowFormat();
}
}
this.state = 2671;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 2670;
this.tableFileFormat();
}
}
}
break;
case HiveSqlParser.KW_TABLE:
this.enterOuterAlt(localContext, 2);
{
this.state = 2673;
this.match(HiveSqlParser.KW_TABLE);
this.state = 2674;
this.tableOrPartition();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
limitClause() {
let localContext = new LimitClauseContext(this.context, this.state);
this.enterRule(localContext, 388, HiveSqlParser.RULE_limitClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2677;
this.match(HiveSqlParser.KW_LIMIT);
this.state = 2686;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 314, this.context)) {
case 1:
{
this.state = 2680;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 313, this.context)) {
case 1:
{
this.state = 2678;
localContext._offset = this.match(HiveSqlParser.Number);
this.state = 2679;
this.match(HiveSqlParser.COMMA);
}
break;
}
this.state = 2682;
localContext._num = this.match(HiveSqlParser.Number);
}
break;
case 2:
{
this.state = 2683;
localContext._num = this.match(HiveSqlParser.Number);
this.state = 2684;
this.match(HiveSqlParser.KW_OFFSET);
this.state = 2685;
localContext._offset = this.match(HiveSqlParser.Number);
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
columnAssignmentClause() {
let localContext = new ColumnAssignmentClauseContext(this.context, this.state);
this.enterRule(localContext, 390, HiveSqlParser.RULE_columnAssignmentClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2688;
this.columnName();
this.state = 2689;
this.match(HiveSqlParser.EQUAL);
this.state = 2690;
this.precedencePlusExpressionOrDefault();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedencePlusExpressionOrDefault() {
let localContext = new PrecedencePlusExpressionOrDefaultContext(this.context, this.state);
this.enterRule(localContext, 392, HiveSqlParser.RULE_precedencePlusExpressionOrDefault);
try {
this.state = 2694;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 315, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2692;
this.match(HiveSqlParser.KW_DEFAULT);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2693;
this.precedencePlusExpression();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
setColumnsClause() {
let localContext = new SetColumnsClauseContext(this.context, this.state);
this.enterRule(localContext, 394, HiveSqlParser.RULE_setColumnsClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2696;
this.match(HiveSqlParser.KW_SET);
this.state = 2697;
this.columnAssignmentClause();
this.state = 2702;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2698;
this.match(HiveSqlParser.COMMA);
this.state = 2699;
this.columnAssignmentClause();
}
}
this.state = 2704;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
sqlTransactionStatement() {
let localContext = new SqlTransactionStatementContext(this.context, this.state);
this.enterRule(localContext, 396, HiveSqlParser.RULE_sqlTransactionStatement);
let _la;
try {
this.state = 2728;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_START:
this.enterOuterAlt(localContext, 1);
{
this.state = 2705;
this.match(HiveSqlParser.KW_START);
this.state = 2706;
this.match(HiveSqlParser.KW_TRANSACTION);
this.state = 2715;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 168 || _la === 261) {
{
this.state = 2707;
this.transactionMode();
this.state = 2712;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2708;
this.match(HiveSqlParser.COMMA);
this.state = 2709;
this.transactionMode();
}
}
this.state = 2714;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
}
break;
case HiveSqlParser.KW_COMMIT:
this.enterOuterAlt(localContext, 2);
{
this.state = 2717;
this.match(HiveSqlParser.KW_COMMIT);
this.state = 2719;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 389) {
{
this.state = 2718;
this.match(HiveSqlParser.KW_WORK);
}
}
}
break;
case HiveSqlParser.KW_ROLLBACK:
this.enterOuterAlt(localContext, 3);
{
this.state = 2721;
this.match(HiveSqlParser.KW_ROLLBACK);
this.state = 2723;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 389) {
{
this.state = 2722;
this.match(HiveSqlParser.KW_WORK);
}
}
}
break;
case HiveSqlParser.KW_SET:
this.enterOuterAlt(localContext, 4);
{
this.state = 2725;
this.match(HiveSqlParser.KW_SET);
this.state = 2726;
this.match(HiveSqlParser.KW_AUTOCOMMIT);
this.state = 2727;
_la = this.tokenStream.LA(1);
if (!(_la === 125 || _la === 350)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
transactionMode() {
let localContext = new TransactionModeContext(this.context, this.state);
this.enterRule(localContext, 398, HiveSqlParser.RULE_transactionMode);
let _la;
try {
this.state = 2735;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ISOLATION:
this.enterOuterAlt(localContext, 1);
{
this.state = 2730;
this.match(HiveSqlParser.KW_ISOLATION);
this.state = 2731;
this.match(HiveSqlParser.KW_LEVEL);
this.state = 2732;
this.match(HiveSqlParser.KW_SNAPSHOT);
}
break;
case HiveSqlParser.KW_READ:
this.enterOuterAlt(localContext, 2);
{
this.state = 2733;
this.match(HiveSqlParser.KW_READ);
this.state = 2734;
_la = this.tokenStream.LA(1);
if (!(_la === 225 || _la === 391)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
whenClauses() {
let localContext = new WhenClausesContext(this.context, this.state);
this.enterRule(localContext, 400, HiveSqlParser.RULE_whenClauses);
let _la;
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 2741;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 324, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
this.state = 2739;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 323, this.context)) {
case 1:
{
this.state = 2737;
this.whenMatchedAndClause();
}
break;
case 2:
{
this.state = 2738;
this.whenMatchedThenClause();
}
break;
}
}
}
this.state = 2743;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 324, this.context);
}
this.state = 2745;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 383) {
{
this.state = 2744;
this.whenNotMatchedClause();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
whenNotMatchedClause() {
let localContext = new WhenNotMatchedClauseContext(this.context, this.state);
this.enterRule(localContext, 402, HiveSqlParser.RULE_whenNotMatchedClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2747;
this.match(HiveSqlParser.KW_WHEN);
this.state = 2748;
this.match(HiveSqlParser.KW_NOT);
this.state = 2749;
this.match(HiveSqlParser.KW_MATCHED);
this.state = 2752;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 11) {
{
this.state = 2750;
this.match(HiveSqlParser.KW_AND);
this.state = 2751;
this.expression();
}
}
this.state = 2754;
this.match(HiveSqlParser.KW_THEN);
this.state = 2755;
this.match(HiveSqlParser.KW_INSERT);
this.state = 2757;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 399) {
{
this.state = 2756;
localContext._targetCols = this.columnParenthesesList();
}
}
this.state = 2759;
this.match(HiveSqlParser.KW_VALUES);
this.state = 2760;
this.expressionsInParenthesis();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
whenMatchedAndClause() {
let localContext = new WhenMatchedAndClauseContext(this.context, this.state);
this.enterRule(localContext, 404, HiveSqlParser.RULE_whenMatchedAndClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2762;
this.match(HiveSqlParser.KW_WHEN);
this.state = 2763;
this.match(HiveSqlParser.KW_MATCHED);
this.state = 2764;
this.match(HiveSqlParser.KW_AND);
this.state = 2765;
this.expression();
this.state = 2766;
this.match(HiveSqlParser.KW_THEN);
this.state = 2770;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_UPDATE:
{
this.state = 2767;
this.match(HiveSqlParser.KW_UPDATE);
this.state = 2768;
this.setColumnsClause();
}
break;
case HiveSqlParser.KW_DELETE:
{
this.state = 2769;
this.match(HiveSqlParser.KW_DELETE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
whenMatchedThenClause() {
let localContext = new WhenMatchedThenClauseContext(this.context, this.state);
this.enterRule(localContext, 406, HiveSqlParser.RULE_whenMatchedThenClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2772;
this.match(HiveSqlParser.KW_WHEN);
this.state = 2773;
this.match(HiveSqlParser.KW_MATCHED);
this.state = 2774;
this.match(HiveSqlParser.KW_THEN);
this.state = 2778;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_UPDATE:
{
this.state = 2775;
this.match(HiveSqlParser.KW_UPDATE);
this.state = 2776;
this.setColumnsClause();
}
break;
case HiveSqlParser.KW_DELETE:
{
this.state = 2777;
this.match(HiveSqlParser.KW_DELETE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
compactionPool() {
let localContext = new CompactionPoolContext(this.context, this.state);
this.enterRule(localContext, 408, HiveSqlParser.RULE_compactionPool);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2780;
this.match(HiveSqlParser.KW_POOL);
this.state = 2781;
localContext._poolName = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
compactionType() {
let localContext = new CompactionTypeContext(this.context, this.state);
this.enterRule(localContext, 410, HiveSqlParser.RULE_compactionType);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2783;
this.match(HiveSqlParser.KW_TYPE);
this.state = 2784;
localContext._compactType = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
compactionStatus() {
let localContext = new CompactionStatusContext(this.context, this.state);
this.enterRule(localContext, 412, HiveSqlParser.RULE_compactionStatus);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2786;
this.match(HiveSqlParser.KW_STATUS);
this.state = 2787;
localContext._status = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterStatement() {
let localContext = new AlterStatementContext(this.context, this.state);
this.enterRule(localContext, 414, HiveSqlParser.RULE_alterStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 2789;
this.match(HiveSqlParser.KW_ALTER);
this.state = 2820;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_TABLE:
{
this.state = 2790;
this.match(HiveSqlParser.KW_TABLE);
this.state = 2791;
this.tableName();
this.state = 2792;
this.alterTableStatementSuffix();
}
break;
case HiveSqlParser.KW_VIEW:
{
this.state = 2794;
this.match(HiveSqlParser.KW_VIEW);
this.state = 2795;
this.viewName();
this.state = 2797;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 2796;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 2799;
this.alterViewStatementSuffix();
}
break;
case HiveSqlParser.KW_MATERIALIZED:
{
this.state = 2801;
this.match(HiveSqlParser.KW_MATERIALIZED);
this.state = 2802;
this.match(HiveSqlParser.KW_VIEW);
this.state = 2803;
localContext._tableNameTree = this.viewName();
this.state = 2807;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
{
this.state = 2804;
localContext._mvRewriteFlag = this.rewriteEnabled();
}
break;
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
{
this.state = 2805;
localContext._mvRewriteFlag2 = this.rewriteDisabled();
}
break;
case HiveSqlParser.KW_REBUILD:
{
this.state = 2806;
this.match(HiveSqlParser.KW_REBUILD);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case HiveSqlParser.KW_DATABASE:
case HiveSqlParser.KW_SCHEMA:
{
this.state = 2809;
this.db_schema();
this.state = 2810;
this.alterDatabaseStatementSuffix();
}
break;
case HiveSqlParser.KW_DATACONNECTOR:
{
this.state = 2812;
this.match(HiveSqlParser.KW_DATACONNECTOR);
this.state = 2813;
this.alterDataConnectorStatementSuffix();
}
break;
case HiveSqlParser.KW_INDEX:
{
this.state = 2814;
this.match(HiveSqlParser.KW_INDEX);
this.state = 2815;
this.id_();
this.state = 2816;
this.match(HiveSqlParser.KW_ON);
this.state = 2817;
this.tableOrPartition();
this.state = 2818;
this.match(HiveSqlParser.KW_REBUILD);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterTableStatementSuffix() {
let localContext = new AlterTableStatementSuffixContext(this.context, this.state);
this.enterRule(localContext, 416, HiveSqlParser.RULE_alterTableStatementSuffix);
let _la;
try {
this.state = 2911;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 343, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2822;
this.match(HiveSqlParser.KW_RENAME);
this.state = 2823;
this.match(HiveSqlParser.KW_TO);
this.state = 2824;
this.tableNameCreate();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2825;
this.match(HiveSqlParser.KW_RECOVER);
this.state = 2826;
this.match(HiveSqlParser.KW_PARTITIONS);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 2827;
this.alterStatementSuffixDropPartitions();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 2828;
this.match(HiveSqlParser.KW_ADD);
this.state = 2830;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 2829;
this.ifNotExists();
}
}
this.state = 2836;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 2832;
this.partitionSpec();
this.state = 2834;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 2833;
this.locationPath();
}
}
}
}
this.state = 2838;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 237);
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 2840;
this.match(HiveSqlParser.KW_TOUCH);
this.state = 2844;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 237) {
{
{
this.state = 2841;
this.partitionSpec();
}
}
this.state = 2846;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 2847;
this.match(HiveSqlParser.KW_ARCHIVE);
this.state = 2851;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 237) {
{
{
this.state = 2848;
this.partitionSpec();
}
}
this.state = 2853;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 2854;
this.match(HiveSqlParser.KW_UNARCHIVE);
this.state = 2858;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 237) {
{
{
this.state = 2855;
this.partitionSpec();
}
}
this.state = 2860;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 2861;
this.match(HiveSqlParser.KW_SET);
this.state = 2862;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 2863;
this.tableProperties();
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 2864;
this.match(HiveSqlParser.KW_UNSET);
this.state = 2865;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 2867;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 2866;
this.ifExists();
}
}
this.state = 2869;
this.tableProperties();
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 2870;
this.tableSkewed();
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 2871;
this.match(HiveSqlParser.KW_NOT);
this.state = 2874;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_SKEWED:
{
this.state = 2872;
this.match(HiveSqlParser.KW_SKEWED);
}
break;
case HiveSqlParser.KW_STORED:
{
this.state = 2873;
this.storedAsDirs();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 2876;
this.match(HiveSqlParser.KW_EXCHANGE);
this.state = 2877;
this.partitionSpec();
this.state = 2878;
this.match(HiveSqlParser.KW_WITH);
this.state = 2879;
this.match(HiveSqlParser.KW_TABLE);
this.state = 2880;
localContext._exchangename = this.tableName();
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 2882;
this.match(HiveSqlParser.KW_PARTITION);
this.state = 2883;
this.match(HiveSqlParser.KW_COLUMN);
this.state = 2884;
this.match(HiveSqlParser.LPAREN);
this.state = 2885;
this.columnNameType();
this.state = 2886;
this.match(HiveSqlParser.RPAREN);
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 2888;
this.match(HiveSqlParser.KW_DROP);
this.state = 2889;
this.match(HiveSqlParser.KW_CONSTRAINT);
this.state = 2890;
localContext._cName = this.id_();
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 2891;
this.match(HiveSqlParser.KW_ADD);
this.state = 2894;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 341, this.context)) {
case 1:
{
this.state = 2892;
localContext._fk = this.alterForeignKeyWithName();
}
break;
case 2:
{
this.state = 2893;
this.alterConstraintWithName();
}
break;
}
}
break;
case 16:
this.enterOuterAlt(localContext, 16);
{
this.state = 2897;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 237) {
{
this.state = 2896;
this.partitionSpec();
}
}
this.state = 2899;
this.alterTblPartitionStatementSuffix();
}
break;
case 17:
this.enterOuterAlt(localContext, 17);
{
this.state = 2900;
this.match(HiveSqlParser.KW_SET);
this.state = 2901;
this.match(HiveSqlParser.KW_OWNER);
this.state = 2902;
this.principalName();
}
break;
case 18:
this.enterOuterAlt(localContext, 18);
{
this.state = 2903;
this.match(HiveSqlParser.KW_SET);
this.state = 2904;
this.match(HiveSqlParser.KW_PARTITION);
this.state = 2905;
this.match(HiveSqlParser.KW_SPEC);
this.state = 2906;
this.match(HiveSqlParser.LPAREN);
this.state = 2907;
localContext._spec = this.partitionTransformSpec();
this.state = 2908;
this.match(HiveSqlParser.RPAREN);
}
break;
case 19:
this.enterOuterAlt(localContext, 19);
{
this.state = 2910;
this.alterStatementSuffixExecute();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterTblPartitionStatementSuffix() {
let localContext = new AlterTblPartitionStatementSuffixContext(this.context, this.state);
this.enterRule(localContext, 418, HiveSqlParser.RULE_alterTblPartitionStatementSuffix);
let _la;
try {
this.state = 3045;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 364, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 2913;
this.match(HiveSqlParser.KW_SET);
this.state = 2914;
this.match(HiveSqlParser.KW_FILEFORMAT);
this.state = 2915;
this.fileFormat();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 2916;
this.match(HiveSqlParser.KW_SET);
this.state = 2917;
this.match(HiveSqlParser.KW_LOCATION);
this.state = 2918;
localContext._newLoc = this.match(HiveSqlParser.StringLiteral);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 2919;
this.match(HiveSqlParser.KW_CONCATENATE);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 2920;
this.match(HiveSqlParser.KW_SET);
this.state = 2930;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_SERDE:
{
this.state = 2921;
this.match(HiveSqlParser.KW_SERDE);
this.state = 2922;
localContext._serdeName = this.match(HiveSqlParser.StringLiteral);
this.state = 2926;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 344, this.context)) {
case 1:
{
this.state = 2923;
this.match(HiveSqlParser.KW_WITH);
this.state = 2924;
this.match(HiveSqlParser.KW_SERDEPROPERTIES);
this.state = 2925;
this.tableProperties();
}
break;
}
}
break;
case HiveSqlParser.KW_SERDEPROPERTIES:
{
this.state = 2928;
this.match(HiveSqlParser.KW_SERDEPROPERTIES);
this.state = 2929;
this.tableProperties();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 2932;
this.match(HiveSqlParser.KW_UNSET);
this.state = 2933;
this.match(HiveSqlParser.KW_SERDEPROPERTIES);
this.state = 2934;
this.tableProperties();
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 2935;
this.match(HiveSqlParser.KW_RENAME);
this.state = 2936;
this.match(HiveSqlParser.KW_TO);
this.state = 2937;
this.partitionSpec();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 2938;
this.match(HiveSqlParser.KW_INTO);
this.state = 2939;
localContext._num = this.match(HiveSqlParser.Number);
this.state = 2940;
this.match(HiveSqlParser.KW_BUCKETS);
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 2941;
this.match(HiveSqlParser.KW_SET);
this.state = 2942;
this.match(HiveSqlParser.KW_SKEWED);
this.state = 2943;
this.match(HiveSqlParser.KW_LOCATION);
this.state = 2944;
this.match(HiveSqlParser.LPAREN);
this.state = 2945;
this.skewedLocationMap();
this.state = 2950;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 2946;
this.match(HiveSqlParser.COMMA);
this.state = 2947;
this.skewedLocationMap();
}
}
this.state = 2952;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 2953;
this.match(HiveSqlParser.RPAREN);
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 2955;
this.match(HiveSqlParser.KW_NOT);
this.state = 2956;
_la = this.tokenStream.LA(1);
if (!(_la === 42 || _la === 315)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 2957;
this.tableBuckets();
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 2958;
this.match(HiveSqlParser.KW_COMPACT);
this.state = 2959;
localContext._compactType = this.match(HiveSqlParser.StringLiteral);
this.state = 2962;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 11) {
{
this.state = 2960;
this.match(HiveSqlParser.KW_AND);
this.state = 2961;
this.match(HiveSqlParser.KW_WAIT);
}
}
this.state = 2968;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 42) {
{
this.state = 2964;
this.match(HiveSqlParser.KW_CLUSTERED);
this.state = 2965;
this.match(HiveSqlParser.KW_INTO);
this.state = 2966;
localContext._num = this.match(HiveSqlParser.Number);
this.state = 2967;
this.match(HiveSqlParser.KW_BUCKETS);
}
}
this.state = 2971;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 2970;
this.orderByClause();
}
}
this.state = 2974;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 246) {
{
this.state = 2973;
this.compactionPool();
}
}
this.state = 2980;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 351, this.context)) {
case 1:
{
this.state = 2976;
this.match(HiveSqlParser.KW_WITH);
this.state = 2977;
this.match(HiveSqlParser.KW_OVERWRITE);
this.state = 2978;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 2979;
this.tableProperties();
}
break;
}
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 2982;
this.match(HiveSqlParser.KW_UPDATE);
this.state = 2983;
this.match(HiveSqlParser.KW_STATISTICS);
this.state = 2984;
this.match(HiveSqlParser.KW_FOR);
this.state = 2986;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 352, this.context)) {
case 1:
{
this.state = 2985;
this.match(HiveSqlParser.KW_COLUMN);
}
break;
}
this.state = 2988;
localContext._colName = this.columnName();
this.state = 2989;
this.match(HiveSqlParser.KW_SET);
this.state = 2990;
this.tableProperties();
this.state = 2993;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 2991;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 2992;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 2995;
this.match(HiveSqlParser.KW_UPDATE);
this.state = 2996;
this.match(HiveSqlParser.KW_STATISTICS);
this.state = 2997;
this.match(HiveSqlParser.KW_SET);
this.state = 2998;
this.tableProperties();
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 2999;
this.match(HiveSqlParser.KW_CHANGE);
this.state = 3001;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 354, this.context)) {
case 1:
{
this.state = 3000;
this.match(HiveSqlParser.KW_COLUMN);
}
break;
}
this.state = 3003;
localContext._oldName = this.columnName();
this.state = 3004;
localContext._newName = this.columnNameCreate();
this.state = 3005;
this.columnType();
this.state = 3007;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 40 || _la === 55 || _la === 83 || _la === 216 || _la === 251 || _la === 269 || _la === 358) {
{
this.state = 3006;
this.alterColumnConstraint();
}
}
this.state = 3011;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 3009;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 3010;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 3016;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_FIRST:
{
this.state = 3013;
localContext._first = this.match(HiveSqlParser.KW_FIRST);
}
break;
case HiveSqlParser.KW_AFTER:
{
this.state = 3014;
this.match(HiveSqlParser.KW_AFTER);
this.state = 3015;
localContext._afterCol = this.id_();
}
break;
case HiveSqlParser.EOF:
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.SEMICOLON:
case HiveSqlParser.LPAREN:
break;
default:
break;
}
this.state = 3019;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 34 || _la === 282) {
{
this.state = 3018;
this.restrictOrCascade();
}
}
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 3023;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ADD:
{
this.state = 3021;
localContext._add = this.match(HiveSqlParser.KW_ADD);
}
break;
case HiveSqlParser.KW_REPLACE:
{
this.state = 3022;
localContext._replace = this.match(HiveSqlParser.KW_REPLACE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 3025;
this.match(HiveSqlParser.KW_COLUMNS);
this.state = 3026;
this.match(HiveSqlParser.LPAREN);
this.state = 3027;
this.columnNameTypeList();
this.state = 3028;
this.match(HiveSqlParser.RPAREN);
this.state = 3030;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 34 || _la === 282) {
{
this.state = 3029;
this.restrictOrCascade();
}
}
}
break;
case 16:
this.enterOuterAlt(localContext, 16);
{
this.state = 3032;
this.match(HiveSqlParser.KW_UPDATE);
this.state = 3033;
this.match(HiveSqlParser.KW_COLUMNS);
this.state = 3035;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 34 || _la === 282) {
{
this.state = 3034;
this.restrictOrCascade();
}
}
}
break;
case 17:
this.enterOuterAlt(localContext, 17);
{
this.state = 3037;
this.enableSpecification();
this.state = 3043;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_NO_DROP:
{
{
this.state = 3038;
this.match(HiveSqlParser.KW_NO_DROP);
this.state = 3040;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 34) {
{
this.state = 3039;
this.match(HiveSqlParser.KW_CASCADE);
}
}
}
}
break;
case HiveSqlParser.KW_OFFLINE:
{
this.state = 3042;
this.match(HiveSqlParser.KW_OFFLINE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterViewStatementSuffix() {
let localContext = new AlterViewStatementSuffixContext(this.context, this.state);
this.enterRule(localContext, 420, HiveSqlParser.RULE_alterViewStatementSuffix);
let _la;
try {
this.state = 3073;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_SET:
this.enterOuterAlt(localContext, 1);
{
this.state = 3047;
this.match(HiveSqlParser.KW_SET);
this.state = 3048;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 3049;
this.tableProperties();
}
break;
case HiveSqlParser.KW_UNSET:
this.enterOuterAlt(localContext, 2);
{
this.state = 3050;
this.match(HiveSqlParser.KW_UNSET);
this.state = 3051;
this.match(HiveSqlParser.KW_TBLPROPERTIES);
this.state = 3053;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3052;
this.ifExists();
}
}
this.state = 3055;
this.tableProperties();
}
break;
case HiveSqlParser.KW_RENAME:
this.enterOuterAlt(localContext, 3);
{
this.state = 3056;
this.match(HiveSqlParser.KW_RENAME);
this.state = 3057;
this.match(HiveSqlParser.KW_TO);
this.state = 3058;
this.tableNameCreate();
}
break;
case HiveSqlParser.KW_ADD:
this.enterOuterAlt(localContext, 4);
{
this.state = 3059;
this.match(HiveSqlParser.KW_ADD);
this.state = 3061;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3060;
this.ifNotExists();
}
}
this.state = 3067;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 3063;
this.partitionSpec();
this.state = 3065;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 3064;
this.locationPath();
}
}
}
}
this.state = 3069;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 237);
}
break;
case HiveSqlParser.KW_DROP:
this.enterOuterAlt(localContext, 5);
{
this.state = 3071;
this.alterStatementSuffixDropPartitions();
}
break;
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.LPAREN:
this.enterOuterAlt(localContext, 6);
{
this.state = 3072;
this.selectStatementWithCTE();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterDatabaseStatementSuffix() {
let localContext = new AlterDatabaseStatementSuffixContext(this.context, this.state);
this.enterRule(localContext, 422, HiveSqlParser.RULE_alterDatabaseStatementSuffix);
let _la;
try {
this.state = 3090;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 370, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3075;
localContext._name = this.dbSchemaName();
this.state = 3076;
this.match(HiveSqlParser.KW_SET);
this.state = 3077;
this.match(HiveSqlParser.KW_DBPROPERTIES);
this.state = 3078;
this.keyValueProperties();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3080;
localContext._dbName = this.dbSchemaName();
this.state = 3081;
this.match(HiveSqlParser.KW_SET);
this.state = 3082;
this.match(HiveSqlParser.KW_OWNER);
this.state = 3083;
this.principalAlterName();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 3085;
localContext._dbName = this.dbSchemaName();
this.state = 3086;
this.match(HiveSqlParser.KW_SET);
this.state = 3087;
_la = this.tokenStream.LA(1);
if (!(_la === 189 || _la === 196)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 3088;
localContext._newLocation = this.match(HiveSqlParser.StringLiteral);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterDataConnectorStatementSuffix() {
let localContext = new AlterDataConnectorStatementSuffixContext(this.context, this.state);
this.enterRule(localContext, 424, HiveSqlParser.RULE_alterDataConnectorStatementSuffix);
try {
this.state = 3107;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 371, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3092;
localContext._name = this.dbSchemaName();
this.state = 3093;
this.match(HiveSqlParser.KW_SET);
this.state = 3094;
this.match(HiveSqlParser.KW_DCPROPERTIES);
this.state = 3095;
this.keyValueProperties();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3097;
localContext._dcName = this.dbSchemaName();
this.state = 3098;
this.match(HiveSqlParser.KW_SET);
this.state = 3099;
this.match(HiveSqlParser.KW_OWNER);
this.state = 3100;
this.principalAlterName();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 3102;
localContext._dcName = this.dbSchemaName();
this.state = 3103;
this.match(HiveSqlParser.KW_SET);
this.state = 3104;
this.match(HiveSqlParser.KW_URL);
this.state = 3105;
localContext._newUri = this.match(HiveSqlParser.StringLiteral);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
locationPath() {
let localContext = new LocationPathContext(this.context, this.state);
this.enterRule(localContext, 426, HiveSqlParser.RULE_locationPath);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3109;
this.match(HiveSqlParser.KW_LOCATION);
this.state = 3110;
localContext._locn = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterStatementSuffixDropPartitions() {
let localContext = new AlterStatementSuffixDropPartitionsContext(this.context, this.state);
this.enterRule(localContext, 428, HiveSqlParser.RULE_alterStatementSuffixDropPartitions);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3112;
this.match(HiveSqlParser.KW_DROP);
this.state = 3114;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3113;
this.ifExists();
}
}
this.state = 3116;
this.match(HiveSqlParser.KW_PARTITION);
this.state = 3117;
this.partitionSelectorSpec();
this.state = 3123;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3118;
this.match(HiveSqlParser.COMMA);
this.state = 3119;
this.match(HiveSqlParser.KW_PARTITION);
this.state = 3120;
this.partitionSelectorSpec();
}
}
this.state = 3125;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3128;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 152) {
{
this.state = 3126;
this.match(HiveSqlParser.KW_IGNORE);
this.state = 3127;
this.match(HiveSqlParser.KW_PROTECTION);
}
}
this.state = 3131;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 255) {
{
this.state = 3130;
this.match(HiveSqlParser.KW_PURGE);
}
}
this.state = 3134;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 134) {
{
this.state = 3133;
this.replicationClause();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
skewedLocationMap() {
let localContext = new SkewedLocationMapContext(this.context, this.state);
this.enterRule(localContext, 430, HiveSqlParser.RULE_skewedLocationMap);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3138;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_CURRENT_DATE:
case HiveSqlParser.KW_CURRENT_TIMESTAMP:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATE:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FALSE:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULL:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMP:
case HiveSqlParser.KW_TIMESTAMPLOCALTZ:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TRUE:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.QUESTION:
case HiveSqlParser.StringLiteral:
case HiveSqlParser.IntegralLiteral:
case HiveSqlParser.NumberLiteral:
case HiveSqlParser.Number:
case HiveSqlParser.Identifier:
case HiveSqlParser.CharSetName:
{
this.state = 3136;
this.constant();
}
break;
case HiveSqlParser.LPAREN:
{
this.state = 3137;
this.skewedColumnValuePair();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 3140;
this.match(HiveSqlParser.EQUAL);
this.state = 3141;
localContext._value = this.match(HiveSqlParser.StringLiteral);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
alterStatementSuffixExecute() {
let localContext = new AlterStatementSuffixExecuteContext(this.context, this.state);
this.enterRule(localContext, 432, HiveSqlParser.RULE_alterStatementSuffixExecute);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3143;
this.match(HiveSqlParser.KW_EXECUTE);
this.state = 3153;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ROLLBACK:
{
this.state = 3144;
this.match(HiveSqlParser.KW_ROLLBACK);
this.state = 3145;
this.match(HiveSqlParser.LPAREN);
this.state = 3146;
localContext._rollbackParam = this.tokenStream.LT(1);
_la = this.tokenStream.LA(1);
if (!(_la === 426 || _la === 431)) {
localContext._rollbackParam = this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
{
this.state = 3147;
this.match(HiveSqlParser.KW_EXPIRE_SNAPSHOTS);
this.state = 3148;
this.match(HiveSqlParser.LPAREN);
this.state = 3149;
localContext._expireParam = this.match(HiveSqlParser.StringLiteral);
}
break;
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
{
this.state = 3150;
this.match(HiveSqlParser.KW_SET_CURRENT_SNAPSHOT);
this.state = 3151;
this.match(HiveSqlParser.LPAREN);
this.state = 3152;
localContext._snapshotParam = this.match(HiveSqlParser.Number);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 3155;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
fileFormat() {
let localContext = new FileFormatContext(this.context, this.state);
this.enterRule(localContext, 434, HiveSqlParser.RULE_fileFormat);
let _la;
try {
this.state = 3170;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 380, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3157;
this.match(HiveSqlParser.KW_INPUTFORMAT);
this.state = 3158;
localContext._inFmt = this.match(HiveSqlParser.StringLiteral);
this.state = 3159;
this.match(HiveSqlParser.KW_OUTPUTFORMAT);
this.state = 3160;
localContext._outFmt = this.match(HiveSqlParser.StringLiteral);
this.state = 3161;
this.match(HiveSqlParser.KW_SERDE);
this.state = 3162;
localContext._serdeCls = this.match(HiveSqlParser.StringLiteral);
this.state = 3167;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 159) {
{
this.state = 3163;
this.match(HiveSqlParser.KW_INPUTDRIVER);
this.state = 3164;
localContext._inDriver = this.match(HiveSqlParser.StringLiteral);
this.state = 3165;
this.match(HiveSqlParser.KW_OUTPUTDRIVER);
this.state = 3166;
localContext._outDriver = this.match(HiveSqlParser.StringLiteral);
}
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3169;
localContext._genericSpec = this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
likeTableOrFile() {
let localContext = new LikeTableOrFileContext(this.context, this.state);
this.enterRule(localContext, 436, HiveSqlParser.RULE_likeTableOrFile);
try {
this.state = 3181;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 381, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3172;
this.match(HiveSqlParser.KW_LIKE);
this.state = 3173;
this.match(HiveSqlParser.KW_FILE);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3174;
this.match(HiveSqlParser.KW_LIKE);
this.state = 3175;
this.match(HiveSqlParser.KW_FILE);
this.state = 3176;
localContext._format = this.id_();
this.state = 3177;
localContext._uri = this.match(HiveSqlParser.StringLiteral);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 3179;
this.match(HiveSqlParser.KW_LIKE);
this.state = 3180;
localContext._likeName = this.tableName();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createTableStatement() {
let localContext = new CreateTableStatementContext(this.context, this.state);
this.enterRule(localContext, 438, HiveSqlParser.RULE_createTableStatement);
let _la;
try {
this.state = 3318;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 422, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3183;
this.match(HiveSqlParser.KW_CREATE);
this.state = 3185;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 333) {
{
this.state = 3184;
localContext._temp = this.match(HiveSqlParser.KW_TEMPORARY);
}
}
this.state = 3188;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 345) {
{
this.state = 3187;
localContext._trans = this.match(HiveSqlParser.KW_TRANSACTIONAL);
}
}
this.state = 3191;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 123) {
{
this.state = 3190;
localContext._ext = this.match(HiveSqlParser.KW_EXTERNAL);
}
}
this.state = 3193;
this.match(HiveSqlParser.KW_TABLE);
this.state = 3195;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3194;
this.ifNotExists();
}
}
this.state = 3197;
localContext._name = this.tableNameCreate();
this.state = 3254;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_LIKE:
{
this.state = 3198;
this.likeTableOrFile();
this.state = 3200;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 238) {
{
this.state = 3199;
this.createTablePartitionSpec();
}
}
this.state = 3203;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 3202;
this.tableRowFormat();
}
}
this.state = 3206;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 3205;
this.tableFileFormat();
}
}
this.state = 3209;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 3208;
this.locationPath();
}
}
this.state = 3212;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 3211;
this.tablePropertiesPrefixed();
}
}
this.state = 3215;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 183) {
{
this.state = 3214;
this.tableLifecycle();
}
}
}
break;
case HiveSqlParser.EOF:
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_AS:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_ROW:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.SEMICOLON:
case HiveSqlParser.LPAREN:
{
this.state = 3221;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 392, this.context)) {
case 1:
{
this.state = 3217;
this.match(HiveSqlParser.LPAREN);
this.state = 3218;
this.columnNameTypeOrConstraintList();
this.state = 3219;
this.match(HiveSqlParser.RPAREN);
}
break;
}
this.state = 3224;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 3223;
this.tableComment();
}
}
this.state = 3227;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 238) {
{
this.state = 3226;
this.createTablePartitionSpec();
}
}
this.state = 3230;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 42) {
{
this.state = 3229;
this.tableBuckets();
}
}
this.state = 3233;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 310) {
{
this.state = 3232;
this.tableSkewed();
}
}
this.state = 3236;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 3235;
this.tableRowFormat();
}
}
this.state = 3239;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 3238;
this.tableFileFormat();
}
}
this.state = 3242;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 3241;
this.locationPath();
}
}
this.state = 3245;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 3244;
this.tablePropertiesPrefixed();
}
}
this.state = 3248;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 183) {
{
this.state = 3247;
this.tableLifecycle();
}
}
this.state = 3252;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3250;
this.match(HiveSqlParser.KW_AS);
this.state = 3251;
this.selectStatementWithCTE();
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3256;
this.match(HiveSqlParser.KW_CREATE);
this.state = 3257;
localContext._mgd = this.match(HiveSqlParser.KW_MANAGED);
this.state = 3258;
this.match(HiveSqlParser.KW_TABLE);
this.state = 3260;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3259;
this.ifNotExists();
}
}
this.state = 3262;
localContext._name = this.tableNameCreate();
this.state = 3316;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_LIKE:
{
this.state = 3263;
this.likeTableOrFile();
this.state = 3265;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 3264;
this.tableRowFormat();
}
}
this.state = 3268;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 3267;
this.tableFileFormat();
}
}
this.state = 3271;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 3270;
this.locationPath();
}
}
this.state = 3274;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 3273;
this.tablePropertiesPrefixed();
}
}
this.state = 3277;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 183) {
{
this.state = 3276;
this.tableLifecycle();
}
}
}
break;
case HiveSqlParser.EOF:
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_AS:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_ROW:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.SEMICOLON:
case HiveSqlParser.LPAREN:
{
this.state = 3283;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 410, this.context)) {
case 1:
{
this.state = 3279;
this.match(HiveSqlParser.LPAREN);
this.state = 3280;
this.columnNameTypeOrConstraintList();
this.state = 3281;
this.match(HiveSqlParser.RPAREN);
}
break;
}
this.state = 3286;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 3285;
this.tableComment();
}
}
this.state = 3289;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 238) {
{
this.state = 3288;
this.createTablePartitionSpec();
}
}
this.state = 3292;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 42) {
{
this.state = 3291;
this.tableBuckets();
}
}
this.state = 3295;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 310) {
{
this.state = 3294;
this.tableSkewed();
}
}
this.state = 3298;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 291) {
{
this.state = 3297;
this.tableRowFormat();
}
}
this.state = 3301;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 321) {
{
this.state = 3300;
this.tableFileFormat();
}
}
this.state = 3304;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 189) {
{
this.state = 3303;
this.locationPath();
}
}
this.state = 3307;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 332) {
{
this.state = 3306;
this.tablePropertiesPrefixed();
}
}
this.state = 3310;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 183) {
{
this.state = 3309;
this.tableLifecycle();
}
}
this.state = 3314;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3312;
this.match(HiveSqlParser.KW_AS);
this.state = 3313;
this.selectStatementWithCTE();
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
createDataConnectorStatement() {
let localContext = new CreateDataConnectorStatementContext(this.context, this.state);
this.enterRule(localContext, 440, HiveSqlParser.RULE_createDataConnectorStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3320;
this.match(HiveSqlParser.KW_CREATE);
this.state = 3321;
this.match(HiveSqlParser.KW_DATACONNECTOR);
this.state = 3323;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3322;
this.ifNotExists();
}
}
this.state = 3325;
localContext._name = this.id_();
this.state = 3328;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 352) {
{
this.state = 3326;
this.match(HiveSqlParser.KW_TYPE);
this.state = 3327;
localContext._dcType = this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 3332;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 367) {
{
this.state = 3330;
this.match(HiveSqlParser.KW_URL);
this.state = 3331;
localContext._url = this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 3336;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 3334;
this.match(HiveSqlParser.KW_COMMENT);
this.state = 3335;
localContext._comment = this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 3341;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 427, this.context)) {
case 1:
{
this.state = 3338;
this.match(HiveSqlParser.KW_WITH);
this.state = 3339;
this.match(HiveSqlParser.KW_DCPROPERTIES);
this.state = 3340;
localContext._dcprops = this.keyValueProperties();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dropDataConnectorStatement() {
let localContext = new DropDataConnectorStatementContext(this.context, this.state);
this.enterRule(localContext, 442, HiveSqlParser.RULE_dropDataConnectorStatement);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3343;
this.match(HiveSqlParser.KW_DROP);
this.state = 3344;
this.match(HiveSqlParser.KW_DATACONNECTOR);
this.state = 3346;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 3345;
this.ifExists();
}
}
this.state = 3348;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableAllColumns() {
let localContext = new TableAllColumnsContext(this.context, this.state);
this.enterRule(localContext, 444, HiveSqlParser.RULE_tableAllColumns);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3355;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252454782) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394 || _la === 432) {
{
{
this.state = 3350;
this.id_();
this.state = 3351;
this.match(HiveSqlParser.DOT);
}
}
this.state = 3357;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3358;
this.match(HiveSqlParser.STAR);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
expressionList() {
let localContext = new ExpressionListContext(this.context, this.state);
this.enterRule(localContext, 446, HiveSqlParser.RULE_expressionList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3360;
this.expression();
this.state = 3365;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3361;
this.match(HiveSqlParser.COMMA);
this.state = 3362;
this.expression();
}
}
this.state = 3367;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
aliasList() {
let localContext = new AliasListContext(this.context, this.state);
this.enterRule(localContext, 448, HiveSqlParser.RULE_aliasList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3368;
this.id_();
this.state = 3373;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3369;
this.match(HiveSqlParser.COMMA);
this.state = 3370;
this.id_();
}
}
this.state = 3375;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
fromClause() {
let localContext = new FromClauseContext(this.context, this.state);
this.enterRule(localContext, 450, HiveSqlParser.RULE_fromClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3376;
this.match(HiveSqlParser.KW_FROM);
this.state = 3377;
this.fromSource();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
fromSource() {
let localContext = new FromSourceContext(this.context, this.state);
this.enterRule(localContext, 452, HiveSqlParser.RULE_fromSource);
let _la;
try {
this.state = 3388;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_UNIQUEJOIN:
this.enterOuterAlt(localContext, 1);
{
this.state = 3379;
this.match(HiveSqlParser.KW_UNIQUEJOIN);
this.state = 3380;
this.uniqueJoinSource();
this.state = 3383;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 3381;
this.match(HiveSqlParser.COMMA);
this.state = 3382;
this.uniqueJoinSource();
}
}
this.state = 3385;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 397);
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLE:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.LPAREN:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 2);
{
this.state = 3387;
this.joinSource();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
atomjoinSource() {
let localContext = new AtomjoinSourceContext(this.context, this.state);
this.enterRule(localContext, 454, HiveSqlParser.RULE_atomjoinSource);
try {
let alternative;
this.state = 3422;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 438, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3390;
this.tableSource();
this.state = 3394;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 434, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3391;
this.lateralView();
}
}
}
this.state = 3396;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 434, this.context);
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3397;
this.virtualTableSource();
this.state = 3401;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 435, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3398;
this.lateralView();
}
}
}
this.state = 3403;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 435, this.context);
}
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 3404;
this.subQuerySource();
this.state = 3408;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 436, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3405;
this.lateralView();
}
}
}
this.state = 3410;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 436, this.context);
}
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 3411;
this.partitionedTableFunction();
this.state = 3415;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 437, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3412;
this.lateralView();
}
}
}
this.state = 3417;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 437, this.context);
}
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 3418;
this.match(HiveSqlParser.LPAREN);
this.state = 3419;
this.joinSource();
this.state = 3420;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
joinSource() {
let localContext = new JoinSourceContext(this.context, this.state);
this.enterRule(localContext, 456, HiveSqlParser.RULE_joinSource);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3424;
this.atomjoinSource();
this.state = 3435;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 60 || ((((_la - 140)) & ~0x1F) === 0 && ((1 << (_la - 140)) & 2147614721) !== 0) || _la === 180 || _la === 285 || _la === 397) {
{
{
this.state = 3425;
this.joinToken();
this.state = 3426;
this.joinSourcePart();
this.state = 3431;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ON:
{
this.state = 3427;
this.match(HiveSqlParser.KW_ON);
this.state = 3428;
this.expression();
}
break;
case HiveSqlParser.KW_USING:
{
this.state = 3429;
this.match(HiveSqlParser.KW_USING);
this.state = 3430;
this.columnParenthesesList();
}
break;
case HiveSqlParser.EOF:
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ALTER:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_COMMIT:
case HiveSqlParser.KW_CREATE:
case HiveSqlParser.KW_CROSS:
case HiveSqlParser.KW_DELETE:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DESCRIBE:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DROP:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_EXCEPT:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_FULL:
case HiveSqlParser.KW_GRANT:
case HiveSqlParser.KW_GROUP:
case HiveSqlParser.KW_HAVING:
case HiveSqlParser.KW_IMPORT:
case HiveSqlParser.KW_INNER:
case HiveSqlParser.KW_INSERT:
case HiveSqlParser.KW_INTERSECT:
case HiveSqlParser.KW_JOIN:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LEFT:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MERGE:
case HiveSqlParser.KW_MINUS:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_ORDER:
case HiveSqlParser.KW_PREPARE:
case HiveSqlParser.KW_QUALIFY:
case HiveSqlParser.KW_REDUCE:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REVOKE:
case HiveSqlParser.KW_RIGHT:
case HiveSqlParser.KW_ROLLBACK:
case HiveSqlParser.KW_SELECT:
case HiveSqlParser.KW_SET:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_START:
case HiveSqlParser.KW_TRUNCATE:
case HiveSqlParser.KW_UNION:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UPDATE:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_VALUES:
case HiveSqlParser.KW_WHERE:
case HiveSqlParser.KW_WINDOW:
case HiveSqlParser.KW_WITH:
case HiveSqlParser.COMMA:
case HiveSqlParser.SEMICOLON:
case HiveSqlParser.LPAREN:
case HiveSqlParser.RPAREN:
break;
default:
break;
}
}
}
this.state = 3437;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
joinSourcePart() {
let localContext = new JoinSourcePartContext(this.context, this.state);
this.enterRule(localContext, 458, HiveSqlParser.RULE_joinSourcePart);
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 3442;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 441, this.context)) {
case 1:
{
this.state = 3438;
this.tableSource();
}
break;
case 2:
{
this.state = 3439;
this.virtualTableSource();
}
break;
case 3:
{
this.state = 3440;
this.subQuerySource();
}
break;
case 4:
{
this.state = 3441;
this.partitionedTableFunction();
}
break;
}
this.state = 3447;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 442, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3444;
this.lateralView();
}
}
}
this.state = 3449;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 442, this.context);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
uniqueJoinSource() {
let localContext = new UniqueJoinSourceContext(this.context, this.state);
this.enterRule(localContext, 460, HiveSqlParser.RULE_uniqueJoinSource);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3451;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 250) {
{
this.state = 3450;
this.match(HiveSqlParser.KW_PRESERVE);
}
}
this.state = 3453;
localContext._tabname = this.tableOrView();
this.state = 3455;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 331) {
{
this.state = 3454;
localContext._ts = this.tableSample();
}
}
this.state = 3461;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252585854) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394 || _la === 432) {
{
this.state = 3458;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3457;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3460;
localContext._alias = this.id_();
}
}
this.state = 3463;
this.match(HiveSqlParser.LPAREN);
this.state = 3464;
this.expressionList();
this.state = 3465;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
joinToken() {
let localContext = new JoinTokenContext(this.context, this.state);
this.enterRule(localContext, 462, HiveSqlParser.RULE_joinToken);
let _la;
try {
this.state = 3481;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.COMMA:
this.enterOuterAlt(localContext, 1);
{
this.state = 3467;
this.match(HiveSqlParser.COMMA);
}
break;
case HiveSqlParser.KW_CROSS:
case HiveSqlParser.KW_FULL:
case HiveSqlParser.KW_INNER:
case HiveSqlParser.KW_JOIN:
case HiveSqlParser.KW_LEFT:
case HiveSqlParser.KW_RIGHT:
this.enterOuterAlt(localContext, 2);
{
this.state = 3478;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_INNER:
{
this.state = 3468;
this.match(HiveSqlParser.KW_INNER);
}
break;
case HiveSqlParser.KW_CROSS:
{
this.state = 3469;
this.match(HiveSqlParser.KW_CROSS);
}
break;
case HiveSqlParser.KW_FULL:
case HiveSqlParser.KW_RIGHT:
{
this.state = 3470;
_la = this.tokenStream.LA(1);
if (!(_la === 140 || _la === 285)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 3472;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 231) {
{
this.state = 3471;
this.match(HiveSqlParser.KW_OUTER);
}
}
}
break;
case HiveSqlParser.KW_LEFT:
{
this.state = 3474;
this.match(HiveSqlParser.KW_LEFT);
this.state = 3476;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 12 || _la === 231 || _la === 300) {
{
this.state = 3475;
_la = this.tokenStream.LA(1);
if (!(_la === 12 || _la === 231 || _la === 300)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
}
break;
case HiveSqlParser.KW_JOIN:
break;
default:
break;
}
this.state = 3480;
this.match(HiveSqlParser.KW_JOIN);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
lateralView() {
let localContext = new LateralViewContext(this.context, this.state);
this.enterRule(localContext, 464, HiveSqlParser.RULE_lateralView);
let _la;
try {
let alternative;
this.state = 3540;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 460, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3483;
this.match(HiveSqlParser.KW_LATERAL);
this.state = 3484;
this.match(HiveSqlParser.KW_VIEW);
this.state = 3485;
this.match(HiveSqlParser.KW_OUTER);
this.state = 3486;
this.function_();
this.state = 3487;
localContext._alias = this.tableAlias();
this.state = 3497;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3488;
this.match(HiveSqlParser.KW_AS);
this.state = 3489;
this.id_();
this.state = 3494;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 451, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3490;
this.match(HiveSqlParser.COMMA);
this.state = 3491;
this.id_();
}
}
}
this.state = 3496;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 451, this.context);
}
}
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3500;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 397) {
{
this.state = 3499;
this.match(HiveSqlParser.COMMA);
}
}
this.state = 3502;
this.match(HiveSqlParser.KW_LATERAL);
this.state = 3538;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_VIEW:
{
this.state = 3503;
this.match(HiveSqlParser.KW_VIEW);
this.state = 3504;
this.function_();
this.state = 3505;
localContext._alias = this.tableAlias();
this.state = 3515;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3506;
this.match(HiveSqlParser.KW_AS);
this.state = 3507;
this.id_();
this.state = 3512;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 454, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3508;
this.match(HiveSqlParser.COMMA);
this.state = 3509;
this.id_();
}
}
}
this.state = 3514;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 454, this.context);
}
}
}
}
break;
case HiveSqlParser.KW_TABLE:
{
this.state = 3517;
this.match(HiveSqlParser.KW_TABLE);
this.state = 3518;
this.match(HiveSqlParser.LPAREN);
this.state = 3519;
this.valuesClause();
this.state = 3520;
this.match(HiveSqlParser.RPAREN);
this.state = 3522;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3521;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3524;
localContext._alias = this.tableAlias();
this.state = 3536;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 458, this.context)) {
case 1:
{
this.state = 3525;
this.match(HiveSqlParser.LPAREN);
this.state = 3526;
this.id_();
this.state = 3531;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3527;
this.match(HiveSqlParser.COMMA);
this.state = 3528;
this.id_();
}
}
this.state = 3533;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3534;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableAlias() {
let localContext = new TableAliasContext(this.context, this.state);
this.enterRule(localContext, 466, HiveSqlParser.RULE_tableAlias);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3542;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableSample() {
let localContext = new TableSampleContext(this.context, this.state);
this.enterRule(localContext, 468, HiveSqlParser.RULE_tableSample);
let _la;
try {
this.state = 3571;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 464, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3544;
this.match(HiveSqlParser.KW_TABLESAMPLE);
this.state = 3545;
this.match(HiveSqlParser.LPAREN);
this.state = 3546;
this.match(HiveSqlParser.KW_BUCKET);
this.state = 3547;
localContext._numerator = this.match(HiveSqlParser.Number);
this.state = 3548;
this.match(HiveSqlParser.KW_OUT);
this.state = 3549;
this.match(HiveSqlParser.KW_OF);
this.state = 3550;
localContext._denominator = this.match(HiveSqlParser.Number);
this.state = 3560;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 224) {
{
this.state = 3551;
this.match(HiveSqlParser.KW_ON);
this.state = 3552;
localContext._expression = this.expression();
localContext._expr.push(localContext._expression);
this.state = 3557;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3553;
this.match(HiveSqlParser.COMMA);
this.state = 3554;
localContext._expression = this.expression();
localContext._expr.push(localContext._expression);
}
}
this.state = 3559;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 3562;
this.match(HiveSqlParser.RPAREN);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3563;
this.match(HiveSqlParser.KW_TABLESAMPLE);
this.state = 3564;
this.match(HiveSqlParser.LPAREN);
this.state = 3568;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.Number:
{
this.state = 3565;
this.match(HiveSqlParser.Number);
this.state = 3566;
_la = this.tokenStream.LA(1);
if (!(_la === 241 || _la === 292)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
case HiveSqlParser.ByteLengthLiteral:
{
this.state = 3567;
this.match(HiveSqlParser.ByteLengthLiteral);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 3570;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableSource() {
let localContext = new TableSourceContext(this.context, this.state);
this.enterRule(localContext, 470, HiveSqlParser.RULE_tableSource);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3573;
localContext._tabname = this.tableOrView();
this.state = 3575;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 465, this.context)) {
case 1:
{
this.state = 3574;
localContext._props = this.tableProperties();
}
break;
}
this.state = 3578;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 331) {
{
this.state = 3577;
localContext._ts = this.tableSample();
}
}
this.state = 3581;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 134) {
{
this.state = 3580;
localContext._asOf = this.asOfClause();
}
}
this.state = 3587;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 469, this.context)) {
case 1:
{
this.state = 3584;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3583;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3586;
localContext._alias = this.id_();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
asOfClause() {
let localContext = new AsOfClauseContext(this.context, this.state);
this.enterRule(localContext, 472, HiveSqlParser.RULE_asOfClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3589;
this.match(HiveSqlParser.KW_FOR);
this.state = 3599;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_SYSTEM_TIME:
{
this.state = 3590;
this.match(HiveSqlParser.KW_SYSTEM_TIME);
this.state = 3591;
this.match(HiveSqlParser.KW_AS);
this.state = 3592;
this.match(HiveSqlParser.KW_OF);
this.state = 3593;
localContext._asOfTime = this.expression();
}
break;
case HiveSqlParser.KW_FOR:
{
this.state = 3594;
this.match(HiveSqlParser.KW_FOR);
this.state = 3595;
this.match(HiveSqlParser.KW_SYSTEM_VERSION);
this.state = 3596;
this.match(HiveSqlParser.KW_AS);
this.state = 3597;
this.match(HiveSqlParser.KW_OF);
this.state = 3598;
localContext._asOfVersion = this.match(HiveSqlParser.Number);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dbSchemaName() {
let localContext = new DbSchemaNameContext(this.context, this.state);
this.enterRule(localContext, 474, HiveSqlParser.RULE_dbSchemaName);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3601;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
dbSchemaNameCreate() {
let localContext = new DbSchemaNameCreateContext(this.context, this.state);
this.enterRule(localContext, 476, HiveSqlParser.RULE_dbSchemaNameCreate);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3603;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableOrView() {
let localContext = new TableOrViewContext(this.context, this.state);
this.enterRule(localContext, 478, HiveSqlParser.RULE_tableOrView);
try {
this.state = 3607;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 471, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3605;
this.tableName();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3606;
this.viewName();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableName() {
let localContext = new TableNameContext(this.context, this.state);
this.enterRule(localContext, 480, HiveSqlParser.RULE_tableName);
try {
this.state = 3617;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 473, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3609;
localContext._db = this.id_();
this.state = 3610;
this.match(HiveSqlParser.DOT);
this.state = 3611;
localContext._tab = this.id_();
this.state = 3614;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 472, this.context)) {
case 1:
{
this.state = 3612;
this.match(HiveSqlParser.DOT);
this.state = 3613;
localContext._meta = this.id_();
}
break;
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3616;
localContext._tab = this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableNameCreate() {
let localContext = new TableNameCreateContext(this.context, this.state);
this.enterRule(localContext, 482, HiveSqlParser.RULE_tableNameCreate);
let _la;
try {
this.state = 3627;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 475, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3619;
localContext._db = this.id_();
this.state = 3620;
this.match(HiveSqlParser.DOT);
this.state = 3621;
localContext._tab = this.id_();
this.state = 3624;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 395) {
{
this.state = 3622;
this.match(HiveSqlParser.DOT);
this.state = 3623;
localContext._meta = this.id_();
}
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3626;
localContext._tab = this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewName() {
let localContext = new ViewNameContext(this.context, this.state);
this.enterRule(localContext, 484, HiveSqlParser.RULE_viewName);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3632;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 476, this.context)) {
case 1:
{
this.state = 3629;
localContext._db = this.id_();
this.state = 3630;
this.match(HiveSqlParser.DOT);
}
break;
}
this.state = 3634;
localContext._view = this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
viewNameCreate() {
let localContext = new ViewNameCreateContext(this.context, this.state);
this.enterRule(localContext, 486, HiveSqlParser.RULE_viewNameCreate);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3639;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 477, this.context)) {
case 1:
{
this.state = 3636;
localContext._db = this.id_();
this.state = 3637;
this.match(HiveSqlParser.DOT);
}
break;
}
this.state = 3641;
localContext._view = this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
subQuerySource() {
let localContext = new SubQuerySourceContext(this.context, this.state);
this.enterRule(localContext, 488, HiveSqlParser.RULE_subQuerySource);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3643;
this.match(HiveSqlParser.LPAREN);
this.state = 3644;
this.queryStatementExpression();
this.state = 3645;
this.match(HiveSqlParser.RPAREN);
this.state = 3647;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3646;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3649;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitioningSpec() {
let localContext = new PartitioningSpecContext(this.context, this.state);
this.enterRule(localContext, 490, HiveSqlParser.RULE_partitioningSpec);
let _la;
try {
this.state = 3662;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_PARTITION:
this.enterOuterAlt(localContext, 1);
{
this.state = 3651;
this.partitionByClause();
this.state = 3653;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 229) {
{
this.state = 3652;
this.orderByClause();
}
}
}
break;
case HiveSqlParser.KW_ORDER:
this.enterOuterAlt(localContext, 2);
{
this.state = 3655;
this.orderByClause();
}
break;
case HiveSqlParser.KW_DISTRIBUTE:
this.enterOuterAlt(localContext, 3);
{
this.state = 3656;
this.distributeByClause();
this.state = 3658;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 314) {
{
this.state = 3657;
this.sortByClause();
}
}
}
break;
case HiveSqlParser.KW_SORT:
this.enterOuterAlt(localContext, 4);
{
this.state = 3660;
this.sortByClause();
}
break;
case HiveSqlParser.KW_CLUSTER:
this.enterOuterAlt(localContext, 5);
{
this.state = 3661;
this.clusterByClause();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionTableFunctionSource() {
let localContext = new PartitionTableFunctionSourceContext(this.context, this.state);
this.enterRule(localContext, 492, HiveSqlParser.RULE_partitionTableFunctionSource);
try {
this.state = 3667;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 482, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3664;
this.subQuerySource();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3665;
this.tableSource();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 3666;
this.partitionedTableFunction();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionedTableFunction() {
let localContext = new PartitionedTableFunctionContext(this.context, this.state);
this.enterRule(localContext, 494, HiveSqlParser.RULE_partitionedTableFunction);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3669;
localContext._n = this.id_();
this.state = 3670;
this.match(HiveSqlParser.LPAREN);
this.state = 3671;
this.match(HiveSqlParser.KW_ON);
this.state = 3672;
localContext._ptfsrc = this.partitionTableFunctionSource();
this.state = 3674;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 41 || _la === 97 || _la === 229 || _la === 237 || _la === 314) {
{
this.state = 3673;
localContext._spec = this.partitioningSpec();
}
}
this.state = 3691;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 432) {
{
this.state = 3676;
this.match(HiveSqlParser.Identifier);
this.state = 3677;
this.match(HiveSqlParser.LPAREN);
this.state = 3678;
this.expression();
this.state = 3679;
this.match(HiveSqlParser.RPAREN);
this.state = 3688;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3680;
this.match(HiveSqlParser.COMMA);
this.state = 3681;
this.match(HiveSqlParser.Identifier);
this.state = 3682;
this.match(HiveSqlParser.LPAREN);
this.state = 3683;
this.expression();
this.state = 3684;
this.match(HiveSqlParser.RPAREN);
}
}
this.state = 3690;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 3693;
this.match(HiveSqlParser.RPAREN);
this.state = 3695;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 486, this.context)) {
case 1:
{
this.state = 3694;
localContext._alias = this.id_();
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
whereClause() {
let localContext = new WhereClauseContext(this.context, this.state);
this.enterRule(localContext, 496, HiveSqlParser.RULE_whereClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3697;
this.match(HiveSqlParser.KW_WHERE);
this.state = 3698;
this.expression();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
valuesClause() {
let localContext = new ValuesClauseContext(this.context, this.state);
this.enterRule(localContext, 498, HiveSqlParser.RULE_valuesClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3700;
this.match(HiveSqlParser.KW_VALUES);
this.state = 3719;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 489, this.context)) {
case 1:
{
this.state = 3701;
this.expressionsInParenthesis();
this.state = 3706;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3702;
this.match(HiveSqlParser.COMMA);
this.state = 3703;
this.expressionsInParenthesis();
}
}
this.state = 3708;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
case 2:
{
this.state = 3709;
this.match(HiveSqlParser.LPAREN);
this.state = 3710;
this.firstExpressionsWithAlias();
this.state = 3711;
this.match(HiveSqlParser.RPAREN);
this.state = 3716;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3712;
this.match(HiveSqlParser.COMMA);
this.state = 3713;
this.expressionsInParenthesis();
}
}
this.state = 3718;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
virtualTableSource() {
let localContext = new VirtualTableSourceContext(this.context, this.state);
this.enterRule(localContext, 500, HiveSqlParser.RULE_virtualTableSource);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3721;
this.match(HiveSqlParser.KW_TABLE);
this.state = 3722;
this.match(HiveSqlParser.LPAREN);
this.state = 3723;
this.valuesClause();
this.state = 3724;
this.match(HiveSqlParser.RPAREN);
this.state = 3726;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3725;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3728;
this.tableAlias();
this.state = 3738;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 399) {
{
this.state = 3729;
this.match(HiveSqlParser.LPAREN);
this.state = 3730;
this.id_();
this.state = 3735;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3731;
this.match(HiveSqlParser.COMMA);
this.state = 3732;
this.id_();
}
}
this.state = 3737;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 3740;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectClause() {
let localContext = new SelectClauseContext(this.context, this.state);
this.enterRule(localContext, 502, HiveSqlParser.RULE_selectClause);
let _la;
try {
let alternative;
this.state = 3762;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_SELECT:
this.enterOuterAlt(localContext, 1);
{
this.state = 3742;
this.match(HiveSqlParser.KW_SELECT);
this.state = 3744;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 493, this.context)) {
case 1:
{
this.state = 3743;
this.match(HiveSqlParser.QUERY_HINT);
}
break;
}
this.state = 3759;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 496, this.context)) {
case 1:
{
this.state = 3747;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 494, this.context)) {
case 1:
{
this.state = 3746;
_la = this.tokenStream.LA(1);
if (!(_la === 7 || _la === 96)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
}
this.state = 3749;
this.selectItem();
this.state = 3754;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 495, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 3750;
this.match(HiveSqlParser.COMMA);
this.state = 3751;
this.selectItem();
}
}
}
this.state = 3756;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 495, this.context);
}
}
break;
case 2:
{
this.state = 3757;
this.match(HiveSqlParser.KW_TRANSFORM);
this.state = 3758;
this.selectTrfmClause();
}
break;
}
}
break;
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_REDUCE:
this.enterOuterAlt(localContext, 2);
{
this.state = 3761;
this.trfmClause();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectTrfmClause() {
let localContext = new SelectTrfmClauseContext(this.context, this.state);
this.enterRule(localContext, 504, HiveSqlParser.RULE_selectTrfmClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3764;
this.match(HiveSqlParser.LPAREN);
this.state = 3765;
this.selectExpressionList();
this.state = 3766;
this.match(HiveSqlParser.RPAREN);
this.state = 3767;
this.rowFormat();
this.state = 3768;
this.recordWriter();
this.state = 3769;
this.match(HiveSqlParser.KW_USING);
this.state = 3770;
this.match(HiveSqlParser.StringLiteral);
this.state = 3783;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3771;
this.match(HiveSqlParser.KW_AS);
this.state = 3781;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 499, this.context)) {
case 1:
{
this.state = 3772;
this.match(HiveSqlParser.LPAREN);
this.state = 3775;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 498, this.context)) {
case 1:
{
this.state = 3773;
this.aliasList();
}
break;
case 2:
{
this.state = 3774;
this.columnNameTypeList();
}
break;
}
this.state = 3777;
this.match(HiveSqlParser.RPAREN);
}
break;
case 2:
{
this.state = 3779;
this.aliasList();
}
break;
case 3:
{
this.state = 3780;
this.columnNameTypeList();
}
break;
}
}
}
this.state = 3785;
this.rowFormat();
this.state = 3786;
this.recordReader();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectItem() {
let localContext = new SelectItemContext(this.context, this.state);
this.enterRule(localContext, 506, HiveSqlParser.RULE_selectItem);
let _la;
try {
this.state = 3811;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 505, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3788;
this.tableAllColumns();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
{
this.state = 3791;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 501, this.context)) {
case 1:
{
this.state = 3789;
this.columnName();
}
break;
case 2:
{
this.state = 3790;
this.expression();
}
break;
}
this.state = 3809;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 504, this.context)) {
case 1:
{
this.state = 3794;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3793;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3796;
this.id_();
}
break;
case 2:
{
this.state = 3797;
this.match(HiveSqlParser.KW_AS);
this.state = 3798;
this.match(HiveSqlParser.LPAREN);
this.state = 3799;
this.id_();
this.state = 3804;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3800;
this.match(HiveSqlParser.COMMA);
this.state = 3801;
this.id_();
}
}
this.state = 3806;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3807;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
trfmClause() {
let localContext = new TrfmClauseContext(this.context, this.state);
this.enterRule(localContext, 508, HiveSqlParser.RULE_trfmClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3813;
_la = this.tokenStream.LA(1);
if (!(_la === 198 || _la === 268)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 3814;
this.selectExpressionList();
this.state = 3815;
this.rowFormat();
this.state = 3816;
this.recordWriter();
this.state = 3817;
this.match(HiveSqlParser.KW_USING);
this.state = 3818;
this.match(HiveSqlParser.StringLiteral);
this.state = 3831;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3819;
this.match(HiveSqlParser.KW_AS);
this.state = 3829;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 507, this.context)) {
case 1:
{
this.state = 3820;
this.match(HiveSqlParser.LPAREN);
this.state = 3823;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 506, this.context)) {
case 1:
{
this.state = 3821;
this.aliasList();
}
break;
case 2:
{
this.state = 3822;
this.columnNameTypeList();
}
break;
}
this.state = 3825;
this.match(HiveSqlParser.RPAREN);
}
break;
case 2:
{
this.state = 3827;
this.aliasList();
}
break;
case 3:
{
this.state = 3828;
this.columnNameTypeList();
}
break;
}
}
}
this.state = 3833;
this.rowFormat();
this.state = 3834;
this.recordReader();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectExpression() {
let localContext = new SelectExpressionContext(this.context, this.state);
this.enterRule(localContext, 510, HiveSqlParser.RULE_selectExpression);
try {
this.state = 3838;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 509, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3836;
this.tableAllColumns();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3837;
this.expression();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
selectExpressionList() {
let localContext = new SelectExpressionListContext(this.context, this.state);
this.enterRule(localContext, 512, HiveSqlParser.RULE_selectExpressionList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3840;
this.selectExpression();
this.state = 3845;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3841;
this.match(HiveSqlParser.COMMA);
this.state = 3842;
this.selectExpression();
}
}
this.state = 3847;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
window_clause() {
let localContext = new Window_clauseContext(this.context, this.state);
this.enterRule(localContext, 514, HiveSqlParser.RULE_window_clause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3848;
this.match(HiveSqlParser.KW_WINDOW);
this.state = 3849;
this.id_();
this.state = 3850;
this.match(HiveSqlParser.KW_AS);
this.state = 3851;
this.window_specification();
this.state = 3859;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3852;
this.match(HiveSqlParser.COMMA);
this.state = 3853;
this.id_();
this.state = 3854;
this.match(HiveSqlParser.KW_AS);
this.state = 3855;
this.window_specification();
}
}
this.state = 3861;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
window_specification() {
let localContext = new Window_specificationContext(this.context, this.state);
this.enterRule(localContext, 516, HiveSqlParser.RULE_window_specification);
let _la;
try {
this.state = 3874;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 1);
{
this.state = 3862;
this.id_();
}
break;
case HiveSqlParser.LPAREN:
this.enterOuterAlt(localContext, 2);
{
this.state = 3863;
this.match(HiveSqlParser.LPAREN);
this.state = 3865;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 512, this.context)) {
case 1:
{
this.state = 3864;
this.id_();
}
break;
}
this.state = 3868;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 41 || _la === 97 || _la === 229 || _la === 237 || _la === 314) {
{
this.state = 3867;
this.partitioningSpec();
}
}
this.state = 3871;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 260 || _la === 292) {
{
this.state = 3870;
this.window_frame();
}
}
this.state = 3873;
this.match(HiveSqlParser.RPAREN);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
window_frame() {
let localContext = new Window_frameContext(this.context, this.state);
this.enterRule(localContext, 518, HiveSqlParser.RULE_window_frame);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3876;
_la = this.tokenStream.LA(1);
if (!(_la === 260 || _la === 292)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 3890;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_CURRENT:
case HiveSqlParser.KW_UNBOUNDED:
case HiveSqlParser.Number:
{
this.state = 3883;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_UNBOUNDED:
{
{
this.state = 3877;
this.match(HiveSqlParser.KW_UNBOUNDED);
this.state = 3878;
this.match(HiveSqlParser.KW_PRECEDING);
}
}
break;
case HiveSqlParser.KW_CURRENT:
{
{
this.state = 3879;
this.match(HiveSqlParser.KW_CURRENT);
this.state = 3880;
this.match(HiveSqlParser.KW_ROW);
}
}
break;
case HiveSqlParser.Number:
{
{
this.state = 3881;
this.match(HiveSqlParser.Number);
this.state = 3882;
this.match(HiveSqlParser.KW_PRECEDING);
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case HiveSqlParser.KW_BETWEEN:
{
this.state = 3885;
this.match(HiveSqlParser.KW_BETWEEN);
this.state = 3886;
this.window_frame_boundary();
this.state = 3887;
this.match(HiveSqlParser.KW_AND);
this.state = 3888;
this.window_frame_boundary();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
window_frame_boundary() {
let localContext = new Window_frame_boundaryContext(this.context, this.state);
this.enterRule(localContext, 520, HiveSqlParser.RULE_window_frame_boundary);
let _la;
try {
this.state = 3896;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_UNBOUNDED:
case HiveSqlParser.Number:
this.enterOuterAlt(localContext, 1);
{
this.state = 3892;
_la = this.tokenStream.LA(1);
if (!(_la === 354 || _la === 431)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 3893;
_la = this.tokenStream.LA(1);
if (!(_la === 133 || _la === 247)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
case HiveSqlParser.KW_CURRENT:
this.enterOuterAlt(localContext, 2);
{
this.state = 3894;
this.match(HiveSqlParser.KW_CURRENT);
this.state = 3895;
this.match(HiveSqlParser.KW_ROW);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
groupByClause() {
let localContext = new GroupByClauseContext(this.context, this.state);
this.enterRule(localContext, 522, HiveSqlParser.RULE_groupByClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3898;
this.match(HiveSqlParser.KW_GROUP);
this.state = 3899;
this.match(HiveSqlParser.KW_BY);
this.state = 3905;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 519, this.context)) {
case 1:
{
this.state = 3900;
this.columnName();
}
break;
case 2:
{
this.state = 3901;
this.rollupStandard();
}
break;
case 3:
{
this.state = 3902;
this.rollupOldSyntax();
}
break;
case 4:
{
{
this.state = 3903;
this.match(HiveSqlParser.LPAREN);
this.state = 3904;
this.match(HiveSqlParser.RPAREN);
}
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rollupStandard() {
let localContext = new RollupStandardContext(this.context, this.state);
this.enterRule(localContext, 524, HiveSqlParser.RULE_rollupStandard);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3909;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ROLLUP:
{
this.state = 3907;
localContext._rollup = this.match(HiveSqlParser.KW_ROLLUP);
}
break;
case HiveSqlParser.KW_CUBE:
{
this.state = 3908;
localContext._cube = this.match(HiveSqlParser.KW_CUBE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 3911;
this.match(HiveSqlParser.LPAREN);
this.state = 3912;
this.expression();
this.state = 3917;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3913;
this.match(HiveSqlParser.COMMA);
this.state = 3914;
this.expression();
}
}
this.state = 3919;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3920;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rollupOldSyntax() {
let localContext = new RollupOldSyntaxContext(this.context, this.state);
this.enterRule(localContext, 526, HiveSqlParser.RULE_rollupOldSyntax);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3922;
localContext._expr = this.expressionsNotInParenthesis();
this.state = 3927;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 522, this.context)) {
case 1:
{
this.state = 3923;
localContext._rollup = this.match(HiveSqlParser.KW_WITH);
this.state = 3924;
this.match(HiveSqlParser.KW_ROLLUP);
}
break;
case 2:
{
this.state = 3925;
localContext._cube = this.match(HiveSqlParser.KW_WITH);
this.state = 3926;
this.match(HiveSqlParser.KW_CUBE);
}
break;
}
this.state = 3942;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 145) {
{
this.state = 3929;
localContext._sets = this.match(HiveSqlParser.KW_GROUPING);
this.state = 3930;
this.match(HiveSqlParser.KW_SETS);
this.state = 3931;
this.match(HiveSqlParser.LPAREN);
this.state = 3932;
this.groupingSetExpression();
this.state = 3937;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3933;
this.match(HiveSqlParser.COMMA);
this.state = 3934;
this.groupingSetExpression();
}
}
this.state = 3939;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3940;
this.match(HiveSqlParser.RPAREN);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
groupingSetExpression() {
let localContext = new GroupingSetExpressionContext(this.context, this.state);
this.enterRule(localContext, 528, HiveSqlParser.RULE_groupingSetExpression);
let _la;
try {
this.state = 3957;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 527, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3944;
this.match(HiveSqlParser.LPAREN);
this.state = 3946;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3755838846) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 3315298239) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280869) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3976149863) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 2004783495) !== 0) || ((((_la - 162)) & ~0x1F) === 0 && ((1 << (_la - 162)) & 4226874827) !== 0) || ((((_la - 195)) & ~0x1F) === 0 && ((1 << (_la - 195)) & 2616949503) !== 0) || ((((_la - 227)) & ~0x1F) === 0 && ((1 << (_la - 227)) & 3658431331) !== 0) || ((((_la - 259)) & ~0x1F) === 0 && ((1 << (_la - 259)) & 989854189) !== 0) || ((((_la - 293)) & ~0x1F) === 0 && ((1 << (_la - 293)) & 4260362175) !== 0) || ((((_la - 325)) & ~0x1F) === 0 && ((1 << (_la - 325)) & 1530590125) !== 0) || ((((_la - 357)) & ~0x1F) === 0 && ((1 << (_la - 357)) & 2549468921) !== 0) || ((((_la - 389)) & ~0x1F) === 0 && ((1 << (_la - 389)) & 4294902847) !== 0) || ((((_la - 421)) & ~0x1F) === 0 && ((1 << (_la - 421)) & 7597) !== 0)) {
{
this.state = 3945;
this.expression();
}
}
this.state = 3952;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3948;
this.match(HiveSqlParser.COMMA);
this.state = 3949;
this.expression();
}
}
this.state = 3954;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 3955;
this.match(HiveSqlParser.RPAREN);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3956;
this.expression();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
havingClause() {
let localContext = new HavingClauseContext(this.context, this.state);
this.enterRule(localContext, 530, HiveSqlParser.RULE_havingClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3959;
this.match(HiveSqlParser.KW_HAVING);
this.state = 3960;
this.expression();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
qualifyClause() {
let localContext = new QualifyClauseContext(this.context, this.state);
this.enterRule(localContext, 532, HiveSqlParser.RULE_qualifyClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3962;
this.match(HiveSqlParser.KW_QUALIFY);
this.state = 3963;
this.expression();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
expressionOrDefault() {
let localContext = new ExpressionOrDefaultContext(this.context, this.state);
this.enterRule(localContext, 534, HiveSqlParser.RULE_expressionOrDefault);
try {
this.state = 3967;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 528, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3965;
this.match(HiveSqlParser.KW_DEFAULT);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3966;
this.expression();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
firstExpressionsWithAlias() {
let localContext = new FirstExpressionsWithAliasContext(this.context, this.state);
this.enterRule(localContext, 536, HiveSqlParser.RULE_firstExpressionsWithAlias);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3969;
localContext._first = this.expression();
this.state = 3971;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3970;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3974;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252454782) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394 || _la === 432) {
{
this.state = 3973;
localContext._colAlias = this.id_();
}
}
this.state = 3986;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 3976;
this.match(HiveSqlParser.COMMA);
this.state = 3977;
this.expression();
this.state = 3979;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 17) {
{
this.state = 3978;
this.match(HiveSqlParser.KW_AS);
}
}
this.state = 3982;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252454782) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394 || _la === 432) {
{
this.state = 3981;
localContext._alias = this.id_();
}
}
}
}
this.state = 3988;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
expressions() {
let localContext = new ExpressionsContext(this.context, this.state);
this.enterRule(localContext, 538, HiveSqlParser.RULE_expressions);
try {
this.state = 3991;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 534, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 3989;
this.expressionsInParenthesis();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 3990;
this.expressionsNotInParenthesis();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
expressionsInParenthesis() {
let localContext = new ExpressionsInParenthesisContext(this.context, this.state);
this.enterRule(localContext, 540, HiveSqlParser.RULE_expressionsInParenthesis);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3993;
this.match(HiveSqlParser.LPAREN);
this.state = 3994;
this.expressionsNotInParenthesis();
this.state = 3995;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
expressionsNotInParenthesis() {
let localContext = new ExpressionsNotInParenthesisContext(this.context, this.state);
this.enterRule(localContext, 542, HiveSqlParser.RULE_expressionsNotInParenthesis);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 3997;
localContext._first = this.expressionOrDefault();
this.state = 4004;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 397) {
{
this.state = 4000;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 3998;
this.match(HiveSqlParser.COMMA);
this.state = 3999;
this.expressionOrDefault();
}
}
this.state = 4002;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 397);
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
orderByClause() {
let localContext = new OrderByClauseContext(this.context, this.state);
this.enterRule(localContext, 544, HiveSqlParser.RULE_orderByClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4006;
this.match(HiveSqlParser.KW_ORDER);
this.state = 4007;
this.match(HiveSqlParser.KW_BY);
this.state = 4008;
this.columnRefOrder();
this.state = 4013;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4009;
this.match(HiveSqlParser.COMMA);
this.state = 4010;
this.columnRefOrder();
}
}
this.state = 4015;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionByClause() {
let localContext = new PartitionByClauseContext(this.context, this.state);
this.enterRule(localContext, 546, HiveSqlParser.RULE_partitionByClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4016;
this.match(HiveSqlParser.KW_PARTITION);
this.state = 4017;
this.match(HiveSqlParser.KW_BY);
this.state = 4018;
this.expressions();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
clusterByClause() {
let localContext = new ClusterByClauseContext(this.context, this.state);
this.enterRule(localContext, 548, HiveSqlParser.RULE_clusterByClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4020;
this.match(HiveSqlParser.KW_CLUSTER);
this.state = 4021;
this.match(HiveSqlParser.KW_BY);
this.state = 4022;
this.expressions();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
distributeByClause() {
let localContext = new DistributeByClauseContext(this.context, this.state);
this.enterRule(localContext, 550, HiveSqlParser.RULE_distributeByClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4024;
this.match(HiveSqlParser.KW_DISTRIBUTE);
this.state = 4025;
this.match(HiveSqlParser.KW_BY);
this.state = 4026;
this.expressions();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
sortByClause() {
let localContext = new SortByClauseContext(this.context, this.state);
this.enterRule(localContext, 552, HiveSqlParser.RULE_sortByClause);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4028;
this.match(HiveSqlParser.KW_SORT);
this.state = 4029;
this.match(HiveSqlParser.KW_BY);
this.state = 4049;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 540, this.context)) {
case 1:
{
{
this.state = 4030;
this.match(HiveSqlParser.LPAREN);
this.state = 4031;
this.columnRefOrder();
this.state = 4036;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4032;
this.match(HiveSqlParser.COMMA);
this.state = 4033;
this.columnRefOrder();
}
}
this.state = 4038;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 4039;
this.match(HiveSqlParser.RPAREN);
}
}
break;
case 2:
{
{
this.state = 4041;
this.columnRefOrder();
this.state = 4046;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4042;
this.match(HiveSqlParser.COMMA);
this.state = 4043;
this.columnRefOrder();
}
}
this.state = 4048;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
function_() {
let localContext = new Function_Context(this.context, this.state);
this.enterRule(localContext, 554, HiveSqlParser.RULE_function_);
let _la;
try {
this.state = 4104;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 549, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4051;
this.match(HiveSqlParser.KW_TRIM);
this.state = 4052;
this.match(HiveSqlParser.LPAREN);
this.state = 4056;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_LEADING:
{
this.state = 4053;
localContext._leading = this.match(HiveSqlParser.KW_LEADING);
}
break;
case HiveSqlParser.KW_TRAILING:
{
this.state = 4054;
localContext._trailing = this.match(HiveSqlParser.KW_TRAILING);
}
break;
case HiveSqlParser.KW_BOTH:
{
this.state = 4055;
this.match(HiveSqlParser.KW_BOTH);
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_AND:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ARRAY:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BETWEEN:
case HiveSqlParser.KW_BIGINT:
case HiveSqlParser.KW_BINARY:
case HiveSqlParser.KW_BOOLEAN:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CASE:
case HiveSqlParser.KW_CAST:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_CURRENT_DATE:
case HiveSqlParser.KW_CURRENT_TIMESTAMP:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATE:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DOUBLE:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXISTS:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_EXTRACT:
case HiveSqlParser.KW_FALSE:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FLOAT:
case HiveSqlParser.KW_FLOOR:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FROM:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_GROUPING:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IF:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_IN:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_INT:
case HiveSqlParser.KW_INTEGER:
case HiveSqlParser.KW_INTERVAL:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIKE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOT:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULL:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OR:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REAL:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_REGEXP:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_RLIKE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SMALLINT:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMP:
case HiveSqlParser.KW_TIMESTAMPLOCALTZ:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TRUE:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHEN:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.LPAREN:
case HiveSqlParser.EQUAL:
case HiveSqlParser.EQUAL_NS:
case HiveSqlParser.NOTEQUAL:
case HiveSqlParser.LESSTHANOREQUALTO:
case HiveSqlParser.LESSTHAN:
case HiveSqlParser.GREATERTHANOREQUALTO:
case HiveSqlParser.GREATERTHAN:
case HiveSqlParser.DIVIDE:
case HiveSqlParser.PLUS:
case HiveSqlParser.MINUS:
case HiveSqlParser.STAR:
case HiveSqlParser.MOD:
case HiveSqlParser.DIV:
case HiveSqlParser.BITWISENOT:
case HiveSqlParser.AMPERSAND:
case HiveSqlParser.TILDE:
case HiveSqlParser.BITWISEOR:
case HiveSqlParser.BITWISEXOR:
case HiveSqlParser.QUESTION:
case HiveSqlParser.StringLiteral:
case HiveSqlParser.IntegralLiteral:
case HiveSqlParser.NumberLiteral:
case HiveSqlParser.Number:
case HiveSqlParser.Identifier:
case HiveSqlParser.CharSetName:
break;
default:
break;
}
this.state = 4059;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 3755838846) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 3315298239) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280869) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3976149863) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 2004783495) !== 0) || ((((_la - 162)) & ~0x1F) === 0 && ((1 << (_la - 162)) & 4226874827) !== 0) || ((((_la - 195)) & ~0x1F) === 0 && ((1 << (_la - 195)) & 2616949503) !== 0) || ((((_la - 227)) & ~0x1F) === 0 && ((1 << (_la - 227)) & 3658431331) !== 0) || ((((_la - 259)) & ~0x1F) === 0 && ((1 << (_la - 259)) & 989854189) !== 0) || ((((_la - 293)) & ~0x1F) === 0 && ((1 << (_la - 293)) & 4260362175) !== 0) || ((((_la - 325)) & ~0x1F) === 0 && ((1 << (_la - 325)) & 1530590125) !== 0) || ((((_la - 357)) & ~0x1F) === 0 && ((1 << (_la - 357)) & 2549468921) !== 0) || ((((_la - 389)) & ~0x1F) === 0 && ((1 << (_la - 389)) & 4294902847) !== 0) || ((((_la - 421)) & ~0x1F) === 0 && ((1 << (_la - 421)) & 7597) !== 0)) {
{
this.state = 4058;
localContext._trim_characters = this.selectExpression();
}
}
this.state = 4061;
this.match(HiveSqlParser.KW_FROM);
this.state = 4062;
localContext._str = this.selectExpression();
this.state = 4063;
this.match(HiveSqlParser.RPAREN);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4065;
this.functionNameForInvoke();
this.state = 4066;
this.match(HiveSqlParser.LPAREN);
this.state = 4081;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 546, this.context)) {
case 1:
{
this.state = 4067;
localContext._star = this.match(HiveSqlParser.STAR);
}
break;
case 2:
{
this.state = 4069;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 7 || _la === 96) {
{
this.state = 4068;
localContext._dist = this.tokenStream.LT(1);
_la = this.tokenStream.LA(1);
if (!(_la === 7 || _la === 96)) {
localContext._dist = this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
this.state = 4079;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 545, this.context)) {
case 1:
{
this.state = 4071;
this.selectExpression();
this.state = 4076;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4072;
this.match(HiveSqlParser.COMMA);
this.state = 4073;
this.selectExpression();
}
}
this.state = 4078;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
}
}
break;
}
this.state = 4102;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 548, this.context)) {
case 1:
{
this.state = 4083;
this.match(HiveSqlParser.RPAREN);
this.state = 4084;
localContext._within = this.match(HiveSqlParser.KW_WITHIN);
this.state = 4085;
this.match(HiveSqlParser.KW_GROUP);
this.state = 4086;
this.match(HiveSqlParser.LPAREN);
this.state = 4087;
localContext._ordBy = this.orderByClause();
this.state = 4088;
this.match(HiveSqlParser.RPAREN);
}
break;
case 2:
{
this.state = 4090;
this.match(HiveSqlParser.RPAREN);
this.state = 4092;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 152 || _la === 281) {
{
this.state = 4091;
localContext._nt = this.null_treatment();
}
}
this.state = 4094;
this.match(HiveSqlParser.KW_OVER);
this.state = 4095;
localContext._ws = this.window_specification();
}
break;
case 3:
{
this.state = 4096;
localContext._nt = this.null_treatment();
this.state = 4097;
this.match(HiveSqlParser.RPAREN);
this.state = 4098;
this.match(HiveSqlParser.KW_OVER);
this.state = 4099;
localContext._ws = this.window_specification();
}
break;
case 4:
{
this.state = 4101;
this.match(HiveSqlParser.RPAREN);
}
break;
}
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
null_treatment() {
let localContext = new Null_treatmentContext(this.context, this.state);
this.enterRule(localContext, 556, HiveSqlParser.RULE_null_treatment);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4106;
_la = this.tokenStream.LA(1);
if (!(_la === 152 || _la === 281)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4107;
this.match(HiveSqlParser.KW_NULLS);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
functionNameCreate() {
let localContext = new FunctionNameCreateContext(this.context, this.state);
this.enterRule(localContext, 558, HiveSqlParser.RULE_functionNameCreate);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4109;
this.functionIdentifier();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
functionNameForDDL() {
let localContext = new FunctionNameForDDLContext(this.context, this.state);
this.enterRule(localContext, 560, HiveSqlParser.RULE_functionNameForDDL);
try {
this.state = 4113;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 1);
{
this.state = 4111;
this.functionIdentifier();
}
break;
case HiveSqlParser.StringLiteral:
this.enterOuterAlt(localContext, 2);
{
this.state = 4112;
this.match(HiveSqlParser.StringLiteral);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
functionNameForInvoke() {
let localContext = new FunctionNameForInvokeContext(this.context, this.state);
this.enterRule(localContext, 562, HiveSqlParser.RULE_functionNameForInvoke);
try {
this.state = 4118;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 551, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4115;
this.functionIdentifier();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4116;
this.sql11ReservedKeywordsUsedAsFunctionName();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 4117;
this.sysFuncNames();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
castExpression() {
let localContext = new CastExpressionContext(this.context, this.state);
this.enterRule(localContext, 564, HiveSqlParser.RULE_castExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4120;
this.match(HiveSqlParser.KW_CAST);
this.state = 4121;
this.match(HiveSqlParser.LPAREN);
this.state = 4122;
this.expression();
this.state = 4123;
this.match(HiveSqlParser.KW_AS);
this.state = 4124;
localContext._toType = this.primitiveType();
this.state = 4127;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 137) {
{
this.state = 4125;
localContext._fmt = this.match(HiveSqlParser.KW_FORMAT);
this.state = 4126;
this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 4129;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
caseExpression() {
let localContext = new CaseExpressionContext(this.context, this.state);
this.enterRule(localContext, 566, HiveSqlParser.RULE_caseExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4131;
this.match(HiveSqlParser.KW_CASE);
this.state = 4132;
this.expression();
this.state = 4138;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 4133;
this.match(HiveSqlParser.KW_WHEN);
this.state = 4134;
this.expression();
this.state = 4135;
this.match(HiveSqlParser.KW_THEN);
this.state = 4136;
this.expression();
}
}
this.state = 4140;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 383);
this.state = 4144;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 105) {
{
this.state = 4142;
this.match(HiveSqlParser.KW_ELSE);
this.state = 4143;
this.expression();
}
}
this.state = 4146;
this.match(HiveSqlParser.KW_END);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
whenExpression() {
let localContext = new WhenExpressionContext(this.context, this.state);
this.enterRule(localContext, 568, HiveSqlParser.RULE_whenExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4148;
this.match(HiveSqlParser.KW_CASE);
this.state = 4154;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
do {
{
{
this.state = 4149;
this.match(HiveSqlParser.KW_WHEN);
this.state = 4150;
this.expression();
this.state = 4151;
this.match(HiveSqlParser.KW_THEN);
this.state = 4152;
this.expression();
}
}
this.state = 4156;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
} while (_la === 383);
this.state = 4160;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 105) {
{
this.state = 4158;
this.match(HiveSqlParser.KW_ELSE);
this.state = 4159;
this.expression();
}
}
this.state = 4162;
this.match(HiveSqlParser.KW_END);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
floorExpression() {
let localContext = new FloorExpressionContext(this.context, this.state);
this.enterRule(localContext, 570, HiveSqlParser.RULE_floorExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4164;
this.match(HiveSqlParser.KW_FLOOR);
this.state = 4165;
this.match(HiveSqlParser.LPAREN);
this.state = 4166;
this.expression();
this.state = 4169;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 341) {
{
this.state = 4167;
this.match(HiveSqlParser.KW_TO);
this.state = 4168;
localContext._floorUnit = this.timeQualifiers();
}
}
this.state = 4171;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
extractExpression() {
let localContext = new ExtractExpressionContext(this.context, this.state);
this.enterRule(localContext, 572, HiveSqlParser.RULE_extractExpression);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4173;
this.match(HiveSqlParser.KW_EXTRACT);
this.state = 4174;
this.match(HiveSqlParser.LPAREN);
this.state = 4175;
localContext._timeUnit = this.timeQualifiers();
this.state = 4176;
this.match(HiveSqlParser.KW_FROM);
this.state = 4177;
this.expression();
this.state = 4178;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
timeQualifiers() {
let localContext = new TimeQualifiersContext(this.context, this.state);
this.enterRule(localContext, 574, HiveSqlParser.RULE_timeQualifiers);
try {
this.state = 4188;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
this.enterOuterAlt(localContext, 1);
{
this.state = 4180;
this.year();
}
break;
case HiveSqlParser.KW_QUARTER:
this.enterOuterAlt(localContext, 2);
{
this.state = 4181;
this.match(HiveSqlParser.KW_QUARTER);
}
break;
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
this.enterOuterAlt(localContext, 3);
{
this.state = 4182;
this.month();
}
break;
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
this.enterOuterAlt(localContext, 4);
{
this.state = 4183;
this.week();
}
break;
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
this.enterOuterAlt(localContext, 5);
{
this.state = 4184;
this.day();
}
break;
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
this.enterOuterAlt(localContext, 6);
{
this.state = 4185;
this.hour();
}
break;
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
this.enterOuterAlt(localContext, 7);
{
this.state = 4186;
this.minute();
}
break;
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
this.enterOuterAlt(localContext, 8);
{
this.state = 4187;
this.second();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
constant() {
let localContext = new ConstantContext(this.context, this.state);
this.enterRule(localContext, 576, HiveSqlParser.RULE_constant);
let _la;
try {
this.state = 4218;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 560, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4190;
localContext._value = this.intervalValue();
this.state = 4191;
localContext._qualifiers = this.intervalQualifiers();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4193;
this.match(HiveSqlParser.Number);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 4194;
this.match(HiveSqlParser.KW_DATE);
this.state = 4195;
this.match(HiveSqlParser.StringLiteral);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 4196;
this.match(HiveSqlParser.KW_CURRENT_DATE);
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 4197;
this.match(HiveSqlParser.KW_TIMESTAMP);
this.state = 4198;
this.match(HiveSqlParser.StringLiteral);
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 4199;
this.match(HiveSqlParser.KW_CURRENT_TIMESTAMP);
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 4200;
this.match(HiveSqlParser.KW_TIMESTAMPLOCALTZ);
this.state = 4201;
this.match(HiveSqlParser.StringLiteral);
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 4202;
this.match(HiveSqlParser.StringLiteral);
this.state = 4206;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 426) {
{
{
this.state = 4203;
this.match(HiveSqlParser.StringLiteral);
}
}
this.state = 4208;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 4209;
this.match(HiveSqlParser.IntegralLiteral);
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 4210;
this.match(HiveSqlParser.NumberLiteral);
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 4211;
localContext._csName = this.match(HiveSqlParser.CharSetName);
this.state = 4212;
localContext._csLiteral = this.match(HiveSqlParser.CharSetLiteral);
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 4213;
this.match(HiveSqlParser.KW_TRUE);
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 4214;
this.match(HiveSqlParser.KW_FALSE);
}
break;
case 14:
this.enterOuterAlt(localContext, 14);
{
this.state = 4215;
this.match(HiveSqlParser.KW_NULL);
}
break;
case 15:
this.enterOuterAlt(localContext, 15);
{
this.state = 4216;
localContext._p = this.match(HiveSqlParser.QUESTION);
}
break;
case 16:
this.enterOuterAlt(localContext, 16);
{
this.state = 4217;
this.columnNamePath();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
intervalValue() {
let localContext = new IntervalValueContext(this.context, this.state);
this.enterRule(localContext, 578, HiveSqlParser.RULE_intervalValue);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4220;
_la = this.tokenStream.LA(1);
if (!(_la === 426 || _la === 431)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
intervalExpression() {
let localContext = new IntervalExpressionContext(this.context, this.state);
this.enterRule(localContext, 580, HiveSqlParser.RULE_intervalExpression);
try {
this.state = 4237;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.LPAREN:
this.enterOuterAlt(localContext, 1);
{
this.state = 4222;
this.match(HiveSqlParser.LPAREN);
this.state = 4223;
localContext._value = this.intervalValue();
this.state = 4224;
this.match(HiveSqlParser.RPAREN);
this.state = 4225;
localContext._qualifiers = this.intervalQualifiers();
}
break;
case HiveSqlParser.KW_INTERVAL:
this.enterOuterAlt(localContext, 2);
{
this.state = 4227;
this.match(HiveSqlParser.KW_INTERVAL);
this.state = 4233;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.StringLiteral:
case HiveSqlParser.Number:
{
this.state = 4228;
localContext._value = this.intervalValue();
}
break;
case HiveSqlParser.LPAREN:
{
this.state = 4229;
this.match(HiveSqlParser.LPAREN);
this.state = 4230;
localContext._expr = this.expression();
this.state = 4231;
this.match(HiveSqlParser.RPAREN);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 4235;
localContext._qualifiers = this.intervalQualifiers();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
intervalQualifiers() {
let localContext = new IntervalQualifiersContext(this.context, this.state);
this.enterRule(localContext, 582, HiveSqlParser.RULE_intervalQualifiers);
try {
this.state = 4253;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 563, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4239;
this.year();
this.state = 4240;
this.match(HiveSqlParser.KW_TO);
this.state = 4241;
this.month();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4243;
this.day();
this.state = 4244;
this.match(HiveSqlParser.KW_TO);
this.state = 4245;
this.second();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 4247;
this.year();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 4248;
this.month();
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 4249;
this.day();
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 4250;
this.hour();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 4251;
this.minute();
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 4252;
this.second();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
expression() {
let localContext = new ExpressionContext(this.context, this.state);
this.enterRule(localContext, 584, HiveSqlParser.RULE_expression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4255;
this.precedenceAndExpression();
this.state = 4260;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 228) {
{
{
this.state = 4256;
this.match(HiveSqlParser.KW_OR);
this.state = 4257;
this.precedenceAndExpression();
}
}
this.state = 4262;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
atomExpression() {
let localContext = new AtomExpressionContext(this.context, this.state);
this.enterRule(localContext, 586, HiveSqlParser.RULE_atomExpression);
try {
this.state = 4274;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 565, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4263;
this.constant();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4264;
this.intervalExpression();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 4265;
this.castExpression();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 4266;
this.extractExpression();
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 4267;
this.floorExpression();
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 4268;
this.caseExpression();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 4269;
this.whenExpression();
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 4270;
this.subQueryExpression();
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 4271;
this.function_();
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 4272;
this.expressionsInParenthesis();
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 4273;
this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceUnaryPrefixExpression() {
let localContext = new PrecedenceUnaryPrefixExpressionContext(this.context, this.state);
this.enterRule(localContext, 588, HiveSqlParser.RULE_precedenceUnaryPrefixExpression);
let _la;
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 4279;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 566, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 4276;
_la = this.tokenStream.LA(1);
if (!(((((_la - 413)) & ~0x1F) === 0 && ((1 << (_la - 413)) & 163) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
}
this.state = 4281;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 566, this.context);
}
this.state = 4282;
this.atomExpression();
this.state = 4291;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 395 || _la === 401) {
{
this.state = 4289;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.LSQUARE:
{
this.state = 4283;
this.match(HiveSqlParser.LSQUARE);
this.state = 4284;
this.expression();
this.state = 4285;
this.match(HiveSqlParser.RSQUARE);
}
break;
case HiveSqlParser.DOT:
{
this.state = 4287;
this.match(HiveSqlParser.DOT);
this.state = 4288;
this.id_();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
this.state = 4293;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceBitwiseXorExpression() {
let localContext = new PrecedenceBitwiseXorExpressionContext(this.context, this.state);
this.enterRule(localContext, 590, HiveSqlParser.RULE_precedenceBitwiseXorExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4294;
this.precedenceUnaryPrefixExpression();
this.state = 4299;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 423) {
{
{
this.state = 4295;
this.match(HiveSqlParser.BITWISEXOR);
this.state = 4296;
this.precedenceUnaryPrefixExpression();
}
}
this.state = 4301;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceStarExpression() {
let localContext = new PrecedenceStarExpressionContext(this.context, this.state);
this.enterRule(localContext, 592, HiveSqlParser.RULE_precedenceStarExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4302;
this.precedenceBitwiseXorExpression();
this.state = 4307;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (((((_la - 412)) & ~0x1F) === 0 && ((1 << (_la - 412)) & 57) !== 0)) {
{
{
this.state = 4303;
_la = this.tokenStream.LA(1);
if (!(((((_la - 412)) & ~0x1F) === 0 && ((1 << (_la - 412)) & 57) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4304;
this.precedenceBitwiseXorExpression();
}
}
this.state = 4309;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedencePlusExpression() {
let localContext = new PrecedencePlusExpressionContext(this.context, this.state);
this.enterRule(localContext, 594, HiveSqlParser.RULE_precedencePlusExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4310;
this.precedenceStarExpression();
this.state = 4315;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 413 || _la === 414) {
{
{
this.state = 4311;
_la = this.tokenStream.LA(1);
if (!(_la === 413 || _la === 414)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4312;
this.precedenceStarExpression();
}
}
this.state = 4317;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceConcatenateExpression() {
let localContext = new PrecedenceConcatenateExpressionContext(this.context, this.state);
this.enterRule(localContext, 596, HiveSqlParser.RULE_precedenceConcatenateExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4318;
this.precedencePlusExpression();
this.state = 4323;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 422) {
{
{
this.state = 4319;
this.match(HiveSqlParser.CONCATENATE);
this.state = 4320;
localContext._plus = this.precedencePlusExpression();
}
}
this.state = 4325;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceAmpersandExpression() {
let localContext = new PrecedenceAmpersandExpressionContext(this.context, this.state);
this.enterRule(localContext, 598, HiveSqlParser.RULE_precedenceAmpersandExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4326;
this.precedenceConcatenateExpression();
this.state = 4331;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 419) {
{
{
this.state = 4327;
this.match(HiveSqlParser.AMPERSAND);
this.state = 4328;
this.precedenceConcatenateExpression();
}
}
this.state = 4333;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceBitwiseOrExpression() {
let localContext = new PrecedenceBitwiseOrExpressionContext(this.context, this.state);
this.enterRule(localContext, 600, HiveSqlParser.RULE_precedenceBitwiseOrExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4334;
this.precedenceAmpersandExpression();
this.state = 4339;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 421) {
{
{
this.state = 4335;
this.match(HiveSqlParser.BITWISEOR);
this.state = 4336;
this.precedenceAmpersandExpression();
}
}
this.state = 4341;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceSimilarOperator() {
let localContext = new PrecedenceSimilarOperatorContext(this.context, this.state);
this.enterRule(localContext, 602, HiveSqlParser.RULE_precedenceSimilarOperator);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4342;
_la = this.tokenStream.LA(1);
if (!(_la === 184 || _la === 270 || _la === 286 || ((((_la - 408)) & ~0x1F) === 0 && ((1 << (_la - 408)) & 15) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
subQueryExpression() {
let localContext = new SubQueryExpressionContext(this.context, this.state);
this.enterRule(localContext, 604, HiveSqlParser.RULE_subQueryExpression);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4344;
this.match(HiveSqlParser.LPAREN);
this.state = 4345;
this.selectStatement();
this.state = 4346;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceSimilarExpression() {
let localContext = new PrecedenceSimilarExpressionContext(this.context, this.state);
this.enterRule(localContext, 606, HiveSqlParser.RULE_precedenceSimilarExpression);
try {
this.state = 4354;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_AND:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ARRAY:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BETWEEN:
case HiveSqlParser.KW_BIGINT:
case HiveSqlParser.KW_BINARY:
case HiveSqlParser.KW_BOOLEAN:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CASE:
case HiveSqlParser.KW_CAST:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_CURRENT_DATE:
case HiveSqlParser.KW_CURRENT_TIMESTAMP:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATE:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DOUBLE:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_EXTRACT:
case HiveSqlParser.KW_FALSE:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FLOAT:
case HiveSqlParser.KW_FLOOR:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_GROUPING:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IF:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_IN:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_INT:
case HiveSqlParser.KW_INTEGER:
case HiveSqlParser.KW_INTERVAL:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIKE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAP:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOT:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULL:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OR:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REAL:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_REGEXP:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_RLIKE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SMALLINT:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMP:
case HiveSqlParser.KW_TIMESTAMPLOCALTZ:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TRUE:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHEN:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.LPAREN:
case HiveSqlParser.EQUAL:
case HiveSqlParser.EQUAL_NS:
case HiveSqlParser.NOTEQUAL:
case HiveSqlParser.LESSTHANOREQUALTO:
case HiveSqlParser.LESSTHAN:
case HiveSqlParser.GREATERTHANOREQUALTO:
case HiveSqlParser.GREATERTHAN:
case HiveSqlParser.DIVIDE:
case HiveSqlParser.PLUS:
case HiveSqlParser.MINUS:
case HiveSqlParser.STAR:
case HiveSqlParser.MOD:
case HiveSqlParser.DIV:
case HiveSqlParser.BITWISENOT:
case HiveSqlParser.AMPERSAND:
case HiveSqlParser.TILDE:
case HiveSqlParser.BITWISEOR:
case HiveSqlParser.BITWISEXOR:
case HiveSqlParser.QUESTION:
case HiveSqlParser.StringLiteral:
case HiveSqlParser.IntegralLiteral:
case HiveSqlParser.NumberLiteral:
case HiveSqlParser.Number:
case HiveSqlParser.Identifier:
case HiveSqlParser.CharSetName:
this.enterOuterAlt(localContext, 1);
{
this.state = 4348;
localContext._a = this.precedenceBitwiseOrExpression();
this.state = 4350;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 575, this.context)) {
case 1:
{
this.state = 4349;
localContext._part = this.precedenceSimilarExpressionPart();
}
break;
}
}
break;
case HiveSqlParser.KW_EXISTS:
this.enterOuterAlt(localContext, 2);
{
this.state = 4352;
this.match(HiveSqlParser.KW_EXISTS);
this.state = 4353;
this.subQueryExpression();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceSimilarExpressionPart() {
let localContext = new PrecedenceSimilarExpressionPartContext(this.context, this.state);
this.enterRule(localContext, 608, HiveSqlParser.RULE_precedenceSimilarExpressionPart);
try {
this.state = 4362;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 577, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4356;
this.precedenceSimilarOperator();
this.state = 4357;
localContext._equalExpr = this.precedenceBitwiseOrExpression();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4359;
this.precedenceSimilarExpressionAtom();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 4360;
this.match(HiveSqlParser.KW_NOT);
this.state = 4361;
this.precedenceSimilarExpressionPartNot();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceSimilarExpressionAtom() {
let localContext = new PrecedenceSimilarExpressionAtomContext(this.context, this.state);
this.enterRule(localContext, 610, HiveSqlParser.RULE_precedenceSimilarExpressionAtom);
let _la;
try {
this.state = 4378;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_IN:
this.enterOuterAlt(localContext, 1);
{
this.state = 4364;
this.match(HiveSqlParser.KW_IN);
this.state = 4365;
this.precedenceSimilarExpressionIn();
}
break;
case HiveSqlParser.KW_BETWEEN:
this.enterOuterAlt(localContext, 2);
{
this.state = 4366;
this.match(HiveSqlParser.KW_BETWEEN);
this.state = 4367;
localContext._min = this.precedenceBitwiseOrExpression();
this.state = 4368;
this.match(HiveSqlParser.KW_AND);
this.state = 4369;
localContext._max = this.precedenceBitwiseOrExpression();
}
break;
case HiveSqlParser.KW_LIKE:
this.enterOuterAlt(localContext, 3);
{
this.state = 4371;
this.match(HiveSqlParser.KW_LIKE);
this.state = 4372;
_la = this.tokenStream.LA(1);
if (!(_la === 7 || _la === 13)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4373;
localContext._expr = this.expressionsInParenthesis();
}
break;
case HiveSqlParser.EQUAL:
case HiveSqlParser.NOTEQUAL:
case HiveSqlParser.LESSTHANOREQUALTO:
case HiveSqlParser.LESSTHAN:
case HiveSqlParser.GREATERTHANOREQUALTO:
case HiveSqlParser.GREATERTHAN:
this.enterOuterAlt(localContext, 4);
{
this.state = 4374;
this.subQuerySelectorOperator();
this.state = 4375;
_la = this.tokenStream.LA(1);
if (!(_la === 7 || _la === 13 || _la === 313)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4376;
this.subQueryExpression();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceSimilarExpressionIn() {
let localContext = new PrecedenceSimilarExpressionInContext(this.context, this.state);
this.enterRule(localContext, 612, HiveSqlParser.RULE_precedenceSimilarExpressionIn);
try {
this.state = 4382;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 579, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4380;
this.subQueryExpression();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4381;
localContext._expr = this.expressionsInParenthesis();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceSimilarExpressionPartNot() {
let localContext = new PrecedenceSimilarExpressionPartNotContext(this.context, this.state);
this.enterRule(localContext, 614, HiveSqlParser.RULE_precedenceSimilarExpressionPartNot);
let _la;
try {
this.state = 4387;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 580, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4384;
_la = this.tokenStream.LA(1);
if (!(_la === 184 || _la === 270 || _la === 286)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4385;
localContext._notExpr = this.precedenceBitwiseOrExpression();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4386;
this.precedenceSimilarExpressionAtom();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceDistinctOperator() {
let localContext = new PrecedenceDistinctOperatorContext(this.context, this.state);
this.enterRule(localContext, 616, HiveSqlParser.RULE_precedenceDistinctOperator);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4389;
this.match(HiveSqlParser.KW_IS);
this.state = 4390;
this.match(HiveSqlParser.KW_DISTINCT);
this.state = 4391;
this.match(HiveSqlParser.KW_FROM);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceEqualOperator() {
let localContext = new PrecedenceEqualOperatorContext(this.context, this.state);
this.enterRule(localContext, 618, HiveSqlParser.RULE_precedenceEqualOperator);
try {
this.state = 4400;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.EQUAL:
this.enterOuterAlt(localContext, 1);
{
this.state = 4393;
this.match(HiveSqlParser.EQUAL);
}
break;
case HiveSqlParser.EQUAL_NS:
this.enterOuterAlt(localContext, 2);
{
this.state = 4394;
this.match(HiveSqlParser.EQUAL_NS);
}
break;
case HiveSqlParser.NOTEQUAL:
this.enterOuterAlt(localContext, 3);
{
this.state = 4395;
this.match(HiveSqlParser.NOTEQUAL);
}
break;
case HiveSqlParser.KW_IS:
this.enterOuterAlt(localContext, 4);
{
this.state = 4396;
this.match(HiveSqlParser.KW_IS);
this.state = 4397;
this.match(HiveSqlParser.KW_NOT);
this.state = 4398;
this.match(HiveSqlParser.KW_DISTINCT);
this.state = 4399;
this.match(HiveSqlParser.KW_FROM);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceEqualExpression() {
let localContext = new PrecedenceEqualExpressionContext(this.context, this.state);
this.enterRule(localContext, 620, HiveSqlParser.RULE_precedenceEqualExpression);
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 4402;
this.precedenceSimilarExpression();
this.state = 4411;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 583, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
this.state = 4409;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 582, this.context)) {
case 1:
{
this.state = 4403;
localContext._precedenceEqualOperator = this.precedenceEqualOperator();
localContext._equal.push(localContext._precedenceEqualOperator);
this.state = 4404;
localContext._precedenceSimilarExpression = this.precedenceSimilarExpression();
localContext._p.push(localContext._precedenceSimilarExpression);
}
break;
case 2:
{
this.state = 4406;
localContext._precedenceDistinctOperator = this.precedenceDistinctOperator();
localContext._dist.push(localContext._precedenceDistinctOperator);
this.state = 4407;
localContext._precedenceSimilarExpression = this.precedenceSimilarExpression();
localContext._p.push(localContext._precedenceSimilarExpression);
}
break;
}
}
}
this.state = 4413;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 583, this.context);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
isCondition() {
let localContext = new IsConditionContext(this.context, this.state);
this.enterRule(localContext, 622, HiveSqlParser.RULE_isCondition);
let _la;
try {
this.state = 4420;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_NULL:
this.enterOuterAlt(localContext, 1);
{
this.state = 4414;
this.match(HiveSqlParser.KW_NULL);
}
break;
case HiveSqlParser.KW_TRUE:
this.enterOuterAlt(localContext, 2);
{
this.state = 4415;
this.match(HiveSqlParser.KW_TRUE);
}
break;
case HiveSqlParser.KW_FALSE:
this.enterOuterAlt(localContext, 3);
{
this.state = 4416;
this.match(HiveSqlParser.KW_FALSE);
}
break;
case HiveSqlParser.KW_UNKNOWN:
this.enterOuterAlt(localContext, 4);
{
this.state = 4417;
this.match(HiveSqlParser.KW_UNKNOWN);
}
break;
case HiveSqlParser.KW_NOT:
this.enterOuterAlt(localContext, 5);
{
this.state = 4418;
this.match(HiveSqlParser.KW_NOT);
this.state = 4419;
_la = this.tokenStream.LA(1);
if (!(_la === 125 || _la === 219 || _la === 350 || _la === 360)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceNotExpression() {
let localContext = new PrecedenceNotExpressionContext(this.context, this.state);
this.enterRule(localContext, 624, HiveSqlParser.RULE_precedenceNotExpression);
let _la;
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 4425;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 585, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 4422;
this.match(HiveSqlParser.KW_NOT);
}
}
}
this.state = 4427;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 585, this.context);
}
this.state = 4428;
this.precedenceEqualExpression();
this.state = 4431;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 167) {
{
this.state = 4429;
localContext._a = this.match(HiveSqlParser.KW_IS);
this.state = 4430;
this.isCondition();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
precedenceAndExpression() {
let localContext = new PrecedenceAndExpressionContext(this.context, this.state);
this.enterRule(localContext, 626, HiveSqlParser.RULE_precedenceAndExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4433;
this.precedenceNotExpression();
this.state = 4438;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 11) {
{
{
this.state = 4434;
this.match(HiveSqlParser.KW_AND);
this.state = 4435;
this.precedenceNotExpression();
}
}
this.state = 4440;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
tableOrPartition() {
let localContext = new TableOrPartitionContext(this.context, this.state);
this.enterRule(localContext, 628, HiveSqlParser.RULE_tableOrPartition);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4441;
this.tableName();
this.state = 4443;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 237) {
{
this.state = 4442;
this.partitionSpec();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionSpec() {
let localContext = new PartitionSpecContext(this.context, this.state);
this.enterRule(localContext, 630, HiveSqlParser.RULE_partitionSpec);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4445;
this.match(HiveSqlParser.KW_PARTITION);
this.state = 4446;
this.match(HiveSqlParser.LPAREN);
this.state = 4447;
this.partitionVal();
this.state = 4452;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4448;
this.match(HiveSqlParser.COMMA);
this.state = 4449;
this.partitionVal();
}
}
this.state = 4454;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 4455;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionVal() {
let localContext = new PartitionValContext(this.context, this.state);
this.enterRule(localContext, 632, HiveSqlParser.RULE_partitionVal);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4457;
this.id_();
this.state = 4460;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 405) {
{
this.state = 4458;
this.match(HiveSqlParser.EQUAL);
this.state = 4459;
this.constant();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionSelectorSpec() {
let localContext = new PartitionSelectorSpecContext(this.context, this.state);
this.enterRule(localContext, 634, HiveSqlParser.RULE_partitionSelectorSpec);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4462;
this.match(HiveSqlParser.LPAREN);
this.state = 4463;
this.partitionSelectorVal();
this.state = 4468;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4464;
this.match(HiveSqlParser.COMMA);
this.state = 4465;
this.partitionSelectorVal();
}
}
this.state = 4470;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 4471;
this.match(HiveSqlParser.RPAREN);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
partitionSelectorVal() {
let localContext = new PartitionSelectorValContext(this.context, this.state);
this.enterRule(localContext, 636, HiveSqlParser.RULE_partitionSelectorVal);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4473;
this.id_();
this.state = 4476;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_LIKE:
{
this.state = 4474;
this.match(HiveSqlParser.KW_LIKE);
}
break;
case HiveSqlParser.EQUAL:
case HiveSqlParser.NOTEQUAL:
case HiveSqlParser.LESSTHANOREQUALTO:
case HiveSqlParser.LESSTHAN:
case HiveSqlParser.GREATERTHANOREQUALTO:
case HiveSqlParser.GREATERTHAN:
{
this.state = 4475;
this.subQuerySelectorOperator();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 4478;
this.constant();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
subQuerySelectorOperator() {
let localContext = new SubQuerySelectorOperatorContext(this.context, this.state);
this.enterRule(localContext, 638, HiveSqlParser.RULE_subQuerySelectorOperator);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4480;
_la = this.tokenStream.LA(1);
if (!(((((_la - 405)) & ~0x1F) === 0 && ((1 << (_la - 405)) & 125) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
sysFuncNames() {
let localContext = new SysFuncNamesContext(this.context, this.state);
this.enterRule(localContext, 640, HiveSqlParser.RULE_sysFuncNames);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4482;
_la = this.tokenStream.LA(1);
if (!(((((_la - 11)) & ~0x1F) === 0 && ((1 << (_la - 11)) & 17023009) !== 0) || _la === 100 || _la === 131 || ((((_la - 132)) & ~0x1F) === 0 && ((1 << (_la - 132)) & 3225944065) !== 0) || _la === 184 || _la === 198 || _la === 216 || _la === 228 || ((((_la - 264)) & ~0x1F) === 0 && ((1 << (_la - 264)) & 4194369) !== 0) || ((((_la - 311)) & ~0x1F) === 0 && ((1 << (_la - 311)) & 536883201) !== 0) || _la === 357 || _la === 383 || ((((_la - 405)) & ~0x1F) === 0 && ((1 << (_la - 405)) & 385023) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
id_() {
let localContext = new Id_Context(this.context, this.state);
this.enterRule(localContext, 642, HiveSqlParser.RULE_id_);
try {
this.state = 4486;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 1);
{
this.state = 4484;
this.match(HiveSqlParser.Identifier);
}
break;
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
this.enterOuterAlt(localContext, 2);
{
this.state = 4485;
this.nonReserved();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
functionIdentifier() {
let localContext = new FunctionIdentifierContext(this.context, this.state);
this.enterRule(localContext, 644, HiveSqlParser.RULE_functionIdentifier);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4488;
this.id_();
this.state = 4491;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 395) {
{
this.state = 4489;
this.match(HiveSqlParser.DOT);
this.state = 4490;
localContext._fn = this.id_();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
principalIdentifier() {
let localContext = new PrincipalIdentifierContext(this.context, this.state);
this.enterRule(localContext, 646, HiveSqlParser.RULE_principalIdentifier);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4493;
this.id_();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
nonReserved() {
let localContext = new NonReservedContext(this.context, this.state);
this.enterRule(localContext, 648, HiveSqlParser.RULE_nonReserved);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4495;
_la = this.tokenStream.LA(1);
if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & 3252454782) !== 0) || ((((_la - 33)) & ~0x1F) === 0 && ((1 << (_la - 33)) & 94072755) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 3203280837) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 3774298979) !== 0) || ((((_la - 130)) & ~0x1F) === 0 && ((1 << (_la - 130)) & 1985876353) !== 0) || ((((_la - 168)) & ~0x1F) === 0 && ((1 << (_la - 168)) & 3152987127) !== 0) || ((((_la - 200)) & ~0x1F) === 0 && ((1 << (_la - 200)) & 215407575) !== 0) || ((((_la - 232)) & ~0x1F) === 0 && ((1 << (_la - 232)) & 1859156443) !== 0) || ((((_la - 265)) & ~0x1F) === 0 && ((1 << (_la - 265)) & 4039901127) !== 0) || ((((_la - 297)) & ~0x1F) === 0 && ((1 << (_la - 297)) & 3755917179) !== 0) || ((((_la - 330)) & ~0x1F) === 0 && ((1 << (_la - 330)) & 3402225181) !== 0) || ((((_la - 362)) & ~0x1F) === 0 && ((1 << (_la - 362)) & 4238323319) !== 0) || _la === 394)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
sql11ReservedKeywordsUsedAsFunctionName() {
let localContext = new Sql11ReservedKeywordsUsedAsFunctionNameContext(this.context, this.state);
this.enterRule(localContext, 650, HiveSqlParser.RULE_sql11ReservedKeywordsUsedAsFunctionName);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4497;
_la = this.tokenStream.LA(1);
if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & 469827584) !== 0) || ((((_la - 63)) & ~0x1F) === 0 && ((1 << (_la - 63)) & 259) !== 0) || _la === 100 || _la === 131 || ((((_la - 145)) & ~0x1F) === 0 && ((1 << (_la - 145)) & 393281) !== 0) || _la === 198 || _la === 264 || _la === 311 || _la === 337)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
configPropertiesItem() {
let localContext = new ConfigPropertiesItemContext(this.context, this.state);
this.enterRule(localContext, 652, HiveSqlParser.RULE_configPropertiesItem);
try {
this.state = 4550;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ABORT:
case HiveSqlParser.KW_ACTIVATE:
case HiveSqlParser.KW_ACTIVE:
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_ADMIN:
case HiveSqlParser.KW_AFTER:
case HiveSqlParser.KW_ALLOC_FRACTION:
case HiveSqlParser.KW_ANALYZE:
case HiveSqlParser.KW_ARCHIVE:
case HiveSqlParser.KW_ASC:
case HiveSqlParser.KW_AST:
case HiveSqlParser.KW_AT:
case HiveSqlParser.KW_AUTOCOMMIT:
case HiveSqlParser.KW_BATCH:
case HiveSqlParser.KW_BEFORE:
case HiveSqlParser.KW_BUCKET:
case HiveSqlParser.KW_BUCKETS:
case HiveSqlParser.KW_CACHE:
case HiveSqlParser.KW_CASCADE:
case HiveSqlParser.KW_CBO:
case HiveSqlParser.KW_CHANGE:
case HiveSqlParser.KW_CHECK:
case HiveSqlParser.KW_CLUSTER:
case HiveSqlParser.KW_CLUSTERED:
case HiveSqlParser.KW_CLUSTERSTATUS:
case HiveSqlParser.KW_COLLECTION:
case HiveSqlParser.KW_COLUMNS:
case HiveSqlParser.KW_COMMENT:
case HiveSqlParser.KW_COMPACT:
case HiveSqlParser.KW_COMPACTIONS:
case HiveSqlParser.KW_COMPUTE:
case HiveSqlParser.KW_CONCATENATE:
case HiveSqlParser.KW_CONTINUE:
case HiveSqlParser.KW_COST:
case HiveSqlParser.KW_CRON:
case HiveSqlParser.KW_DATA:
case HiveSqlParser.KW_DATABASES:
case HiveSqlParser.KW_DATETIME:
case HiveSqlParser.KW_DAY:
case HiveSqlParser.KW_DAYS:
case HiveSqlParser.KW_DAYOFWEEK:
case HiveSqlParser.KW_DBPROPERTIES:
case HiveSqlParser.KW_DCPROPERTIES:
case HiveSqlParser.KW_DEBUG:
case HiveSqlParser.KW_DEFAULT:
case HiveSqlParser.KW_DEFERRED:
case HiveSqlParser.KW_DEFINED:
case HiveSqlParser.KW_DELIMITED:
case HiveSqlParser.KW_DEPENDENCY:
case HiveSqlParser.KW_DESC:
case HiveSqlParser.KW_DETAIL:
case HiveSqlParser.KW_DIRECTORIES:
case HiveSqlParser.KW_DIRECTORY:
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
case HiveSqlParser.KW_DISTRIBUTE:
case HiveSqlParser.KW_DISTRIBUTED:
case HiveSqlParser.KW_DO:
case HiveSqlParser.KW_DUMP:
case HiveSqlParser.KW_ELEM_TYPE:
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
case HiveSqlParser.KW_ENFORCED:
case HiveSqlParser.KW_ESCAPED:
case HiveSqlParser.KW_EVERY:
case HiveSqlParser.KW_EXCLUSIVE:
case HiveSqlParser.KW_EXECUTE:
case HiveSqlParser.KW_EXECUTED:
case HiveSqlParser.KW_EXPIRE_SNAPSHOTS:
case HiveSqlParser.KW_EXPLAIN:
case HiveSqlParser.KW_EXPORT:
case HiveSqlParser.KW_EXPRESSION:
case HiveSqlParser.KW_FIELDS:
case HiveSqlParser.KW_FILE:
case HiveSqlParser.KW_FILEFORMAT:
case HiveSqlParser.KW_FIRST:
case HiveSqlParser.KW_FORMAT:
case HiveSqlParser.KW_FORMATTED:
case HiveSqlParser.KW_FUNCTIONS:
case HiveSqlParser.KW_HOLD_DDLTIME:
case HiveSqlParser.KW_HOUR:
case HiveSqlParser.KW_HOURS:
case HiveSqlParser.KW_IDXPROPERTIES:
case HiveSqlParser.KW_IGNORE:
case HiveSqlParser.KW_INDEX:
case HiveSqlParser.KW_INDEXES:
case HiveSqlParser.KW_INPATH:
case HiveSqlParser.KW_INPUTDRIVER:
case HiveSqlParser.KW_INPUTFORMAT:
case HiveSqlParser.KW_ISOLATION:
case HiveSqlParser.KW_ITEMS:
case HiveSqlParser.KW_JAR:
case HiveSqlParser.KW_JOINCOST:
case HiveSqlParser.KW_KEY:
case HiveSqlParser.KW_KEYS:
case HiveSqlParser.KW_KEY_TYPE:
case HiveSqlParser.KW_KILL:
case HiveSqlParser.KW_LAST:
case HiveSqlParser.KW_LEVEL:
case HiveSqlParser.KW_LIFECYCLE:
case HiveSqlParser.KW_LIMIT:
case HiveSqlParser.KW_LINES:
case HiveSqlParser.KW_LOAD:
case HiveSqlParser.KW_LOCATION:
case HiveSqlParser.KW_LOCK:
case HiveSqlParser.KW_LOCKS:
case HiveSqlParser.KW_LOGICAL:
case HiveSqlParser.KW_LONG:
case HiveSqlParser.KW_MANAGED:
case HiveSqlParser.KW_MANAGEDLOCATION:
case HiveSqlParser.KW_MANAGEMENT:
case HiveSqlParser.KW_MAPJOIN:
case HiveSqlParser.KW_MAPPING:
case HiveSqlParser.KW_MATCHED:
case HiveSqlParser.KW_MATERIALIZED:
case HiveSqlParser.KW_METADATA:
case HiveSqlParser.KW_MINUTE:
case HiveSqlParser.KW_MINUTES:
case HiveSqlParser.KW_MONTH:
case HiveSqlParser.KW_MONTHS:
case HiveSqlParser.KW_MOVE:
case HiveSqlParser.KW_MSCK:
case HiveSqlParser.KW_NORELY:
case HiveSqlParser.KW_NOSCAN:
case HiveSqlParser.KW_NOVALIDATE:
case HiveSqlParser.KW_NO_DROP:
case HiveSqlParser.KW_NULLS:
case HiveSqlParser.KW_OFFLINE:
case HiveSqlParser.KW_OFFSET:
case HiveSqlParser.KW_OPERATOR:
case HiveSqlParser.KW_OPTION:
case HiveSqlParser.KW_OUTPUTDRIVER:
case HiveSqlParser.KW_OUTPUTFORMAT:
case HiveSqlParser.KW_OVERWRITE:
case HiveSqlParser.KW_OWNER:
case HiveSqlParser.KW_PARTITIONED:
case HiveSqlParser.KW_PARTITIONS:
case HiveSqlParser.KW_PATH:
case HiveSqlParser.KW_PLAN:
case HiveSqlParser.KW_PLANS:
case HiveSqlParser.KW_PLUS:
case HiveSqlParser.KW_POOL:
case HiveSqlParser.KW_PRINCIPALS:
case HiveSqlParser.KW_PROTECTION:
case HiveSqlParser.KW_PURGE:
case HiveSqlParser.KW_QUARTER:
case HiveSqlParser.KW_QUERY:
case HiveSqlParser.KW_QUERY_PARALLELISM:
case HiveSqlParser.KW_READ:
case HiveSqlParser.KW_READONLY:
case HiveSqlParser.KW_REBUILD:
case HiveSqlParser.KW_RECORDREADER:
case HiveSqlParser.KW_RECORDWRITER:
case HiveSqlParser.KW_RELOAD:
case HiveSqlParser.KW_RELY:
case HiveSqlParser.KW_REMOTE:
case HiveSqlParser.KW_RENAME:
case HiveSqlParser.KW_REOPTIMIZATION:
case HiveSqlParser.KW_REPAIR:
case HiveSqlParser.KW_REPL:
case HiveSqlParser.KW_REPLACE:
case HiveSqlParser.KW_REPLICATION:
case HiveSqlParser.KW_RESOURCE:
case HiveSqlParser.KW_RESPECT:
case HiveSqlParser.KW_RESTRICT:
case HiveSqlParser.KW_REWRITE:
case HiveSqlParser.KW_ROLE:
case HiveSqlParser.KW_ROLES:
case HiveSqlParser.KW_SCHEDULED:
case HiveSqlParser.KW_SCHEDULING_POLICY:
case HiveSqlParser.KW_SCHEMA:
case HiveSqlParser.KW_SCHEMAS:
case HiveSqlParser.KW_SECOND:
case HiveSqlParser.KW_SECONDS:
case HiveSqlParser.KW_SEMI:
case HiveSqlParser.KW_SERDE:
case HiveSqlParser.KW_SERDEPROPERTIES:
case HiveSqlParser.KW_SERVER:
case HiveSqlParser.KW_SETS:
case HiveSqlParser.KW_SET_CURRENT_SNAPSHOT:
case HiveSqlParser.KW_SHARED:
case HiveSqlParser.KW_SHOW:
case HiveSqlParser.KW_SHOW_DATABASE:
case HiveSqlParser.KW_SKEWED:
case HiveSqlParser.KW_SNAPSHOT:
case HiveSqlParser.KW_SORT:
case HiveSqlParser.KW_SORTED:
case HiveSqlParser.KW_SPEC:
case HiveSqlParser.KW_SSL:
case HiveSqlParser.KW_STATISTICS:
case HiveSqlParser.KW_STATUS:
case HiveSqlParser.KW_STORED:
case HiveSqlParser.KW_STREAMTABLE:
case HiveSqlParser.KW_STRING:
case HiveSqlParser.KW_STRUCT:
case HiveSqlParser.KW_SUMMARY:
case HiveSqlParser.KW_SYSTEM_TIME:
case HiveSqlParser.KW_SYSTEM_VERSION:
case HiveSqlParser.KW_TABLES:
case HiveSqlParser.KW_TBLPROPERTIES:
case HiveSqlParser.KW_TEMPORARY:
case HiveSqlParser.KW_TERMINATED:
case HiveSqlParser.KW_TIMESTAMPTZ:
case HiveSqlParser.KW_TINYINT:
case HiveSqlParser.KW_TOUCH:
case HiveSqlParser.KW_TRANSACTION:
case HiveSqlParser.KW_TRANSACTIONAL:
case HiveSqlParser.KW_TRANSACTIONS:
case HiveSqlParser.KW_TRIM:
case HiveSqlParser.KW_TYPE:
case HiveSqlParser.KW_UNARCHIVE:
case HiveSqlParser.KW_UNDO:
case HiveSqlParser.KW_UNIONTYPE:
case HiveSqlParser.KW_UNKNOWN:
case HiveSqlParser.KW_UNLOCK:
case HiveSqlParser.KW_UNMANAGED:
case HiveSqlParser.KW_UNSET:
case HiveSqlParser.KW_UNSIGNED:
case HiveSqlParser.KW_URI:
case HiveSqlParser.KW_URL:
case HiveSqlParser.KW_USE:
case HiveSqlParser.KW_UTC:
case HiveSqlParser.KW_UTCTIMESTAMP:
case HiveSqlParser.KW_VALIDATE:
case HiveSqlParser.KW_VALUE_TYPE:
case HiveSqlParser.KW_VECTORIZATION:
case HiveSqlParser.KW_VIEW:
case HiveSqlParser.KW_VIEWS:
case HiveSqlParser.KW_WAIT:
case HiveSqlParser.KW_WEEK:
case HiveSqlParser.KW_WEEKS:
case HiveSqlParser.KW_WHILE:
case HiveSqlParser.KW_WITHIN:
case HiveSqlParser.KW_WORK:
case HiveSqlParser.KW_WORKLOAD:
case HiveSqlParser.KW_WRITE:
case HiveSqlParser.KW_YEAR:
case HiveSqlParser.KW_YEARS:
case HiveSqlParser.KW_ZONE:
case HiveSqlParser.Identifier:
this.enterOuterAlt(localContext, 1);
{
this.state = 4499;
this.id_();
}
break;
case HiveSqlParser.KW_SELECT:
this.enterOuterAlt(localContext, 2);
{
this.state = 4500;
this.match(HiveSqlParser.KW_SELECT);
}
break;
case HiveSqlParser.KW_JOIN:
this.enterOuterAlt(localContext, 3);
{
this.state = 4501;
this.match(HiveSqlParser.KW_JOIN);
}
break;
case HiveSqlParser.KW_PARTITION:
this.enterOuterAlt(localContext, 4);
{
this.state = 4502;
this.match(HiveSqlParser.KW_PARTITION);
}
break;
case HiveSqlParser.KW_MAP:
this.enterOuterAlt(localContext, 5);
{
this.state = 4503;
this.match(HiveSqlParser.KW_MAP);
}
break;
case HiveSqlParser.KW_REDUCE:
this.enterOuterAlt(localContext, 6);
{
this.state = 4504;
this.match(HiveSqlParser.KW_REDUCE);
}
break;
case HiveSqlParser.KW_USER:
this.enterOuterAlt(localContext, 7);
{
this.state = 4505;
this.match(HiveSqlParser.KW_USER);
}
break;
case HiveSqlParser.KW_PERCENT:
this.enterOuterAlt(localContext, 8);
{
this.state = 4506;
this.match(HiveSqlParser.KW_PERCENT);
}
break;
case HiveSqlParser.KW_INTERVAL:
this.enterOuterAlt(localContext, 9);
{
this.state = 4507;
this.match(HiveSqlParser.KW_INTERVAL);
}
break;
case HiveSqlParser.KW_ROWS:
this.enterOuterAlt(localContext, 10);
{
this.state = 4508;
this.match(HiveSqlParser.KW_ROWS);
}
break;
case HiveSqlParser.KW_UNION:
this.enterOuterAlt(localContext, 11);
{
this.state = 4509;
this.match(HiveSqlParser.KW_UNION);
}
break;
case HiveSqlParser.KW_GROUP:
this.enterOuterAlt(localContext, 12);
{
this.state = 4510;
this.match(HiveSqlParser.KW_GROUP);
}
break;
case HiveSqlParser.KW_MERGE:
this.enterOuterAlt(localContext, 13);
{
this.state = 4511;
this.match(HiveSqlParser.KW_MERGE);
}
break;
case HiveSqlParser.KW_NULL:
this.enterOuterAlt(localContext, 14);
{
this.state = 4512;
this.match(HiveSqlParser.KW_NULL);
}
break;
case HiveSqlParser.KW_FETCH:
this.enterOuterAlt(localContext, 15);
{
this.state = 4513;
this.match(HiveSqlParser.KW_FETCH);
}
break;
case HiveSqlParser.KW_LOCAL:
this.enterOuterAlt(localContext, 16);
{
this.state = 4514;
this.match(HiveSqlParser.KW_LOCAL);
}
break;
case HiveSqlParser.KW_DROP:
this.enterOuterAlt(localContext, 17);
{
this.state = 4515;
this.match(HiveSqlParser.KW_DROP);
}
break;
case HiveSqlParser.KW_TABLE:
this.enterOuterAlt(localContext, 18);
{
this.state = 4516;
this.match(HiveSqlParser.KW_TABLE);
}
break;
case HiveSqlParser.KW_ON:
this.enterOuterAlt(localContext, 19);
{
this.state = 4517;
this.match(HiveSqlParser.KW_ON);
}
break;
case HiveSqlParser.KW_ROW:
this.enterOuterAlt(localContext, 20);
{
this.state = 4518;
this.match(HiveSqlParser.KW_ROW);
}
break;
case HiveSqlParser.KW_GROUPING:
this.enterOuterAlt(localContext, 21);
{
this.state = 4519;
this.match(HiveSqlParser.KW_GROUPING);
}
break;
case HiveSqlParser.KW_SET:
this.enterOuterAlt(localContext, 22);
{
this.state = 4520;
this.match(HiveSqlParser.KW_SET);
}
break;
case HiveSqlParser.KW_FORCE:
this.enterOuterAlt(localContext, 23);
{
this.state = 4521;
this.match(HiveSqlParser.KW_FORCE);
}
break;
case HiveSqlParser.KW_START:
this.enterOuterAlt(localContext, 24);
{
this.state = 4522;
this.match(HiveSqlParser.KW_START);
}
break;
case HiveSqlParser.KW_INSERT:
this.enterOuterAlt(localContext, 25);
{
this.state = 4523;
this.match(HiveSqlParser.KW_INSERT);
}
break;
case HiveSqlParser.KW_CONF:
this.enterOuterAlt(localContext, 26);
{
this.state = 4524;
this.match(HiveSqlParser.KW_CONF);
}
break;
case HiveSqlParser.KW_INTO:
this.enterOuterAlt(localContext, 27);
{
this.state = 4525;
this.match(HiveSqlParser.KW_INTO);
}
break;
case HiveSqlParser.KW_UNIQUE:
this.enterOuterAlt(localContext, 28);
{
this.state = 4526;
this.match(HiveSqlParser.KW_UNIQUE);
}
break;
case HiveSqlParser.KW_COLUMN:
this.enterOuterAlt(localContext, 29);
{
this.state = 4527;
this.match(HiveSqlParser.KW_COLUMN);
}
break;
case HiveSqlParser.KW_TRANSFORM:
this.enterOuterAlt(localContext, 30);
{
this.state = 4528;
this.match(HiveSqlParser.KW_TRANSFORM);
}
break;
case HiveSqlParser.KW_DISTINCT:
this.enterOuterAlt(localContext, 31);
{
this.state = 4529;
this.match(HiveSqlParser.KW_DISTINCT);
}
break;
case HiveSqlParser.KW_IN:
this.enterOuterAlt(localContext, 32);
{
this.state = 4530;
this.match(HiveSqlParser.KW_IN);
}
break;
case HiveSqlParser.KW_REFERENCES:
this.enterOuterAlt(localContext, 33);
{
this.state = 4531;
this.match(HiveSqlParser.KW_REFERENCES);
}
break;
case HiveSqlParser.KW_TIMESTAMP:
this.enterOuterAlt(localContext, 34);
{
this.state = 4532;
this.match(HiveSqlParser.KW_TIMESTAMP);
}
break;
case HiveSqlParser.KW_ONLY:
this.enterOuterAlt(localContext, 35);
{
this.state = 4533;
this.match(HiveSqlParser.KW_ONLY);
}
break;
case HiveSqlParser.KW_END:
this.enterOuterAlt(localContext, 36);
{
this.state = 4534;
this.match(HiveSqlParser.KW_END);
}
break;
case HiveSqlParser.KW_FUNCTION:
this.enterOuterAlt(localContext, 37);
{
this.state = 4535;
this.match(HiveSqlParser.KW_FUNCTION);
}
break;
case HiveSqlParser.KW_UPDATE:
this.enterOuterAlt(localContext, 38);
{
this.state = 4536;
this.match(HiveSqlParser.KW_UPDATE);
}
break;
case HiveSqlParser.KW_AUTHORIZATION:
this.enterOuterAlt(localContext, 39);
{
this.state = 4537;
this.match(HiveSqlParser.KW_AUTHORIZATION);
}
break;
case HiveSqlParser.KW_DDL:
this.enterOuterAlt(localContext, 40);
{
this.state = 4538;
this.match(HiveSqlParser.KW_DDL);
}
break;
case HiveSqlParser.KW_VALUES:
this.enterOuterAlt(localContext, 41);
{
this.state = 4539;
this.match(HiveSqlParser.KW_VALUES);
}
break;
case HiveSqlParser.KW_TIME:
this.enterOuterAlt(localContext, 42);
{
this.state = 4540;
this.match(HiveSqlParser.KW_TIME);
}
break;
case HiveSqlParser.KW_IS:
this.enterOuterAlt(localContext, 43);
{
this.state = 4541;
this.match(HiveSqlParser.KW_IS);
}
break;
case HiveSqlParser.KW_FOR:
this.enterOuterAlt(localContext, 44);
{
this.state = 4542;
this.match(HiveSqlParser.KW_FOR);
}
break;
case HiveSqlParser.KW_NOT:
this.enterOuterAlt(localContext, 45);
{
this.state = 4543;
this.match(HiveSqlParser.KW_NOT);
}
break;
case HiveSqlParser.KW_BINARY:
this.enterOuterAlt(localContext, 46);
{
this.state = 4544;
this.match(HiveSqlParser.KW_BINARY);
}
break;
case HiveSqlParser.KW_USING:
this.enterOuterAlt(localContext, 47);
{
this.state = 4545;
this.match(HiveSqlParser.KW_USING);
}
break;
case HiveSqlParser.KW_READS:
this.enterOuterAlt(localContext, 48);
{
this.state = 4546;
this.match(HiveSqlParser.KW_READS);
}
break;
case HiveSqlParser.KW_BETWEEN:
this.enterOuterAlt(localContext, 49);
{
this.state = 4547;
this.match(HiveSqlParser.KW_BETWEEN);
}
break;
case HiveSqlParser.KW_CURRENT:
this.enterOuterAlt(localContext, 50);
{
this.state = 4548;
this.match(HiveSqlParser.KW_CURRENT);
}
break;
case HiveSqlParser.KW_AS:
this.enterOuterAlt(localContext, 51);
{
this.state = 4549;
this.match(HiveSqlParser.KW_AS);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
resourcePlanDdlStatements() {
let localContext = new ResourcePlanDdlStatementsContext(this.context, this.state);
this.enterRule(localContext, 654, HiveSqlParser.RULE_resourcePlanDdlStatements);
let _la;
try {
this.state = 4717;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 612, this.context)) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 4552;
this.match(HiveSqlParser.KW_CREATE);
this.state = 4553;
this.match(HiveSqlParser.KW_RESOURCE);
this.state = 4554;
this.match(HiveSqlParser.KW_PLAN);
this.state = 4556;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 4555;
this.ifNotExists();
}
}
this.state = 4567;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 598, this.context)) {
case 1:
{
this.state = 4558;
localContext._name = this.id_();
this.state = 4559;
this.match(HiveSqlParser.KW_LIKE);
this.state = 4560;
localContext._likeName = this.id_();
}
break;
case 2:
{
this.state = 4562;
localContext._name = this.id_();
this.state = 4565;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 597, this.context)) {
case 1:
{
this.state = 4563;
this.match(HiveSqlParser.KW_WITH);
this.state = 4564;
this.rpAssignList();
}
break;
}
}
break;
}
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 4569;
this.match(HiveSqlParser.KW_ALTER);
this.state = 4570;
this.match(HiveSqlParser.KW_RESOURCE);
this.state = 4571;
this.match(HiveSqlParser.KW_PLAN);
this.state = 4572;
localContext._name = this.id_();
this.state = 4597;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_VALIDATE:
{
this.state = 4573;
this.match(HiveSqlParser.KW_VALIDATE);
}
break;
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
{
this.state = 4574;
this.disable();
}
break;
case HiveSqlParser.KW_SET:
{
this.state = 4575;
this.match(HiveSqlParser.KW_SET);
this.state = 4576;
this.rpAssignList();
}
break;
case HiveSqlParser.KW_UNSET:
{
this.state = 4577;
this.match(HiveSqlParser.KW_UNSET);
this.state = 4578;
this.rpUnassign();
this.state = 4583;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4579;
this.match(HiveSqlParser.COMMA);
this.state = 4580;
this.rpUnassign();
}
}
this.state = 4585;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
break;
case HiveSqlParser.KW_RENAME:
{
this.state = 4586;
this.match(HiveSqlParser.KW_RENAME);
this.state = 4587;
this.match(HiveSqlParser.KW_TO);
this.state = 4588;
localContext._newName = this.id_();
}
break;
case HiveSqlParser.KW_ACTIVATE:
{
this.state = 4589;
this.activate();
this.state = 4591;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 600, this.context)) {
case 1:
{
this.state = 4590;
this.enable();
}
break;
}
}
break;
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
{
this.state = 4593;
this.enable();
this.state = 4595;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 2) {
{
this.state = 4594;
this.activate();
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 4599;
this.match(HiveSqlParser.KW_DROP);
this.state = 4600;
this.match(HiveSqlParser.KW_RESOURCE);
this.state = 4601;
this.match(HiveSqlParser.KW_PLAN);
this.state = 4603;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 151) {
{
this.state = 4602;
this.ifExists();
}
}
this.state = 4605;
localContext._name = this.id_();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 4608;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ENABLE:
case HiveSqlParser.KW_ENABLED:
{
this.state = 4606;
this.enable();
}
break;
case HiveSqlParser.KW_DISABLE:
case HiveSqlParser.KW_DISABLED:
{
this.state = 4607;
this.disable();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 4610;
this.match(HiveSqlParser.KW_WORKLOAD);
this.state = 4611;
this.match(HiveSqlParser.KW_MANAGEMENT);
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 4613;
this.match(HiveSqlParser.KW_REPLACE);
this.state = 4625;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ACTIVE:
{
this.state = 4614;
this.match(HiveSqlParser.KW_ACTIVE);
this.state = 4615;
this.match(HiveSqlParser.KW_RESOURCE);
this.state = 4616;
this.match(HiveSqlParser.KW_PLAN);
this.state = 4617;
this.match(HiveSqlParser.KW_WITH);
this.state = 4618;
localContext._src = this.id_();
}
break;
case HiveSqlParser.KW_RESOURCE:
{
this.state = 4619;
this.match(HiveSqlParser.KW_RESOURCE);
this.state = 4620;
this.match(HiveSqlParser.KW_PLAN);
this.state = 4621;
localContext._dest = this.id_();
this.state = 4622;
this.match(HiveSqlParser.KW_WITH);
this.state = 4623;
localContext._src = this.id_();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 4627;
this.match(HiveSqlParser.KW_CREATE);
this.state = 4628;
this.match(HiveSqlParser.KW_TRIGGER);
this.state = 4629;
localContext._rpName = this.id_();
this.state = 4630;
this.match(HiveSqlParser.DOT);
this.state = 4631;
localContext._triggerName = this.id_();
this.state = 4632;
this.match(HiveSqlParser.KW_WHEN);
this.state = 4633;
this.triggerAtomExpression();
this.state = 4634;
this.match(HiveSqlParser.KW_DO);
this.state = 4635;
this.triggerActionExpression();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 4637;
this.match(HiveSqlParser.KW_ALTER);
this.state = 4638;
this.match(HiveSqlParser.KW_TRIGGER);
this.state = 4639;
localContext._rpName = this.id_();
this.state = 4640;
this.match(HiveSqlParser.DOT);
this.state = 4641;
localContext._triggerName = this.id_();
this.state = 4658;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_WHEN:
{
this.state = 4642;
this.match(HiveSqlParser.KW_WHEN);
this.state = 4643;
this.triggerAtomExpression();
this.state = 4644;
this.match(HiveSqlParser.KW_DO);
this.state = 4645;
this.triggerActionExpression();
}
break;
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_DROP:
{
this.state = 4651;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ADD:
{
this.state = 4647;
this.match(HiveSqlParser.KW_ADD);
this.state = 4648;
this.match(HiveSqlParser.KW_TO);
}
break;
case HiveSqlParser.KW_DROP:
{
this.state = 4649;
this.match(HiveSqlParser.KW_DROP);
this.state = 4650;
this.match(HiveSqlParser.KW_FROM);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 4656;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_POOL:
{
this.state = 4653;
this.match(HiveSqlParser.KW_POOL);
this.state = 4654;
localContext._poolName = this.poolPath();
}
break;
case HiveSqlParser.KW_UNMANAGED:
{
this.state = 4655;
this.match(HiveSqlParser.KW_UNMANAGED);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 8:
this.enterOuterAlt(localContext, 8);
{
this.state = 4660;
this.match(HiveSqlParser.KW_DROP);
this.state = 4661;
this.match(HiveSqlParser.KW_TRIGGER);
this.state = 4662;
localContext._rpName = this.id_();
this.state = 4663;
this.match(HiveSqlParser.DOT);
this.state = 4664;
localContext._triggerName = this.id_();
}
break;
case 9:
this.enterOuterAlt(localContext, 9);
{
this.state = 4666;
this.match(HiveSqlParser.KW_CREATE);
this.state = 4667;
this.match(HiveSqlParser.KW_POOL);
this.state = 4668;
localContext._rpName = this.id_();
this.state = 4669;
this.match(HiveSqlParser.DOT);
this.state = 4670;
this.poolPath();
this.state = 4671;
this.match(HiveSqlParser.KW_WITH);
this.state = 4672;
this.poolAssignList();
}
break;
case 10:
this.enterOuterAlt(localContext, 10);
{
this.state = 4674;
this.match(HiveSqlParser.KW_ALTER);
this.state = 4675;
this.match(HiveSqlParser.KW_POOL);
this.state = 4676;
localContext._rpName = this.id_();
this.state = 4677;
this.match(HiveSqlParser.DOT);
this.state = 4678;
this.poolPath();
this.state = 4686;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_SET:
{
this.state = 4679;
this.match(HiveSqlParser.KW_SET);
this.state = 4680;
this.poolAssignList();
}
break;
case HiveSqlParser.KW_UNSET:
{
this.state = 4681;
this.match(HiveSqlParser.KW_UNSET);
this.state = 4682;
this.match(HiveSqlParser.KW_SCHEDULING_POLICY);
}
break;
case HiveSqlParser.KW_ADD:
case HiveSqlParser.KW_DROP:
{
this.state = 4683;
_la = this.tokenStream.LA(1);
if (!(_la === 4 || _la === 101)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4684;
this.match(HiveSqlParser.KW_TRIGGER);
this.state = 4685;
localContext._triggerName = this.id_();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
break;
case 11:
this.enterOuterAlt(localContext, 11);
{
this.state = 4688;
this.match(HiveSqlParser.KW_DROP);
this.state = 4689;
this.match(HiveSqlParser.KW_POOL);
this.state = 4690;
localContext._rpName = this.id_();
this.state = 4691;
this.match(HiveSqlParser.DOT);
this.state = 4692;
this.poolPath();
}
break;
case 12:
this.enterOuterAlt(localContext, 12);
{
this.state = 4694;
_la = this.tokenStream.LA(1);
if (!(_la === 9 || _la === 58)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
this.state = 4695;
localContext._mappingType = this.mappingTypes();
this.state = 4696;
this.match(HiveSqlParser.KW_MAPPING);
this.state = 4697;
this.match(HiveSqlParser.StringLiteral);
this.state = 4698;
this.match(HiveSqlParser.KW_IN);
this.state = 4699;
localContext._rpName = this.id_();
this.state = 4703;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_TO:
{
this.state = 4700;
this.match(HiveSqlParser.KW_TO);
this.state = 4701;
localContext._path = this.poolPath();
}
break;
case HiveSqlParser.KW_UNMANAGED:
{
this.state = 4702;
this.match(HiveSqlParser.KW_UNMANAGED);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
this.state = 4708;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 611, this.context)) {
case 1:
{
this.state = 4705;
this.match(HiveSqlParser.KW_WITH);
this.state = 4706;
this.match(HiveSqlParser.KW_ORDER);
this.state = 4707;
localContext._order = this.match(HiveSqlParser.Number);
}
break;
}
}
break;
case 13:
this.enterOuterAlt(localContext, 13);
{
this.state = 4710;
this.match(HiveSqlParser.KW_DROP);
this.state = 4711;
localContext._mappingType = this.mappingTypes();
this.state = 4712;
this.match(HiveSqlParser.KW_MAPPING);
this.state = 4713;
this.match(HiveSqlParser.StringLiteral);
this.state = 4714;
this.match(HiveSqlParser.KW_IN);
this.state = 4715;
localContext._rpName = this.id_();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
mappingTypes() {
let localContext = new MappingTypesContext(this.context, this.state);
this.enterRule(localContext, 656, HiveSqlParser.RULE_mappingTypes);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4719;
_la = this.tokenStream.LA(1);
if (!(_la === 14 || _la === 144 || _la === 369)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rpAssign() {
let localContext = new RpAssignContext(this.context, this.state);
this.enterRule(localContext, 658, HiveSqlParser.RULE_rpAssign);
try {
this.state = 4728;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_QUERY_PARALLELISM:
this.enterOuterAlt(localContext, 1);
{
this.state = 4721;
this.match(HiveSqlParser.KW_QUERY_PARALLELISM);
this.state = 4722;
this.match(HiveSqlParser.EQUAL);
this.state = 4723;
localContext._parallelism = this.match(HiveSqlParser.Number);
}
break;
case HiveSqlParser.KW_DEFAULT:
this.enterOuterAlt(localContext, 2);
{
this.state = 4724;
this.match(HiveSqlParser.KW_DEFAULT);
this.state = 4725;
this.match(HiveSqlParser.KW_POOL);
this.state = 4726;
this.match(HiveSqlParser.EQUAL);
this.state = 4727;
this.poolPath();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rpAssignList() {
let localContext = new RpAssignListContext(this.context, this.state);
this.enterRule(localContext, 660, HiveSqlParser.RULE_rpAssignList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4730;
this.rpAssign();
this.state = 4735;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4731;
this.match(HiveSqlParser.COMMA);
this.state = 4732;
this.rpAssign();
}
}
this.state = 4737;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
rpUnassign() {
let localContext = new RpUnassignContext(this.context, this.state);
this.enterRule(localContext, 662, HiveSqlParser.RULE_rpUnassign);
try {
this.state = 4741;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_QUERY_PARALLELISM:
this.enterOuterAlt(localContext, 1);
{
this.state = 4738;
this.match(HiveSqlParser.KW_QUERY_PARALLELISM);
}
break;
case HiveSqlParser.KW_DEFAULT:
this.enterOuterAlt(localContext, 2);
{
this.state = 4739;
this.match(HiveSqlParser.KW_DEFAULT);
this.state = 4740;
this.match(HiveSqlParser.KW_POOL);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
activate() {
let localContext = new ActivateContext(this.context, this.state);
this.enterRule(localContext, 664, HiveSqlParser.RULE_activate);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4743;
this.match(HiveSqlParser.KW_ACTIVATE);
this.state = 4746;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 616, this.context)) {
case 1:
{
this.state = 4744;
this.match(HiveSqlParser.KW_WITH);
this.state = 4745;
this.match(HiveSqlParser.KW_REPLACE);
}
break;
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
enable() {
let localContext = new EnableContext(this.context, this.state);
this.enterRule(localContext, 666, HiveSqlParser.RULE_enable);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4748;
_la = this.tokenStream.LA(1);
if (!(_la === 106 || _la === 107)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
disable() {
let localContext = new DisableContext(this.context, this.state);
this.enterRule(localContext, 668, HiveSqlParser.RULE_disable);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4750;
_la = this.tokenStream.LA(1);
if (!(_la === 94 || _la === 95)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
year() {
let localContext = new YearContext(this.context, this.state);
this.enterRule(localContext, 670, HiveSqlParser.RULE_year);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4752;
_la = this.tokenStream.LA(1);
if (!(_la === 392 || _la === 393)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
month() {
let localContext = new MonthContext(this.context, this.state);
this.enterRule(localContext, 672, HiveSqlParser.RULE_month);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4754;
_la = this.tokenStream.LA(1);
if (!(_la === 208 || _la === 209)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
week() {
let localContext = new WeekContext(this.context, this.state);
this.enterRule(localContext, 674, HiveSqlParser.RULE_week);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4756;
_la = this.tokenStream.LA(1);
if (!(_la === 381 || _la === 382)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
day() {
let localContext = new DayContext(this.context, this.state);
this.enterRule(localContext, 676, HiveSqlParser.RULE_day);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4758;
_la = this.tokenStream.LA(1);
if (!(_la === 73 || _la === 74)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
hour() {
let localContext = new HourContext(this.context, this.state);
this.enterRule(localContext, 678, HiveSqlParser.RULE_hour);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4760;
_la = this.tokenStream.LA(1);
if (!(_la === 148 || _la === 149)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
minute() {
let localContext = new MinuteContext(this.context, this.state);
this.enterRule(localContext, 680, HiveSqlParser.RULE_minute);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4762;
_la = this.tokenStream.LA(1);
if (!(_la === 206 || _la === 207)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
second() {
let localContext = new SecondContext(this.context, this.state);
this.enterRule(localContext, 682, HiveSqlParser.RULE_second);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4764;
_la = this.tokenStream.LA(1);
if (!(_la === 297 || _la === 298)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
decimal() {
let localContext = new DecimalContext(this.context, this.state);
this.enterRule(localContext, 684, HiveSqlParser.RULE_decimal);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4766;
_la = this.tokenStream.LA(1);
if (!(((((_la - 80)) & ~0x1F) === 0 && ((1 << (_la - 80)) & 7) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
poolPath() {
let localContext = new PoolPathContext(this.context, this.state);
this.enterRule(localContext, 686, HiveSqlParser.RULE_poolPath);
try {
let alternative;
this.enterOuterAlt(localContext, 1);
{
this.state = 4768;
this.id_();
this.state = 4773;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 617, this.context);
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
if (alternative === 1) {
{
{
this.state = 4769;
this.match(HiveSqlParser.DOT);
this.state = 4770;
this.id_();
}
}
}
this.state = 4775;
this.errorHandler.sync(this);
alternative = this.interpreter.adaptivePredict(this.tokenStream, 617, this.context);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
triggerAtomExpression() {
let localContext = new TriggerAtomExpressionContext(this.context, this.state);
this.enterRule(localContext, 688, HiveSqlParser.RULE_triggerAtomExpression);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4776;
this.id_();
this.state = 4777;
this.match(HiveSqlParser.GREATERTHAN);
this.state = 4778;
_la = this.tokenStream.LA(1);
if (!(_la === 426 || _la === 431)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
triggerActionExpression() {
let localContext = new TriggerActionExpressionContext(this.context, this.state);
this.enterRule(localContext, 690, HiveSqlParser.RULE_triggerActionExpression);
try {
this.state = 4784;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_KILL:
this.enterOuterAlt(localContext, 1);
{
this.state = 4780;
this.match(HiveSqlParser.KW_KILL);
}
break;
case HiveSqlParser.KW_MOVE:
this.enterOuterAlt(localContext, 2);
{
this.state = 4781;
this.match(HiveSqlParser.KW_MOVE);
this.state = 4782;
this.match(HiveSqlParser.KW_TO);
this.state = 4783;
this.poolPath();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
poolAssign() {
let localContext = new PoolAssignContext(this.context, this.state);
this.enterRule(localContext, 692, HiveSqlParser.RULE_poolAssign);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4798;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case HiveSqlParser.KW_ALLOC_FRACTION:
{
this.state = 4786;
this.match(HiveSqlParser.KW_ALLOC_FRACTION);
this.state = 4787;
this.match(HiveSqlParser.EQUAL);
this.state = 4788;
localContext._allocFraction = this.match(HiveSqlParser.Number);
}
break;
case HiveSqlParser.KW_QUERY_PARALLELISM:
{
this.state = 4789;
this.match(HiveSqlParser.KW_QUERY_PARALLELISM);
this.state = 4790;
this.match(HiveSqlParser.EQUAL);
this.state = 4791;
localContext._parallelism = this.match(HiveSqlParser.Number);
}
break;
case HiveSqlParser.KW_SCHEDULING_POLICY:
{
this.state = 4792;
this.match(HiveSqlParser.KW_SCHEDULING_POLICY);
this.state = 4793;
this.match(HiveSqlParser.EQUAL);
this.state = 4794;
localContext._policy = this.match(HiveSqlParser.StringLiteral);
}
break;
case HiveSqlParser.KW_PATH:
{
this.state = 4795;
this.match(HiveSqlParser.KW_PATH);
this.state = 4796;
this.match(HiveSqlParser.EQUAL);
this.state = 4797;
localContext._path = this.poolPath();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
poolAssignList() {
let localContext = new PoolAssignListContext(this.context, this.state);
this.enterRule(localContext, 694, HiveSqlParser.RULE_poolAssignList);
let _la;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 4800;
this.poolAssign();
this.state = 4805;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 397) {
{
{
this.state = 4801;
this.match(HiveSqlParser.COMMA);
this.state = 4802;
this.poolAssign();
}
}
this.state = 4807;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
localContext.exception = re;
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
}
else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
sempred(localContext, ruleIndex, predIndex) {
switch (ruleIndex) {
case 128:
return this.columnName_sempred(localContext, predIndex);
}
return true;
}
columnName_sempred(localContext, predIndex) {
switch (predIndex) {
case 0:
return this.shouldMatchEmpty();
}
return true;
}
static get _ATN() {
if (!HiveSqlParser.__ATN) {
HiveSqlParser.__ATN = new antlr.ATNDeserializer().deserialize(HiveSqlParser._serializedATN);
}
return HiveSqlParser.__ATN;
}
get vocabulary() {
return HiveSqlParser.vocabulary;
}
}
HiveSqlParser.KW_ABORT = 1;
HiveSqlParser.KW_ACTIVATE = 2;
HiveSqlParser.KW_ACTIVE = 3;
HiveSqlParser.KW_ADD = 4;
HiveSqlParser.KW_ADMIN = 5;
HiveSqlParser.KW_AFTER = 6;
HiveSqlParser.KW_ALL = 7;
HiveSqlParser.KW_ALLOC_FRACTION = 8;
HiveSqlParser.KW_ALTER = 9;
HiveSqlParser.KW_ANALYZE = 10;
HiveSqlParser.KW_AND = 11;
HiveSqlParser.KW_ANTI = 12;
HiveSqlParser.KW_ANY = 13;
HiveSqlParser.KW_APPLICATION = 14;
HiveSqlParser.KW_ARCHIVE = 15;
HiveSqlParser.KW_ARRAY = 16;
HiveSqlParser.KW_AS = 17;
HiveSqlParser.KW_ASC = 18;
HiveSqlParser.KW_AST = 19;
HiveSqlParser.KW_AT = 20;
HiveSqlParser.KW_AUTHORIZATION = 21;
HiveSqlParser.KW_AUTOCOMMIT = 22;
HiveSqlParser.KW_BATCH = 23;
HiveSqlParser.KW_BEFORE = 24;
HiveSqlParser.KW_BETWEEN = 25;
HiveSqlParser.KW_BIGINT = 26;
HiveSqlParser.KW_BINARY = 27;
HiveSqlParser.KW_BOOLEAN = 28;
HiveSqlParser.KW_BOTH = 29;
HiveSqlParser.KW_BUCKET = 30;
HiveSqlParser.KW_BUCKETS = 31;
HiveSqlParser.KW_BY = 32;
HiveSqlParser.KW_CACHE = 33;
HiveSqlParser.KW_CASCADE = 34;
HiveSqlParser.KW_CASE = 35;
HiveSqlParser.KW_CAST = 36;
HiveSqlParser.KW_CBO = 37;
HiveSqlParser.KW_CHANGE = 38;
HiveSqlParser.KW_CHAR = 39;
HiveSqlParser.KW_CHECK = 40;
HiveSqlParser.KW_CLUSTER = 41;
HiveSqlParser.KW_CLUSTERED = 42;
HiveSqlParser.KW_CLUSTERSTATUS = 43;
HiveSqlParser.KW_COLLECTION = 44;
HiveSqlParser.KW_COLUMN = 45;
HiveSqlParser.KW_COLUMNS = 46;
HiveSqlParser.KW_COMMENT = 47;
HiveSqlParser.KW_COMMIT = 48;
HiveSqlParser.KW_COMPACT = 49;
HiveSqlParser.KW_COMPACTIONS = 50;
HiveSqlParser.KW_COMPACT_ID = 51;
HiveSqlParser.KW_COMPUTE = 52;
HiveSqlParser.KW_CONCATENATE = 53;
HiveSqlParser.KW_CONF = 54;
HiveSqlParser.KW_CONSTRAINT = 55;
HiveSqlParser.KW_CONTINUE = 56;
HiveSqlParser.KW_COST = 57;
HiveSqlParser.KW_CREATE = 58;
HiveSqlParser.KW_CRON = 59;
HiveSqlParser.KW_CROSS = 60;
HiveSqlParser.KW_CUBE = 61;
HiveSqlParser.KW_CURRENT = 62;
HiveSqlParser.KW_CURRENT_DATE = 63;
HiveSqlParser.KW_CURRENT_TIMESTAMP = 64;
HiveSqlParser.KW_CURSOR = 65;
HiveSqlParser.KW_DATA = 66;
HiveSqlParser.KW_DATABASE = 67;
HiveSqlParser.KW_DATABASES = 68;
HiveSqlParser.KW_DATACONNECTOR = 69;
HiveSqlParser.KW_DATACONNECTORS = 70;
HiveSqlParser.KW_DATE = 71;
HiveSqlParser.KW_DATETIME = 72;
HiveSqlParser.KW_DAY = 73;
HiveSqlParser.KW_DAYS = 74;
HiveSqlParser.KW_DAYOFWEEK = 75;
HiveSqlParser.KW_DBPROPERTIES = 76;
HiveSqlParser.KW_DCPROPERTIES = 77;
HiveSqlParser.KW_DDL = 78;
HiveSqlParser.KW_DEBUG = 79;
HiveSqlParser.KW_DEC = 80;
HiveSqlParser.KW_DECIMAL = 81;
HiveSqlParser.KW_NUMERIC = 82;
HiveSqlParser.KW_DEFAULT = 83;
HiveSqlParser.KW_DEFERRED = 84;
HiveSqlParser.KW_DEFINED = 85;
HiveSqlParser.KW_DELETE = 86;
HiveSqlParser.KW_DELIMITED = 87;
HiveSqlParser.KW_DEPENDENCY = 88;
HiveSqlParser.KW_DESC = 89;
HiveSqlParser.KW_DESCRIBE = 90;
HiveSqlParser.KW_DETAIL = 91;
HiveSqlParser.KW_DIRECTORIES = 92;
HiveSqlParser.KW_DIRECTORY = 93;
HiveSqlParser.KW_DISABLE = 94;
HiveSqlParser.KW_DISABLED = 95;
HiveSqlParser.KW_DISTINCT = 96;
HiveSqlParser.KW_DISTRIBUTE = 97;
HiveSqlParser.KW_DISTRIBUTED = 98;
HiveSqlParser.KW_DO = 99;
HiveSqlParser.KW_DOUBLE = 100;
HiveSqlParser.KW_DROP = 101;
HiveSqlParser.KW_RECOVER = 102;
HiveSqlParser.KW_DUMP = 103;
HiveSqlParser.KW_ELEM_TYPE = 104;
HiveSqlParser.KW_ELSE = 105;
HiveSqlParser.KW_ENABLE = 106;
HiveSqlParser.KW_ENABLED = 107;
HiveSqlParser.KW_END = 108;
HiveSqlParser.KW_ENFORCED = 109;
HiveSqlParser.KW_ESCAPED = 110;
HiveSqlParser.KW_EVERY = 111;
HiveSqlParser.KW_EXCEPT = 112;
HiveSqlParser.KW_EXCHANGE = 113;
HiveSqlParser.KW_EXCLUSIVE = 114;
HiveSqlParser.KW_EXECUTE = 115;
HiveSqlParser.KW_EXECUTED = 116;
HiveSqlParser.KW_EXISTS = 117;
HiveSqlParser.KW_EXPIRE_SNAPSHOTS = 118;
HiveSqlParser.KW_EXPLAIN = 119;
HiveSqlParser.KW_EXPORT = 120;
HiveSqlParser.KW_EXPRESSION = 121;
HiveSqlParser.KW_EXTENDED = 122;
HiveSqlParser.KW_EXTERNAL = 123;
HiveSqlParser.KW_EXTRACT = 124;
HiveSqlParser.KW_FALSE = 125;
HiveSqlParser.KW_FETCH = 126;
HiveSqlParser.KW_FIELDS = 127;
HiveSqlParser.KW_FILE = 128;
HiveSqlParser.KW_FILEFORMAT = 129;
HiveSqlParser.KW_FIRST = 130;
HiveSqlParser.KW_FLOAT = 131;
HiveSqlParser.KW_FLOOR = 132;
HiveSqlParser.KW_FOLLOWING = 133;
HiveSqlParser.KW_FOR = 134;
HiveSqlParser.KW_FORCE = 135;
HiveSqlParser.KW_FOREIGN = 136;
HiveSqlParser.KW_FORMAT = 137;
HiveSqlParser.KW_FORMATTED = 138;
HiveSqlParser.KW_FROM = 139;
HiveSqlParser.KW_FULL = 140;
HiveSqlParser.KW_FUNCTION = 141;
HiveSqlParser.KW_FUNCTIONS = 142;
HiveSqlParser.KW_GRANT = 143;
HiveSqlParser.KW_GROUP = 144;
HiveSqlParser.KW_GROUPING = 145;
HiveSqlParser.KW_HAVING = 146;
HiveSqlParser.KW_HOLD_DDLTIME = 147;
HiveSqlParser.KW_HOUR = 148;
HiveSqlParser.KW_HOURS = 149;
HiveSqlParser.KW_IDXPROPERTIES = 150;
HiveSqlParser.KW_IF = 151;
HiveSqlParser.KW_IGNORE = 152;
HiveSqlParser.KW_IMPORT = 153;
HiveSqlParser.KW_IN = 154;
HiveSqlParser.KW_INDEX = 155;
HiveSqlParser.KW_INDEXES = 156;
HiveSqlParser.KW_INNER = 157;
HiveSqlParser.KW_INPATH = 158;
HiveSqlParser.KW_INPUTDRIVER = 159;
HiveSqlParser.KW_INPUTFORMAT = 160;
HiveSqlParser.KW_INSERT = 161;
HiveSqlParser.KW_INT = 162;
HiveSqlParser.KW_INTEGER = 163;
HiveSqlParser.KW_INTERSECT = 164;
HiveSqlParser.KW_INTERVAL = 165;
HiveSqlParser.KW_INTO = 166;
HiveSqlParser.KW_IS = 167;
HiveSqlParser.KW_ISOLATION = 168;
HiveSqlParser.KW_ITEMS = 169;
HiveSqlParser.KW_JAR = 170;
HiveSqlParser.KW_JOIN = 171;
HiveSqlParser.KW_JOINCOST = 172;
HiveSqlParser.KW_KEY = 173;
HiveSqlParser.KW_KEYS = 174;
HiveSqlParser.KW_KEY_TYPE = 175;
HiveSqlParser.KW_KILL = 176;
HiveSqlParser.KW_LAST = 177;
HiveSqlParser.KW_LATERAL = 178;
HiveSqlParser.KW_LEADING = 179;
HiveSqlParser.KW_LEFT = 180;
HiveSqlParser.KW_LESS = 181;
HiveSqlParser.KW_LEVEL = 182;
HiveSqlParser.KW_LIFECYCLE = 183;
HiveSqlParser.KW_LIKE = 184;
HiveSqlParser.KW_LIMIT = 185;
HiveSqlParser.KW_LINES = 186;
HiveSqlParser.KW_LOAD = 187;
HiveSqlParser.KW_LOCAL = 188;
HiveSqlParser.KW_LOCATION = 189;
HiveSqlParser.KW_LOCK = 190;
HiveSqlParser.KW_LOCKS = 191;
HiveSqlParser.KW_LOGICAL = 192;
HiveSqlParser.KW_LONG = 193;
HiveSqlParser.KW_MACRO = 194;
HiveSqlParser.KW_MANAGED = 195;
HiveSqlParser.KW_MANAGEDLOCATION = 196;
HiveSqlParser.KW_MANAGEMENT = 197;
HiveSqlParser.KW_MAP = 198;
HiveSqlParser.KW_MAPJOIN = 199;
HiveSqlParser.KW_MAPPING = 200;
HiveSqlParser.KW_MATCHED = 201;
HiveSqlParser.KW_MATERIALIZED = 202;
HiveSqlParser.KW_MERGE = 203;
HiveSqlParser.KW_METADATA = 204;
HiveSqlParser.KW_MINUS = 205;
HiveSqlParser.KW_MINUTE = 206;
HiveSqlParser.KW_MINUTES = 207;
HiveSqlParser.KW_MONTH = 208;
HiveSqlParser.KW_MONTHS = 209;
HiveSqlParser.KW_MORE = 210;
HiveSqlParser.KW_MOVE = 211;
HiveSqlParser.KW_MSCK = 212;
HiveSqlParser.KW_NONE = 213;
HiveSqlParser.KW_NORELY = 214;
HiveSqlParser.KW_NOSCAN = 215;
HiveSqlParser.KW_NOT = 216;
HiveSqlParser.KW_NOVALIDATE = 217;
HiveSqlParser.KW_NO_DROP = 218;
HiveSqlParser.KW_NULL = 219;
HiveSqlParser.KW_NULLS = 220;
HiveSqlParser.KW_OF = 221;
HiveSqlParser.KW_OFFLINE = 222;
HiveSqlParser.KW_OFFSET = 223;
HiveSqlParser.KW_ON = 224;
HiveSqlParser.KW_ONLY = 225;
HiveSqlParser.KW_OPERATOR = 226;
HiveSqlParser.KW_OPTION = 227;
HiveSqlParser.KW_OR = 228;
HiveSqlParser.KW_ORDER = 229;
HiveSqlParser.KW_OUT = 230;
HiveSqlParser.KW_OUTER = 231;
HiveSqlParser.KW_OUTPUTDRIVER = 232;
HiveSqlParser.KW_OUTPUTFORMAT = 233;
HiveSqlParser.KW_OVER = 234;
HiveSqlParser.KW_OVERWRITE = 235;
HiveSqlParser.KW_OWNER = 236;
HiveSqlParser.KW_PARTITION = 237;
HiveSqlParser.KW_PARTITIONED = 238;
HiveSqlParser.KW_PARTITIONS = 239;
HiveSqlParser.KW_PATH = 240;
HiveSqlParser.KW_PERCENT = 241;
HiveSqlParser.KW_PKFK_JOIN = 242;
HiveSqlParser.KW_PLAN = 243;
HiveSqlParser.KW_PLANS = 244;
HiveSqlParser.KW_PLUS = 245;
HiveSqlParser.KW_POOL = 246;
HiveSqlParser.KW_PRECEDING = 247;
HiveSqlParser.KW_PRECISION = 248;
HiveSqlParser.KW_PREPARE = 249;
HiveSqlParser.KW_PRESERVE = 250;
HiveSqlParser.KW_PRIMARY = 251;
HiveSqlParser.KW_PRINCIPALS = 252;
HiveSqlParser.KW_PROCEDURE = 253;
HiveSqlParser.KW_PROTECTION = 254;
HiveSqlParser.KW_PURGE = 255;
HiveSqlParser.KW_QUALIFY = 256;
HiveSqlParser.KW_QUARTER = 257;
HiveSqlParser.KW_QUERY = 258;
HiveSqlParser.KW_QUERY_PARALLELISM = 259;
HiveSqlParser.KW_RANGE = 260;
HiveSqlParser.KW_READ = 261;
HiveSqlParser.KW_READONLY = 262;
HiveSqlParser.KW_READS = 263;
HiveSqlParser.KW_REAL = 264;
HiveSqlParser.KW_REBUILD = 265;
HiveSqlParser.KW_RECORDREADER = 266;
HiveSqlParser.KW_RECORDWRITER = 267;
HiveSqlParser.KW_REDUCE = 268;
HiveSqlParser.KW_REFERENCES = 269;
HiveSqlParser.KW_REGEXP = 270;
HiveSqlParser.KW_RELOAD = 271;
HiveSqlParser.KW_RELY = 272;
HiveSqlParser.KW_REMOTE = 273;
HiveSqlParser.KW_RENAME = 274;
HiveSqlParser.KW_REOPTIMIZATION = 275;
HiveSqlParser.KW_REPAIR = 276;
HiveSqlParser.KW_REPL = 277;
HiveSqlParser.KW_REPLACE = 278;
HiveSqlParser.KW_REPLICATION = 279;
HiveSqlParser.KW_RESOURCE = 280;
HiveSqlParser.KW_RESPECT = 281;
HiveSqlParser.KW_RESTRICT = 282;
HiveSqlParser.KW_REVOKE = 283;
HiveSqlParser.KW_REWRITE = 284;
HiveSqlParser.KW_RIGHT = 285;
HiveSqlParser.KW_RLIKE = 286;
HiveSqlParser.KW_ROLE = 287;
HiveSqlParser.KW_ROLES = 288;
HiveSqlParser.KW_ROLLBACK = 289;
HiveSqlParser.KW_ROLLUP = 290;
HiveSqlParser.KW_ROW = 291;
HiveSqlParser.KW_ROWS = 292;
HiveSqlParser.KW_SCHEDULED = 293;
HiveSqlParser.KW_SCHEDULING_POLICY = 294;
HiveSqlParser.KW_SCHEMA = 295;
HiveSqlParser.KW_SCHEMAS = 296;
HiveSqlParser.KW_SECOND = 297;
HiveSqlParser.KW_SECONDS = 298;
HiveSqlParser.KW_SELECT = 299;
HiveSqlParser.KW_SEMI = 300;
HiveSqlParser.KW_SERDE = 301;
HiveSqlParser.KW_SERDEPROPERTIES = 302;
HiveSqlParser.KW_SERVER = 303;
HiveSqlParser.KW_SET = 304;
HiveSqlParser.KW_SETS = 305;
HiveSqlParser.KW_SET_CURRENT_SNAPSHOT = 306;
HiveSqlParser.KW_SHARED = 307;
HiveSqlParser.KW_SHOW = 308;
HiveSqlParser.KW_SHOW_DATABASE = 309;
HiveSqlParser.KW_SKEWED = 310;
HiveSqlParser.KW_SMALLINT = 311;
HiveSqlParser.KW_SNAPSHOT = 312;
HiveSqlParser.KW_SOME = 313;
HiveSqlParser.KW_SORT = 314;
HiveSqlParser.KW_SORTED = 315;
HiveSqlParser.KW_SPEC = 316;
HiveSqlParser.KW_SSL = 317;
HiveSqlParser.KW_START = 318;
HiveSqlParser.KW_STATISTICS = 319;
HiveSqlParser.KW_STATUS = 320;
HiveSqlParser.KW_STORED = 321;
HiveSqlParser.KW_STREAMTABLE = 322;
HiveSqlParser.KW_STRING = 323;
HiveSqlParser.KW_STRUCT = 324;
HiveSqlParser.KW_SUMMARY = 325;
HiveSqlParser.KW_SYNC = 326;
HiveSqlParser.KW_SYSTEM_TIME = 327;
HiveSqlParser.KW_SYSTEM_VERSION = 328;
HiveSqlParser.KW_TABLE = 329;
HiveSqlParser.KW_TABLES = 330;
HiveSqlParser.KW_TABLESAMPLE = 331;
HiveSqlParser.KW_TBLPROPERTIES = 332;
HiveSqlParser.KW_TEMPORARY = 333;
HiveSqlParser.KW_TERMINATED = 334;
HiveSqlParser.KW_THEN = 335;
HiveSqlParser.KW_TIME = 336;
HiveSqlParser.KW_TIMESTAMP = 337;
HiveSqlParser.KW_TIMESTAMPLOCALTZ = 338;
HiveSqlParser.KW_TIMESTAMPTZ = 339;
HiveSqlParser.KW_TINYINT = 340;
HiveSqlParser.KW_TO = 341;
HiveSqlParser.KW_TOUCH = 342;
HiveSqlParser.KW_TRAILING = 343;
HiveSqlParser.KW_TRANSACTION = 344;
HiveSqlParser.KW_TRANSACTIONAL = 345;
HiveSqlParser.KW_TRANSACTIONS = 346;
HiveSqlParser.KW_TRANSFORM = 347;
HiveSqlParser.KW_TRIGGER = 348;
HiveSqlParser.KW_TRIM = 349;
HiveSqlParser.KW_TRUE = 350;
HiveSqlParser.KW_TRUNCATE = 351;
HiveSqlParser.KW_TYPE = 352;
HiveSqlParser.KW_UNARCHIVE = 353;
HiveSqlParser.KW_UNBOUNDED = 354;
HiveSqlParser.KW_UNDO = 355;
HiveSqlParser.KW_UNION = 356;
HiveSqlParser.KW_UNIONTYPE = 357;
HiveSqlParser.KW_UNIQUE = 358;
HiveSqlParser.KW_UNIQUEJOIN = 359;
HiveSqlParser.KW_UNKNOWN = 360;
HiveSqlParser.KW_UNLOCK = 361;
HiveSqlParser.KW_UNMANAGED = 362;
HiveSqlParser.KW_UNSET = 363;
HiveSqlParser.KW_UNSIGNED = 364;
HiveSqlParser.KW_UPDATE = 365;
HiveSqlParser.KW_URI = 366;
HiveSqlParser.KW_URL = 367;
HiveSqlParser.KW_USE = 368;
HiveSqlParser.KW_USER = 369;
HiveSqlParser.KW_USING = 370;
HiveSqlParser.KW_UTC = 371;
HiveSqlParser.KW_UTCTIMESTAMP = 372;
HiveSqlParser.KW_VALIDATE = 373;
HiveSqlParser.KW_VALUES = 374;
HiveSqlParser.KW_VALUE_TYPE = 375;
HiveSqlParser.KW_VARCHAR = 376;
HiveSqlParser.KW_VECTORIZATION = 377;
HiveSqlParser.KW_VIEW = 378;
HiveSqlParser.KW_VIEWS = 379;
HiveSqlParser.KW_WAIT = 380;
HiveSqlParser.KW_WEEK = 381;
HiveSqlParser.KW_WEEKS = 382;
HiveSqlParser.KW_WHEN = 383;
HiveSqlParser.KW_WHERE = 384;
HiveSqlParser.KW_WHILE = 385;
HiveSqlParser.KW_WINDOW = 386;
HiveSqlParser.KW_WITH = 387;
HiveSqlParser.KW_WITHIN = 388;
HiveSqlParser.KW_WORK = 389;
HiveSqlParser.KW_WORKLOAD = 390;
HiveSqlParser.KW_WRITE = 391;
HiveSqlParser.KW_YEAR = 392;
HiveSqlParser.KW_YEARS = 393;
HiveSqlParser.KW_ZONE = 394;
HiveSqlParser.DOT = 395;
HiveSqlParser.COLON = 396;
HiveSqlParser.COMMA = 397;
HiveSqlParser.SEMICOLON = 398;
HiveSqlParser.LPAREN = 399;
HiveSqlParser.RPAREN = 400;
HiveSqlParser.LSQUARE = 401;
HiveSqlParser.RSQUARE = 402;
HiveSqlParser.LCURLY = 403;
HiveSqlParser.RCURLY = 404;
HiveSqlParser.EQUAL = 405;
HiveSqlParser.EQUAL_NS = 406;
HiveSqlParser.NOTEQUAL = 407;
HiveSqlParser.LESSTHANOREQUALTO = 408;
HiveSqlParser.LESSTHAN = 409;
HiveSqlParser.GREATERTHANOREQUALTO = 410;
HiveSqlParser.GREATERTHAN = 411;
HiveSqlParser.DIVIDE = 412;
HiveSqlParser.PLUS = 413;
HiveSqlParser.MINUS = 414;
HiveSqlParser.STAR = 415;
HiveSqlParser.MOD = 416;
HiveSqlParser.DIV = 417;
HiveSqlParser.BITWISENOT = 418;
HiveSqlParser.AMPERSAND = 419;
HiveSqlParser.TILDE = 420;
HiveSqlParser.BITWISEOR = 421;
HiveSqlParser.CONCATENATE = 422;
HiveSqlParser.BITWISEXOR = 423;
HiveSqlParser.QUESTION = 424;
HiveSqlParser.DOLLAR = 425;
HiveSqlParser.StringLiteral = 426;
HiveSqlParser.CharSetLiteral = 427;
HiveSqlParser.IntegralLiteral = 428;
HiveSqlParser.NumberLiteral = 429;
HiveSqlParser.ByteLengthLiteral = 430;
HiveSqlParser.Number = 431;
HiveSqlParser.Identifier = 432;
HiveSqlParser.CharSetName = 433;
HiveSqlParser.WHITE_SPACE = 434;
HiveSqlParser.LINE_COMMENT = 435;
HiveSqlParser.QUERY_HINT = 436;
HiveSqlParser.SHOW_HINT = 437;
HiveSqlParser.HIDDEN_HINT = 438;
HiveSqlParser.RULE_program = 0;
HiveSqlParser.RULE_statement = 1;
HiveSqlParser.RULE_explainStatement = 2;
HiveSqlParser.RULE_explainOption = 3;
HiveSqlParser.RULE_vectorizationDetail = 4;
HiveSqlParser.RULE_execStatement = 5;
HiveSqlParser.RULE_loadStatement = 6;
HiveSqlParser.RULE_replicationClause = 7;
HiveSqlParser.RULE_exportStatement = 8;
HiveSqlParser.RULE_importStatement = 9;
HiveSqlParser.RULE_replDumpStatement = 10;
HiveSqlParser.RULE_replDbPolicy = 11;
HiveSqlParser.RULE_replLoadStatement = 12;
HiveSqlParser.RULE_replTableLevelPolicy = 13;
HiveSqlParser.RULE_ddlStatement = 14;
HiveSqlParser.RULE_ifExists = 15;
HiveSqlParser.RULE_ifNotExists = 16;
HiveSqlParser.RULE_restrictOrCascade = 17;
HiveSqlParser.RULE_rewriteEnabled = 18;
HiveSqlParser.RULE_rewriteDisabled = 19;
HiveSqlParser.RULE_storedAsDirs = 20;
HiveSqlParser.RULE_createDatabaseStatement = 21;
HiveSqlParser.RULE_dbConnectorName = 22;
HiveSqlParser.RULE_switchDatabaseStatement = 23;
HiveSqlParser.RULE_dropDatabaseStatement = 24;
HiveSqlParser.RULE_databaseComment = 25;
HiveSqlParser.RULE_truncateTableStatement = 26;
HiveSqlParser.RULE_dropTableStatement = 27;
HiveSqlParser.RULE_inputFileFormat = 28;
HiveSqlParser.RULE_tabTypeExpr = 29;
HiveSqlParser.RULE_partTypeExpr = 30;
HiveSqlParser.RULE_tabPartColTypeExpr = 31;
HiveSqlParser.RULE_descStatement = 32;
HiveSqlParser.RULE_analyzeStatement = 33;
HiveSqlParser.RULE_from_in = 34;
HiveSqlParser.RULE_db_schema = 35;
HiveSqlParser.RULE_showStatement = 36;
HiveSqlParser.RULE_showTablesFilterExpr = 37;
HiveSqlParser.RULE_lockStatement = 38;
HiveSqlParser.RULE_lockDatabase = 39;
HiveSqlParser.RULE_lockMode = 40;
HiveSqlParser.RULE_unlockStatement = 41;
HiveSqlParser.RULE_unlockDatabase = 42;
HiveSqlParser.RULE_createRoleStatement = 43;
HiveSqlParser.RULE_dropRoleStatement = 44;
HiveSqlParser.RULE_grantPrivileges = 45;
HiveSqlParser.RULE_revokePrivileges = 46;
HiveSqlParser.RULE_grantRole = 47;
HiveSqlParser.RULE_revokeRole = 48;
HiveSqlParser.RULE_showRoleGrants = 49;
HiveSqlParser.RULE_showRoles = 50;
HiveSqlParser.RULE_showCurrentRole = 51;
HiveSqlParser.RULE_setRole = 52;
HiveSqlParser.RULE_showGrants = 53;
HiveSqlParser.RULE_showRolePrincipals = 54;
HiveSqlParser.RULE_privilegeIncludeColObject = 55;
HiveSqlParser.RULE_privilegeObject = 56;
HiveSqlParser.RULE_privObject = 57;
HiveSqlParser.RULE_privObjectCols = 58;
HiveSqlParser.RULE_privilegeList = 59;
HiveSqlParser.RULE_privilegeDef = 60;
HiveSqlParser.RULE_privilegeType = 61;
HiveSqlParser.RULE_principalSpecification = 62;
HiveSqlParser.RULE_principalName = 63;
HiveSqlParser.RULE_principalAlterName = 64;
HiveSqlParser.RULE_withGrantOption = 65;
HiveSqlParser.RULE_grantOptionFor = 66;
HiveSqlParser.RULE_adminOptionFor = 67;
HiveSqlParser.RULE_withAdminOption = 68;
HiveSqlParser.RULE_metastoreCheck = 69;
HiveSqlParser.RULE_resourceList = 70;
HiveSqlParser.RULE_resource = 71;
HiveSqlParser.RULE_resourceType = 72;
HiveSqlParser.RULE_createFunctionStatement = 73;
HiveSqlParser.RULE_dropFunctionStatement = 74;
HiveSqlParser.RULE_reloadFunctionsStatement = 75;
HiveSqlParser.RULE_createMacroStatement = 76;
HiveSqlParser.RULE_dropMacroStatement = 77;
HiveSqlParser.RULE_createIndexStatement = 78;
HiveSqlParser.RULE_dropIndexStatement = 79;
HiveSqlParser.RULE_createViewStatement = 80;
HiveSqlParser.RULE_viewPartition = 81;
HiveSqlParser.RULE_viewOrganization = 82;
HiveSqlParser.RULE_viewClusterSpec = 83;
HiveSqlParser.RULE_viewComplexSpec = 84;
HiveSqlParser.RULE_viewDistSpec = 85;
HiveSqlParser.RULE_viewSortSpec = 86;
HiveSqlParser.RULE_dropViewStatement = 87;
HiveSqlParser.RULE_createMaterializedViewStatement = 88;
HiveSqlParser.RULE_dropMaterializedViewStatement = 89;
HiveSqlParser.RULE_createScheduledQueryStatement = 90;
HiveSqlParser.RULE_dropScheduledQueryStatement = 91;
HiveSqlParser.RULE_alterScheduledQueryStatement = 92;
HiveSqlParser.RULE_alterScheduledQueryChange = 93;
HiveSqlParser.RULE_scheduleSpec = 94;
HiveSqlParser.RULE_executedAsSpec = 95;
HiveSqlParser.RULE_definedAsSpec = 96;
HiveSqlParser.RULE_showStmtIdentifier = 97;
HiveSqlParser.RULE_tableComment = 98;
HiveSqlParser.RULE_tableLifecycle = 99;
HiveSqlParser.RULE_createTablePartitionSpec = 100;
HiveSqlParser.RULE_createTablePartitionColumnTypeSpec = 101;
HiveSqlParser.RULE_partitionTransformSpec = 102;
HiveSqlParser.RULE_partitionTransformType = 103;
HiveSqlParser.RULE_tableBuckets = 104;
HiveSqlParser.RULE_tableSkewed = 105;
HiveSqlParser.RULE_rowFormat = 106;
HiveSqlParser.RULE_recordReader = 107;
HiveSqlParser.RULE_recordWriter = 108;
HiveSqlParser.RULE_rowFormatSerde = 109;
HiveSqlParser.RULE_rowFormatDelimited = 110;
HiveSqlParser.RULE_tableRowFormat = 111;
HiveSqlParser.RULE_tablePropertiesPrefixed = 112;
HiveSqlParser.RULE_tableProperties = 113;
HiveSqlParser.RULE_tablePropertiesList = 114;
HiveSqlParser.RULE_keyValueProperties = 115;
HiveSqlParser.RULE_keyValuePropertyList = 116;
HiveSqlParser.RULE_keyValueProperty = 117;
HiveSqlParser.RULE_tableRowFormatFieldIdentifier = 118;
HiveSqlParser.RULE_tableRowFormatCollItemsIdentifier = 119;
HiveSqlParser.RULE_tableRowFormatMapKeysIdentifier = 120;
HiveSqlParser.RULE_tableRowFormatLinesIdentifier = 121;
HiveSqlParser.RULE_tableRowNullFormat = 122;
HiveSqlParser.RULE_tableFileFormat = 123;
HiveSqlParser.RULE_columnNameTypeList = 124;
HiveSqlParser.RULE_columnNameTypeOrConstraintList = 125;
HiveSqlParser.RULE_columnNameColonTypeList = 126;
HiveSqlParser.RULE_columnNameList = 127;
HiveSqlParser.RULE_columnName = 128;
HiveSqlParser.RULE_columnNamePath = 129;
HiveSqlParser.RULE_columnNameCreate = 130;
HiveSqlParser.RULE_extColumnName = 131;
HiveSqlParser.RULE_columnNameOrderList = 132;
HiveSqlParser.RULE_columnParenthesesList = 133;
HiveSqlParser.RULE_enableValidateSpecification = 134;
HiveSqlParser.RULE_enableSpecification = 135;
HiveSqlParser.RULE_validateSpecification = 136;
HiveSqlParser.RULE_enforcedSpecification = 137;
HiveSqlParser.RULE_relySpecification = 138;
HiveSqlParser.RULE_createConstraint = 139;
HiveSqlParser.RULE_alterConstraintWithName = 140;
HiveSqlParser.RULE_tableLevelConstraint = 141;
HiveSqlParser.RULE_pkUkConstraint = 142;
HiveSqlParser.RULE_checkConstraint = 143;
HiveSqlParser.RULE_createForeignKey = 144;
HiveSqlParser.RULE_alterForeignKeyWithName = 145;
HiveSqlParser.RULE_skewedValueElement = 146;
HiveSqlParser.RULE_skewedColumnValuePairList = 147;
HiveSqlParser.RULE_skewedColumnValuePair = 148;
HiveSqlParser.RULE_constantList = 149;
HiveSqlParser.RULE_orderSpecification = 150;
HiveSqlParser.RULE_nullOrdering = 151;
HiveSqlParser.RULE_columnNameOrder = 152;
HiveSqlParser.RULE_columnNameCommentList = 153;
HiveSqlParser.RULE_columnNameComment = 154;
HiveSqlParser.RULE_columnRefOrder = 155;
HiveSqlParser.RULE_columnNameType = 156;
HiveSqlParser.RULE_columnNameTypeOrConstraint = 157;
HiveSqlParser.RULE_tableConstraint = 158;
HiveSqlParser.RULE_columnNameTypeConstraint = 159;
HiveSqlParser.RULE_columnConstraint = 160;
HiveSqlParser.RULE_foreignKeyConstraint = 161;
HiveSqlParser.RULE_colConstraint = 162;
HiveSqlParser.RULE_alterColumnConstraint = 163;
HiveSqlParser.RULE_alterForeignKeyConstraint = 164;
HiveSqlParser.RULE_alterColConstraint = 165;
HiveSqlParser.RULE_columnConstraintType = 166;
HiveSqlParser.RULE_defaultVal = 167;
HiveSqlParser.RULE_tableConstraintType = 168;
HiveSqlParser.RULE_constraintOptsCreate = 169;
HiveSqlParser.RULE_constraintOptsAlter = 170;
HiveSqlParser.RULE_columnNameColonType = 171;
HiveSqlParser.RULE_columnType = 172;
HiveSqlParser.RULE_columnTypeList = 173;
HiveSqlParser.RULE_type = 174;
HiveSqlParser.RULE_primitiveType = 175;
HiveSqlParser.RULE_listType = 176;
HiveSqlParser.RULE_structType = 177;
HiveSqlParser.RULE_mapType = 178;
HiveSqlParser.RULE_unionType = 179;
HiveSqlParser.RULE_setOperator = 180;
HiveSqlParser.RULE_queryStatementExpression = 181;
HiveSqlParser.RULE_queryStatementExpressionBody = 182;
HiveSqlParser.RULE_withClause = 183;
HiveSqlParser.RULE_cteStatement = 184;
HiveSqlParser.RULE_fromStatement = 185;
HiveSqlParser.RULE_singleFromStatement = 186;
HiveSqlParser.RULE_regularBody = 187;
HiveSqlParser.RULE_atomSelectStatement = 188;
HiveSqlParser.RULE_selectStatement = 189;
HiveSqlParser.RULE_setOpSelectStatement = 190;
HiveSqlParser.RULE_selectStatementWithCTE = 191;
HiveSqlParser.RULE_insertClause = 192;
HiveSqlParser.RULE_destination = 193;
HiveSqlParser.RULE_limitClause = 194;
HiveSqlParser.RULE_columnAssignmentClause = 195;
HiveSqlParser.RULE_precedencePlusExpressionOrDefault = 196;
HiveSqlParser.RULE_setColumnsClause = 197;
HiveSqlParser.RULE_sqlTransactionStatement = 198;
HiveSqlParser.RULE_transactionMode = 199;
HiveSqlParser.RULE_whenClauses = 200;
HiveSqlParser.RULE_whenNotMatchedClause = 201;
HiveSqlParser.RULE_whenMatchedAndClause = 202;
HiveSqlParser.RULE_whenMatchedThenClause = 203;
HiveSqlParser.RULE_compactionPool = 204;
HiveSqlParser.RULE_compactionType = 205;
HiveSqlParser.RULE_compactionStatus = 206;
HiveSqlParser.RULE_alterStatement = 207;
HiveSqlParser.RULE_alterTableStatementSuffix = 208;
HiveSqlParser.RULE_alterTblPartitionStatementSuffix = 209;
HiveSqlParser.RULE_alterViewStatementSuffix = 210;
HiveSqlParser.RULE_alterDatabaseStatementSuffix = 211;
HiveSqlParser.RULE_alterDataConnectorStatementSuffix = 212;
HiveSqlParser.RULE_locationPath = 213;
HiveSqlParser.RULE_alterStatementSuffixDropPartitions = 214;
HiveSqlParser.RULE_skewedLocationMap = 215;
HiveSqlParser.RULE_alterStatementSuffixExecute = 216;
HiveSqlParser.RULE_fileFormat = 217;
HiveSqlParser.RULE_likeTableOrFile = 218;
HiveSqlParser.RULE_createTableStatement = 219;
HiveSqlParser.RULE_createDataConnectorStatement = 220;
HiveSqlParser.RULE_dropDataConnectorStatement = 221;
HiveSqlParser.RULE_tableAllColumns = 222;
HiveSqlParser.RULE_expressionList = 223;
HiveSqlParser.RULE_aliasList = 224;
HiveSqlParser.RULE_fromClause = 225;
HiveSqlParser.RULE_fromSource = 226;
HiveSqlParser.RULE_atomjoinSource = 227;
HiveSqlParser.RULE_joinSource = 228;
HiveSqlParser.RULE_joinSourcePart = 229;
HiveSqlParser.RULE_uniqueJoinSource = 230;
HiveSqlParser.RULE_joinToken = 231;
HiveSqlParser.RULE_lateralView = 232;
HiveSqlParser.RULE_tableAlias = 233;
HiveSqlParser.RULE_tableSample = 234;
HiveSqlParser.RULE_tableSource = 235;
HiveSqlParser.RULE_asOfClause = 236;
HiveSqlParser.RULE_dbSchemaName = 237;
HiveSqlParser.RULE_dbSchemaNameCreate = 238;
HiveSqlParser.RULE_tableOrView = 239;
HiveSqlParser.RULE_tableName = 240;
HiveSqlParser.RULE_tableNameCreate = 241;
HiveSqlParser.RULE_viewName = 242;
HiveSqlParser.RULE_viewNameCreate = 243;
HiveSqlParser.RULE_subQuerySource = 244;
HiveSqlParser.RULE_partitioningSpec = 245;
HiveSqlParser.RULE_partitionTableFunctionSource = 246;
HiveSqlParser.RULE_partitionedTableFunction = 247;
HiveSqlParser.RULE_whereClause = 248;
HiveSqlParser.RULE_valuesClause = 249;
HiveSqlParser.RULE_virtualTableSource = 250;
HiveSqlParser.RULE_selectClause = 251;
HiveSqlParser.RULE_selectTrfmClause = 252;
HiveSqlParser.RULE_selectItem = 253;
HiveSqlParser.RULE_trfmClause = 254;
HiveSqlParser.RULE_selectExpression = 255;
HiveSqlParser.RULE_selectExpressionList = 256;
HiveSqlParser.RULE_window_clause = 257;
HiveSqlParser.RULE_window_specification = 258;
HiveSqlParser.RULE_window_frame = 259;
HiveSqlParser.RULE_window_frame_boundary = 260;
HiveSqlParser.RULE_groupByClause = 261;
HiveSqlParser.RULE_rollupStandard = 262;
HiveSqlParser.RULE_rollupOldSyntax = 263;
HiveSqlParser.RULE_groupingSetExpression = 264;
HiveSqlParser.RULE_havingClause = 265;
HiveSqlParser.RULE_qualifyClause = 266;
HiveSqlParser.RULE_expressionOrDefault = 267;
HiveSqlParser.RULE_firstExpressionsWithAlias = 268;
HiveSqlParser.RULE_expressions = 269;
HiveSqlParser.RULE_expressionsInParenthesis = 270;
HiveSqlParser.RULE_expressionsNotInParenthesis = 271;
HiveSqlParser.RULE_orderByClause = 272;
HiveSqlParser.RULE_partitionByClause = 273;
HiveSqlParser.RULE_clusterByClause = 274;
HiveSqlParser.RULE_distributeByClause = 275;
HiveSqlParser.RULE_sortByClause = 276;
HiveSqlParser.RULE_function_ = 277;
HiveSqlParser.RULE_null_treatment = 278;
HiveSqlParser.RULE_functionNameCreate = 279;
HiveSqlParser.RULE_functionNameForDDL = 280;
HiveSqlParser.RULE_functionNameForInvoke = 281;
HiveSqlParser.RULE_castExpression = 282;
HiveSqlParser.RULE_caseExpression = 283;
HiveSqlParser.RULE_whenExpression = 284;
HiveSqlParser.RULE_floorExpression = 285;
HiveSqlParser.RULE_extractExpression = 286;
HiveSqlParser.RULE_timeQualifiers = 287;
HiveSqlParser.RULE_constant = 288;
HiveSqlParser.RULE_intervalValue = 289;
HiveSqlParser.RULE_intervalExpression = 290;
HiveSqlParser.RULE_intervalQualifiers = 291;
HiveSqlParser.RULE_expression = 292;
HiveSqlParser.RULE_atomExpression = 293;
HiveSqlParser.RULE_precedenceUnaryPrefixExpression = 294;
HiveSqlParser.RULE_precedenceBitwiseXorExpression = 295;
HiveSqlParser.RULE_precedenceStarExpression = 296;
HiveSqlParser.RULE_precedencePlusExpression = 297;
HiveSqlParser.RULE_precedenceConcatenateExpression = 298;
HiveSqlParser.RULE_precedenceAmpersandExpression = 299;
HiveSqlParser.RULE_precedenceBitwiseOrExpression = 300;
HiveSqlParser.RULE_precedenceSimilarOperator = 301;
HiveSqlParser.RULE_subQueryExpression = 302;
HiveSqlParser.RULE_precedenceSimilarExpression = 303;
HiveSqlParser.RULE_precedenceSimilarExpressionPart = 304;
HiveSqlParser.RULE_precedenceSimilarExpressionAtom = 305;
HiveSqlParser.RULE_precedenceSimilarExpressionIn = 306;
HiveSqlParser.RULE_precedenceSimilarExpressionPartNot = 307;
HiveSqlParser.RULE_precedenceDistinctOperator = 308;
HiveSqlParser.RULE_precedenceEqualOperator = 309;
HiveSqlParser.RULE_precedenceEqualExpression = 310;
HiveSqlParser.RULE_isCondition = 311;
HiveSqlParser.RULE_precedenceNotExpression = 312;
HiveSqlParser.RULE_precedenceAndExpression = 313;
HiveSqlParser.RULE_tableOrPartition = 314;
HiveSqlParser.RULE_partitionSpec = 315;
HiveSqlParser.RULE_partitionVal = 316;
HiveSqlParser.RULE_partitionSelectorSpec = 317;
HiveSqlParser.RULE_partitionSelectorVal = 318;
HiveSqlParser.RULE_subQuerySelectorOperator = 319;
HiveSqlParser.RULE_sysFuncNames = 320;
HiveSqlParser.RULE_id_ = 321;
HiveSqlParser.RULE_functionIdentifier = 322;
HiveSqlParser.RULE_principalIdentifier = 323;
HiveSqlParser.RULE_nonReserved = 324;
HiveSqlParser.RULE_sql11ReservedKeywordsUsedAsFunctionName = 325;
HiveSqlParser.RULE_configPropertiesItem = 326;
HiveSqlParser.RULE_resourcePlanDdlStatements = 327;
HiveSqlParser.RULE_mappingTypes = 328;
HiveSqlParser.RULE_rpAssign = 329;
HiveSqlParser.RULE_rpAssignList = 330;
HiveSqlParser.RULE_rpUnassign = 331;
HiveSqlParser.RULE_activate = 332;
HiveSqlParser.RULE_enable = 333;
HiveSqlParser.RULE_disable = 334;
HiveSqlParser.RULE_year = 335;
HiveSqlParser.RULE_month = 336;
HiveSqlParser.RULE_week = 337;
HiveSqlParser.RULE_day = 338;
HiveSqlParser.RULE_hour = 339;
HiveSqlParser.RULE_minute = 340;
HiveSqlParser.RULE_second = 341;
HiveSqlParser.RULE_decimal = 342;
HiveSqlParser.RULE_poolPath = 343;
HiveSqlParser.RULE_triggerAtomExpression = 344;
HiveSqlParser.RULE_triggerActionExpression = 345;
HiveSqlParser.RULE_poolAssign = 346;
HiveSqlParser.RULE_poolAssignList = 347;
HiveSqlParser.literalNames = [
null, "'ABORT'", "'ACTIVATE'", "'ACTIVE'", "'ADD'", "'ADMIN'", "'AFTER'",
"'ALL'", "'ALLOC_FRACTION'", "'ALTER'", "'ANALYZE'", "'AND'", "'ANTI'",
"'ANY'", "'APPLICATION'", "'ARCHIVE'", "'ARRAY'", "'AS'", "'ASC'",
"'AST'", "'AT'", "'AUTHORIZATION'", "'AUTOCOMMIT'", "'BATCH'", "'BEFORE'",
"'BETWEEN'", "'BIGINT'", "'BINARY'", "'BOOLEAN'", "'BOTH'", "'BUCKET'",
"'BUCKETS'", "'BY'", "'CACHE'", "'CASCADE'", "'CASE'", "'CAST'",
"'CBO'", "'CHANGE'", "'CHAR'", "'CHECK'", "'CLUSTER'", "'CLUSTERED'",
"'CLUSTERSTATUS'", "'COLLECTION'", "'COLUMN'", "'COLUMNS'", "'COMMENT'",
"'COMMIT'", "'COMPACT'", "'COMPACTIONS'", "'COMPACTIONID'", "'COMPUTE'",
"'CONCATENATE'", "'CONF'", "'CONSTRAINT'", "'CONTINUE'", "'COST'",
"'CREATE'", "'CRON'", "'CROSS'", "'CUBE'", "'CURRENT'", "'CURRENT_DATE'",
"'CURRENT_TIMESTAMP'", "'CURSOR'", "'DATA'", "'DATABASE'", "'DATABASES'",
"'CONNECTOR'", "'CONNECTORS'", "'DATE'", "'DATETIME'", "'DAY'",
"'DAYS'", "'DAYOFWEEK'", "'DBPROPERTIES'", "'DCPROPERTIES'", "'DDL'",
"'DEBUG'", "'DEC'", "'DECIMAL'", "'NUMERIC'", "'DEFAULT'", "'DEFERRED'",
"'DEFINED'", "'DELETE'", "'DELIMITED'", "'DEPENDENCY'", "'DESC'",
"'DESCRIBE'", "'DETAIL'", "'DIRECTORIES'", "'DIRECTORY'", "'DISABLE'",
"'DISABLED'", "'DISTINCT'", "'DISTRIBUTE'", "'DISTRIBUTED'", "'DO'",
"'DOUBLE'", "'DROP'", "'RECOVER'", "'DUMP'", "'$ELEM$'", "'ELSE'",
"'ENABLE'", "'ENABLED'", "'END'", "'ENFORCED'", "'ESCAPED'", "'EVERY'",
"'EXCEPT'", "'EXCHANGE'", "'EXCLUSIVE'", "'EXECUTE'", "'EXECUTED'",
"'EXISTS'", "'EXPIRE_SNAPSHOTS'", "'EXPLAIN'", "'EXPORT'", "'EXPRESSION'",
"'EXTENDED'", "'EXTERNAL'", "'EXTRACT'", "'FALSE'", "'FETCH'", "'FIELDS'",
"'FILE'", "'FILEFORMAT'", "'FIRST'", "'FLOAT'", "'FLOOR'", "'FOLLOWING'",
"'FOR'", "'FORCE'", "'FOREIGN'", "'FORMAT'", "'FORMATTED'", "'FROM'",
"'FULL'", "'FUNCTION'", "'FUNCTIONS'", "'GRANT'", "'GROUP'", "'GROUPING'",
"'HAVING'", "'HOLD_DDLTIME'", "'HOUR'", "'HOURS'", "'IDXPROPERTIES'",
"'IF'", "'IGNORE'", "'IMPORT'", "'IN'", "'INDEX'", "'INDEXES'",
"'INNER'", "'INPATH'", "'INPUTDRIVER'", "'INPUTFORMAT'", "'INSERT'",
"'INT'", "'INTEGER'", "'INTERSECT'", "'INTERVAL'", "'INTO'", "'IS'",
"'ISOLATION'", "'ITEMS'", "'JAR'", "'JOIN'", "'JOINCOST'", "'KEY'",
"'KEYS'", "'$KEY$'", "'KILL'", "'LAST'", "'LATERAL'", "'LEADING'",
"'LEFT'", "'LESS'", "'LEVEL'", "'LIFECYCLE'", "'LIKE'", "'LIMIT'",
"'LINES'", "'LOAD'", "'LOCAL'", "'LOCATION'", "'LOCK'", "'LOCKS'",
"'LOGICAL'", "'LONG'", "'MACRO'", "'MANAGED'", "'MANAGEDLOCATION'",
"'MANAGEMENT'", "'MAP'", "'MAPJOIN'", "'MAPPING'", "'MATCHED'",
"'MATERIALIZED'", "'MERGE'", "'METADATA'", "'MINUS'", "'MINUTE'",
"'MINUTES'", "'MONTH'", "'MONTHS'", "'MORE'", "'MOVE'", "'MSCK'",
"'NONE'", "'NORELY'", "'NOSCAN'", "'NOT'", "'NOVALIDATE'", "'NO_DROP'",
"'NULL'", "'NULLS'", "'OF'", "'OFFLINE'", "'OFFSET'", "'ON'", "'ONLY'",
"'OPERATOR'", "'OPTION'", "'OR'", "'ORDER'", "'OUT'", "'OUTER'",
"'OUTPUTDRIVER'", "'OUTPUTFORMAT'", "'OVER'", "'OVERWRITE'", "'OWNER'",
"'PARTITION'", "'PARTITIONED'", "'PARTITIONS'", "'PATH'", "'PERCENT'",
"'PKFK_JOIN'", "'PLAN'", "'PLANS'", "'PLUS'", "'POOL'", "'PRECEDING'",
"'PRECISION'", "'PREPARE'", "'PRESERVE'", "'PRIMARY'", "'PRINCIPALS'",
"'PROCEDURE'", "'PROTECTION'", "'PURGE'", "'QUALIFY'", "'QUARTER'",
"'QUERY'", "'QUERY_PARALLELISM'", "'RANGE'", "'READ'", "'READONLY'",
"'READS'", "'REAL'", "'REBUILD'", "'RECORDREADER'", "'RECORDWRITER'",
"'REDUCE'", "'REFERENCES'", "'REGEXP'", "'RELOAD'", "'RELY'", "'REMOTE'",
"'RENAME'", "'REOPTIMIZATION'", "'REPAIR'", "'REPL'", "'REPLACE'",
"'REPLICATION'", "'RESOURCE'", "'RESPECT'", "'RESTRICT'", "'REVOKE'",
"'REWRITE'", "'RIGHT'", "'RLIKE'", "'ROLE'", "'ROLES'", "'ROLLBACK'",
"'ROLLUP'", "'ROW'", "'ROWS'", "'SCHEDULED'", "'SCHEDULING_POLICY'",
"'SCHEMA'", "'SCHEMAS'", "'SECOND'", "'SECONDS'", "'SELECT'", "'SEMI'",
"'SERDE'", "'SERDEPROPERTIES'", "'SERVER'", "'SET'", "'SETS'", "'SET_CURRENT_SNAPSHOT'",
"'SHARED'", "'SHOW'", "'SHOW_DATABASE'", "'SKEWED'", "'SMALLINT'",
"'SNAPSHOT'", "'SOME'", "'SORT'", "'SORTED'", "'SPEC'", "'SSL'",
"'START'", "'STATISTICS'", "'STATUS'", "'STORED'", "'STREAMTABLE'",
"'STRING'", "'STRUCT'", "'SUMMARY'", "'SYNC'", "'SYSTEM_TIME'",
"'SYSTEM_VERSION'", "'TABLE'", "'TABLES'", "'TABLESAMPLE'", "'TBLPROPERTIES'",
"'TEMPORARY'", "'TERMINATED'", "'THEN'", "'TIME'", "'TIMESTAMP'",
"'TIMESTAMPLOCALTZ'", "'TIMESTAMPTZ'", "'TINYINT'", "'TO'", "'TOUCH'",
"'TRAILING'", "'TRANSACTION'", "'TRANSACTIONAL'", "'TRANSACTIONS'",
"'TRANSFORM'", "'TRIGGER'", "'TRIM'", "'TRUE'", "'TRUNCATE'", "'TYPE'",
"'UNARCHIVE'", "'UNBOUNDED'", "'UNDO'", "'UNION'", "'UNIONTYPE'",
"'UNIQUE'", "'UNIQUEJOIN'", "'UNKNOWN'", "'UNLOCK'", "'UNMANAGED'",
"'UNSET'", "'UNSIGNED'", "'UPDATE'", "'URI'", "'URL'", "'USE'",
"'USER'", "'USING'", "'UTC'", "'UTC_TMESTAMP'", "'VALIDATE'", "'VALUES'",
"'$VALUE$'", "'VARCHAR'", "'VECTORIZATION'", "'VIEW'", "'VIEWS'",
"'WAIT'", "'WEEK'", "'WEEKS'", "'WHEN'", "'WHERE'", "'WHILE'", "'WINDOW'",
"'WITH'", "'WITHIN'", "'WORK'", "'WORKLOAD'", "'WRITE'", "'YEAR'",
"'YEARS'", "'ZONE'", "'.'", "':'", "','", "';'", "'('", "')'", "'['",
"']'", "'{'", "'}'", null, "'<=>'", null, "'<='", "'<'", "'>='",
"'>'", "'/'", "'+'", "'-'", "'*'", "'%'", "'DIV'", "'!'", "'&'",
"'~'", "'|'", "'||'", "'^'", "'?'", "'$'"
];
HiveSqlParser.symbolicNames = [
null, "KW_ABORT", "KW_ACTIVATE", "KW_ACTIVE", "KW_ADD", "KW_ADMIN",
"KW_AFTER", "KW_ALL", "KW_ALLOC_FRACTION", "KW_ALTER", "KW_ANALYZE",
"KW_AND", "KW_ANTI", "KW_ANY", "KW_APPLICATION", "KW_ARCHIVE", "KW_ARRAY",
"KW_AS", "KW_ASC", "KW_AST", "KW_AT", "KW_AUTHORIZATION", "KW_AUTOCOMMIT",
"KW_BATCH", "KW_BEFORE", "KW_BETWEEN", "KW_BIGINT", "KW_BINARY",
"KW_BOOLEAN", "KW_BOTH", "KW_BUCKET", "KW_BUCKETS", "KW_BY", "KW_CACHE",
"KW_CASCADE", "KW_CASE", "KW_CAST", "KW_CBO", "KW_CHANGE", "KW_CHAR",
"KW_CHECK", "KW_CLUSTER", "KW_CLUSTERED", "KW_CLUSTERSTATUS", "KW_COLLECTION",
"KW_COLUMN", "KW_COLUMNS", "KW_COMMENT", "KW_COMMIT", "KW_COMPACT",
"KW_COMPACTIONS", "KW_COMPACT_ID", "KW_COMPUTE", "KW_CONCATENATE",
"KW_CONF", "KW_CONSTRAINT", "KW_CONTINUE", "KW_COST", "KW_CREATE",
"KW_CRON", "KW_CROSS", "KW_CUBE", "KW_CURRENT", "KW_CURRENT_DATE",
"KW_CURRENT_TIMESTAMP", "KW_CURSOR", "KW_DATA", "KW_DATABASE", "KW_DATABASES",
"KW_DATACONNECTOR", "KW_DATACONNECTORS", "KW_DATE", "KW_DATETIME",
"KW_DAY", "KW_DAYS", "KW_DAYOFWEEK", "KW_DBPROPERTIES", "KW_DCPROPERTIES",
"KW_DDL", "KW_DEBUG", "KW_DEC", "KW_DECIMAL", "KW_NUMERIC", "KW_DEFAULT",
"KW_DEFERRED", "KW_DEFINED", "KW_DELETE", "KW_DELIMITED", "KW_DEPENDENCY",
"KW_DESC", "KW_DESCRIBE", "KW_DETAIL", "KW_DIRECTORIES", "KW_DIRECTORY",
"KW_DISABLE", "KW_DISABLED", "KW_DISTINCT", "KW_DISTRIBUTE", "KW_DISTRIBUTED",
"KW_DO", "KW_DOUBLE", "KW_DROP", "KW_RECOVER", "KW_DUMP", "KW_ELEM_TYPE",
"KW_ELSE", "KW_ENABLE", "KW_ENABLED", "KW_END", "KW_ENFORCED", "KW_ESCAPED",
"KW_EVERY", "KW_EXCEPT", "KW_EXCHANGE", "KW_EXCLUSIVE", "KW_EXECUTE",
"KW_EXECUTED", "KW_EXISTS", "KW_EXPIRE_SNAPSHOTS", "KW_EXPLAIN",
"KW_EXPORT", "KW_EXPRESSION", "KW_EXTENDED", "KW_EXTERNAL", "KW_EXTRACT",
"KW_FALSE", "KW_FETCH", "KW_FIELDS", "KW_FILE", "KW_FILEFORMAT",
"KW_FIRST", "KW_FLOAT", "KW_FLOOR", "KW_FOLLOWING", "KW_FOR", "KW_FORCE",
"KW_FOREIGN", "KW_FORMAT", "KW_FORMATTED", "KW_FROM", "KW_FULL",
"KW_FUNCTION", "KW_FUNCTIONS", "KW_GRANT", "KW_GROUP", "KW_GROUPING",
"KW_HAVING", "KW_HOLD_DDLTIME", "KW_HOUR", "KW_HOURS", "KW_IDXPROPERTIES",
"KW_IF", "KW_IGNORE", "KW_IMPORT", "KW_IN", "KW_INDEX", "KW_INDEXES",
"KW_INNER", "KW_INPATH", "KW_INPUTDRIVER", "KW_INPUTFORMAT", "KW_INSERT",
"KW_INT", "KW_INTEGER", "KW_INTERSECT", "KW_INTERVAL", "KW_INTO",
"KW_IS", "KW_ISOLATION", "KW_ITEMS", "KW_JAR", "KW_JOIN", "KW_JOINCOST",
"KW_KEY", "KW_KEYS", "KW_KEY_TYPE", "KW_KILL", "KW_LAST", "KW_LATERAL",
"KW_LEADING", "KW_LEFT", "KW_LESS", "KW_LEVEL", "KW_LIFECYCLE",
"KW_LIKE", "KW_LIMIT", "KW_LINES", "KW_LOAD", "KW_LOCAL", "KW_LOCATION",
"KW_LOCK", "KW_LOCKS", "KW_LOGICAL", "KW_LONG", "KW_MACRO", "KW_MANAGED",
"KW_MANAGEDLOCATION", "KW_MANAGEMENT", "KW_MAP", "KW_MAPJOIN", "KW_MAPPING",
"KW_MATCHED", "KW_MATERIALIZED", "KW_MERGE", "KW_METADATA", "KW_MINUS",
"KW_MINUTE", "KW_MINUTES", "KW_MONTH", "KW_MONTHS", "KW_MORE", "KW_MOVE",
"KW_MSCK", "KW_NONE", "KW_NORELY", "KW_NOSCAN", "KW_NOT", "KW_NOVALIDATE",
"KW_NO_DROP", "KW_NULL", "KW_NULLS", "KW_OF", "KW_OFFLINE", "KW_OFFSET",
"KW_ON", "KW_ONLY", "KW_OPERATOR", "KW_OPTION", "KW_OR", "KW_ORDER",
"KW_OUT", "KW_OUTER", "KW_OUTPUTDRIVER", "KW_OUTPUTFORMAT", "KW_OVER",
"KW_OVERWRITE", "KW_OWNER", "KW_PARTITION", "KW_PARTITIONED", "KW_PARTITIONS",
"KW_PATH", "KW_PERCENT", "KW_PKFK_JOIN", "KW_PLAN", "KW_PLANS",
"KW_PLUS", "KW_POOL", "KW_PRECEDING", "KW_PRECISION", "KW_PREPARE",
"KW_PRESERVE", "KW_PRIMARY", "KW_PRINCIPALS", "KW_PROCEDURE", "KW_PROTECTION",
"KW_PURGE", "KW_QUALIFY", "KW_QUARTER", "KW_QUERY", "KW_QUERY_PARALLELISM",
"KW_RANGE", "KW_READ", "KW_READONLY", "KW_READS", "KW_REAL", "KW_REBUILD",
"KW_RECORDREADER", "KW_RECORDWRITER", "KW_REDUCE", "KW_REFERENCES",
"KW_REGEXP", "KW_RELOAD", "KW_RELY", "KW_REMOTE", "KW_RENAME", "KW_REOPTIMIZATION",
"KW_REPAIR", "KW_REPL", "KW_REPLACE", "KW_REPLICATION", "KW_RESOURCE",
"KW_RESPECT", "KW_RESTRICT", "KW_REVOKE", "KW_REWRITE", "KW_RIGHT",
"KW_RLIKE", "KW_ROLE", "KW_ROLES", "KW_ROLLBACK", "KW_ROLLUP", "KW_ROW",
"KW_ROWS", "KW_SCHEDULED", "KW_SCHEDULING_POLICY", "KW_SCHEMA",
"KW_SCHEMAS", "KW_SECOND", "KW_SECONDS", "KW_SELECT", "KW_SEMI",
"KW_SERDE", "KW_SERDEPROPERTIES", "KW_SERVER", "KW_SET", "KW_SETS",
"KW_SET_CURRENT_SNAPSHOT", "KW_SHARED", "KW_SHOW", "KW_SHOW_DATABASE",
"KW_SKEWED", "KW_SMALLINT", "KW_SNAPSHOT", "KW_SOME", "KW_SORT",
"KW_SORTED", "KW_SPEC", "KW_SSL", "KW_START", "KW_STATISTICS", "KW_STATUS",
"KW_STORED", "KW_STREAMTABLE", "KW_STRING", "KW_STRUCT", "KW_SUMMARY",
"KW_SYNC", "KW_SYSTEM_TIME", "KW_SYSTEM_VERSION", "KW_TABLE", "KW_TABLES",
"KW_TABLESAMPLE", "KW_TBLPROPERTIES", "KW_TEMPORARY", "KW_TERMINATED",
"KW_THEN", "KW_TIME", "KW_TIMESTAMP", "KW_TIMESTAMPLOCALTZ", "KW_TIMESTAMPTZ",
"KW_TINYINT", "KW_TO", "KW_TOUCH", "KW_TRAILING", "KW_TRANSACTION",
"KW_TRANSACTIONAL", "KW_TRANSACTIONS", "KW_TRANSFORM", "KW_TRIGGER",
"KW_TRIM", "KW_TRUE", "KW_TRUNCATE", "KW_TYPE", "KW_UNARCHIVE",
"KW_UNBOUNDED", "KW_UNDO", "KW_UNION", "KW_UNIONTYPE", "KW_UNIQUE",
"KW_UNIQUEJOIN", "KW_UNKNOWN", "KW_UNLOCK", "KW_UNMANAGED", "KW_UNSET",
"KW_UNSIGNED", "KW_UPDATE", "KW_URI", "KW_URL", "KW_USE", "KW_USER",
"KW_USING", "KW_UTC", "KW_UTCTIMESTAMP", "KW_VALIDATE", "KW_VALUES",
"KW_VALUE_TYPE", "KW_VARCHAR", "KW_VECTORIZATION", "KW_VIEW", "KW_VIEWS",
"KW_WAIT", "KW_WEEK", "KW_WEEKS", "KW_WHEN", "KW_WHERE", "KW_WHILE",
"KW_WINDOW", "KW_WITH", "KW_WITHIN", "KW_WORK", "KW_WORKLOAD", "KW_WRITE",
"KW_YEAR", "KW_YEARS", "KW_ZONE", "DOT", "COLON", "COMMA", "SEMICOLON",
"LPAREN", "RPAREN", "LSQUARE", "RSQUARE", "LCURLY", "RCURLY", "EQUAL",
"EQUAL_NS", "NOTEQUAL", "LESSTHANOREQUALTO", "LESSTHAN", "GREATERTHANOREQUALTO",
"GREATERTHAN", "DIVIDE", "PLUS", "MINUS", "STAR", "MOD", "DIV",
"BITWISENOT", "AMPERSAND", "TILDE", "BITWISEOR", "CONCATENATE",
"BITWISEXOR", "QUESTION", "DOLLAR", "StringLiteral", "CharSetLiteral",
"IntegralLiteral", "NumberLiteral", "ByteLengthLiteral", "Number",
"Identifier", "CharSetName", "WHITE_SPACE", "LINE_COMMENT", "QUERY_HINT",
"SHOW_HINT", "HIDDEN_HINT"
];
HiveSqlParser.ruleNames = [
"program", "statement", "explainStatement", "explainOption", "vectorizationDetail",
"execStatement", "loadStatement", "replicationClause", "exportStatement",
"importStatement", "replDumpStatement", "replDbPolicy", "replLoadStatement",
"replTableLevelPolicy", "ddlStatement", "ifExists", "ifNotExists",
"restrictOrCascade", "rewriteEnabled", "rewriteDisabled", "storedAsDirs",
"createDatabaseStatement", "dbConnectorName", "switchDatabaseStatement",
"dropDatabaseStatement", "databaseComment", "truncateTableStatement",
"dropTableStatement", "inputFileFormat", "tabTypeExpr", "partTypeExpr",
"tabPartColTypeExpr", "descStatement", "analyzeStatement", "from_in",
"db_schema", "showStatement", "showTablesFilterExpr", "lockStatement",
"lockDatabase", "lockMode", "unlockStatement", "unlockDatabase",
"createRoleStatement", "dropRoleStatement", "grantPrivileges", "revokePrivileges",
"grantRole", "revokeRole", "showRoleGrants", "showRoles", "showCurrentRole",
"setRole", "showGrants", "showRolePrincipals", "privilegeIncludeColObject",
"privilegeObject", "privObject", "privObjectCols", "privilegeList",
"privilegeDef", "privilegeType", "principalSpecification", "principalName",
"principalAlterName", "withGrantOption", "grantOptionFor", "adminOptionFor",
"withAdminOption", "metastoreCheck", "resourceList", "resource",
"resourceType", "createFunctionStatement", "dropFunctionStatement",
"reloadFunctionsStatement", "createMacroStatement", "dropMacroStatement",
"createIndexStatement", "dropIndexStatement", "createViewStatement",
"viewPartition", "viewOrganization", "viewClusterSpec", "viewComplexSpec",
"viewDistSpec", "viewSortSpec", "dropViewStatement", "createMaterializedViewStatement",
"dropMaterializedViewStatement", "createScheduledQueryStatement",
"dropScheduledQueryStatement", "alterScheduledQueryStatement", "alterScheduledQueryChange",
"scheduleSpec", "executedAsSpec", "definedAsSpec", "showStmtIdentifier",
"tableComment", "tableLifecycle", "createTablePartitionSpec", "createTablePartitionColumnTypeSpec",
"partitionTransformSpec", "partitionTransformType", "tableBuckets",
"tableSkewed", "rowFormat", "recordReader", "recordWriter", "rowFormatSerde",
"rowFormatDelimited", "tableRowFormat", "tablePropertiesPrefixed",
"tableProperties", "tablePropertiesList", "keyValueProperties",
"keyValuePropertyList", "keyValueProperty", "tableRowFormatFieldIdentifier",
"tableRowFormatCollItemsIdentifier", "tableRowFormatMapKeysIdentifier",
"tableRowFormatLinesIdentifier", "tableRowNullFormat", "tableFileFormat",
"columnNameTypeList", "columnNameTypeOrConstraintList", "columnNameColonTypeList",
"columnNameList", "columnName", "columnNamePath", "columnNameCreate",
"extColumnName", "columnNameOrderList", "columnParenthesesList",
"enableValidateSpecification", "enableSpecification", "validateSpecification",
"enforcedSpecification", "relySpecification", "createConstraint",
"alterConstraintWithName", "tableLevelConstraint", "pkUkConstraint",
"checkConstraint", "createForeignKey", "alterForeignKeyWithName",
"skewedValueElement", "skewedColumnValuePairList", "skewedColumnValuePair",
"constantList", "orderSpecification", "nullOrdering", "columnNameOrder",
"columnNameCommentList", "columnNameComment", "columnRefOrder",
"columnNameType", "columnNameTypeOrConstraint", "tableConstraint",
"columnNameTypeConstraint", "columnConstraint", "foreignKeyConstraint",
"colConstraint", "alterColumnConstraint", "alterForeignKeyConstraint",
"alterColConstraint", "columnConstraintType", "defaultVal", "tableConstraintType",
"constraintOptsCreate", "constraintOptsAlter", "columnNameColonType",
"columnType", "columnTypeList", "type", "primitiveType", "listType",
"structType", "mapType", "unionType", "setOperator", "queryStatementExpression",
"queryStatementExpressionBody", "withClause", "cteStatement", "fromStatement",
"singleFromStatement", "regularBody", "atomSelectStatement", "selectStatement",
"setOpSelectStatement", "selectStatementWithCTE", "insertClause",
"destination", "limitClause", "columnAssignmentClause", "precedencePlusExpressionOrDefault",
"setColumnsClause", "sqlTransactionStatement", "transactionMode",
"whenClauses", "whenNotMatchedClause", "whenMatchedAndClause", "whenMatchedThenClause",
"compactionPool", "compactionType", "compactionStatus", "alterStatement",
"alterTableStatementSuffix", "alterTblPartitionStatementSuffix",
"alterViewStatementSuffix", "alterDatabaseStatementSuffix", "alterDataConnectorStatementSuffix",
"locationPath", "alterStatementSuffixDropPartitions", "skewedLocationMap",
"alterStatementSuffixExecute", "fileFormat", "likeTableOrFile",
"createTableStatement", "createDataConnectorStatement", "dropDataConnectorStatement",
"tableAllColumns", "expressionList", "aliasList", "fromClause",
"fromSource", "atomjoinSource", "joinSource", "joinSourcePart",
"uniqueJoinSource", "joinToken", "lateralView", "tableAlias", "tableSample",
"tableSource", "asOfClause", "dbSchemaName", "dbSchemaNameCreate",
"tableOrView", "tableName", "tableNameCreate", "viewName", "viewNameCreate",
"subQuerySource", "partitioningSpec", "partitionTableFunctionSource",
"partitionedTableFunction", "whereClause", "valuesClause", "virtualTableSource",
"selectClause", "selectTrfmClause", "selectItem", "trfmClause",
"selectExpression", "selectExpressionList", "window_clause", "window_specification",
"window_frame", "window_frame_boundary", "groupByClause", "rollupStandard",
"rollupOldSyntax", "groupingSetExpression", "havingClause", "qualifyClause",
"expressionOrDefault", "firstExpressionsWithAlias", "expressions",
"expressionsInParenthesis", "expressionsNotInParenthesis", "orderByClause",
"partitionByClause", "clusterByClause", "distributeByClause", "sortByClause",
"function_", "null_treatment", "functionNameCreate", "functionNameForDDL",
"functionNameForInvoke", "castExpression", "caseExpression", "whenExpression",
"floorExpression", "extractExpression", "timeQualifiers", "constant",
"intervalValue", "intervalExpression", "intervalQualifiers", "expression",
"atomExpression", "precedenceUnaryPrefixExpression", "precedenceBitwiseXorExpression",
"precedenceStarExpression", "precedencePlusExpression", "precedenceConcatenateExpression",
"precedenceAmpersandExpression", "precedenceBitwiseOrExpression",
"precedenceSimilarOperator", "subQueryExpression", "precedenceSimilarExpression",
"precedenceSimilarExpressionPart", "precedenceSimilarExpressionAtom",
"precedenceSimilarExpressionIn", "precedenceSimilarExpressionPartNot",
"precedenceDistinctOperator", "precedenceEqualOperator", "precedenceEqualExpression",
"isCondition", "precedenceNotExpression", "precedenceAndExpression",
"tableOrPartition", "partitionSpec", "partitionVal", "partitionSelectorSpec",
"partitionSelectorVal", "subQuerySelectorOperator", "sysFuncNames",
"id_", "functionIdentifier", "principalIdentifier", "nonReserved",
"sql11ReservedKeywordsUsedAsFunctionName", "configPropertiesItem",
"resourcePlanDdlStatements", "mappingTypes", "rpAssign", "rpAssignList",
"rpUnassign", "activate", "enable", "disable", "year", "month",
"week", "day", "hour", "minute", "second", "decimal", "poolPath",
"triggerAtomExpression", "triggerActionExpression", "poolAssign",
"poolAssignList",
];
HiveSqlParser._serializedATN = [
4, 1, 438, 4809, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6,
7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7,
13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2,
20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7,
26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2, 31, 7, 31, 2, 32, 7, 32, 2,
33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7,
39, 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2,
46, 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, 51, 7, 51, 2, 52, 7,
52, 2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55, 2, 56, 7, 56, 2, 57, 7, 57, 2, 58, 7, 58, 2,
59, 7, 59, 2, 60, 7, 60, 2, 61, 7, 61, 2, 62, 7, 62, 2, 63, 7, 63, 2, 64, 7, 64, 2, 65, 7,
65, 2, 66, 7, 66, 2, 67, 7, 67, 2, 68, 7, 68, 2, 69, 7, 69, 2, 70, 7, 70, 2, 71, 7, 71, 2,
72, 7, 72, 2, 73, 7, 73, 2, 74, 7, 74, 2, 75, 7, 75, 2, 76, 7, 76, 2, 77, 7, 77, 2, 78, 7,
78, 2, 79, 7, 79, 2, 80, 7, 80, 2, 81, 7, 81, 2, 82, 7, 82, 2, 83, 7, 83, 2, 84, 7, 84, 2,
85, 7, 85, 2, 86, 7, 86, 2, 87, 7, 87, 2, 88, 7, 88, 2, 89, 7, 89, 2, 90, 7, 90, 2, 91, 7,
91, 2, 92, 7, 92, 2, 93, 7, 93, 2, 94, 7, 94, 2, 95, 7, 95, 2, 96, 7, 96, 2, 97, 7, 97, 2,
98, 7, 98, 2, 99, 7, 99, 2, 100, 7, 100, 2, 101, 7, 101, 2, 102, 7, 102, 2, 103, 7, 103,
2, 104, 7, 104, 2, 105, 7, 105, 2, 106, 7, 106, 2, 107, 7, 107, 2, 108, 7, 108, 2, 109,
7, 109, 2, 110, 7, 110, 2, 111, 7, 111, 2, 112, 7, 112, 2, 113, 7, 113, 2, 114, 7, 114,
2, 115, 7, 115, 2, 116, 7, 116, 2, 117, 7, 117, 2, 118, 7, 118, 2, 119, 7, 119, 2, 120,
7, 120, 2, 121, 7, 121, 2, 122, 7, 122, 2, 123, 7, 123, 2, 124, 7, 124, 2, 125, 7, 125,
2, 126, 7, 126, 2, 127, 7, 127, 2, 128, 7, 128, 2, 129, 7, 129, 2, 130, 7, 130, 2, 131,
7, 131, 2, 132, 7, 132, 2, 133, 7, 133, 2, 134, 7, 134, 2, 135, 7, 135, 2, 136, 7, 136,
2, 137, 7, 137, 2, 138, 7, 138, 2, 139, 7, 139, 2, 140, 7, 140, 2, 141, 7, 141, 2, 142,
7, 142, 2, 143, 7, 143, 2, 144, 7, 144, 2, 145, 7, 145, 2, 146, 7, 146, 2, 147, 7, 147,
2, 148, 7, 148, 2, 149, 7, 149, 2, 150, 7, 150, 2, 151, 7, 151, 2, 152, 7, 152, 2, 153,
7, 153, 2, 154, 7, 154, 2, 155, 7, 155, 2, 156, 7, 156, 2, 157, 7, 157, 2, 158, 7, 158,
2, 159, 7, 159, 2, 160, 7, 160, 2, 161, 7, 161, 2, 162, 7, 162, 2, 163, 7, 163, 2, 164,
7, 164, 2, 165, 7, 165, 2, 166, 7, 166, 2, 167, 7, 167, 2, 168, 7, 168, 2, 169, 7, 169,
2, 170, 7, 170, 2, 171, 7, 171, 2, 172, 7, 172, 2, 173, 7, 173, 2, 174, 7, 174, 2, 175,
7, 175, 2, 176, 7, 176, 2, 177, 7, 177, 2, 178, 7, 178, 2, 179, 7, 179, 2, 180, 7, 180,
2, 181, 7, 181, 2, 182, 7, 182, 2, 183, 7, 183, 2, 184, 7, 184, 2, 185, 7, 185, 2, 186,
7, 186, 2, 187, 7, 187, 2, 188, 7, 188, 2, 189, 7, 189, 2, 190, 7, 190, 2, 191, 7, 191,
2, 192, 7, 192, 2, 193, 7, 193, 2, 194, 7, 194, 2, 195, 7, 195, 2, 196, 7, 196, 2, 197,
7, 197, 2, 198, 7, 198, 2, 199, 7, 199, 2, 200, 7, 200, 2, 201, 7, 201, 2, 202, 7, 202,
2, 203, 7, 203, 2, 204, 7, 204, 2, 205, 7, 205, 2, 206, 7, 206, 2, 207, 7, 207, 2, 208,
7, 208, 2, 209, 7, 209, 2, 210, 7, 210, 2, 211, 7, 211, 2, 212, 7, 212, 2, 213, 7, 213,
2, 214, 7, 214, 2, 215, 7, 215, 2, 216, 7, 216, 2, 217, 7, 217, 2, 218, 7, 218, 2, 219,
7, 219, 2, 220, 7, 220, 2, 221, 7, 221, 2, 222, 7, 222, 2, 223, 7, 223, 2, 224, 7, 224,
2, 225, 7, 225, 2, 226, 7, 226, 2, 227, 7, 227, 2, 228, 7, 228, 2, 229, 7, 229, 2, 230,
7, 230, 2, 231, 7, 231, 2, 232, 7, 232, 2, 233, 7, 233, 2, 234, 7, 234, 2, 235, 7, 235,
2, 236, 7, 236, 2, 237, 7, 237, 2, 238, 7, 238, 2, 239, 7, 239, 2, 240, 7, 240, 2, 241,
7, 241, 2, 242, 7, 242, 2, 243, 7, 243, 2, 244, 7, 244, 2, 245, 7, 245, 2, 246, 7, 246,
2, 247, 7, 247, 2, 248, 7, 248, 2, 249, 7, 249, 2, 250, 7, 250, 2, 251, 7, 251, 2, 252,
7, 252, 2, 253, 7, 253, 2, 254, 7, 254, 2, 255, 7, 255, 2, 256, 7, 256, 2, 257, 7, 257,
2, 258, 7, 258, 2, 259, 7, 259, 2, 260, 7, 260, 2, 261, 7, 261, 2, 262, 7, 262, 2, 263,
7, 263, 2, 264, 7, 264, 2, 265, 7, 265, 2, 266, 7, 266, 2, 267, 7, 267, 2, 268, 7, 268,
2, 269, 7, 269, 2, 270, 7, 270, 2, 271, 7, 271, 2, 272, 7, 272, 2, 273, 7, 273, 2, 274,
7, 274, 2, 275, 7, 275, 2, 276, 7, 276, 2, 277, 7, 277, 2, 278, 7, 278, 2, 279, 7, 279,
2, 280, 7, 280, 2, 281, 7, 281, 2, 282, 7, 282, 2, 283, 7, 283, 2, 284, 7, 284, 2, 285,
7, 285, 2, 286, 7, 286, 2, 287, 7, 287, 2, 288, 7, 288, 2, 289, 7, 289, 2, 290, 7, 290,
2, 291, 7, 291, 2, 292, 7, 292, 2, 293, 7, 293, 2, 294, 7, 294, 2, 295, 7, 295, 2, 296,
7, 296, 2, 297, 7, 297, 2, 298, 7, 298, 2, 299, 7, 299, 2, 300, 7, 300, 2, 301, 7, 301,
2, 302, 7, 302, 2, 303, 7, 303, 2, 304, 7, 304, 2, 305, 7, 305, 2, 306, 7, 306, 2, 307,
7, 307, 2, 308, 7, 308, 2, 309, 7, 309, 2, 310, 7, 310, 2, 311, 7, 311, 2, 312, 7, 312,
2, 313, 7, 313, 2, 314, 7, 314, 2, 315, 7, 315, 2, 316, 7, 316, 2, 317, 7, 317, 2, 318,
7, 318, 2, 319, 7, 319, 2, 320, 7, 320, 2, 321, 7, 321, 2, 322, 7, 322, 2, 323, 7, 323,
2, 324, 7, 324, 2, 325, 7, 325, 2, 326, 7, 326, 2, 327, 7, 327, 2, 328, 7, 328, 2, 329,
7, 329, 2, 330, 7, 330, 2, 331, 7, 331, 2, 332, 7, 332, 2, 333, 7, 333, 2, 334, 7, 334,
2, 335, 7, 335, 2, 336, 7, 336, 2, 337, 7, 337, 2, 338, 7, 338, 2, 339, 7, 339, 2, 340,
7, 340, 2, 341, 7, 341, 2, 342, 7, 342, 2, 343, 7, 343, 2, 344, 7, 344, 2, 345, 7, 345,
2, 346, 7, 346, 2, 347, 7, 347, 1, 0, 5, 0, 698, 8, 0, 10, 0, 12, 0, 701, 9, 0, 1, 0, 1,
0, 1, 1, 1, 1, 3, 1, 707, 8, 1, 1, 1, 3, 1, 710, 8, 1, 1, 2, 1, 2, 5, 2, 714, 8, 2, 10, 2, 12,
2, 717, 9, 2, 1, 2, 1, 2, 1, 2, 3, 2, 722, 8, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 729, 8,
3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 739, 8, 3, 1, 3, 3, 3, 742, 8, 3, 1,
3, 1, 3, 3, 3, 746, 8, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1,
5, 1, 5, 3, 5, 761, 8, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 3, 5, 768, 8, 5, 1, 5, 1, 5, 1, 5, 1,
5, 3, 5, 774, 8, 5, 1, 5, 1, 5, 1, 5, 3, 5, 779, 8, 5, 1, 5, 1, 5, 1, 5, 3, 5, 784, 8, 5, 1,
5, 3, 5, 787, 8, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1,
5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 5, 5, 809, 8, 5, 10, 5, 12, 5, 812, 9, 5, 1, 5,
1, 5, 5, 5, 816, 8, 5, 10, 5, 12, 5, 819, 9, 5, 3, 5, 821, 8, 5, 1, 6, 1, 6, 1, 6, 3, 6, 826,
8, 6, 1, 6, 1, 6, 1, 6, 3, 6, 831, 8, 6, 1, 6, 1, 6, 1, 6, 1, 6, 3, 6, 837, 8, 6, 1, 7, 1, 7,
3, 7, 841, 8, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 3, 8, 854,
8, 8, 1, 9, 1, 9, 3, 9, 858, 8, 9, 1, 9, 1, 9, 3, 9, 862, 8, 9, 1, 9, 1, 9, 1, 9, 3, 9, 867,
8, 9, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 3, 10, 874, 8, 10, 1, 10, 1, 10, 3, 10, 878, 8,
10, 1, 11, 1, 11, 1, 11, 3, 11, 883, 8, 11, 1, 12, 1, 12, 1, 12, 1, 12, 1, 12, 3, 12, 890,
8, 12, 1, 12, 1, 12, 3, 12, 894, 8, 12, 1, 13, 1, 13, 1, 13, 3, 13, 899, 8, 13, 1, 14, 1,
14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1,
14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1,
14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1,
14, 1, 14, 1, 14, 1, 14, 4, 14, 945, 8, 14, 11, 14, 12, 14, 946, 1, 14, 1, 14, 1, 14, 4,
14, 952, 8, 14, 11, 14, 12, 14, 953, 1, 14, 1, 14, 1, 14, 3, 14, 959, 8, 14, 1, 15, 1,
15, 1, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 1, 19, 1, 19, 1,
19, 1, 20, 1, 20, 1, 20, 1, 20, 1, 21, 1, 21, 3, 21, 982, 8, 21, 1, 21, 1, 21, 3, 21, 986,
8, 21, 1, 21, 1, 21, 3, 21, 990, 8, 21, 1, 21, 3, 21, 993, 8, 21, 1, 21, 1, 21, 3, 21, 997,
8, 21, 1, 21, 1, 21, 1, 21, 3, 21, 1002, 8, 21, 1, 21, 1, 21, 1, 21, 1, 21, 3, 21, 1008,
8, 21, 1, 21, 1, 21, 3, 21, 1012, 8, 21, 1, 21, 1, 21, 1, 21, 1, 21, 3, 21, 1018, 8, 21,
3, 21, 1020, 8, 21, 1, 22, 1, 22, 1, 22, 1, 23, 1, 23, 1, 23, 1, 24, 1, 24, 1, 24, 3, 24,
1031, 8, 24, 1, 24, 1, 24, 3, 24, 1035, 8, 24, 1, 25, 1, 25, 1, 25, 1, 26, 1, 26, 3, 26,
1042, 8, 26, 1, 26, 1, 26, 1, 26, 1, 26, 1, 26, 1, 26, 3, 26, 1050, 8, 26, 1, 26, 3, 26,
1053, 8, 26, 1, 27, 1, 27, 1, 27, 3, 27, 1058, 8, 27, 1, 27, 1, 27, 3, 27, 1062, 8, 27,
1, 27, 3, 27, 1065, 8, 27, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 1, 29, 1, 29, 1, 29, 3, 29,
1075, 8, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 1083, 8, 29, 5, 29, 1085,
8, 29, 10, 29, 12, 29, 1088, 9, 29, 3, 29, 1090, 8, 29, 1, 30, 1, 30, 3, 30, 1094, 8,
30, 1, 31, 1, 31, 3, 31, 1098, 8, 31, 1, 31, 3, 31, 1101, 8, 31, 1, 32, 1, 32, 1, 32, 3,
32, 1106, 8, 32, 1, 32, 1, 32, 1, 32, 1, 32, 3, 32, 1112, 8, 32, 1, 32, 1, 32, 1, 32, 3,
32, 1117, 8, 32, 1, 32, 1, 32, 1, 32, 3, 32, 1122, 8, 32, 1, 32, 1, 32, 3, 32, 1126, 8,
32, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 3, 33, 1137, 8, 33, 3,
33, 1139, 8, 33, 1, 33, 1, 33, 3, 33, 1143, 8, 33, 1, 34, 1, 34, 1, 35, 1, 35, 1, 36, 1,
36, 1, 36, 1, 36, 3, 36, 1153, 8, 36, 1, 36, 1, 36, 3, 36, 1157, 8, 36, 1, 36, 1, 36, 1,
36, 1, 36, 3, 36, 1163, 8, 36, 1, 36, 3, 36, 1166, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1,
36, 3, 36, 1173, 8, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1178, 8, 36, 1, 36, 1, 36, 1, 36, 1,
36, 1, 36, 1, 36, 3, 36, 1186, 8, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1191, 8, 36, 1, 36, 1,
36, 3, 36, 1195, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1203, 8, 36, 1,
36, 1, 36, 1, 36, 3, 36, 1208, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1214, 8, 36, 1,
36, 1, 36, 1, 36, 1, 36, 3, 36, 1220, 8, 36, 1, 36, 3, 36, 1223, 8, 36, 1, 36, 3, 36, 1226,
8, 36, 1, 36, 3, 36, 1229, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36,
1238, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1246, 8, 36, 1, 36, 1, 36,
1, 36, 3, 36, 1251, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1259, 8, 36,
1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1266, 8, 36, 1, 36, 3, 36, 1269, 8, 36, 1, 36,
3, 36, 1272, 8, 36, 3, 36, 1274, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36,
1, 36, 1, 36, 3, 36, 1285, 8, 36, 3, 36, 1287, 8, 36, 1, 36, 3, 36, 1290, 8, 36, 1, 36,
3, 36, 1293, 8, 36, 1, 36, 3, 36, 1296, 8, 36, 1, 36, 3, 36, 1299, 8, 36, 1, 36, 3, 36,
1302, 8, 36, 3, 36, 1304, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 1, 36,
1, 36, 1, 36, 3, 36, 1316, 8, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1322, 8, 36, 1, 36,
1, 36, 1, 36, 1, 36, 1, 36, 1, 36, 3, 36, 1330, 8, 36, 3, 36, 1332, 8, 36, 1, 37, 1, 37,
1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1342, 8, 37, 1, 38, 1, 38, 1, 38, 1, 38,
1, 38, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 40, 1, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 42,
1, 42, 1, 42, 1, 42, 1, 43, 1, 43, 1, 43, 1, 43, 1, 44, 1, 44, 1, 44, 1, 44, 1, 45, 1, 45,
1, 45, 3, 45, 1375, 8, 45, 1, 45, 1, 45, 1, 45, 3, 45, 1380, 8, 45, 1, 46, 1, 46, 3, 46,
1384, 8, 46, 1, 46, 1, 46, 3, 46, 1388, 8, 46, 1, 46, 1, 46, 1, 46, 1, 47, 1, 47, 3, 47,
1395, 8, 47, 1, 47, 1, 47, 1, 47, 5, 47, 1400, 8, 47, 10, 47, 12, 47, 1403, 9, 47, 1,
47, 1, 47, 1, 47, 3, 47, 1408, 8, 47, 1, 48, 1, 48, 3, 48, 1412, 8, 48, 1, 48, 3, 48, 1415,
8, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1420, 8, 48, 10, 48, 12, 48, 1423, 9, 48, 1, 48, 1,
48, 1, 48, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 50, 1, 50, 1, 50, 1, 51, 1, 51, 1, 51, 1,
51, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 3, 52, 1445, 8, 52, 1, 53, 1, 53, 1, 53, 3, 53, 1450,
8, 53, 1, 53, 1, 53, 3, 53, 1454, 8, 53, 1, 54, 1, 54, 1, 54, 1, 54, 1, 55, 1, 55, 3, 55,
1462, 8, 55, 1, 56, 1, 56, 1, 56, 1, 57, 1, 57, 1, 57, 1, 57, 3, 57, 1471, 8, 57, 1, 57,
1, 57, 1, 57, 1, 57, 1, 57, 3, 57, 1478, 8, 57, 1, 58, 1, 58, 1, 58, 1, 58, 3, 58, 1484,
8, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 3, 58, 1491, 8, 58, 1, 58, 3, 58, 1494, 8, 58,
1, 58, 1, 58, 1, 58, 1, 58, 3, 58, 1500, 8, 58, 1, 59, 1, 59, 1, 59, 5, 59, 1505, 8, 59,
10, 59, 12, 59, 1508, 9, 59, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 3, 60, 1515, 8, 60, 1,
61, 1, 61, 1, 62, 1, 62, 1, 62, 5, 62, 1522, 8, 62, 10, 62, 12, 62, 1525, 9, 62, 1, 63,
1, 63, 1, 63, 1, 63, 1, 63, 1, 63, 3, 63, 1533, 8, 63, 1, 64, 1, 64, 1, 64, 1, 64, 1, 64,
3, 64, 1540, 8, 64, 1, 65, 1, 65, 1, 65, 1, 65, 1, 66, 1, 66, 1, 66, 1, 66, 1, 67, 1, 67,
1, 67, 1, 67, 1, 68, 1, 68, 1, 68, 1, 68, 1, 69, 1, 69, 3, 69, 1560, 8, 69, 1, 69, 1, 69,
1, 69, 1, 69, 1, 69, 3, 69, 1567, 8, 69, 3, 69, 1569, 8, 69, 1, 70, 1, 70, 1, 70, 5, 70,
1574, 8, 70, 10, 70, 12, 70, 1577, 9, 70, 1, 71, 1, 71, 1, 71, 1, 72, 1, 72, 1, 73, 1,
73, 3, 73, 1586, 8, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 3, 73, 1594, 8, 73, 1,
74, 1, 74, 3, 74, 1598, 8, 74, 1, 74, 1, 74, 3, 74, 1602, 8, 74, 1, 74, 1, 74, 1, 75, 1,
75, 1, 75, 1, 76, 1, 76, 1, 76, 1, 76, 1, 76, 1, 76, 3, 76, 1615, 8, 76, 1, 76, 1, 76, 1,
76, 1, 77, 1, 77, 1, 77, 1, 77, 3, 77, 1624, 8, 77, 1, 77, 1, 77, 1, 78, 1, 78, 1, 78, 1,
78, 1, 78, 1, 78, 1, 78, 1, 78, 1, 78, 1, 78, 1, 78, 1, 78, 3, 78, 1640, 8, 78, 1, 78, 1,
78, 3, 78, 1644, 8, 78, 1, 78, 1, 78, 1, 78, 3, 78, 1649, 8, 78, 1, 78, 1, 78, 1, 78, 3,
78, 1654, 8, 78, 1, 78, 3, 78, 1657, 8, 78, 1, 78, 3, 78, 1660, 8, 78, 1, 78, 3, 78, 1663,
8, 78, 1, 78, 3, 78, 1666, 8, 78, 1, 78, 3, 78, 1669, 8, 78, 1, 79, 1, 79, 1, 79, 3, 79,
1674, 8, 79, 1, 79, 1, 79, 1, 79, 1, 79, 1, 80, 1, 80, 1, 80, 3, 80, 1683, 8, 80, 1, 80,
1, 80, 3, 80, 1687, 8, 80, 1, 80, 1, 80, 1, 80, 1, 80, 1, 80, 3, 80, 1694, 8, 80, 1, 80,
3, 80, 1697, 8, 80, 1, 80, 3, 80, 1700, 8, 80, 1, 80, 3, 80, 1703, 8, 80, 1, 80, 1, 80,
1, 80, 1, 81, 1, 81, 1, 81, 1, 81, 1, 81, 1, 81, 1, 81, 3, 81, 1715, 8, 81, 1, 81, 1, 81,
1, 82, 1, 82, 3, 82, 1721, 8, 82, 1, 83, 1, 83, 1, 83, 1, 83, 1, 83, 1, 83, 1, 84, 1, 84,
1, 84, 1, 85, 1, 85, 1, 85, 1, 85, 1, 85, 1, 85, 1, 86, 1, 86, 1, 86, 1, 86, 1, 86, 1, 86,
1, 87, 1, 87, 1, 87, 3, 87, 1747, 8, 87, 1, 87, 1, 87, 1, 88, 1, 88, 1, 88, 1, 88, 3, 88,
1755, 8, 88, 1, 88, 1, 88, 3, 88, 1759, 8, 88, 1, 88, 3, 88, 1762, 8, 88, 1, 88, 3, 88,
1765, 8, 88, 1, 88, 3, 88, 1768, 8, 88, 1, 88, 3, 88, 1771, 8, 88, 1, 88, 3, 88, 1774,
8, 88, 1, 88, 3, 88, 1777, 8, 88, 1, 88, 3, 88, 1780, 8, 88, 1, 88, 1, 88, 1, 88, 1, 89,
1, 89, 1, 89, 1, 89, 3, 89, 1789, 8, 89, 1, 89, 1, 89, 1, 90, 1, 90, 1, 90, 1, 90, 1, 90,
1, 90, 3, 90, 1799, 8, 90, 1, 90, 3, 90, 1802, 8, 90, 1, 90, 1, 90, 1, 91, 1, 91, 1, 91,
1, 91, 1, 91, 1, 92, 1, 92, 1, 92, 1, 92, 1, 92, 1, 92, 1, 93, 1, 93, 1, 93, 1, 93, 1, 93,
3, 93, 1822, 8, 93, 1, 94, 1, 94, 1, 94, 1, 94, 3, 94, 1828, 8, 94, 1, 94, 1, 94, 1, 94,
1, 94, 3, 94, 1834, 8, 94, 1, 94, 3, 94, 1837, 8, 94, 3, 94, 1839, 8, 94, 1, 95, 1, 95,
1, 95, 1, 95, 1, 96, 3, 96, 1846, 8, 96, 1, 96, 1, 96, 1, 96, 1, 97, 1, 97, 3, 97, 1853,
8, 97, 1, 98, 1, 98, 1, 98, 1, 99, 1, 99, 1, 99, 1, 100, 1, 100, 1, 100, 1, 100, 1, 100,
3, 100, 1866, 8, 100, 1, 100, 1, 100, 1, 100, 3, 100, 1871, 8, 100, 1, 100, 1, 100,
1, 101, 1, 101, 1, 101, 5, 101, 1878, 8, 101, 10, 101, 12, 101, 1881, 9, 101, 1, 102,
1, 102, 1, 102, 5, 102, 1886, 8, 102, 10, 102, 12, 102, 1889, 9, 102, 1, 103, 1, 103,
1, 103, 1, 103, 1, 103, 3, 103, 1896, 8, 103, 1, 103, 1, 103, 1, 103, 1, 103, 1, 103,
1, 103, 1, 103, 1, 103, 1, 103, 1, 103, 1, 103, 3, 103, 1909, 8, 103, 1, 104, 1, 104,
1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 3, 104, 1922,
8, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 105, 1, 105, 1, 105, 1, 105, 1, 105, 1, 105,
1, 105, 1, 105, 1, 105, 1, 105, 3, 105, 1938, 8, 105, 1, 106, 1, 106, 3, 106, 1942,
8, 106, 1, 107, 1, 107, 1, 107, 1, 108, 1, 108, 1, 108, 1, 109, 1, 109, 1, 109, 1, 109,
1, 109, 1, 109, 1, 109, 3, 109, 1957, 8, 109, 1, 110, 1, 110, 1, 110, 1, 110, 3, 110,
1963, 8, 110, 1, 110, 3, 110, 1966, 8, 110, 1, 110, 3, 110, 1969, 8, 110, 1, 110, 3,
110, 1972, 8, 110, 1, 110, 3, 110, 1975, 8, 110, 1, 111, 1, 111, 3, 111, 1979, 8, 111,
1, 112, 1, 112, 1, 112, 1, 113, 1, 113, 1, 113, 1, 113, 1, 114, 1, 114, 1, 114, 1, 114,
5, 114, 1992, 8, 114, 10, 114, 12, 114, 1995, 9, 114, 3, 114, 1997, 8, 114, 1, 115,
1, 115, 1, 115, 1, 115, 1, 116, 1, 116, 1, 116, 5, 116, 2006, 8, 116, 10, 116, 12, 116,
2009, 9, 116, 1, 117, 1, 117, 1, 117, 1, 117, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118,
1, 118, 1, 118, 3, 118, 2022, 8, 118, 1, 119, 1, 119, 1, 119, 1, 119, 1, 119, 1, 119,
1, 120, 1, 120, 1, 120, 1, 120, 1, 120, 1, 120, 1, 121, 1, 121, 1, 121, 1, 121, 1, 121,
1, 122, 1, 122, 1, 122, 1, 122, 1, 122, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123,
1, 123, 1, 123, 1, 123, 1, 123, 3, 123, 2056, 8, 123, 1, 123, 1, 123, 1, 123, 1, 123,
1, 123, 1, 123, 3, 123, 2064, 8, 123, 1, 123, 1, 123, 1, 123, 3, 123, 2069, 8, 123,
1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 3, 123, 2077, 8, 123, 1, 123, 1, 123,
1, 123, 3, 123, 2082, 8, 123, 1, 123, 1, 123, 1, 123, 3, 123, 2087, 8, 123, 1, 124,
1, 124, 1, 124, 5, 124, 2092, 8, 124, 10, 124, 12, 124, 2095, 9, 124, 1, 125, 1, 125,
1, 125, 5, 125, 2100, 8, 125, 10, 125, 12, 125, 2103, 9, 125, 1, 126, 1, 126, 1, 126,
5, 126, 2108, 8, 126, 10, 126, 12, 126, 2111, 9, 126, 1, 127, 1, 127, 1, 127, 5, 127,
2116, 8, 127, 10, 127, 12, 127, 2119, 9, 127, 1, 128, 1, 128, 3, 128, 2123, 8, 128,
1, 129, 1, 129, 1, 130, 1, 130, 1, 131, 1, 131, 1, 131, 1, 131, 1, 131, 1, 131, 3, 131,
2135, 8, 131, 5, 131, 2137, 8, 131, 10, 131, 12, 131, 2140, 9, 131, 1, 132, 1, 132,
1, 132, 5, 132, 2145, 8, 132, 10, 132, 12, 132, 2148, 9, 132, 1, 133, 1, 133, 1, 133,
1, 133, 1, 134, 1, 134, 3, 134, 2156, 8, 134, 1, 134, 3, 134, 2159, 8, 134, 1, 135,
1, 135, 3, 135, 2163, 8, 135, 1, 136, 1, 136, 1, 137, 1, 137, 1, 137, 3, 137, 2170,
8, 137, 1, 138, 1, 138, 1, 139, 1, 139, 3, 139, 2176, 8, 139, 1, 139, 1, 139, 3, 139,
2180, 8, 139, 1, 140, 1, 140, 1, 140, 1, 140, 3, 140, 2186, 8, 140, 1, 141, 1, 141,
3, 141, 2190, 8, 141, 1, 142, 1, 142, 1, 142, 1, 143, 1, 143, 1, 143, 1, 143, 1, 143,
1, 144, 1, 144, 3, 144, 2202, 8, 144, 1, 144, 1, 144, 1, 144, 1, 144, 1, 144, 1, 144,
1, 144, 3, 144, 2211, 8, 144, 1, 145, 1, 145, 1, 145, 1, 145, 1, 145, 1, 145, 1, 145,
1, 145, 1, 145, 3, 145, 2222, 8, 145, 1, 146, 1, 146, 3, 146, 2226, 8, 146, 1, 147,
1, 147, 1, 147, 5, 147, 2231, 8, 147, 10, 147, 12, 147, 2234, 9, 147, 1, 148, 1, 148,
1, 148, 1, 148, 1, 149, 1, 149, 1, 149, 5, 149, 2243, 8, 149, 10, 149, 12, 149, 2246,
9, 149, 1, 150, 1, 150, 1, 151, 1, 151, 1, 151, 1, 152, 1, 152, 3, 152, 2255, 8, 152,
1, 152, 3, 152, 2258, 8, 152, 1, 153, 1, 153, 1, 153, 5, 153, 2263, 8, 153, 10, 153,
12, 153, 2266, 9, 153, 1, 154, 1, 154, 1, 154, 3, 154, 2271, 8, 154, 1, 155, 1, 155,
3, 155, 2275, 8, 155, 1, 155, 3, 155, 2278, 8, 155, 1, 155, 3, 155, 2281, 8, 155, 1,
156, 1, 156, 1, 156, 1, 156, 3, 156, 2287, 8, 156, 1, 157, 1, 157, 3, 157, 2291, 8,
157, 1, 158, 1, 158, 3, 158, 2295, 8, 158, 1, 159, 1, 159, 1, 159, 3, 159, 2300, 8,
159, 1, 159, 1, 159, 3, 159, 2304, 8, 159, 1, 160, 1, 160, 3, 160, 2308, 8, 160, 1,
161, 1, 161, 3, 161, 2312, 8, 161, 1, 161, 1, 161, 1, 161, 1, 161, 1, 161, 1, 161, 3,
161, 2320, 8, 161, 1, 162, 1, 162, 3, 162, 2324, 8, 162, 1, 162, 1, 162, 3, 162, 2328,
8, 162, 1, 163, 1, 163, 3, 163, 2332, 8, 163, 1, 164, 1, 164, 3, 164, 2336, 8, 164,
1, 164, 1, 164, 1, 164, 1, 164, 1, 164, 1, 164, 3, 164, 2344, 8, 164, 1, 165, 1, 165,
3, 165, 2348, 8, 165, 1, 165, 1, 165, 3, 165, 2352, 8, 165, 1, 166, 1, 166, 1, 166,
1, 166, 1, 166, 1, 166, 3, 166, 2360, 8, 166, 1, 167, 1, 167, 1, 167, 3, 167, 2365,
8, 167, 1, 168, 1, 168, 1, 168, 3, 168, 2370, 8, 168, 1, 169, 1, 169, 3, 169, 2374,
8, 169, 1, 170, 1, 170, 3, 170, 2378, 8, 170, 1, 171, 1, 171, 1, 171, 1, 171, 1, 171,
3, 171, 2385, 8, 171, 1, 172, 1, 172, 1, 173, 1, 173, 1, 173, 5, 173, 2392, 8, 173,
10, 173, 12, 173, 2395, 9, 173, 1, 174, 1, 174, 1, 174, 1, 174, 1, 174, 3, 174, 2402,
8, 174, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175,
3, 175, 2414, 8, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175,
1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 1, 175, 3, 175, 2432, 8, 175,
1, 175, 3, 175, 2435, 8, 175, 1, 175, 1, 175, 1, 175, 1, 175, 3, 175, 2441, 8, 175,
1, 176, 1, 176, 1, 176, 1, 176, 1, 176, 1, 177, 1, 177, 1, 177, 1, 177, 1, 177, 1, 178,
1, 178, 1, 178, 1, 178, 1, 178, 1, 178, 1, 178, 1, 179, 1, 179, 1, 179, 1, 179, 1, 179,
1, 180, 1, 180, 3, 180, 2467, 8, 180, 1, 181, 3, 181, 2470, 8, 181, 1, 181, 1, 181,
1, 182, 1, 182, 3, 182, 2476, 8, 182, 1, 183, 1, 183, 1, 183, 1, 183, 5, 183, 2482,
8, 183, 10, 183, 12, 183, 2485, 9, 183, 1, 184, 1, 184, 1, 184, 1, 184, 1, 184, 3, 184,
2492, 8, 184, 1, 184, 1, 184, 1, 184, 1, 184, 1, 184, 1, 185, 1, 185, 1, 185, 1, 185,
5, 185, 2503, 8, 185, 10, 185, 12, 185, 2506, 9, 185, 1, 186, 1, 186, 1, 186, 1, 186,
3, 186, 2512, 8, 186, 1, 186, 3, 186, 2515, 8, 186, 1, 186, 3, 186, 2518, 8, 186, 1,
186, 3, 186, 2521, 8, 186, 1, 186, 3, 186, 2524, 8, 186, 1, 186, 3, 186, 2527, 8, 186,
1, 186, 3, 186, 2530, 8, 186, 1, 186, 3, 186, 2533, 8, 186, 1, 186, 3, 186, 2536, 8,
186, 1, 186, 3, 186, 2539, 8, 186, 1, 186, 3, 186, 2542, 8, 186, 1, 186, 1, 186, 1,
186, 3, 186, 2547, 8, 186, 1, 186, 3, 186, 2550, 8, 186, 1, 186, 3, 186, 2553, 8, 186,
1, 186, 3, 186, 2556, 8, 186, 1, 186, 3, 186, 2559, 8, 186, 1, 186, 3, 186, 2562, 8,
186, 1, 186, 3, 186, 2565, 8, 186, 1, 186, 3, 186, 2568, 8, 186, 1, 186, 3, 186, 2571,
8, 186, 1, 186, 3, 186, 2574, 8, 186, 1, 186, 3, 186, 2577, 8, 186, 3, 186, 2579, 8,
186, 1, 187, 1, 187, 1, 187, 1, 187, 3, 187, 2585, 8, 187, 1, 188, 1, 188, 3, 188, 2589,
8, 188, 1, 188, 3, 188, 2592, 8, 188, 1, 188, 3, 188, 2595, 8, 188, 1, 188, 3, 188,
2598, 8, 188, 1, 188, 3, 188, 2601, 8, 188, 1, 188, 3, 188, 2604, 8, 188, 1, 188, 1,
188, 1, 188, 1, 188, 1, 188, 3, 188, 2611, 8, 188, 1, 189, 1, 189, 3, 189, 2615, 8,
189, 1, 189, 3, 189, 2618, 8, 189, 1, 189, 3, 189, 2621, 8, 189, 1, 189, 3, 189, 2624,
8, 189, 1, 189, 3, 189, 2627, 8, 189, 1, 189, 3, 189, 2630, 8, 189, 1, 190, 1, 190,
1, 190, 4, 190, 2635, 8, 190, 11, 190, 12, 190, 2636, 1, 191, 3, 191, 2640, 8, 191,
1, 191, 1, 191, 1, 192, 1, 192, 1, 192, 1, 192, 3, 192, 2648, 8, 192, 1, 192, 1, 192,
3, 192, 2652, 8, 192, 1, 192, 1, 192, 1, 192, 1, 192, 1, 192, 3, 192, 2659, 8, 192,
3, 192, 2661, 8, 192, 1, 193, 3, 193, 2664, 8, 193, 1, 193, 1, 193, 1, 193, 3, 193,
2669, 8, 193, 1, 193, 3, 193, 2672, 8, 193, 1, 193, 1, 193, 3, 193, 2676, 8, 193, 1,
194, 1, 194, 1, 194, 3, 194, 2681, 8, 194, 1, 194, 1, 194, 1, 194, 1, 194, 3, 194, 2687,
8, 194, 1, 195, 1, 195, 1, 195, 1, 195, 1, 196, 1, 196, 3, 196, 2695, 8, 196, 1, 197,
1, 197, 1, 197, 1, 197, 5, 197, 2701, 8, 197, 10, 197, 12, 197, 2704, 9, 197, 1, 198,
1, 198, 1, 198, 1, 198, 1, 198, 5, 198, 2711, 8, 198, 10, 198, 12, 198, 2714, 9, 198,
3, 198, 2716, 8, 198, 1, 198, 1, 198, 3, 198, 2720, 8, 198, 1, 198, 1, 198, 3, 198,
2724, 8, 198, 1, 198, 1, 198, 1, 198, 3, 198, 2729, 8, 198, 1, 199, 1, 199, 1, 199,
1, 199, 1, 199, 3, 199, 2736, 8, 199, 1, 200, 1, 200, 5, 200, 2740, 8, 200, 10, 200,
12, 200, 2743, 9, 200, 1, 200, 3, 200, 2746, 8, 200, 1, 201, 1, 201, 1, 201, 1, 201,
1, 201, 3, 201, 2753, 8, 201, 1, 201, 1, 201, 1, 201, 3, 201, 2758, 8, 201, 1, 201,
1, 201, 1, 201, 1, 202, 1, 202, 1, 202, 1, 202, 1, 202, 1, 202, 1, 202, 1, 202, 3, 202,
2771, 8, 202, 1, 203, 1, 203, 1, 203, 1, 203, 1, 203, 1, 203, 3, 203, 2779, 8, 203,
1, 204, 1, 204, 1, 204, 1, 205, 1, 205, 1, 205, 1, 206, 1, 206, 1, 206, 1, 207, 1, 207,
1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 3, 207, 2798, 8, 207, 1, 207, 1, 207,
1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 3, 207, 2808, 8, 207, 1, 207, 1, 207,
1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 1, 207, 3, 207, 2821,
8, 207, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 3, 208, 2831,
8, 208, 1, 208, 1, 208, 3, 208, 2835, 8, 208, 4, 208, 2837, 8, 208, 11, 208, 12, 208,
2838, 1, 208, 1, 208, 5, 208, 2843, 8, 208, 10, 208, 12, 208, 2846, 9, 208, 1, 208,
1, 208, 5, 208, 2850, 8, 208, 10, 208, 12, 208, 2853, 9, 208, 1, 208, 1, 208, 5, 208,
2857, 8, 208, 10, 208, 12, 208, 2860, 9, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208,
1, 208, 3, 208, 2868, 8, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 3, 208, 2875,
8, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208,
1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 3, 208, 2895, 8, 208,
1, 208, 3, 208, 2898, 8, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 1, 208,
1, 208, 1, 208, 1, 208, 1, 208, 1, 208, 3, 208, 2912, 8, 208, 1, 209, 1, 209, 1, 209,
1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 3, 209,
2927, 8, 209, 1, 209, 1, 209, 3, 209, 2931, 8, 209, 1, 209, 1, 209, 1, 209, 1, 209,
1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209,
1, 209, 5, 209, 2949, 8, 209, 10, 209, 12, 209, 2952, 9, 209, 1, 209, 1, 209, 1, 209,
1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 3, 209, 2963, 8, 209, 1, 209, 1, 209,
1, 209, 1, 209, 3, 209, 2969, 8, 209, 1, 209, 3, 209, 2972, 8, 209, 1, 209, 3, 209,
2975, 8, 209, 1, 209, 1, 209, 1, 209, 1, 209, 3, 209, 2981, 8, 209, 1, 209, 1, 209,
1, 209, 1, 209, 3, 209, 2987, 8, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 3, 209,
2994, 8, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 3, 209, 3002, 8, 209,
1, 209, 1, 209, 1, 209, 1, 209, 3, 209, 3008, 8, 209, 1, 209, 1, 209, 3, 209, 3012,
8, 209, 1, 209, 1, 209, 1, 209, 3, 209, 3017, 8, 209, 1, 209, 3, 209, 3020, 8, 209,
1, 209, 1, 209, 3, 209, 3024, 8, 209, 1, 209, 1, 209, 1, 209, 1, 209, 1, 209, 3, 209,
3031, 8, 209, 1, 209, 1, 209, 1, 209, 3, 209, 3036, 8, 209, 1, 209, 1, 209, 1, 209,
3, 209, 3041, 8, 209, 1, 209, 3, 209, 3044, 8, 209, 3, 209, 3046, 8, 209, 1, 210, 1,
210, 1, 210, 1, 210, 1, 210, 1, 210, 3, 210, 3054, 8, 210, 1, 210, 1, 210, 1, 210, 1,
210, 1, 210, 1, 210, 3, 210, 3062, 8, 210, 1, 210, 1, 210, 3, 210, 3066, 8, 210, 4,
210, 3068, 8, 210, 11, 210, 12, 210, 3069, 1, 210, 1, 210, 3, 210, 3074, 8, 210, 1,
211, 1, 211, 1, 211, 1, 211, 1, 211, 1, 211, 1, 211, 1, 211, 1, 211, 1, 211, 1, 211,
1, 211, 1, 211, 1, 211, 1, 211, 3, 211, 3091, 8, 211, 1, 212, 1, 212, 1, 212, 1, 212,
1, 212, 1, 212, 1, 212, 1, 212, 1, 212, 1, 212, 1, 212, 1, 212, 1, 212, 1, 212, 1, 212,
3, 212, 3108, 8, 212, 1, 213, 1, 213, 1, 213, 1, 214, 1, 214, 3, 214, 3115, 8, 214,
1, 214, 1, 214, 1, 214, 1, 214, 1, 214, 5, 214, 3122, 8, 214, 10, 214, 12, 214, 3125,
9, 214, 1, 214, 1, 214, 3, 214, 3129, 8, 214, 1, 214, 3, 214, 3132, 8, 214, 1, 214,
3, 214, 3135, 8, 214, 1, 215, 1, 215, 3, 215, 3139, 8, 215, 1, 215, 1, 215, 1, 215,
1, 216, 1, 216, 1, 216, 1, 216, 1, 216, 1, 216, 1, 216, 1, 216, 1, 216, 1, 216, 3, 216,
3154, 8, 216, 1, 216, 1, 216, 1, 217, 1, 217, 1, 217, 1, 217, 1, 217, 1, 217, 1, 217,
1, 217, 1, 217, 1, 217, 3, 217, 3168, 8, 217, 1, 217, 3, 217, 3171, 8, 217, 1, 218,
1, 218, 1, 218, 1, 218, 1, 218, 1, 218, 1, 218, 1, 218, 1, 218, 3, 218, 3182, 8, 218,
1, 219, 1, 219, 3, 219, 3186, 8, 219, 1, 219, 3, 219, 3189, 8, 219, 1, 219, 3, 219,
3192, 8, 219, 1, 219, 1, 219, 3, 219, 3196, 8, 219, 1, 219, 1, 219, 1, 219, 3, 219,
3201, 8, 219, 1, 219, 3, 219, 3204, 8, 219, 1, 219, 3, 219, 3207, 8, 219, 1, 219, 3,
219, 3210, 8, 219, 1, 219, 3, 219, 3213, 8, 219, 1, 219, 3, 219, 3216, 8, 219, 1, 219,
1, 219, 1, 219, 1, 219, 3, 219, 3222, 8, 219, 1, 219, 3, 219, 3225, 8, 219, 1, 219,
3, 219, 3228, 8, 219, 1, 219, 3, 219, 3231, 8, 219, 1, 219, 3, 219, 3234, 8, 219, 1,
219, 3, 219, 3237, 8, 219, 1, 219, 3, 219, 3240, 8, 219, 1, 219, 3, 219, 3243, 8, 219,
1, 219, 3, 219, 3246, 8, 219, 1, 219, 3, 219, 3249, 8, 219, 1, 219, 1, 219, 3, 219,
3253, 8, 219, 3, 219, 3255, 8, 219, 1, 219, 1, 219, 1, 219, 1, 219, 3, 219, 3261, 8,
219, 1, 219, 1, 219, 1, 219, 3, 219, 3266, 8, 219, 1, 219, 3, 219, 3269, 8, 219, 1,
219, 3, 219, 3272, 8, 219, 1, 219, 3, 219, 3275, 8, 219, 1, 219, 3, 219, 3278, 8, 219,
1, 219, 1, 219, 1, 219, 1, 219, 3, 219, 3284, 8, 219, 1, 219, 3, 219, 3287, 8, 219,
1, 219, 3, 219, 3290, 8, 219, 1, 219, 3, 219, 3293, 8, 219, 1, 219, 3, 219, 3296, 8,
219, 1, 219, 3, 219, 3299, 8, 219, 1, 219, 3, 219, 3302, 8, 219, 1, 219, 3, 219, 3305,
8, 219, 1, 219, 3, 219, 3308, 8, 219, 1, 219, 3, 219, 3311, 8, 219, 1, 219, 1, 219,
3, 219, 3315, 8, 219, 3, 219, 3317, 8, 219, 3, 219, 3319, 8, 219, 1, 220, 1, 220, 1,
220, 3, 220, 3324, 8, 220, 1, 220, 1, 220, 1, 220, 3, 220, 3329, 8, 220, 1, 220, 1,
220, 3, 220, 3333, 8, 220, 1, 220, 1, 220, 3, 220, 3337, 8, 220, 1, 220, 1, 220, 1,
220, 3, 220, 3342, 8, 220, 1, 221, 1, 221, 1, 221, 3, 221, 3347, 8, 221, 1, 221, 1,
221, 1, 222, 1, 222, 1, 222, 5, 222, 3354, 8, 222, 10, 222, 12, 222, 3357, 9, 222,
1, 222, 1, 222, 1, 223, 1, 223, 1, 223, 5, 223, 3364, 8, 223, 10, 223, 12, 223, 3367,
9, 223, 1, 224, 1, 224, 1, 224, 5, 224, 3372, 8, 224, 10, 224, 12, 224, 3375, 9, 224,
1, 225, 1, 225, 1, 225, 1, 226, 1, 226, 1, 226, 1, 226, 4, 226, 3384, 8, 226, 11, 226,
12, 226, 3385, 1, 226, 3, 226, 3389, 8, 226, 1, 227, 1, 227, 5, 227, 3393, 8, 227,
10, 227, 12, 227, 3396, 9, 227, 1, 227, 1, 227, 5, 227, 3400, 8, 227, 10, 227, 12,
227, 3403, 9, 227, 1, 227, 1, 227, 5, 227, 3407, 8, 227, 10, 227, 12, 227, 3410, 9,
227, 1, 227, 1, 227, 5, 227, 3414, 8, 227, 10, 227, 12, 227, 3417, 9, 227, 1, 227,
1, 227, 1, 227, 1, 227, 3, 227, 3423, 8, 227, 1, 228, 1, 228, 1, 228, 1, 228, 1, 228,
1, 228, 1, 228, 3, 228, 3432, 8, 228, 5, 228, 3434, 8, 228, 10, 228, 12, 228, 3437,
9, 228, 1, 229, 1, 229, 1, 229, 1, 229, 3, 229, 3443, 8, 229, 1, 229, 5, 229, 3446,
8, 229, 10, 229, 12, 229, 3449, 9, 229, 1, 230, 3, 230, 3452, 8, 230, 1, 230, 1, 230,
3, 230, 3456, 8, 230, 1, 230, 3, 230, 3459, 8, 230, 1, 230, 3, 230, 3462, 8, 230, 1,
230, 1, 230, 1, 230, 1, 230, 1, 231, 1, 231, 1, 231, 1, 231, 1, 231, 3, 231, 3473, 8,
231, 1, 231, 1, 231, 3, 231, 3477, 8, 231, 3, 231, 3479, 8, 231, 1, 231, 3, 231, 3482,
8, 231, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 5, 232,
3493, 8, 232, 10, 232, 12, 232, 3496, 9, 232, 3, 232, 3498, 8, 232, 1, 232, 3, 232,
3501, 8, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232, 5, 232,
3511, 8, 232, 10, 232, 12, 232, 3514, 9, 232, 3, 232, 3516, 8, 232, 1, 232, 1, 232,
1, 232, 1, 232, 1, 232, 3, 232, 3523, 8, 232, 1, 232, 1, 232, 1, 232, 1, 232, 1, 232,
5, 232, 3530, 8, 232, 10, 232, 12, 232, 3533, 9, 232, 1, 232, 1, 232, 3, 232, 3537,
8, 232, 3, 232, 3539, 8, 232, 3, 232, 3541, 8, 232, 1, 233, 1, 233, 1, 234, 1, 234,
1, 234, 1, 234, 1, 234, 1, 234, 1, 234, 1, 234, 1, 234, 1, 234, 1, 234, 5, 234, 3556,
8, 234, 10, 234, 12, 234, 3559, 9, 234, 3, 234, 3561, 8, 234, 1, 234, 1, 234, 1, 234,
1, 234, 1, 234, 1, 234, 3, 234, 3569, 8, 234, 1, 234, 3, 234, 3572, 8, 234, 1, 235,
1, 235, 3, 235, 3576, 8, 235, 1, 235, 3, 235, 3579, 8, 235, 1, 235, 3, 235, 3582, 8,
235, 1, 235, 3, 235, 3585, 8, 235, 1, 235, 3, 235, 3588, 8, 235, 1, 236, 1, 236, 1,
236, 1, 236, 1, 236, 1, 236, 1, 236, 1, 236, 1, 236, 1, 236, 3, 236, 3600, 8, 236, 1,
237, 1, 237, 1, 238, 1, 238, 1, 239, 1, 239, 3, 239, 3608, 8, 239, 1, 240, 1, 240, 1,
240, 1, 240, 1, 240, 3, 240, 3615, 8, 240, 1, 240, 3, 240, 3618, 8, 240, 1, 241, 1,
241, 1, 241, 1, 241, 1, 241, 3, 241, 3625, 8, 241, 1, 241, 3, 241, 3628, 8, 241, 1,
242, 1, 242, 1, 242, 3, 242, 3633, 8, 242, 1, 242, 1, 242, 1, 243, 1, 243, 1, 243, 3,
243, 3640, 8, 243, 1, 243, 1, 243, 1, 244, 1, 244, 1, 244, 1, 244, 3, 244, 3648, 8,
244, 1, 244, 1, 244, 1, 245, 1, 245, 3, 245, 3654, 8, 245, 1, 245, 1, 245, 1, 245, 3,
245, 3659, 8, 245, 1, 245, 1, 245, 3, 245, 3663, 8, 245, 1, 246, 1, 246, 1, 246, 3,
246, 3668, 8, 246, 1, 247, 1, 247, 1, 247, 1, 247, 1, 247, 3, 247, 3675, 8, 247, 1,
247, 1, 247, 1, 247, 1, 247, 1, 247, 1, 247, 1, 247, 1, 247, 1, 247, 1, 247, 5, 247,
3687, 8, 247, 10, 247, 12, 247, 3690, 9, 247, 3, 247, 3692, 8, 247, 1, 247, 1, 247,
3, 247, 3696, 8, 247, 1, 248, 1, 248, 1, 248, 1, 249, 1, 249, 1, 249, 1, 249, 5, 249,
3705, 8, 249, 10, 249, 12, 249, 3708, 9, 249, 1, 249, 1, 249, 1, 249, 1, 249, 1, 249,
5, 249, 3715, 8, 249, 10, 249, 12, 249, 3718, 9, 249, 3, 249, 3720, 8, 249, 1, 250,
1, 250, 1, 250, 1, 250, 1, 250, 3, 250, 3727, 8, 250, 1, 250, 1, 250, 1, 250, 1, 250,
1, 250, 5, 250, 3734, 8, 250, 10, 250, 12, 250, 3737, 9, 250, 3, 250, 3739, 8, 250,
1, 250, 1, 250, 1, 251, 1, 251, 3, 251, 3745, 8, 251, 1, 251, 3, 251, 3748, 8, 251,
1, 251, 1, 251, 1, 251, 5, 251, 3753, 8, 251, 10, 251, 12, 251, 3756, 9, 251, 1, 251,
1, 251, 3, 251, 3760, 8, 251, 1, 251, 3, 251, 3763, 8, 251, 1, 252, 1, 252, 1, 252,
1, 252, 1, 252, 1, 252, 1, 252, 1, 252, 1, 252, 1, 252, 1, 252, 3, 252, 3776, 8, 252,
1, 252, 1, 252, 1, 252, 1, 252, 3, 252, 3782, 8, 252, 3, 252, 3784, 8, 252, 1, 252,
1, 252, 1, 252, 1, 253, 1, 253, 1, 253, 3, 253, 3792, 8, 253, 1, 253, 3, 253, 3795,
8, 253, 1, 253, 1, 253, 1, 253, 1, 253, 1, 253, 1, 253, 5, 253, 3803, 8, 253, 10, 253,
12, 253, 3806, 9, 253, 1, 253, 1, 253, 3, 253, 3810, 8, 253, 3, 253, 3812, 8, 253,
1, 254, 1, 254, 1, 254, 1, 254, 1, 254, 1, 254, 1, 254, 1, 254, 1, 254, 1, 254, 3, 254,
3824, 8, 254, 1, 254, 1, 254, 1, 254, 1, 254, 3, 254, 3830, 8, 254, 3, 254, 3832, 8,
254, 1, 254, 1, 254, 1, 254, 1, 255, 1, 255, 3, 255, 3839, 8, 255, 1, 256, 1, 256, 1,
256, 5, 256, 3844, 8, 256, 10, 256, 12, 256, 3847, 9, 256, 1, 257, 1, 257, 1, 257,
1, 257, 1, 257, 1, 257, 1, 257, 1, 257, 1, 257, 5, 257, 3858, 8, 257, 10, 257, 12, 257,
3861, 9, 257, 1, 258, 1, 258, 1, 258, 3, 258, 3866, 8, 258, 1, 258, 3, 258, 3869, 8,
258, 1, 258, 3, 258, 3872, 8, 258, 1, 258, 3, 258, 3875, 8, 258, 1, 259, 1, 259, 1,
259, 1, 259, 1, 259, 1, 259, 1, 259, 3, 259, 3884, 8, 259, 1, 259, 1, 259, 1, 259, 1,
259, 1, 259, 3, 259, 3891, 8, 259, 1, 260, 1, 260, 1, 260, 1, 260, 3, 260, 3897, 8,
260, 1, 261, 1, 261, 1, 261, 1, 261, 1, 261, 1, 261, 1, 261, 3, 261, 3906, 8, 261, 1,
262, 1, 262, 3, 262, 3910, 8, 262, 1, 262, 1, 262, 1, 262, 1, 262, 5, 262, 3916, 8,
262, 10, 262, 12, 262, 3919, 9, 262, 1, 262, 1, 262, 1, 263, 1, 263, 1, 263, 1, 263,
1, 263, 3, 263, 3928, 8, 263, 1, 263, 1, 263, 1, 263, 1, 263, 1, 263, 1, 263, 5, 263,
3936, 8, 263, 10, 263, 12, 263, 3939, 9, 263, 1, 263, 1, 263, 3, 263, 3943, 8, 263,
1, 264, 1, 264, 3, 264, 3947, 8, 264, 1, 264, 1, 264, 5, 264, 3951, 8, 264, 10, 264,
12, 264, 3954, 9, 264, 1, 264, 1, 264, 3, 264, 3958, 8, 264, 1, 265, 1, 265, 1, 265,
1, 266, 1, 266, 1, 266, 1, 267, 1, 267, 3, 267, 3968, 8, 267, 1, 268, 1, 268, 3, 268,
3972, 8, 268, 1, 268, 3, 268, 3975, 8, 268, 1, 268, 1, 268, 1, 268, 3, 268, 3980, 8,
268, 1, 268, 3, 268, 3983, 8, 268, 5, 268, 3985, 8, 268, 10, 268, 12, 268, 3988, 9,
268, 1, 269, 1, 269, 3, 269, 3992, 8, 269, 1, 270, 1, 270, 1, 270, 1, 270, 1, 271, 1,
271, 1, 271, 4, 271, 4001, 8, 271, 11, 271, 12, 271, 4002, 3, 271, 4005, 8, 271, 1,
272, 1, 272, 1, 272, 1, 272, 1, 272, 5, 272, 4012, 8, 272, 10, 272, 12, 272, 4015,
9, 272, 1, 273, 1, 273, 1, 273, 1, 273, 1, 274, 1, 274, 1, 274, 1, 274, 1, 275, 1, 275,
1, 275, 1, 275, 1, 276, 1, 276, 1, 276, 1, 276, 1, 276, 1, 276, 5, 276, 4035, 8, 276,
10, 276, 12, 276, 4038, 9, 276, 1, 276, 1, 276, 1, 276, 1, 276, 1, 276, 5, 276, 4045,
8, 276, 10, 276, 12, 276, 4048, 9, 276, 3, 276, 4050, 8, 276, 1, 277, 1, 277, 1, 277,
1, 277, 1, 277, 3, 277, 4057, 8, 277, 1, 277, 3, 277, 4060, 8, 277, 1, 277, 1, 277,
1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 3, 277, 4070, 8, 277, 1, 277, 1, 277,
1, 277, 5, 277, 4075, 8, 277, 10, 277, 12, 277, 4078, 9, 277, 3, 277, 4080, 8, 277,
3, 277, 4082, 8, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277,
1, 277, 3, 277, 4093, 8, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277, 1, 277,
1, 277, 3, 277, 4103, 8, 277, 3, 277, 4105, 8, 277, 1, 278, 1, 278, 1, 278, 1, 279,
1, 279, 1, 280, 1, 280, 3, 280, 4114, 8, 280, 1, 281, 1, 281, 1, 281, 3, 281, 4119,
8, 281, 1, 282, 1, 282, 1, 282, 1, 282, 1, 282, 1, 282, 1, 282, 3, 282, 4128, 8, 282,
1, 282, 1, 282, 1, 283, 1, 283, 1, 283, 1, 283, 1, 283, 1, 283, 1, 283, 4, 283, 4139,
8, 283, 11, 283, 12, 283, 4140, 1, 283, 1, 283, 3, 283, 4145, 8, 283, 1, 283, 1, 283,
1, 284, 1, 284, 1, 284, 1, 284, 1, 284, 1, 284, 4, 284, 4155, 8, 284, 11, 284, 12, 284,
4156, 1, 284, 1, 284, 3, 284, 4161, 8, 284, 1, 284, 1, 284, 1, 285, 1, 285, 1, 285,
1, 285, 1, 285, 3, 285, 4170, 8, 285, 1, 285, 1, 285, 1, 286, 1, 286, 1, 286, 1, 286,
1, 286, 1, 286, 1, 286, 1, 287, 1, 287, 1, 287, 1, 287, 1, 287, 1, 287, 1, 287, 1, 287,
3, 287, 4189, 8, 287, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288,
1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 5, 288, 4205, 8, 288, 10, 288, 12, 288,
4208, 9, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288, 1, 288,
3, 288, 4219, 8, 288, 1, 289, 1, 289, 1, 290, 1, 290, 1, 290, 1, 290, 1, 290, 1, 290,
1, 290, 1, 290, 1, 290, 1, 290, 1, 290, 3, 290, 4234, 8, 290, 1, 290, 1, 290, 3, 290,
4238, 8, 290, 1, 291, 1, 291, 1, 291, 1, 291, 1, 291, 1, 291, 1, 291, 1, 291, 1, 291,
1, 291, 1, 291, 1, 291, 1, 291, 1, 291, 3, 291, 4254, 8, 291, 1, 292, 1, 292, 1, 292,
5, 292, 4259, 8, 292, 10, 292, 12, 292, 4262, 9, 292, 1, 293, 1, 293, 1, 293, 1, 293,
1, 293, 1, 293, 1, 293, 1, 293, 1, 293, 1, 293, 1, 293, 3, 293, 4275, 8, 293, 1, 294,
5, 294, 4278, 8, 294, 10, 294, 12, 294, 4281, 9, 294, 1, 294, 1, 294, 1, 294, 1, 294,
1, 294, 1, 294, 1, 294, 5, 294, 4290, 8, 294, 10, 294, 12, 294, 4293, 9, 294, 1, 295,
1, 295, 1, 295, 5, 295, 4298, 8, 295, 10, 295, 12, 295, 4301, 9, 295, 1, 296, 1, 296,
1, 296, 5, 296, 4306, 8, 296, 10, 296, 12, 296, 4309, 9, 296, 1, 297, 1, 297, 1, 297,
5, 297, 4314, 8, 297, 10, 297, 12, 297, 4317, 9, 297, 1, 298, 1, 298, 1, 298, 5, 298,
4322, 8, 298, 10, 298, 12, 298, 4325, 9, 298, 1, 299, 1, 299, 1, 299, 5, 299, 4330,
8, 299, 10, 299, 12, 299, 4333, 9, 299, 1, 300, 1, 300, 1, 300, 5, 300, 4338, 8, 300,
10, 300, 12, 300, 4341, 9, 300, 1, 301, 1, 301, 1, 302, 1, 302, 1, 302, 1, 302, 1, 303,
1, 303, 3, 303, 4351, 8, 303, 1, 303, 1, 303, 3, 303, 4355, 8, 303, 1, 304, 1, 304,
1, 304, 1, 304, 1, 304, 1, 304, 3, 304, 4363, 8, 304, 1, 305, 1, 305, 1, 305, 1, 305,
1, 305, 1, 305, 1, 305, 1, 305, 1, 305, 1, 305, 1, 305, 1, 305, 1, 305, 1, 305, 3, 305,
4379, 8, 305, 1, 306, 1, 306, 3, 306, 4383, 8, 306, 1, 307, 1, 307, 1, 307, 3, 307,
4388, 8, 307, 1, 308, 1, 308, 1, 308, 1, 308, 1, 309, 1, 309, 1, 309, 1, 309, 1, 309,
1, 309, 1, 309, 3, 309, 4401, 8, 309, 1, 310, 1, 310, 1, 310, 1, 310, 1, 310, 1, 310,
1, 310, 5, 310, 4410, 8, 310, 10, 310, 12, 310, 4413, 9, 310, 1, 311, 1, 311, 1, 311,
1, 311, 1, 311, 1, 311, 3, 311, 4421, 8, 311, 1, 312, 5, 312, 4424, 8, 312, 10, 312,
12, 312, 4427, 9, 312, 1, 312, 1, 312, 1, 312, 3, 312, 4432, 8, 312, 1, 313, 1, 313,
1, 313, 5, 313, 4437, 8, 313, 10, 313, 12, 313, 4440, 9, 313, 1, 314, 1, 314, 3, 314,
4444, 8, 314, 1, 315, 1, 315, 1, 315, 1, 315, 1, 315, 5, 315, 4451, 8, 315, 10, 315,
12, 315, 4454, 9, 315, 1, 315, 1, 315, 1, 316, 1, 316, 1, 316, 3, 316, 4461, 8, 316,
1, 317, 1, 317, 1, 317, 1, 317, 5, 317, 4467, 8, 317, 10, 317, 12, 317, 4470, 9, 317,
1, 317, 1, 317, 1, 318, 1, 318, 1, 318, 3, 318, 4477, 8, 318, 1, 318, 1, 318, 1, 319,
1, 319, 1, 320, 1, 320, 1, 321, 1, 321, 3, 321, 4487, 8, 321, 1, 322, 1, 322, 1, 322,
3, 322, 4492, 8, 322, 1, 323, 1, 323, 1, 324, 1, 324, 1, 325, 1, 325, 1, 326, 1, 326,
1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326,
1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326,
1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326,
1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 1, 326,
1, 326, 1, 326, 1, 326, 1, 326, 1, 326, 3, 326, 4551, 8, 326, 1, 327, 1, 327, 1, 327,
1, 327, 3, 327, 4557, 8, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
3, 327, 4566, 8, 327, 3, 327, 4568, 8, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 5, 327, 4582, 8, 327, 10, 327,
12, 327, 4585, 9, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 3, 327, 4592, 8, 327,
1, 327, 1, 327, 3, 327, 4596, 8, 327, 3, 327, 4598, 8, 327, 1, 327, 1, 327, 1, 327,
1, 327, 3, 327, 4604, 8, 327, 1, 327, 1, 327, 1, 327, 3, 327, 4609, 8, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 3, 327, 4626, 8, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 3, 327, 4652, 8, 327,
1, 327, 1, 327, 1, 327, 3, 327, 4657, 8, 327, 3, 327, 4659, 8, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 3, 327, 4687, 8, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 1, 327, 3, 327, 4704,
8, 327, 1, 327, 1, 327, 1, 327, 3, 327, 4709, 8, 327, 1, 327, 1, 327, 1, 327, 1, 327,
1, 327, 1, 327, 1, 327, 3, 327, 4718, 8, 327, 1, 328, 1, 328, 1, 329, 1, 329, 1, 329,
1, 329, 1, 329, 1, 329, 1, 329, 3, 329, 4729, 8, 329, 1, 330, 1, 330, 1, 330, 5, 330,
4734, 8, 330, 10, 330, 12, 330, 4737, 9, 330, 1, 331, 1, 331, 1, 331, 3, 331, 4742,
8, 331, 1, 332, 1, 332, 1, 332, 3, 332, 4747, 8, 332, 1, 333, 1, 333, 1, 334, 1, 334,
1, 335, 1, 335, 1, 336, 1, 336, 1, 337, 1, 337, 1, 338, 1, 338, 1, 339, 1, 339, 1, 340,
1, 340, 1, 341, 1, 341, 1, 342, 1, 342, 1, 343, 1, 343, 1, 343, 5, 343, 4772, 8, 343,
10, 343, 12, 343, 4775, 9, 343, 1, 344, 1, 344, 1, 344, 1, 344, 1, 345, 1, 345, 1, 345,
1, 345, 3, 345, 4785, 8, 345, 1, 346, 1, 346, 1, 346, 1, 346, 1, 346, 1, 346, 1, 346,
1, 346, 1, 346, 1, 346, 1, 346, 1, 346, 3, 346, 4799, 8, 346, 1, 347, 1, 347, 1, 347,
5, 347, 4804, 8, 347, 10, 347, 12, 347, 4807, 9, 347, 1, 347, 1, 817, 0, 348, 0, 2,
4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48,
50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92,
94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126,
128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158,
160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190,
192, 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222,
224, 226, 228, 230, 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, 252, 254,
256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 286,
288, 290, 292, 294, 296, 298, 300, 302, 304, 306, 308, 310, 312, 314, 316, 318,
320, 322, 324, 326, 328, 330, 332, 334, 336, 338, 340, 342, 344, 346, 348, 350,
352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 374, 376, 378, 380, 382,
384, 386, 388, 390, 392, 394, 396, 398, 400, 402, 404, 406, 408, 410, 412, 414,
416, 418, 420, 422, 424, 426, 428, 430, 432, 434, 436, 438, 440, 442, 444, 446,
448, 450, 452, 454, 456, 458, 460, 462, 464, 466, 468, 470, 472, 474, 476, 478,
480, 482, 484, 486, 488, 490, 492, 494, 496, 498, 500, 502, 504, 506, 508, 510,
512, 514, 516, 518, 520, 522, 524, 526, 528, 530, 532, 534, 536, 538, 540, 542,
544, 546, 548, 550, 552, 554, 556, 558, 560, 562, 564, 566, 568, 570, 572, 574,
576, 578, 580, 582, 584, 586, 588, 590, 592, 594, 596, 598, 600, 602, 604, 606,
608, 610, 612, 614, 616, 618, 620, 622, 624, 626, 628, 630, 632, 634, 636, 638,
640, 642, 644, 646, 648, 650, 652, 654, 656, 658, 660, 662, 664, 666, 668, 670,
672, 674, 676, 678, 680, 682, 684, 686, 688, 690, 692, 694, 0, 61, 2, 0, 57, 57, 172,
172, 4, 0, 91, 91, 121, 121, 226, 226, 325, 325, 1, 0, 395, 396, 2, 0, 50, 50, 346,
346, 2, 0, 34, 34, 282, 282, 1, 0, 89, 90, 2, 0, 139, 139, 154, 154, 2, 0, 67, 67, 295,
295, 2, 0, 68, 68, 296, 296, 1, 0, 155, 156, 2, 0, 114, 114, 307, 307, 11, 0, 7, 7, 9,
9, 58, 58, 86, 86, 101, 101, 155, 155, 161, 161, 190, 190, 299, 299, 309, 309, 365,
365, 3, 0, 4, 4, 101, 101, 326, 326, 3, 0, 15, 15, 128, 128, 170, 170, 1, 0, 141, 142,
2, 0, 30, 30, 351, 351, 2, 0, 217, 217, 373, 373, 2, 0, 214, 214, 272, 272, 2, 0, 18,
18, 89, 89, 2, 0, 130, 130, 177, 177, 2, 0, 39, 39, 376, 376, 4, 0, 112, 112, 164, 164,
205, 205, 356, 356, 2, 0, 7, 7, 96, 96, 2, 0, 125, 125, 350, 350, 2, 0, 225, 225, 391,
391, 2, 0, 42, 42, 315, 315, 2, 0, 189, 189, 196, 196, 2, 0, 426, 426, 431, 431, 2,
0, 140, 140, 285, 285, 3, 0, 12, 12, 231, 231, 300, 300, 2, 0, 241, 241, 292, 292,
2, 0, 198, 198, 268, 268, 2, 0, 260, 260, 292, 292, 2, 0, 354, 354, 431, 431, 2, 0,
133, 133, 247, 247, 2, 0, 152, 152, 281, 281, 3, 0, 413, 414, 418, 418, 420, 420,
2, 0, 412, 412, 415, 417, 1, 0, 413, 414, 4, 0, 184, 184, 270, 270, 286, 286, 408,
411, 2, 0, 7, 7, 13, 13, 3, 0, 7, 7, 13, 13, 313, 313, 3, 0, 184, 184, 270, 270, 286,
286, 4, 0, 125, 125, 219, 219, 350, 350, 360, 360, 2, 0, 405, 405, 407, 411, 24, 0,
11, 11, 16, 16, 25, 28, 35, 35, 100, 100, 131, 132, 151, 151, 154, 154, 162, 163,
184, 184, 198, 198, 216, 216, 228, 228, 264, 264, 270, 270, 286, 286, 311, 311,
323, 324, 340, 340, 357, 357, 383, 383, 405, 417, 419, 421, 423, 423, 85, 0, 1, 6,
8, 8, 10, 10, 15, 15, 18, 20, 22, 24, 30, 31, 33, 34, 37, 38, 40, 44, 46, 47, 49, 50,
52, 53, 56, 57, 59, 59, 66, 66, 68, 68, 72, 77, 79, 79, 83, 85, 87, 89, 91, 95, 97, 99,
103, 104, 106, 107, 109, 111, 114, 116, 118, 121, 127, 130, 137, 138, 142, 142,
147, 150, 152, 152, 155, 156, 158, 160, 168, 170, 172, 177, 182, 183, 185, 187,
189, 193, 195, 197, 199, 202, 204, 204, 206, 209, 211, 212, 214, 215, 217, 218,
220, 220, 222, 223, 226, 227, 232, 233, 235, 236, 238, 240, 243, 246, 252, 252,
254, 255, 257, 259, 261, 262, 265, 267, 271, 282, 284, 284, 287, 288, 293, 298,
300, 303, 305, 310, 312, 312, 314, 317, 319, 325, 327, 328, 330, 330, 332, 334,
339, 340, 342, 342, 344, 346, 349, 349, 352, 353, 355, 355, 357, 357, 360, 364,
366, 368, 371, 373, 375, 375, 377, 382, 385, 385, 388, 394, 13, 0, 16, 16, 26, 28,
63, 64, 71, 71, 100, 100, 131, 131, 145, 145, 151, 151, 162, 163, 198, 198, 264,
264, 311, 311, 337, 337, 2, 0, 4, 4, 101, 101, 2, 0, 9, 9, 58, 58, 3, 0, 14, 14, 144,
144, 369, 369, 1, 0, 106, 107, 1, 0, 94, 95, 1, 0, 392, 393, 1, 0, 208, 209, 1, 0, 381,
382, 1, 0, 73, 74, 1, 0, 148, 149, 1, 0, 206, 207, 1, 0, 297, 298, 1, 0, 80, 82, 5398,
0, 699, 1, 0, 0, 0, 2, 706, 1, 0, 0, 0, 4, 711, 1, 0, 0, 0, 6, 745, 1, 0, 0, 0, 8, 747, 1,
0, 0, 0, 10, 820, 1, 0, 0, 0, 12, 822, 1, 0, 0, 0, 14, 838, 1, 0, 0, 0, 16, 847, 1, 0, 0,
0, 18, 855, 1, 0, 0, 0, 20, 868, 1, 0, 0, 0, 22, 879, 1, 0, 0, 0, 24, 884, 1, 0, 0, 0, 26,
895, 1, 0, 0, 0, 28, 958, 1, 0, 0, 0, 30, 960, 1, 0, 0, 0, 32, 963, 1, 0, 0, 0, 34, 967,
1, 0, 0, 0, 36, 969, 1, 0, 0, 0, 38, 972, 1, 0, 0, 0, 40, 975, 1, 0, 0, 0, 42, 1019, 1, 0,
0, 0, 44, 1021, 1, 0, 0, 0, 46, 1024, 1, 0, 0, 0, 48, 1027, 1, 0, 0, 0, 50, 1036, 1, 0,
0, 0, 52, 1039, 1, 0, 0, 0, 54, 1054, 1, 0, 0, 0, 56, 1066, 1, 0, 0, 0, 58, 1071, 1, 0,
0, 0, 60, 1091, 1, 0, 0, 0, 62, 1095, 1, 0, 0, 0, 64, 1102, 1, 0, 0, 0, 66, 1127, 1, 0,
0, 0, 68, 1144, 1, 0, 0, 0, 70, 1146, 1, 0, 0, 0, 72, 1331, 1, 0, 0, 0, 74, 1341, 1, 0,
0, 0, 76, 1343, 1, 0, 0, 0, 78, 1348, 1, 0, 0, 0, 80, 1353, 1, 0, 0, 0, 82, 1355, 1, 0,
0, 0, 84, 1359, 1, 0, 0, 0, 86, 1363, 1, 0, 0, 0, 88, 1367, 1, 0, 0, 0, 90, 1371, 1, 0,
0, 0, 92, 1381, 1, 0, 0, 0, 94, 1392, 1, 0, 0, 0, 96, 1409, 1, 0, 0, 0, 98, 1427, 1, 0,
0, 0, 100, 1432, 1, 0, 0, 0, 102, 1435, 1, 0, 0, 0, 104, 1439, 1, 0, 0, 0, 106, 1446,
1, 0, 0, 0, 108, 1455, 1, 0, 0, 0, 110, 1461, 1, 0, 0, 0, 112, 1463, 1, 0, 0, 0, 114, 1477,
1, 0, 0, 0, 116, 1499, 1, 0, 0, 0, 118, 1501, 1, 0, 0, 0, 120, 1509, 1, 0, 0, 0, 122, 1516,
1, 0, 0, 0, 124, 1518, 1, 0, 0, 0, 126, 1532, 1, 0, 0, 0, 128, 1539, 1, 0, 0, 0, 130, 1541,
1, 0, 0, 0, 132, 1545, 1, 0, 0, 0, 134, 1549, 1, 0, 0, 0, 136, 1553, 1, 0, 0, 0, 138, 1557,
1, 0, 0, 0, 140, 1570, 1, 0, 0, 0, 142, 1578, 1, 0, 0, 0, 144, 1581, 1, 0, 0, 0, 146, 1583,
1, 0, 0, 0, 148, 1595, 1, 0, 0, 0, 150, 1605, 1, 0, 0, 0, 152, 1608, 1, 0, 0, 0, 154, 1619,
1, 0, 0, 0, 156, 1627, 1, 0, 0, 0, 158, 1670, 1, 0, 0, 0, 160, 1679, 1, 0, 0, 0, 162, 1707,
1, 0, 0, 0, 164, 1720, 1, 0, 0, 0, 166, 1722, 1, 0, 0, 0, 168, 1728, 1, 0, 0, 0, 170, 1731,
1, 0, 0, 0, 172, 1737, 1, 0, 0, 0, 174, 1743, 1, 0, 0, 0, 176, 1750, 1, 0, 0, 0, 178, 1784,
1, 0, 0, 0, 180, 1792, 1, 0, 0, 0, 182, 1805, 1, 0, 0, 0, 184, 1810, 1, 0, 0, 0, 186, 1821,
1, 0, 0, 0, 188, 1838, 1, 0, 0, 0, 190, 1840, 1, 0, 0, 0, 192, 1845, 1, 0, 0, 0, 194, 1852,
1, 0, 0, 0, 196, 1854, 1, 0, 0, 0, 198, 1857, 1, 0, 0, 0, 200, 1860, 1, 0, 0, 0, 202, 1874,
1, 0, 0, 0, 204, 1882, 1, 0, 0, 0, 206, 1908, 1, 0, 0, 0, 208, 1910, 1, 0, 0, 0, 210, 1927,
1, 0, 0, 0, 212, 1941, 1, 0, 0, 0, 214, 1943, 1, 0, 0, 0, 216, 1946, 1, 0, 0, 0, 218, 1949,
1, 0, 0, 0, 220, 1958, 1, 0, 0, 0, 222, 1978, 1, 0, 0, 0, 224, 1980, 1, 0, 0, 0, 226, 1983,
1, 0, 0, 0, 228, 1996, 1, 0, 0, 0, 230, 1998, 1, 0, 0, 0, 232, 2002, 1, 0, 0, 0, 234, 2010,
1, 0, 0, 0, 236, 2014, 1, 0, 0, 0, 238, 2023, 1, 0, 0, 0, 240, 2029, 1, 0, 0, 0, 242, 2035,
1, 0, 0, 0, 244, 2040, 1, 0, 0, 0, 246, 2086, 1, 0, 0, 0, 248, 2088, 1, 0, 0, 0, 250, 2096,
1, 0, 0, 0, 252, 2104, 1, 0, 0, 0, 254, 2112, 1, 0, 0, 0, 256, 2122, 1, 0, 0, 0, 258, 2124,
1, 0, 0, 0, 260, 2126, 1, 0, 0, 0, 262, 2128, 1, 0, 0, 0, 264, 2141, 1, 0, 0, 0, 266, 2149,
1, 0, 0, 0, 268, 2158, 1, 0, 0, 0, 270, 2162, 1, 0, 0, 0, 272, 2164, 1, 0, 0, 0, 274, 2169,
1, 0, 0, 0, 276, 2171, 1, 0, 0, 0, 278, 2175, 1, 0, 0, 0, 280, 2181, 1, 0, 0, 0, 282, 2189,
1, 0, 0, 0, 284, 2191, 1, 0, 0, 0, 286, 2194, 1, 0, 0, 0, 288, 2201, 1, 0, 0, 0, 290, 2212,
1, 0, 0, 0, 292, 2225, 1, 0, 0, 0, 294, 2227, 1, 0, 0, 0, 296, 2235, 1, 0, 0, 0, 298, 2239,
1, 0, 0, 0, 300, 2247, 1, 0, 0, 0, 302, 2249, 1, 0, 0, 0, 304, 2252, 1, 0, 0, 0, 306, 2259,
1, 0, 0, 0, 308, 2267, 1, 0, 0, 0, 310, 2274, 1, 0, 0, 0, 312, 2282, 1, 0, 0, 0, 314, 2290,
1, 0, 0, 0, 316, 2294, 1, 0, 0, 0, 318, 2296, 1, 0, 0, 0, 320, 2307, 1, 0, 0, 0, 322, 2311,
1, 0, 0, 0, 324, 2323, 1, 0, 0, 0, 326, 2331, 1, 0, 0, 0, 328, 2335, 1, 0, 0, 0, 330, 2347,
1, 0, 0, 0, 332, 2359, 1, 0, 0, 0, 334, 2364, 1, 0, 0, 0, 336, 2369, 1, 0, 0, 0, 338, 2371,
1, 0, 0, 0, 340, 2375, 1, 0, 0, 0, 342, 2379, 1, 0, 0, 0, 344, 2386, 1, 0, 0, 0, 346, 2388,
1, 0, 0, 0, 348, 2401, 1, 0, 0, 0, 350, 2440, 1, 0, 0, 0, 352, 2442, 1, 0, 0, 0, 354, 2447,
1, 0, 0, 0, 356, 2452, 1, 0, 0, 0, 358, 2459, 1, 0, 0, 0, 360, 2464, 1, 0, 0, 0, 362, 2469,
1, 0, 0, 0, 364, 2475, 1, 0, 0, 0, 366, 2477, 1, 0, 0, 0, 368, 2486, 1, 0, 0, 0, 370, 2498,
1, 0, 0, 0, 372, 2578, 1, 0, 0, 0, 374, 2584, 1, 0, 0, 0, 376, 2610, 1, 0, 0, 0, 378, 2612,
1, 0, 0, 0, 380, 2634, 1, 0, 0, 0, 382, 2639, 1, 0, 0, 0, 384, 2643, 1, 0, 0, 0, 386, 2675,
1, 0, 0, 0, 388, 2677, 1, 0, 0, 0, 390, 2688, 1, 0, 0, 0, 392, 2694, 1, 0, 0, 0, 394, 2696,
1, 0, 0, 0, 396, 2728, 1, 0, 0, 0, 398, 2735, 1, 0, 0, 0, 400, 2741, 1, 0, 0, 0, 402, 2747,
1, 0, 0, 0, 404, 2762, 1, 0, 0, 0, 406, 2772, 1, 0, 0, 0, 408, 2780, 1, 0, 0, 0, 410, 2783,
1, 0, 0, 0, 412, 2786, 1, 0, 0, 0, 414, 2789, 1, 0, 0, 0, 416, 2911, 1, 0, 0, 0, 418, 3045,
1, 0, 0, 0, 420, 3073, 1, 0, 0, 0, 422, 3090, 1, 0, 0, 0, 424, 3107, 1, 0, 0, 0, 426, 3109,
1, 0, 0, 0, 428, 3112, 1, 0, 0, 0, 430, 3138, 1, 0, 0, 0, 432, 3143, 1, 0, 0, 0, 434, 3170,
1, 0, 0, 0, 436, 3181, 1, 0, 0, 0, 438, 3318, 1, 0, 0, 0, 440, 3320, 1, 0, 0, 0, 442, 3343,
1, 0, 0, 0, 444, 3355, 1, 0, 0, 0, 446, 3360, 1, 0, 0, 0, 448, 3368, 1, 0, 0, 0, 450, 3376,
1, 0, 0, 0, 452, 3388, 1, 0, 0, 0, 454, 3422, 1, 0, 0, 0, 456, 3424, 1, 0, 0, 0, 458, 3442,
1, 0, 0, 0, 460, 3451, 1, 0, 0, 0, 462, 3481, 1, 0, 0, 0, 464, 3540, 1, 0, 0, 0, 466, 3542,
1, 0, 0, 0, 468, 3571, 1, 0, 0, 0, 470, 3573, 1, 0, 0, 0, 472, 3589, 1, 0, 0, 0, 474, 3601,
1, 0, 0, 0, 476, 3603, 1, 0, 0, 0, 478, 3607, 1, 0, 0, 0, 480, 3617, 1, 0, 0, 0, 482, 3627,
1, 0, 0, 0, 484, 3632, 1, 0, 0, 0, 486, 3639, 1, 0, 0, 0, 488, 3643, 1, 0, 0, 0, 490, 3662,
1, 0, 0, 0, 492, 3667, 1, 0, 0, 0, 494, 3669, 1, 0, 0, 0, 496, 3697, 1, 0, 0, 0, 498, 3700,
1, 0, 0, 0, 500, 3721, 1, 0, 0, 0, 502, 3762, 1, 0, 0, 0, 504, 3764, 1, 0, 0, 0, 506, 3811,
1, 0, 0, 0, 508, 3813, 1, 0, 0, 0, 510, 3838, 1, 0, 0, 0, 512, 3840, 1, 0, 0, 0, 514, 3848,
1, 0, 0, 0, 516, 3874, 1, 0, 0, 0, 518, 3876, 1, 0, 0, 0, 520, 3896, 1, 0, 0, 0, 522, 3898,
1, 0, 0, 0, 524, 3909, 1, 0, 0, 0, 526, 3922, 1, 0, 0, 0, 528, 3957, 1, 0, 0, 0, 530, 3959,
1, 0, 0, 0, 532, 3962, 1, 0, 0, 0, 534, 3967, 1, 0, 0, 0, 536, 3969, 1, 0, 0, 0, 538, 3991,
1, 0, 0, 0, 540, 3993, 1, 0, 0, 0, 542, 3997, 1, 0, 0, 0, 544, 4006, 1, 0, 0, 0, 546, 4016,
1, 0, 0, 0, 548, 4020, 1, 0, 0, 0, 550, 4024, 1, 0, 0, 0, 552, 4028, 1, 0, 0, 0, 554, 4104,
1, 0, 0, 0, 556, 4106, 1, 0, 0, 0, 558, 4109, 1, 0, 0, 0, 560, 4113, 1, 0, 0, 0, 562, 4118,
1, 0, 0, 0, 564, 4120, 1, 0, 0, 0, 566, 4131, 1, 0, 0, 0, 568, 4148, 1, 0, 0, 0, 570, 4164,
1, 0, 0, 0, 572, 4173, 1, 0, 0, 0, 574, 4188, 1, 0, 0, 0, 576, 4218, 1, 0, 0, 0, 578, 4220,
1, 0, 0, 0, 580, 4237, 1, 0, 0, 0, 582, 4253, 1, 0, 0, 0, 584, 4255, 1, 0, 0, 0, 586, 4274,
1, 0, 0, 0, 588, 4279, 1, 0, 0, 0, 590, 4294, 1, 0, 0, 0, 592, 4302, 1, 0, 0, 0, 594, 4310,
1, 0, 0, 0, 596, 4318, 1, 0, 0, 0, 598, 4326, 1, 0, 0, 0, 600, 4334, 1, 0, 0, 0, 602, 4342,
1, 0, 0, 0, 604, 4344, 1, 0, 0, 0, 606, 4354, 1, 0, 0, 0, 608, 4362, 1, 0, 0, 0, 610, 4378,
1, 0, 0, 0, 612, 4382, 1, 0, 0, 0, 614, 4387, 1, 0, 0, 0, 616, 4389, 1, 0, 0, 0, 618, 4400,
1, 0, 0, 0, 620, 4402, 1, 0, 0, 0, 622, 4420, 1, 0, 0, 0, 624, 4425, 1, 0, 0, 0, 626, 4433,
1, 0, 0, 0, 628, 4441, 1, 0, 0, 0, 630, 4445, 1, 0, 0, 0, 632, 4457, 1, 0, 0, 0, 634, 4462,
1, 0, 0, 0, 636, 4473, 1, 0, 0, 0, 638, 4480, 1, 0, 0, 0, 640, 4482, 1, 0, 0, 0, 642, 4486,
1, 0, 0, 0, 644, 4488, 1, 0, 0, 0, 646, 4493, 1, 0, 0, 0, 648, 4495, 1, 0, 0, 0, 650, 4497,
1, 0, 0, 0, 652, 4550, 1, 0, 0, 0, 654, 4717, 1, 0, 0, 0, 656, 4719, 1, 0, 0, 0, 658, 4728,
1, 0, 0, 0, 660, 4730, 1, 0, 0, 0, 662, 4741, 1, 0, 0, 0, 664, 4743, 1, 0, 0, 0, 666, 4748,
1, 0, 0, 0, 668, 4750, 1, 0, 0, 0, 670, 4752, 1, 0, 0, 0, 672, 4754, 1, 0, 0, 0, 674, 4756,
1, 0, 0, 0, 676, 4758, 1, 0, 0, 0, 678, 4760, 1, 0, 0, 0, 680, 4762, 1, 0, 0, 0, 682, 4764,
1, 0, 0, 0, 684, 4766, 1, 0, 0, 0, 686, 4768, 1, 0, 0, 0, 688, 4776, 1, 0, 0, 0, 690, 4784,
1, 0, 0, 0, 692, 4798, 1, 0, 0, 0, 694, 4800, 1, 0, 0, 0, 696, 698, 3, 2, 1, 0, 697, 696,
1, 0, 0, 0, 698, 701, 1, 0, 0, 0, 699, 697, 1, 0, 0, 0, 699, 700, 1, 0, 0, 0, 700, 702,
1, 0, 0, 0, 701, 699, 1, 0, 0, 0, 702, 703, 5, 0, 0, 1, 703, 1, 1, 0, 0, 0, 704, 707, 3,
4, 2, 0, 705, 707, 3, 10, 5, 0, 706, 704, 1, 0, 0, 0, 706, 705, 1, 0, 0, 0, 707, 709, 1,
0, 0, 0, 708, 710, 5, 398, 0, 0, 709, 708, 1, 0, 0, 0, 709, 710, 1, 0, 0, 0, 710, 3, 1,
0, 0, 0, 711, 721, 5, 119, 0, 0, 712, 714, 3, 6, 3, 0, 713, 712, 1, 0, 0, 0, 714, 717,
1, 0, 0, 0, 715, 713, 1, 0, 0, 0, 715, 716, 1, 0, 0, 0, 716, 718, 1, 0, 0, 0, 717, 715,
1, 0, 0, 0, 718, 722, 3, 10, 5, 0, 719, 720, 5, 284, 0, 0, 720, 722, 3, 362, 181, 0, 721,
715, 1, 0, 0, 0, 721, 719, 1, 0, 0, 0, 722, 5, 1, 0, 0, 0, 723, 746, 5, 122, 0, 0, 724,
746, 5, 138, 0, 0, 725, 746, 5, 88, 0, 0, 726, 728, 5, 37, 0, 0, 727, 729, 7, 0, 0, 0,
728, 727, 1, 0, 0, 0, 728, 729, 1, 0, 0, 0, 729, 746, 1, 0, 0, 0, 730, 746, 5, 192, 0,
0, 731, 746, 5, 21, 0, 0, 732, 746, 5, 10, 0, 0, 733, 746, 5, 275, 0, 0, 734, 746, 5,
191, 0, 0, 735, 746, 5, 19, 0, 0, 736, 738, 5, 377, 0, 0, 737, 739, 5, 225, 0, 0, 738,
737, 1, 0, 0, 0, 738, 739, 1, 0, 0, 0, 739, 741, 1, 0, 0, 0, 740, 742, 3, 8, 4, 0, 741,
740, 1, 0, 0, 0, 741, 742, 1, 0, 0, 0, 742, 746, 1, 0, 0, 0, 743, 746, 5, 79, 0, 0, 744,
746, 5, 78, 0, 0, 745, 723, 1, 0, 0, 0, 745, 724, 1, 0, 0, 0, 745, 725, 1, 0, 0, 0, 745,
726, 1, 0, 0, 0, 745, 730, 1, 0, 0, 0, 745, 731, 1, 0, 0, 0, 745, 732, 1, 0, 0, 0, 745,
733, 1, 0, 0, 0, 745, 734, 1, 0, 0, 0, 745, 735, 1, 0, 0, 0, 745, 736, 1, 0, 0, 0, 745,
743, 1, 0, 0, 0, 745, 744, 1, 0, 0, 0, 746, 7, 1, 0, 0, 0, 747, 748, 7, 1, 0, 0, 748, 9,
1, 0, 0, 0, 749, 821, 3, 362, 181, 0, 750, 821, 3, 12, 6, 0, 751, 821, 3, 16, 8, 0, 752,
821, 3, 18, 9, 0, 753, 821, 3, 20, 10, 0, 754, 821, 3, 24, 12, 0, 755, 756, 5, 277, 0,
0, 756, 757, 5, 320, 0, 0, 757, 760, 3, 474, 237, 0, 758, 759, 5, 387, 0, 0, 759, 761,
3, 230, 115, 0, 760, 758, 1, 0, 0, 0, 760, 761, 1, 0, 0, 0, 761, 821, 1, 0, 0, 0, 762,
821, 3, 28, 14, 0, 763, 764, 5, 86, 0, 0, 764, 765, 5, 139, 0, 0, 765, 767, 3, 480, 240,
0, 766, 768, 3, 496, 248, 0, 767, 766, 1, 0, 0, 0, 767, 768, 1, 0, 0, 0, 768, 821, 1,
0, 0, 0, 769, 770, 5, 365, 0, 0, 770, 771, 3, 480, 240, 0, 771, 773, 3, 394, 197, 0,
772, 774, 3, 496, 248, 0, 773, 772, 1, 0, 0, 0, 773, 774, 1, 0, 0, 0, 774, 821, 1, 0,
0, 0, 775, 821, 3, 396, 198, 0, 776, 778, 5, 203, 0, 0, 777, 779, 5, 436, 0, 0, 778,
777, 1, 0, 0, 0, 778, 779, 1, 0, 0, 0, 779, 780, 1, 0, 0, 0, 780, 781, 5, 166, 0, 0, 781,
786, 3, 480, 240, 0, 782, 784, 5, 17, 0, 0, 783, 782, 1, 0, 0, 0, 783, 784, 1, 0, 0, 0,
784, 785, 1, 0, 0, 0, 785, 787, 3, 642, 321, 0, 786, 783, 1, 0, 0, 0, 786, 787, 1, 0,
0, 0, 787, 788, 1, 0, 0, 0, 788, 789, 5, 370, 0, 0, 789, 790, 3, 458, 229, 0, 790, 791,
5, 224, 0, 0, 791, 792, 3, 584, 292, 0, 792, 793, 3, 400, 200, 0, 793, 821, 1, 0, 0,
0, 794, 795, 5, 249, 0, 0, 795, 796, 3, 642, 321, 0, 796, 797, 5, 139, 0, 0, 797, 798,
3, 362, 181, 0, 798, 821, 1, 0, 0, 0, 799, 800, 5, 115, 0, 0, 800, 801, 3, 642, 321,
0, 801, 802, 5, 370, 0, 0, 802, 803, 3, 298, 149, 0, 803, 821, 1, 0, 0, 0, 804, 805,
5, 304, 0, 0, 805, 810, 3, 652, 326, 0, 806, 807, 7, 2, 0, 0, 807, 809, 3, 652, 326,
0, 808, 806, 1, 0, 0, 0, 809, 812, 1, 0, 0, 0, 810, 808, 1, 0, 0, 0, 810, 811, 1, 0, 0,
0, 811, 813, 1, 0, 0, 0, 812, 810, 1, 0, 0, 0, 813, 817, 5, 405, 0, 0, 814, 816, 9, 0,
0, 0, 815, 814, 1, 0, 0, 0, 816, 819, 1, 0, 0, 0, 817, 818, 1, 0, 0, 0, 817, 815, 1, 0,
0, 0, 818, 821, 1, 0, 0, 0, 819, 817, 1, 0, 0, 0, 820, 749, 1, 0, 0, 0, 820, 750, 1, 0,
0, 0, 820, 751, 1, 0, 0, 0, 820, 752, 1, 0, 0, 0, 820, 753, 1, 0, 0, 0, 820, 754, 1, 0,
0, 0, 820, 755, 1, 0, 0, 0, 820, 762, 1, 0, 0, 0, 820, 763, 1, 0, 0, 0, 820, 769, 1, 0,
0, 0, 820, 775, 1, 0, 0, 0, 820, 776, 1, 0, 0, 0, 820, 794, 1, 0, 0, 0, 820, 799, 1, 0,
0, 0, 820, 804, 1, 0, 0, 0, 821, 11, 1, 0, 0, 0, 822, 823, 5, 187, 0, 0, 823, 825, 5, 66,
0, 0, 824, 826, 5, 188, 0, 0, 825, 824, 1, 0, 0, 0, 825, 826, 1, 0, 0, 0, 826, 827, 1,
0, 0, 0, 827, 828, 5, 158, 0, 0, 828, 830, 5, 426, 0, 0, 829, 831, 5, 235, 0, 0, 830,
829, 1, 0, 0, 0, 830, 831, 1, 0, 0, 0, 831, 832, 1, 0, 0, 0, 832, 833, 5, 166, 0, 0, 833,
834, 5, 329, 0, 0, 834, 836, 3, 628, 314, 0, 835, 837, 3, 56, 28, 0, 836, 835, 1, 0,
0, 0, 836, 837, 1, 0, 0, 0, 837, 13, 1, 0, 0, 0, 838, 840, 5, 134, 0, 0, 839, 841, 5, 204,
0, 0, 840, 839, 1, 0, 0, 0, 840, 841, 1, 0, 0, 0, 841, 842, 1, 0, 0, 0, 842, 843, 5, 279,
0, 0, 843, 844, 5, 399, 0, 0, 844, 845, 5, 426, 0, 0, 845, 846, 5, 400, 0, 0, 846, 15,
1, 0, 0, 0, 847, 848, 5, 120, 0, 0, 848, 849, 5, 329, 0, 0, 849, 850, 3, 628, 314, 0,
850, 851, 5, 341, 0, 0, 851, 853, 5, 426, 0, 0, 852, 854, 3, 14, 7, 0, 853, 852, 1, 0,
0, 0, 853, 854, 1, 0, 0, 0, 854, 17, 1, 0, 0, 0, 855, 861, 5, 153, 0, 0, 856, 858, 5, 123,
0, 0, 857, 856, 1, 0, 0, 0, 857, 858, 1, 0, 0, 0, 858, 859, 1, 0, 0, 0, 859, 860, 5, 329,
0, 0, 860, 862, 3, 628, 314, 0, 861, 857, 1, 0, 0, 0, 861, 862, 1, 0, 0, 0, 862, 863,
1, 0, 0, 0, 863, 864, 5, 139, 0, 0, 864, 866, 5, 426, 0, 0, 865, 867, 3, 426, 213, 0,
866, 865, 1, 0, 0, 0, 866, 867, 1, 0, 0, 0, 867, 19, 1, 0, 0, 0, 868, 869, 5, 277, 0, 0,
869, 870, 5, 103, 0, 0, 870, 873, 3, 22, 11, 0, 871, 872, 5, 278, 0, 0, 872, 874, 3,
22, 11, 0, 873, 871, 1, 0, 0, 0, 873, 874, 1, 0, 0, 0, 874, 877, 1, 0, 0, 0, 875, 876,
5, 387, 0, 0, 876, 878, 3, 230, 115, 0, 877, 875, 1, 0, 0, 0, 877, 878, 1, 0, 0, 0, 878,
21, 1, 0, 0, 0, 879, 882, 3, 474, 237, 0, 880, 881, 5, 395, 0, 0, 881, 883, 3, 26, 13,
0, 882, 880, 1, 0, 0, 0, 882, 883, 1, 0, 0, 0, 883, 23, 1, 0, 0, 0, 884, 885, 5, 277, 0,
0, 885, 886, 5, 187, 0, 0, 886, 889, 3, 22, 11, 0, 887, 888, 5, 166, 0, 0, 888, 890,
3, 474, 237, 0, 889, 887, 1, 0, 0, 0, 889, 890, 1, 0, 0, 0, 890, 893, 1, 0, 0, 0, 891,
892, 5, 387, 0, 0, 892, 894, 3, 230, 115, 0, 893, 891, 1, 0, 0, 0, 893, 894, 1, 0, 0,
0, 894, 25, 1, 0, 0, 0, 895, 898, 5, 426, 0, 0, 896, 897, 5, 395, 0, 0, 897, 899, 5, 426,
0, 0, 898, 896, 1, 0, 0, 0, 898, 899, 1, 0, 0, 0, 899, 27, 1, 0, 0, 0, 900, 959, 3, 42,
21, 0, 901, 959, 3, 46, 23, 0, 902, 959, 3, 48, 24, 0, 903, 959, 3, 438, 219, 0, 904,
959, 3, 54, 27, 0, 905, 959, 3, 52, 26, 0, 906, 959, 3, 414, 207, 0, 907, 959, 3, 64,
32, 0, 908, 959, 3, 72, 36, 0, 909, 959, 3, 138, 69, 0, 910, 959, 3, 160, 80, 0, 911,
959, 3, 176, 88, 0, 912, 959, 3, 180, 90, 0, 913, 959, 3, 184, 92, 0, 914, 959, 3, 182,
91, 0, 915, 959, 3, 174, 87, 0, 916, 959, 3, 178, 89, 0, 917, 959, 3, 146, 73, 0, 918,
959, 3, 152, 76, 0, 919, 959, 3, 148, 74, 0, 920, 959, 3, 150, 75, 0, 921, 959, 3, 154,
77, 0, 922, 959, 3, 156, 78, 0, 923, 959, 3, 158, 79, 0, 924, 959, 3, 66, 33, 0, 925,
959, 3, 76, 38, 0, 926, 959, 3, 82, 41, 0, 927, 959, 3, 78, 39, 0, 928, 959, 3, 84, 42,
0, 929, 959, 3, 86, 43, 0, 930, 959, 3, 88, 44, 0, 931, 959, 3, 90, 45, 0, 932, 959,
3, 92, 46, 0, 933, 959, 3, 106, 53, 0, 934, 959, 3, 98, 49, 0, 935, 959, 3, 108, 54,
0, 936, 959, 3, 100, 50, 0, 937, 959, 3, 94, 47, 0, 938, 959, 3, 96, 48, 0, 939, 959,
3, 104, 52, 0, 940, 959, 3, 102, 51, 0, 941, 942, 5, 1, 0, 0, 942, 944, 7, 3, 0, 0, 943,
945, 5, 431, 0, 0, 944, 943, 1, 0, 0, 0, 945, 946, 1, 0, 0, 0, 946, 944, 1, 0, 0, 0, 946,
947, 1, 0, 0, 0, 947, 959, 1, 0, 0, 0, 948, 949, 5, 176, 0, 0, 949, 951, 5, 258, 0, 0,
950, 952, 5, 426, 0, 0, 951, 950, 1, 0, 0, 0, 952, 953, 1, 0, 0, 0, 953, 951, 1, 0, 0,
0, 953, 954, 1, 0, 0, 0, 954, 959, 1, 0, 0, 0, 955, 959, 3, 654, 327, 0, 956, 959, 3,
440, 220, 0, 957, 959, 3, 442, 221, 0, 958, 900, 1, 0, 0, 0, 958, 901, 1, 0, 0, 0, 958,
902, 1, 0, 0, 0, 958, 903, 1, 0, 0, 0, 958, 904, 1, 0, 0, 0, 958, 905, 1, 0, 0, 0, 958,
906, 1, 0, 0, 0, 958, 907, 1, 0, 0, 0, 958, 908, 1, 0, 0, 0, 958, 909, 1, 0, 0, 0, 958,
910, 1, 0, 0, 0, 958, 911, 1, 0, 0, 0, 958, 912, 1, 0, 0, 0, 958, 913, 1, 0, 0, 0, 958,
914, 1, 0, 0, 0, 958, 915, 1, 0, 0, 0, 958, 916, 1, 0, 0, 0, 958, 917, 1, 0, 0, 0, 958,
918, 1, 0, 0, 0, 958, 919, 1, 0, 0, 0, 958, 920, 1, 0, 0, 0, 958, 921, 1, 0, 0, 0, 958,
922, 1, 0, 0, 0, 958, 923, 1, 0, 0, 0, 958, 924, 1, 0, 0, 0, 958, 925, 1, 0, 0, 0, 958,
926, 1, 0, 0, 0, 958, 927, 1, 0, 0, 0, 958, 928, 1, 0, 0, 0, 958, 929, 1, 0, 0, 0, 958,
930, 1, 0, 0, 0, 958, 931, 1, 0, 0, 0, 958, 932, 1, 0, 0, 0, 958, 933, 1, 0, 0, 0, 958,
934, 1, 0, 0, 0, 958, 935, 1, 0, 0, 0, 958, 936, 1, 0, 0, 0, 958, 937, 1, 0, 0, 0, 958,
938, 1, 0, 0, 0, 958, 939, 1, 0, 0, 0, 958, 940, 1, 0, 0, 0, 958, 941, 1, 0, 0, 0, 958,
948, 1, 0, 0, 0, 958, 955, 1, 0, 0, 0, 958, 956, 1, 0, 0, 0, 958, 957, 1, 0, 0, 0, 959,
29, 1, 0, 0, 0, 960, 961, 5, 151, 0, 0, 961, 962, 5, 117, 0, 0, 962, 31, 1, 0, 0, 0, 963,
964, 5, 151, 0, 0, 964, 965, 5, 216, 0, 0, 965, 966, 5, 117, 0, 0, 966, 33, 1, 0, 0, 0,
967, 968, 7, 4, 0, 0, 968, 35, 1, 0, 0, 0, 969, 970, 3, 666, 333, 0, 970, 971, 5, 284,
0, 0, 971, 37, 1, 0, 0, 0, 972, 973, 3, 668, 334, 0, 973, 974, 5, 284, 0, 0, 974, 39,
1, 0, 0, 0, 975, 976, 5, 321, 0, 0, 976, 977, 5, 17, 0, 0, 977, 978, 5, 92, 0, 0, 978,
41, 1, 0, 0, 0, 979, 981, 5, 58, 0, 0, 980, 982, 5, 273, 0, 0, 981, 980, 1, 0, 0, 0, 981,
982, 1, 0, 0, 0, 982, 983, 1, 0, 0, 0, 983, 985, 3, 70, 35, 0, 984, 986, 3, 32, 16, 0,
985, 984, 1, 0, 0, 0, 985, 986, 1, 0, 0, 0, 986, 987, 1, 0, 0, 0, 987, 989, 3, 476, 238,
0, 988, 990, 3, 50, 25, 0, 989, 988, 1, 0, 0, 0, 989, 990, 1, 0, 0, 0, 990, 992, 1, 0,
0, 0, 991, 993, 3, 426, 213, 0, 992, 991, 1, 0, 0, 0, 992, 993, 1, 0, 0, 0, 993, 996,
1, 0, 0, 0, 994, 995, 5, 196, 0, 0, 995, 997, 5, 426, 0, 0, 996, 994, 1, 0, 0, 0, 996,
997, 1, 0, 0, 0, 997, 1001, 1, 0, 0, 0, 998, 999, 5, 387, 0, 0, 999, 1000, 5, 76, 0, 0,
1000, 1002, 3, 230, 115, 0, 1001, 998, 1, 0, 0, 0, 1001, 1002, 1, 0, 0, 0, 1002, 1020,
1, 0, 0, 0, 1003, 1004, 5, 58, 0, 0, 1004, 1005, 5, 273, 0, 0, 1005, 1007, 3, 70, 35,
0, 1006, 1008, 3, 32, 16, 0, 1007, 1006, 1, 0, 0, 0, 1007, 1008, 1, 0, 0, 0, 1008, 1009,
1, 0, 0, 0, 1009, 1011, 3, 476, 238, 0, 1010, 1012, 3, 50, 25, 0, 1011, 1010, 1, 0,
0, 0, 1011, 1012, 1, 0, 0, 0, 1012, 1013, 1, 0, 0, 0, 1013, 1017, 3, 44, 22, 0, 1014,
1015, 5, 387, 0, 0, 1015, 1016, 5, 76, 0, 0, 1016, 1018, 3, 230, 115, 0, 1017, 1014,
1, 0, 0, 0, 1017, 1018, 1, 0, 0, 0, 1018, 1020, 1, 0, 0, 0, 1019, 979, 1, 0, 0, 0, 1019,
1003, 1, 0, 0, 0, 1020, 43, 1, 0, 0, 0, 1021, 1022, 5, 370, 0, 0, 1022, 1023, 3, 474,
237, 0, 1023, 45, 1, 0, 0, 0, 1024, 1025, 5, 368, 0, 0, 1025, 1026, 3, 474, 237, 0,
1026, 47, 1, 0, 0, 0, 1027, 1028, 5, 101, 0, 0, 1028, 1030, 3, 70, 35, 0, 1029, 1031,
3, 30, 15, 0, 1030, 1029, 1, 0, 0, 0, 1030, 1031, 1, 0, 0, 0, 1031, 1032, 1, 0, 0, 0,
1032, 1034, 3, 474, 237, 0, 1033, 1035, 3, 34, 17, 0, 1034, 1033, 1, 0, 0, 0, 1034,
1035, 1, 0, 0, 0, 1035, 49, 1, 0, 0, 0, 1036, 1037, 5, 47, 0, 0, 1037, 1038, 5, 426,
0, 0, 1038, 51, 1, 0, 0, 0, 1039, 1041, 5, 351, 0, 0, 1040, 1042, 5, 329, 0, 0, 1041,
1040, 1, 0, 0, 0, 1041, 1042, 1, 0, 0, 0, 1042, 1043, 1, 0, 0, 0, 1043, 1049, 3, 628,
314, 0, 1044, 1045, 5, 46, 0, 0, 1045, 1046, 5, 399, 0, 0, 1046, 1047, 3, 254, 127,
0, 1047, 1048, 5, 400, 0, 0, 1048, 1050, 1, 0, 0, 0, 1049, 1044, 1, 0, 0, 0, 1049, 1050,
1, 0, 0, 0, 1050, 1052, 1, 0, 0, 0, 1051, 1053, 5, 135, 0, 0, 1052, 1051, 1, 0, 0, 0,
1052, 1053, 1, 0, 0, 0, 1053, 53, 1, 0, 0, 0, 1054, 1055, 5, 101, 0, 0, 1055, 1057,
5, 329, 0, 0, 1056, 1058, 3, 30, 15, 0, 1057, 1056, 1, 0, 0, 0, 1057, 1058, 1, 0, 0,
0, 1058, 1059, 1, 0, 0, 0, 1059, 1061, 3, 480, 240, 0, 1060, 1062, 5, 255, 0, 0, 1061,
1060, 1, 0, 0, 0, 1061, 1062, 1, 0, 0, 0, 1062, 1064, 1, 0, 0, 0, 1063, 1065, 3, 14,
7, 0, 1064, 1063, 1, 0, 0, 0, 1064, 1065, 1, 0, 0, 0, 1065, 55, 1, 0, 0, 0, 1066, 1067,
5, 160, 0, 0, 1067, 1068, 5, 426, 0, 0, 1068, 1069, 5, 301, 0, 0, 1069, 1070, 5, 426,
0, 0, 1070, 57, 1, 0, 0, 0, 1071, 1074, 3, 642, 321, 0, 1072, 1073, 5, 395, 0, 0, 1073,
1075, 3, 642, 321, 0, 1074, 1072, 1, 0, 0, 0, 1074, 1075, 1, 0, 0, 0, 1075, 1089, 1,
0, 0, 0, 1076, 1086, 3, 642, 321, 0, 1077, 1082, 5, 395, 0, 0, 1078, 1083, 5, 104,
0, 0, 1079, 1083, 5, 175, 0, 0, 1080, 1083, 5, 375, 0, 0, 1081, 1083, 3, 642, 321,
0, 1082, 1078, 1, 0, 0, 0, 1082, 1079, 1, 0, 0, 0, 1082, 1080, 1, 0, 0, 0, 1082, 1081,
1, 0, 0, 0, 1083, 1085, 1, 0, 0, 0, 1084, 1077, 1, 0, 0, 0, 1085, 1088, 1, 0, 0, 0, 1086,
1084, 1, 0, 0, 0, 1086, 1087, 1, 0, 0, 0, 1087, 1090, 1, 0, 0, 0, 1088, 1086, 1, 0, 0,
0, 1089, 1076, 1, 0, 0, 0, 1089, 1090, 1, 0, 0, 0, 1090, 59, 1, 0, 0, 0, 1091, 1093,
3, 58, 29, 0, 1092, 1094, 3, 630, 315, 0, 1093, 1092, 1, 0, 0, 0, 1093, 1094, 1, 0,
0, 0, 1094, 61, 1, 0, 0, 0, 1095, 1097, 3, 478, 239, 0, 1096, 1098, 3, 630, 315, 0,
1097, 1096, 1, 0, 0, 0, 1097, 1098, 1, 0, 0, 0, 1098, 1100, 1, 0, 0, 0, 1099, 1101,
3, 262, 131, 0, 1100, 1099, 1, 0, 0, 0, 1100, 1101, 1, 0, 0, 0, 1101, 63, 1, 0, 0, 0,
1102, 1125, 7, 5, 0, 0, 1103, 1105, 3, 70, 35, 0, 1104, 1106, 5, 122, 0, 0, 1105, 1104,
1, 0, 0, 0, 1105, 1106, 1, 0, 0, 0, 1106, 1107, 1, 0, 0, 0, 1107, 1108, 3, 474, 237,
0, 1108, 1126, 1, 0, 0, 0, 1109, 1111, 5, 69, 0, 0, 1110, 1112, 5, 122, 0, 0, 1111,
1110, 1, 0, 0, 0, 1111, 1112, 1, 0, 0, 0, 1112, 1113, 1, 0, 0, 0, 1113, 1126, 3, 474,
237, 0, 1114, 1116, 5, 141, 0, 0, 1115, 1117, 5, 122, 0, 0, 1116, 1115, 1, 0, 0, 0,
1116, 1117, 1, 0, 0, 0, 1117, 1118, 1, 0, 0, 0, 1118, 1126, 3, 560, 280, 0, 1119, 1122,
5, 138, 0, 0, 1120, 1122, 5, 122, 0, 0, 1121, 1119, 1, 0, 0, 0, 1121, 1120, 1, 0, 0,
0, 1122, 1123, 1, 0, 0, 0, 1123, 1126, 3, 62, 31, 0, 1124, 1126, 3, 62, 31, 0, 1125,
1103, 1, 0, 0, 0, 1125, 1109, 1, 0, 0, 0, 1125, 1114, 1, 0, 0, 0, 1125, 1121, 1, 0, 0,
0, 1125, 1124, 1, 0, 0, 0, 1126, 65, 1, 0, 0, 0, 1127, 1128, 5, 10, 0, 0, 1128, 1129,
5, 329, 0, 0, 1129, 1142, 3, 628, 314, 0, 1130, 1131, 5, 52, 0, 0, 1131, 1138, 5, 319,
0, 0, 1132, 1139, 5, 215, 0, 0, 1133, 1134, 5, 134, 0, 0, 1134, 1136, 5, 46, 0, 0, 1135,
1137, 3, 254, 127, 0, 1136, 1135, 1, 0, 0, 0, 1136, 1137, 1, 0, 0, 0, 1137, 1139, 1,
0, 0, 0, 1138, 1132, 1, 0, 0, 0, 1138, 1133, 1, 0, 0, 0, 1138, 1139, 1, 0, 0, 0, 1139,
1143, 1, 0, 0, 0, 1140, 1141, 5, 33, 0, 0, 1141, 1143, 5, 204, 0, 0, 1142, 1130, 1,
0, 0, 0, 1142, 1140, 1, 0, 0, 0, 1143, 67, 1, 0, 0, 0, 1144, 1145, 7, 6, 0, 0, 1145, 69,
1, 0, 0, 0, 1146, 1147, 7, 7, 0, 0, 1147, 71, 1, 0, 0, 0, 1148, 1149, 5, 308, 0, 0, 1149,
1152, 7, 8, 0, 0, 1150, 1151, 5, 184, 0, 0, 1151, 1153, 3, 194, 97, 0, 1152, 1150,
1, 0, 0, 0, 1152, 1153, 1, 0, 0, 0, 1153, 1332, 1, 0, 0, 0, 1154, 1156, 5, 308, 0, 0,
1155, 1157, 5, 122, 0, 0, 1156, 1155, 1, 0, 0, 0, 1156, 1157, 1, 0, 0, 0, 1157, 1158,
1, 0, 0, 0, 1158, 1162, 5, 330, 0, 0, 1159, 1160, 3, 68, 34, 0, 1160, 1161, 3, 474,
237, 0, 1161, 1163, 1, 0, 0, 0, 1162, 1159, 1, 0, 0, 0, 1162, 1163, 1, 0, 0, 0, 1163,
1165, 1, 0, 0, 0, 1164, 1166, 3, 74, 37, 0, 1165, 1164, 1, 0, 0, 0, 1165, 1166, 1, 0,
0, 0, 1166, 1332, 1, 0, 0, 0, 1167, 1168, 5, 308, 0, 0, 1168, 1172, 5, 379, 0, 0, 1169,
1170, 3, 68, 34, 0, 1170, 1171, 3, 474, 237, 0, 1171, 1173, 1, 0, 0, 0, 1172, 1169,
1, 0, 0, 0, 1172, 1173, 1, 0, 0, 0, 1173, 1177, 1, 0, 0, 0, 1174, 1175, 5, 184, 0, 0,
1175, 1178, 3, 194, 97, 0, 1176, 1178, 3, 194, 97, 0, 1177, 1174, 1, 0, 0, 0, 1177,
1176, 1, 0, 0, 0, 1177, 1178, 1, 0, 0, 0, 1178, 1332, 1, 0, 0, 0, 1179, 1180, 5, 308,
0, 0, 1180, 1181, 5, 202, 0, 0, 1181, 1185, 5, 379, 0, 0, 1182, 1183, 3, 68, 34, 0,
1183, 1184, 3, 474, 237, 0, 1184, 1186, 1, 0, 0, 0, 1185, 1182, 1, 0, 0, 0, 1185, 1186,
1, 0, 0, 0, 1186, 1190, 1, 0, 0, 0, 1187, 1188, 5, 184, 0, 0, 1188, 1191, 3, 194, 97,
0, 1189, 1191, 3, 194, 97, 0, 1190, 1187, 1, 0, 0, 0, 1190, 1189, 1, 0, 0, 0, 1190,
1191, 1, 0, 0, 0, 1191, 1332, 1, 0, 0, 0, 1192, 1194, 5, 308, 0, 0, 1193, 1195, 5, 315,
0, 0, 1194, 1193, 1, 0, 0, 0, 1194, 1195, 1, 0, 0, 0, 1195, 1196, 1, 0, 0, 0, 1196, 1197,
5, 46, 0, 0, 1197, 1198, 3, 68, 34, 0, 1198, 1202, 3, 478, 239, 0, 1199, 1200, 3, 68,
34, 0, 1200, 1201, 3, 474, 237, 0, 1201, 1203, 1, 0, 0, 0, 1202, 1199, 1, 0, 0, 0, 1202,
1203, 1, 0, 0, 0, 1203, 1207, 1, 0, 0, 0, 1204, 1205, 5, 184, 0, 0, 1205, 1208, 3, 194,
97, 0, 1206, 1208, 3, 194, 97, 0, 1207, 1204, 1, 0, 0, 0, 1207, 1206, 1, 0, 0, 0, 1207,
1208, 1, 0, 0, 0, 1208, 1332, 1, 0, 0, 0, 1209, 1210, 5, 308, 0, 0, 1210, 1213, 5, 142,
0, 0, 1211, 1212, 5, 184, 0, 0, 1212, 1214, 3, 560, 280, 0, 1213, 1211, 1, 0, 0, 0,
1213, 1214, 1, 0, 0, 0, 1214, 1332, 1, 0, 0, 0, 1215, 1216, 5, 308, 0, 0, 1216, 1217,
5, 239, 0, 0, 1217, 1219, 3, 478, 239, 0, 1218, 1220, 3, 630, 315, 0, 1219, 1218,
1, 0, 0, 0, 1219, 1220, 1, 0, 0, 0, 1220, 1222, 1, 0, 0, 0, 1221, 1223, 3, 496, 248,
0, 1222, 1221, 1, 0, 0, 0, 1222, 1223, 1, 0, 0, 0, 1223, 1225, 1, 0, 0, 0, 1224, 1226,
3, 544, 272, 0, 1225, 1224, 1, 0, 0, 0, 1225, 1226, 1, 0, 0, 0, 1226, 1228, 1, 0, 0,
0, 1227, 1229, 3, 388, 194, 0, 1228, 1227, 1, 0, 0, 0, 1228, 1229, 1, 0, 0, 0, 1229,
1332, 1, 0, 0, 0, 1230, 1231, 5, 308, 0, 0, 1231, 1237, 5, 58, 0, 0, 1232, 1233, 3,
70, 35, 0, 1233, 1234, 3, 474, 237, 0, 1234, 1238, 1, 0, 0, 0, 1235, 1236, 5, 329,
0, 0, 1236, 1238, 3, 480, 240, 0, 1237, 1232, 1, 0, 0, 0, 1237, 1235, 1, 0, 0, 0, 1238,
1332, 1, 0, 0, 0, 1239, 1240, 5, 308, 0, 0, 1240, 1241, 5, 329, 0, 0, 1241, 1245, 5,
122, 0, 0, 1242, 1243, 3, 68, 34, 0, 1243, 1244, 3, 474, 237, 0, 1244, 1246, 1, 0,
0, 0, 1245, 1242, 1, 0, 0, 0, 1245, 1246, 1, 0, 0, 0, 1246, 1247, 1, 0, 0, 0, 1247, 1248,
5, 184, 0, 0, 1248, 1250, 3, 194, 97, 0, 1249, 1251, 3, 630, 315, 0, 1250, 1249, 1,
0, 0, 0, 1250, 1251, 1, 0, 0, 0, 1251, 1332, 1, 0, 0, 0, 1252, 1253, 5, 308, 0, 0, 1253,
1254, 5, 332, 0, 0, 1254, 1258, 3, 480, 240, 0, 1255, 1256, 5, 399, 0, 0, 1256, 1257,
5, 426, 0, 0, 1257, 1259, 5, 400, 0, 0, 1258, 1255, 1, 0, 0, 0, 1258, 1259, 1, 0, 0,
0, 1259, 1332, 1, 0, 0, 0, 1260, 1261, 5, 308, 0, 0, 1261, 1273, 5, 191, 0, 0, 1262,
1263, 3, 70, 35, 0, 1263, 1265, 3, 474, 237, 0, 1264, 1266, 5, 122, 0, 0, 1265, 1264,
1, 0, 0, 0, 1265, 1266, 1, 0, 0, 0, 1266, 1274, 1, 0, 0, 0, 1267, 1269, 3, 60, 30, 0,
1268, 1267, 1, 0, 0, 0, 1268, 1269, 1, 0, 0, 0, 1269, 1271, 1, 0, 0, 0, 1270, 1272,
5, 122, 0, 0, 1271, 1270, 1, 0, 0, 0, 1271, 1272, 1, 0, 0, 0, 1272, 1274, 1, 0, 0, 0,
1273, 1262, 1, 0, 0, 0, 1273, 1268, 1, 0, 0, 0, 1274, 1332, 1, 0, 0, 0, 1275, 1276,
5, 308, 0, 0, 1276, 1303, 5, 50, 0, 0, 1277, 1278, 5, 51, 0, 0, 1278, 1279, 5, 405,
0, 0, 1279, 1304, 5, 431, 0, 0, 1280, 1281, 3, 70, 35, 0, 1281, 1282, 3, 474, 237,
0, 1282, 1287, 1, 0, 0, 0, 1283, 1285, 3, 60, 30, 0, 1284, 1283, 1, 0, 0, 0, 1284, 1285,
1, 0, 0, 0, 1285, 1287, 1, 0, 0, 0, 1286, 1280, 1, 0, 0, 0, 1286, 1284, 1, 0, 0, 0, 1287,
1289, 1, 0, 0, 0, 1288, 1290, 3, 408, 204, 0, 1289, 1288, 1, 0, 0, 0, 1289, 1290, 1,
0, 0, 0, 1290, 1292, 1, 0, 0, 0, 1291, 1293, 3, 410, 205, 0, 1292, 1291, 1, 0, 0, 0,
1292, 1293, 1, 0, 0, 0, 1293, 1295, 1, 0, 0, 0, 1294, 1296, 3, 412, 206, 0, 1295, 1294,
1, 0, 0, 0, 1295, 1296, 1, 0, 0, 0, 1296, 1298, 1, 0, 0, 0, 1297, 1299, 3, 544, 272,
0, 1298, 1297, 1, 0, 0, 0, 1298, 1299, 1, 0, 0, 0, 1299, 1301, 1, 0, 0, 0, 1300, 1302,
3, 388, 194, 0, 1301, 1300, 1, 0, 0, 0, 1301, 1302, 1, 0, 0, 0, 1302, 1304, 1, 0, 0,
0, 1303, 1277, 1, 0, 0, 0, 1303, 1286, 1, 0, 0, 0, 1304, 1332, 1, 0, 0, 0, 1305, 1306,
5, 308, 0, 0, 1306, 1332, 5, 346, 0, 0, 1307, 1308, 5, 308, 0, 0, 1308, 1309, 5, 54,
0, 0, 1309, 1332, 5, 426, 0, 0, 1310, 1311, 5, 308, 0, 0, 1311, 1315, 5, 280, 0, 0,
1312, 1313, 5, 243, 0, 0, 1313, 1316, 3, 642, 321, 0, 1314, 1316, 5, 244, 0, 0, 1315,
1312, 1, 0, 0, 0, 1315, 1314, 1, 0, 0, 0, 1316, 1332, 1, 0, 0, 0, 1317, 1318, 5, 308,
0, 0, 1318, 1332, 5, 70, 0, 0, 1319, 1321, 5, 308, 0, 0, 1320, 1322, 5, 138, 0, 0, 1321,
1320, 1, 0, 0, 0, 1321, 1322, 1, 0, 0, 0, 1322, 1323, 1, 0, 0, 0, 1323, 1324, 7, 9, 0,
0, 1324, 1325, 5, 224, 0, 0, 1325, 1329, 3, 480, 240, 0, 1326, 1327, 3, 68, 34, 0,
1327, 1328, 3, 474, 237, 0, 1328, 1330, 1, 0, 0, 0, 1329, 1326, 1, 0, 0, 0, 1329, 1330,
1, 0, 0, 0, 1330, 1332, 1, 0, 0, 0, 1331, 1148, 1, 0, 0, 0, 1331, 1154, 1, 0, 0, 0, 1331,
1167, 1, 0, 0, 0, 1331, 1179, 1, 0, 0, 0, 1331, 1192, 1, 0, 0, 0, 1331, 1209, 1, 0, 0,
0, 1331, 1215, 1, 0, 0, 0, 1331, 1230, 1, 0, 0, 0, 1331, 1239, 1, 0, 0, 0, 1331, 1252,
1, 0, 0, 0, 1331, 1260, 1, 0, 0, 0, 1331, 1275, 1, 0, 0, 0, 1331, 1305, 1, 0, 0, 0, 1331,
1307, 1, 0, 0, 0, 1331, 1310, 1, 0, 0, 0, 1331, 1317, 1, 0, 0, 0, 1331, 1319, 1, 0, 0,
0, 1332, 73, 1, 0, 0, 0, 1333, 1334, 5, 384, 0, 0, 1334, 1335, 3, 642, 321, 0, 1335,
1336, 5, 405, 0, 0, 1336, 1337, 5, 426, 0, 0, 1337, 1342, 1, 0, 0, 0, 1338, 1339, 5,
184, 0, 0, 1339, 1342, 3, 194, 97, 0, 1340, 1342, 3, 194, 97, 0, 1341, 1333, 1, 0,
0, 0, 1341, 1338, 1, 0, 0, 0, 1341, 1340, 1, 0, 0, 0, 1342, 75, 1, 0, 0, 0, 1343, 1344,
5, 190, 0, 0, 1344, 1345, 5, 329, 0, 0, 1345, 1346, 3, 628, 314, 0, 1346, 1347, 3,
80, 40, 0, 1347, 77, 1, 0, 0, 0, 1348, 1349, 5, 190, 0, 0, 1349, 1350, 3, 70, 35, 0,
1350, 1351, 3, 474, 237, 0, 1351, 1352, 3, 80, 40, 0, 1352, 79, 1, 0, 0, 0, 1353, 1354,
7, 10, 0, 0, 1354, 81, 1, 0, 0, 0, 1355, 1356, 5, 361, 0, 0, 1356, 1357, 5, 329, 0, 0,
1357, 1358, 3, 628, 314, 0, 1358, 83, 1, 0, 0, 0, 1359, 1360, 5, 361, 0, 0, 1360, 1361,
3, 70, 35, 0, 1361, 1362, 3, 474, 237, 0, 1362, 85, 1, 0, 0, 0, 1363, 1364, 5, 58, 0,
0, 1364, 1365, 5, 287, 0, 0, 1365, 1366, 3, 642, 321, 0, 1366, 87, 1, 0, 0, 0, 1367,
1368, 5, 101, 0, 0, 1368, 1369, 5, 287, 0, 0, 1369, 1370, 3, 642, 321, 0, 1370, 89,
1, 0, 0, 0, 1371, 1372, 5, 143, 0, 0, 1372, 1374, 3, 118, 59, 0, 1373, 1375, 3, 112,
56, 0, 1374, 1373, 1, 0, 0, 0, 1374, 1375, 1, 0, 0, 0, 1375, 1376, 1, 0, 0, 0, 1376,
1377, 5, 341, 0, 0, 1377, 1379, 3, 124, 62, 0, 1378, 1380, 3, 130, 65, 0, 1379, 1378,
1, 0, 0, 0, 1379, 1380, 1, 0, 0, 0, 1380, 91, 1, 0, 0, 0, 1381, 1383, 5, 283, 0, 0, 1382,
1384, 3, 132, 66, 0, 1383, 1382, 1, 0, 0, 0, 1383, 1384, 1, 0, 0, 0, 1384, 1385, 1,
0, 0, 0, 1385, 1387, 3, 118, 59, 0, 1386, 1388, 3, 112, 56, 0, 1387, 1386, 1, 0, 0,
0, 1387, 1388, 1, 0, 0, 0, 1388, 1389, 1, 0, 0, 0, 1389, 1390, 5, 139, 0, 0, 1390, 1391,
3, 124, 62, 0, 1391, 93, 1, 0, 0, 0, 1392, 1394, 5, 143, 0, 0, 1393, 1395, 5, 287, 0,
0, 1394, 1393, 1, 0, 0, 0, 1394, 1395, 1, 0, 0, 0, 1395, 1396, 1, 0, 0, 0, 1396, 1401,
3, 642, 321, 0, 1397, 1398, 5, 397, 0, 0, 1398, 1400, 3, 642, 321, 0, 1399, 1397,
1, 0, 0, 0, 1400, 1403, 1, 0, 0, 0, 1401, 1399, 1, 0, 0, 0, 1401, 1402, 1, 0, 0, 0, 1402,
1404, 1, 0, 0, 0, 1403, 1401, 1, 0, 0, 0, 1404, 1405, 5, 341, 0, 0, 1405, 1407, 3, 124,
62, 0, 1406, 1408, 3, 136, 68, 0, 1407, 1406, 1, 0, 0, 0, 1407, 1408, 1, 0, 0, 0, 1408,
95, 1, 0, 0, 0, 1409, 1411, 5, 283, 0, 0, 1410, 1412, 3, 134, 67, 0, 1411, 1410, 1,
0, 0, 0, 1411, 1412, 1, 0, 0, 0, 1412, 1414, 1, 0, 0, 0, 1413, 1415, 5, 287, 0, 0, 1414,
1413, 1, 0, 0, 0, 1414, 1415, 1, 0, 0, 0, 1415, 1416, 1, 0, 0, 0, 1416, 1421, 3, 642,
321, 0, 1417, 1418, 5, 397, 0, 0, 1418, 1420, 3, 642, 321, 0, 1419, 1417, 1, 0, 0,
0, 1420, 1423, 1, 0, 0, 0, 1421, 1419, 1, 0, 0, 0, 1421, 1422, 1, 0, 0, 0, 1422, 1424,
1, 0, 0, 0, 1423, 1421, 1, 0, 0, 0, 1424, 1425, 5, 139, 0, 0, 1425, 1426, 3, 124, 62,
0, 1426, 97, 1, 0, 0, 0, 1427, 1428, 5, 308, 0, 0, 1428, 1429, 5, 287, 0, 0, 1429, 1430,
5, 143, 0, 0, 1430, 1431, 3, 126, 63, 0, 1431, 99, 1, 0, 0, 0, 1432, 1433, 5, 308, 0,
0, 1433, 1434, 5, 288, 0, 0, 1434, 101, 1, 0, 0, 0, 1435, 1436, 5, 308, 0, 0, 1436,
1437, 5, 62, 0, 0, 1437, 1438, 5, 288, 0, 0, 1438, 103, 1, 0, 0, 0, 1439, 1440, 5, 304,
0, 0, 1440, 1444, 5, 287, 0, 0, 1441, 1445, 5, 7, 0, 0, 1442, 1445, 5, 213, 0, 0, 1443,
1445, 3, 642, 321, 0, 1444, 1441, 1, 0, 0, 0, 1444, 1442, 1, 0, 0, 0, 1444, 1443, 1,
0, 0, 0, 1445, 105, 1, 0, 0, 0, 1446, 1447, 5, 308, 0, 0, 1447, 1449, 5, 143, 0, 0, 1448,
1450, 3, 126, 63, 0, 1449, 1448, 1, 0, 0, 0, 1449, 1450, 1, 0, 0, 0, 1450, 1453, 1,
0, 0, 0, 1451, 1452, 5, 224, 0, 0, 1452, 1454, 3, 110, 55, 0, 1453, 1451, 1, 0, 0, 0,
1453, 1454, 1, 0, 0, 0, 1454, 107, 1, 0, 0, 0, 1455, 1456, 5, 308, 0, 0, 1456, 1457,
5, 252, 0, 0, 1457, 1458, 3, 642, 321, 0, 1458, 109, 1, 0, 0, 0, 1459, 1462, 5, 7, 0,
0, 1460, 1462, 3, 116, 58, 0, 1461, 1459, 1, 0, 0, 0, 1461, 1460, 1, 0, 0, 0, 1462,
111, 1, 0, 0, 0, 1463, 1464, 5, 224, 0, 0, 1464, 1465, 3, 114, 57, 0, 1465, 113, 1,
0, 0, 0, 1466, 1467, 3, 70, 35, 0, 1467, 1468, 3, 474, 237, 0, 1468, 1478, 1, 0, 0,
0, 1469, 1471, 5, 329, 0, 0, 1470, 1469, 1, 0, 0, 0, 1470, 1471, 1, 0, 0, 0, 1471, 1472,
1, 0, 0, 0, 1472, 1478, 3, 628, 314, 0, 1473, 1474, 5, 366, 0, 0, 1474, 1478, 5, 426,
0, 0, 1475, 1476, 5, 303, 0, 0, 1476, 1478, 3, 642, 321, 0, 1477, 1466, 1, 0, 0, 0,
1477, 1470, 1, 0, 0, 0, 1477, 1473, 1, 0, 0, 0, 1477, 1475, 1, 0, 0, 0, 1478, 115, 1,
0, 0, 0, 1479, 1480, 3, 70, 35, 0, 1480, 1481, 3, 474, 237, 0, 1481, 1500, 1, 0, 0,
0, 1482, 1484, 5, 329, 0, 0, 1483, 1482, 1, 0, 0, 0, 1483, 1484, 1, 0, 0, 0, 1484, 1485,
1, 0, 0, 0, 1485, 1490, 3, 480, 240, 0, 1486, 1487, 5, 399, 0, 0, 1487, 1488, 3, 254,
127, 0, 1488, 1489, 5, 400, 0, 0, 1489, 1491, 1, 0, 0, 0, 1490, 1486, 1, 0, 0, 0, 1490,
1491, 1, 0, 0, 0, 1491, 1493, 1, 0, 0, 0, 1492, 1494, 3, 630, 315, 0, 1493, 1492, 1,
0, 0, 0, 1493, 1494, 1, 0, 0, 0, 1494, 1500, 1, 0, 0, 0, 1495, 1496, 5, 366, 0, 0, 1496,
1500, 5, 426, 0, 0, 1497, 1498, 5, 303, 0, 0, 1498, 1500, 3, 642, 321, 0, 1499, 1479,
1, 0, 0, 0, 1499, 1483, 1, 0, 0, 0, 1499, 1495, 1, 0, 0, 0, 1499, 1497, 1, 0, 0, 0, 1500,
117, 1, 0, 0, 0, 1501, 1506, 3, 120, 60, 0, 1502, 1503, 5, 397, 0, 0, 1503, 1505, 3,
120, 60, 0, 1504, 1502, 1, 0, 0, 0, 1505, 1508, 1, 0, 0, 0, 1506, 1504, 1, 0, 0, 0, 1506,
1507, 1, 0, 0, 0, 1507, 119, 1, 0, 0, 0, 1508, 1506, 1, 0, 0, 0, 1509, 1514, 3, 122,
61, 0, 1510, 1511, 5, 399, 0, 0, 1511, 1512, 3, 254, 127, 0, 1512, 1513, 5, 400, 0,
0, 1513, 1515, 1, 0, 0, 0, 1514, 1510, 1, 0, 0, 0, 1514, 1515, 1, 0, 0, 0, 1515, 121,
1, 0, 0, 0, 1516, 1517, 7, 11, 0, 0, 1517, 123, 1, 0, 0, 0, 1518, 1523, 3, 126, 63, 0,
1519, 1520, 5, 397, 0, 0, 1520, 1522, 3, 126, 63, 0, 1521, 1519, 1, 0, 0, 0, 1522,
1525, 1, 0, 0, 0, 1523, 1521, 1, 0, 0, 0, 1523, 1524, 1, 0, 0, 0, 1524, 125, 1, 0, 0,
0, 1525, 1523, 1, 0, 0, 0, 1526, 1527, 5, 369, 0, 0, 1527, 1533, 3, 646, 323, 0, 1528,
1529, 5, 144, 0, 0, 1529, 1533, 3, 646, 323, 0, 1530, 1531, 5, 287, 0, 0, 1531, 1533,
3, 642, 321, 0, 1532, 1526, 1, 0, 0, 0, 1532, 1528, 1, 0, 0, 0, 1532, 1530, 1, 0, 0,
0, 1533, 127, 1, 0, 0, 0, 1534, 1535, 5, 369, 0, 0, 1535, 1540, 3, 646, 323, 0, 1536,
1537, 5, 287, 0, 0, 1537, 1540, 3, 642, 321, 0, 1538, 1540, 3, 642, 321, 0, 1539,
1534, 1, 0, 0, 0, 1539, 1536, 1, 0, 0, 0, 1539, 1538, 1, 0, 0, 0, 1540, 129, 1, 0, 0,
0, 1541, 1542, 5, 387, 0, 0, 1542, 1543, 5, 143, 0, 0, 1543, 1544, 5, 227, 0, 0, 1544,
131, 1, 0, 0, 0, 1545, 1546, 5, 143, 0, 0, 1546, 1547, 5, 227, 0, 0, 1547, 1548, 5,
134, 0, 0, 1548, 133, 1, 0, 0, 0, 1549, 1550, 5, 5, 0, 0, 1550, 1551, 5, 227, 0, 0, 1551,
1552, 5, 134, 0, 0, 1552, 135, 1, 0, 0, 0, 1553, 1554, 5, 387, 0, 0, 1554, 1555, 5,
5, 0, 0, 1555, 1556, 5, 227, 0, 0, 1556, 137, 1, 0, 0, 0, 1557, 1559, 5, 212, 0, 0, 1558,
1560, 5, 276, 0, 0, 1559, 1558, 1, 0, 0, 0, 1559, 1560, 1, 0, 0, 0, 1560, 1561, 1, 0,
0, 0, 1561, 1562, 5, 329, 0, 0, 1562, 1568, 3, 480, 240, 0, 1563, 1564, 7, 12, 0, 0,
1564, 1566, 5, 239, 0, 0, 1565, 1567, 3, 634, 317, 0, 1566, 1565, 1, 0, 0, 0, 1566,
1567, 1, 0, 0, 0, 1567, 1569, 1, 0, 0, 0, 1568, 1563, 1, 0, 0, 0, 1568, 1569, 1, 0, 0,
0, 1569, 139, 1, 0, 0, 0, 1570, 1575, 3, 142, 71, 0, 1571, 1572, 5, 397, 0, 0, 1572,
1574, 3, 142, 71, 0, 1573, 1571, 1, 0, 0, 0, 1574, 1577, 1, 0, 0, 0, 1575, 1573, 1,
0, 0, 0, 1575, 1576, 1, 0, 0, 0, 1576, 141, 1, 0, 0, 0, 1577, 1575, 1, 0, 0, 0, 1578,
1579, 3, 144, 72, 0, 1579, 1580, 5, 426, 0, 0, 1580, 143, 1, 0, 0, 0, 1581, 1582, 7,
13, 0, 0, 1582, 145, 1, 0, 0, 0, 1583, 1585, 5, 58, 0, 0, 1584, 1586, 5, 333, 0, 0, 1585,
1584, 1, 0, 0, 0, 1585, 1586, 1, 0, 0, 0, 1586, 1587, 1, 0, 0, 0, 1587, 1588, 5, 141,
0, 0, 1588, 1589, 3, 558, 279, 0, 1589, 1590, 5, 17, 0, 0, 1590, 1593, 5, 426, 0, 0,
1591, 1592, 5, 370, 0, 0, 1592, 1594, 3, 140, 70, 0, 1593, 1591, 1, 0, 0, 0, 1593,
1594, 1, 0, 0, 0, 1594, 147, 1, 0, 0, 0, 1595, 1597, 5, 101, 0, 0, 1596, 1598, 5, 333,
0, 0, 1597, 1596, 1, 0, 0, 0, 1597, 1598, 1, 0, 0, 0, 1598, 1599, 1, 0, 0, 0, 1599, 1601,
5, 141, 0, 0, 1600, 1602, 3, 30, 15, 0, 1601, 1600, 1, 0, 0, 0, 1601, 1602, 1, 0, 0,
0, 1602, 1603, 1, 0, 0, 0, 1603, 1604, 3, 560, 280, 0, 1604, 149, 1, 0, 0, 0, 1605,
1606, 5, 271, 0, 0, 1606, 1607, 7, 14, 0, 0, 1607, 151, 1, 0, 0, 0, 1608, 1609, 5, 58,
0, 0, 1609, 1610, 5, 333, 0, 0, 1610, 1611, 5, 194, 0, 0, 1611, 1612, 5, 432, 0, 0,
1612, 1614, 5, 399, 0, 0, 1613, 1615, 3, 248, 124, 0, 1614, 1613, 1, 0, 0, 0, 1614,
1615, 1, 0, 0, 0, 1615, 1616, 1, 0, 0, 0, 1616, 1617, 5, 400, 0, 0, 1617, 1618, 3, 584,
292, 0, 1618, 153, 1, 0, 0, 0, 1619, 1620, 5, 101, 0, 0, 1620, 1621, 5, 333, 0, 0, 1621,
1623, 5, 194, 0, 0, 1622, 1624, 3, 30, 15, 0, 1623, 1622, 1, 0, 0, 0, 1623, 1624, 1,
0, 0, 0, 1624, 1625, 1, 0, 0, 0, 1625, 1626, 5, 432, 0, 0, 1626, 155, 1, 0, 0, 0, 1627,
1628, 5, 58, 0, 0, 1628, 1629, 5, 155, 0, 0, 1629, 1630, 3, 642, 321, 0, 1630, 1631,
5, 224, 0, 0, 1631, 1632, 5, 329, 0, 0, 1632, 1633, 3, 480, 240, 0, 1633, 1634, 3,
266, 133, 0, 1634, 1635, 5, 17, 0, 0, 1635, 1639, 5, 426, 0, 0, 1636, 1637, 5, 387,
0, 0, 1637, 1638, 5, 84, 0, 0, 1638, 1640, 5, 265, 0, 0, 1639, 1636, 1, 0, 0, 0, 1639,
1640, 1, 0, 0, 0, 1640, 1643, 1, 0, 0, 0, 1641, 1642, 5, 150, 0, 0, 1642, 1644, 3, 226,
113, 0, 1643, 1641, 1, 0, 0, 0, 1643, 1644, 1, 0, 0, 0, 1644, 1648, 1, 0, 0, 0, 1645,
1646, 5, 154, 0, 0, 1646, 1647, 5, 329, 0, 0, 1647, 1649, 3, 480, 240, 0, 1648, 1645,
1, 0, 0, 0, 1648, 1649, 1, 0, 0, 0, 1649, 1653, 1, 0, 0, 0, 1650, 1651, 5, 238, 0, 0,
1651, 1652, 5, 32, 0, 0, 1652, 1654, 3, 266, 133, 0, 1653, 1650, 1, 0, 0, 0, 1653,
1654, 1, 0, 0, 0, 1654, 1659, 1, 0, 0, 0, 1655, 1657, 3, 222, 111, 0, 1656, 1655, 1,
0, 0, 0, 1656, 1657, 1, 0, 0, 0, 1657, 1658, 1, 0, 0, 0, 1658, 1660, 3, 246, 123, 0,
1659, 1656, 1, 0, 0, 0, 1659, 1660, 1, 0, 0, 0, 1660, 1662, 1, 0, 0, 0, 1661, 1663,
3, 426, 213, 0, 1662, 1661, 1, 0, 0, 0, 1662, 1663, 1, 0, 0, 0, 1663, 1665, 1, 0, 0,
0, 1664, 1666, 3, 224, 112, 0, 1665, 1664, 1, 0, 0, 0, 1665, 1666, 1, 0, 0, 0, 1666,
1668, 1, 0, 0, 0, 1667, 1669, 3, 196, 98, 0, 1668, 1667, 1, 0, 0, 0, 1668, 1669, 1,
0, 0, 0, 1669, 157, 1, 0, 0, 0, 1670, 1671, 5, 101, 0, 0, 1671, 1673, 5, 155, 0, 0, 1672,
1674, 3, 30, 15, 0, 1673, 1672, 1, 0, 0, 0, 1673, 1674, 1, 0, 0, 0, 1674, 1675, 1, 0,
0, 0, 1675, 1676, 3, 642, 321, 0, 1676, 1677, 5, 224, 0, 0, 1677, 1678, 3, 480, 240,
0, 1678, 159, 1, 0, 0, 0, 1679, 1682, 5, 58, 0, 0, 1680, 1681, 5, 228, 0, 0, 1681, 1683,
5, 278, 0, 0, 1682, 1680, 1, 0, 0, 0, 1682, 1683, 1, 0, 0, 0, 1683, 1684, 1, 0, 0, 0,
1684, 1686, 5, 378, 0, 0, 1685, 1687, 3, 32, 16, 0, 1686, 1685, 1, 0, 0, 0, 1686, 1687,
1, 0, 0, 0, 1687, 1688, 1, 0, 0, 0, 1688, 1693, 3, 486, 243, 0, 1689, 1690, 5, 399,
0, 0, 1690, 1691, 3, 306, 153, 0, 1691, 1692, 5, 400, 0, 0, 1692, 1694, 1, 0, 0, 0,
1693, 1689, 1, 0, 0, 0, 1693, 1694, 1, 0, 0, 0, 1694, 1696, 1, 0, 0, 0, 1695, 1697,
3, 196, 98, 0, 1696, 1695, 1, 0, 0, 0, 1696, 1697, 1, 0, 0, 0, 1697, 1699, 1, 0, 0, 0,
1698, 1700, 3, 162, 81, 0, 1699, 1698, 1, 0, 0, 0, 1699, 1700, 1, 0, 0, 0, 1700, 1702,
1, 0, 0, 0, 1701, 1703, 3, 224, 112, 0, 1702, 1701, 1, 0, 0, 0, 1702, 1703, 1, 0, 0,
0, 1703, 1704, 1, 0, 0, 0, 1704, 1705, 5, 17, 0, 0, 1705, 1706, 3, 382, 191, 0, 1706,
161, 1, 0, 0, 0, 1707, 1708, 5, 238, 0, 0, 1708, 1714, 5, 224, 0, 0, 1709, 1710, 5,
399, 0, 0, 1710, 1715, 3, 254, 127, 0, 1711, 1712, 5, 316, 0, 0, 1712, 1713, 5, 399,
0, 0, 1713, 1715, 3, 204, 102, 0, 1714, 1709, 1, 0, 0, 0, 1714, 1711, 1, 0, 0, 0, 1715,
1716, 1, 0, 0, 0, 1716, 1717, 5, 400, 0, 0, 1717, 163, 1, 0, 0, 0, 1718, 1721, 3, 166,
83, 0, 1719, 1721, 3, 168, 84, 0, 1720, 1718, 1, 0, 0, 0, 1720, 1719, 1, 0, 0, 0, 1721,
165, 1, 0, 0, 0, 1722, 1723, 5, 42, 0, 0, 1723, 1724, 5, 224, 0, 0, 1724, 1725, 5, 399,
0, 0, 1725, 1726, 3, 254, 127, 0, 1726, 1727, 5, 400, 0, 0, 1727, 167, 1, 0, 0, 0, 1728,
1729, 3, 170, 85, 0, 1729, 1730, 3, 172, 86, 0, 1730, 169, 1, 0, 0, 0, 1731, 1732,
5, 98, 0, 0, 1732, 1733, 5, 224, 0, 0, 1733, 1734, 5, 399, 0, 0, 1734, 1735, 3, 254,
127, 0, 1735, 1736, 5, 400, 0, 0, 1736, 171, 1, 0, 0, 0, 1737, 1738, 5, 315, 0, 0, 1738,
1739, 5, 224, 0, 0, 1739, 1740, 5, 399, 0, 0, 1740, 1741, 3, 254, 127, 0, 1741, 1742,
5, 400, 0, 0, 1742, 173, 1, 0, 0, 0, 1743, 1744, 5, 101, 0, 0, 1744, 1746, 5, 378, 0,
0, 1745, 1747, 3, 30, 15, 0, 1746, 1745, 1, 0, 0, 0, 1746, 1747, 1, 0, 0, 0, 1747, 1748,
1, 0, 0, 0, 1748, 1749, 3, 484, 242, 0, 1749, 175, 1, 0, 0, 0, 1750, 1751, 5, 58, 0,
0, 1751, 1752, 5, 202, 0, 0, 1752, 1754, 5, 378, 0, 0, 1753, 1755, 3, 32, 16, 0, 1754,
1753, 1, 0, 0, 0, 1754, 1755, 1, 0, 0, 0, 1755, 1756, 1, 0, 0, 0, 1756, 1758, 3, 486,
243, 0, 1757, 1759, 3, 38, 19, 0, 1758, 1757, 1, 0, 0, 0, 1758, 1759, 1, 0, 0, 0, 1759,
1761, 1, 0, 0, 0, 1760, 1762, 3, 196, 98, 0, 1761, 1760, 1, 0, 0, 0, 1761, 1762, 1,
0, 0, 0, 1762, 1764, 1, 0, 0, 0, 1763, 1765, 3, 162, 81, 0, 1764, 1763, 1, 0, 0, 0, 1764,
1765, 1, 0, 0, 0, 1765, 1767, 1, 0, 0, 0, 1766, 1768, 3, 164, 82, 0, 1767, 1766, 1,
0, 0, 0, 1767, 1768, 1, 0, 0, 0, 1768, 1770, 1, 0, 0, 0, 1769, 1771, 3, 222, 111, 0,
1770, 1769, 1, 0, 0, 0, 1770, 1771, 1, 0, 0, 0, 1771, 1773, 1, 0, 0, 0, 1772, 1774,
3, 246, 123, 0, 1773, 1772, 1, 0, 0, 0, 1773, 1774, 1, 0, 0, 0, 1774, 1776, 1, 0, 0,
0, 1775, 1777, 3, 426, 213, 0, 1776, 1775, 1, 0, 0, 0, 1776, 1777, 1, 0, 0, 0, 1777,
1779, 1, 0, 0, 0, 1778, 1780, 3, 224, 112, 0, 1779, 1778, 1, 0, 0, 0, 1779, 1780, 1,
0, 0, 0, 1780, 1781, 1, 0, 0, 0, 1781, 1782, 5, 17, 0, 0, 1782, 1783, 3, 382, 191, 0,
1783, 177, 1, 0, 0, 0, 1784, 1785, 5, 101, 0, 0, 1785, 1786, 5, 202, 0, 0, 1786, 1788,
5, 378, 0, 0, 1787, 1789, 3, 30, 15, 0, 1788, 1787, 1, 0, 0, 0, 1788, 1789, 1, 0, 0,
0, 1789, 1790, 1, 0, 0, 0, 1790, 1791, 3, 484, 242, 0, 1791, 179, 1, 0, 0, 0, 1792,
1793, 5, 58, 0, 0, 1793, 1794, 5, 293, 0, 0, 1794, 1795, 5, 258, 0, 0, 1795, 1796,
3, 642, 321, 0, 1796, 1798, 3, 188, 94, 0, 1797, 1799, 3, 190, 95, 0, 1798, 1797,
1, 0, 0, 0, 1798, 1799, 1, 0, 0, 0, 1799, 1801, 1, 0, 0, 0, 1800, 1802, 3, 270, 135,
0, 1801, 1800, 1, 0, 0, 0, 1801, 1802, 1, 0, 0, 0, 1802, 1803, 1, 0, 0, 0, 1803, 1804,
3, 192, 96, 0, 1804, 181, 1, 0, 0, 0, 1805, 1806, 5, 101, 0, 0, 1806, 1807, 5, 293,
0, 0, 1807, 1808, 5, 258, 0, 0, 1808, 1809, 3, 642, 321, 0, 1809, 183, 1, 0, 0, 0, 1810,
1811, 5, 9, 0, 0, 1811, 1812, 5, 293, 0, 0, 1812, 1813, 5, 258, 0, 0, 1813, 1814, 3,
642, 321, 0, 1814, 1815, 3, 186, 93, 0, 1815, 185, 1, 0, 0, 0, 1816, 1822, 3, 188,
94, 0, 1817, 1822, 3, 190, 95, 0, 1818, 1822, 3, 270, 135, 0, 1819, 1822, 3, 192,
96, 0, 1820, 1822, 5, 115, 0, 0, 1821, 1816, 1, 0, 0, 0, 1821, 1817, 1, 0, 0, 0, 1821,
1818, 1, 0, 0, 0, 1821, 1819, 1, 0, 0, 0, 1821, 1820, 1, 0, 0, 0, 1822, 187, 1, 0, 0,
0, 1823, 1824, 5, 59, 0, 0, 1824, 1839, 5, 426, 0, 0, 1825, 1827, 5, 111, 0, 0, 1826,
1828, 5, 431, 0, 0, 1827, 1826, 1, 0, 0, 0, 1827, 1828, 1, 0, 0, 0, 1828, 1829, 1, 0,
0, 0, 1829, 1836, 3, 582, 291, 0, 1830, 1834, 5, 20, 0, 0, 1831, 1832, 5, 223, 0, 0,
1832, 1834, 5, 32, 0, 0, 1833, 1830, 1, 0, 0, 0, 1833, 1831, 1, 0, 0, 0, 1834, 1835,
1, 0, 0, 0, 1835, 1837, 5, 426, 0, 0, 1836, 1833, 1, 0, 0, 0, 1836, 1837, 1, 0, 0, 0,
1837, 1839, 1, 0, 0, 0, 1838, 1823, 1, 0, 0, 0, 1838, 1825, 1, 0, 0, 0, 1839, 189, 1,
0, 0, 0, 1840, 1841, 5, 116, 0, 0, 1841, 1842, 5, 17, 0, 0, 1842, 1843, 5, 426, 0, 0,
1843, 191, 1, 0, 0, 0, 1844, 1846, 5, 85, 0, 0, 1845, 1844, 1, 0, 0, 0, 1845, 1846,
1, 0, 0, 0, 1846, 1847, 1, 0, 0, 0, 1847, 1848, 5, 17, 0, 0, 1848, 1849, 3, 2, 1, 0, 1849,
193, 1, 0, 0, 0, 1850, 1853, 3, 642, 321, 0, 1851, 1853, 5, 426, 0, 0, 1852, 1850,
1, 0, 0, 0, 1852, 1851, 1, 0, 0, 0, 1853, 195, 1, 0, 0, 0, 1854, 1855, 5, 47, 0, 0, 1855,
1856, 5, 426, 0, 0, 1856, 197, 1, 0, 0, 0, 1857, 1858, 5, 183, 0, 0, 1858, 1859, 5,
431, 0, 0, 1859, 199, 1, 0, 0, 0, 1860, 1861, 5, 238, 0, 0, 1861, 1870, 5, 32, 0, 0,
1862, 1865, 5, 399, 0, 0, 1863, 1866, 3, 202, 101, 0, 1864, 1866, 3, 254, 127, 0,
1865, 1863, 1, 0, 0, 0, 1865, 1864, 1, 0, 0, 0, 1866, 1871, 1, 0, 0, 0, 1867, 1868,
5, 316, 0, 0, 1868, 1869, 5, 399, 0, 0, 1869, 1871, 3, 204, 102, 0, 1870, 1862, 1,
0, 0, 0, 1870, 1867, 1, 0, 0, 0, 1871, 1872, 1, 0, 0, 0, 1872, 1873, 5, 400, 0, 0, 1873,
201, 1, 0, 0, 0, 1874, 1879, 3, 318, 159, 0, 1875, 1876, 5, 397, 0, 0, 1876, 1878,
3, 318, 159, 0, 1877, 1875, 1, 0, 0, 0, 1878, 1881, 1, 0, 0, 0, 1879, 1877, 1, 0, 0,
0, 1879, 1880, 1, 0, 0, 0, 1880, 203, 1, 0, 0, 0, 1881, 1879, 1, 0, 0, 0, 1882, 1887,
3, 206, 103, 0, 1883, 1884, 5, 397, 0, 0, 1884, 1886, 3, 206, 103, 0, 1885, 1883,
1, 0, 0, 0, 1886, 1889, 1, 0, 0, 0, 1887, 1885, 1, 0, 0, 0, 1887, 1888, 1, 0, 0, 0, 1888,
205, 1, 0, 0, 0, 1889, 1887, 1, 0, 0, 0, 1890, 1909, 3, 256, 128, 0, 1891, 1896, 3,
670, 335, 0, 1892, 1896, 3, 672, 336, 0, 1893, 1896, 3, 676, 338, 0, 1894, 1896,
3, 678, 339, 0, 1895, 1891, 1, 0, 0, 0, 1895, 1892, 1, 0, 0, 0, 1895, 1893, 1, 0, 0,
0, 1895, 1894, 1, 0, 0, 0, 1896, 1897, 1, 0, 0, 0, 1897, 1898, 5, 399, 0, 0, 1898, 1899,
3, 256, 128, 0, 1899, 1900, 5, 400, 0, 0, 1900, 1909, 1, 0, 0, 0, 1901, 1902, 7, 15,
0, 0, 1902, 1903, 5, 399, 0, 0, 1903, 1904, 5, 431, 0, 0, 1904, 1905, 5, 397, 0, 0,
1905, 1906, 3, 256, 128, 0, 1906, 1907, 5, 400, 0, 0, 1907, 1909, 1, 0, 0, 0, 1908,
1890, 1, 0, 0, 0, 1908, 1895, 1, 0, 0, 0, 1908, 1901, 1, 0, 0, 0, 1909, 207, 1, 0, 0,
0, 1910, 1911, 5, 42, 0, 0, 1911, 1912, 5, 32, 0, 0, 1912, 1913, 5, 399, 0, 0, 1913,
1914, 3, 254, 127, 0, 1914, 1921, 5, 400, 0, 0, 1915, 1916, 5, 315, 0, 0, 1916, 1917,
5, 32, 0, 0, 1917, 1918, 5, 399, 0, 0, 1918, 1919, 3, 264, 132, 0, 1919, 1920, 5, 400,
0, 0, 1920, 1922, 1, 0, 0, 0, 1921, 1915, 1, 0, 0, 0, 1921, 1922, 1, 0, 0, 0, 1922, 1923,
1, 0, 0, 0, 1923, 1924, 5, 166, 0, 0, 1924, 1925, 5, 431, 0, 0, 1925, 1926, 5, 31, 0,
0, 1926, 209, 1, 0, 0, 0, 1927, 1928, 5, 310, 0, 0, 1928, 1929, 5, 32, 0, 0, 1929, 1930,
5, 399, 0, 0, 1930, 1931, 3, 254, 127, 0, 1931, 1932, 5, 400, 0, 0, 1932, 1933, 5,
224, 0, 0, 1933, 1934, 5, 399, 0, 0, 1934, 1935, 3, 292, 146, 0, 1935, 1937, 5, 400,
0, 0, 1936, 1938, 3, 40, 20, 0, 1937, 1936, 1, 0, 0, 0, 1937, 1938, 1, 0, 0, 0, 1938,
211, 1, 0, 0, 0, 1939, 1942, 3, 218, 109, 0, 1940, 1942, 3, 220, 110, 0, 1941, 1939,
1, 0, 0, 0, 1941, 1940, 1, 0, 0, 0, 1942, 213, 1, 0, 0, 0, 1943, 1944, 5, 266, 0, 0, 1944,
1945, 5, 426, 0, 0, 1945, 215, 1, 0, 0, 0, 1946, 1947, 5, 267, 0, 0, 1947, 1948, 5,
426, 0, 0, 1948, 217, 1, 0, 0, 0, 1949, 1950, 5, 291, 0, 0, 1950, 1951, 5, 137, 0, 0,
1951, 1952, 5, 301, 0, 0, 1952, 1956, 5, 426, 0, 0, 1953, 1954, 5, 387, 0, 0, 1954,
1955, 5, 302, 0, 0, 1955, 1957, 3, 226, 113, 0, 1956, 1953, 1, 0, 0, 0, 1956, 1957,
1, 0, 0, 0, 1957, 219, 1, 0, 0, 0, 1958, 1959, 5, 291, 0, 0, 1959, 1960, 5, 137, 0, 0,
1960, 1962, 5, 87, 0, 0, 1961, 1963, 3, 236, 118, 0, 1962, 1961, 1, 0, 0, 0, 1962,
1963, 1, 0, 0, 0, 1963, 1965, 1, 0, 0, 0, 1964, 1966, 3, 238, 119, 0, 1965, 1964, 1,
0, 0, 0, 1965, 1966, 1, 0, 0, 0, 1966, 1968, 1, 0, 0, 0, 1967, 1969, 3, 240, 120, 0,
1968, 1967, 1, 0, 0, 0, 1968, 1969, 1, 0, 0, 0, 1969, 1971, 1, 0, 0, 0, 1970, 1972,
3, 242, 121, 0, 1971, 1970, 1, 0, 0, 0, 1971, 1972, 1, 0, 0, 0, 1972, 1974, 1, 0, 0,
0, 1973, 1975, 3, 244, 122, 0, 1974, 1973, 1, 0, 0, 0, 1974, 1975, 1, 0, 0, 0, 1975,
221, 1, 0, 0, 0, 1976, 1979, 3, 220, 110, 0, 1977, 1979, 3, 218, 109, 0, 1978, 1976,
1, 0, 0, 0, 1978, 1977, 1, 0, 0, 0, 1979, 223, 1, 0, 0, 0, 1980, 1981, 5, 332, 0, 0, 1981,
1982, 3, 226, 113, 0, 1982, 225, 1, 0, 0, 0, 1983, 1984, 5, 399, 0, 0, 1984, 1985,
3, 228, 114, 0, 1985, 1986, 5, 400, 0, 0, 1986, 227, 1, 0, 0, 0, 1987, 1997, 3, 232,
116, 0, 1988, 1993, 5, 426, 0, 0, 1989, 1990, 5, 397, 0, 0, 1990, 1992, 5, 426, 0,
0, 1991, 1989, 1, 0, 0, 0, 1992, 1995, 1, 0, 0, 0, 1993, 1991, 1, 0, 0, 0, 1993, 1994,
1, 0, 0, 0, 1994, 1997, 1, 0, 0, 0, 1995, 1993, 1, 0, 0, 0, 1996, 1987, 1, 0, 0, 0, 1996,
1988, 1, 0, 0, 0, 1997, 229, 1, 0, 0, 0, 1998, 1999, 5, 399, 0, 0, 1999, 2000, 3, 232,
116, 0, 2000, 2001, 5, 400, 0, 0, 2001, 231, 1, 0, 0, 0, 2002, 2007, 3, 234, 117, 0,
2003, 2004, 5, 397, 0, 0, 2004, 2006, 3, 234, 117, 0, 2005, 2003, 1, 0, 0, 0, 2006,
2009, 1, 0, 0, 0, 2007, 2005, 1, 0, 0, 0, 2007, 2008, 1, 0, 0, 0, 2008, 233, 1, 0, 0,
0, 2009, 2007, 1, 0, 0, 0, 2010, 2011, 5, 426, 0, 0, 2011, 2012, 5, 405, 0, 0, 2012,
2013, 5, 426, 0, 0, 2013, 235, 1, 0, 0, 0, 2014, 2015, 5, 127, 0, 0, 2015, 2016, 5,
334, 0, 0, 2016, 2017, 5, 32, 0, 0, 2017, 2021, 5, 426, 0, 0, 2018, 2019, 5, 110, 0,
0, 2019, 2020, 5, 32, 0, 0, 2020, 2022, 5, 426, 0, 0, 2021, 2018, 1, 0, 0, 0, 2021,
2022, 1, 0, 0, 0, 2022, 237, 1, 0, 0, 0, 2023, 2024, 5, 44, 0, 0, 2024, 2025, 5, 169,
0, 0, 2025, 2026, 5, 334, 0, 0, 2026, 2027, 5, 32, 0, 0, 2027, 2028, 5, 426, 0, 0, 2028,
239, 1, 0, 0, 0, 2029, 2030, 5, 198, 0, 0, 2030, 2031, 5, 174, 0, 0, 2031, 2032, 5,
334, 0, 0, 2032, 2033, 5, 32, 0, 0, 2033, 2034, 5, 426, 0, 0, 2034, 241, 1, 0, 0, 0,
2035, 2036, 5, 186, 0, 0, 2036, 2037, 5, 334, 0, 0, 2037, 2038, 5, 32, 0, 0, 2038,
2039, 5, 426, 0, 0, 2039, 243, 1, 0, 0, 0, 2040, 2041, 5, 219, 0, 0, 2041, 2042, 5,
85, 0, 0, 2042, 2043, 5, 17, 0, 0, 2043, 2044, 5, 426, 0, 0, 2044, 245, 1, 0, 0, 0, 2045,
2046, 5, 321, 0, 0, 2046, 2047, 5, 17, 0, 0, 2047, 2048, 5, 160, 0, 0, 2048, 2049,
5, 426, 0, 0, 2049, 2050, 5, 233, 0, 0, 2050, 2055, 5, 426, 0, 0, 2051, 2052, 5, 159,
0, 0, 2052, 2053, 5, 426, 0, 0, 2053, 2054, 5, 232, 0, 0, 2054, 2056, 5, 426, 0, 0,
2055, 2051, 1, 0, 0, 0, 2055, 2056, 1, 0, 0, 0, 2056, 2087, 1, 0, 0, 0, 2057, 2058,
5, 321, 0, 0, 2058, 2059, 5, 32, 0, 0, 2059, 2063, 5, 426, 0, 0, 2060, 2061, 5, 387,
0, 0, 2061, 2062, 5, 302, 0, 0, 2062, 2064, 3, 226, 113, 0, 2063, 2060, 1, 0, 0, 0,
2063, 2064, 1, 0, 0, 0, 2064, 2068, 1, 0, 0, 0, 2065, 2066, 5, 321, 0, 0, 2066, 2067,
5, 17, 0, 0, 2067, 2069, 3, 642, 321, 0, 2068, 2065, 1, 0, 0, 0, 2068, 2069, 1, 0, 0,
0, 2069, 2087, 1, 0, 0, 0, 2070, 2071, 5, 321, 0, 0, 2071, 2072, 5, 32, 0, 0, 2072,
2076, 3, 642, 321, 0, 2073, 2074, 5, 387, 0, 0, 2074, 2075, 5, 302, 0, 0, 2075, 2077,
3, 226, 113, 0, 2076, 2073, 1, 0, 0, 0, 2076, 2077, 1, 0, 0, 0, 2077, 2081, 1, 0, 0,
0, 2078, 2079, 5, 321, 0, 0, 2079, 2080, 5, 17, 0, 0, 2080, 2082, 3, 642, 321, 0, 2081,
2078, 1, 0, 0, 0, 2081, 2082, 1, 0, 0, 0, 2082, 2087, 1, 0, 0, 0, 2083, 2084, 5, 321,
0, 0, 2084, 2085, 5, 17, 0, 0, 2085, 2087, 3, 642, 321, 0, 2086, 2045, 1, 0, 0, 0, 2086,
2057, 1, 0, 0, 0, 2086, 2070, 1, 0, 0, 0, 2086, 2083, 1, 0, 0, 0, 2087, 247, 1, 0, 0,
0, 2088, 2093, 3, 312, 156, 0, 2089, 2090, 5, 397, 0, 0, 2090, 2092, 3, 312, 156,
0, 2091, 2089, 1, 0, 0, 0, 2092, 2095, 1, 0, 0, 0, 2093, 2091, 1, 0, 0, 0, 2093, 2094,
1, 0, 0, 0, 2094, 249, 1, 0, 0, 0, 2095, 2093, 1, 0, 0, 0, 2096, 2101, 3, 314, 157, 0,
2097, 2098, 5, 397, 0, 0, 2098, 2100, 3, 314, 157, 0, 2099, 2097, 1, 0, 0, 0, 2100,
2103, 1, 0, 0, 0, 2101, 2099, 1, 0, 0, 0, 2101, 2102, 1, 0, 0, 0, 2102, 251, 1, 0, 0,
0, 2103, 2101, 1, 0, 0, 0, 2104, 2109, 3, 342, 171, 0, 2105, 2106, 5, 397, 0, 0, 2106,
2108, 3, 342, 171, 0, 2107, 2105, 1, 0, 0, 0, 2108, 2111, 1, 0, 0, 0, 2109, 2107, 1,
0, 0, 0, 2109, 2110, 1, 0, 0, 0, 2110, 253, 1, 0, 0, 0, 2111, 2109, 1, 0, 0, 0, 2112,
2117, 3, 256, 128, 0, 2113, 2114, 5, 397, 0, 0, 2114, 2116, 3, 256, 128, 0, 2115,
2113, 1, 0, 0, 0, 2116, 2119, 1, 0, 0, 0, 2117, 2115, 1, 0, 0, 0, 2117, 2118, 1, 0, 0,
0, 2118, 255, 1, 0, 0, 0, 2119, 2117, 1, 0, 0, 0, 2120, 2123, 3, 686, 343, 0, 2121,
2123, 4, 128, 0, 0, 2122, 2120, 1, 0, 0, 0, 2122, 2121, 1, 0, 0, 0, 2123, 257, 1, 0,
0, 0, 2124, 2125, 3, 686, 343, 0, 2125, 259, 1, 0, 0, 0, 2126, 2127, 3, 642, 321, 0,
2127, 261, 1, 0, 0, 0, 2128, 2138, 3, 256, 128, 0, 2129, 2134, 5, 395, 0, 0, 2130,
2135, 5, 104, 0, 0, 2131, 2135, 5, 175, 0, 0, 2132, 2135, 5, 375, 0, 0, 2133, 2135,
3, 642, 321, 0, 2134, 2130, 1, 0, 0, 0, 2134, 2131, 1, 0, 0, 0, 2134, 2132, 1, 0, 0,
0, 2134, 2133, 1, 0, 0, 0, 2135, 2137, 1, 0, 0, 0, 2136, 2129, 1, 0, 0, 0, 2137, 2140,
1, 0, 0, 0, 2138, 2136, 1, 0, 0, 0, 2138, 2139, 1, 0, 0, 0, 2139, 263, 1, 0, 0, 0, 2140,
2138, 1, 0, 0, 0, 2141, 2146, 3, 304, 152, 0, 2142, 2143, 5, 397, 0, 0, 2143, 2145,
3, 304, 152, 0, 2144, 2142, 1, 0, 0, 0, 2145, 2148, 1, 0, 0, 0, 2146, 2144, 1, 0, 0,
0, 2146, 2147, 1, 0, 0, 0, 2147, 265, 1, 0, 0, 0, 2148, 2146, 1, 0, 0, 0, 2149, 2150,
5, 399, 0, 0, 2150, 2151, 3, 254, 127, 0, 2151, 2152, 5, 400, 0, 0, 2152, 267, 1, 0,
0, 0, 2153, 2155, 3, 270, 135, 0, 2154, 2156, 3, 272, 136, 0, 2155, 2154, 1, 0, 0,
0, 2155, 2156, 1, 0, 0, 0, 2156, 2159, 1, 0, 0, 0, 2157, 2159, 3, 274, 137, 0, 2158,
2153, 1, 0, 0, 0, 2158, 2157, 1, 0, 0, 0, 2159, 269, 1, 0, 0, 0, 2160, 2163, 3, 666,
333, 0, 2161, 2163, 3, 668, 334, 0, 2162, 2160, 1, 0, 0, 0, 2162, 2161, 1, 0, 0, 0,
2163, 271, 1, 0, 0, 0, 2164, 2165, 7, 16, 0, 0, 2165, 273, 1, 0, 0, 0, 2166, 2170, 5,
109, 0, 0, 2167, 2168, 5, 216, 0, 0, 2168, 2170, 5, 109, 0, 0, 2169, 2166, 1, 0, 0,
0, 2169, 2167, 1, 0, 0, 0, 2170, 275, 1, 0, 0, 0, 2171, 2172, 7, 17, 0, 0, 2172, 277,
1, 0, 0, 0, 2173, 2174, 5, 55, 0, 0, 2174, 2176, 3, 642, 321, 0, 2175, 2173, 1, 0, 0,
0, 2175, 2176, 1, 0, 0, 0, 2176, 2177, 1, 0, 0, 0, 2177, 2179, 3, 282, 141, 0, 2178,
2180, 3, 338, 169, 0, 2179, 2178, 1, 0, 0, 0, 2179, 2180, 1, 0, 0, 0, 2180, 279, 1,
0, 0, 0, 2181, 2182, 5, 55, 0, 0, 2182, 2183, 3, 642, 321, 0, 2183, 2185, 3, 282, 141,
0, 2184, 2186, 3, 340, 170, 0, 2185, 2184, 1, 0, 0, 0, 2185, 2186, 1, 0, 0, 0, 2186,
281, 1, 0, 0, 0, 2187, 2190, 3, 284, 142, 0, 2188, 2190, 3, 286, 143, 0, 2189, 2187,
1, 0, 0, 0, 2189, 2188, 1, 0, 0, 0, 2190, 283, 1, 0, 0, 0, 2191, 2192, 3, 336, 168, 0,
2192, 2193, 3, 266, 133, 0, 2193, 285, 1, 0, 0, 0, 2194, 2195, 5, 40, 0, 0, 2195, 2196,
5, 399, 0, 0, 2196, 2197, 3, 584, 292, 0, 2197, 2198, 5, 400, 0, 0, 2198, 287, 1, 0,
0, 0, 2199, 2200, 5, 55, 0, 0, 2200, 2202, 3, 642, 321, 0, 2201, 2199, 1, 0, 0, 0, 2201,
2202, 1, 0, 0, 0, 2202, 2203, 1, 0, 0, 0, 2203, 2204, 5, 136, 0, 0, 2204, 2205, 5, 173,
0, 0, 2205, 2206, 3, 266, 133, 0, 2206, 2207, 5, 269, 0, 0, 2207, 2208, 3, 480, 240,
0, 2208, 2210, 3, 266, 133, 0, 2209, 2211, 3, 338, 169, 0, 2210, 2209, 1, 0, 0, 0,
2210, 2211, 1, 0, 0, 0, 2211, 289, 1, 0, 0, 0, 2212, 2213, 5, 55, 0, 0, 2213, 2214,
3, 642, 321, 0, 2214, 2215, 5, 136, 0, 0, 2215, 2216, 5, 173, 0, 0, 2216, 2217, 3,
266, 133, 0, 2217, 2218, 5, 269, 0, 0, 2218, 2219, 3, 480, 240, 0, 2219, 2221, 3,
266, 133, 0, 2220, 2222, 3, 340, 170, 0, 2221, 2220, 1, 0, 0, 0, 2221, 2222, 1, 0,
0, 0, 2222, 291, 1, 0, 0, 0, 2223, 2226, 3, 298, 149, 0, 2224, 2226, 3, 294, 147, 0,
2225, 2223, 1, 0, 0, 0, 2225, 2224, 1, 0, 0, 0, 2226, 293, 1, 0, 0, 0, 2227, 2232, 3,
296, 148, 0, 2228, 2229, 5, 397, 0, 0, 2229, 2231, 3, 296, 148, 0, 2230, 2228, 1,
0, 0, 0, 2231, 2234, 1, 0, 0, 0, 2232, 2230, 1, 0, 0, 0, 2232, 2233, 1, 0, 0, 0, 2233,
295, 1, 0, 0, 0, 2234, 2232, 1, 0, 0, 0, 2235, 2236, 5, 399, 0, 0, 2236, 2237, 3, 298,
149, 0, 2237, 2238, 5, 400, 0, 0, 2238, 297, 1, 0, 0, 0, 2239, 2244, 3, 576, 288, 0,
2240, 2241, 5, 397, 0, 0, 2241, 2243, 3, 576, 288, 0, 2242, 2240, 1, 0, 0, 0, 2243,
2246, 1, 0, 0, 0, 2244, 2242, 1, 0, 0, 0, 2244, 2245, 1, 0, 0, 0, 2245, 299, 1, 0, 0,
0, 2246, 2244, 1, 0, 0, 0, 2247, 2248, 7, 18, 0, 0, 2248, 301, 1, 0, 0, 0, 2249, 2250,
5, 220, 0, 0, 2250, 2251, 7, 19, 0, 0, 2251, 303, 1, 0, 0, 0, 2252, 2254, 3, 256, 128,
0, 2253, 2255, 3, 300, 150, 0, 2254, 2253, 1, 0, 0, 0, 2254, 2255, 1, 0, 0, 0, 2255,
2257, 1, 0, 0, 0, 2256, 2258, 3, 302, 151, 0, 2257, 2256, 1, 0, 0, 0, 2257, 2258, 1,
0, 0, 0, 2258, 305, 1, 0, 0, 0, 2259, 2264, 3, 308, 154, 0, 2260, 2261, 5, 397, 0, 0,
2261, 2263, 3, 308, 154, 0, 2262, 2260, 1, 0, 0, 0, 2263, 2266, 1, 0, 0, 0, 2264, 2262,
1, 0, 0, 0, 2264, 2265, 1, 0, 0, 0, 2265, 307, 1, 0, 0, 0, 2266, 2264, 1, 0, 0, 0, 2267,
2270, 3, 260, 130, 0, 2268, 2269, 5, 47, 0, 0, 2269, 2271, 5, 426, 0, 0, 2270, 2268,
1, 0, 0, 0, 2270, 2271, 1, 0, 0, 0, 2271, 309, 1, 0, 0, 0, 2272, 2275, 3, 256, 128, 0,
2273, 2275, 3, 584, 292, 0, 2274, 2272, 1, 0, 0, 0, 2274, 2273, 1, 0, 0, 0, 2275, 2277,
1, 0, 0, 0, 2276, 2278, 3, 300, 150, 0, 2277, 2276, 1, 0, 0, 0, 2277, 2278, 1, 0, 0,
0, 2278, 2280, 1, 0, 0, 0, 2279, 2281, 3, 302, 151, 0, 2280, 2279, 1, 0, 0, 0, 2280,
2281, 1, 0, 0, 0, 2281, 311, 1, 0, 0, 0, 2282, 2283, 3, 260, 130, 0, 2283, 2286, 3,
344, 172, 0, 2284, 2285, 5, 47, 0, 0, 2285, 2287, 5, 426, 0, 0, 2286, 2284, 1, 0, 0,
0, 2286, 2287, 1, 0, 0, 0, 2287, 313, 1, 0, 0, 0, 2288, 2291, 3, 316, 158, 0, 2289,
2291, 3, 318, 159, 0, 2290, 2288, 1, 0, 0, 0, 2290, 2289, 1, 0, 0, 0, 2291, 315, 1,
0, 0, 0, 2292, 2295, 3, 288, 144, 0, 2293, 2295, 3, 278, 139, 0, 2294, 2292, 1, 0,
0, 0, 2294, 2293, 1, 0, 0, 0, 2295, 317, 1, 0, 0, 0, 2296, 2297, 3, 260, 130, 0, 2297,
2299, 3, 344, 172, 0, 2298, 2300, 3, 320, 160, 0, 2299, 2298, 1, 0, 0, 0, 2299, 2300,
1, 0, 0, 0, 2300, 2303, 1, 0, 0, 0, 2301, 2302, 5, 47, 0, 0, 2302, 2304, 5, 426, 0, 0,
2303, 2301, 1, 0, 0, 0, 2303, 2304, 1, 0, 0, 0, 2304, 319, 1, 0, 0, 0, 2305, 2308, 3,
322, 161, 0, 2306, 2308, 3, 324, 162, 0, 2307, 2305, 1, 0, 0, 0, 2307, 2306, 1, 0,
0, 0, 2308, 321, 1, 0, 0, 0, 2309, 2310, 5, 55, 0, 0, 2310, 2312, 3, 642, 321, 0, 2311,
2309, 1, 0, 0, 0, 2311, 2312, 1, 0, 0, 0, 2312, 2313, 1, 0, 0, 0, 2313, 2314, 5, 269,
0, 0, 2314, 2315, 3, 480, 240, 0, 2315, 2316, 5, 399, 0, 0, 2316, 2317, 3, 256, 128,
0, 2317, 2319, 5, 400, 0, 0, 2318, 2320, 3, 338, 169, 0, 2319, 2318, 1, 0, 0, 0, 2319,
2320, 1, 0, 0, 0, 2320, 323, 1, 0, 0, 0, 2321, 2322, 5, 55, 0, 0, 2322, 2324, 3, 642,
321, 0, 2323, 2321, 1, 0, 0, 0, 2323, 2324, 1, 0, 0, 0, 2324, 2325, 1, 0, 0, 0, 2325,
2327, 3, 332, 166, 0, 2326, 2328, 3, 338, 169, 0, 2327, 2326, 1, 0, 0, 0, 2327, 2328,
1, 0, 0, 0, 2328, 325, 1, 0, 0, 0, 2329, 2332, 3, 328, 164, 0, 2330, 2332, 3, 330, 165,
0, 2331, 2329, 1, 0, 0, 0, 2331, 2330, 1, 0, 0, 0, 2332, 327, 1, 0, 0, 0, 2333, 2334,
5, 55, 0, 0, 2334, 2336, 3, 642, 321, 0, 2335, 2333, 1, 0, 0, 0, 2335, 2336, 1, 0, 0,
0, 2336, 2337, 1, 0, 0, 0, 2337, 2338, 5, 269, 0, 0, 2338, 2339, 3, 480, 240, 0, 2339,
2340, 5, 399, 0, 0, 2340, 2341, 3, 256, 128, 0, 2341, 2343, 5, 400, 0, 0, 2342, 2344,
3, 340, 170, 0, 2343, 2342, 1, 0, 0, 0, 2343, 2344, 1, 0, 0, 0, 2344, 329, 1, 0, 0, 0,
2345, 2346, 5, 55, 0, 0, 2346, 2348, 3, 642, 321, 0, 2347, 2345, 1, 0, 0, 0, 2347,
2348, 1, 0, 0, 0, 2348, 2349, 1, 0, 0, 0, 2349, 2351, 3, 332, 166, 0, 2350, 2352, 3,
340, 170, 0, 2351, 2350, 1, 0, 0, 0, 2351, 2352, 1, 0, 0, 0, 2352, 331, 1, 0, 0, 0, 2353,
2354, 5, 216, 0, 0, 2354, 2360, 5, 219, 0, 0, 2355, 2356, 5, 83, 0, 0, 2356, 2360,
3, 334, 167, 0, 2357, 2360, 3, 286, 143, 0, 2358, 2360, 3, 336, 168, 0, 2359, 2353,
1, 0, 0, 0, 2359, 2355, 1, 0, 0, 0, 2359, 2357, 1, 0, 0, 0, 2359, 2358, 1, 0, 0, 0, 2360,
333, 1, 0, 0, 0, 2361, 2365, 3, 576, 288, 0, 2362, 2365, 3, 554, 277, 0, 2363, 2365,
3, 564, 282, 0, 2364, 2361, 1, 0, 0, 0, 2364, 2362, 1, 0, 0, 0, 2364, 2363, 1, 0, 0,
0, 2365, 335, 1, 0, 0, 0, 2366, 2367, 5, 251, 0, 0, 2367, 2370, 5, 173, 0, 0, 2368,
2370, 5, 358, 0, 0, 2369, 2366, 1, 0, 0, 0, 2369, 2368, 1, 0, 0, 0, 2370, 337, 1, 0,
0, 0, 2371, 2373, 3, 268, 134, 0, 2372, 2374, 3, 276, 138, 0, 2373, 2372, 1, 0, 0,
0, 2373, 2374, 1, 0, 0, 0, 2374, 339, 1, 0, 0, 0, 2375, 2377, 3, 268, 134, 0, 2376,
2378, 3, 276, 138, 0, 2377, 2376, 1, 0, 0, 0, 2377, 2378, 1, 0, 0, 0, 2378, 341, 1,
0, 0, 0, 2379, 2380, 3, 260, 130, 0, 2380, 2381, 5, 396, 0, 0, 2381, 2384, 3, 344,
172, 0, 2382, 2383, 5, 47, 0, 0, 2383, 2385, 5, 426, 0, 0, 2384, 2382, 1, 0, 0, 0, 2384,
2385, 1, 0, 0, 0, 2385, 343, 1, 0, 0, 0, 2386, 2387, 3, 348, 174, 0, 2387, 345, 1, 0,
0, 0, 2388, 2393, 3, 344, 172, 0, 2389, 2390, 5, 397, 0, 0, 2390, 2392, 3, 344, 172,
0, 2391, 2389, 1, 0, 0, 0, 2392, 2395, 1, 0, 0, 0, 2393, 2391, 1, 0, 0, 0, 2393, 2394,
1, 0, 0, 0, 2394, 347, 1, 0, 0, 0, 2395, 2393, 1, 0, 0, 0, 2396, 2402, 3, 350, 175, 0,
2397, 2402, 3, 352, 176, 0, 2398, 2402, 3, 354, 177, 0, 2399, 2402, 3, 356, 178,
0, 2400, 2402, 3, 358, 179, 0, 2401, 2396, 1, 0, 0, 0, 2401, 2397, 1, 0, 0, 0, 2401,
2398, 1, 0, 0, 0, 2401, 2399, 1, 0, 0, 0, 2401, 2400, 1, 0, 0, 0, 2402, 349, 1, 0, 0,
0, 2403, 2441, 5, 340, 0, 0, 2404, 2441, 5, 311, 0, 0, 2405, 2441, 5, 162, 0, 0, 2406,
2441, 5, 163, 0, 0, 2407, 2441, 5, 26, 0, 0, 2408, 2441, 5, 28, 0, 0, 2409, 2441, 5,
131, 0, 0, 2410, 2441, 5, 264, 0, 0, 2411, 2413, 5, 100, 0, 0, 2412, 2414, 5, 248,
0, 0, 2413, 2412, 1, 0, 0, 0, 2413, 2414, 1, 0, 0, 0, 2414, 2441, 1, 0, 0, 0, 2415, 2441,
5, 71, 0, 0, 2416, 2441, 5, 72, 0, 0, 2417, 2441, 5, 337, 0, 0, 2418, 2441, 5, 338,
0, 0, 2419, 2420, 5, 337, 0, 0, 2420, 2421, 5, 387, 0, 0, 2421, 2422, 5, 188, 0, 0,
2422, 2423, 5, 336, 0, 0, 2423, 2441, 5, 394, 0, 0, 2424, 2441, 5, 323, 0, 0, 2425,
2441, 5, 27, 0, 0, 2426, 2434, 3, 684, 342, 0, 2427, 2428, 5, 399, 0, 0, 2428, 2431,
5, 431, 0, 0, 2429, 2430, 5, 397, 0, 0, 2430, 2432, 5, 431, 0, 0, 2431, 2429, 1, 0,
0, 0, 2431, 2432, 1, 0, 0, 0, 2432, 2433, 1, 0, 0, 0, 2433, 2435, 5, 400, 0, 0, 2434,
2427, 1, 0, 0, 0, 2434, 2435, 1, 0, 0, 0, 2435, 2441, 1, 0, 0, 0, 2436, 2437, 7, 20,
0, 0, 2437, 2438, 5, 399, 0, 0, 2438, 2439, 5, 431, 0, 0, 2439, 2441, 5, 400, 0, 0,
2440, 2403, 1, 0, 0, 0, 2440, 2404, 1, 0, 0, 0, 2440, 2405, 1, 0, 0, 0, 2440, 2406,
1, 0, 0, 0, 2440, 2407, 1, 0, 0, 0, 2440, 2408, 1, 0, 0, 0, 2440, 2409, 1, 0, 0, 0, 2440,
2410, 1, 0, 0, 0, 2440, 2411, 1, 0, 0, 0, 2440, 2415, 1, 0, 0, 0, 2440, 2416, 1, 0, 0,
0, 2440, 2417, 1, 0, 0, 0, 2440, 2418, 1, 0, 0, 0, 2440, 2419, 1, 0, 0, 0, 2440, 2424,
1, 0, 0, 0, 2440, 2425, 1, 0, 0, 0, 2440, 2426, 1, 0, 0, 0, 2440, 2436, 1, 0, 0, 0, 2441,
351, 1, 0, 0, 0, 2442, 2443, 5, 16, 0, 0, 2443, 2444, 5, 409, 0, 0, 2444, 2445, 3, 348,
174, 0, 2445, 2446, 5, 411, 0, 0, 2446, 353, 1, 0, 0, 0, 2447, 2448, 5, 324, 0, 0, 2448,
2449, 5, 409, 0, 0, 2449, 2450, 3, 252, 126, 0, 2450, 2451, 5, 411, 0, 0, 2451, 355,
1, 0, 0, 0, 2452, 2453, 5, 198, 0, 0, 2453, 2454, 5, 409, 0, 0, 2454, 2455, 3, 350,
175, 0, 2455, 2456, 5, 397, 0, 0, 2456, 2457, 3, 348, 174, 0, 2457, 2458, 5, 411,
0, 0, 2458, 357, 1, 0, 0, 0, 2459, 2460, 5, 357, 0, 0, 2460, 2461, 5, 409, 0, 0, 2461,
2462, 3, 346, 173, 0, 2462, 2463, 5, 411, 0, 0, 2463, 359, 1, 0, 0, 0, 2464, 2466,
7, 21, 0, 0, 2465, 2467, 7, 22, 0, 0, 2466, 2465, 1, 0, 0, 0, 2466, 2467, 1, 0, 0, 0,
2467, 361, 1, 0, 0, 0, 2468, 2470, 3, 366, 183, 0, 2469, 2468, 1, 0, 0, 0, 2469, 2470,
1, 0, 0, 0, 2470, 2471, 1, 0, 0, 0, 2471, 2472, 3, 364, 182, 0, 2472, 363, 1, 0, 0, 0,
2473, 2476, 3, 370, 185, 0, 2474, 2476, 3, 374, 187, 0, 2475, 2473, 1, 0, 0, 0, 2475,
2474, 1, 0, 0, 0, 2476, 365, 1, 0, 0, 0, 2477, 2478, 5, 387, 0, 0, 2478, 2483, 3, 368,
184, 0, 2479, 2480, 5, 397, 0, 0, 2480, 2482, 3, 368, 184, 0, 2481, 2479, 1, 0, 0,
0, 2482, 2485, 1, 0, 0, 0, 2483, 2481, 1, 0, 0, 0, 2483, 2484, 1, 0, 0, 0, 2484, 367,
1, 0, 0, 0, 2485, 2483, 1, 0, 0, 0, 2486, 2491, 3, 642, 321, 0, 2487, 2488, 5, 399,
0, 0, 2488, 2489, 3, 254, 127, 0, 2489, 2490, 5, 400, 0, 0, 2490, 2492, 1, 0, 0, 0,
2491, 2487, 1, 0, 0, 0, 2491, 2492, 1, 0, 0, 0, 2492, 2493, 1, 0, 0, 0, 2493, 2494,
5, 17, 0, 0, 2494, 2495, 5, 399, 0, 0, 2495, 2496, 3, 362, 181, 0, 2496, 2497, 5, 400,
0, 0, 2497, 369, 1, 0, 0, 0, 2498, 2504, 3, 372, 186, 0, 2499, 2500, 3, 360, 180, 0,
2500, 2501, 3, 372, 186, 0, 2501, 2503, 1, 0, 0, 0, 2502, 2499, 1, 0, 0, 0, 2503, 2506,
1, 0, 0, 0, 2504, 2502, 1, 0, 0, 0, 2504, 2505, 1, 0, 0, 0, 2505, 371, 1, 0, 0, 0, 2506,
2504, 1, 0, 0, 0, 2507, 2508, 3, 450, 225, 0, 2508, 2509, 3, 384, 192, 0, 2509, 2511,
3, 502, 251, 0, 2510, 2512, 3, 464, 232, 0, 2511, 2510, 1, 0, 0, 0, 2511, 2512, 1,
0, 0, 0, 2512, 2514, 1, 0, 0, 0, 2513, 2515, 3, 496, 248, 0, 2514, 2513, 1, 0, 0, 0,
2514, 2515, 1, 0, 0, 0, 2515, 2517, 1, 0, 0, 0, 2516, 2518, 3, 522, 261, 0, 2517, 2516,
1, 0, 0, 0, 2517, 2518, 1, 0, 0, 0, 2518, 2520, 1, 0, 0, 0, 2519, 2521, 3, 530, 265,
0, 2520, 2519, 1, 0, 0, 0, 2520, 2521, 1, 0, 0, 0, 2521, 2523, 1, 0, 0, 0, 2522, 2524,
3, 514, 257, 0, 2523, 2522, 1, 0, 0, 0, 2523, 2524, 1, 0, 0, 0, 2524, 2526, 1, 0, 0,
0, 2525, 2527, 3, 532, 266, 0, 2526, 2525, 1, 0, 0, 0, 2526, 2527, 1, 0, 0, 0, 2527,
2529, 1, 0, 0, 0, 2528, 2530, 3, 544, 272, 0, 2529, 2528, 1, 0, 0, 0, 2529, 2530, 1,
0, 0, 0, 2530, 2532, 1, 0, 0, 0, 2531, 2533, 3, 548, 274, 0, 2532, 2531, 1, 0, 0, 0,
2532, 2533, 1, 0, 0, 0, 2533, 2535, 1, 0, 0, 0, 2534, 2536, 3, 550, 275, 0, 2535, 2534,
1, 0, 0, 0, 2535, 2536, 1, 0, 0, 0, 2536, 2538, 1, 0, 0, 0, 2537, 2539, 3, 552, 276,
0, 2538, 2537, 1, 0, 0, 0, 2538, 2539, 1, 0, 0, 0, 2539, 2541, 1, 0, 0, 0, 2540, 2542,
3, 388, 194, 0, 2541, 2540, 1, 0, 0, 0, 2541, 2542, 1, 0, 0, 0, 2542, 2579, 1, 0, 0,
0, 2543, 2544, 3, 450, 225, 0, 2544, 2546, 3, 502, 251, 0, 2545, 2547, 3, 464, 232,
0, 2546, 2545, 1, 0, 0, 0, 2546, 2547, 1, 0, 0, 0, 2547, 2549, 1, 0, 0, 0, 2548, 2550,
3, 496, 248, 0, 2549, 2548, 1, 0, 0, 0, 2549, 2550, 1, 0, 0, 0, 2550, 2552, 1, 0, 0,
0, 2551, 2553, 3, 522, 261, 0, 2552, 2551, 1, 0, 0, 0, 2552, 2553, 1, 0, 0, 0, 2553,
2555, 1, 0, 0, 0, 2554, 2556, 3, 530, 265, 0, 2555, 2554, 1, 0, 0, 0, 2555, 2556, 1,
0, 0, 0, 2556, 2558, 1, 0, 0, 0, 2557, 2559, 3, 514, 257, 0, 2558, 2557, 1, 0, 0, 0,
2558, 2559, 1, 0, 0, 0, 2559, 2561, 1, 0, 0, 0, 2560, 2562, 3, 532, 266, 0, 2561, 2560,
1, 0, 0, 0, 2561, 2562, 1, 0, 0, 0, 2562, 2564, 1, 0, 0, 0, 2563, 2565, 3, 544, 272,
0, 2564, 2563, 1, 0, 0, 0, 2564, 2565, 1, 0, 0, 0, 2565, 2567, 1, 0, 0, 0, 2566, 2568,
3, 548, 274, 0, 2567, 2566, 1, 0, 0, 0, 2567, 2568, 1, 0, 0, 0, 2568, 2570, 1, 0, 0,
0, 2569, 2571, 3, 550, 275, 0, 2570, 2569, 1, 0, 0, 0, 2570, 2571, 1, 0, 0, 0, 2571,
2573, 1, 0, 0, 0, 2572, 2574, 3, 552, 276, 0, 2573, 2572, 1, 0, 0, 0, 2573, 2574, 1,
0, 0, 0, 2574, 2576, 1, 0, 0, 0, 2575, 2577, 3, 388, 194, 0, 2576, 2575, 1, 0, 0, 0,
2576, 2577, 1, 0, 0, 0, 2577, 2579, 1, 0, 0, 0, 2578, 2507, 1, 0, 0, 0, 2578, 2543,
1, 0, 0, 0, 2579, 373, 1, 0, 0, 0, 2580, 2581, 3, 384, 192, 0, 2581, 2582, 3, 378, 189,
0, 2582, 2585, 1, 0, 0, 0, 2583, 2585, 3, 378, 189, 0, 2584, 2580, 1, 0, 0, 0, 2584,
2583, 1, 0, 0, 0, 2585, 375, 1, 0, 0, 0, 2586, 2588, 3, 502, 251, 0, 2587, 2589, 3,
450, 225, 0, 2588, 2587, 1, 0, 0, 0, 2588, 2589, 1, 0, 0, 0, 2589, 2591, 1, 0, 0, 0,
2590, 2592, 3, 496, 248, 0, 2591, 2590, 1, 0, 0, 0, 2591, 2592, 1, 0, 0, 0, 2592, 2594,
1, 0, 0, 0, 2593, 2595, 3, 522, 261, 0, 2594, 2593, 1, 0, 0, 0, 2594, 2595, 1, 0, 0,
0, 2595, 2597, 1, 0, 0, 0, 2596, 2598, 3, 530, 265, 0, 2597, 2596, 1, 0, 0, 0, 2597,
2598, 1, 0, 0, 0, 2598, 2600, 1, 0, 0, 0, 2599, 2601, 3, 514, 257, 0, 2600, 2599, 1,
0, 0, 0, 2600, 2601, 1, 0, 0, 0, 2601, 2603, 1, 0, 0, 0, 2602, 2604, 3, 532, 266, 0,
2603, 2602, 1, 0, 0, 0, 2603, 2604, 1, 0, 0, 0, 2604, 2611, 1, 0, 0, 0, 2605, 2606,
5, 399, 0, 0, 2606, 2607, 3, 378, 189, 0, 2607, 2608, 5, 400, 0, 0, 2608, 2611, 1,
0, 0, 0, 2609, 2611, 3, 498, 249, 0, 2610, 2586, 1, 0, 0, 0, 2610, 2605, 1, 0, 0, 0,
2610, 2609, 1, 0, 0, 0, 2611, 377, 1, 0, 0, 0, 2612, 2614, 3, 376, 188, 0, 2613, 2615,
3, 380, 190, 0, 2614, 2613, 1, 0, 0, 0, 2614, 2615, 1, 0, 0, 0, 2615, 2617, 1, 0, 0,
0, 2616, 2618, 3, 544, 272, 0, 2617, 2616, 1, 0, 0, 0, 2617, 2618, 1, 0, 0, 0, 2618,
2620, 1, 0, 0, 0, 2619, 2621, 3, 548, 274, 0, 2620, 2619, 1, 0, 0, 0, 2620, 2621, 1,
0, 0, 0, 2621, 2623, 1, 0, 0, 0, 2622, 2624, 3, 550, 275, 0, 2623, 2622, 1, 0, 0, 0,
2623, 2624, 1, 0, 0, 0, 2624, 2626, 1, 0, 0, 0, 2625, 2627, 3, 552, 276, 0, 2626, 2625,
1, 0, 0, 0, 2626, 2627, 1, 0, 0, 0, 2627, 2629, 1, 0, 0, 0, 2628, 2630, 3, 388, 194,
0, 2629, 2628, 1, 0, 0, 0, 2629, 2630, 1, 0, 0, 0, 2630, 379, 1, 0, 0, 0, 2631, 2632,
3, 360, 180, 0, 2632, 2633, 3, 376, 188, 0, 2633, 2635, 1, 0, 0, 0, 2634, 2631, 1,
0, 0, 0, 2635, 2636, 1, 0, 0, 0, 2636, 2634, 1, 0, 0, 0, 2636, 2637, 1, 0, 0, 0, 2637,
381, 1, 0, 0, 0, 2638, 2640, 3, 366, 183, 0, 2639, 2638, 1, 0, 0, 0, 2639, 2640, 1,
0, 0, 0, 2640, 2641, 1, 0, 0, 0, 2641, 2642, 3, 378, 189, 0, 2642, 383, 1, 0, 0, 0, 2643,
2660, 5, 161, 0, 0, 2644, 2645, 5, 235, 0, 0, 2645, 2647, 3, 386, 193, 0, 2646, 2648,
3, 32, 16, 0, 2647, 2646, 1, 0, 0, 0, 2647, 2648, 1, 0, 0, 0, 2648, 2661, 1, 0, 0, 0,
2649, 2651, 5, 166, 0, 0, 2650, 2652, 5, 329, 0, 0, 2651, 2650, 1, 0, 0, 0, 2651, 2652,
1, 0, 0, 0, 2652, 2653, 1, 0, 0, 0, 2653, 2658, 3, 628, 314, 0, 2654, 2655, 5, 399,
0, 0, 2655, 2656, 3, 254, 127, 0, 2656, 2657, 5, 400, 0, 0, 2657, 2659, 1, 0, 0, 0,
2658, 2654, 1, 0, 0, 0, 2658, 2659, 1, 0, 0, 0, 2659, 2661, 1, 0, 0, 0, 2660, 2644,
1, 0, 0, 0, 2660, 2649, 1, 0, 0, 0, 2661, 385, 1, 0, 0, 0, 2662, 2664, 5, 188, 0, 0, 2663,
2662, 1, 0, 0, 0, 2663, 2664, 1, 0, 0, 0, 2664, 2665, 1, 0, 0, 0, 2665, 2666, 5, 93,
0, 0, 2666, 2668, 5, 426, 0, 0, 2667, 2669, 3, 222, 111, 0, 2668, 2667, 1, 0, 0, 0,
2668, 2669, 1, 0, 0, 0, 2669, 2671, 1, 0, 0, 0, 2670, 2672, 3, 246, 123, 0, 2671, 2670,
1, 0, 0, 0, 2671, 2672, 1, 0, 0, 0, 2672, 2676, 1, 0, 0, 0, 2673, 2674, 5, 329, 0, 0,
2674, 2676, 3, 628, 314, 0, 2675, 2663, 1, 0, 0, 0, 2675, 2673, 1, 0, 0, 0, 2676, 387,
1, 0, 0, 0, 2677, 2686, 5, 185, 0, 0, 2678, 2679, 5, 431, 0, 0, 2679, 2681, 5, 397,
0, 0, 2680, 2678, 1, 0, 0, 0, 2680, 2681, 1, 0, 0, 0, 2681, 2682, 1, 0, 0, 0, 2682, 2687,
5, 431, 0, 0, 2683, 2684, 5, 431, 0, 0, 2684, 2685, 5, 223, 0, 0, 2685, 2687, 5, 431,
0, 0, 2686, 2680, 1, 0, 0, 0, 2686, 2683, 1, 0, 0, 0, 2687, 389, 1, 0, 0, 0, 2688, 2689,
3, 256, 128, 0, 2689, 2690, 5, 405, 0, 0, 2690, 2691, 3, 392, 196, 0, 2691, 391, 1,
0, 0, 0, 2692, 2695, 5, 83, 0, 0, 2693, 2695, 3, 594, 297, 0, 2694, 2692, 1, 0, 0, 0,
2694, 2693, 1, 0, 0, 0, 2695, 393, 1, 0, 0, 0, 2696, 2697, 5, 304, 0, 0, 2697, 2702,
3, 390, 195, 0, 2698, 2699, 5, 397, 0, 0, 2699, 2701, 3, 390, 195, 0, 2700, 2698,
1, 0, 0, 0, 2701, 2704, 1, 0, 0, 0, 2702, 2700, 1, 0, 0, 0, 2702, 2703, 1, 0, 0, 0, 2703,
395, 1, 0, 0, 0, 2704, 2702, 1, 0, 0, 0, 2705, 2706, 5, 318, 0, 0, 2706, 2715, 5, 344,
0, 0, 2707, 2712, 3, 398, 199, 0, 2708, 2709, 5, 397, 0, 0, 2709, 2711, 3, 398, 199,
0, 2710, 2708, 1, 0, 0, 0, 2711, 2714, 1, 0, 0, 0, 2712, 2710, 1, 0, 0, 0, 2712, 2713,
1, 0, 0, 0, 2713, 2716, 1, 0, 0, 0, 2714, 2712, 1, 0, 0, 0, 2715, 2707, 1, 0, 0, 0, 2715,
2716, 1, 0, 0, 0, 2716, 2729, 1, 0, 0, 0, 2717, 2719, 5, 48, 0, 0, 2718, 2720, 5, 389,
0, 0, 2719, 2718, 1, 0, 0, 0, 2719, 2720, 1, 0, 0, 0, 2720, 2729, 1, 0, 0, 0, 2721, 2723,
5, 289, 0, 0, 2722, 2724, 5, 389, 0, 0, 2723, 2722, 1, 0, 0, 0, 2723, 2724, 1, 0, 0,
0, 2724, 2729, 1, 0, 0, 0, 2725, 2726, 5, 304, 0, 0, 2726, 2727, 5, 22, 0, 0, 2727,
2729, 7, 23, 0, 0, 2728, 2705, 1, 0, 0, 0, 2728, 2717, 1, 0, 0, 0, 2728, 2721, 1, 0,
0, 0, 2728, 2725, 1, 0, 0, 0, 2729, 397, 1, 0, 0, 0, 2730, 2731, 5, 168, 0, 0, 2731,
2732, 5, 182, 0, 0, 2732, 2736, 5, 312, 0, 0, 2733, 2734, 5, 261, 0, 0, 2734, 2736,
7, 24, 0, 0, 2735, 2730, 1, 0, 0, 0, 2735, 2733, 1, 0, 0, 0, 2736, 399, 1, 0, 0, 0, 2737,
2740, 3, 404, 202, 0, 2738, 2740, 3, 406, 203, 0, 2739, 2737, 1, 0, 0, 0, 2739, 2738,
1, 0, 0, 0, 2740, 2743, 1, 0, 0, 0, 2741, 2739, 1, 0, 0, 0, 2741, 2742, 1, 0, 0, 0, 2742,
2745, 1, 0, 0, 0, 2743, 2741, 1, 0, 0, 0, 2744, 2746, 3, 402, 201, 0, 2745, 2744, 1,
0, 0, 0, 2745, 2746, 1, 0, 0, 0, 2746, 401, 1, 0, 0, 0, 2747, 2748, 5, 383, 0, 0, 2748,
2749, 5, 216, 0, 0, 2749, 2752, 5, 201, 0, 0, 2750, 2751, 5, 11, 0, 0, 2751, 2753,
3, 584, 292, 0, 2752, 2750, 1, 0, 0, 0, 2752, 2753, 1, 0, 0, 0, 2753, 2754, 1, 0, 0,
0, 2754, 2755, 5, 335, 0, 0, 2755, 2757, 5, 161, 0, 0, 2756, 2758, 3, 266, 133, 0,
2757, 2756, 1, 0, 0, 0, 2757, 2758, 1, 0, 0, 0, 2758, 2759, 1, 0, 0, 0, 2759, 2760,
5, 374, 0, 0, 2760, 2761, 3, 540, 270, 0, 2761, 403, 1, 0, 0, 0, 2762, 2763, 5, 383,
0, 0, 2763, 2764, 5, 201, 0, 0, 2764, 2765, 5, 11, 0, 0, 2765, 2766, 3, 584, 292, 0,
2766, 2770, 5, 335, 0, 0, 2767, 2768, 5, 365, 0, 0, 2768, 2771, 3, 394, 197, 0, 2769,
2771, 5, 86, 0, 0, 2770, 2767, 1, 0, 0, 0, 2770, 2769, 1, 0, 0, 0, 2771, 405, 1, 0, 0,
0, 2772, 2773, 5, 383, 0, 0, 2773, 2774, 5, 201, 0, 0, 2774, 2778, 5, 335, 0, 0, 2775,
2776, 5, 365, 0, 0, 2776, 2779, 3, 394, 197, 0, 2777, 2779, 5, 86, 0, 0, 2778, 2775,
1, 0, 0, 0, 2778, 2777, 1, 0, 0, 0, 2779, 407, 1, 0, 0, 0, 2780, 2781, 5, 246, 0, 0, 2781,
2782, 5, 426, 0, 0, 2782, 409, 1, 0, 0, 0, 2783, 2784, 5, 352, 0, 0, 2784, 2785, 5,
426, 0, 0, 2785, 411, 1, 0, 0, 0, 2786, 2787, 5, 320, 0, 0, 2787, 2788, 5, 426, 0, 0,
2788, 413, 1, 0, 0, 0, 2789, 2820, 5, 9, 0, 0, 2790, 2791, 5, 329, 0, 0, 2791, 2792,
3, 480, 240, 0, 2792, 2793, 3, 416, 208, 0, 2793, 2821, 1, 0, 0, 0, 2794, 2795, 5,
378, 0, 0, 2795, 2797, 3, 484, 242, 0, 2796, 2798, 5, 17, 0, 0, 2797, 2796, 1, 0, 0,
0, 2797, 2798, 1, 0, 0, 0, 2798, 2799, 1, 0, 0, 0, 2799, 2800, 3, 420, 210, 0, 2800,
2821, 1, 0, 0, 0, 2801, 2802, 5, 202, 0, 0, 2802, 2803, 5, 378, 0, 0, 2803, 2807, 3,
484, 242, 0, 2804, 2808, 3, 36, 18, 0, 2805, 2808, 3, 38, 19, 0, 2806, 2808, 5, 265,
0, 0, 2807, 2804, 1, 0, 0, 0, 2807, 2805, 1, 0, 0, 0, 2807, 2806, 1, 0, 0, 0, 2808, 2821,
1, 0, 0, 0, 2809, 2810, 3, 70, 35, 0, 2810, 2811, 3, 422, 211, 0, 2811, 2821, 1, 0,
0, 0, 2812, 2813, 5, 69, 0, 0, 2813, 2821, 3, 424, 212, 0, 2814, 2815, 5, 155, 0, 0,
2815, 2816, 3, 642, 321, 0, 2816, 2817, 5, 224, 0, 0, 2817, 2818, 3, 628, 314, 0,
2818, 2819, 5, 265, 0, 0, 2819, 2821, 1, 0, 0, 0, 2820, 2790, 1, 0, 0, 0, 2820, 2794,
1, 0, 0, 0, 2820, 2801, 1, 0, 0, 0, 2820, 2809, 1, 0, 0, 0, 2820, 2812, 1, 0, 0, 0, 2820,
2814, 1, 0, 0, 0, 2821, 415, 1, 0, 0, 0, 2822, 2823, 5, 274, 0, 0, 2823, 2824, 5, 341,
0, 0, 2824, 2912, 3, 482, 241, 0, 2825, 2826, 5, 102, 0, 0, 2826, 2912, 5, 239, 0,
0, 2827, 2912, 3, 428, 214, 0, 2828, 2830, 5, 4, 0, 0, 2829, 2831, 3, 32, 16, 0, 2830,
2829, 1, 0, 0, 0, 2830, 2831, 1, 0, 0, 0, 2831, 2836, 1, 0, 0, 0, 2832, 2834, 3, 630,
315, 0, 2833, 2835, 3, 426, 213, 0, 2834, 2833, 1, 0, 0, 0, 2834, 2835, 1, 0, 0, 0,
2835, 2837, 1, 0, 0, 0, 2836, 2832, 1, 0, 0, 0, 2837, 2838, 1, 0, 0, 0, 2838, 2836,
1, 0, 0, 0, 2838, 2839, 1, 0, 0, 0, 2839, 2912, 1, 0, 0, 0, 2840, 2844, 5, 342, 0, 0,
2841, 2843, 3, 630, 315, 0, 2842, 2841, 1, 0, 0, 0, 2843, 2846, 1, 0, 0, 0, 2844, 2842,
1, 0, 0, 0, 2844, 2845, 1, 0, 0, 0, 2845, 2912, 1, 0, 0, 0, 2846, 2844, 1, 0, 0, 0, 2847,
2851, 5, 15, 0, 0, 2848, 2850, 3, 630, 315, 0, 2849, 2848, 1, 0, 0, 0, 2850, 2853,
1, 0, 0, 0, 2851, 2849, 1, 0, 0, 0, 2851, 2852, 1, 0, 0, 0, 2852, 2912, 1, 0, 0, 0, 2853,
2851, 1, 0, 0, 0, 2854, 2858, 5, 353, 0, 0, 2855, 2857, 3, 630, 315, 0, 2856, 2855,
1, 0, 0, 0, 2857, 2860, 1, 0, 0, 0, 2858, 2856, 1, 0, 0, 0, 2858, 2859, 1, 0, 0, 0, 2859,
2912, 1, 0, 0, 0, 2860, 2858, 1, 0, 0, 0, 2861, 2862, 5, 304, 0, 0, 2862, 2863, 5, 332,
0, 0, 2863, 2912, 3, 226, 113, 0, 2864, 2865, 5, 363, 0, 0, 2865, 2867, 5, 332, 0,
0, 2866, 2868, 3, 30, 15, 0, 2867, 2866, 1, 0, 0, 0, 2867, 2868, 1, 0, 0, 0, 2868, 2869,
1, 0, 0, 0, 2869, 2912, 3, 226, 113, 0, 2870, 2912, 3, 210, 105, 0, 2871, 2874, 5,
216, 0, 0, 2872, 2875, 5, 310, 0, 0, 2873, 2875, 3, 40, 20, 0, 2874, 2872, 1, 0, 0,
0, 2874, 2873, 1, 0, 0, 0, 2875, 2912, 1, 0, 0, 0, 2876, 2877, 5, 113, 0, 0, 2877, 2878,
3, 630, 315, 0, 2878, 2879, 5, 387, 0, 0, 2879, 2880, 5, 329, 0, 0, 2880, 2881, 3,
480, 240, 0, 2881, 2912, 1, 0, 0, 0, 2882, 2883, 5, 237, 0, 0, 2883, 2884, 5, 45, 0,
0, 2884, 2885, 5, 399, 0, 0, 2885, 2886, 3, 312, 156, 0, 2886, 2887, 5, 400, 0, 0,
2887, 2912, 1, 0, 0, 0, 2888, 2889, 5, 101, 0, 0, 2889, 2890, 5, 55, 0, 0, 2890, 2912,
3, 642, 321, 0, 2891, 2894, 5, 4, 0, 0, 2892, 2895, 3, 290, 145, 0, 2893, 2895, 3,
280, 140, 0, 2894, 2892, 1, 0, 0, 0, 2894, 2893, 1, 0, 0, 0, 2895, 2912, 1, 0, 0, 0,
2896, 2898, 3, 630, 315, 0, 2897, 2896, 1, 0, 0, 0, 2897, 2898, 1, 0, 0, 0, 2898, 2899,
1, 0, 0, 0, 2899, 2912, 3, 418, 209, 0, 2900, 2901, 5, 304, 0, 0, 2901, 2902, 5, 236,
0, 0, 2902, 2912, 3, 126, 63, 0, 2903, 2904, 5, 304, 0, 0, 2904, 2905, 5, 237, 0, 0,
2905, 2906, 5, 316, 0, 0, 2906, 2907, 5, 399, 0, 0, 2907, 2908, 3, 204, 102, 0, 2908,
2909, 5, 400, 0, 0, 2909, 2912, 1, 0, 0, 0, 2910, 2912, 3, 432, 216, 0, 2911, 2822,
1, 0, 0, 0, 2911, 2825, 1, 0, 0, 0, 2911, 2827, 1, 0, 0, 0, 2911, 2828, 1, 0, 0, 0, 2911,
2840, 1, 0, 0, 0, 2911, 2847, 1, 0, 0, 0, 2911, 2854, 1, 0, 0, 0, 2911, 2861, 1, 0, 0,
0, 2911, 2864, 1, 0, 0, 0, 2911, 2870, 1, 0, 0, 0, 2911, 2871, 1, 0, 0, 0, 2911, 2876,
1, 0, 0, 0, 2911, 2882, 1, 0, 0, 0, 2911, 2888, 1, 0, 0, 0, 2911, 2891, 1, 0, 0, 0, 2911,
2897, 1, 0, 0, 0, 2911, 2900, 1, 0, 0, 0, 2911, 2903, 1, 0, 0, 0, 2911, 2910, 1, 0, 0,
0, 2912, 417, 1, 0, 0, 0, 2913, 2914, 5, 304, 0, 0, 2914, 2915, 5, 129, 0, 0, 2915,
3046, 3, 434, 217, 0, 2916, 2917, 5, 304, 0, 0, 2917, 2918, 5, 189, 0, 0, 2918, 3046,
5, 426, 0, 0, 2919, 3046, 5, 53, 0, 0, 2920, 2930, 5, 304, 0, 0, 2921, 2922, 5, 301,
0, 0, 2922, 2926, 5, 426, 0, 0, 2923, 2924, 5, 387, 0, 0, 2924, 2925, 5, 302, 0, 0,
2925, 2927, 3, 226, 113, 0, 2926, 2923, 1, 0, 0, 0, 2926, 2927, 1, 0, 0, 0, 2927, 2931,
1, 0, 0, 0, 2928, 2929, 5, 302, 0, 0, 2929, 2931, 3, 226, 113, 0, 2930, 2921, 1, 0,
0, 0, 2930, 2928, 1, 0, 0, 0, 2931, 3046, 1, 0, 0, 0, 2932, 2933, 5, 363, 0, 0, 2933,
2934, 5, 302, 0, 0, 2934, 3046, 3, 226, 113, 0, 2935, 2936, 5, 274, 0, 0, 2936, 2937,
5, 341, 0, 0, 2937, 3046, 3, 630, 315, 0, 2938, 2939, 5, 166, 0, 0, 2939, 2940, 5,
431, 0, 0, 2940, 3046, 5, 31, 0, 0, 2941, 2942, 5, 304, 0, 0, 2942, 2943, 5, 310, 0,
0, 2943, 2944, 5, 189, 0, 0, 2944, 2945, 5, 399, 0, 0, 2945, 2950, 3, 430, 215, 0,
2946, 2947, 5, 397, 0, 0, 2947, 2949, 3, 430, 215, 0, 2948, 2946, 1, 0, 0, 0, 2949,
2952, 1, 0, 0, 0, 2950, 2948, 1, 0, 0, 0, 2950, 2951, 1, 0, 0, 0, 2951, 2953, 1, 0, 0,
0, 2952, 2950, 1, 0, 0, 0, 2953, 2954, 5, 400, 0, 0, 2954, 3046, 1, 0, 0, 0, 2955, 2956,
5, 216, 0, 0, 2956, 3046, 7, 25, 0, 0, 2957, 3046, 3, 208, 104, 0, 2958, 2959, 5, 49,
0, 0, 2959, 2962, 5, 426, 0, 0, 2960, 2961, 5, 11, 0, 0, 2961, 2963, 5, 380, 0, 0, 2962,
2960, 1, 0, 0, 0, 2962, 2963, 1, 0, 0, 0, 2963, 2968, 1, 0, 0, 0, 2964, 2965, 5, 42,
0, 0, 2965, 2966, 5, 166, 0, 0, 2966, 2967, 5, 431, 0, 0, 2967, 2969, 5, 31, 0, 0, 2968,
2964, 1, 0, 0, 0, 2968, 2969, 1, 0, 0, 0, 2969, 2971, 1, 0, 0, 0, 2970, 2972, 3, 544,
272, 0, 2971, 2970, 1, 0, 0, 0, 2971, 2972, 1, 0, 0, 0, 2972, 2974, 1, 0, 0, 0, 2973,
2975, 3, 408, 204, 0, 2974, 2973, 1, 0, 0, 0, 2974, 2975, 1, 0, 0, 0, 2975, 2980, 1,
0, 0, 0, 2976, 2977, 5, 387, 0, 0, 2977, 2978, 5, 235, 0, 0, 2978, 2979, 5, 332, 0,
0, 2979, 2981, 3, 226, 113, 0, 2980, 2976, 1, 0, 0, 0, 2980, 2981, 1, 0, 0, 0, 2981,
3046, 1, 0, 0, 0, 2982, 2983, 5, 365, 0, 0, 2983, 2984, 5, 319, 0, 0, 2984, 2986, 5,
134, 0, 0, 2985, 2987, 5, 45, 0, 0, 2986, 2985, 1, 0, 0, 0, 2986, 2987, 1, 0, 0, 0, 2987,
2988, 1, 0, 0, 0, 2988, 2989, 3, 256, 128, 0, 2989, 2990, 5, 304, 0, 0, 2990, 2993,
3, 226, 113, 0, 2991, 2992, 5, 47, 0, 0, 2992, 2994, 5, 426, 0, 0, 2993, 2991, 1, 0,
0, 0, 2993, 2994, 1, 0, 0, 0, 2994, 3046, 1, 0, 0, 0, 2995, 2996, 5, 365, 0, 0, 2996,
2997, 5, 319, 0, 0, 2997, 2998, 5, 304, 0, 0, 2998, 3046, 3, 226, 113, 0, 2999, 3001,
5, 38, 0, 0, 3000, 3002, 5, 45, 0, 0, 3001, 3000, 1, 0, 0, 0, 3001, 3002, 1, 0, 0, 0,
3002, 3003, 1, 0, 0, 0, 3003, 3004, 3, 256, 128, 0, 3004, 3005, 3, 260, 130, 0, 3005,
3007, 3, 344, 172, 0, 3006, 3008, 3, 326, 163, 0, 3007, 3006, 1, 0, 0, 0, 3007, 3008,
1, 0, 0, 0, 3008, 3011, 1, 0, 0, 0, 3009, 3010, 5, 47, 0, 0, 3010, 3012, 5, 426, 0, 0,
3011, 3009, 1, 0, 0, 0, 3011, 3012, 1, 0, 0, 0, 3012, 3016, 1, 0, 0, 0, 3013, 3017,
5, 130, 0, 0, 3014, 3015, 5, 6, 0, 0, 3015, 3017, 3, 642, 321, 0, 3016, 3013, 1, 0,
0, 0, 3016, 3014, 1, 0, 0, 0, 3016, 3017, 1, 0, 0, 0, 3017, 3019, 1, 0, 0, 0, 3018, 3020,
3, 34, 17, 0, 3019, 3018, 1, 0, 0, 0, 3019, 3020, 1, 0, 0, 0, 3020, 3046, 1, 0, 0, 0,
3021, 3024, 5, 4, 0, 0, 3022, 3024, 5, 278, 0, 0, 3023, 3021, 1, 0, 0, 0, 3023, 3022,
1, 0, 0, 0, 3024, 3025, 1, 0, 0, 0, 3025, 3026, 5, 46, 0, 0, 3026, 3027, 5, 399, 0, 0,
3027, 3028, 3, 248, 124, 0, 3028, 3030, 5, 400, 0, 0, 3029, 3031, 3, 34, 17, 0, 3030,
3029, 1, 0, 0, 0, 3030, 3031, 1, 0, 0, 0, 3031, 3046, 1, 0, 0, 0, 3032, 3033, 5, 365,
0, 0, 3033, 3035, 5, 46, 0, 0, 3034, 3036, 3, 34, 17, 0, 3035, 3034, 1, 0, 0, 0, 3035,
3036, 1, 0, 0, 0, 3036, 3046, 1, 0, 0, 0, 3037, 3043, 3, 270, 135, 0, 3038, 3040, 5,
218, 0, 0, 3039, 3041, 5, 34, 0, 0, 3040, 3039, 1, 0, 0, 0, 3040, 3041, 1, 0, 0, 0, 3041,
3044, 1, 0, 0, 0, 3042, 3044, 5, 222, 0, 0, 3043, 3038, 1, 0, 0, 0, 3043, 3042, 1, 0,
0, 0, 3044, 3046, 1, 0, 0, 0, 3045, 2913, 1, 0, 0, 0, 3045, 2916, 1, 0, 0, 0, 3045, 2919,
1, 0, 0, 0, 3045, 2920, 1, 0, 0, 0, 3045, 2932, 1, 0, 0, 0, 3045, 2935, 1, 0, 0, 0, 3045,
2938, 1, 0, 0, 0, 3045, 2941, 1, 0, 0, 0, 3045, 2955, 1, 0, 0, 0, 3045, 2957, 1, 0, 0,
0, 3045, 2958, 1, 0, 0, 0, 3045, 2982, 1, 0, 0, 0, 3045, 2995, 1, 0, 0, 0, 3045, 2999,
1, 0, 0, 0, 3045, 3023, 1, 0, 0, 0, 3045, 3032, 1, 0, 0, 0, 3045, 3037, 1, 0, 0, 0, 3046,
419, 1, 0, 0, 0, 3047, 3048, 5, 304, 0, 0, 3048, 3049, 5, 332, 0, 0, 3049, 3074, 3,
226, 113, 0, 3050, 3051, 5, 363, 0, 0, 3051, 3053, 5, 332, 0, 0, 3052, 3054, 3, 30,
15, 0, 3053, 3052, 1, 0, 0, 0, 3053, 3054, 1, 0, 0, 0, 3054, 3055, 1, 0, 0, 0, 3055,
3074, 3, 226, 113, 0, 3056, 3057, 5, 274, 0, 0, 3057, 3058, 5, 341, 0, 0, 3058, 3074,
3, 482, 241, 0, 3059, 3061, 5, 4, 0, 0, 3060, 3062, 3, 32, 16, 0, 3061, 3060, 1, 0,
0, 0, 3061, 3062, 1, 0, 0, 0, 3062, 3067, 1, 0, 0, 0, 3063, 3065, 3, 630, 315, 0, 3064,
3066, 3, 426, 213, 0, 3065, 3064, 1, 0, 0, 0, 3065, 3066, 1, 0, 0, 0, 3066, 3068, 1,
0, 0, 0, 3067, 3063, 1, 0, 0, 0, 3068, 3069, 1, 0, 0, 0, 3069, 3067, 1, 0, 0, 0, 3069,
3070, 1, 0, 0, 0, 3070, 3074, 1, 0, 0, 0, 3071, 3074, 3, 428, 214, 0, 3072, 3074, 3,
382, 191, 0, 3073, 3047, 1, 0, 0, 0, 3073, 3050, 1, 0, 0, 0, 3073, 3056, 1, 0, 0, 0,
3073, 3059, 1, 0, 0, 0, 3073, 3071, 1, 0, 0, 0, 3073, 3072, 1, 0, 0, 0, 3074, 421, 1,
0, 0, 0, 3075, 3076, 3, 474, 237, 0, 3076, 3077, 5, 304, 0, 0, 3077, 3078, 5, 76, 0,
0, 3078, 3079, 3, 230, 115, 0, 3079, 3091, 1, 0, 0, 0, 3080, 3081, 3, 474, 237, 0,
3081, 3082, 5, 304, 0, 0, 3082, 3083, 5, 236, 0, 0, 3083, 3084, 3, 128, 64, 0, 3084,
3091, 1, 0, 0, 0, 3085, 3086, 3, 474, 237, 0, 3086, 3087, 5, 304, 0, 0, 3087, 3088,
7, 26, 0, 0, 3088, 3089, 5, 426, 0, 0, 3089, 3091, 1, 0, 0, 0, 3090, 3075, 1, 0, 0, 0,
3090, 3080, 1, 0, 0, 0, 3090, 3085, 1, 0, 0, 0, 3091, 423, 1, 0, 0, 0, 3092, 3093, 3,
474, 237, 0, 3093, 3094, 5, 304, 0, 0, 3094, 3095, 5, 77, 0, 0, 3095, 3096, 3, 230,
115, 0, 3096, 3108, 1, 0, 0, 0, 3097, 3098, 3, 474, 237, 0, 3098, 3099, 5, 304, 0,
0, 3099, 3100, 5, 236, 0, 0, 3100, 3101, 3, 128, 64, 0, 3101, 3108, 1, 0, 0, 0, 3102,
3103, 3, 474, 237, 0, 3103, 3104, 5, 304, 0, 0, 3104, 3105, 5, 367, 0, 0, 3105, 3106,
5, 426, 0, 0, 3106, 3108, 1, 0, 0, 0, 3107, 3092, 1, 0, 0, 0, 3107, 3097, 1, 0, 0, 0,
3107, 3102, 1, 0, 0, 0, 3108, 425, 1, 0, 0, 0, 3109, 3110, 5, 189, 0, 0, 3110, 3111,
5, 426, 0, 0, 3111, 427, 1, 0, 0, 0, 3112, 3114, 5, 101, 0, 0, 3113, 3115, 3, 30, 15,
0, 3114, 3113, 1, 0, 0, 0, 3114, 3115, 1, 0, 0, 0, 3115, 3116, 1, 0, 0, 0, 3116, 3117,
5, 237, 0, 0, 3117, 3123, 3, 634, 317, 0, 3118, 3119, 5, 397, 0, 0, 3119, 3120, 5,
237, 0, 0, 3120, 3122, 3, 634, 317, 0, 3121, 3118, 1, 0, 0, 0, 3122, 3125, 1, 0, 0,
0, 3123, 3121, 1, 0, 0, 0, 3123, 3124, 1, 0, 0, 0, 3124, 3128, 1, 0, 0, 0, 3125, 3123,
1, 0, 0, 0, 3126, 3127, 5, 152, 0, 0, 3127, 3129, 5, 254, 0, 0, 3128, 3126, 1, 0, 0,
0, 3128, 3129, 1, 0, 0, 0, 3129, 3131, 1, 0, 0, 0, 3130, 3132, 5, 255, 0, 0, 3131, 3130,
1, 0, 0, 0, 3131, 3132, 1, 0, 0, 0, 3132, 3134, 1, 0, 0, 0, 3133, 3135, 3, 14, 7, 0, 3134,
3133, 1, 0, 0, 0, 3134, 3135, 1, 0, 0, 0, 3135, 429, 1, 0, 0, 0, 3136, 3139, 3, 576,
288, 0, 3137, 3139, 3, 296, 148, 0, 3138, 3136, 1, 0, 0, 0, 3138, 3137, 1, 0, 0, 0,
3139, 3140, 1, 0, 0, 0, 3140, 3141, 5, 405, 0, 0, 3141, 3142, 5, 426, 0, 0, 3142, 431,
1, 0, 0, 0, 3143, 3153, 5, 115, 0, 0, 3144, 3145, 5, 289, 0, 0, 3145, 3146, 5, 399,
0, 0, 3146, 3154, 7, 27, 0, 0, 3147, 3148, 5, 118, 0, 0, 3148, 3149, 5, 399, 0, 0, 3149,
3154, 5, 426, 0, 0, 3150, 3151, 5, 306, 0, 0, 3151, 3152, 5, 399, 0, 0, 3152, 3154,
5, 431, 0, 0, 3153, 3144, 1, 0, 0, 0, 3153, 3147, 1, 0, 0, 0, 3153, 3150, 1, 0, 0, 0,
3154, 3155, 1, 0, 0, 0, 3155, 3156, 5, 400, 0, 0, 3156, 433, 1, 0, 0, 0, 3157, 3158,
5, 160, 0, 0, 3158, 3159, 5, 426, 0, 0, 3159, 3160, 5, 233, 0, 0, 3160, 3161, 5, 426,
0, 0, 3161, 3162, 5, 301, 0, 0, 3162, 3167, 5, 426, 0, 0, 3163, 3164, 5, 159, 0, 0,
3164, 3165, 5, 426, 0, 0, 3165, 3166, 5, 232, 0, 0, 3166, 3168, 5, 426, 0, 0, 3167,
3163, 1, 0, 0, 0, 3167, 3168, 1, 0, 0, 0, 3168, 3171, 1, 0, 0, 0, 3169, 3171, 3, 642,
321, 0, 3170, 3157, 1, 0, 0, 0, 3170, 3169, 1, 0, 0, 0, 3171, 435, 1, 0, 0, 0, 3172,
3173, 5, 184, 0, 0, 3173, 3182, 5, 128, 0, 0, 3174, 3175, 5, 184, 0, 0, 3175, 3176,
5, 128, 0, 0, 3176, 3177, 3, 642, 321, 0, 3177, 3178, 5, 426, 0, 0, 3178, 3182, 1,
0, 0, 0, 3179, 3180, 5, 184, 0, 0, 3180, 3182, 3, 480, 240, 0, 3181, 3172, 1, 0, 0,
0, 3181, 3174, 1, 0, 0, 0, 3181, 3179, 1, 0, 0, 0, 3182, 437, 1, 0, 0, 0, 3183, 3185,
5, 58, 0, 0, 3184, 3186, 5, 333, 0, 0, 3185, 3184, 1, 0, 0, 0, 3185, 3186, 1, 0, 0, 0,
3186, 3188, 1, 0, 0, 0, 3187, 3189, 5, 345, 0, 0, 3188, 3187, 1, 0, 0, 0, 3188, 3189,
1, 0, 0, 0, 3189, 3191, 1, 0, 0, 0, 3190, 3192, 5, 123, 0, 0, 3191, 3190, 1, 0, 0, 0,
3191, 3192, 1, 0, 0, 0, 3192, 3193, 1, 0, 0, 0, 3193, 3195, 5, 329, 0, 0, 3194, 3196,
3, 32, 16, 0, 3195, 3194, 1, 0, 0, 0, 3195, 3196, 1, 0, 0, 0, 3196, 3197, 1, 0, 0, 0,
3197, 3254, 3, 482, 241, 0, 3198, 3200, 3, 436, 218, 0, 3199, 3201, 3, 200, 100,
0, 3200, 3199, 1, 0, 0, 0, 3200, 3201, 1, 0, 0, 0, 3201, 3203, 1, 0, 0, 0, 3202, 3204,
3, 222, 111, 0, 3203, 3202, 1, 0, 0, 0, 3203, 3204, 1, 0, 0, 0, 3204, 3206, 1, 0, 0,
0, 3205, 3207, 3, 246, 123, 0, 3206, 3205, 1, 0, 0, 0, 3206, 3207, 1, 0, 0, 0, 3207,
3209, 1, 0, 0, 0, 3208, 3210, 3, 426, 213, 0, 3209, 3208, 1, 0, 0, 0, 3209, 3210, 1,
0, 0, 0, 3210, 3212, 1, 0, 0, 0, 3211, 3213, 3, 224, 112, 0, 3212, 3211, 1, 0, 0, 0,
3212, 3213, 1, 0, 0, 0, 3213, 3215, 1, 0, 0, 0, 3214, 3216, 3, 198, 99, 0, 3215, 3214,
1, 0, 0, 0, 3215, 3216, 1, 0, 0, 0, 3216, 3255, 1, 0, 0, 0, 3217, 3218, 5, 399, 0, 0,
3218, 3219, 3, 250, 125, 0, 3219, 3220, 5, 400, 0, 0, 3220, 3222, 1, 0, 0, 0, 3221,
3217, 1, 0, 0, 0, 3221, 3222, 1, 0, 0, 0, 3222, 3224, 1, 0, 0, 0, 3223, 3225, 3, 196,
98, 0, 3224, 3223, 1, 0, 0, 0, 3224, 3225, 1, 0, 0, 0, 3225, 3227, 1, 0, 0, 0, 3226,
3228, 3, 200, 100, 0, 3227, 3226, 1, 0, 0, 0, 3227, 3228, 1, 0, 0, 0, 3228, 3230, 1,
0, 0, 0, 3229, 3231, 3, 208, 104, 0, 3230, 3229, 1, 0, 0, 0, 3230, 3231, 1, 0, 0, 0,
3231, 3233, 1, 0, 0, 0, 3232, 3234, 3, 210, 105, 0, 3233, 3232, 1, 0, 0, 0, 3233, 3234,
1, 0, 0, 0, 3234, 3236, 1, 0, 0, 0, 3235, 3237, 3, 222, 111, 0, 3236, 3235, 1, 0, 0,
0, 3236, 3237, 1, 0, 0, 0, 3237, 3239, 1, 0, 0, 0, 3238, 3240, 3, 246, 123, 0, 3239,
3238, 1, 0, 0, 0, 3239, 3240, 1, 0, 0, 0, 3240, 3242, 1, 0, 0, 0, 3241, 3243, 3, 426,
213, 0, 3242, 3241, 1, 0, 0, 0, 3242, 3243, 1, 0, 0, 0, 3243, 3245, 1, 0, 0, 0, 3244,
3246, 3, 224, 112, 0, 3245, 3244, 1, 0, 0, 0, 3245, 3246, 1, 0, 0, 0, 3246, 3248, 1,
0, 0, 0, 3247, 3249, 3, 198, 99, 0, 3248, 3247, 1, 0, 0, 0, 3248, 3249, 1, 0, 0, 0, 3249,
3252, 1, 0, 0, 0, 3250, 3251, 5, 17, 0, 0, 3251, 3253, 3, 382, 191, 0, 3252, 3250,
1, 0, 0, 0, 3252, 3253, 1, 0, 0, 0, 3253, 3255, 1, 0, 0, 0, 3254, 3198, 1, 0, 0, 0, 3254,
3221, 1, 0, 0, 0, 3255, 3319, 1, 0, 0, 0, 3256, 3257, 5, 58, 0, 0, 3257, 3258, 5, 195,
0, 0, 3258, 3260, 5, 329, 0, 0, 3259, 3261, 3, 32, 16, 0, 3260, 3259, 1, 0, 0, 0, 3260,
3261, 1, 0, 0, 0, 3261, 3262, 1, 0, 0, 0, 3262, 3316, 3, 482, 241, 0, 3263, 3265, 3,
436, 218, 0, 3264, 3266, 3, 222, 111, 0, 3265, 3264, 1, 0, 0, 0, 3265, 3266, 1, 0,
0, 0, 3266, 3268, 1, 0, 0, 0, 3267, 3269, 3, 246, 123, 0, 3268, 3267, 1, 0, 0, 0, 3268,
3269, 1, 0, 0, 0, 3269, 3271, 1, 0, 0, 0, 3270, 3272, 3, 426, 213, 0, 3271, 3270, 1,
0, 0, 0, 3271, 3272, 1, 0, 0, 0, 3272, 3274, 1, 0, 0, 0, 3273, 3275, 3, 224, 112, 0,
3274, 3273, 1, 0, 0, 0, 3274, 3275, 1, 0, 0, 0, 3275, 3277, 1, 0, 0, 0, 3276, 3278,
3, 198, 99, 0, 3277, 3276, 1, 0, 0, 0, 3277, 3278, 1, 0, 0, 0, 3278, 3317, 1, 0, 0, 0,
3279, 3280, 5, 399, 0, 0, 3280, 3281, 3, 250, 125, 0, 3281, 3282, 5, 400, 0, 0, 3282,
3284, 1, 0, 0, 0, 3283, 3279, 1, 0, 0, 0, 3283, 3284, 1, 0, 0, 0, 3284, 3286, 1, 0, 0,
0, 3285, 3287, 3, 196, 98, 0, 3286, 3285, 1, 0, 0, 0, 3286, 3287, 1, 0, 0, 0, 3287,
3289, 1, 0, 0, 0, 3288, 3290, 3, 200, 100, 0, 3289, 3288, 1, 0, 0, 0, 3289, 3290, 1,
0, 0, 0, 3290, 3292, 1, 0, 0, 0, 3291, 3293, 3, 208, 104, 0, 3292, 3291, 1, 0, 0, 0,
3292, 3293, 1, 0, 0, 0, 3293, 3295, 1, 0, 0, 0, 3294, 3296, 3, 210, 105, 0, 3295, 3294,
1, 0, 0, 0, 3295, 3296, 1, 0, 0, 0, 3296, 3298, 1, 0, 0, 0, 3297, 3299, 3, 222, 111,
0, 3298, 3297, 1, 0, 0, 0, 3298, 3299, 1, 0, 0, 0, 3299, 3301, 1, 0, 0, 0, 3300, 3302,
3, 246, 123, 0, 3301, 3300, 1, 0, 0, 0, 3301, 3302, 1, 0, 0, 0, 3302, 3304, 1, 0, 0,
0, 3303, 3305, 3, 426, 213, 0, 3304, 3303, 1, 0, 0, 0, 3304, 3305, 1, 0, 0, 0, 3305,
3307, 1, 0, 0, 0, 3306, 3308, 3, 224, 112, 0, 3307, 3306, 1, 0, 0, 0, 3307, 3308, 1,
0, 0, 0, 3308, 3310, 1, 0, 0, 0, 3309, 3311, 3, 198, 99, 0, 3310, 3309, 1, 0, 0, 0, 3310,
3311, 1, 0, 0, 0, 3311, 3314, 1, 0, 0, 0, 3312, 3313, 5, 17, 0, 0, 3313, 3315, 3, 382,
191, 0, 3314, 3312, 1, 0, 0, 0, 3314, 3315, 1, 0, 0, 0, 3315, 3317, 1, 0, 0, 0, 3316,
3263, 1, 0, 0, 0, 3316, 3283, 1, 0, 0, 0, 3317, 3319, 1, 0, 0, 0, 3318, 3183, 1, 0, 0,
0, 3318, 3256, 1, 0, 0, 0, 3319, 439, 1, 0, 0, 0, 3320, 3321, 5, 58, 0, 0, 3321, 3323,
5, 69, 0, 0, 3322, 3324, 3, 32, 16, 0, 3323, 3322, 1, 0, 0, 0, 3323, 3324, 1, 0, 0, 0,
3324, 3325, 1, 0, 0, 0, 3325, 3328, 3, 642, 321, 0, 3326, 3327, 5, 352, 0, 0, 3327,
3329, 5, 426, 0, 0, 3328, 3326, 1, 0, 0, 0, 3328, 3329, 1, 0, 0, 0, 3329, 3332, 1, 0,
0, 0, 3330, 3331, 5, 367, 0, 0, 3331, 3333, 5, 426, 0, 0, 3332, 3330, 1, 0, 0, 0, 3332,
3333, 1, 0, 0, 0, 3333, 3336, 1, 0, 0, 0, 3334, 3335, 5, 47, 0, 0, 3335, 3337, 5, 426,
0, 0, 3336, 3334, 1, 0, 0, 0, 3336, 3337, 1, 0, 0, 0, 3337, 3341, 1, 0, 0, 0, 3338, 3339,
5, 387, 0, 0, 3339, 3340, 5, 77, 0, 0, 3340, 3342, 3, 230, 115, 0, 3341, 3338, 1, 0,
0, 0, 3341, 3342, 1, 0, 0, 0, 3342, 441, 1, 0, 0, 0, 3343, 3344, 5, 101, 0, 0, 3344,
3346, 5, 69, 0, 0, 3345, 3347, 3, 30, 15, 0, 3346, 3345, 1, 0, 0, 0, 3346, 3347, 1,
0, 0, 0, 3347, 3348, 1, 0, 0, 0, 3348, 3349, 3, 642, 321, 0, 3349, 443, 1, 0, 0, 0, 3350,
3351, 3, 642, 321, 0, 3351, 3352, 5, 395, 0, 0, 3352, 3354, 1, 0, 0, 0, 3353, 3350,
1, 0, 0, 0, 3354, 3357, 1, 0, 0, 0, 3355, 3353, 1, 0, 0, 0, 3355, 3356, 1, 0, 0, 0, 3356,
3358, 1, 0, 0, 0, 3357, 3355, 1, 0, 0, 0, 3358, 3359, 5, 415, 0, 0, 3359, 445, 1, 0,
0, 0, 3360, 3365, 3, 584, 292, 0, 3361, 3362, 5, 397, 0, 0, 3362, 3364, 3, 584, 292,
0, 3363, 3361, 1, 0, 0, 0, 3364, 3367, 1, 0, 0, 0, 3365, 3363, 1, 0, 0, 0, 3365, 3366,
1, 0, 0, 0, 3366, 447, 1, 0, 0, 0, 3367, 3365, 1, 0, 0, 0, 3368, 3373, 3, 642, 321, 0,
3369, 3370, 5, 397, 0, 0, 3370, 3372, 3, 642, 321, 0, 3371, 3369, 1, 0, 0, 0, 3372,
3375, 1, 0, 0, 0, 3373, 3371, 1, 0, 0, 0, 3373, 3374, 1, 0, 0, 0, 3374, 449, 1, 0, 0,
0, 3375, 3373, 1, 0, 0, 0, 3376, 3377, 5, 139, 0, 0, 3377, 3378, 3, 452, 226, 0, 3378,
451, 1, 0, 0, 0, 3379, 3380, 5, 359, 0, 0, 3380, 3383, 3, 460, 230, 0, 3381, 3382,
5, 397, 0, 0, 3382, 3384, 3, 460, 230, 0, 3383, 3381, 1, 0, 0, 0, 3384, 3385, 1, 0,
0, 0, 3385, 3383, 1, 0, 0, 0, 3385, 3386, 1, 0, 0, 0, 3386, 3389, 1, 0, 0, 0, 3387, 3389,
3, 456, 228, 0, 3388, 3379, 1, 0, 0, 0, 3388, 3387, 1, 0, 0, 0, 3389, 453, 1, 0, 0, 0,
3390, 3394, 3, 470, 235, 0, 3391, 3393, 3, 464, 232, 0, 3392, 3391, 1, 0, 0, 0, 3393,
3396, 1, 0, 0, 0, 3394, 3392, 1, 0, 0, 0, 3394, 3395, 1, 0, 0, 0, 3395, 3423, 1, 0, 0,
0, 3396, 3394, 1, 0, 0, 0, 3397, 3401, 3, 500, 250, 0, 3398, 3400, 3, 464, 232, 0,
3399, 3398, 1, 0, 0, 0, 3400, 3403, 1, 0, 0, 0, 3401, 3399, 1, 0, 0, 0, 3401, 3402,
1, 0, 0, 0, 3402, 3423, 1, 0, 0, 0, 3403, 3401, 1, 0, 0, 0, 3404, 3408, 3, 488, 244,
0, 3405, 3407, 3, 464, 232, 0, 3406, 3405, 1, 0, 0, 0, 3407, 3410, 1, 0, 0, 0, 3408,
3406, 1, 0, 0, 0, 3408, 3409, 1, 0, 0, 0, 3409, 3423, 1, 0, 0, 0, 3410, 3408, 1, 0, 0,
0, 3411, 3415, 3, 494, 247, 0, 3412, 3414, 3, 464, 232, 0, 3413, 3412, 1, 0, 0, 0,
3414, 3417, 1, 0, 0, 0, 3415, 3413, 1, 0, 0, 0, 3415, 3416, 1, 0, 0, 0, 3416, 3423,
1, 0, 0, 0, 3417, 3415, 1, 0, 0, 0, 3418, 3419, 5, 399, 0, 0, 3419, 3420, 3, 456, 228,
0, 3420, 3421, 5, 400, 0, 0, 3421, 3423, 1, 0, 0, 0, 3422, 3390, 1, 0, 0, 0, 3422, 3397,
1, 0, 0, 0, 3422, 3404, 1, 0, 0, 0, 3422, 3411, 1, 0, 0, 0, 3422, 3418, 1, 0, 0, 0, 3423,
455, 1, 0, 0, 0, 3424, 3435, 3, 454, 227, 0, 3425, 3426, 3, 462, 231, 0, 3426, 3431,
3, 458, 229, 0, 3427, 3428, 5, 224, 0, 0, 3428, 3432, 3, 584, 292, 0, 3429, 3430,
5, 370, 0, 0, 3430, 3432, 3, 266, 133, 0, 3431, 3427, 1, 0, 0, 0, 3431, 3429, 1, 0,
0, 0, 3431, 3432, 1, 0, 0, 0, 3432, 3434, 1, 0, 0, 0, 3433, 3425, 1, 0, 0, 0, 3434, 3437,
1, 0, 0, 0, 3435, 3433, 1, 0, 0, 0, 3435, 3436, 1, 0, 0, 0, 3436, 457, 1, 0, 0, 0, 3437,
3435, 1, 0, 0, 0, 3438, 3443, 3, 470, 235, 0, 3439, 3443, 3, 500, 250, 0, 3440, 3443,
3, 488, 244, 0, 3441, 3443, 3, 494, 247, 0, 3442, 3438, 1, 0, 0, 0, 3442, 3439, 1,
0, 0, 0, 3442, 3440, 1, 0, 0, 0, 3442, 3441, 1, 0, 0, 0, 3443, 3447, 1, 0, 0, 0, 3444,
3446, 3, 464, 232, 0, 3445, 3444, 1, 0, 0, 0, 3446, 3449, 1, 0, 0, 0, 3447, 3445, 1,
0, 0, 0, 3447, 3448, 1, 0, 0, 0, 3448, 459, 1, 0, 0, 0, 3449, 3447, 1, 0, 0, 0, 3450,
3452, 5, 250, 0, 0, 3451, 3450, 1, 0, 0, 0, 3451, 3452, 1, 0, 0, 0, 3452, 3453, 1, 0,
0, 0, 3453, 3455, 3, 478, 239, 0, 3454, 3456, 3, 468, 234, 0, 3455, 3454, 1, 0, 0,
0, 3455, 3456, 1, 0, 0, 0, 3456, 3461, 1, 0, 0, 0, 3457, 3459, 5, 17, 0, 0, 3458, 3457,
1, 0, 0, 0, 3458, 3459, 1, 0, 0, 0, 3459, 3460, 1, 0, 0, 0, 3460, 3462, 3, 642, 321,
0, 3461, 3458, 1, 0, 0, 0, 3461, 3462, 1, 0, 0, 0, 3462, 3463, 1, 0, 0, 0, 3463, 3464,
5, 399, 0, 0, 3464, 3465, 3, 446, 223, 0, 3465, 3466, 5, 400, 0, 0, 3466, 461, 1, 0,
0, 0, 3467, 3482, 5, 397, 0, 0, 3468, 3479, 5, 157, 0, 0, 3469, 3479, 5, 60, 0, 0, 3470,
3472, 7, 28, 0, 0, 3471, 3473, 5, 231, 0, 0, 3472, 3471, 1, 0, 0, 0, 3472, 3473, 1,
0, 0, 0, 3473, 3479, 1, 0, 0, 0, 3474, 3476, 5, 180, 0, 0, 3475, 3477, 7, 29, 0, 0, 3476,
3475, 1, 0, 0, 0, 3476, 3477, 1, 0, 0, 0, 3477, 3479, 1, 0, 0, 0, 3478, 3468, 1, 0, 0,
0, 3478, 3469, 1, 0, 0, 0, 3478, 3470, 1, 0, 0, 0, 3478, 3474, 1, 0, 0, 0, 3478, 3479,
1, 0, 0, 0, 3479, 3480, 1, 0, 0, 0, 3480, 3482, 5, 171, 0, 0, 3481, 3467, 1, 0, 0, 0,
3481, 3478, 1, 0, 0, 0, 3482, 463, 1, 0, 0, 0, 3483, 3484, 5, 178, 0, 0, 3484, 3485,
5, 378, 0, 0, 3485, 3486, 5, 231, 0, 0, 3486, 3487, 3, 554, 277, 0, 3487, 3497, 3,
466, 233, 0, 3488, 3489, 5, 17, 0, 0, 3489, 3494, 3, 642, 321, 0, 3490, 3491, 5, 397,
0, 0, 3491, 3493, 3, 642, 321, 0, 3492, 3490, 1, 0, 0, 0, 3493, 3496, 1, 0, 0, 0, 3494,
3492, 1, 0, 0, 0, 3494, 3495, 1, 0, 0, 0, 3495, 3498, 1, 0, 0, 0, 3496, 3494, 1, 0, 0,
0, 3497, 3488, 1, 0, 0, 0, 3497, 3498, 1, 0, 0, 0, 3498, 3541, 1, 0, 0, 0, 3499, 3501,
5, 397, 0, 0, 3500, 3499, 1, 0, 0, 0, 3500, 3501, 1, 0, 0, 0, 3501, 3502, 1, 0, 0, 0,
3502, 3538, 5, 178, 0, 0, 3503, 3504, 5, 378, 0, 0, 3504, 3505, 3, 554, 277, 0, 3505,
3515, 3, 466, 233, 0, 3506, 3507, 5, 17, 0, 0, 3507, 3512, 3, 642, 321, 0, 3508, 3509,
5, 397, 0, 0, 3509, 3511, 3, 642, 321, 0, 3510, 3508, 1, 0, 0, 0, 3511, 3514, 1, 0,
0, 0, 3512, 3510, 1, 0, 0, 0, 3512, 3513, 1, 0, 0, 0, 3513, 3516, 1, 0, 0, 0, 3514, 3512,
1, 0, 0, 0, 3515, 3506, 1, 0, 0, 0, 3515, 3516, 1, 0, 0, 0, 3516, 3539, 1, 0, 0, 0, 3517,
3518, 5, 329, 0, 0, 3518, 3519, 5, 399, 0, 0, 3519, 3520, 3, 498, 249, 0, 3520, 3522,
5, 400, 0, 0, 3521, 3523, 5, 17, 0, 0, 3522, 3521, 1, 0, 0, 0, 3522, 3523, 1, 0, 0, 0,
3523, 3524, 1, 0, 0, 0, 3524, 3536, 3, 466, 233, 0, 3525, 3526, 5, 399, 0, 0, 3526,
3531, 3, 642, 321, 0, 3527, 3528, 5, 397, 0, 0, 3528, 3530, 3, 642, 321, 0, 3529,
3527, 1, 0, 0, 0, 3530, 3533, 1, 0, 0, 0, 3531, 3529, 1, 0, 0, 0, 3531, 3532, 1, 0, 0,
0, 3532, 3534, 1, 0, 0, 0, 3533, 3531, 1, 0, 0, 0, 3534, 3535, 5, 400, 0, 0, 3535, 3537,
1, 0, 0, 0, 3536, 3525, 1, 0, 0, 0, 3536, 3537, 1, 0, 0, 0, 3537, 3539, 1, 0, 0, 0, 3538,
3503, 1, 0, 0, 0, 3538, 3517, 1, 0, 0, 0, 3539, 3541, 1, 0, 0, 0, 3540, 3483, 1, 0, 0,
0, 3540, 3500, 1, 0, 0, 0, 3541, 465, 1, 0, 0, 0, 3542, 3543, 3, 642, 321, 0, 3543,
467, 1, 0, 0, 0, 3544, 3545, 5, 331, 0, 0, 3545, 3546, 5, 399, 0, 0, 3546, 3547, 5,
30, 0, 0, 3547, 3548, 5, 431, 0, 0, 3548, 3549, 5, 230, 0, 0, 3549, 3550, 5, 221, 0,
0, 3550, 3560, 5, 431, 0, 0, 3551, 3552, 5, 224, 0, 0, 3552, 3557, 3, 584, 292, 0,
3553, 3554, 5, 397, 0, 0, 3554, 3556, 3, 584, 292, 0, 3555, 3553, 1, 0, 0, 0, 3556,
3559, 1, 0, 0, 0, 3557, 3555, 1, 0, 0, 0, 3557, 3558, 1, 0, 0, 0, 3558, 3561, 1, 0, 0,
0, 3559, 3557, 1, 0, 0, 0, 3560, 3551, 1, 0, 0, 0, 3560, 3561, 1, 0, 0, 0, 3561, 3562,
1, 0, 0, 0, 3562, 3572, 5, 400, 0, 0, 3563, 3564, 5, 331, 0, 0, 3564, 3568, 5, 399,
0, 0, 3565, 3566, 5, 431, 0, 0, 3566, 3569, 7, 30, 0, 0, 3567, 3569, 5, 430, 0, 0, 3568,
3565, 1, 0, 0, 0, 3568, 3567, 1, 0, 0, 0, 3569, 3570, 1, 0, 0, 0, 3570, 3572, 5, 400,
0, 0, 3571, 3544, 1, 0, 0, 0, 3571, 3563, 1, 0, 0, 0, 3572, 469, 1, 0, 0, 0, 3573, 3575,
3, 478, 239, 0, 3574, 3576, 3, 226, 113, 0, 3575, 3574, 1, 0, 0, 0, 3575, 3576, 1,
0, 0, 0, 3576, 3578, 1, 0, 0, 0, 3577, 3579, 3, 468, 234, 0, 3578, 3577, 1, 0, 0, 0,
3578, 3579, 1, 0, 0, 0, 3579, 3581, 1, 0, 0, 0, 3580, 3582, 3, 472, 236, 0, 3581, 3580,
1, 0, 0, 0, 3581, 3582, 1, 0, 0, 0, 3582, 3587, 1, 0, 0, 0, 3583, 3585, 5, 17, 0, 0, 3584,
3583, 1, 0, 0, 0, 3584, 3585, 1, 0, 0, 0, 3585, 3586, 1, 0, 0, 0, 3586, 3588, 3, 642,
321, 0, 3587, 3584, 1, 0, 0, 0, 3587, 3588, 1, 0, 0, 0, 3588, 471, 1, 0, 0, 0, 3589,
3599, 5, 134, 0, 0, 3590, 3591, 5, 327, 0, 0, 3591, 3592, 5, 17, 0, 0, 3592, 3593,
5, 221, 0, 0, 3593, 3600, 3, 584, 292, 0, 3594, 3595, 5, 134, 0, 0, 3595, 3596, 5,
328, 0, 0, 3596, 3597, 5, 17, 0, 0, 3597, 3598, 5, 221, 0, 0, 3598, 3600, 5, 431, 0,
0, 3599, 3590, 1, 0, 0, 0, 3599, 3594, 1, 0, 0, 0, 3600, 473, 1, 0, 0, 0, 3601, 3602,
3, 642, 321, 0, 3602, 475, 1, 0, 0, 0, 3603, 3604, 3, 642, 321, 0, 3604, 477, 1, 0,
0, 0, 3605, 3608, 3, 480, 240, 0, 3606, 3608, 3, 484, 242, 0, 3607, 3605, 1, 0, 0,
0, 3607, 3606, 1, 0, 0, 0, 3608, 479, 1, 0, 0, 0, 3609, 3610, 3, 642, 321, 0, 3610,
3611, 5, 395, 0, 0, 3611, 3614, 3, 642, 321, 0, 3612, 3613, 5, 395, 0, 0, 3613, 3615,
3, 642, 321, 0, 3614, 3612, 1, 0, 0, 0, 3614, 3615, 1, 0, 0, 0, 3615, 3618, 1, 0, 0,
0, 3616, 3618, 3, 642, 321, 0, 3617, 3609, 1, 0, 0, 0, 3617, 3616, 1, 0, 0, 0, 3618,
481, 1, 0, 0, 0, 3619, 3620, 3, 642, 321, 0, 3620, 3621, 5, 395, 0, 0, 3621, 3624,
3, 642, 321, 0, 3622, 3623, 5, 395, 0, 0, 3623, 3625, 3, 642, 321, 0, 3624, 3622,
1, 0, 0, 0, 3624, 3625, 1, 0, 0, 0, 3625, 3628, 1, 0, 0, 0, 3626, 3628, 3, 642, 321,
0, 3627, 3619, 1, 0, 0, 0, 3627, 3626, 1, 0, 0, 0, 3628, 483, 1, 0, 0, 0, 3629, 3630,
3, 642, 321, 0, 3630, 3631, 5, 395, 0, 0, 3631, 3633, 1, 0, 0, 0, 3632, 3629, 1, 0,
0, 0, 3632, 3633, 1, 0, 0, 0, 3633, 3634, 1, 0, 0, 0, 3634, 3635, 3, 642, 321, 0, 3635,
485, 1, 0, 0, 0, 3636, 3637, 3, 642, 321, 0, 3637, 3638, 5, 395, 0, 0, 3638, 3640,
1, 0, 0, 0, 3639, 3636, 1, 0, 0, 0, 3639, 3640, 1, 0, 0, 0, 3640, 3641, 1, 0, 0, 0, 3641,
3642, 3, 642, 321, 0, 3642, 487, 1, 0, 0, 0, 3643, 3644, 5, 399, 0, 0, 3644, 3645,
3, 362, 181, 0, 3645, 3647, 5, 400, 0, 0, 3646, 3648, 5, 17, 0, 0, 3647, 3646, 1, 0,
0, 0, 3647, 3648, 1, 0, 0, 0, 3648, 3649, 1, 0, 0, 0, 3649, 3650, 3, 642, 321, 0, 3650,
489, 1, 0, 0, 0, 3651, 3653, 3, 546, 273, 0, 3652, 3654, 3, 544, 272, 0, 3653, 3652,
1, 0, 0, 0, 3653, 3654, 1, 0, 0, 0, 3654, 3663, 1, 0, 0, 0, 3655, 3663, 3, 544, 272,
0, 3656, 3658, 3, 550, 275, 0, 3657, 3659, 3, 552, 276, 0, 3658, 3657, 1, 0, 0, 0,
3658, 3659, 1, 0, 0, 0, 3659, 3663, 1, 0, 0, 0, 3660, 3663, 3, 552, 276, 0, 3661, 3663,
3, 548, 274, 0, 3662, 3651, 1, 0, 0, 0, 3662, 3655, 1, 0, 0, 0, 3662, 3656, 1, 0, 0,
0, 3662, 3660, 1, 0, 0, 0, 3662, 3661, 1, 0, 0, 0, 3663, 491, 1, 0, 0, 0, 3664, 3668,
3, 488, 244, 0, 3665, 3668, 3, 470, 235, 0, 3666, 3668, 3, 494, 247, 0, 3667, 3664,
1, 0, 0, 0, 3667, 3665, 1, 0, 0, 0, 3667, 3666, 1, 0, 0, 0, 3668, 493, 1, 0, 0, 0, 3669,
3670, 3, 642, 321, 0, 3670, 3671, 5, 399, 0, 0, 3671, 3672, 5, 224, 0, 0, 3672, 3674,
3, 492, 246, 0, 3673, 3675, 3, 490, 245, 0, 3674, 3673, 1, 0, 0, 0, 3674, 3675, 1,
0, 0, 0, 3675, 3691, 1, 0, 0, 0, 3676, 3677, 5, 432, 0, 0, 3677, 3678, 5, 399, 0, 0,
3678, 3679, 3, 584, 292, 0, 3679, 3688, 5, 400, 0, 0, 3680, 3681, 5, 397, 0, 0, 3681,
3682, 5, 432, 0, 0, 3682, 3683, 5, 399, 0, 0, 3683, 3684, 3, 584, 292, 0, 3684, 3685,
5, 400, 0, 0, 3685, 3687, 1, 0, 0, 0, 3686, 3680, 1, 0, 0, 0, 3687, 3690, 1, 0, 0, 0,
3688, 3686, 1, 0, 0, 0, 3688, 3689, 1, 0, 0, 0, 3689, 3692, 1, 0, 0, 0, 3690, 3688,
1, 0, 0, 0, 3691, 3676, 1, 0, 0, 0, 3691, 3692, 1, 0, 0, 0, 3692, 3693, 1, 0, 0, 0, 3693,
3695, 5, 400, 0, 0, 3694, 3696, 3, 642, 321, 0, 3695, 3694, 1, 0, 0, 0, 3695, 3696,
1, 0, 0, 0, 3696, 495, 1, 0, 0, 0, 3697, 3698, 5, 384, 0, 0, 3698, 3699, 3, 584, 292,
0, 3699, 497, 1, 0, 0, 0, 3700, 3719, 5, 374, 0, 0, 3701, 3706, 3, 540, 270, 0, 3702,
3703, 5, 397, 0, 0, 3703, 3705, 3, 540, 270, 0, 3704, 3702, 1, 0, 0, 0, 3705, 3708,
1, 0, 0, 0, 3706, 3704, 1, 0, 0, 0, 3706, 3707, 1, 0, 0, 0, 3707, 3720, 1, 0, 0, 0, 3708,
3706, 1, 0, 0, 0, 3709, 3710, 5, 399, 0, 0, 3710, 3711, 3, 536, 268, 0, 3711, 3716,
5, 400, 0, 0, 3712, 3713, 5, 397, 0, 0, 3713, 3715, 3, 540, 270, 0, 3714, 3712, 1,
0, 0, 0, 3715, 3718, 1, 0, 0, 0, 3716, 3714, 1, 0, 0, 0, 3716, 3717, 1, 0, 0, 0, 3717,
3720, 1, 0, 0, 0, 3718, 3716, 1, 0, 0, 0, 3719, 3701, 1, 0, 0, 0, 3719, 3709, 1, 0, 0,
0, 3720, 499, 1, 0, 0, 0, 3721, 3722, 5, 329, 0, 0, 3722, 3723, 5, 399, 0, 0, 3723,
3724, 3, 498, 249, 0, 3724, 3726, 5, 400, 0, 0, 3725, 3727, 5, 17, 0, 0, 3726, 3725,
1, 0, 0, 0, 3726, 3727, 1, 0, 0, 0, 3727, 3728, 1, 0, 0, 0, 3728, 3738, 3, 466, 233,
0, 3729, 3730, 5, 399, 0, 0, 3730, 3735, 3, 642, 321, 0, 3731, 3732, 5, 397, 0, 0,
3732, 3734, 3, 642, 321, 0, 3733, 3731, 1, 0, 0, 0, 3734, 3737, 1, 0, 0, 0, 3735, 3733,
1, 0, 0, 0, 3735, 3736, 1, 0, 0, 0, 3736, 3739, 1, 0, 0, 0, 3737, 3735, 1, 0, 0, 0, 3738,
3729, 1, 0, 0, 0, 3738, 3739, 1, 0, 0, 0, 3739, 3740, 1, 0, 0, 0, 3740, 3741, 5, 400,
0, 0, 3741, 501, 1, 0, 0, 0, 3742, 3744, 5, 299, 0, 0, 3743, 3745, 5, 436, 0, 0, 3744,
3743, 1, 0, 0, 0, 3744, 3745, 1, 0, 0, 0, 3745, 3759, 1, 0, 0, 0, 3746, 3748, 7, 22,
0, 0, 3747, 3746, 1, 0, 0, 0, 3747, 3748, 1, 0, 0, 0, 3748, 3749, 1, 0, 0, 0, 3749, 3754,
3, 506, 253, 0, 3750, 3751, 5, 397, 0, 0, 3751, 3753, 3, 506, 253, 0, 3752, 3750,
1, 0, 0, 0, 3753, 3756, 1, 0, 0, 0, 3754, 3752, 1, 0, 0, 0, 3754, 3755, 1, 0, 0, 0, 3755,
3760, 1, 0, 0, 0, 3756, 3754, 1, 0, 0, 0, 3757, 3758, 5, 347, 0, 0, 3758, 3760, 3, 504,
252, 0, 3759, 3747, 1, 0, 0, 0, 3759, 3757, 1, 0, 0, 0, 3760, 3763, 1, 0, 0, 0, 3761,
3763, 3, 508, 254, 0, 3762, 3742, 1, 0, 0, 0, 3762, 3761, 1, 0, 0, 0, 3763, 503, 1,
0, 0, 0, 3764, 3765, 5, 399, 0, 0, 3765, 3766, 3, 512, 256, 0, 3766, 3767, 5, 400,
0, 0, 3767, 3768, 3, 212, 106, 0, 3768, 3769, 3, 216, 108, 0, 3769, 3770, 5, 370,
0, 0, 3770, 3783, 5, 426, 0, 0, 3771, 3781, 5, 17, 0, 0, 3772, 3775, 5, 399, 0, 0, 3773,
3776, 3, 448, 224, 0, 3774, 3776, 3, 248, 124, 0, 3775, 3773, 1, 0, 0, 0, 3775, 3774,
1, 0, 0, 0, 3776, 3777, 1, 0, 0, 0, 3777, 3778, 5, 400, 0, 0, 3778, 3782, 1, 0, 0, 0,
3779, 3782, 3, 448, 224, 0, 3780, 3782, 3, 248, 124, 0, 3781, 3772, 1, 0, 0, 0, 3781,
3779, 1, 0, 0, 0, 3781, 3780, 1, 0, 0, 0, 3782, 3784, 1, 0, 0, 0, 3783, 3771, 1, 0, 0,
0, 3783, 3784, 1, 0, 0, 0, 3784, 3785, 1, 0, 0, 0, 3785, 3786, 3, 212, 106, 0, 3786,
3787, 3, 214, 107, 0, 3787, 505, 1, 0, 0, 0, 3788, 3812, 3, 444, 222, 0, 3789, 3792,
3, 256, 128, 0, 3790, 3792, 3, 584, 292, 0, 3791, 3789, 1, 0, 0, 0, 3791, 3790, 1,
0, 0, 0, 3792, 3809, 1, 0, 0, 0, 3793, 3795, 5, 17, 0, 0, 3794, 3793, 1, 0, 0, 0, 3794,
3795, 1, 0, 0, 0, 3795, 3796, 1, 0, 0, 0, 3796, 3810, 3, 642, 321, 0, 3797, 3798, 5,
17, 0, 0, 3798, 3799, 5, 399, 0, 0, 3799, 3804, 3, 642, 321, 0, 3800, 3801, 5, 397,
0, 0, 3801, 3803, 3, 642, 321, 0, 3802, 3800, 1, 0, 0, 0, 3803, 3806, 1, 0, 0, 0, 3804,
3802, 1, 0, 0, 0, 3804, 3805, 1, 0, 0, 0, 3805, 3807, 1, 0, 0, 0, 3806, 3804, 1, 0, 0,
0, 3807, 3808, 5, 400, 0, 0, 3808, 3810, 1, 0, 0, 0, 3809, 3794, 1, 0, 0, 0, 3809, 3797,
1, 0, 0, 0, 3809, 3810, 1, 0, 0, 0, 3810, 3812, 1, 0, 0, 0, 3811, 3788, 1, 0, 0, 0, 3811,
3791, 1, 0, 0, 0, 3812, 507, 1, 0, 0, 0, 3813, 3814, 7, 31, 0, 0, 3814, 3815, 3, 512,
256, 0, 3815, 3816, 3, 212, 106, 0, 3816, 3817, 3, 216, 108, 0, 3817, 3818, 5, 370,
0, 0, 3818, 3831, 5, 426, 0, 0, 3819, 3829, 5, 17, 0, 0, 3820, 3823, 5, 399, 0, 0, 3821,
3824, 3, 448, 224, 0, 3822, 3824, 3, 248, 124, 0, 3823, 3821, 1, 0, 0, 0, 3823, 3822,
1, 0, 0, 0, 3824, 3825, 1, 0, 0, 0, 3825, 3826, 5, 400, 0, 0, 3826, 3830, 1, 0, 0, 0,
3827, 3830, 3, 448, 224, 0, 3828, 3830, 3, 248, 124, 0, 3829, 3820, 1, 0, 0, 0, 3829,
3827, 1, 0, 0, 0, 3829, 3828, 1, 0, 0, 0, 3830, 3832, 1, 0, 0, 0, 3831, 3819, 1, 0, 0,
0, 3831, 3832, 1, 0, 0, 0, 3832, 3833, 1, 0, 0, 0, 3833, 3834, 3, 212, 106, 0, 3834,
3835, 3, 214, 107, 0, 3835, 509, 1, 0, 0, 0, 3836, 3839, 3, 444, 222, 0, 3837, 3839,
3, 584, 292, 0, 3838, 3836, 1, 0, 0, 0, 3838, 3837, 1, 0, 0, 0, 3839, 511, 1, 0, 0, 0,
3840, 3845, 3, 510, 255, 0, 3841, 3842, 5, 397, 0, 0, 3842, 3844, 3, 510, 255, 0,
3843, 3841, 1, 0, 0, 0, 3844, 3847, 1, 0, 0, 0, 3845, 3843, 1, 0, 0, 0, 3845, 3846,
1, 0, 0, 0, 3846, 513, 1, 0, 0, 0, 3847, 3845, 1, 0, 0, 0, 3848, 3849, 5, 386, 0, 0, 3849,
3850, 3, 642, 321, 0, 3850, 3851, 5, 17, 0, 0, 3851, 3859, 3, 516, 258, 0, 3852, 3853,
5, 397, 0, 0, 3853, 3854, 3, 642, 321, 0, 3854, 3855, 5, 17, 0, 0, 3855, 3856, 3, 516,
258, 0, 3856, 3858, 1, 0, 0, 0, 3857, 3852, 1, 0, 0, 0, 3858, 3861, 1, 0, 0, 0, 3859,
3857, 1, 0, 0, 0, 3859, 3860, 1, 0, 0, 0, 3860, 515, 1, 0, 0, 0, 3861, 3859, 1, 0, 0,
0, 3862, 3875, 3, 642, 321, 0, 3863, 3865, 5, 399, 0, 0, 3864, 3866, 3, 642, 321,
0, 3865, 3864, 1, 0, 0, 0, 3865, 3866, 1, 0, 0, 0, 3866, 3868, 1, 0, 0, 0, 3867, 3869,
3, 490, 245, 0, 3868, 3867, 1, 0, 0, 0, 3868, 3869, 1, 0, 0, 0, 3869, 3871, 1, 0, 0,
0, 3870, 3872, 3, 518, 259, 0, 3871, 3870, 1, 0, 0, 0, 3871, 3872, 1, 0, 0, 0, 3872,
3873, 1, 0, 0, 0, 3873, 3875, 5, 400, 0, 0, 3874, 3862, 1, 0, 0, 0, 3874, 3863, 1, 0,
0, 0, 3875, 517, 1, 0, 0, 0, 3876, 3890, 7, 32, 0, 0, 3877, 3878, 5, 354, 0, 0, 3878,
3884, 5, 247, 0, 0, 3879, 3880, 5, 62, 0, 0, 3880, 3884, 5, 291, 0, 0, 3881, 3882,
5, 431, 0, 0, 3882, 3884, 5, 247, 0, 0, 3883, 3877, 1, 0, 0, 0, 3883, 3879, 1, 0, 0,
0, 3883, 3881, 1, 0, 0, 0, 3884, 3891, 1, 0, 0, 0, 3885, 3886, 5, 25, 0, 0, 3886, 3887,
3, 520, 260, 0, 3887, 3888, 5, 11, 0, 0, 3888, 3889, 3, 520, 260, 0, 3889, 3891, 1,
0, 0, 0, 3890, 3883, 1, 0, 0, 0, 3890, 3885, 1, 0, 0, 0, 3891, 519, 1, 0, 0, 0, 3892,
3893, 7, 33, 0, 0, 3893, 3897, 7, 34, 0, 0, 3894, 3895, 5, 62, 0, 0, 3895, 3897, 5,
291, 0, 0, 3896, 3892, 1, 0, 0, 0, 3896, 3894, 1, 0, 0, 0, 3897, 521, 1, 0, 0, 0, 3898,
3899, 5, 144, 0, 0, 3899, 3905, 5, 32, 0, 0, 3900, 3906, 3, 256, 128, 0, 3901, 3906,
3, 524, 262, 0, 3902, 3906, 3, 526, 263, 0, 3903, 3904, 5, 399, 0, 0, 3904, 3906,
5, 400, 0, 0, 3905, 3900, 1, 0, 0, 0, 3905, 3901, 1, 0, 0, 0, 3905, 3902, 1, 0, 0, 0,
3905, 3903, 1, 0, 0, 0, 3906, 523, 1, 0, 0, 0, 3907, 3910, 5, 290, 0, 0, 3908, 3910,
5, 61, 0, 0, 3909, 3907, 1, 0, 0, 0, 3909, 3908, 1, 0, 0, 0, 3910, 3911, 1, 0, 0, 0, 3911,
3912, 5, 399, 0, 0, 3912, 3917, 3, 584, 292, 0, 3913, 3914, 5, 397, 0, 0, 3914, 3916,
3, 584, 292, 0, 3915, 3913, 1, 0, 0, 0, 3916, 3919, 1, 0, 0, 0, 3917, 3915, 1, 0, 0,
0, 3917, 3918, 1, 0, 0, 0, 3918, 3920, 1, 0, 0, 0, 3919, 3917, 1, 0, 0, 0, 3920, 3921,
5, 400, 0, 0, 3921, 525, 1, 0, 0, 0, 3922, 3927, 3, 542, 271, 0, 3923, 3924, 5, 387,
0, 0, 3924, 3928, 5, 290, 0, 0, 3925, 3926, 5, 387, 0, 0, 3926, 3928, 5, 61, 0, 0, 3927,
3923, 1, 0, 0, 0, 3927, 3925, 1, 0, 0, 0, 3927, 3928, 1, 0, 0, 0, 3928, 3942, 1, 0, 0,
0, 3929, 3930, 5, 145, 0, 0, 3930, 3931, 5, 305, 0, 0, 3931, 3932, 5, 399, 0, 0, 3932,
3937, 3, 528, 264, 0, 3933, 3934, 5, 397, 0, 0, 3934, 3936, 3, 528, 264, 0, 3935,
3933, 1, 0, 0, 0, 3936, 3939, 1, 0, 0, 0, 3937, 3935, 1, 0, 0, 0, 3937, 3938, 1, 0, 0,
0, 3938, 3940, 1, 0, 0, 0, 3939, 3937, 1, 0, 0, 0, 3940, 3941, 5, 400, 0, 0, 3941, 3943,
1, 0, 0, 0, 3942, 3929, 1, 0, 0, 0, 3942, 3943, 1, 0, 0, 0, 3943, 527, 1, 0, 0, 0, 3944,
3946, 5, 399, 0, 0, 3945, 3947, 3, 584, 292, 0, 3946, 3945, 1, 0, 0, 0, 3946, 3947,
1, 0, 0, 0, 3947, 3952, 1, 0, 0, 0, 3948, 3949, 5, 397, 0, 0, 3949, 3951, 3, 584, 292,
0, 3950, 3948, 1, 0, 0, 0, 3951, 3954, 1, 0, 0, 0, 3952, 3950, 1, 0, 0, 0, 3952, 3953,
1, 0, 0, 0, 3953, 3955, 1, 0, 0, 0, 3954, 3952, 1, 0, 0, 0, 3955, 3958, 5, 400, 0, 0,
3956, 3958, 3, 584, 292, 0, 3957, 3944, 1, 0, 0, 0, 3957, 3956, 1, 0, 0, 0, 3958, 529,
1, 0, 0, 0, 3959, 3960, 5, 146, 0, 0, 3960, 3961, 3, 584, 292, 0, 3961, 531, 1, 0, 0,
0, 3962, 3963, 5, 256, 0, 0, 3963, 3964, 3, 584, 292, 0, 3964, 533, 1, 0, 0, 0, 3965,
3968, 5, 83, 0, 0, 3966, 3968, 3, 584, 292, 0, 3967, 3965, 1, 0, 0, 0, 3967, 3966,
1, 0, 0, 0, 3968, 535, 1, 0, 0, 0, 3969, 3971, 3, 584, 292, 0, 3970, 3972, 5, 17, 0,
0, 3971, 3970, 1, 0, 0, 0, 3971, 3972, 1, 0, 0, 0, 3972, 3974, 1, 0, 0, 0, 3973, 3975,
3, 642, 321, 0, 3974, 3973, 1, 0, 0, 0, 3974, 3975, 1, 0, 0, 0, 3975, 3986, 1, 0, 0,
0, 3976, 3977, 5, 397, 0, 0, 3977, 3979, 3, 584, 292, 0, 3978, 3980, 5, 17, 0, 0, 3979,
3978, 1, 0, 0, 0, 3979, 3980, 1, 0, 0, 0, 3980, 3982, 1, 0, 0, 0, 3981, 3983, 3, 642,
321, 0, 3982, 3981, 1, 0, 0, 0, 3982, 3983, 1, 0, 0, 0, 3983, 3985, 1, 0, 0, 0, 3984,
3976, 1, 0, 0, 0, 3985, 3988, 1, 0, 0, 0, 3986, 3984, 1, 0, 0, 0, 3986, 3987, 1, 0, 0,
0, 3987, 537, 1, 0, 0, 0, 3988, 3986, 1, 0, 0, 0, 3989, 3992, 3, 540, 270, 0, 3990,
3992, 3, 542, 271, 0, 3991, 3989, 1, 0, 0, 0, 3991, 3990, 1, 0, 0, 0, 3992, 539, 1,
0, 0, 0, 3993, 3994, 5, 399, 0, 0, 3994, 3995, 3, 542, 271, 0, 3995, 3996, 5, 400,
0, 0, 3996, 541, 1, 0, 0, 0, 3997, 4004, 3, 534, 267, 0, 3998, 3999, 5, 397, 0, 0, 3999,
4001, 3, 534, 267, 0, 4000, 3998, 1, 0, 0, 0, 4001, 4002, 1, 0, 0, 0, 4002, 4000, 1,
0, 0, 0, 4002, 4003, 1, 0, 0, 0, 4003, 4005, 1, 0, 0, 0, 4004, 4000, 1, 0, 0, 0, 4004,
4005, 1, 0, 0, 0, 4005, 543, 1, 0, 0, 0, 4006, 4007, 5, 229, 0, 0, 4007, 4008, 5, 32,
0, 0, 4008, 4013, 3, 310, 155, 0, 4009, 4010, 5, 397, 0, 0, 4010, 4012, 3, 310, 155,
0, 4011, 4009, 1, 0, 0, 0, 4012, 4015, 1, 0, 0, 0, 4013, 4011, 1, 0, 0, 0, 4013, 4014,
1, 0, 0, 0, 4014, 545, 1, 0, 0, 0, 4015, 4013, 1, 0, 0, 0, 4016, 4017, 5, 237, 0, 0, 4017,
4018, 5, 32, 0, 0, 4018, 4019, 3, 538, 269, 0, 4019, 547, 1, 0, 0, 0, 4020, 4021, 5,
41, 0, 0, 4021, 4022, 5, 32, 0, 0, 4022, 4023, 3, 538, 269, 0, 4023, 549, 1, 0, 0, 0,
4024, 4025, 5, 97, 0, 0, 4025, 4026, 5, 32, 0, 0, 4026, 4027, 3, 538, 269, 0, 4027,
551, 1, 0, 0, 0, 4028, 4029, 5, 314, 0, 0, 4029, 4049, 5, 32, 0, 0, 4030, 4031, 5, 399,
0, 0, 4031, 4036, 3, 310, 155, 0, 4032, 4033, 5, 397, 0, 0, 4033, 4035, 3, 310, 155,
0, 4034, 4032, 1, 0, 0, 0, 4035, 4038, 1, 0, 0, 0, 4036, 4034, 1, 0, 0, 0, 4036, 4037,
1, 0, 0, 0, 4037, 4039, 1, 0, 0, 0, 4038, 4036, 1, 0, 0, 0, 4039, 4040, 5, 400, 0, 0,
4040, 4050, 1, 0, 0, 0, 4041, 4046, 3, 310, 155, 0, 4042, 4043, 5, 397, 0, 0, 4043,
4045, 3, 310, 155, 0, 4044, 4042, 1, 0, 0, 0, 4045, 4048, 1, 0, 0, 0, 4046, 4044, 1,
0, 0, 0, 4046, 4047, 1, 0, 0, 0, 4047, 4050, 1, 0, 0, 0, 4048, 4046, 1, 0, 0, 0, 4049,
4030, 1, 0, 0, 0, 4049, 4041, 1, 0, 0, 0, 4050, 553, 1, 0, 0, 0, 4051, 4052, 5, 349,
0, 0, 4052, 4056, 5, 399, 0, 0, 4053, 4057, 5, 179, 0, 0, 4054, 4057, 5, 343, 0, 0,
4055, 4057, 5, 29, 0, 0, 4056, 4053, 1, 0, 0, 0, 4056, 4054, 1, 0, 0, 0, 4056, 4055,
1, 0, 0, 0, 4056, 4057, 1, 0, 0, 0, 4057, 4059, 1, 0, 0, 0, 4058, 4060, 3, 510, 255,
0, 4059, 4058, 1, 0, 0, 0, 4059, 4060, 1, 0, 0, 0, 4060, 4061, 1, 0, 0, 0, 4061, 4062,
5, 139, 0, 0, 4062, 4063, 3, 510, 255, 0, 4063, 4064, 5, 400, 0, 0, 4064, 4105, 1,
0, 0, 0, 4065, 4066, 3, 562, 281, 0, 4066, 4081, 5, 399, 0, 0, 4067, 4082, 5, 415,
0, 0, 4068, 4070, 7, 22, 0, 0, 4069, 4068, 1, 0, 0, 0, 4069, 4070, 1, 0, 0, 0, 4070,
4079, 1, 0, 0, 0, 4071, 4076, 3, 510, 255, 0, 4072, 4073, 5, 397, 0, 0, 4073, 4075,
3, 510, 255, 0, 4074, 4072, 1, 0, 0, 0, 4075, 4078, 1, 0, 0, 0, 4076, 4074, 1, 0, 0,
0, 4076, 4077, 1, 0, 0, 0, 4077, 4080, 1, 0, 0, 0, 4078, 4076, 1, 0, 0, 0, 4079, 4071,
1, 0, 0, 0, 4079, 4080, 1, 0, 0, 0, 4080, 4082, 1, 0, 0, 0, 4081, 4067, 1, 0, 0, 0, 4081,
4069, 1, 0, 0, 0, 4082, 4102, 1, 0, 0, 0, 4083, 4084, 5, 400, 0, 0, 4084, 4085, 5, 388,
0, 0, 4085, 4086, 5, 144, 0, 0, 4086, 4087, 5, 399, 0, 0, 4087, 4088, 3, 544, 272,
0, 4088, 4089, 5, 400, 0, 0, 4089, 4103, 1, 0, 0, 0, 4090, 4092, 5, 400, 0, 0, 4091,
4093, 3, 556, 278, 0, 4092, 4091, 1, 0, 0, 0, 4092, 4093, 1, 0, 0, 0, 4093, 4094, 1,
0, 0, 0, 4094, 4095, 5, 234, 0, 0, 4095, 4103, 3, 516, 258, 0, 4096, 4097, 3, 556,
278, 0, 4097, 4098, 5, 400, 0, 0, 4098, 4099, 5, 234, 0, 0, 4099, 4100, 3, 516, 258,
0, 4100, 4103, 1, 0, 0, 0, 4101, 4103, 5, 400, 0, 0, 4102, 4083, 1, 0, 0, 0, 4102, 4090,
1, 0, 0, 0, 4102, 4096, 1, 0, 0, 0, 4102, 4101, 1, 0, 0, 0, 4103, 4105, 1, 0, 0, 0, 4104,
4051, 1, 0, 0, 0, 4104, 4065, 1, 0, 0, 0, 4105, 555, 1, 0, 0, 0, 4106, 4107, 7, 35, 0,
0, 4107, 4108, 5, 220, 0, 0, 4108, 557, 1, 0, 0, 0, 4109, 4110, 3, 644, 322, 0, 4110,
559, 1, 0, 0, 0, 4111, 4114, 3, 644, 322, 0, 4112, 4114, 5, 426, 0, 0, 4113, 4111,
1, 0, 0, 0, 4113, 4112, 1, 0, 0, 0, 4114, 561, 1, 0, 0, 0, 4115, 4119, 3, 644, 322, 0,
4116, 4119, 3, 650, 325, 0, 4117, 4119, 3, 640, 320, 0, 4118, 4115, 1, 0, 0, 0, 4118,
4116, 1, 0, 0, 0, 4118, 4117, 1, 0, 0, 0, 4119, 563, 1, 0, 0, 0, 4120, 4121, 5, 36, 0,
0, 4121, 4122, 5, 399, 0, 0, 4122, 4123, 3, 584, 292, 0, 4123, 4124, 5, 17, 0, 0, 4124,
4127, 3, 350, 175, 0, 4125, 4126, 5, 137, 0, 0, 4126, 4128, 5, 426, 0, 0, 4127, 4125,
1, 0, 0, 0, 4127, 4128, 1, 0, 0, 0, 4128, 4129, 1, 0, 0, 0, 4129, 4130, 5, 400, 0, 0,
4130, 565, 1, 0, 0, 0, 4131, 4132, 5, 35, 0, 0, 4132, 4138, 3, 584, 292, 0, 4133, 4134,
5, 383, 0, 0, 4134, 4135, 3, 584, 292, 0, 4135, 4136, 5, 335, 0, 0, 4136, 4137, 3,
584, 292, 0, 4137, 4139, 1, 0, 0, 0, 4138, 4133, 1, 0, 0, 0, 4139, 4140, 1, 0, 0, 0,
4140, 4138, 1, 0, 0, 0, 4140, 4141, 1, 0, 0, 0, 4141, 4144, 1, 0, 0, 0, 4142, 4143,
5, 105, 0, 0, 4143, 4145, 3, 584, 292, 0, 4144, 4142, 1, 0, 0, 0, 4144, 4145, 1, 0,
0, 0, 4145, 4146, 1, 0, 0, 0, 4146, 4147, 5, 108, 0, 0, 4147, 567, 1, 0, 0, 0, 4148,
4154, 5, 35, 0, 0, 4149, 4150, 5, 383, 0, 0, 4150, 4151, 3, 584, 292, 0, 4151, 4152,
5, 335, 0, 0, 4152, 4153, 3, 584, 292, 0, 4153, 4155, 1, 0, 0, 0, 4154, 4149, 1, 0,
0, 0, 4155, 4156, 1, 0, 0, 0, 4156, 4154, 1, 0, 0, 0, 4156, 4157, 1, 0, 0, 0, 4157, 4160,
1, 0, 0, 0, 4158, 4159, 5, 105, 0, 0, 4159, 4161, 3, 584, 292, 0, 4160, 4158, 1, 0,
0, 0, 4160, 4161, 1, 0, 0, 0, 4161, 4162, 1, 0, 0, 0, 4162, 4163, 5, 108, 0, 0, 4163,
569, 1, 0, 0, 0, 4164, 4165, 5, 132, 0, 0, 4165, 4166, 5, 399, 0, 0, 4166, 4169, 3,
584, 292, 0, 4167, 4168, 5, 341, 0, 0, 4168, 4170, 3, 574, 287, 0, 4169, 4167, 1,
0, 0, 0, 4169, 4170, 1, 0, 0, 0, 4170, 4171, 1, 0, 0, 0, 4171, 4172, 5, 400, 0, 0, 4172,
571, 1, 0, 0, 0, 4173, 4174, 5, 124, 0, 0, 4174, 4175, 5, 399, 0, 0, 4175, 4176, 3,
574, 287, 0, 4176, 4177, 5, 139, 0, 0, 4177, 4178, 3, 584, 292, 0, 4178, 4179, 5,
400, 0, 0, 4179, 573, 1, 0, 0, 0, 4180, 4189, 3, 670, 335, 0, 4181, 4189, 5, 257, 0,
0, 4182, 4189, 3, 672, 336, 0, 4183, 4189, 3, 674, 337, 0, 4184, 4189, 3, 676, 338,
0, 4185, 4189, 3, 678, 339, 0, 4186, 4189, 3, 680, 340, 0, 4187, 4189, 3, 682, 341,
0, 4188, 4180, 1, 0, 0, 0, 4188, 4181, 1, 0, 0, 0, 4188, 4182, 1, 0, 0, 0, 4188, 4183,
1, 0, 0, 0, 4188, 4184, 1, 0, 0, 0, 4188, 4185, 1, 0, 0, 0, 4188, 4186, 1, 0, 0, 0, 4188,
4187, 1, 0, 0, 0, 4189, 575, 1, 0, 0, 0, 4190, 4191, 3, 578, 289, 0, 4191, 4192, 3,
582, 291, 0, 4192, 4219, 1, 0, 0, 0, 4193, 4219, 5, 431, 0, 0, 4194, 4195, 5, 71, 0,
0, 4195, 4219, 5, 426, 0, 0, 4196, 4219, 5, 63, 0, 0, 4197, 4198, 5, 337, 0, 0, 4198,
4219, 5, 426, 0, 0, 4199, 4219, 5, 64, 0, 0, 4200, 4201, 5, 338, 0, 0, 4201, 4219,
5, 426, 0, 0, 4202, 4206, 5, 426, 0, 0, 4203, 4205, 5, 426, 0, 0, 4204, 4203, 1, 0,
0, 0, 4205, 4208, 1, 0, 0, 0, 4206, 4204, 1, 0, 0, 0, 4206, 4207, 1, 0, 0, 0, 4207, 4219,
1, 0, 0, 0, 4208, 4206, 1, 0, 0, 0, 4209, 4219, 5, 428, 0, 0, 4210, 4219, 5, 429, 0,
0, 4211, 4212, 5, 433, 0, 0, 4212, 4219, 5, 427, 0, 0, 4213, 4219, 5, 350, 0, 0, 4214,
4219, 5, 125, 0, 0, 4215, 4219, 5, 219, 0, 0, 4216, 4219, 5, 424, 0, 0, 4217, 4219,
3, 258, 129, 0, 4218, 4190, 1, 0, 0, 0, 4218, 4193, 1, 0, 0, 0, 4218, 4194, 1, 0, 0,
0, 4218, 4196, 1, 0, 0, 0, 4218, 4197, 1, 0, 0, 0, 4218, 4199, 1, 0, 0, 0, 4218, 4200,
1, 0, 0, 0, 4218, 4202, 1, 0, 0, 0, 4218, 4209, 1, 0, 0, 0, 4218, 4210, 1, 0, 0, 0, 4218,
4211, 1, 0, 0, 0, 4218, 4213, 1, 0, 0, 0, 4218, 4214, 1, 0, 0, 0, 4218, 4215, 1, 0, 0,
0, 4218, 4216, 1, 0, 0, 0, 4218, 4217, 1, 0, 0, 0, 4219, 577, 1, 0, 0, 0, 4220, 4221,
7, 27, 0, 0, 4221, 579, 1, 0, 0, 0, 4222, 4223, 5, 399, 0, 0, 4223, 4224, 3, 578, 289,
0, 4224, 4225, 5, 400, 0, 0, 4225, 4226, 3, 582, 291, 0, 4226, 4238, 1, 0, 0, 0, 4227,
4233, 5, 165, 0, 0, 4228, 4234, 3, 578, 289, 0, 4229, 4230, 5, 399, 0, 0, 4230, 4231,
3, 584, 292, 0, 4231, 4232, 5, 400, 0, 0, 4232, 4234, 1, 0, 0, 0, 4233, 4228, 1, 0,
0, 0, 4233, 4229, 1, 0, 0, 0, 4234, 4235, 1, 0, 0, 0, 4235, 4236, 3, 582, 291, 0, 4236,
4238, 1, 0, 0, 0, 4237, 4222, 1, 0, 0, 0, 4237, 4227, 1, 0, 0, 0, 4238, 581, 1, 0, 0,
0, 4239, 4240, 3, 670, 335, 0, 4240, 4241, 5, 341, 0, 0, 4241, 4242, 3, 672, 336,
0, 4242, 4254, 1, 0, 0, 0, 4243, 4244, 3, 676, 338, 0, 4244, 4245, 5, 341, 0, 0, 4245,
4246, 3, 682, 341, 0, 4246, 4254, 1, 0, 0, 0, 4247, 4254, 3, 670, 335, 0, 4248, 4254,
3, 672, 336, 0, 4249, 4254, 3, 676, 338, 0, 4250, 4254, 3, 678, 339, 0, 4251, 4254,
3, 680, 340, 0, 4252, 4254, 3, 682, 341, 0, 4253, 4239, 1, 0, 0, 0, 4253, 4243, 1,
0, 0, 0, 4253, 4247, 1, 0, 0, 0, 4253, 4248, 1, 0, 0, 0, 4253, 4249, 1, 0, 0, 0, 4253,
4250, 1, 0, 0, 0, 4253, 4251, 1, 0, 0, 0, 4253, 4252, 1, 0, 0, 0, 4254, 583, 1, 0, 0,
0, 4255, 4260, 3, 626, 313, 0, 4256, 4257, 5, 228, 0, 0, 4257, 4259, 3, 626, 313,
0, 4258, 4256, 1, 0, 0, 0, 4259, 4262, 1, 0, 0, 0, 4260, 4258, 1, 0, 0, 0, 4260, 4261,
1, 0, 0, 0, 4261, 585, 1, 0, 0, 0, 4262, 4260, 1, 0, 0, 0, 4263, 4275, 3, 576, 288, 0,
4264, 4275, 3, 580, 290, 0, 4265, 4275, 3, 564, 282, 0, 4266, 4275, 3, 572, 286,
0, 4267, 4275, 3, 570, 285, 0, 4268, 4275, 3, 566, 283, 0, 4269, 4275, 3, 568, 284,
0, 4270, 4275, 3, 604, 302, 0, 4271, 4275, 3, 554, 277, 0, 4272, 4275, 3, 540, 270,
0, 4273, 4275, 3, 642, 321, 0, 4274, 4263, 1, 0, 0, 0, 4274, 4264, 1, 0, 0, 0, 4274,
4265, 1, 0, 0, 0, 4274, 4266, 1, 0, 0, 0, 4274, 4267, 1, 0, 0, 0, 4274, 4268, 1, 0, 0,
0, 4274, 4269, 1, 0, 0, 0, 4274, 4270, 1, 0, 0, 0, 4274, 4271, 1, 0, 0, 0, 4274, 4272,
1, 0, 0, 0, 4274, 4273, 1, 0, 0, 0, 4275, 587, 1, 0, 0, 0, 4276, 4278, 7, 36, 0, 0, 4277,
4276, 1, 0, 0, 0, 4278, 4281, 1, 0, 0, 0, 4279, 4277, 1, 0, 0, 0, 4279, 4280, 1, 0, 0,
0, 4280, 4282, 1, 0, 0, 0, 4281, 4279, 1, 0, 0, 0, 4282, 4291, 3, 586, 293, 0, 4283,
4284, 5, 401, 0, 0, 4284, 4285, 3, 584, 292, 0, 4285, 4286, 5, 402, 0, 0, 4286, 4290,
1, 0, 0, 0, 4287, 4288, 5, 395, 0, 0, 4288, 4290, 3, 642, 321, 0, 4289, 4283, 1, 0,
0, 0, 4289, 4287, 1, 0, 0, 0, 4290, 4293, 1, 0, 0, 0, 4291, 4289, 1, 0, 0, 0, 4291, 4292,
1, 0, 0, 0, 4292, 589, 1, 0, 0, 0, 4293, 4291, 1, 0, 0, 0, 4294, 4299, 3, 588, 294, 0,
4295, 4296, 5, 423, 0, 0, 4296, 4298, 3, 588, 294, 0, 4297, 4295, 1, 0, 0, 0, 4298,
4301, 1, 0, 0, 0, 4299, 4297, 1, 0, 0, 0, 4299, 4300, 1, 0, 0, 0, 4300, 591, 1, 0, 0,
0, 4301, 4299, 1, 0, 0, 0, 4302, 4307, 3, 590, 295, 0, 4303, 4304, 7, 37, 0, 0, 4304,
4306, 3, 590, 295, 0, 4305, 4303, 1, 0, 0, 0, 4306, 4309, 1, 0, 0, 0, 4307, 4305, 1,
0, 0, 0, 4307, 4308, 1, 0, 0, 0, 4308, 593, 1, 0, 0, 0, 4309, 4307, 1, 0, 0, 0, 4310,
4315, 3, 592, 296, 0, 4311, 4312, 7, 38, 0, 0, 4312, 4314, 3, 592, 296, 0, 4313, 4311,
1, 0, 0, 0, 4314, 4317, 1, 0, 0, 0, 4315, 4313, 1, 0, 0, 0, 4315, 4316, 1, 0, 0, 0, 4316,
595, 1, 0, 0, 0, 4317, 4315, 1, 0, 0, 0, 4318, 4323, 3, 594, 297, 0, 4319, 4320, 5,
422, 0, 0, 4320, 4322, 3, 594, 297, 0, 4321, 4319, 1, 0, 0, 0, 4322, 4325, 1, 0, 0,
0, 4323, 4321, 1, 0, 0, 0, 4323, 4324, 1, 0, 0, 0, 4324, 597, 1, 0, 0, 0, 4325, 4323,
1, 0, 0, 0, 4326, 4331, 3, 596, 298, 0, 4327, 4328, 5, 419, 0, 0, 4328, 4330, 3, 596,
298, 0, 4329, 4327, 1, 0, 0, 0, 4330, 4333, 1, 0, 0, 0, 4331, 4329, 1, 0, 0, 0, 4331,
4332, 1, 0, 0, 0, 4332, 599, 1, 0, 0, 0, 4333, 4331, 1, 0, 0, 0, 4334, 4339, 3, 598,
299, 0, 4335, 4336, 5, 421, 0, 0, 4336, 4338, 3, 598, 299, 0, 4337, 4335, 1, 0, 0,
0, 4338, 4341, 1, 0, 0, 0, 4339, 4337, 1, 0, 0, 0, 4339, 4340, 1, 0, 0, 0, 4340, 601,
1, 0, 0, 0, 4341, 4339, 1, 0, 0, 0, 4342, 4343, 7, 39, 0, 0, 4343, 603, 1, 0, 0, 0, 4344,
4345, 5, 399, 0, 0, 4345, 4346, 3, 378, 189, 0, 4346, 4347, 5, 400, 0, 0, 4347, 605,
1, 0, 0, 0, 4348, 4350, 3, 600, 300, 0, 4349, 4351, 3, 608, 304, 0, 4350, 4349, 1,
0, 0, 0, 4350, 4351, 1, 0, 0, 0, 4351, 4355, 1, 0, 0, 0, 4352, 4353, 5, 117, 0, 0, 4353,
4355, 3, 604, 302, 0, 4354, 4348, 1, 0, 0, 0, 4354, 4352, 1, 0, 0, 0, 4355, 607, 1,
0, 0, 0, 4356, 4357, 3, 602, 301, 0, 4357, 4358, 3, 600, 300, 0, 4358, 4363, 1, 0,
0, 0, 4359, 4363, 3, 610, 305, 0, 4360, 4361, 5, 216, 0, 0, 4361, 4363, 3, 614, 307,
0, 4362, 4356, 1, 0, 0, 0, 4362, 4359, 1, 0, 0, 0, 4362, 4360, 1, 0, 0, 0, 4363, 609,
1, 0, 0, 0, 4364, 4365, 5, 154, 0, 0, 4365, 4379, 3, 612, 306, 0, 4366, 4367, 5, 25,
0, 0, 4367, 4368, 3, 600, 300, 0, 4368, 4369, 5, 11, 0, 0, 4369, 4370, 3, 600, 300,
0, 4370, 4379, 1, 0, 0, 0, 4371, 4372, 5, 184, 0, 0, 4372, 4373, 7, 40, 0, 0, 4373,
4379, 3, 540, 270, 0, 4374, 4375, 3, 638, 319, 0, 4375, 4376, 7, 41, 0, 0, 4376, 4377,
3, 604, 302, 0, 4377, 4379, 1, 0, 0, 0, 4378, 4364, 1, 0, 0, 0, 4378, 4366, 1, 0, 0,
0, 4378, 4371, 1, 0, 0, 0, 4378, 4374, 1, 0, 0, 0, 4379, 611, 1, 0, 0, 0, 4380, 4383,
3, 604, 302, 0, 4381, 4383, 3, 540, 270, 0, 4382, 4380, 1, 0, 0, 0, 4382, 4381, 1,
0, 0, 0, 4383, 613, 1, 0, 0, 0, 4384, 4385, 7, 42, 0, 0, 4385, 4388, 3, 600, 300, 0,
4386, 4388, 3, 610, 305, 0, 4387, 4384, 1, 0, 0, 0, 4387, 4386, 1, 0, 0, 0, 4388, 615,
1, 0, 0, 0, 4389, 4390, 5, 167, 0, 0, 4390, 4391, 5, 96, 0, 0, 4391, 4392, 5, 139, 0,
0, 4392, 617, 1, 0, 0, 0, 4393, 4401, 5, 405, 0, 0, 4394, 4401, 5, 406, 0, 0, 4395,
4401, 5, 407, 0, 0, 4396, 4397, 5, 167, 0, 0, 4397, 4398, 5, 216, 0, 0, 4398, 4399,
5, 96, 0, 0, 4399, 4401, 5, 139, 0, 0, 4400, 4393, 1, 0, 0, 0, 4400, 4394, 1, 0, 0, 0,
4400, 4395, 1, 0, 0, 0, 4400, 4396, 1, 0, 0, 0, 4401, 619, 1, 0, 0, 0, 4402, 4411, 3,
606, 303, 0, 4403, 4404, 3, 618, 309, 0, 4404, 4405, 3, 606, 303, 0, 4405, 4410,
1, 0, 0, 0, 4406, 4407, 3, 616, 308, 0, 4407, 4408, 3, 606, 303, 0, 4408, 4410, 1,
0, 0, 0, 4409, 4403, 1, 0, 0, 0, 4409, 4406, 1, 0, 0, 0, 4410, 4413, 1, 0, 0, 0, 4411,
4409, 1, 0, 0, 0, 4411, 4412, 1, 0, 0, 0, 4412, 621, 1, 0, 0, 0, 4413, 4411, 1, 0, 0,
0, 4414, 4421, 5, 219, 0, 0, 4415, 4421, 5, 350, 0, 0, 4416, 4421, 5, 125, 0, 0, 4417,
4421, 5, 360, 0, 0, 4418, 4419, 5, 216, 0, 0, 4419, 4421, 7, 43, 0, 0, 4420, 4414,
1, 0, 0, 0, 4420, 4415, 1, 0, 0, 0, 4420, 4416, 1, 0, 0, 0, 4420, 4417, 1, 0, 0, 0, 4420,
4418, 1, 0, 0, 0, 4421, 623, 1, 0, 0, 0, 4422, 4424, 5, 216, 0, 0, 4423, 4422, 1, 0,
0, 0, 4424, 4427, 1, 0, 0, 0, 4425, 4423, 1, 0, 0, 0, 4425, 4426, 1, 0, 0, 0, 4426, 4428,
1, 0, 0, 0, 4427, 4425, 1, 0, 0, 0, 4428, 4431, 3, 620, 310, 0, 4429, 4430, 5, 167,
0, 0, 4430, 4432, 3, 622, 311, 0, 4431, 4429, 1, 0, 0, 0, 4431, 4432, 1, 0, 0, 0, 4432,
625, 1, 0, 0, 0, 4433, 4438, 3, 624, 312, 0, 4434, 4435, 5, 11, 0, 0, 4435, 4437, 3,
624, 312, 0, 4436, 4434, 1, 0, 0, 0, 4437, 4440, 1, 0, 0, 0, 4438, 4436, 1, 0, 0, 0,
4438, 4439, 1, 0, 0, 0, 4439, 627, 1, 0, 0, 0, 4440, 4438, 1, 0, 0, 0, 4441, 4443, 3,
480, 240, 0, 4442, 4444, 3, 630, 315, 0, 4443, 4442, 1, 0, 0, 0, 4443, 4444, 1, 0,
0, 0, 4444, 629, 1, 0, 0, 0, 4445, 4446, 5, 237, 0, 0, 4446, 4447, 5, 399, 0, 0, 4447,
4452, 3, 632, 316, 0, 4448, 4449, 5, 397, 0, 0, 4449, 4451, 3, 632, 316, 0, 4450,
4448, 1, 0, 0, 0, 4451, 4454, 1, 0, 0, 0, 4452, 4450, 1, 0, 0, 0, 4452, 4453, 1, 0, 0,
0, 4453, 4455, 1, 0, 0, 0, 4454, 4452, 1, 0, 0, 0, 4455, 4456, 5, 400, 0, 0, 4456, 631,
1, 0, 0, 0, 4457, 4460, 3, 642, 321, 0, 4458, 4459, 5, 405, 0, 0, 4459, 4461, 3, 576,
288, 0, 4460, 4458, 1, 0, 0, 0, 4460, 4461, 1, 0, 0, 0, 4461, 633, 1, 0, 0, 0, 4462,
4463, 5, 399, 0, 0, 4463, 4468, 3, 636, 318, 0, 4464, 4465, 5, 397, 0, 0, 4465, 4467,
3, 636, 318, 0, 4466, 4464, 1, 0, 0, 0, 4467, 4470, 1, 0, 0, 0, 4468, 4466, 1, 0, 0,
0, 4468, 4469, 1, 0, 0, 0, 4469, 4471, 1, 0, 0, 0, 4470, 4468, 1, 0, 0, 0, 4471, 4472,
5, 400, 0, 0, 4472, 635, 1, 0, 0, 0, 4473, 4476, 3, 642, 321, 0, 4474, 4477, 5, 184,
0, 0, 4475, 4477, 3, 638, 319, 0, 4476, 4474, 1, 0, 0, 0, 4476, 4475, 1, 0, 0, 0, 4477,
4478, 1, 0, 0, 0, 4478, 4479, 3, 576, 288, 0, 4479, 637, 1, 0, 0, 0, 4480, 4481, 7,
44, 0, 0, 4481, 639, 1, 0, 0, 0, 4482, 4483, 7, 45, 0, 0, 4483, 641, 1, 0, 0, 0, 4484,
4487, 5, 432, 0, 0, 4485, 4487, 3, 648, 324, 0, 4486, 4484, 1, 0, 0, 0, 4486, 4485,
1, 0, 0, 0, 4487, 643, 1, 0, 0, 0, 4488, 4491, 3, 642, 321, 0, 4489, 4490, 5, 395, 0,
0, 4490, 4492, 3, 642, 321, 0, 4491, 4489, 1, 0, 0, 0, 4491, 4492, 1, 0, 0, 0, 4492,
645, 1, 0, 0, 0, 4493, 4494, 3, 642, 321, 0, 4494, 647, 1, 0, 0, 0, 4495, 4496, 7, 46,
0, 0, 4496, 649, 1, 0, 0, 0, 4497, 4498, 7, 47, 0, 0, 4498, 651, 1, 0, 0, 0, 4499, 4551,
3, 642, 321, 0, 4500, 4551, 5, 299, 0, 0, 4501, 4551, 5, 171, 0, 0, 4502, 4551, 5,
237, 0, 0, 4503, 4551, 5, 198, 0, 0, 4504, 4551, 5, 268, 0, 0, 4505, 4551, 5, 369,
0, 0, 4506, 4551, 5, 241, 0, 0, 4507, 4551, 5, 165, 0, 0, 4508, 4551, 5, 292, 0, 0,
4509, 4551, 5, 356, 0, 0, 4510, 4551, 5, 144, 0, 0, 4511, 4551, 5, 203, 0, 0, 4512,
4551, 5, 219, 0, 0, 4513, 4551, 5, 126, 0, 0, 4514, 4551, 5, 188, 0, 0, 4515, 4551,
5, 101, 0, 0, 4516, 4551, 5, 329, 0, 0, 4517, 4551, 5, 224, 0, 0, 4518, 4551, 5, 291,
0, 0, 4519, 4551, 5, 145, 0, 0, 4520, 4551, 5, 304, 0, 0, 4521, 4551, 5, 135, 0, 0,
4522, 4551, 5, 318, 0, 0, 4523, 4551, 5, 161, 0, 0, 4524, 4551, 5, 54, 0, 0, 4525,
4551, 5, 166, 0, 0, 4526, 4551, 5, 358, 0, 0, 4527, 4551, 5, 45, 0, 0, 4528, 4551,
5, 347, 0, 0, 4529, 4551, 5, 96, 0, 0, 4530, 4551, 5, 154, 0, 0, 4531, 4551, 5, 269,
0, 0, 4532, 4551, 5, 337, 0, 0, 4533, 4551, 5, 225, 0, 0, 4534, 4551, 5, 108, 0, 0,
4535, 4551, 5, 141, 0, 0, 4536, 4551, 5, 365, 0, 0, 4537, 4551, 5, 21, 0, 0, 4538,
4551, 5, 78, 0, 0, 4539, 4551, 5, 374, 0, 0, 4540, 4551, 5, 336, 0, 0, 4541, 4551,
5, 167, 0, 0, 4542, 4551, 5, 134, 0, 0, 4543, 4551, 5, 216, 0, 0, 4544, 4551, 5, 27,
0, 0, 4545, 4551, 5, 370, 0, 0, 4546, 4551, 5, 263, 0, 0, 4547, 4551, 5, 25, 0, 0, 4548,
4551, 5, 62, 0, 0, 4549, 4551, 5, 17, 0, 0, 4550, 4499, 1, 0, 0, 0, 4550, 4500, 1, 0,
0, 0, 4550, 4501, 1, 0, 0, 0, 4550, 4502, 1, 0, 0, 0, 4550, 4503, 1, 0, 0, 0, 4550, 4504,
1, 0, 0, 0, 4550, 4505, 1, 0, 0, 0, 4550, 4506, 1, 0, 0, 0, 4550, 4507, 1, 0, 0, 0, 4550,
4508, 1, 0, 0, 0, 4550, 4509, 1, 0, 0, 0, 4550, 4510, 1, 0, 0, 0, 4550, 4511, 1, 0, 0,
0, 4550, 4512, 1, 0, 0, 0, 4550, 4513, 1, 0, 0, 0, 4550, 4514, 1, 0, 0, 0, 4550, 4515,
1, 0, 0, 0, 4550, 4516, 1, 0, 0, 0, 4550, 4517, 1, 0, 0, 0, 4550, 4518, 1, 0, 0, 0, 4550,
4519, 1, 0, 0, 0, 4550, 4520, 1, 0, 0, 0, 4550, 4521, 1, 0, 0, 0, 4550, 4522, 1, 0, 0,
0, 4550, 4523, 1, 0, 0, 0, 4550, 4524, 1, 0, 0, 0, 4550, 4525, 1, 0, 0, 0, 4550, 4526,
1, 0, 0, 0, 4550, 4527, 1, 0, 0, 0, 4550, 4528, 1, 0, 0, 0, 4550, 4529, 1, 0, 0, 0, 4550,
4530, 1, 0, 0, 0, 4550, 4531, 1, 0, 0, 0, 4550, 4532, 1, 0, 0, 0, 4550, 4533, 1, 0, 0,
0, 4550, 4534, 1, 0, 0, 0, 4550, 4535, 1, 0, 0, 0, 4550, 4536, 1, 0, 0, 0, 4550, 4537,
1, 0, 0, 0, 4550, 4538, 1, 0, 0, 0, 4550, 4539, 1, 0, 0, 0, 4550, 4540, 1, 0, 0, 0, 4550,
4541, 1, 0, 0, 0, 4550, 4542, 1, 0, 0, 0, 4550, 4543, 1, 0, 0, 0, 4550, 4544, 1, 0, 0,
0, 4550, 4545, 1, 0, 0, 0, 4550, 4546, 1, 0, 0, 0, 4550, 4547, 1, 0, 0, 0, 4550, 4548,
1, 0, 0, 0, 4550, 4549, 1, 0, 0, 0, 4551, 653, 1, 0, 0, 0, 4552, 4553, 5, 58, 0, 0, 4553,
4554, 5, 280, 0, 0, 4554, 4556, 5, 243, 0, 0, 4555, 4557, 3, 32, 16, 0, 4556, 4555,
1, 0, 0, 0, 4556, 4557, 1, 0, 0, 0, 4557, 4567, 1, 0, 0, 0, 4558, 4559, 3, 642, 321,
0, 4559, 4560, 5, 184, 0, 0, 4560, 4561, 3, 642, 321, 0, 4561, 4568, 1, 0, 0, 0, 4562,
4565, 3, 642, 321, 0, 4563, 4564, 5, 387, 0, 0, 4564, 4566, 3, 660, 330, 0, 4565,
4563, 1, 0, 0, 0, 4565, 4566, 1, 0, 0, 0, 4566, 4568, 1, 0, 0, 0, 4567, 4558, 1, 0, 0,
0, 4567, 4562, 1, 0, 0, 0, 4568, 4718, 1, 0, 0, 0, 4569, 4570, 5, 9, 0, 0, 4570, 4571,
5, 280, 0, 0, 4571, 4572, 5, 243, 0, 0, 4572, 4597, 3, 642, 321, 0, 4573, 4598, 5,
373, 0, 0, 4574, 4598, 3, 668, 334, 0, 4575, 4576, 5, 304, 0, 0, 4576, 4598, 3, 660,
330, 0, 4577, 4578, 5, 363, 0, 0, 4578, 4583, 3, 662, 331, 0, 4579, 4580, 5, 397,
0, 0, 4580, 4582, 3, 662, 331, 0, 4581, 4579, 1, 0, 0, 0, 4582, 4585, 1, 0, 0, 0, 4583,
4581, 1, 0, 0, 0, 4583, 4584, 1, 0, 0, 0, 4584, 4598, 1, 0, 0, 0, 4585, 4583, 1, 0, 0,
0, 4586, 4587, 5, 274, 0, 0, 4587, 4588, 5, 341, 0, 0, 4588, 4598, 3, 642, 321, 0,
4589, 4591, 3, 664, 332, 0, 4590, 4592, 3, 666, 333, 0, 4591, 4590, 1, 0, 0, 0, 4591,
4592, 1, 0, 0, 0, 4592, 4598, 1, 0, 0, 0, 4593, 4595, 3, 666, 333, 0, 4594, 4596, 3,
664, 332, 0, 4595, 4594, 1, 0, 0, 0, 4595, 4596, 1, 0, 0, 0, 4596, 4598, 1, 0, 0, 0,
4597, 4573, 1, 0, 0, 0, 4597, 4574, 1, 0, 0, 0, 4597, 4575, 1, 0, 0, 0, 4597, 4577,
1, 0, 0, 0, 4597, 4586, 1, 0, 0, 0, 4597, 4589, 1, 0, 0, 0, 4597, 4593, 1, 0, 0, 0, 4598,
4718, 1, 0, 0, 0, 4599, 4600, 5, 101, 0, 0, 4600, 4601, 5, 280, 0, 0, 4601, 4603, 5,
243, 0, 0, 4602, 4604, 3, 30, 15, 0, 4603, 4602, 1, 0, 0, 0, 4603, 4604, 1, 0, 0, 0,
4604, 4605, 1, 0, 0, 0, 4605, 4718, 3, 642, 321, 0, 4606, 4609, 3, 666, 333, 0, 4607,
4609, 3, 668, 334, 0, 4608, 4606, 1, 0, 0, 0, 4608, 4607, 1, 0, 0, 0, 4609, 4610, 1,
0, 0, 0, 4610, 4611, 5, 390, 0, 0, 4611, 4612, 5, 197, 0, 0, 4612, 4718, 1, 0, 0, 0,
4613, 4625, 5, 278, 0, 0, 4614, 4615, 5, 3, 0, 0, 4615, 4616, 5, 280, 0, 0, 4616, 4617,
5, 243, 0, 0, 4617, 4618, 5, 387, 0, 0, 4618, 4626, 3, 642, 321, 0, 4619, 4620, 5,
280, 0, 0, 4620, 4621, 5, 243, 0, 0, 4621, 4622, 3, 642, 321, 0, 4622, 4623, 5, 387,
0, 0, 4623, 4624, 3, 642, 321, 0, 4624, 4626, 1, 0, 0, 0, 4625, 4614, 1, 0, 0, 0, 4625,
4619, 1, 0, 0, 0, 4626, 4718, 1, 0, 0, 0, 4627, 4628, 5, 58, 0, 0, 4628, 4629, 5, 348,
0, 0, 4629, 4630, 3, 642, 321, 0, 4630, 4631, 5, 395, 0, 0, 4631, 4632, 3, 642, 321,
0, 4632, 4633, 5, 383, 0, 0, 4633, 4634, 3, 688, 344, 0, 4634, 4635, 5, 99, 0, 0, 4635,
4636, 3, 690, 345, 0, 4636, 4718, 1, 0, 0, 0, 4637, 4638, 5, 9, 0, 0, 4638, 4639, 5,
348, 0, 0, 4639, 4640, 3, 642, 321, 0, 4640, 4641, 5, 395, 0, 0, 4641, 4658, 3, 642,
321, 0, 4642, 4643, 5, 383, 0, 0, 4643, 4644, 3, 688, 344, 0, 4644, 4645, 5, 99, 0,
0, 4645, 4646, 3, 690, 345, 0, 4646, 4659, 1, 0, 0, 0, 4647, 4648, 5, 4, 0, 0, 4648,
4652, 5, 341, 0, 0, 4649, 4650, 5, 101, 0, 0, 4650, 4652, 5, 139, 0, 0, 4651, 4647,
1, 0, 0, 0, 4651, 4649, 1, 0, 0, 0, 4652, 4656, 1, 0, 0, 0, 4653, 4654, 5, 246, 0, 0,
4654, 4657, 3, 686, 343, 0, 4655, 4657, 5, 362, 0, 0, 4656, 4653, 1, 0, 0, 0, 4656,
4655, 1, 0, 0, 0, 4657, 4659, 1, 0, 0, 0, 4658, 4642, 1, 0, 0, 0, 4658, 4651, 1, 0, 0,
0, 4659, 4718, 1, 0, 0, 0, 4660, 4661, 5, 101, 0, 0, 4661, 4662, 5, 348, 0, 0, 4662,
4663, 3, 642, 321, 0, 4663, 4664, 5, 395, 0, 0, 4664, 4665, 3, 642, 321, 0, 4665,
4718, 1, 0, 0, 0, 4666, 4667, 5, 58, 0, 0, 4667, 4668, 5, 246, 0, 0, 4668, 4669, 3,
642, 321, 0, 4669, 4670, 5, 395, 0, 0, 4670, 4671, 3, 686, 343, 0, 4671, 4672, 5,
387, 0, 0, 4672, 4673, 3, 694, 347, 0, 4673, 4718, 1, 0, 0, 0, 4674, 4675, 5, 9, 0,
0, 4675, 4676, 5, 246, 0, 0, 4676, 4677, 3, 642, 321, 0, 4677, 4678, 5, 395, 0, 0,
4678, 4686, 3, 686, 343, 0, 4679, 4680, 5, 304, 0, 0, 4680, 4687, 3, 694, 347, 0,
4681, 4682, 5, 363, 0, 0, 4682, 4687, 5, 294, 0, 0, 4683, 4684, 7, 48, 0, 0, 4684,
4685, 5, 348, 0, 0, 4685, 4687, 3, 642, 321, 0, 4686, 4679, 1, 0, 0, 0, 4686, 4681,
1, 0, 0, 0, 4686, 4683, 1, 0, 0, 0, 4687, 4718, 1, 0, 0, 0, 4688, 4689, 5, 101, 0, 0,
4689, 4690, 5, 246, 0, 0, 4690, 4691, 3, 642, 321, 0, 4691, 4692, 5, 395, 0, 0, 4692,
4693, 3, 686, 343, 0, 4693, 4718, 1, 0, 0, 0, 4694, 4695, 7, 49, 0, 0, 4695, 4696,
3, 656, 328, 0, 4696, 4697, 5, 200, 0, 0, 4697, 4698, 5, 426, 0, 0, 4698, 4699, 5,
154, 0, 0, 4699, 4703, 3, 642, 321, 0, 4700, 4701, 5, 341, 0, 0, 4701, 4704, 3, 686,
343, 0, 4702, 4704, 5, 362, 0, 0, 4703, 4700, 1, 0, 0, 0, 4703, 4702, 1, 0, 0, 0, 4704,
4708, 1, 0, 0, 0, 4705, 4706, 5, 387, 0, 0, 4706, 4707, 5, 229, 0, 0, 4707, 4709, 5,
431, 0, 0, 4708, 4705, 1, 0, 0, 0, 4708, 4709, 1, 0, 0, 0, 4709, 4718, 1, 0, 0, 0, 4710,
4711, 5, 101, 0, 0, 4711, 4712, 3, 656, 328, 0, 4712, 4713, 5, 200, 0, 0, 4713, 4714,
5, 426, 0, 0, 4714, 4715, 5, 154, 0, 0, 4715, 4716, 3, 642, 321, 0, 4716, 4718, 1,
0, 0, 0, 4717, 4552, 1, 0, 0, 0, 4717, 4569, 1, 0, 0, 0, 4717, 4599, 1, 0, 0, 0, 4717,
4608, 1, 0, 0, 0, 4717, 4613, 1, 0, 0, 0, 4717, 4627, 1, 0, 0, 0, 4717, 4637, 1, 0, 0,
0, 4717, 4660, 1, 0, 0, 0, 4717, 4666, 1, 0, 0, 0, 4717, 4674, 1, 0, 0, 0, 4717, 4688,
1, 0, 0, 0, 4717, 4694, 1, 0, 0, 0, 4717, 4710, 1, 0, 0, 0, 4718, 655, 1, 0, 0, 0, 4719,
4720, 7, 50, 0, 0, 4720, 657, 1, 0, 0, 0, 4721, 4722, 5, 259, 0, 0, 4722, 4723, 5, 405,
0, 0, 4723, 4729, 5, 431, 0, 0, 4724, 4725, 5, 83, 0, 0, 4725, 4726, 5, 246, 0, 0, 4726,
4727, 5, 405, 0, 0, 4727, 4729, 3, 686, 343, 0, 4728, 4721, 1, 0, 0, 0, 4728, 4724,
1, 0, 0, 0, 4729, 659, 1, 0, 0, 0, 4730, 4735, 3, 658, 329, 0, 4731, 4732, 5, 397, 0,
0, 4732, 4734, 3, 658, 329, 0, 4733, 4731, 1, 0, 0, 0, 4734, 4737, 1, 0, 0, 0, 4735,
4733, 1, 0, 0, 0, 4735, 4736, 1, 0, 0, 0, 4736, 661, 1, 0, 0, 0, 4737, 4735, 1, 0, 0,
0, 4738, 4742, 5, 259, 0, 0, 4739, 4740, 5, 83, 0, 0, 4740, 4742, 5, 246, 0, 0, 4741,
4738, 1, 0, 0, 0, 4741, 4739, 1, 0, 0, 0, 4742, 663, 1, 0, 0, 0, 4743, 4746, 5, 2, 0,
0, 4744, 4745, 5, 387, 0, 0, 4745, 4747, 5, 278, 0, 0, 4746, 4744, 1, 0, 0, 0, 4746,
4747, 1, 0, 0, 0, 4747, 665, 1, 0, 0, 0, 4748, 4749, 7, 51, 0, 0, 4749, 667, 1, 0, 0,
0, 4750, 4751, 7, 52, 0, 0, 4751, 669, 1, 0, 0, 0, 4752, 4753, 7, 53, 0, 0, 4753, 671,
1, 0, 0, 0, 4754, 4755, 7, 54, 0, 0, 4755, 673, 1, 0, 0, 0, 4756, 4757, 7, 55, 0, 0, 4757,
675, 1, 0, 0, 0, 4758, 4759, 7, 56, 0, 0, 4759, 677, 1, 0, 0, 0, 4760, 4761, 7, 57, 0,
0, 4761, 679, 1, 0, 0, 0, 4762, 4763, 7, 58, 0, 0, 4763, 681, 1, 0, 0, 0, 4764, 4765,
7, 59, 0, 0, 4765, 683, 1, 0, 0, 0, 4766, 4767, 7, 60, 0, 0, 4767, 685, 1, 0, 0, 0, 4768,
4773, 3, 642, 321, 0, 4769, 4770, 5, 395, 0, 0, 4770, 4772, 3, 642, 321, 0, 4771,
4769, 1, 0, 0, 0, 4772, 4775, 1, 0, 0, 0, 4773, 4771, 1, 0, 0, 0, 4773, 4774, 1, 0, 0,
0, 4774, 687, 1, 0, 0, 0, 4775, 4773, 1, 0, 0, 0, 4776, 4777, 3, 642, 321, 0, 4777,
4778, 5, 411, 0, 0, 4778, 4779, 7, 27, 0, 0, 4779, 689, 1, 0, 0, 0, 4780, 4785, 5, 176,
0, 0, 4781, 4782, 5, 211, 0, 0, 4782, 4783, 5, 341, 0, 0, 4783, 4785, 3, 686, 343,
0, 4784, 4780, 1, 0, 0, 0, 4784, 4781, 1, 0, 0, 0, 4785, 691, 1, 0, 0, 0, 4786, 4787,
5, 8, 0, 0, 4787, 4788, 5, 405, 0, 0, 4788, 4799, 5, 431, 0, 0, 4789, 4790, 5, 259,
0, 0, 4790, 4791, 5, 405, 0, 0, 4791, 4799, 5, 431, 0, 0, 4792, 4793, 5, 294, 0, 0,
4793, 4794, 5, 405, 0, 0, 4794, 4799, 5, 426, 0, 0, 4795, 4796, 5, 240, 0, 0, 4796,
4797, 5, 405, 0, 0, 4797, 4799, 3, 686, 343, 0, 4798, 4786, 1, 0, 0, 0, 4798, 4789,
1, 0, 0, 0, 4798, 4792, 1, 0, 0, 0, 4798, 4795, 1, 0, 0, 0, 4799, 693, 1, 0, 0, 0, 4800,
4805, 3, 692, 346, 0, 4801, 4802, 5, 397, 0, 0, 4802, 4804, 3, 692, 346, 0, 4803,
4801, 1, 0, 0, 0, 4804, 4807, 1, 0, 0, 0, 4805, 4803, 1, 0, 0, 0, 4805, 4806, 1, 0, 0,
0, 4806, 695, 1, 0, 0, 0, 4807, 4805, 1, 0, 0, 0, 621, 699, 706, 709, 715, 721, 728,
738, 741, 745, 760, 767, 773, 778, 783, 786, 810, 817, 820, 825, 830, 836, 840,
853, 857, 861, 866, 873, 877, 882, 889, 893, 898, 946, 953, 958, 981, 985, 989,
992, 996, 1001, 1007, 1011, 1017, 1019, 1030, 1034, 1041, 1049, 1052, 1057, 1061,
1064, 1074, 1082, 1086, 1089, 1093, 1097, 1100, 1105, 1111, 1116, 1121, 1125,
1136, 1138, 1142, 1152, 1156, 1162, 1165, 1172, 1177, 1185, 1190, 1194, 1202,
1207, 1213, 1219, 1222, 1225, 1228, 1237, 1245, 1250, 1258, 1265, 1268, 1271,
1273, 1284, 1286, 1289, 1292, 1295, 1298, 1301, 1303, 1315, 1321, 1329, 1331,
1341, 1374, 1379, 1383, 1387, 1394, 1401, 1407, 1411, 1414, 1421, 1444, 1449,
1453, 1461, 1470, 1477, 1483, 1490, 1493, 1499, 1506, 1514, 1523, 1532, 1539,
1559, 1566, 1568, 1575, 1585, 1593, 1597, 1601, 1614, 1623, 1639, 1643, 1648,
1653, 1656, 1659, 1662, 1665, 1668, 1673, 1682, 1686, 1693, 1696, 1699, 1702,
1714, 1720, 1746, 1754, 1758, 1761, 1764, 1767, 1770, 1773, 1776, 1779, 1788,
1798, 1801, 1821, 1827, 1833, 1836, 1838, 1845, 1852, 1865, 1870, 1879, 1887,
1895, 1908, 1921, 1937, 1941, 1956, 1962, 1965, 1968, 1971, 1974, 1978, 1993,
1996, 2007, 2021, 2055, 2063, 2068, 2076, 2081, 2086, 2093, 2101, 2109, 2117,
2122, 2134, 2138, 2146, 2155, 2158, 2162, 2169, 2175, 2179, 2185, 2189, 2201,
2210, 2221, 2225, 2232, 2244, 2254, 2257, 2264, 2270, 2274, 2277, 2280, 2286,
2290, 2294, 2299, 2303, 2307, 2311, 2319, 2323, 2327, 2331, 2335, 2343, 2347,
2351, 2359, 2364, 2369, 2373, 2377, 2384, 2393, 2401, 2413, 2431, 2434, 2440,
2466, 2469, 2475, 2483, 2491, 2504, 2511, 2514, 2517, 2520, 2523, 2526, 2529,
2532, 2535, 2538, 2541, 2546, 2549, 2552, 2555, 2558, 2561, 2564, 2567, 2570,
2573, 2576, 2578, 2584, 2588, 2591, 2594, 2597, 2600, 2603, 2610, 2614, 2617,
2620, 2623, 2626, 2629, 2636, 2639, 2647, 2651, 2658, 2660, 2663, 2668, 2671,
2675, 2680, 2686, 2694, 2702, 2712, 2715, 2719, 2723, 2728, 2735, 2739, 2741,
2745, 2752, 2757, 2770, 2778, 2797, 2807, 2820, 2830, 2834, 2838, 2844, 2851,
2858, 2867, 2874, 2894, 2897, 2911, 2926, 2930, 2950, 2962, 2968, 2971, 2974,
2980, 2986, 2993, 3001, 3007, 3011, 3016, 3019, 3023, 3030, 3035, 3040, 3043,
3045, 3053, 3061, 3065, 3069, 3073, 3090, 3107, 3114, 3123, 3128, 3131, 3134,
3138, 3153, 3167, 3170, 3181, 3185, 3188, 3191, 3195, 3200, 3203, 3206, 3209,
3212, 3215, 3221, 3224, 3227, 3230, 3233, 3236, 3239, 3242, 3245, 3248, 3252,
3254, 3260, 3265, 3268, 3271, 3274, 3277, 3283, 3286, 3289, 3292, 3295, 3298,
3301, 3304, 3307, 3310, 3314, 3316, 3318, 3323, 3328, 3332, 3336, 3341, 3346,
3355, 3365, 3373, 3385, 3388, 3394, 3401, 3408, 3415, 3422, 3431, 3435, 3442,
3447, 3451, 3455, 3458, 3461, 3472, 3476, 3478, 3481, 3494, 3497, 3500, 3512,
3515, 3522, 3531, 3536, 3538, 3540, 3557, 3560, 3568, 3571, 3575, 3578, 3581,
3584, 3587, 3599, 3607, 3614, 3617, 3624, 3627, 3632, 3639, 3647, 3653, 3658,
3662, 3667, 3674, 3688, 3691, 3695, 3706, 3716, 3719, 3726, 3735, 3738, 3744,
3747, 3754, 3759, 3762, 3775, 3781, 3783, 3791, 3794, 3804, 3809, 3811, 3823,
3829, 3831, 3838, 3845, 3859, 3865, 3868, 3871, 3874, 3883, 3890, 3896, 3905,
3909, 3917, 3927, 3937, 3942, 3946, 3952, 3957, 3967, 3971, 3974, 3979, 3982,
3986, 3991, 4002, 4004, 4013, 4036, 4046, 4049, 4056, 4059, 4069, 4076, 4079,
4081, 4092, 4102, 4104, 4113, 4118, 4127, 4140, 4144, 4156, 4160, 4169, 4188,
4206, 4218, 4233, 4237, 4253, 4260, 4274, 4279, 4289, 4291, 4299, 4307, 4315,
4323, 4331, 4339, 4350, 4354, 4362, 4378, 4382, 4387, 4400, 4409, 4411, 4420,
4425, 4431, 4438, 4443, 4452, 4460, 4468, 4476, 4486, 4491, 4550, 4556, 4565,
4567, 4583, 4591, 4595, 4597, 4603, 4608, 4625, 4651, 4656, 4658, 4686, 4703,
4708, 4717, 4728, 4735, 4741, 4746, 4773, 4784, 4798, 4805
];
HiveSqlParser.vocabulary = new antlr.Vocabulary(HiveSqlParser.literalNames, HiveSqlParser.symbolicNames, []);
HiveSqlParser.decisionsToDFA = HiveSqlParser._ATN.decisionToState.map((ds, index) => new antlr.DFA(ds, index));
export class ProgramContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
EOF() {
return this.getToken(HiveSqlParser.EOF, 0);
}
statement(i) {
if (i === undefined) {
return this.getRuleContexts(StatementContext);
}
return this.getRuleContext(i, StatementContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_program;
}
enterRule(listener) {
if (listener.enterProgram) {
listener.enterProgram(this);
}
}
exitRule(listener) {
if (listener.exitProgram) {
listener.exitProgram(this);
}
}
accept(visitor) {
if (visitor.visitProgram) {
return visitor.visitProgram(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class StatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
explainStatement() {
return this.getRuleContext(0, ExplainStatementContext);
}
execStatement() {
return this.getRuleContext(0, ExecStatementContext);
}
SEMICOLON() {
return this.getToken(HiveSqlParser.SEMICOLON, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_statement;
}
enterRule(listener) {
if (listener.enterStatement) {
listener.enterStatement(this);
}
}
exitRule(listener) {
if (listener.exitStatement) {
listener.exitStatement(this);
}
}
accept(visitor) {
if (visitor.visitStatement) {
return visitor.visitStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExplainStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_EXPLAIN() {
return this.getToken(HiveSqlParser.KW_EXPLAIN, 0);
}
execStatement() {
return this.getRuleContext(0, ExecStatementContext);
}
KW_REWRITE() {
return this.getToken(HiveSqlParser.KW_REWRITE, 0);
}
queryStatementExpression() {
return this.getRuleContext(0, QueryStatementExpressionContext);
}
explainOption(i) {
if (i === undefined) {
return this.getRuleContexts(ExplainOptionContext);
}
return this.getRuleContext(i, ExplainOptionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_explainStatement;
}
enterRule(listener) {
if (listener.enterExplainStatement) {
listener.enterExplainStatement(this);
}
}
exitRule(listener) {
if (listener.exitExplainStatement) {
listener.exitExplainStatement(this);
}
}
accept(visitor) {
if (visitor.visitExplainStatement) {
return visitor.visitExplainStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExplainOptionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_EXTENDED() {
return this.getToken(HiveSqlParser.KW_EXTENDED, 0);
}
KW_FORMATTED() {
return this.getToken(HiveSqlParser.KW_FORMATTED, 0);
}
KW_DEPENDENCY() {
return this.getToken(HiveSqlParser.KW_DEPENDENCY, 0);
}
KW_CBO() {
return this.getToken(HiveSqlParser.KW_CBO, 0);
}
KW_COST() {
return this.getToken(HiveSqlParser.KW_COST, 0);
}
KW_JOINCOST() {
return this.getToken(HiveSqlParser.KW_JOINCOST, 0);
}
KW_LOGICAL() {
return this.getToken(HiveSqlParser.KW_LOGICAL, 0);
}
KW_AUTHORIZATION() {
return this.getToken(HiveSqlParser.KW_AUTHORIZATION, 0);
}
KW_ANALYZE() {
return this.getToken(HiveSqlParser.KW_ANALYZE, 0);
}
KW_REOPTIMIZATION() {
return this.getToken(HiveSqlParser.KW_REOPTIMIZATION, 0);
}
KW_LOCKS() {
return this.getToken(HiveSqlParser.KW_LOCKS, 0);
}
KW_AST() {
return this.getToken(HiveSqlParser.KW_AST, 0);
}
KW_VECTORIZATION() {
return this.getToken(HiveSqlParser.KW_VECTORIZATION, 0);
}
KW_ONLY() {
return this.getToken(HiveSqlParser.KW_ONLY, 0);
}
vectorizationDetail() {
return this.getRuleContext(0, VectorizationDetailContext);
}
KW_DEBUG() {
return this.getToken(HiveSqlParser.KW_DEBUG, 0);
}
KW_DDL() {
return this.getToken(HiveSqlParser.KW_DDL, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_explainOption;
}
enterRule(listener) {
if (listener.enterExplainOption) {
listener.enterExplainOption(this);
}
}
exitRule(listener) {
if (listener.exitExplainOption) {
listener.exitExplainOption(this);
}
}
accept(visitor) {
if (visitor.visitExplainOption) {
return visitor.visitExplainOption(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class VectorizationDetailContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SUMMARY() {
return this.getToken(HiveSqlParser.KW_SUMMARY, 0);
}
KW_OPERATOR() {
return this.getToken(HiveSqlParser.KW_OPERATOR, 0);
}
KW_EXPRESSION() {
return this.getToken(HiveSqlParser.KW_EXPRESSION, 0);
}
KW_DETAIL() {
return this.getToken(HiveSqlParser.KW_DETAIL, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_vectorizationDetail;
}
enterRule(listener) {
if (listener.enterVectorizationDetail) {
listener.enterVectorizationDetail(this);
}
}
exitRule(listener) {
if (listener.exitVectorizationDetail) {
listener.exitVectorizationDetail(this);
}
}
accept(visitor) {
if (visitor.visitVectorizationDetail) {
return visitor.visitVectorizationDetail(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExecStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
queryStatementExpression() {
return this.getRuleContext(0, QueryStatementExpressionContext);
}
loadStatement() {
return this.getRuleContext(0, LoadStatementContext);
}
exportStatement() {
return this.getRuleContext(0, ExportStatementContext);
}
importStatement() {
return this.getRuleContext(0, ImportStatementContext);
}
replDumpStatement() {
return this.getRuleContext(0, ReplDumpStatementContext);
}
replLoadStatement() {
return this.getRuleContext(0, ReplLoadStatementContext);
}
KW_REPL() {
return this.getToken(HiveSqlParser.KW_REPL, 0);
}
KW_STATUS() {
return this.getToken(HiveSqlParser.KW_STATUS, 0);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
ddlStatement() {
return this.getRuleContext(0, DdlStatementContext);
}
KW_DELETE() {
return this.getToken(HiveSqlParser.KW_DELETE, 0);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
whereClause() {
return this.getRuleContext(0, WhereClauseContext);
}
KW_UPDATE() {
return this.getToken(HiveSqlParser.KW_UPDATE, 0);
}
setColumnsClause() {
return this.getRuleContext(0, SetColumnsClauseContext);
}
sqlTransactionStatement() {
return this.getRuleContext(0, SqlTransactionStatementContext);
}
KW_MERGE() {
return this.getToken(HiveSqlParser.KW_MERGE, 0);
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
KW_USING() {
return this.getToken(HiveSqlParser.KW_USING, 0);
}
joinSourcePart() {
return this.getRuleContext(0, JoinSourcePartContext);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
whenClauses() {
return this.getRuleContext(0, WhenClausesContext);
}
QUERY_HINT() {
return this.getToken(HiveSqlParser.QUERY_HINT, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
KW_PREPARE() {
return this.getToken(HiveSqlParser.KW_PREPARE, 0);
}
KW_EXECUTE() {
return this.getToken(HiveSqlParser.KW_EXECUTE, 0);
}
constantList() {
return this.getRuleContext(0, ConstantListContext);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
configPropertiesItem(i) {
if (i === undefined) {
return this.getRuleContexts(ConfigPropertiesItemContext);
}
return this.getRuleContext(i, ConfigPropertiesItemContext);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
COLON(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COLON);
}
else {
return this.getToken(HiveSqlParser.COLON, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_execStatement;
}
enterRule(listener) {
if (listener.enterExecStatement) {
listener.enterExecStatement(this);
}
}
exitRule(listener) {
if (listener.exitExecStatement) {
listener.exitExecStatement(this);
}
}
accept(visitor) {
if (visitor.visitExecStatement) {
return visitor.visitExecStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LoadStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LOAD() {
return this.getToken(HiveSqlParser.KW_LOAD, 0);
}
KW_DATA() {
return this.getToken(HiveSqlParser.KW_DATA, 0);
}
KW_INPATH() {
return this.getToken(HiveSqlParser.KW_INPATH, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
KW_LOCAL() {
return this.getToken(HiveSqlParser.KW_LOCAL, 0);
}
KW_OVERWRITE() {
return this.getToken(HiveSqlParser.KW_OVERWRITE, 0);
}
inputFileFormat() {
return this.getRuleContext(0, InputFileFormatContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_loadStatement;
}
enterRule(listener) {
if (listener.enterLoadStatement) {
listener.enterLoadStatement(this);
}
}
exitRule(listener) {
if (listener.exitLoadStatement) {
listener.exitLoadStatement(this);
}
}
accept(visitor) {
if (visitor.visitLoadStatement) {
return visitor.visitLoadStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ReplicationClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FOR() {
return this.getToken(HiveSqlParser.KW_FOR, 0);
}
KW_REPLICATION() {
return this.getToken(HiveSqlParser.KW_REPLICATION, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_METADATA() {
return this.getToken(HiveSqlParser.KW_METADATA, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_replicationClause;
}
enterRule(listener) {
if (listener.enterReplicationClause) {
listener.enterReplicationClause(this);
}
}
exitRule(listener) {
if (listener.exitReplicationClause) {
listener.exitReplicationClause(this);
}
}
accept(visitor) {
if (visitor.visitReplicationClause) {
return visitor.visitReplicationClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExportStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_EXPORT() {
return this.getToken(HiveSqlParser.KW_EXPORT, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
replicationClause() {
return this.getRuleContext(0, ReplicationClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_exportStatement;
}
enterRule(listener) {
if (listener.enterExportStatement) {
listener.enterExportStatement(this);
}
}
exitRule(listener) {
if (listener.exitExportStatement) {
listener.exitExportStatement(this);
}
}
accept(visitor) {
if (visitor.visitExportStatement) {
return visitor.visitExportStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ImportStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_IMPORT() {
return this.getToken(HiveSqlParser.KW_IMPORT, 0);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
locationPath() {
return this.getRuleContext(0, LocationPathContext);
}
KW_EXTERNAL() {
return this.getToken(HiveSqlParser.KW_EXTERNAL, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_importStatement;
}
enterRule(listener) {
if (listener.enterImportStatement) {
listener.enterImportStatement(this);
}
}
exitRule(listener) {
if (listener.exitImportStatement) {
listener.exitImportStatement(this);
}
}
accept(visitor) {
if (visitor.visitImportStatement) {
return visitor.visitImportStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ReplDumpStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_REPL() {
return this.getToken(HiveSqlParser.KW_REPL, 0);
}
KW_DUMP() {
return this.getToken(HiveSqlParser.KW_DUMP, 0);
}
replDbPolicy(i) {
if (i === undefined) {
return this.getRuleContexts(ReplDbPolicyContext);
}
return this.getRuleContext(i, ReplDbPolicyContext);
}
KW_REPLACE() {
return this.getToken(HiveSqlParser.KW_REPLACE, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_replDumpStatement;
}
enterRule(listener) {
if (listener.enterReplDumpStatement) {
listener.enterReplDumpStatement(this);
}
}
exitRule(listener) {
if (listener.exitReplDumpStatement) {
listener.exitReplDumpStatement(this);
}
}
accept(visitor) {
if (visitor.visitReplDumpStatement) {
return visitor.visitReplDumpStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ReplDbPolicyContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
DOT() {
return this.getToken(HiveSqlParser.DOT, 0);
}
replTableLevelPolicy() {
return this.getRuleContext(0, ReplTableLevelPolicyContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_replDbPolicy;
}
enterRule(listener) {
if (listener.enterReplDbPolicy) {
listener.enterReplDbPolicy(this);
}
}
exitRule(listener) {
if (listener.exitReplDbPolicy) {
listener.exitReplDbPolicy(this);
}
}
accept(visitor) {
if (visitor.visitReplDbPolicy) {
return visitor.visitReplDbPolicy(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ReplLoadStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_REPL() {
return this.getToken(HiveSqlParser.KW_REPL, 0);
}
KW_LOAD() {
return this.getToken(HiveSqlParser.KW_LOAD, 0);
}
replDbPolicy() {
return this.getRuleContext(0, ReplDbPolicyContext);
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_replLoadStatement;
}
enterRule(listener) {
if (listener.enterReplLoadStatement) {
listener.enterReplLoadStatement(this);
}
}
exitRule(listener) {
if (listener.exitReplLoadStatement) {
listener.exitReplLoadStatement(this);
}
}
accept(visitor) {
if (visitor.visitReplLoadStatement) {
return visitor.visitReplLoadStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ReplTableLevelPolicyContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
DOT() {
return this.getToken(HiveSqlParser.DOT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_replTableLevelPolicy;
}
enterRule(listener) {
if (listener.enterReplTableLevelPolicy) {
listener.enterReplTableLevelPolicy(this);
}
}
exitRule(listener) {
if (listener.exitReplTableLevelPolicy) {
listener.exitReplTableLevelPolicy(this);
}
}
accept(visitor) {
if (visitor.visitReplTableLevelPolicy) {
return visitor.visitReplTableLevelPolicy(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DdlStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
createDatabaseStatement() {
return this.getRuleContext(0, CreateDatabaseStatementContext);
}
switchDatabaseStatement() {
return this.getRuleContext(0, SwitchDatabaseStatementContext);
}
dropDatabaseStatement() {
return this.getRuleContext(0, DropDatabaseStatementContext);
}
createTableStatement() {
return this.getRuleContext(0, CreateTableStatementContext);
}
dropTableStatement() {
return this.getRuleContext(0, DropTableStatementContext);
}
truncateTableStatement() {
return this.getRuleContext(0, TruncateTableStatementContext);
}
alterStatement() {
return this.getRuleContext(0, AlterStatementContext);
}
descStatement() {
return this.getRuleContext(0, DescStatementContext);
}
showStatement() {
return this.getRuleContext(0, ShowStatementContext);
}
metastoreCheck() {
return this.getRuleContext(0, MetastoreCheckContext);
}
createViewStatement() {
return this.getRuleContext(0, CreateViewStatementContext);
}
createMaterializedViewStatement() {
return this.getRuleContext(0, CreateMaterializedViewStatementContext);
}
createScheduledQueryStatement() {
return this.getRuleContext(0, CreateScheduledQueryStatementContext);
}
alterScheduledQueryStatement() {
return this.getRuleContext(0, AlterScheduledQueryStatementContext);
}
dropScheduledQueryStatement() {
return this.getRuleContext(0, DropScheduledQueryStatementContext);
}
dropViewStatement() {
return this.getRuleContext(0, DropViewStatementContext);
}
dropMaterializedViewStatement() {
return this.getRuleContext(0, DropMaterializedViewStatementContext);
}
createFunctionStatement() {
return this.getRuleContext(0, CreateFunctionStatementContext);
}
createMacroStatement() {
return this.getRuleContext(0, CreateMacroStatementContext);
}
dropFunctionStatement() {
return this.getRuleContext(0, DropFunctionStatementContext);
}
reloadFunctionsStatement() {
return this.getRuleContext(0, ReloadFunctionsStatementContext);
}
dropMacroStatement() {
return this.getRuleContext(0, DropMacroStatementContext);
}
createIndexStatement() {
return this.getRuleContext(0, CreateIndexStatementContext);
}
dropIndexStatement() {
return this.getRuleContext(0, DropIndexStatementContext);
}
analyzeStatement() {
return this.getRuleContext(0, AnalyzeStatementContext);
}
lockStatement() {
return this.getRuleContext(0, LockStatementContext);
}
unlockStatement() {
return this.getRuleContext(0, UnlockStatementContext);
}
lockDatabase() {
return this.getRuleContext(0, LockDatabaseContext);
}
unlockDatabase() {
return this.getRuleContext(0, UnlockDatabaseContext);
}
createRoleStatement() {
return this.getRuleContext(0, CreateRoleStatementContext);
}
dropRoleStatement() {
return this.getRuleContext(0, DropRoleStatementContext);
}
grantPrivileges() {
return this.getRuleContext(0, GrantPrivilegesContext);
}
revokePrivileges() {
return this.getRuleContext(0, RevokePrivilegesContext);
}
showGrants() {
return this.getRuleContext(0, ShowGrantsContext);
}
showRoleGrants() {
return this.getRuleContext(0, ShowRoleGrantsContext);
}
showRolePrincipals() {
return this.getRuleContext(0, ShowRolePrincipalsContext);
}
showRoles() {
return this.getRuleContext(0, ShowRolesContext);
}
grantRole() {
return this.getRuleContext(0, GrantRoleContext);
}
revokeRole() {
return this.getRuleContext(0, RevokeRoleContext);
}
setRole() {
return this.getRuleContext(0, SetRoleContext);
}
showCurrentRole() {
return this.getRuleContext(0, ShowCurrentRoleContext);
}
KW_ABORT() {
return this.getToken(HiveSqlParser.KW_ABORT, 0);
}
KW_TRANSACTIONS() {
return this.getToken(HiveSqlParser.KW_TRANSACTIONS, 0);
}
KW_COMPACTIONS() {
return this.getToken(HiveSqlParser.KW_COMPACTIONS, 0);
}
Number(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.Number);
}
else {
return this.getToken(HiveSqlParser.Number, i);
}
}
KW_KILL() {
return this.getToken(HiveSqlParser.KW_KILL, 0);
}
KW_QUERY() {
return this.getToken(HiveSqlParser.KW_QUERY, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
resourcePlanDdlStatements() {
return this.getRuleContext(0, ResourcePlanDdlStatementsContext);
}
createDataConnectorStatement() {
return this.getRuleContext(0, CreateDataConnectorStatementContext);
}
dropDataConnectorStatement() {
return this.getRuleContext(0, DropDataConnectorStatementContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_ddlStatement;
}
enterRule(listener) {
if (listener.enterDdlStatement) {
listener.enterDdlStatement(this);
}
}
exitRule(listener) {
if (listener.exitDdlStatement) {
listener.exitDdlStatement(this);
}
}
accept(visitor) {
if (visitor.visitDdlStatement) {
return visitor.visitDdlStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class IfExistsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_IF() {
return this.getToken(HiveSqlParser.KW_IF, 0);
}
KW_EXISTS() {
return this.getToken(HiveSqlParser.KW_EXISTS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_ifExists;
}
enterRule(listener) {
if (listener.enterIfExists) {
listener.enterIfExists(this);
}
}
exitRule(listener) {
if (listener.exitIfExists) {
listener.exitIfExists(this);
}
}
accept(visitor) {
if (visitor.visitIfExists) {
return visitor.visitIfExists(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class IfNotExistsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_IF() {
return this.getToken(HiveSqlParser.KW_IF, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_EXISTS() {
return this.getToken(HiveSqlParser.KW_EXISTS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_ifNotExists;
}
enterRule(listener) {
if (listener.enterIfNotExists) {
listener.enterIfNotExists(this);
}
}
exitRule(listener) {
if (listener.exitIfNotExists) {
listener.exitIfNotExists(this);
}
}
accept(visitor) {
if (visitor.visitIfNotExists) {
return visitor.visitIfNotExists(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RestrictOrCascadeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_RESTRICT() {
return this.getToken(HiveSqlParser.KW_RESTRICT, 0);
}
KW_CASCADE() {
return this.getToken(HiveSqlParser.KW_CASCADE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_restrictOrCascade;
}
enterRule(listener) {
if (listener.enterRestrictOrCascade) {
listener.enterRestrictOrCascade(this);
}
}
exitRule(listener) {
if (listener.exitRestrictOrCascade) {
listener.exitRestrictOrCascade(this);
}
}
accept(visitor) {
if (visitor.visitRestrictOrCascade) {
return visitor.visitRestrictOrCascade(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RewriteEnabledContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
enable() {
return this.getRuleContext(0, EnableContext);
}
KW_REWRITE() {
return this.getToken(HiveSqlParser.KW_REWRITE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_rewriteEnabled;
}
enterRule(listener) {
if (listener.enterRewriteEnabled) {
listener.enterRewriteEnabled(this);
}
}
exitRule(listener) {
if (listener.exitRewriteEnabled) {
listener.exitRewriteEnabled(this);
}
}
accept(visitor) {
if (visitor.visitRewriteEnabled) {
return visitor.visitRewriteEnabled(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RewriteDisabledContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
disable() {
return this.getRuleContext(0, DisableContext);
}
KW_REWRITE() {
return this.getToken(HiveSqlParser.KW_REWRITE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_rewriteDisabled;
}
enterRule(listener) {
if (listener.enterRewriteDisabled) {
listener.enterRewriteDisabled(this);
}
}
exitRule(listener) {
if (listener.exitRewriteDisabled) {
listener.exitRewriteDisabled(this);
}
}
accept(visitor) {
if (visitor.visitRewriteDisabled) {
return visitor.visitRewriteDisabled(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class StoredAsDirsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_STORED() {
return this.getToken(HiveSqlParser.KW_STORED, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
KW_DIRECTORIES() {
return this.getToken(HiveSqlParser.KW_DIRECTORIES, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_storedAsDirs;
}
enterRule(listener) {
if (listener.enterStoredAsDirs) {
listener.enterStoredAsDirs(this);
}
}
exitRule(listener) {
if (listener.exitStoredAsDirs) {
listener.exitStoredAsDirs(this);
}
}
accept(visitor) {
if (visitor.visitStoredAsDirs) {
return visitor.visitStoredAsDirs(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateDatabaseStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
dbSchemaNameCreate() {
return this.getRuleContext(0, DbSchemaNameCreateContext);
}
KW_REMOTE() {
return this.getToken(HiveSqlParser.KW_REMOTE, 0);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
databaseComment() {
return this.getRuleContext(0, DatabaseCommentContext);
}
locationPath() {
return this.getRuleContext(0, LocationPathContext);
}
KW_MANAGEDLOCATION() {
return this.getToken(HiveSqlParser.KW_MANAGEDLOCATION, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_DBPROPERTIES() {
return this.getToken(HiveSqlParser.KW_DBPROPERTIES, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
dbConnectorName() {
return this.getRuleContext(0, DbConnectorNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createDatabaseStatement;
}
enterRule(listener) {
if (listener.enterCreateDatabaseStatement) {
listener.enterCreateDatabaseStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateDatabaseStatement) {
listener.exitCreateDatabaseStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateDatabaseStatement) {
return visitor.visitCreateDatabaseStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DbConnectorNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_USING() {
return this.getToken(HiveSqlParser.KW_USING, 0);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dbConnectorName;
}
enterRule(listener) {
if (listener.enterDbConnectorName) {
listener.enterDbConnectorName(this);
}
}
exitRule(listener) {
if (listener.exitDbConnectorName) {
listener.exitDbConnectorName(this);
}
}
accept(visitor) {
if (visitor.visitDbConnectorName) {
return visitor.visitDbConnectorName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SwitchDatabaseStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_USE() {
return this.getToken(HiveSqlParser.KW_USE, 0);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_switchDatabaseStatement;
}
enterRule(listener) {
if (listener.enterSwitchDatabaseStatement) {
listener.enterSwitchDatabaseStatement(this);
}
}
exitRule(listener) {
if (listener.exitSwitchDatabaseStatement) {
listener.exitSwitchDatabaseStatement(this);
}
}
accept(visitor) {
if (visitor.visitSwitchDatabaseStatement) {
return visitor.visitSwitchDatabaseStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropDatabaseStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
restrictOrCascade() {
return this.getRuleContext(0, RestrictOrCascadeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropDatabaseStatement;
}
enterRule(listener) {
if (listener.enterDropDatabaseStatement) {
listener.enterDropDatabaseStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropDatabaseStatement) {
listener.exitDropDatabaseStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropDatabaseStatement) {
return visitor.visitDropDatabaseStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DatabaseCommentContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_databaseComment;
}
enterRule(listener) {
if (listener.enterDatabaseComment) {
listener.enterDatabaseComment(this);
}
}
exitRule(listener) {
if (listener.exitDatabaseComment) {
listener.exitDatabaseComment(this);
}
}
accept(visitor) {
if (visitor.visitDatabaseComment) {
return visitor.visitDatabaseComment(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TruncateTableStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_TRUNCATE() {
return this.getToken(HiveSqlParser.KW_TRUNCATE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
KW_COLUMNS() {
return this.getToken(HiveSqlParser.KW_COLUMNS, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_FORCE() {
return this.getToken(HiveSqlParser.KW_FORCE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_truncateTableStatement;
}
enterRule(listener) {
if (listener.enterTruncateTableStatement) {
listener.enterTruncateTableStatement(this);
}
}
exitRule(listener) {
if (listener.exitTruncateTableStatement) {
listener.exitTruncateTableStatement(this);
}
}
accept(visitor) {
if (visitor.visitTruncateTableStatement) {
return visitor.visitTruncateTableStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropTableStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
KW_PURGE() {
return this.getToken(HiveSqlParser.KW_PURGE, 0);
}
replicationClause() {
return this.getRuleContext(0, ReplicationClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropTableStatement;
}
enterRule(listener) {
if (listener.enterDropTableStatement) {
listener.enterDropTableStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropTableStatement) {
listener.exitDropTableStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropTableStatement) {
return visitor.visitDropTableStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class InputFileFormatContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_INPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_INPUTFORMAT, 0);
}
KW_SERDE() {
return this.getToken(HiveSqlParser.KW_SERDE, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_inputFileFormat;
}
enterRule(listener) {
if (listener.enterInputFileFormat) {
listener.enterInputFileFormat(this);
}
}
exitRule(listener) {
if (listener.exitInputFileFormat) {
listener.exitInputFileFormat(this);
}
}
accept(visitor) {
if (visitor.visitInputFileFormat) {
return visitor.visitInputFileFormat(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TabTypeExprContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
KW_ELEM_TYPE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_ELEM_TYPE);
}
else {
return this.getToken(HiveSqlParser.KW_ELEM_TYPE, i);
}
}
KW_KEY_TYPE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_KEY_TYPE);
}
else {
return this.getToken(HiveSqlParser.KW_KEY_TYPE, i);
}
}
KW_VALUE_TYPE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_VALUE_TYPE);
}
else {
return this.getToken(HiveSqlParser.KW_VALUE_TYPE, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_tabTypeExpr;
}
enterRule(listener) {
if (listener.enterTabTypeExpr) {
listener.enterTabTypeExpr(this);
}
}
exitRule(listener) {
if (listener.exitTabTypeExpr) {
listener.exitTabTypeExpr(this);
}
}
accept(visitor) {
if (visitor.visitTabTypeExpr) {
return visitor.visitTabTypeExpr(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartTypeExprContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tabTypeExpr() {
return this.getRuleContext(0, TabTypeExprContext);
}
partitionSpec() {
return this.getRuleContext(0, PartitionSpecContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_partTypeExpr;
}
enterRule(listener) {
if (listener.enterPartTypeExpr) {
listener.enterPartTypeExpr(this);
}
}
exitRule(listener) {
if (listener.exitPartTypeExpr) {
listener.exitPartTypeExpr(this);
}
}
accept(visitor) {
if (visitor.visitPartTypeExpr) {
return visitor.visitPartTypeExpr(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TabPartColTypeExprContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableOrView() {
return this.getRuleContext(0, TableOrViewContext);
}
partitionSpec() {
return this.getRuleContext(0, PartitionSpecContext);
}
extColumnName() {
return this.getRuleContext(0, ExtColumnNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tabPartColTypeExpr;
}
enterRule(listener) {
if (listener.enterTabPartColTypeExpr) {
listener.enterTabPartColTypeExpr(this);
}
}
exitRule(listener) {
if (listener.exitTabPartColTypeExpr) {
listener.exitTabPartColTypeExpr(this);
}
}
accept(visitor) {
if (visitor.visitTabPartColTypeExpr) {
return visitor.visitTabPartColTypeExpr(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DescStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DESCRIBE() {
return this.getToken(HiveSqlParser.KW_DESCRIBE, 0);
}
KW_DESC() {
return this.getToken(HiveSqlParser.KW_DESC, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
KW_DATACONNECTOR() {
return this.getToken(HiveSqlParser.KW_DATACONNECTOR, 0);
}
KW_FUNCTION() {
return this.getToken(HiveSqlParser.KW_FUNCTION, 0);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
functionNameForDDL() {
return this.getRuleContext(0, FunctionNameForDDLContext);
}
tabPartColTypeExpr() {
return this.getRuleContext(0, TabPartColTypeExprContext);
}
KW_EXTENDED() {
return this.getToken(HiveSqlParser.KW_EXTENDED, 0);
}
KW_FORMATTED() {
return this.getToken(HiveSqlParser.KW_FORMATTED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_descStatement;
}
enterRule(listener) {
if (listener.enterDescStatement) {
listener.enterDescStatement(this);
}
}
exitRule(listener) {
if (listener.exitDescStatement) {
listener.exitDescStatement(this);
}
}
accept(visitor) {
if (visitor.visitDescStatement) {
return visitor.visitDescStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AnalyzeStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ANALYZE() {
return this.getToken(HiveSqlParser.KW_ANALYZE, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
KW_COMPUTE() {
return this.getToken(HiveSqlParser.KW_COMPUTE, 0);
}
KW_STATISTICS() {
return this.getToken(HiveSqlParser.KW_STATISTICS, 0);
}
KW_CACHE() {
return this.getToken(HiveSqlParser.KW_CACHE, 0);
}
KW_METADATA() {
return this.getToken(HiveSqlParser.KW_METADATA, 0);
}
KW_FOR() {
return this.getToken(HiveSqlParser.KW_FOR, 0);
}
KW_COLUMNS() {
return this.getToken(HiveSqlParser.KW_COLUMNS, 0);
}
KW_NOSCAN() {
return this.getToken(HiveSqlParser.KW_NOSCAN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_analyzeStatement;
}
enterRule(listener) {
if (listener.enterAnalyzeStatement) {
listener.enterAnalyzeStatement(this);
}
}
exitRule(listener) {
if (listener.exitAnalyzeStatement) {
listener.exitAnalyzeStatement(this);
}
}
accept(visitor) {
if (visitor.visitAnalyzeStatement) {
return visitor.visitAnalyzeStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class From_inContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
KW_IN() {
return this.getToken(HiveSqlParser.KW_IN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_from_in;
}
enterRule(listener) {
if (listener.enterFrom_in) {
listener.enterFrom_in(this);
}
}
exitRule(listener) {
if (listener.exitFrom_in) {
listener.exitFrom_in(this);
}
}
accept(visitor) {
if (visitor.visitFrom_in) {
return visitor.visitFrom_in(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Db_schemaContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DATABASE() {
return this.getToken(HiveSqlParser.KW_DATABASE, 0);
}
KW_SCHEMA() {
return this.getToken(HiveSqlParser.KW_SCHEMA, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_db_schema;
}
enterRule(listener) {
if (listener.enterDb_schema) {
listener.enterDb_schema(this);
}
}
exitRule(listener) {
if (listener.exitDb_schema) {
listener.exitDb_schema(this);
}
}
accept(visitor) {
if (visitor.visitDb_schema) {
return visitor.visitDb_schema(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_DATABASES() {
return this.getToken(HiveSqlParser.KW_DATABASES, 0);
}
KW_SCHEMAS() {
return this.getToken(HiveSqlParser.KW_SCHEMAS, 0);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
showStmtIdentifier() {
return this.getRuleContext(0, ShowStmtIdentifierContext);
}
KW_TABLES() {
return this.getToken(HiveSqlParser.KW_TABLES, 0);
}
from_in(i) {
if (i === undefined) {
return this.getRuleContexts(From_inContext);
}
return this.getRuleContext(i, From_inContext);
}
KW_EXTENDED() {
return this.getToken(HiveSqlParser.KW_EXTENDED, 0);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
showTablesFilterExpr() {
return this.getRuleContext(0, ShowTablesFilterExprContext);
}
KW_VIEWS() {
return this.getToken(HiveSqlParser.KW_VIEWS, 0);
}
KW_MATERIALIZED() {
return this.getToken(HiveSqlParser.KW_MATERIALIZED, 0);
}
KW_COLUMNS() {
return this.getToken(HiveSqlParser.KW_COLUMNS, 0);
}
tableOrView() {
return this.getRuleContext(0, TableOrViewContext);
}
KW_SORTED() {
return this.getToken(HiveSqlParser.KW_SORTED, 0);
}
KW_FUNCTIONS() {
return this.getToken(HiveSqlParser.KW_FUNCTIONS, 0);
}
functionNameForDDL() {
return this.getRuleContext(0, FunctionNameForDDLContext);
}
KW_PARTITIONS() {
return this.getToken(HiveSqlParser.KW_PARTITIONS, 0);
}
partitionSpec() {
return this.getRuleContext(0, PartitionSpecContext);
}
whereClause() {
return this.getRuleContext(0, WhereClauseContext);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
limitClause() {
return this.getRuleContext(0, LimitClauseContext);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
KW_TBLPROPERTIES() {
return this.getToken(HiveSqlParser.KW_TBLPROPERTIES, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_LOCKS() {
return this.getToken(HiveSqlParser.KW_LOCKS, 0);
}
partTypeExpr() {
return this.getRuleContext(0, PartTypeExprContext);
}
KW_COMPACTIONS() {
return this.getToken(HiveSqlParser.KW_COMPACTIONS, 0);
}
KW_COMPACT_ID() {
return this.getToken(HiveSqlParser.KW_COMPACT_ID, 0);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
compactionPool() {
return this.getRuleContext(0, CompactionPoolContext);
}
compactionType() {
return this.getRuleContext(0, CompactionTypeContext);
}
compactionStatus() {
return this.getRuleContext(0, CompactionStatusContext);
}
KW_TRANSACTIONS() {
return this.getToken(HiveSqlParser.KW_TRANSACTIONS, 0);
}
KW_CONF() {
return this.getToken(HiveSqlParser.KW_CONF, 0);
}
KW_RESOURCE() {
return this.getToken(HiveSqlParser.KW_RESOURCE, 0);
}
KW_PLAN() {
return this.getToken(HiveSqlParser.KW_PLAN, 0);
}
KW_PLANS() {
return this.getToken(HiveSqlParser.KW_PLANS, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_DATACONNECTORS() {
return this.getToken(HiveSqlParser.KW_DATACONNECTORS, 0);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
KW_INDEX() {
return this.getToken(HiveSqlParser.KW_INDEX, 0);
}
KW_INDEXES() {
return this.getToken(HiveSqlParser.KW_INDEXES, 0);
}
KW_FORMATTED() {
return this.getToken(HiveSqlParser.KW_FORMATTED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_showStatement;
}
enterRule(listener) {
if (listener.enterShowStatement) {
listener.enterShowStatement(this);
}
}
exitRule(listener) {
if (listener.exitShowStatement) {
listener.exitShowStatement(this);
}
}
accept(visitor) {
if (visitor.visitShowStatement) {
return visitor.visitShowStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowTablesFilterExprContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WHERE() {
return this.getToken(HiveSqlParser.KW_WHERE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
showStmtIdentifier() {
return this.getRuleContext(0, ShowStmtIdentifierContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_showTablesFilterExpr;
}
enterRule(listener) {
if (listener.enterShowTablesFilterExpr) {
listener.enterShowTablesFilterExpr(this);
}
}
exitRule(listener) {
if (listener.exitShowTablesFilterExpr) {
listener.exitShowTablesFilterExpr(this);
}
}
accept(visitor) {
if (visitor.visitShowTablesFilterExpr) {
return visitor.visitShowTablesFilterExpr(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LockStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LOCK() {
return this.getToken(HiveSqlParser.KW_LOCK, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
lockMode() {
return this.getRuleContext(0, LockModeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_lockStatement;
}
enterRule(listener) {
if (listener.enterLockStatement) {
listener.enterLockStatement(this);
}
}
exitRule(listener) {
if (listener.exitLockStatement) {
listener.exitLockStatement(this);
}
}
accept(visitor) {
if (visitor.visitLockStatement) {
return visitor.visitLockStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LockDatabaseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LOCK() {
return this.getToken(HiveSqlParser.KW_LOCK, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
lockMode() {
return this.getRuleContext(0, LockModeContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_lockDatabase;
}
enterRule(listener) {
if (listener.enterLockDatabase) {
listener.enterLockDatabase(this);
}
}
exitRule(listener) {
if (listener.exitLockDatabase) {
listener.exitLockDatabase(this);
}
}
accept(visitor) {
if (visitor.visitLockDatabase) {
return visitor.visitLockDatabase(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LockModeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHARED() {
return this.getToken(HiveSqlParser.KW_SHARED, 0);
}
KW_EXCLUSIVE() {
return this.getToken(HiveSqlParser.KW_EXCLUSIVE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_lockMode;
}
enterRule(listener) {
if (listener.enterLockMode) {
listener.enterLockMode(this);
}
}
exitRule(listener) {
if (listener.exitLockMode) {
listener.exitLockMode(this);
}
}
accept(visitor) {
if (visitor.visitLockMode) {
return visitor.visitLockMode(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class UnlockStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_UNLOCK() {
return this.getToken(HiveSqlParser.KW_UNLOCK, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_unlockStatement;
}
enterRule(listener) {
if (listener.enterUnlockStatement) {
listener.enterUnlockStatement(this);
}
}
exitRule(listener) {
if (listener.exitUnlockStatement) {
listener.exitUnlockStatement(this);
}
}
accept(visitor) {
if (visitor.visitUnlockStatement) {
return visitor.visitUnlockStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class UnlockDatabaseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_UNLOCK() {
return this.getToken(HiveSqlParser.KW_UNLOCK, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_unlockDatabase;
}
enterRule(listener) {
if (listener.enterUnlockDatabase) {
listener.enterUnlockDatabase(this);
}
}
exitRule(listener) {
if (listener.exitUnlockDatabase) {
listener.exitUnlockDatabase(this);
}
}
accept(visitor) {
if (visitor.visitUnlockDatabase) {
return visitor.visitUnlockDatabase(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateRoleStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_createRoleStatement;
}
enterRule(listener) {
if (listener.enterCreateRoleStatement) {
listener.enterCreateRoleStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateRoleStatement) {
listener.exitCreateRoleStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateRoleStatement) {
return visitor.visitCreateRoleStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropRoleStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropRoleStatement;
}
enterRule(listener) {
if (listener.enterDropRoleStatement) {
listener.enterDropRoleStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropRoleStatement) {
listener.exitDropRoleStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropRoleStatement) {
return visitor.visitDropRoleStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class GrantPrivilegesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_GRANT() {
return this.getToken(HiveSqlParser.KW_GRANT, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
principalSpecification() {
return this.getRuleContext(0, PrincipalSpecificationContext);
}
privilegeList() {
return this.getRuleContext(0, PrivilegeListContext);
}
privilegeObject() {
return this.getRuleContext(0, PrivilegeObjectContext);
}
withGrantOption() {
return this.getRuleContext(0, WithGrantOptionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_grantPrivileges;
}
enterRule(listener) {
if (listener.enterGrantPrivileges) {
listener.enterGrantPrivileges(this);
}
}
exitRule(listener) {
if (listener.exitGrantPrivileges) {
listener.exitGrantPrivileges(this);
}
}
accept(visitor) {
if (visitor.visitGrantPrivileges) {
return visitor.visitGrantPrivileges(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RevokePrivilegesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_REVOKE() {
return this.getToken(HiveSqlParser.KW_REVOKE, 0);
}
privilegeList() {
return this.getRuleContext(0, PrivilegeListContext);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
principalSpecification() {
return this.getRuleContext(0, PrincipalSpecificationContext);
}
grantOptionFor() {
return this.getRuleContext(0, GrantOptionForContext);
}
privilegeObject() {
return this.getRuleContext(0, PrivilegeObjectContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_revokePrivileges;
}
enterRule(listener) {
if (listener.enterRevokePrivileges) {
listener.enterRevokePrivileges(this);
}
}
exitRule(listener) {
if (listener.exitRevokePrivileges) {
listener.exitRevokePrivileges(this);
}
}
accept(visitor) {
if (visitor.visitRevokePrivileges) {
return visitor.visitRevokePrivileges(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class GrantRoleContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_GRANT() {
return this.getToken(HiveSqlParser.KW_GRANT, 0);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
principalSpecification() {
return this.getRuleContext(0, PrincipalSpecificationContext);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
withAdminOption() {
return this.getRuleContext(0, WithAdminOptionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_grantRole;
}
enterRule(listener) {
if (listener.enterGrantRole) {
listener.enterGrantRole(this);
}
}
exitRule(listener) {
if (listener.exitGrantRole) {
listener.exitGrantRole(this);
}
}
accept(visitor) {
if (visitor.visitGrantRole) {
return visitor.visitGrantRole(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RevokeRoleContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_REVOKE() {
return this.getToken(HiveSqlParser.KW_REVOKE, 0);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
principalSpecification() {
return this.getRuleContext(0, PrincipalSpecificationContext);
}
adminOptionFor() {
return this.getRuleContext(0, AdminOptionForContext);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_revokeRole;
}
enterRule(listener) {
if (listener.enterRevokeRole) {
listener.enterRevokeRole(this);
}
}
exitRule(listener) {
if (listener.exitRevokeRole) {
listener.exitRevokeRole(this);
}
}
accept(visitor) {
if (visitor.visitRevokeRole) {
return visitor.visitRevokeRole(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowRoleGrantsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
KW_GRANT() {
return this.getToken(HiveSqlParser.KW_GRANT, 0);
}
principalName() {
return this.getRuleContext(0, PrincipalNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_showRoleGrants;
}
enterRule(listener) {
if (listener.enterShowRoleGrants) {
listener.enterShowRoleGrants(this);
}
}
exitRule(listener) {
if (listener.exitShowRoleGrants) {
listener.exitShowRoleGrants(this);
}
}
accept(visitor) {
if (visitor.visitShowRoleGrants) {
return visitor.visitShowRoleGrants(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowRolesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_ROLES() {
return this.getToken(HiveSqlParser.KW_ROLES, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_showRoles;
}
enterRule(listener) {
if (listener.enterShowRoles) {
listener.enterShowRoles(this);
}
}
exitRule(listener) {
if (listener.exitShowRoles) {
listener.exitShowRoles(this);
}
}
accept(visitor) {
if (visitor.visitShowRoles) {
return visitor.visitShowRoles(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowCurrentRoleContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_CURRENT() {
return this.getToken(HiveSqlParser.KW_CURRENT, 0);
}
KW_ROLES() {
return this.getToken(HiveSqlParser.KW_ROLES, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_showCurrentRole;
}
enterRule(listener) {
if (listener.enterShowCurrentRole) {
listener.enterShowCurrentRole(this);
}
}
exitRule(listener) {
if (listener.exitShowCurrentRole) {
listener.exitShowCurrentRole(this);
}
}
accept(visitor) {
if (visitor.visitShowCurrentRole) {
return visitor.visitShowCurrentRole(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SetRoleContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
KW_NONE() {
return this.getToken(HiveSqlParser.KW_NONE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_setRole;
}
enterRule(listener) {
if (listener.enterSetRole) {
listener.enterSetRole(this);
}
}
exitRule(listener) {
if (listener.exitSetRole) {
listener.exitSetRole(this);
}
}
accept(visitor) {
if (visitor.visitSetRole) {
return visitor.visitSetRole(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowGrantsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_GRANT() {
return this.getToken(HiveSqlParser.KW_GRANT, 0);
}
principalName() {
return this.getRuleContext(0, PrincipalNameContext);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
privilegeIncludeColObject() {
return this.getRuleContext(0, PrivilegeIncludeColObjectContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_showGrants;
}
enterRule(listener) {
if (listener.enterShowGrants) {
listener.enterShowGrants(this);
}
}
exitRule(listener) {
if (listener.exitShowGrants) {
listener.exitShowGrants(this);
}
}
accept(visitor) {
if (visitor.visitShowGrants) {
return visitor.visitShowGrants(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowRolePrincipalsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_PRINCIPALS() {
return this.getToken(HiveSqlParser.KW_PRINCIPALS, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_showRolePrincipals;
}
enterRule(listener) {
if (listener.enterShowRolePrincipals) {
listener.enterShowRolePrincipals(this);
}
}
exitRule(listener) {
if (listener.exitShowRolePrincipals) {
listener.exitShowRolePrincipals(this);
}
}
accept(visitor) {
if (visitor.visitShowRolePrincipals) {
return visitor.visitShowRolePrincipals(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivilegeIncludeColObjectContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
privObjectCols() {
return this.getRuleContext(0, PrivObjectColsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_privilegeIncludeColObject;
}
enterRule(listener) {
if (listener.enterPrivilegeIncludeColObject) {
listener.enterPrivilegeIncludeColObject(this);
}
}
exitRule(listener) {
if (listener.exitPrivilegeIncludeColObject) {
listener.exitPrivilegeIncludeColObject(this);
}
}
accept(visitor) {
if (visitor.visitPrivilegeIncludeColObject) {
return visitor.visitPrivilegeIncludeColObject(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivilegeObjectContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
privObject() {
return this.getRuleContext(0, PrivObjectContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_privilegeObject;
}
enterRule(listener) {
if (listener.enterPrivilegeObject) {
listener.enterPrivilegeObject(this);
}
}
exitRule(listener) {
if (listener.exitPrivilegeObject) {
listener.exitPrivilegeObject(this);
}
}
accept(visitor) {
if (visitor.visitPrivilegeObject) {
return visitor.visitPrivilegeObject(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivObjectContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
KW_URI() {
return this.getToken(HiveSqlParser.KW_URI, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_SERVER() {
return this.getToken(HiveSqlParser.KW_SERVER, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_privObject;
}
enterRule(listener) {
if (listener.enterPrivObject) {
listener.enterPrivObject(this);
}
}
exitRule(listener) {
if (listener.exitPrivObject) {
listener.exitPrivObject(this);
}
}
accept(visitor) {
if (visitor.visitPrivObject) {
return visitor.visitPrivObject(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivObjectColsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
partitionSpec() {
return this.getRuleContext(0, PartitionSpecContext);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
KW_URI() {
return this.getToken(HiveSqlParser.KW_URI, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_SERVER() {
return this.getToken(HiveSqlParser.KW_SERVER, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_privObjectCols;
}
enterRule(listener) {
if (listener.enterPrivObjectCols) {
listener.enterPrivObjectCols(this);
}
}
exitRule(listener) {
if (listener.exitPrivObjectCols) {
listener.exitPrivObjectCols(this);
}
}
accept(visitor) {
if (visitor.visitPrivObjectCols) {
return visitor.visitPrivObjectCols(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivilegeListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
privilegeDef(i) {
if (i === undefined) {
return this.getRuleContexts(PrivilegeDefContext);
}
return this.getRuleContext(i, PrivilegeDefContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_privilegeList;
}
enterRule(listener) {
if (listener.enterPrivilegeList) {
listener.enterPrivilegeList(this);
}
}
exitRule(listener) {
if (listener.exitPrivilegeList) {
listener.exitPrivilegeList(this);
}
}
accept(visitor) {
if (visitor.visitPrivilegeList) {
return visitor.visitPrivilegeList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivilegeDefContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
privilegeType() {
return this.getRuleContext(0, PrivilegeTypeContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_privilegeDef;
}
enterRule(listener) {
if (listener.enterPrivilegeDef) {
listener.enterPrivilegeDef(this);
}
}
exitRule(listener) {
if (listener.exitPrivilegeDef) {
listener.exitPrivilegeDef(this);
}
}
accept(visitor) {
if (visitor.visitPrivilegeDef) {
return visitor.visitPrivilegeDef(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrivilegeTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
KW_ALTER() {
return this.getToken(HiveSqlParser.KW_ALTER, 0);
}
KW_UPDATE() {
return this.getToken(HiveSqlParser.KW_UPDATE, 0);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_INDEX() {
return this.getToken(HiveSqlParser.KW_INDEX, 0);
}
KW_LOCK() {
return this.getToken(HiveSqlParser.KW_LOCK, 0);
}
KW_SELECT() {
return this.getToken(HiveSqlParser.KW_SELECT, 0);
}
KW_SHOW_DATABASE() {
return this.getToken(HiveSqlParser.KW_SHOW_DATABASE, 0);
}
KW_INSERT() {
return this.getToken(HiveSqlParser.KW_INSERT, 0);
}
KW_DELETE() {
return this.getToken(HiveSqlParser.KW_DELETE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_privilegeType;
}
enterRule(listener) {
if (listener.enterPrivilegeType) {
listener.enterPrivilegeType(this);
}
}
exitRule(listener) {
if (listener.exitPrivilegeType) {
listener.exitPrivilegeType(this);
}
}
accept(visitor) {
if (visitor.visitPrivilegeType) {
return visitor.visitPrivilegeType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrincipalSpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
principalName(i) {
if (i === undefined) {
return this.getRuleContexts(PrincipalNameContext);
}
return this.getRuleContext(i, PrincipalNameContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_principalSpecification;
}
enterRule(listener) {
if (listener.enterPrincipalSpecification) {
listener.enterPrincipalSpecification(this);
}
}
exitRule(listener) {
if (listener.exitPrincipalSpecification) {
listener.exitPrincipalSpecification(this);
}
}
accept(visitor) {
if (visitor.visitPrincipalSpecification) {
return visitor.visitPrincipalSpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrincipalNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_USER() {
return this.getToken(HiveSqlParser.KW_USER, 0);
}
principalIdentifier() {
return this.getRuleContext(0, PrincipalIdentifierContext);
}
KW_GROUP() {
return this.getToken(HiveSqlParser.KW_GROUP, 0);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_principalName;
}
enterRule(listener) {
if (listener.enterPrincipalName) {
listener.enterPrincipalName(this);
}
}
exitRule(listener) {
if (listener.exitPrincipalName) {
listener.exitPrincipalName(this);
}
}
accept(visitor) {
if (visitor.visitPrincipalName) {
return visitor.visitPrincipalName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrincipalAlterNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_USER() {
return this.getToken(HiveSqlParser.KW_USER, 0);
}
principalIdentifier() {
return this.getRuleContext(0, PrincipalIdentifierContext);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_principalAlterName;
}
enterRule(listener) {
if (listener.enterPrincipalAlterName) {
listener.enterPrincipalAlterName(this);
}
}
exitRule(listener) {
if (listener.exitPrincipalAlterName) {
listener.exitPrincipalAlterName(this);
}
}
accept(visitor) {
if (visitor.visitPrincipalAlterName) {
return visitor.visitPrincipalAlterName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WithGrantOptionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_GRANT() {
return this.getToken(HiveSqlParser.KW_GRANT, 0);
}
KW_OPTION() {
return this.getToken(HiveSqlParser.KW_OPTION, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_withGrantOption;
}
enterRule(listener) {
if (listener.enterWithGrantOption) {
listener.enterWithGrantOption(this);
}
}
exitRule(listener) {
if (listener.exitWithGrantOption) {
listener.exitWithGrantOption(this);
}
}
accept(visitor) {
if (visitor.visitWithGrantOption) {
return visitor.visitWithGrantOption(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class GrantOptionForContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_GRANT() {
return this.getToken(HiveSqlParser.KW_GRANT, 0);
}
KW_OPTION() {
return this.getToken(HiveSqlParser.KW_OPTION, 0);
}
KW_FOR() {
return this.getToken(HiveSqlParser.KW_FOR, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_grantOptionFor;
}
enterRule(listener) {
if (listener.enterGrantOptionFor) {
listener.enterGrantOptionFor(this);
}
}
exitRule(listener) {
if (listener.exitGrantOptionFor) {
listener.exitGrantOptionFor(this);
}
}
accept(visitor) {
if (visitor.visitGrantOptionFor) {
return visitor.visitGrantOptionFor(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AdminOptionForContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ADMIN() {
return this.getToken(HiveSqlParser.KW_ADMIN, 0);
}
KW_OPTION() {
return this.getToken(HiveSqlParser.KW_OPTION, 0);
}
KW_FOR() {
return this.getToken(HiveSqlParser.KW_FOR, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_adminOptionFor;
}
enterRule(listener) {
if (listener.enterAdminOptionFor) {
listener.enterAdminOptionFor(this);
}
}
exitRule(listener) {
if (listener.exitAdminOptionFor) {
listener.exitAdminOptionFor(this);
}
}
accept(visitor) {
if (visitor.visitAdminOptionFor) {
return visitor.visitAdminOptionFor(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WithAdminOptionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_ADMIN() {
return this.getToken(HiveSqlParser.KW_ADMIN, 0);
}
KW_OPTION() {
return this.getToken(HiveSqlParser.KW_OPTION, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_withAdminOption;
}
enterRule(listener) {
if (listener.enterWithAdminOption) {
listener.enterWithAdminOption(this);
}
}
exitRule(listener) {
if (listener.exitWithAdminOption) {
listener.exitWithAdminOption(this);
}
}
accept(visitor) {
if (visitor.visitWithAdminOption) {
return visitor.visitWithAdminOption(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class MetastoreCheckContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_MSCK() {
return this.getToken(HiveSqlParser.KW_MSCK, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
KW_REPAIR() {
return this.getToken(HiveSqlParser.KW_REPAIR, 0);
}
KW_PARTITIONS() {
return this.getToken(HiveSqlParser.KW_PARTITIONS, 0);
}
KW_ADD() {
return this.getToken(HiveSqlParser.KW_ADD, 0);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_SYNC() {
return this.getToken(HiveSqlParser.KW_SYNC, 0);
}
partitionSelectorSpec() {
return this.getRuleContext(0, PartitionSelectorSpecContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_metastoreCheck;
}
enterRule(listener) {
if (listener.enterMetastoreCheck) {
listener.enterMetastoreCheck(this);
}
}
exitRule(listener) {
if (listener.exitMetastoreCheck) {
listener.exitMetastoreCheck(this);
}
}
accept(visitor) {
if (visitor.visitMetastoreCheck) {
return visitor.visitMetastoreCheck(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ResourceListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
resource(i) {
if (i === undefined) {
return this.getRuleContexts(ResourceContext);
}
return this.getRuleContext(i, ResourceContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_resourceList;
}
enterRule(listener) {
if (listener.enterResourceList) {
listener.enterResourceList(this);
}
}
exitRule(listener) {
if (listener.exitResourceList) {
listener.exitResourceList(this);
}
}
accept(visitor) {
if (visitor.visitResourceList) {
return visitor.visitResourceList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ResourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
resourceType() {
return this.getRuleContext(0, ResourceTypeContext);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_resource;
}
enterRule(listener) {
if (listener.enterResource) {
listener.enterResource(this);
}
}
exitRule(listener) {
if (listener.exitResource) {
listener.exitResource(this);
}
}
accept(visitor) {
if (visitor.visitResource) {
return visitor.visitResource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ResourceTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_JAR() {
return this.getToken(HiveSqlParser.KW_JAR, 0);
}
KW_FILE() {
return this.getToken(HiveSqlParser.KW_FILE, 0);
}
KW_ARCHIVE() {
return this.getToken(HiveSqlParser.KW_ARCHIVE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_resourceType;
}
enterRule(listener) {
if (listener.enterResourceType) {
listener.enterResourceType(this);
}
}
exitRule(listener) {
if (listener.exitResourceType) {
listener.exitResourceType(this);
}
}
accept(visitor) {
if (visitor.visitResourceType) {
return visitor.visitResourceType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateFunctionStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_FUNCTION() {
return this.getToken(HiveSqlParser.KW_FUNCTION, 0);
}
functionNameCreate() {
return this.getRuleContext(0, FunctionNameCreateContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_USING() {
return this.getToken(HiveSqlParser.KW_USING, 0);
}
KW_TEMPORARY() {
return this.getToken(HiveSqlParser.KW_TEMPORARY, 0);
}
resourceList() {
return this.getRuleContext(0, ResourceListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createFunctionStatement;
}
enterRule(listener) {
if (listener.enterCreateFunctionStatement) {
listener.enterCreateFunctionStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateFunctionStatement) {
listener.exitCreateFunctionStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateFunctionStatement) {
return visitor.visitCreateFunctionStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropFunctionStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_FUNCTION() {
return this.getToken(HiveSqlParser.KW_FUNCTION, 0);
}
functionNameForDDL() {
return this.getRuleContext(0, FunctionNameForDDLContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
KW_TEMPORARY() {
return this.getToken(HiveSqlParser.KW_TEMPORARY, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropFunctionStatement;
}
enterRule(listener) {
if (listener.enterDropFunctionStatement) {
listener.enterDropFunctionStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropFunctionStatement) {
listener.exitDropFunctionStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropFunctionStatement) {
return visitor.visitDropFunctionStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ReloadFunctionsStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_RELOAD() {
return this.getToken(HiveSqlParser.KW_RELOAD, 0);
}
KW_FUNCTIONS() {
return this.getToken(HiveSqlParser.KW_FUNCTIONS, 0);
}
KW_FUNCTION() {
return this.getToken(HiveSqlParser.KW_FUNCTION, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_reloadFunctionsStatement;
}
enterRule(listener) {
if (listener.enterReloadFunctionsStatement) {
listener.enterReloadFunctionsStatement(this);
}
}
exitRule(listener) {
if (listener.exitReloadFunctionsStatement) {
listener.exitReloadFunctionsStatement(this);
}
}
accept(visitor) {
if (visitor.visitReloadFunctionsStatement) {
return visitor.visitReloadFunctionsStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateMacroStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_TEMPORARY() {
return this.getToken(HiveSqlParser.KW_TEMPORARY, 0);
}
KW_MACRO() {
return this.getToken(HiveSqlParser.KW_MACRO, 0);
}
Identifier() {
return this.getToken(HiveSqlParser.Identifier, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
columnNameTypeList() {
return this.getRuleContext(0, ColumnNameTypeListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createMacroStatement;
}
enterRule(listener) {
if (listener.enterCreateMacroStatement) {
listener.enterCreateMacroStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateMacroStatement) {
listener.exitCreateMacroStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateMacroStatement) {
return visitor.visitCreateMacroStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropMacroStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_TEMPORARY() {
return this.getToken(HiveSqlParser.KW_TEMPORARY, 0);
}
KW_MACRO() {
return this.getToken(HiveSqlParser.KW_MACRO, 0);
}
Identifier() {
return this.getToken(HiveSqlParser.Identifier, 0);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropMacroStatement;
}
enterRule(listener) {
if (listener.enterDropMacroStatement) {
listener.enterDropMacroStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropMacroStatement) {
listener.exitDropMacroStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropMacroStatement) {
return visitor.visitDropMacroStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateIndexStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_INDEX() {
return this.getToken(HiveSqlParser.KW_INDEX, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
KW_TABLE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_TABLE);
}
else {
return this.getToken(HiveSqlParser.KW_TABLE, i);
}
}
tableName(i) {
if (i === undefined) {
return this.getRuleContexts(TableNameContext);
}
return this.getRuleContext(i, TableNameContext);
}
columnParenthesesList(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnParenthesesListContext);
}
return this.getRuleContext(i, ColumnParenthesesListContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_DEFERRED() {
return this.getToken(HiveSqlParser.KW_DEFERRED, 0);
}
KW_REBUILD() {
return this.getToken(HiveSqlParser.KW_REBUILD, 0);
}
KW_IDXPROPERTIES() {
return this.getToken(HiveSqlParser.KW_IDXPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
KW_IN() {
return this.getToken(HiveSqlParser.KW_IN, 0);
}
KW_PARTITIONED() {
return this.getToken(HiveSqlParser.KW_PARTITIONED, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
tableFileFormat() {
return this.getRuleContext(0, TableFileFormatContext);
}
locationPath() {
return this.getRuleContext(0, LocationPathContext);
}
tablePropertiesPrefixed() {
return this.getRuleContext(0, TablePropertiesPrefixedContext);
}
tableComment() {
return this.getRuleContext(0, TableCommentContext);
}
tableRowFormat() {
return this.getRuleContext(0, TableRowFormatContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createIndexStatement;
}
enterRule(listener) {
if (listener.enterCreateIndexStatement) {
listener.enterCreateIndexStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateIndexStatement) {
listener.exitCreateIndexStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateIndexStatement) {
return visitor.visitCreateIndexStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropIndexStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_INDEX() {
return this.getToken(HiveSqlParser.KW_INDEX, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropIndexStatement;
}
enterRule(listener) {
if (listener.enterDropIndexStatement) {
listener.enterDropIndexStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropIndexStatement) {
listener.exitDropIndexStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropIndexStatement) {
return visitor.visitDropIndexStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateViewStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
selectStatementWithCTE() {
return this.getRuleContext(0, SelectStatementWithCTEContext);
}
viewNameCreate() {
return this.getRuleContext(0, ViewNameCreateContext);
}
KW_OR() {
return this.getToken(HiveSqlParser.KW_OR, 0);
}
KW_REPLACE() {
return this.getToken(HiveSqlParser.KW_REPLACE, 0);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameCommentList() {
return this.getRuleContext(0, ColumnNameCommentListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
tableComment() {
return this.getRuleContext(0, TableCommentContext);
}
viewPartition() {
return this.getRuleContext(0, ViewPartitionContext);
}
tablePropertiesPrefixed() {
return this.getRuleContext(0, TablePropertiesPrefixedContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createViewStatement;
}
enterRule(listener) {
if (listener.enterCreateViewStatement) {
listener.enterCreateViewStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateViewStatement) {
listener.exitCreateViewStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateViewStatement) {
return visitor.visitCreateViewStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewPartitionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_PARTITIONED() {
return this.getToken(HiveSqlParser.KW_PARTITIONED, 0);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
KW_SPEC() {
return this.getToken(HiveSqlParser.KW_SPEC, 0);
}
partitionTransformSpec() {
return this.getRuleContext(0, PartitionTransformSpecContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewPartition;
}
enterRule(listener) {
if (listener.enterViewPartition) {
listener.enterViewPartition(this);
}
}
exitRule(listener) {
if (listener.exitViewPartition) {
listener.exitViewPartition(this);
}
}
accept(visitor) {
if (visitor.visitViewPartition) {
return visitor.visitViewPartition(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewOrganizationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
viewClusterSpec() {
return this.getRuleContext(0, ViewClusterSpecContext);
}
viewComplexSpec() {
return this.getRuleContext(0, ViewComplexSpecContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewOrganization;
}
enterRule(listener) {
if (listener.enterViewOrganization) {
listener.enterViewOrganization(this);
}
}
exitRule(listener) {
if (listener.exitViewOrganization) {
listener.exitViewOrganization(this);
}
}
accept(visitor) {
if (visitor.visitViewOrganization) {
return visitor.visitViewOrganization(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewClusterSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CLUSTERED() {
return this.getToken(HiveSqlParser.KW_CLUSTERED, 0);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewClusterSpec;
}
enterRule(listener) {
if (listener.enterViewClusterSpec) {
listener.enterViewClusterSpec(this);
}
}
exitRule(listener) {
if (listener.exitViewClusterSpec) {
listener.exitViewClusterSpec(this);
}
}
accept(visitor) {
if (visitor.visitViewClusterSpec) {
return visitor.visitViewClusterSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewComplexSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
viewDistSpec() {
return this.getRuleContext(0, ViewDistSpecContext);
}
viewSortSpec() {
return this.getRuleContext(0, ViewSortSpecContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewComplexSpec;
}
enterRule(listener) {
if (listener.enterViewComplexSpec) {
listener.enterViewComplexSpec(this);
}
}
exitRule(listener) {
if (listener.exitViewComplexSpec) {
listener.exitViewComplexSpec(this);
}
}
accept(visitor) {
if (visitor.visitViewComplexSpec) {
return visitor.visitViewComplexSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewDistSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DISTRIBUTED() {
return this.getToken(HiveSqlParser.KW_DISTRIBUTED, 0);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewDistSpec;
}
enterRule(listener) {
if (listener.enterViewDistSpec) {
listener.enterViewDistSpec(this);
}
}
exitRule(listener) {
if (listener.exitViewDistSpec) {
listener.exitViewDistSpec(this);
}
}
accept(visitor) {
if (visitor.visitViewDistSpec) {
return visitor.visitViewDistSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewSortSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SORTED() {
return this.getToken(HiveSqlParser.KW_SORTED, 0);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewSortSpec;
}
enterRule(listener) {
if (listener.enterViewSortSpec) {
listener.enterViewSortSpec(this);
}
}
exitRule(listener) {
if (listener.exitViewSortSpec) {
listener.exitViewSortSpec(this);
}
}
accept(visitor) {
if (visitor.visitViewSortSpec) {
return visitor.visitViewSortSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropViewStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
viewName() {
return this.getRuleContext(0, ViewNameContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropViewStatement;
}
enterRule(listener) {
if (listener.enterDropViewStatement) {
listener.enterDropViewStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropViewStatement) {
listener.exitDropViewStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropViewStatement) {
return visitor.visitDropViewStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateMaterializedViewStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_MATERIALIZED() {
return this.getToken(HiveSqlParser.KW_MATERIALIZED, 0);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
selectStatementWithCTE() {
return this.getRuleContext(0, SelectStatementWithCTEContext);
}
viewNameCreate() {
return this.getRuleContext(0, ViewNameCreateContext);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
rewriteDisabled() {
return this.getRuleContext(0, RewriteDisabledContext);
}
tableComment() {
return this.getRuleContext(0, TableCommentContext);
}
viewPartition() {
return this.getRuleContext(0, ViewPartitionContext);
}
viewOrganization() {
return this.getRuleContext(0, ViewOrganizationContext);
}
tableRowFormat() {
return this.getRuleContext(0, TableRowFormatContext);
}
tableFileFormat() {
return this.getRuleContext(0, TableFileFormatContext);
}
locationPath() {
return this.getRuleContext(0, LocationPathContext);
}
tablePropertiesPrefixed() {
return this.getRuleContext(0, TablePropertiesPrefixedContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createMaterializedViewStatement;
}
enterRule(listener) {
if (listener.enterCreateMaterializedViewStatement) {
listener.enterCreateMaterializedViewStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateMaterializedViewStatement) {
listener.exitCreateMaterializedViewStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateMaterializedViewStatement) {
return visitor.visitCreateMaterializedViewStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropMaterializedViewStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_MATERIALIZED() {
return this.getToken(HiveSqlParser.KW_MATERIALIZED, 0);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
viewName() {
return this.getRuleContext(0, ViewNameContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropMaterializedViewStatement;
}
enterRule(listener) {
if (listener.enterDropMaterializedViewStatement) {
listener.enterDropMaterializedViewStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropMaterializedViewStatement) {
listener.exitDropMaterializedViewStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropMaterializedViewStatement) {
return visitor.visitDropMaterializedViewStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateScheduledQueryStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_SCHEDULED() {
return this.getToken(HiveSqlParser.KW_SCHEDULED, 0);
}
KW_QUERY() {
return this.getToken(HiveSqlParser.KW_QUERY, 0);
}
scheduleSpec() {
return this.getRuleContext(0, ScheduleSpecContext);
}
definedAsSpec() {
return this.getRuleContext(0, DefinedAsSpecContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
executedAsSpec() {
return this.getRuleContext(0, ExecutedAsSpecContext);
}
enableSpecification() {
return this.getRuleContext(0, EnableSpecificationContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createScheduledQueryStatement;
}
enterRule(listener) {
if (listener.enterCreateScheduledQueryStatement) {
listener.enterCreateScheduledQueryStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateScheduledQueryStatement) {
listener.exitCreateScheduledQueryStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateScheduledQueryStatement) {
return visitor.visitCreateScheduledQueryStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropScheduledQueryStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_SCHEDULED() {
return this.getToken(HiveSqlParser.KW_SCHEDULED, 0);
}
KW_QUERY() {
return this.getToken(HiveSqlParser.KW_QUERY, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropScheduledQueryStatement;
}
enterRule(listener) {
if (listener.enterDropScheduledQueryStatement) {
listener.enterDropScheduledQueryStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropScheduledQueryStatement) {
listener.exitDropScheduledQueryStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropScheduledQueryStatement) {
return visitor.visitDropScheduledQueryStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterScheduledQueryStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ALTER() {
return this.getToken(HiveSqlParser.KW_ALTER, 0);
}
KW_SCHEDULED() {
return this.getToken(HiveSqlParser.KW_SCHEDULED, 0);
}
KW_QUERY() {
return this.getToken(HiveSqlParser.KW_QUERY, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
alterScheduledQueryChange() {
return this.getRuleContext(0, AlterScheduledQueryChangeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterScheduledQueryStatement;
}
enterRule(listener) {
if (listener.enterAlterScheduledQueryStatement) {
listener.enterAlterScheduledQueryStatement(this);
}
}
exitRule(listener) {
if (listener.exitAlterScheduledQueryStatement) {
listener.exitAlterScheduledQueryStatement(this);
}
}
accept(visitor) {
if (visitor.visitAlterScheduledQueryStatement) {
return visitor.visitAlterScheduledQueryStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterScheduledQueryChangeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
scheduleSpec() {
return this.getRuleContext(0, ScheduleSpecContext);
}
executedAsSpec() {
return this.getRuleContext(0, ExecutedAsSpecContext);
}
enableSpecification() {
return this.getRuleContext(0, EnableSpecificationContext);
}
definedAsSpec() {
return this.getRuleContext(0, DefinedAsSpecContext);
}
KW_EXECUTE() {
return this.getToken(HiveSqlParser.KW_EXECUTE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterScheduledQueryChange;
}
enterRule(listener) {
if (listener.enterAlterScheduledQueryChange) {
listener.enterAlterScheduledQueryChange(this);
}
}
exitRule(listener) {
if (listener.exitAlterScheduledQueryChange) {
listener.exitAlterScheduledQueryChange(this);
}
}
accept(visitor) {
if (visitor.visitAlterScheduledQueryChange) {
return visitor.visitAlterScheduledQueryChange(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ScheduleSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CRON() {
return this.getToken(HiveSqlParser.KW_CRON, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_EVERY() {
return this.getToken(HiveSqlParser.KW_EVERY, 0);
}
intervalQualifiers() {
return this.getRuleContext(0, IntervalQualifiersContext);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
KW_AT() {
return this.getToken(HiveSqlParser.KW_AT, 0);
}
KW_OFFSET() {
return this.getToken(HiveSqlParser.KW_OFFSET, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_scheduleSpec;
}
enterRule(listener) {
if (listener.enterScheduleSpec) {
listener.enterScheduleSpec(this);
}
}
exitRule(listener) {
if (listener.exitScheduleSpec) {
listener.exitScheduleSpec(this);
}
}
accept(visitor) {
if (visitor.visitScheduleSpec) {
return visitor.visitScheduleSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExecutedAsSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_EXECUTED() {
return this.getToken(HiveSqlParser.KW_EXECUTED, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_executedAsSpec;
}
enterRule(listener) {
if (listener.enterExecutedAsSpec) {
listener.enterExecutedAsSpec(this);
}
}
exitRule(listener) {
if (listener.exitExecutedAsSpec) {
listener.exitExecutedAsSpec(this);
}
}
accept(visitor) {
if (visitor.visitExecutedAsSpec) {
return visitor.visitExecutedAsSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DefinedAsSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
statement() {
return this.getRuleContext(0, StatementContext);
}
KW_DEFINED() {
return this.getToken(HiveSqlParser.KW_DEFINED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_definedAsSpec;
}
enterRule(listener) {
if (listener.enterDefinedAsSpec) {
listener.enterDefinedAsSpec(this);
}
}
exitRule(listener) {
if (listener.exitDefinedAsSpec) {
listener.exitDefinedAsSpec(this);
}
}
accept(visitor) {
if (visitor.visitDefinedAsSpec) {
return visitor.visitDefinedAsSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ShowStmtIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_showStmtIdentifier;
}
enterRule(listener) {
if (listener.enterShowStmtIdentifier) {
listener.enterShowStmtIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitShowStmtIdentifier) {
listener.exitShowStmtIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitShowStmtIdentifier) {
return visitor.visitShowStmtIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableCommentContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableComment;
}
enterRule(listener) {
if (listener.enterTableComment) {
listener.enterTableComment(this);
}
}
exitRule(listener) {
if (listener.exitTableComment) {
listener.exitTableComment(this);
}
}
accept(visitor) {
if (visitor.visitTableComment) {
return visitor.visitTableComment(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableLifecycleContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LIFECYCLE() {
return this.getToken(HiveSqlParser.KW_LIFECYCLE, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableLifecycle;
}
enterRule(listener) {
if (listener.enterTableLifecycle) {
listener.enterTableLifecycle(this);
}
}
exitRule(listener) {
if (listener.exitTableLifecycle) {
listener.exitTableLifecycle(this);
}
}
accept(visitor) {
if (visitor.visitTableLifecycle) {
return visitor.visitTableLifecycle(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateTablePartitionSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_PARTITIONED() {
return this.getToken(HiveSqlParser.KW_PARTITIONED, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
KW_SPEC() {
return this.getToken(HiveSqlParser.KW_SPEC, 0);
}
partitionTransformSpec() {
return this.getRuleContext(0, PartitionTransformSpecContext);
}
createTablePartitionColumnTypeSpec() {
return this.getRuleContext(0, CreateTablePartitionColumnTypeSpecContext);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createTablePartitionSpec;
}
enterRule(listener) {
if (listener.enterCreateTablePartitionSpec) {
listener.enterCreateTablePartitionSpec(this);
}
}
exitRule(listener) {
if (listener.exitCreateTablePartitionSpec) {
listener.exitCreateTablePartitionSpec(this);
}
}
accept(visitor) {
if (visitor.visitCreateTablePartitionSpec) {
return visitor.visitCreateTablePartitionSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateTablePartitionColumnTypeSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameTypeConstraint(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameTypeConstraintContext);
}
return this.getRuleContext(i, ColumnNameTypeConstraintContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_createTablePartitionColumnTypeSpec;
}
enterRule(listener) {
if (listener.enterCreateTablePartitionColumnTypeSpec) {
listener.enterCreateTablePartitionColumnTypeSpec(this);
}
}
exitRule(listener) {
if (listener.exitCreateTablePartitionColumnTypeSpec) {
listener.exitCreateTablePartitionColumnTypeSpec(this);
}
}
accept(visitor) {
if (visitor.visitCreateTablePartitionColumnTypeSpec) {
return visitor.visitCreateTablePartitionColumnTypeSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionTransformSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
partitionTransformType(i) {
if (i === undefined) {
return this.getRuleContexts(PartitionTransformTypeContext);
}
return this.getRuleContext(i, PartitionTransformTypeContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionTransformSpec;
}
enterRule(listener) {
if (listener.enterPartitionTransformSpec) {
listener.enterPartitionTransformSpec(this);
}
}
exitRule(listener) {
if (listener.exitPartitionTransformSpec) {
listener.exitPartitionTransformSpec(this);
}
}
accept(visitor) {
if (visitor.visitPartitionTransformSpec) {
return visitor.visitPartitionTransformSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionTransformTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
year() {
return this.getRuleContext(0, YearContext);
}
month() {
return this.getRuleContext(0, MonthContext);
}
day() {
return this.getRuleContext(0, DayContext);
}
hour() {
return this.getRuleContext(0, HourContext);
}
COMMA() {
return this.getToken(HiveSqlParser.COMMA, 0);
}
KW_TRUNCATE() {
return this.getToken(HiveSqlParser.KW_TRUNCATE, 0);
}
KW_BUCKET() {
return this.getToken(HiveSqlParser.KW_BUCKET, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionTransformType;
}
enterRule(listener) {
if (listener.enterPartitionTransformType) {
listener.enterPartitionTransformType(this);
}
}
exitRule(listener) {
if (listener.exitPartitionTransformType) {
listener.exitPartitionTransformType(this);
}
}
accept(visitor) {
if (visitor.visitPartitionTransformType) {
return visitor.visitPartitionTransformType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableBucketsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CLUSTERED() {
return this.getToken(HiveSqlParser.KW_CLUSTERED, 0);
}
KW_BY(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_BY);
}
else {
return this.getToken(HiveSqlParser.KW_BY, i);
}
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
KW_BUCKETS() {
return this.getToken(HiveSqlParser.KW_BUCKETS, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
KW_SORTED() {
return this.getToken(HiveSqlParser.KW_SORTED, 0);
}
columnNameOrderList() {
return this.getRuleContext(0, ColumnNameOrderListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableBuckets;
}
enterRule(listener) {
if (listener.enterTableBuckets) {
listener.enterTableBuckets(this);
}
}
exitRule(listener) {
if (listener.exitTableBuckets) {
listener.exitTableBuckets(this);
}
}
accept(visitor) {
if (visitor.visitTableBuckets) {
return visitor.visitTableBuckets(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableSkewedContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SKEWED() {
return this.getToken(HiveSqlParser.KW_SKEWED, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
skewedValueElement() {
return this.getRuleContext(0, SkewedValueElementContext);
}
storedAsDirs() {
return this.getRuleContext(0, StoredAsDirsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableSkewed;
}
enterRule(listener) {
if (listener.enterTableSkewed) {
listener.enterTableSkewed(this);
}
}
exitRule(listener) {
if (listener.exitTableSkewed) {
listener.exitTableSkewed(this);
}
}
accept(visitor) {
if (visitor.visitTableSkewed) {
return visitor.visitTableSkewed(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RowFormatContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
rowFormatSerde() {
return this.getRuleContext(0, RowFormatSerdeContext);
}
rowFormatDelimited() {
return this.getRuleContext(0, RowFormatDelimitedContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_rowFormat;
}
enterRule(listener) {
if (listener.enterRowFormat) {
listener.enterRowFormat(this);
}
}
exitRule(listener) {
if (listener.exitRowFormat) {
listener.exitRowFormat(this);
}
}
accept(visitor) {
if (visitor.visitRowFormat) {
return visitor.visitRowFormat(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RecordReaderContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_RECORDREADER() {
return this.getToken(HiveSqlParser.KW_RECORDREADER, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_recordReader;
}
enterRule(listener) {
if (listener.enterRecordReader) {
listener.enterRecordReader(this);
}
}
exitRule(listener) {
if (listener.exitRecordReader) {
listener.exitRecordReader(this);
}
}
accept(visitor) {
if (visitor.visitRecordReader) {
return visitor.visitRecordReader(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RecordWriterContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_RECORDWRITER() {
return this.getToken(HiveSqlParser.KW_RECORDWRITER, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_recordWriter;
}
enterRule(listener) {
if (listener.enterRecordWriter) {
listener.enterRecordWriter(this);
}
}
exitRule(listener) {
if (listener.exitRecordWriter) {
listener.exitRecordWriter(this);
}
}
accept(visitor) {
if (visitor.visitRecordWriter) {
return visitor.visitRecordWriter(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RowFormatSerdeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ROW() {
return this.getToken(HiveSqlParser.KW_ROW, 0);
}
KW_FORMAT() {
return this.getToken(HiveSqlParser.KW_FORMAT, 0);
}
KW_SERDE() {
return this.getToken(HiveSqlParser.KW_SERDE, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_SERDEPROPERTIES() {
return this.getToken(HiveSqlParser.KW_SERDEPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_rowFormatSerde;
}
enterRule(listener) {
if (listener.enterRowFormatSerde) {
listener.enterRowFormatSerde(this);
}
}
exitRule(listener) {
if (listener.exitRowFormatSerde) {
listener.exitRowFormatSerde(this);
}
}
accept(visitor) {
if (visitor.visitRowFormatSerde) {
return visitor.visitRowFormatSerde(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RowFormatDelimitedContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ROW() {
return this.getToken(HiveSqlParser.KW_ROW, 0);
}
KW_FORMAT() {
return this.getToken(HiveSqlParser.KW_FORMAT, 0);
}
KW_DELIMITED() {
return this.getToken(HiveSqlParser.KW_DELIMITED, 0);
}
tableRowFormatFieldIdentifier() {
return this.getRuleContext(0, TableRowFormatFieldIdentifierContext);
}
tableRowFormatCollItemsIdentifier() {
return this.getRuleContext(0, TableRowFormatCollItemsIdentifierContext);
}
tableRowFormatMapKeysIdentifier() {
return this.getRuleContext(0, TableRowFormatMapKeysIdentifierContext);
}
tableRowFormatLinesIdentifier() {
return this.getRuleContext(0, TableRowFormatLinesIdentifierContext);
}
tableRowNullFormat() {
return this.getRuleContext(0, TableRowNullFormatContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_rowFormatDelimited;
}
enterRule(listener) {
if (listener.enterRowFormatDelimited) {
listener.enterRowFormatDelimited(this);
}
}
exitRule(listener) {
if (listener.exitRowFormatDelimited) {
listener.exitRowFormatDelimited(this);
}
}
accept(visitor) {
if (visitor.visitRowFormatDelimited) {
return visitor.visitRowFormatDelimited(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableRowFormatContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
rowFormatDelimited() {
return this.getRuleContext(0, RowFormatDelimitedContext);
}
rowFormatSerde() {
return this.getRuleContext(0, RowFormatSerdeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableRowFormat;
}
enterRule(listener) {
if (listener.enterTableRowFormat) {
listener.enterTableRowFormat(this);
}
}
exitRule(listener) {
if (listener.exitTableRowFormat) {
listener.exitTableRowFormat(this);
}
}
accept(visitor) {
if (visitor.visitTableRowFormat) {
return visitor.visitTableRowFormat(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TablePropertiesPrefixedContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_TBLPROPERTIES() {
return this.getToken(HiveSqlParser.KW_TBLPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tablePropertiesPrefixed;
}
enterRule(listener) {
if (listener.enterTablePropertiesPrefixed) {
listener.enterTablePropertiesPrefixed(this);
}
}
exitRule(listener) {
if (listener.exitTablePropertiesPrefixed) {
listener.exitTablePropertiesPrefixed(this);
}
}
accept(visitor) {
if (visitor.visitTablePropertiesPrefixed) {
return visitor.visitTablePropertiesPrefixed(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TablePropertiesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
tablePropertiesList() {
return this.getRuleContext(0, TablePropertiesListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableProperties;
}
enterRule(listener) {
if (listener.enterTableProperties) {
listener.enterTableProperties(this);
}
}
exitRule(listener) {
if (listener.exitTableProperties) {
listener.exitTableProperties(this);
}
}
accept(visitor) {
if (visitor.visitTableProperties) {
return visitor.visitTableProperties(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TablePropertiesListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
keyValuePropertyList() {
return this.getRuleContext(0, KeyValuePropertyListContext);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_tablePropertiesList;
}
enterRule(listener) {
if (listener.enterTablePropertiesList) {
listener.enterTablePropertiesList(this);
}
}
exitRule(listener) {
if (listener.exitTablePropertiesList) {
listener.exitTablePropertiesList(this);
}
}
accept(visitor) {
if (visitor.visitTablePropertiesList) {
return visitor.visitTablePropertiesList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class KeyValuePropertiesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
keyValuePropertyList() {
return this.getRuleContext(0, KeyValuePropertyListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_keyValueProperties;
}
enterRule(listener) {
if (listener.enterKeyValueProperties) {
listener.enterKeyValueProperties(this);
}
}
exitRule(listener) {
if (listener.exitKeyValueProperties) {
listener.exitKeyValueProperties(this);
}
}
accept(visitor) {
if (visitor.visitKeyValueProperties) {
return visitor.visitKeyValueProperties(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class KeyValuePropertyListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
keyValueProperty(i) {
if (i === undefined) {
return this.getRuleContexts(KeyValuePropertyContext);
}
return this.getRuleContext(i, KeyValuePropertyContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_keyValuePropertyList;
}
enterRule(listener) {
if (listener.enterKeyValuePropertyList) {
listener.enterKeyValuePropertyList(this);
}
}
exitRule(listener) {
if (listener.exitKeyValuePropertyList) {
listener.exitKeyValuePropertyList(this);
}
}
accept(visitor) {
if (visitor.visitKeyValuePropertyList) {
return visitor.visitKeyValuePropertyList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class KeyValuePropertyContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_keyValueProperty;
}
enterRule(listener) {
if (listener.enterKeyValueProperty) {
listener.enterKeyValueProperty(this);
}
}
exitRule(listener) {
if (listener.exitKeyValueProperty) {
listener.exitKeyValueProperty(this);
}
}
accept(visitor) {
if (visitor.visitKeyValueProperty) {
return visitor.visitKeyValueProperty(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableRowFormatFieldIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FIELDS() {
return this.getToken(HiveSqlParser.KW_FIELDS, 0);
}
KW_TERMINATED() {
return this.getToken(HiveSqlParser.KW_TERMINATED, 0);
}
KW_BY(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_BY);
}
else {
return this.getToken(HiveSqlParser.KW_BY, i);
}
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
KW_ESCAPED() {
return this.getToken(HiveSqlParser.KW_ESCAPED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableRowFormatFieldIdentifier;
}
enterRule(listener) {
if (listener.enterTableRowFormatFieldIdentifier) {
listener.enterTableRowFormatFieldIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitTableRowFormatFieldIdentifier) {
listener.exitTableRowFormatFieldIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitTableRowFormatFieldIdentifier) {
return visitor.visitTableRowFormatFieldIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableRowFormatCollItemsIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_COLLECTION() {
return this.getToken(HiveSqlParser.KW_COLLECTION, 0);
}
KW_ITEMS() {
return this.getToken(HiveSqlParser.KW_ITEMS, 0);
}
KW_TERMINATED() {
return this.getToken(HiveSqlParser.KW_TERMINATED, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableRowFormatCollItemsIdentifier;
}
enterRule(listener) {
if (listener.enterTableRowFormatCollItemsIdentifier) {
listener.enterTableRowFormatCollItemsIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitTableRowFormatCollItemsIdentifier) {
listener.exitTableRowFormatCollItemsIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitTableRowFormatCollItemsIdentifier) {
return visitor.visitTableRowFormatCollItemsIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableRowFormatMapKeysIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_MAP() {
return this.getToken(HiveSqlParser.KW_MAP, 0);
}
KW_KEYS() {
return this.getToken(HiveSqlParser.KW_KEYS, 0);
}
KW_TERMINATED() {
return this.getToken(HiveSqlParser.KW_TERMINATED, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableRowFormatMapKeysIdentifier;
}
enterRule(listener) {
if (listener.enterTableRowFormatMapKeysIdentifier) {
listener.enterTableRowFormatMapKeysIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitTableRowFormatMapKeysIdentifier) {
listener.exitTableRowFormatMapKeysIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitTableRowFormatMapKeysIdentifier) {
return visitor.visitTableRowFormatMapKeysIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableRowFormatLinesIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LINES() {
return this.getToken(HiveSqlParser.KW_LINES, 0);
}
KW_TERMINATED() {
return this.getToken(HiveSqlParser.KW_TERMINATED, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableRowFormatLinesIdentifier;
}
enterRule(listener) {
if (listener.enterTableRowFormatLinesIdentifier) {
listener.enterTableRowFormatLinesIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitTableRowFormatLinesIdentifier) {
listener.exitTableRowFormatLinesIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitTableRowFormatLinesIdentifier) {
return visitor.visitTableRowFormatLinesIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableRowNullFormatContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_NULL() {
return this.getToken(HiveSqlParser.KW_NULL, 0);
}
KW_DEFINED() {
return this.getToken(HiveSqlParser.KW_DEFINED, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableRowNullFormat;
}
enterRule(listener) {
if (listener.enterTableRowNullFormat) {
listener.enterTableRowNullFormat(this);
}
}
exitRule(listener) {
if (listener.exitTableRowNullFormat) {
listener.exitTableRowNullFormat(this);
}
}
accept(visitor) {
if (visitor.visitTableRowNullFormat) {
return visitor.visitTableRowNullFormat(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableFileFormatContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_STORED(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_STORED);
}
else {
return this.getToken(HiveSqlParser.KW_STORED, i);
}
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
KW_INPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_INPUTFORMAT, 0);
}
KW_OUTPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_OUTPUTFORMAT, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
KW_INPUTDRIVER() {
return this.getToken(HiveSqlParser.KW_INPUTDRIVER, 0);
}
KW_OUTPUTDRIVER() {
return this.getToken(HiveSqlParser.KW_OUTPUTDRIVER, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_SERDEPROPERTIES() {
return this.getToken(HiveSqlParser.KW_SERDEPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableFileFormat;
}
enterRule(listener) {
if (listener.enterTableFileFormat) {
listener.enterTableFileFormat(this);
}
}
exitRule(listener) {
if (listener.exitTableFileFormat) {
listener.exitTableFileFormat(this);
}
}
accept(visitor) {
if (visitor.visitTableFileFormat) {
return visitor.visitTableFileFormat(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameTypeListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameType(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameTypeContext);
}
return this.getRuleContext(i, ColumnNameTypeContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameTypeList;
}
enterRule(listener) {
if (listener.enterColumnNameTypeList) {
listener.enterColumnNameTypeList(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameTypeList) {
listener.exitColumnNameTypeList(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameTypeList) {
return visitor.visitColumnNameTypeList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameTypeOrConstraintListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameTypeOrConstraint(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameTypeOrConstraintContext);
}
return this.getRuleContext(i, ColumnNameTypeOrConstraintContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameTypeOrConstraintList;
}
enterRule(listener) {
if (listener.enterColumnNameTypeOrConstraintList) {
listener.enterColumnNameTypeOrConstraintList(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameTypeOrConstraintList) {
listener.exitColumnNameTypeOrConstraintList(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameTypeOrConstraintList) {
return visitor.visitColumnNameTypeOrConstraintList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameColonTypeListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameColonType(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameColonTypeContext);
}
return this.getRuleContext(i, ColumnNameColonTypeContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameColonTypeList;
}
enterRule(listener) {
if (listener.enterColumnNameColonTypeList) {
listener.enterColumnNameColonTypeList(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameColonTypeList) {
listener.exitColumnNameColonTypeList(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameColonTypeList) {
return visitor.visitColumnNameColonTypeList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnName(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameContext);
}
return this.getRuleContext(i, ColumnNameContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameList;
}
enterRule(listener) {
if (listener.enterColumnNameList) {
listener.enterColumnNameList(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameList) {
listener.exitColumnNameList(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameList) {
return visitor.visitColumnNameList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
poolPath() {
return this.getRuleContext(0, PoolPathContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnName;
}
enterRule(listener) {
if (listener.enterColumnName) {
listener.enterColumnName(this);
}
}
exitRule(listener) {
if (listener.exitColumnName) {
listener.exitColumnName(this);
}
}
accept(visitor) {
if (visitor.visitColumnName) {
return visitor.visitColumnName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNamePathContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
poolPath() {
return this.getRuleContext(0, PoolPathContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNamePath;
}
enterRule(listener) {
if (listener.enterColumnNamePath) {
listener.enterColumnNamePath(this);
}
}
exitRule(listener) {
if (listener.exitColumnNamePath) {
listener.exitColumnNamePath(this);
}
}
accept(visitor) {
if (visitor.visitColumnNamePath) {
return visitor.visitColumnNamePath(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameCreateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameCreate;
}
enterRule(listener) {
if (listener.enterColumnNameCreate) {
listener.enterColumnNameCreate(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameCreate) {
listener.exitColumnNameCreate(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameCreate) {
return visitor.visitColumnNameCreate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExtColumnNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
KW_ELEM_TYPE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_ELEM_TYPE);
}
else {
return this.getToken(HiveSqlParser.KW_ELEM_TYPE, i);
}
}
KW_KEY_TYPE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_KEY_TYPE);
}
else {
return this.getToken(HiveSqlParser.KW_KEY_TYPE, i);
}
}
KW_VALUE_TYPE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_VALUE_TYPE);
}
else {
return this.getToken(HiveSqlParser.KW_VALUE_TYPE, i);
}
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_extColumnName;
}
enterRule(listener) {
if (listener.enterExtColumnName) {
listener.enterExtColumnName(this);
}
}
exitRule(listener) {
if (listener.exitExtColumnName) {
listener.exitExtColumnName(this);
}
}
accept(visitor) {
if (visitor.visitExtColumnName) {
return visitor.visitExtColumnName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameOrderListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameOrder(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameOrderContext);
}
return this.getRuleContext(i, ColumnNameOrderContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameOrderList;
}
enterRule(listener) {
if (listener.enterColumnNameOrderList) {
listener.enterColumnNameOrderList(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameOrderList) {
listener.exitColumnNameOrderList(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameOrderList) {
return visitor.visitColumnNameOrderList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnParenthesesListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnParenthesesList;
}
enterRule(listener) {
if (listener.enterColumnParenthesesList) {
listener.enterColumnParenthesesList(this);
}
}
exitRule(listener) {
if (listener.exitColumnParenthesesList) {
listener.exitColumnParenthesesList(this);
}
}
accept(visitor) {
if (visitor.visitColumnParenthesesList) {
return visitor.visitColumnParenthesesList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class EnableValidateSpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
enableSpecification() {
return this.getRuleContext(0, EnableSpecificationContext);
}
validateSpecification() {
return this.getRuleContext(0, ValidateSpecificationContext);
}
enforcedSpecification() {
return this.getRuleContext(0, EnforcedSpecificationContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_enableValidateSpecification;
}
enterRule(listener) {
if (listener.enterEnableValidateSpecification) {
listener.enterEnableValidateSpecification(this);
}
}
exitRule(listener) {
if (listener.exitEnableValidateSpecification) {
listener.exitEnableValidateSpecification(this);
}
}
accept(visitor) {
if (visitor.visitEnableValidateSpecification) {
return visitor.visitEnableValidateSpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class EnableSpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
enable() {
return this.getRuleContext(0, EnableContext);
}
disable() {
return this.getRuleContext(0, DisableContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_enableSpecification;
}
enterRule(listener) {
if (listener.enterEnableSpecification) {
listener.enterEnableSpecification(this);
}
}
exitRule(listener) {
if (listener.exitEnableSpecification) {
listener.exitEnableSpecification(this);
}
}
accept(visitor) {
if (visitor.visitEnableSpecification) {
return visitor.visitEnableSpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ValidateSpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_VALIDATE() {
return this.getToken(HiveSqlParser.KW_VALIDATE, 0);
}
KW_NOVALIDATE() {
return this.getToken(HiveSqlParser.KW_NOVALIDATE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_validateSpecification;
}
enterRule(listener) {
if (listener.enterValidateSpecification) {
listener.enterValidateSpecification(this);
}
}
exitRule(listener) {
if (listener.exitValidateSpecification) {
listener.exitValidateSpecification(this);
}
}
accept(visitor) {
if (visitor.visitValidateSpecification) {
return visitor.visitValidateSpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class EnforcedSpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ENFORCED() {
return this.getToken(HiveSqlParser.KW_ENFORCED, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_enforcedSpecification;
}
enterRule(listener) {
if (listener.enterEnforcedSpecification) {
listener.enterEnforcedSpecification(this);
}
}
exitRule(listener) {
if (listener.exitEnforcedSpecification) {
listener.exitEnforcedSpecification(this);
}
}
accept(visitor) {
if (visitor.visitEnforcedSpecification) {
return visitor.visitEnforcedSpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RelySpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_RELY() {
return this.getToken(HiveSqlParser.KW_RELY, 0);
}
KW_NORELY() {
return this.getToken(HiveSqlParser.KW_NORELY, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_relySpecification;
}
enterRule(listener) {
if (listener.enterRelySpecification) {
listener.enterRelySpecification(this);
}
}
exitRule(listener) {
if (listener.exitRelySpecification) {
listener.exitRelySpecification(this);
}
}
accept(visitor) {
if (visitor.visitRelySpecification) {
return visitor.visitRelySpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableLevelConstraint() {
return this.getRuleContext(0, TableLevelConstraintContext);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
constraintOptsCreate() {
return this.getRuleContext(0, ConstraintOptsCreateContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_createConstraint;
}
enterRule(listener) {
if (listener.enterCreateConstraint) {
listener.enterCreateConstraint(this);
}
}
exitRule(listener) {
if (listener.exitCreateConstraint) {
listener.exitCreateConstraint(this);
}
}
accept(visitor) {
if (visitor.visitCreateConstraint) {
return visitor.visitCreateConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterConstraintWithNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
tableLevelConstraint() {
return this.getRuleContext(0, TableLevelConstraintContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
constraintOptsAlter() {
return this.getRuleContext(0, ConstraintOptsAlterContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterConstraintWithName;
}
enterRule(listener) {
if (listener.enterAlterConstraintWithName) {
listener.enterAlterConstraintWithName(this);
}
}
exitRule(listener) {
if (listener.exitAlterConstraintWithName) {
listener.exitAlterConstraintWithName(this);
}
}
accept(visitor) {
if (visitor.visitAlterConstraintWithName) {
return visitor.visitAlterConstraintWithName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableLevelConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
pkUkConstraint() {
return this.getRuleContext(0, PkUkConstraintContext);
}
checkConstraint() {
return this.getRuleContext(0, CheckConstraintContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableLevelConstraint;
}
enterRule(listener) {
if (listener.enterTableLevelConstraint) {
listener.enterTableLevelConstraint(this);
}
}
exitRule(listener) {
if (listener.exitTableLevelConstraint) {
listener.exitTableLevelConstraint(this);
}
}
accept(visitor) {
if (visitor.visitTableLevelConstraint) {
return visitor.visitTableLevelConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PkUkConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableConstraintType() {
return this.getRuleContext(0, TableConstraintTypeContext);
}
columnParenthesesList() {
return this.getRuleContext(0, ColumnParenthesesListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_pkUkConstraint;
}
enterRule(listener) {
if (listener.enterPkUkConstraint) {
listener.enterPkUkConstraint(this);
}
}
exitRule(listener) {
if (listener.exitPkUkConstraint) {
listener.exitPkUkConstraint(this);
}
}
accept(visitor) {
if (visitor.visitPkUkConstraint) {
return visitor.visitPkUkConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CheckConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CHECK() {
return this.getToken(HiveSqlParser.KW_CHECK, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_checkConstraint;
}
enterRule(listener) {
if (listener.enterCheckConstraint) {
listener.enterCheckConstraint(this);
}
}
exitRule(listener) {
if (listener.exitCheckConstraint) {
listener.exitCheckConstraint(this);
}
}
accept(visitor) {
if (visitor.visitCheckConstraint) {
return visitor.visitCheckConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateForeignKeyContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FOREIGN() {
return this.getToken(HiveSqlParser.KW_FOREIGN, 0);
}
KW_KEY() {
return this.getToken(HiveSqlParser.KW_KEY, 0);
}
KW_REFERENCES() {
return this.getToken(HiveSqlParser.KW_REFERENCES, 0);
}
columnParenthesesList(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnParenthesesListContext);
}
return this.getRuleContext(i, ColumnParenthesesListContext);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
constraintOptsCreate() {
return this.getRuleContext(0, ConstraintOptsCreateContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_createForeignKey;
}
enterRule(listener) {
if (listener.enterCreateForeignKey) {
listener.enterCreateForeignKey(this);
}
}
exitRule(listener) {
if (listener.exitCreateForeignKey) {
listener.exitCreateForeignKey(this);
}
}
accept(visitor) {
if (visitor.visitCreateForeignKey) {
return visitor.visitCreateForeignKey(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterForeignKeyWithNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
KW_FOREIGN() {
return this.getToken(HiveSqlParser.KW_FOREIGN, 0);
}
KW_KEY() {
return this.getToken(HiveSqlParser.KW_KEY, 0);
}
KW_REFERENCES() {
return this.getToken(HiveSqlParser.KW_REFERENCES, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
columnParenthesesList(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnParenthesesListContext);
}
return this.getRuleContext(i, ColumnParenthesesListContext);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
constraintOptsAlter() {
return this.getRuleContext(0, ConstraintOptsAlterContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterForeignKeyWithName;
}
enterRule(listener) {
if (listener.enterAlterForeignKeyWithName) {
listener.enterAlterForeignKeyWithName(this);
}
}
exitRule(listener) {
if (listener.exitAlterForeignKeyWithName) {
listener.exitAlterForeignKeyWithName(this);
}
}
accept(visitor) {
if (visitor.visitAlterForeignKeyWithName) {
return visitor.visitAlterForeignKeyWithName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SkewedValueElementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
constantList() {
return this.getRuleContext(0, ConstantListContext);
}
skewedColumnValuePairList() {
return this.getRuleContext(0, SkewedColumnValuePairListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_skewedValueElement;
}
enterRule(listener) {
if (listener.enterSkewedValueElement) {
listener.enterSkewedValueElement(this);
}
}
exitRule(listener) {
if (listener.exitSkewedValueElement) {
listener.exitSkewedValueElement(this);
}
}
accept(visitor) {
if (visitor.visitSkewedValueElement) {
return visitor.visitSkewedValueElement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SkewedColumnValuePairListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
skewedColumnValuePair(i) {
if (i === undefined) {
return this.getRuleContexts(SkewedColumnValuePairContext);
}
return this.getRuleContext(i, SkewedColumnValuePairContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_skewedColumnValuePairList;
}
enterRule(listener) {
if (listener.enterSkewedColumnValuePairList) {
listener.enterSkewedColumnValuePairList(this);
}
}
exitRule(listener) {
if (listener.exitSkewedColumnValuePairList) {
listener.exitSkewedColumnValuePairList(this);
}
}
accept(visitor) {
if (visitor.visitSkewedColumnValuePairList) {
return visitor.visitSkewedColumnValuePairList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SkewedColumnValuePairContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
constantList() {
return this.getRuleContext(0, ConstantListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_skewedColumnValuePair;
}
enterRule(listener) {
if (listener.enterSkewedColumnValuePair) {
listener.enterSkewedColumnValuePair(this);
}
}
exitRule(listener) {
if (listener.exitSkewedColumnValuePair) {
listener.exitSkewedColumnValuePair(this);
}
}
accept(visitor) {
if (visitor.visitSkewedColumnValuePair) {
return visitor.visitSkewedColumnValuePair(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ConstantListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
constant(i) {
if (i === undefined) {
return this.getRuleContexts(ConstantContext);
}
return this.getRuleContext(i, ConstantContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_constantList;
}
enterRule(listener) {
if (listener.enterConstantList) {
listener.enterConstantList(this);
}
}
exitRule(listener) {
if (listener.exitConstantList) {
listener.exitConstantList(this);
}
}
accept(visitor) {
if (visitor.visitConstantList) {
return visitor.visitConstantList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class OrderSpecificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ASC() {
return this.getToken(HiveSqlParser.KW_ASC, 0);
}
KW_DESC() {
return this.getToken(HiveSqlParser.KW_DESC, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_orderSpecification;
}
enterRule(listener) {
if (listener.enterOrderSpecification) {
listener.enterOrderSpecification(this);
}
}
exitRule(listener) {
if (listener.exitOrderSpecification) {
listener.exitOrderSpecification(this);
}
}
accept(visitor) {
if (visitor.visitOrderSpecification) {
return visitor.visitOrderSpecification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class NullOrderingContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_NULLS() {
return this.getToken(HiveSqlParser.KW_NULLS, 0);
}
KW_FIRST() {
return this.getToken(HiveSqlParser.KW_FIRST, 0);
}
KW_LAST() {
return this.getToken(HiveSqlParser.KW_LAST, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_nullOrdering;
}
enterRule(listener) {
if (listener.enterNullOrdering) {
listener.enterNullOrdering(this);
}
}
exitRule(listener) {
if (listener.exitNullOrdering) {
listener.exitNullOrdering(this);
}
}
accept(visitor) {
if (visitor.visitNullOrdering) {
return visitor.visitNullOrdering(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameOrderContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
orderSpecification() {
return this.getRuleContext(0, OrderSpecificationContext);
}
nullOrdering() {
return this.getRuleContext(0, NullOrderingContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameOrder;
}
enterRule(listener) {
if (listener.enterColumnNameOrder) {
listener.enterColumnNameOrder(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameOrder) {
listener.exitColumnNameOrder(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameOrder) {
return visitor.visitColumnNameOrder(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameCommentListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameComment(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnNameCommentContext);
}
return this.getRuleContext(i, ColumnNameCommentContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameCommentList;
}
enterRule(listener) {
if (listener.enterColumnNameCommentList) {
listener.enterColumnNameCommentList(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameCommentList) {
listener.exitColumnNameCommentList(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameCommentList) {
return visitor.visitColumnNameCommentList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameCommentContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameCreate() {
return this.getRuleContext(0, ColumnNameCreateContext);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameComment;
}
enterRule(listener) {
if (listener.enterColumnNameComment) {
listener.enterColumnNameComment(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameComment) {
listener.exitColumnNameComment(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameComment) {
return visitor.visitColumnNameComment(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnRefOrderContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
orderSpecification() {
return this.getRuleContext(0, OrderSpecificationContext);
}
nullOrdering() {
return this.getRuleContext(0, NullOrderingContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnRefOrder;
}
enterRule(listener) {
if (listener.enterColumnRefOrder) {
listener.enterColumnRefOrder(this);
}
}
exitRule(listener) {
if (listener.exitColumnRefOrder) {
listener.exitColumnRefOrder(this);
}
}
accept(visitor) {
if (visitor.visitColumnRefOrder) {
return visitor.visitColumnRefOrder(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnType() {
return this.getRuleContext(0, ColumnTypeContext);
}
columnNameCreate() {
return this.getRuleContext(0, ColumnNameCreateContext);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameType;
}
enterRule(listener) {
if (listener.enterColumnNameType) {
listener.enterColumnNameType(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameType) {
listener.exitColumnNameType(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameType) {
return visitor.visitColumnNameType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameTypeOrConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableConstraint() {
return this.getRuleContext(0, TableConstraintContext);
}
columnNameTypeConstraint() {
return this.getRuleContext(0, ColumnNameTypeConstraintContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameTypeOrConstraint;
}
enterRule(listener) {
if (listener.enterColumnNameTypeOrConstraint) {
listener.enterColumnNameTypeOrConstraint(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameTypeOrConstraint) {
listener.exitColumnNameTypeOrConstraint(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameTypeOrConstraint) {
return visitor.visitColumnNameTypeOrConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
createForeignKey() {
return this.getRuleContext(0, CreateForeignKeyContext);
}
createConstraint() {
return this.getRuleContext(0, CreateConstraintContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableConstraint;
}
enterRule(listener) {
if (listener.enterTableConstraint) {
listener.enterTableConstraint(this);
}
}
exitRule(listener) {
if (listener.exitTableConstraint) {
listener.exitTableConstraint(this);
}
}
accept(visitor) {
if (visitor.visitTableConstraint) {
return visitor.visitTableConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameTypeConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnNameCreate() {
return this.getRuleContext(0, ColumnNameCreateContext);
}
columnType() {
return this.getRuleContext(0, ColumnTypeContext);
}
columnConstraint() {
return this.getRuleContext(0, ColumnConstraintContext);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameTypeConstraint;
}
enterRule(listener) {
if (listener.enterColumnNameTypeConstraint) {
listener.enterColumnNameTypeConstraint(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameTypeConstraint) {
listener.exitColumnNameTypeConstraint(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameTypeConstraint) {
return visitor.visitColumnNameTypeConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
foreignKeyConstraint() {
return this.getRuleContext(0, ForeignKeyConstraintContext);
}
colConstraint() {
return this.getRuleContext(0, ColConstraintContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnConstraint;
}
enterRule(listener) {
if (listener.enterColumnConstraint) {
listener.enterColumnConstraint(this);
}
}
exitRule(listener) {
if (listener.exitColumnConstraint) {
listener.exitColumnConstraint(this);
}
}
accept(visitor) {
if (visitor.visitColumnConstraint) {
return visitor.visitColumnConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ForeignKeyConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_REFERENCES() {
return this.getToken(HiveSqlParser.KW_REFERENCES, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
constraintOptsCreate() {
return this.getRuleContext(0, ConstraintOptsCreateContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_foreignKeyConstraint;
}
enterRule(listener) {
if (listener.enterForeignKeyConstraint) {
listener.enterForeignKeyConstraint(this);
}
}
exitRule(listener) {
if (listener.exitForeignKeyConstraint) {
listener.exitForeignKeyConstraint(this);
}
}
accept(visitor) {
if (visitor.visitForeignKeyConstraint) {
return visitor.visitForeignKeyConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnConstraintType() {
return this.getRuleContext(0, ColumnConstraintTypeContext);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
constraintOptsCreate() {
return this.getRuleContext(0, ConstraintOptsCreateContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_colConstraint;
}
enterRule(listener) {
if (listener.enterColConstraint) {
listener.enterColConstraint(this);
}
}
exitRule(listener) {
if (listener.exitColConstraint) {
listener.exitColConstraint(this);
}
}
accept(visitor) {
if (visitor.visitColConstraint) {
return visitor.visitColConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterColumnConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
alterForeignKeyConstraint() {
return this.getRuleContext(0, AlterForeignKeyConstraintContext);
}
alterColConstraint() {
return this.getRuleContext(0, AlterColConstraintContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterColumnConstraint;
}
enterRule(listener) {
if (listener.enterAlterColumnConstraint) {
listener.enterAlterColumnConstraint(this);
}
}
exitRule(listener) {
if (listener.exitAlterColumnConstraint) {
listener.exitAlterColumnConstraint(this);
}
}
accept(visitor) {
if (visitor.visitAlterColumnConstraint) {
return visitor.visitAlterColumnConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterForeignKeyConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_REFERENCES() {
return this.getToken(HiveSqlParser.KW_REFERENCES, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
constraintOptsAlter() {
return this.getRuleContext(0, ConstraintOptsAlterContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterForeignKeyConstraint;
}
enterRule(listener) {
if (listener.enterAlterForeignKeyConstraint) {
listener.enterAlterForeignKeyConstraint(this);
}
}
exitRule(listener) {
if (listener.exitAlterForeignKeyConstraint) {
listener.exitAlterForeignKeyConstraint(this);
}
}
accept(visitor) {
if (visitor.visitAlterForeignKeyConstraint) {
return visitor.visitAlterForeignKeyConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterColConstraintContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnConstraintType() {
return this.getRuleContext(0, ColumnConstraintTypeContext);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
constraintOptsAlter() {
return this.getRuleContext(0, ConstraintOptsAlterContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterColConstraint;
}
enterRule(listener) {
if (listener.enterAlterColConstraint) {
listener.enterAlterColConstraint(this);
}
}
exitRule(listener) {
if (listener.exitAlterColConstraint) {
listener.exitAlterColConstraint(this);
}
}
accept(visitor) {
if (visitor.visitAlterColConstraint) {
return visitor.visitAlterColConstraint(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnConstraintTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_NULL() {
return this.getToken(HiveSqlParser.KW_NULL, 0);
}
KW_DEFAULT() {
return this.getToken(HiveSqlParser.KW_DEFAULT, 0);
}
defaultVal() {
return this.getRuleContext(0, DefaultValContext);
}
checkConstraint() {
return this.getRuleContext(0, CheckConstraintContext);
}
tableConstraintType() {
return this.getRuleContext(0, TableConstraintTypeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnConstraintType;
}
enterRule(listener) {
if (listener.enterColumnConstraintType) {
listener.enterColumnConstraintType(this);
}
}
exitRule(listener) {
if (listener.exitColumnConstraintType) {
listener.exitColumnConstraintType(this);
}
}
accept(visitor) {
if (visitor.visitColumnConstraintType) {
return visitor.visitColumnConstraintType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DefaultValContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
constant() {
return this.getRuleContext(0, ConstantContext);
}
function_() {
return this.getRuleContext(0, Function_Context);
}
castExpression() {
return this.getRuleContext(0, CastExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_defaultVal;
}
enterRule(listener) {
if (listener.enterDefaultVal) {
listener.enterDefaultVal(this);
}
}
exitRule(listener) {
if (listener.exitDefaultVal) {
listener.exitDefaultVal(this);
}
}
accept(visitor) {
if (visitor.visitDefaultVal) {
return visitor.visitDefaultVal(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableConstraintTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_PRIMARY() {
return this.getToken(HiveSqlParser.KW_PRIMARY, 0);
}
KW_KEY() {
return this.getToken(HiveSqlParser.KW_KEY, 0);
}
KW_UNIQUE() {
return this.getToken(HiveSqlParser.KW_UNIQUE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableConstraintType;
}
enterRule(listener) {
if (listener.enterTableConstraintType) {
listener.enterTableConstraintType(this);
}
}
exitRule(listener) {
if (listener.exitTableConstraintType) {
listener.exitTableConstraintType(this);
}
}
accept(visitor) {
if (visitor.visitTableConstraintType) {
return visitor.visitTableConstraintType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ConstraintOptsCreateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
enableValidateSpecification() {
return this.getRuleContext(0, EnableValidateSpecificationContext);
}
relySpecification() {
return this.getRuleContext(0, RelySpecificationContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_constraintOptsCreate;
}
enterRule(listener) {
if (listener.enterConstraintOptsCreate) {
listener.enterConstraintOptsCreate(this);
}
}
exitRule(listener) {
if (listener.exitConstraintOptsCreate) {
listener.exitConstraintOptsCreate(this);
}
}
accept(visitor) {
if (visitor.visitConstraintOptsCreate) {
return visitor.visitConstraintOptsCreate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ConstraintOptsAlterContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
enableValidateSpecification() {
return this.getRuleContext(0, EnableValidateSpecificationContext);
}
relySpecification() {
return this.getRuleContext(0, RelySpecificationContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_constraintOptsAlter;
}
enterRule(listener) {
if (listener.enterConstraintOptsAlter) {
listener.enterConstraintOptsAlter(this);
}
}
exitRule(listener) {
if (listener.exitConstraintOptsAlter) {
listener.exitConstraintOptsAlter(this);
}
}
accept(visitor) {
if (visitor.visitConstraintOptsAlter) {
return visitor.visitConstraintOptsAlter(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnNameColonTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
COLON() {
return this.getToken(HiveSqlParser.COLON, 0);
}
columnType() {
return this.getRuleContext(0, ColumnTypeContext);
}
columnNameCreate() {
return this.getRuleContext(0, ColumnNameCreateContext);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnNameColonType;
}
enterRule(listener) {
if (listener.enterColumnNameColonType) {
listener.enterColumnNameColonType(this);
}
}
exitRule(listener) {
if (listener.exitColumnNameColonType) {
listener.exitColumnNameColonType(this);
}
}
accept(visitor) {
if (visitor.visitColumnNameColonType) {
return visitor.visitColumnNameColonType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
type() {
return this.getRuleContext(0, TypeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnType;
}
enterRule(listener) {
if (listener.enterColumnType) {
listener.enterColumnType(this);
}
}
exitRule(listener) {
if (listener.exitColumnType) {
listener.exitColumnType(this);
}
}
accept(visitor) {
if (visitor.visitColumnType) {
return visitor.visitColumnType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnTypeListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnType(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnTypeContext);
}
return this.getRuleContext(i, ColumnTypeContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_columnTypeList;
}
enterRule(listener) {
if (listener.enterColumnTypeList) {
listener.enterColumnTypeList(this);
}
}
exitRule(listener) {
if (listener.exitColumnTypeList) {
listener.exitColumnTypeList(this);
}
}
accept(visitor) {
if (visitor.visitColumnTypeList) {
return visitor.visitColumnTypeList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
primitiveType() {
return this.getRuleContext(0, PrimitiveTypeContext);
}
listType() {
return this.getRuleContext(0, ListTypeContext);
}
structType() {
return this.getRuleContext(0, StructTypeContext);
}
mapType() {
return this.getRuleContext(0, MapTypeContext);
}
unionType() {
return this.getRuleContext(0, UnionTypeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_type;
}
enterRule(listener) {
if (listener.enterType) {
listener.enterType(this);
}
}
exitRule(listener) {
if (listener.exitType) {
listener.exitType(this);
}
}
accept(visitor) {
if (visitor.visitType) {
return visitor.visitType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrimitiveTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_TINYINT() {
return this.getToken(HiveSqlParser.KW_TINYINT, 0);
}
KW_SMALLINT() {
return this.getToken(HiveSqlParser.KW_SMALLINT, 0);
}
KW_INT() {
return this.getToken(HiveSqlParser.KW_INT, 0);
}
KW_INTEGER() {
return this.getToken(HiveSqlParser.KW_INTEGER, 0);
}
KW_BIGINT() {
return this.getToken(HiveSqlParser.KW_BIGINT, 0);
}
KW_BOOLEAN() {
return this.getToken(HiveSqlParser.KW_BOOLEAN, 0);
}
KW_FLOAT() {
return this.getToken(HiveSqlParser.KW_FLOAT, 0);
}
KW_REAL() {
return this.getToken(HiveSqlParser.KW_REAL, 0);
}
KW_DOUBLE() {
return this.getToken(HiveSqlParser.KW_DOUBLE, 0);
}
KW_PRECISION() {
return this.getToken(HiveSqlParser.KW_PRECISION, 0);
}
KW_DATE() {
return this.getToken(HiveSqlParser.KW_DATE, 0);
}
KW_DATETIME() {
return this.getToken(HiveSqlParser.KW_DATETIME, 0);
}
KW_TIMESTAMP() {
return this.getToken(HiveSqlParser.KW_TIMESTAMP, 0);
}
KW_TIMESTAMPLOCALTZ() {
return this.getToken(HiveSqlParser.KW_TIMESTAMPLOCALTZ, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_LOCAL() {
return this.getToken(HiveSqlParser.KW_LOCAL, 0);
}
KW_TIME() {
return this.getToken(HiveSqlParser.KW_TIME, 0);
}
KW_ZONE() {
return this.getToken(HiveSqlParser.KW_ZONE, 0);
}
KW_STRING() {
return this.getToken(HiveSqlParser.KW_STRING, 0);
}
KW_BINARY() {
return this.getToken(HiveSqlParser.KW_BINARY, 0);
}
decimal() {
return this.getRuleContext(0, DecimalContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
Number(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.Number);
}
else {
return this.getToken(HiveSqlParser.Number, i);
}
}
COMMA() {
return this.getToken(HiveSqlParser.COMMA, 0);
}
KW_VARCHAR() {
return this.getToken(HiveSqlParser.KW_VARCHAR, 0);
}
KW_CHAR() {
return this.getToken(HiveSqlParser.KW_CHAR, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_primitiveType;
}
enterRule(listener) {
if (listener.enterPrimitiveType) {
listener.enterPrimitiveType(this);
}
}
exitRule(listener) {
if (listener.exitPrimitiveType) {
listener.exitPrimitiveType(this);
}
}
accept(visitor) {
if (visitor.visitPrimitiveType) {
return visitor.visitPrimitiveType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ListTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ARRAY() {
return this.getToken(HiveSqlParser.KW_ARRAY, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
type() {
return this.getRuleContext(0, TypeContext);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_listType;
}
enterRule(listener) {
if (listener.enterListType) {
listener.enterListType(this);
}
}
exitRule(listener) {
if (listener.exitListType) {
listener.exitListType(this);
}
}
accept(visitor) {
if (visitor.visitListType) {
return visitor.visitListType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class StructTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_STRUCT() {
return this.getToken(HiveSqlParser.KW_STRUCT, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
columnNameColonTypeList() {
return this.getRuleContext(0, ColumnNameColonTypeListContext);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_structType;
}
enterRule(listener) {
if (listener.enterStructType) {
listener.enterStructType(this);
}
}
exitRule(listener) {
if (listener.exitStructType) {
listener.exitStructType(this);
}
}
accept(visitor) {
if (visitor.visitStructType) {
return visitor.visitStructType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class MapTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_MAP() {
return this.getToken(HiveSqlParser.KW_MAP, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
COMMA() {
return this.getToken(HiveSqlParser.COMMA, 0);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
primitiveType() {
return this.getRuleContext(0, PrimitiveTypeContext);
}
type() {
return this.getRuleContext(0, TypeContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_mapType;
}
enterRule(listener) {
if (listener.enterMapType) {
listener.enterMapType(this);
}
}
exitRule(listener) {
if (listener.exitMapType) {
listener.exitMapType(this);
}
}
accept(visitor) {
if (visitor.visitMapType) {
return visitor.visitMapType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class UnionTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_UNIONTYPE() {
return this.getToken(HiveSqlParser.KW_UNIONTYPE, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
columnTypeList() {
return this.getRuleContext(0, ColumnTypeListContext);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_unionType;
}
enterRule(listener) {
if (listener.enterUnionType) {
listener.enterUnionType(this);
}
}
exitRule(listener) {
if (listener.exitUnionType) {
listener.exitUnionType(this);
}
}
accept(visitor) {
if (visitor.visitUnionType) {
return visitor.visitUnionType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SetOperatorContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_UNION() {
return this.getToken(HiveSqlParser.KW_UNION, 0);
}
KW_INTERSECT() {
return this.getToken(HiveSqlParser.KW_INTERSECT, 0);
}
KW_EXCEPT() {
return this.getToken(HiveSqlParser.KW_EXCEPT, 0);
}
KW_MINUS() {
return this.getToken(HiveSqlParser.KW_MINUS, 0);
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
KW_DISTINCT() {
return this.getToken(HiveSqlParser.KW_DISTINCT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_setOperator;
}
enterRule(listener) {
if (listener.enterSetOperator) {
listener.enterSetOperator(this);
}
}
exitRule(listener) {
if (listener.exitSetOperator) {
listener.exitSetOperator(this);
}
}
accept(visitor) {
if (visitor.visitSetOperator) {
return visitor.visitSetOperator(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class QueryStatementExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
queryStatementExpressionBody() {
return this.getRuleContext(0, QueryStatementExpressionBodyContext);
}
withClause() {
return this.getRuleContext(0, WithClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_queryStatementExpression;
}
enterRule(listener) {
if (listener.enterQueryStatementExpression) {
listener.enterQueryStatementExpression(this);
}
}
exitRule(listener) {
if (listener.exitQueryStatementExpression) {
listener.exitQueryStatementExpression(this);
}
}
accept(visitor) {
if (visitor.visitQueryStatementExpression) {
return visitor.visitQueryStatementExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class QueryStatementExpressionBodyContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
fromStatement() {
return this.getRuleContext(0, FromStatementContext);
}
regularBody() {
return this.getRuleContext(0, RegularBodyContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_queryStatementExpressionBody;
}
enterRule(listener) {
if (listener.enterQueryStatementExpressionBody) {
listener.enterQueryStatementExpressionBody(this);
}
}
exitRule(listener) {
if (listener.exitQueryStatementExpressionBody) {
listener.exitQueryStatementExpressionBody(this);
}
}
accept(visitor) {
if (visitor.visitQueryStatementExpressionBody) {
return visitor.visitQueryStatementExpressionBody(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WithClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
cteStatement(i) {
if (i === undefined) {
return this.getRuleContexts(CteStatementContext);
}
return this.getRuleContext(i, CteStatementContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_withClause;
}
enterRule(listener) {
if (listener.enterWithClause) {
listener.enterWithClause(this);
}
}
exitRule(listener) {
if (listener.exitWithClause) {
listener.exitWithClause(this);
}
}
accept(visitor) {
if (visitor.visitWithClause) {
return visitor.visitWithClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CteStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
queryStatementExpression() {
return this.getRuleContext(0, QueryStatementExpressionContext);
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_cteStatement;
}
enterRule(listener) {
if (listener.enterCteStatement) {
listener.enterCteStatement(this);
}
}
exitRule(listener) {
if (listener.exitCteStatement) {
listener.exitCteStatement(this);
}
}
accept(visitor) {
if (visitor.visitCteStatement) {
return visitor.visitCteStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FromStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
singleFromStatement(i) {
if (i === undefined) {
return this.getRuleContexts(SingleFromStatementContext);
}
return this.getRuleContext(i, SingleFromStatementContext);
}
setOperator(i) {
if (i === undefined) {
return this.getRuleContexts(SetOperatorContext);
}
return this.getRuleContext(i, SetOperatorContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_fromStatement;
}
enterRule(listener) {
if (listener.enterFromStatement) {
listener.enterFromStatement(this);
}
}
exitRule(listener) {
if (listener.exitFromStatement) {
listener.exitFromStatement(this);
}
}
accept(visitor) {
if (visitor.visitFromStatement) {
return visitor.visitFromStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SingleFromStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
get ruleIndex() {
return HiveSqlParser.RULE_singleFromStatement;
}
copyFrom(ctx) {
super.copyFrom(ctx);
}
}
export class FromSelectStmtContext extends SingleFromStatementContext {
constructor(ctx) {
super(ctx.parent, ctx.invokingState);
super.copyFrom(ctx);
}
fromClause() {
return this.getRuleContext(0, FromClauseContext);
}
selectClause() {
return this.getRuleContext(0, SelectClauseContext);
}
lateralView() {
return this.getRuleContext(0, LateralViewContext);
}
whereClause() {
return this.getRuleContext(0, WhereClauseContext);
}
groupByClause() {
return this.getRuleContext(0, GroupByClauseContext);
}
havingClause() {
return this.getRuleContext(0, HavingClauseContext);
}
window_clause() {
return this.getRuleContext(0, Window_clauseContext);
}
qualifyClause() {
return this.getRuleContext(0, QualifyClauseContext);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
clusterByClause() {
return this.getRuleContext(0, ClusterByClauseContext);
}
distributeByClause() {
return this.getRuleContext(0, DistributeByClauseContext);
}
sortByClause() {
return this.getRuleContext(0, SortByClauseContext);
}
limitClause() {
return this.getRuleContext(0, LimitClauseContext);
}
enterRule(listener) {
if (listener.enterFromSelectStmt) {
listener.enterFromSelectStmt(this);
}
}
exitRule(listener) {
if (listener.exitFromSelectStmt) {
listener.exitFromSelectStmt(this);
}
}
accept(visitor) {
if (visitor.visitFromSelectStmt) {
return visitor.visitFromSelectStmt(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FromInsertStmtContext extends SingleFromStatementContext {
constructor(ctx) {
super(ctx.parent, ctx.invokingState);
super.copyFrom(ctx);
}
fromClause() {
return this.getRuleContext(0, FromClauseContext);
}
insertClause() {
return this.getRuleContext(0, InsertClauseContext);
}
selectClause() {
return this.getRuleContext(0, SelectClauseContext);
}
lateralView() {
return this.getRuleContext(0, LateralViewContext);
}
whereClause() {
return this.getRuleContext(0, WhereClauseContext);
}
groupByClause() {
return this.getRuleContext(0, GroupByClauseContext);
}
havingClause() {
return this.getRuleContext(0, HavingClauseContext);
}
window_clause() {
return this.getRuleContext(0, Window_clauseContext);
}
qualifyClause() {
return this.getRuleContext(0, QualifyClauseContext);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
clusterByClause() {
return this.getRuleContext(0, ClusterByClauseContext);
}
distributeByClause() {
return this.getRuleContext(0, DistributeByClauseContext);
}
sortByClause() {
return this.getRuleContext(0, SortByClauseContext);
}
limitClause() {
return this.getRuleContext(0, LimitClauseContext);
}
enterRule(listener) {
if (listener.enterFromInsertStmt) {
listener.enterFromInsertStmt(this);
}
}
exitRule(listener) {
if (listener.exitFromInsertStmt) {
listener.exitFromInsertStmt(this);
}
}
accept(visitor) {
if (visitor.visitFromInsertStmt) {
return visitor.visitFromInsertStmt(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RegularBodyContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
get ruleIndex() {
return HiveSqlParser.RULE_regularBody;
}
copyFrom(ctx) {
super.copyFrom(ctx);
}
}
export class InsertStmtContext extends RegularBodyContext {
constructor(ctx) {
super(ctx.parent, ctx.invokingState);
super.copyFrom(ctx);
}
insertClause() {
return this.getRuleContext(0, InsertClauseContext);
}
selectStatement() {
return this.getRuleContext(0, SelectStatementContext);
}
enterRule(listener) {
if (listener.enterInsertStmt) {
listener.enterInsertStmt(this);
}
}
exitRule(listener) {
if (listener.exitInsertStmt) {
listener.exitInsertStmt(this);
}
}
accept(visitor) {
if (visitor.visitInsertStmt) {
return visitor.visitInsertStmt(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectStmtContext extends RegularBodyContext {
constructor(ctx) {
super(ctx.parent, ctx.invokingState);
super.copyFrom(ctx);
}
selectStatement() {
return this.getRuleContext(0, SelectStatementContext);
}
enterRule(listener) {
if (listener.enterSelectStmt) {
listener.enterSelectStmt(this);
}
}
exitRule(listener) {
if (listener.exitSelectStmt) {
listener.exitSelectStmt(this);
}
}
accept(visitor) {
if (visitor.visitSelectStmt) {
return visitor.visitSelectStmt(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AtomSelectStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
selectClause() {
return this.getRuleContext(0, SelectClauseContext);
}
fromClause() {
return this.getRuleContext(0, FromClauseContext);
}
whereClause() {
return this.getRuleContext(0, WhereClauseContext);
}
groupByClause() {
return this.getRuleContext(0, GroupByClauseContext);
}
havingClause() {
return this.getRuleContext(0, HavingClauseContext);
}
window_clause() {
return this.getRuleContext(0, Window_clauseContext);
}
qualifyClause() {
return this.getRuleContext(0, QualifyClauseContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
selectStatement() {
return this.getRuleContext(0, SelectStatementContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
valuesClause() {
return this.getRuleContext(0, ValuesClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_atomSelectStatement;
}
enterRule(listener) {
if (listener.enterAtomSelectStatement) {
listener.enterAtomSelectStatement(this);
}
}
exitRule(listener) {
if (listener.exitAtomSelectStatement) {
listener.exitAtomSelectStatement(this);
}
}
accept(visitor) {
if (visitor.visitAtomSelectStatement) {
return visitor.visitAtomSelectStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
atomSelectStatement() {
return this.getRuleContext(0, AtomSelectStatementContext);
}
setOpSelectStatement() {
return this.getRuleContext(0, SetOpSelectStatementContext);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
clusterByClause() {
return this.getRuleContext(0, ClusterByClauseContext);
}
distributeByClause() {
return this.getRuleContext(0, DistributeByClauseContext);
}
sortByClause() {
return this.getRuleContext(0, SortByClauseContext);
}
limitClause() {
return this.getRuleContext(0, LimitClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_selectStatement;
}
enterRule(listener) {
if (listener.enterSelectStatement) {
listener.enterSelectStatement(this);
}
}
exitRule(listener) {
if (listener.exitSelectStatement) {
listener.exitSelectStatement(this);
}
}
accept(visitor) {
if (visitor.visitSelectStatement) {
return visitor.visitSelectStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SetOpSelectStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
setOperator(i) {
if (i === undefined) {
return this.getRuleContexts(SetOperatorContext);
}
return this.getRuleContext(i, SetOperatorContext);
}
atomSelectStatement(i) {
if (i === undefined) {
return this.getRuleContexts(AtomSelectStatementContext);
}
return this.getRuleContext(i, AtomSelectStatementContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_setOpSelectStatement;
}
enterRule(listener) {
if (listener.enterSetOpSelectStatement) {
listener.enterSetOpSelectStatement(this);
}
}
exitRule(listener) {
if (listener.exitSetOpSelectStatement) {
listener.exitSetOpSelectStatement(this);
}
}
accept(visitor) {
if (visitor.visitSetOpSelectStatement) {
return visitor.visitSetOpSelectStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectStatementWithCTEContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
selectStatement() {
return this.getRuleContext(0, SelectStatementContext);
}
withClause() {
return this.getRuleContext(0, WithClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_selectStatementWithCTE;
}
enterRule(listener) {
if (listener.enterSelectStatementWithCTE) {
listener.enterSelectStatementWithCTE(this);
}
}
exitRule(listener) {
if (listener.exitSelectStatementWithCTE) {
listener.exitSelectStatementWithCTE(this);
}
}
accept(visitor) {
if (visitor.visitSelectStatementWithCTE) {
return visitor.visitSelectStatementWithCTE(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class InsertClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_INSERT() {
return this.getToken(HiveSqlParser.KW_INSERT, 0);
}
KW_OVERWRITE() {
return this.getToken(HiveSqlParser.KW_OVERWRITE, 0);
}
destination() {
return this.getRuleContext(0, DestinationContext);
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
columnNameList() {
return this.getRuleContext(0, ColumnNameListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_insertClause;
}
enterRule(listener) {
if (listener.enterInsertClause) {
listener.enterInsertClause(this);
}
}
exitRule(listener) {
if (listener.exitInsertClause) {
listener.exitInsertClause(this);
}
}
accept(visitor) {
if (visitor.visitInsertClause) {
return visitor.visitInsertClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DestinationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DIRECTORY() {
return this.getToken(HiveSqlParser.KW_DIRECTORY, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
tableRowFormat() {
return this.getRuleContext(0, TableRowFormatContext);
}
tableFileFormat() {
return this.getRuleContext(0, TableFileFormatContext);
}
KW_LOCAL() {
return this.getToken(HiveSqlParser.KW_LOCAL, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_destination;
}
enterRule(listener) {
if (listener.enterDestination) {
listener.enterDestination(this);
}
}
exitRule(listener) {
if (listener.exitDestination) {
listener.exitDestination(this);
}
}
accept(visitor) {
if (visitor.visitDestination) {
return visitor.visitDestination(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LimitClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LIMIT() {
return this.getToken(HiveSqlParser.KW_LIMIT, 0);
}
KW_OFFSET() {
return this.getToken(HiveSqlParser.KW_OFFSET, 0);
}
Number(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.Number);
}
else {
return this.getToken(HiveSqlParser.Number, i);
}
}
COMMA() {
return this.getToken(HiveSqlParser.COMMA, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_limitClause;
}
enterRule(listener) {
if (listener.enterLimitClause) {
listener.enterLimitClause(this);
}
}
exitRule(listener) {
if (listener.exitLimitClause) {
listener.exitLimitClause(this);
}
}
accept(visitor) {
if (visitor.visitLimitClause) {
return visitor.visitLimitClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ColumnAssignmentClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
precedencePlusExpressionOrDefault() {
return this.getRuleContext(0, PrecedencePlusExpressionOrDefaultContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_columnAssignmentClause;
}
enterRule(listener) {
if (listener.enterColumnAssignmentClause) {
listener.enterColumnAssignmentClause(this);
}
}
exitRule(listener) {
if (listener.exitColumnAssignmentClause) {
listener.exitColumnAssignmentClause(this);
}
}
accept(visitor) {
if (visitor.visitColumnAssignmentClause) {
return visitor.visitColumnAssignmentClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedencePlusExpressionOrDefaultContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DEFAULT() {
return this.getToken(HiveSqlParser.KW_DEFAULT, 0);
}
precedencePlusExpression() {
return this.getRuleContext(0, PrecedencePlusExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedencePlusExpressionOrDefault;
}
enterRule(listener) {
if (listener.enterPrecedencePlusExpressionOrDefault) {
listener.enterPrecedencePlusExpressionOrDefault(this);
}
}
exitRule(listener) {
if (listener.exitPrecedencePlusExpressionOrDefault) {
listener.exitPrecedencePlusExpressionOrDefault(this);
}
}
accept(visitor) {
if (visitor.visitPrecedencePlusExpressionOrDefault) {
return visitor.visitPrecedencePlusExpressionOrDefault(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SetColumnsClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
columnAssignmentClause(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnAssignmentClauseContext);
}
return this.getRuleContext(i, ColumnAssignmentClauseContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_setColumnsClause;
}
enterRule(listener) {
if (listener.enterSetColumnsClause) {
listener.enterSetColumnsClause(this);
}
}
exitRule(listener) {
if (listener.exitSetColumnsClause) {
listener.exitSetColumnsClause(this);
}
}
accept(visitor) {
if (visitor.visitSetColumnsClause) {
return visitor.visitSetColumnsClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SqlTransactionStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_START() {
return this.getToken(HiveSqlParser.KW_START, 0);
}
KW_TRANSACTION() {
return this.getToken(HiveSqlParser.KW_TRANSACTION, 0);
}
transactionMode(i) {
if (i === undefined) {
return this.getRuleContexts(TransactionModeContext);
}
return this.getRuleContext(i, TransactionModeContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
KW_COMMIT() {
return this.getToken(HiveSqlParser.KW_COMMIT, 0);
}
KW_WORK() {
return this.getToken(HiveSqlParser.KW_WORK, 0);
}
KW_ROLLBACK() {
return this.getToken(HiveSqlParser.KW_ROLLBACK, 0);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_AUTOCOMMIT() {
return this.getToken(HiveSqlParser.KW_AUTOCOMMIT, 0);
}
KW_TRUE() {
return this.getToken(HiveSqlParser.KW_TRUE, 0);
}
KW_FALSE() {
return this.getToken(HiveSqlParser.KW_FALSE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_sqlTransactionStatement;
}
enterRule(listener) {
if (listener.enterSqlTransactionStatement) {
listener.enterSqlTransactionStatement(this);
}
}
exitRule(listener) {
if (listener.exitSqlTransactionStatement) {
listener.exitSqlTransactionStatement(this);
}
}
accept(visitor) {
if (visitor.visitSqlTransactionStatement) {
return visitor.visitSqlTransactionStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TransactionModeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ISOLATION() {
return this.getToken(HiveSqlParser.KW_ISOLATION, 0);
}
KW_LEVEL() {
return this.getToken(HiveSqlParser.KW_LEVEL, 0);
}
KW_SNAPSHOT() {
return this.getToken(HiveSqlParser.KW_SNAPSHOT, 0);
}
KW_READ() {
return this.getToken(HiveSqlParser.KW_READ, 0);
}
KW_ONLY() {
return this.getToken(HiveSqlParser.KW_ONLY, 0);
}
KW_WRITE() {
return this.getToken(HiveSqlParser.KW_WRITE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_transactionMode;
}
enterRule(listener) {
if (listener.enterTransactionMode) {
listener.enterTransactionMode(this);
}
}
exitRule(listener) {
if (listener.exitTransactionMode) {
listener.exitTransactionMode(this);
}
}
accept(visitor) {
if (visitor.visitTransactionMode) {
return visitor.visitTransactionMode(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WhenClausesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
whenMatchedAndClause(i) {
if (i === undefined) {
return this.getRuleContexts(WhenMatchedAndClauseContext);
}
return this.getRuleContext(i, WhenMatchedAndClauseContext);
}
whenMatchedThenClause(i) {
if (i === undefined) {
return this.getRuleContexts(WhenMatchedThenClauseContext);
}
return this.getRuleContext(i, WhenMatchedThenClauseContext);
}
whenNotMatchedClause() {
return this.getRuleContext(0, WhenNotMatchedClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_whenClauses;
}
enterRule(listener) {
if (listener.enterWhenClauses) {
listener.enterWhenClauses(this);
}
}
exitRule(listener) {
if (listener.exitWhenClauses) {
listener.exitWhenClauses(this);
}
}
accept(visitor) {
if (visitor.visitWhenClauses) {
return visitor.visitWhenClauses(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WhenNotMatchedClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WHEN() {
return this.getToken(HiveSqlParser.KW_WHEN, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_MATCHED() {
return this.getToken(HiveSqlParser.KW_MATCHED, 0);
}
KW_THEN() {
return this.getToken(HiveSqlParser.KW_THEN, 0);
}
KW_INSERT() {
return this.getToken(HiveSqlParser.KW_INSERT, 0);
}
KW_VALUES() {
return this.getToken(HiveSqlParser.KW_VALUES, 0);
}
expressionsInParenthesis() {
return this.getRuleContext(0, ExpressionsInParenthesisContext);
}
KW_AND() {
return this.getToken(HiveSqlParser.KW_AND, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
columnParenthesesList() {
return this.getRuleContext(0, ColumnParenthesesListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_whenNotMatchedClause;
}
enterRule(listener) {
if (listener.enterWhenNotMatchedClause) {
listener.enterWhenNotMatchedClause(this);
}
}
exitRule(listener) {
if (listener.exitWhenNotMatchedClause) {
listener.exitWhenNotMatchedClause(this);
}
}
accept(visitor) {
if (visitor.visitWhenNotMatchedClause) {
return visitor.visitWhenNotMatchedClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WhenMatchedAndClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WHEN() {
return this.getToken(HiveSqlParser.KW_WHEN, 0);
}
KW_MATCHED() {
return this.getToken(HiveSqlParser.KW_MATCHED, 0);
}
KW_AND() {
return this.getToken(HiveSqlParser.KW_AND, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
KW_THEN() {
return this.getToken(HiveSqlParser.KW_THEN, 0);
}
KW_UPDATE() {
return this.getToken(HiveSqlParser.KW_UPDATE, 0);
}
setColumnsClause() {
return this.getRuleContext(0, SetColumnsClauseContext);
}
KW_DELETE() {
return this.getToken(HiveSqlParser.KW_DELETE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_whenMatchedAndClause;
}
enterRule(listener) {
if (listener.enterWhenMatchedAndClause) {
listener.enterWhenMatchedAndClause(this);
}
}
exitRule(listener) {
if (listener.exitWhenMatchedAndClause) {
listener.exitWhenMatchedAndClause(this);
}
}
accept(visitor) {
if (visitor.visitWhenMatchedAndClause) {
return visitor.visitWhenMatchedAndClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WhenMatchedThenClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WHEN() {
return this.getToken(HiveSqlParser.KW_WHEN, 0);
}
KW_MATCHED() {
return this.getToken(HiveSqlParser.KW_MATCHED, 0);
}
KW_THEN() {
return this.getToken(HiveSqlParser.KW_THEN, 0);
}
KW_UPDATE() {
return this.getToken(HiveSqlParser.KW_UPDATE, 0);
}
setColumnsClause() {
return this.getRuleContext(0, SetColumnsClauseContext);
}
KW_DELETE() {
return this.getToken(HiveSqlParser.KW_DELETE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_whenMatchedThenClause;
}
enterRule(listener) {
if (listener.enterWhenMatchedThenClause) {
listener.enterWhenMatchedThenClause(this);
}
}
exitRule(listener) {
if (listener.exitWhenMatchedThenClause) {
listener.exitWhenMatchedThenClause(this);
}
}
accept(visitor) {
if (visitor.visitWhenMatchedThenClause) {
return visitor.visitWhenMatchedThenClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CompactionPoolContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_POOL() {
return this.getToken(HiveSqlParser.KW_POOL, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_compactionPool;
}
enterRule(listener) {
if (listener.enterCompactionPool) {
listener.enterCompactionPool(this);
}
}
exitRule(listener) {
if (listener.exitCompactionPool) {
listener.exitCompactionPool(this);
}
}
accept(visitor) {
if (visitor.visitCompactionPool) {
return visitor.visitCompactionPool(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CompactionTypeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_TYPE() {
return this.getToken(HiveSqlParser.KW_TYPE, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_compactionType;
}
enterRule(listener) {
if (listener.enterCompactionType) {
listener.enterCompactionType(this);
}
}
exitRule(listener) {
if (listener.exitCompactionType) {
listener.exitCompactionType(this);
}
}
accept(visitor) {
if (visitor.visitCompactionType) {
return visitor.visitCompactionType(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CompactionStatusContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_STATUS() {
return this.getToken(HiveSqlParser.KW_STATUS, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_compactionStatus;
}
enterRule(listener) {
if (listener.enterCompactionStatus) {
listener.enterCompactionStatus(this);
}
}
exitRule(listener) {
if (listener.exitCompactionStatus) {
listener.exitCompactionStatus(this);
}
}
accept(visitor) {
if (visitor.visitCompactionStatus) {
return visitor.visitCompactionStatus(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ALTER() {
return this.getToken(HiveSqlParser.KW_ALTER, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
alterTableStatementSuffix() {
return this.getRuleContext(0, AlterTableStatementSuffixContext);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
viewName() {
return this.getRuleContext(0, ViewNameContext);
}
alterViewStatementSuffix() {
return this.getRuleContext(0, AlterViewStatementSuffixContext);
}
KW_MATERIALIZED() {
return this.getToken(HiveSqlParser.KW_MATERIALIZED, 0);
}
db_schema() {
return this.getRuleContext(0, Db_schemaContext);
}
alterDatabaseStatementSuffix() {
return this.getRuleContext(0, AlterDatabaseStatementSuffixContext);
}
KW_DATACONNECTOR() {
return this.getToken(HiveSqlParser.KW_DATACONNECTOR, 0);
}
alterDataConnectorStatementSuffix() {
return this.getRuleContext(0, AlterDataConnectorStatementSuffixContext);
}
KW_INDEX() {
return this.getToken(HiveSqlParser.KW_INDEX, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
tableOrPartition() {
return this.getRuleContext(0, TableOrPartitionContext);
}
KW_REBUILD() {
return this.getToken(HiveSqlParser.KW_REBUILD, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
rewriteEnabled() {
return this.getRuleContext(0, RewriteEnabledContext);
}
rewriteDisabled() {
return this.getRuleContext(0, RewriteDisabledContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterStatement;
}
enterRule(listener) {
if (listener.enterAlterStatement) {
listener.enterAlterStatement(this);
}
}
exitRule(listener) {
if (listener.exitAlterStatement) {
listener.exitAlterStatement(this);
}
}
accept(visitor) {
if (visitor.visitAlterStatement) {
return visitor.visitAlterStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterTableStatementSuffixContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_RENAME() {
return this.getToken(HiveSqlParser.KW_RENAME, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
tableNameCreate() {
return this.getRuleContext(0, TableNameCreateContext);
}
KW_RECOVER() {
return this.getToken(HiveSqlParser.KW_RECOVER, 0);
}
KW_PARTITIONS() {
return this.getToken(HiveSqlParser.KW_PARTITIONS, 0);
}
alterStatementSuffixDropPartitions() {
return this.getRuleContext(0, AlterStatementSuffixDropPartitionsContext);
}
KW_ADD() {
return this.getToken(HiveSqlParser.KW_ADD, 0);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
partitionSpec(i) {
if (i === undefined) {
return this.getRuleContexts(PartitionSpecContext);
}
return this.getRuleContext(i, PartitionSpecContext);
}
locationPath(i) {
if (i === undefined) {
return this.getRuleContexts(LocationPathContext);
}
return this.getRuleContext(i, LocationPathContext);
}
KW_TOUCH() {
return this.getToken(HiveSqlParser.KW_TOUCH, 0);
}
KW_ARCHIVE() {
return this.getToken(HiveSqlParser.KW_ARCHIVE, 0);
}
KW_UNARCHIVE() {
return this.getToken(HiveSqlParser.KW_UNARCHIVE, 0);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_TBLPROPERTIES() {
return this.getToken(HiveSqlParser.KW_TBLPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
KW_UNSET() {
return this.getToken(HiveSqlParser.KW_UNSET, 0);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
tableSkewed() {
return this.getRuleContext(0, TableSkewedContext);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_SKEWED() {
return this.getToken(HiveSqlParser.KW_SKEWED, 0);
}
storedAsDirs() {
return this.getRuleContext(0, StoredAsDirsContext);
}
KW_EXCHANGE() {
return this.getToken(HiveSqlParser.KW_EXCHANGE, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
KW_PARTITION() {
return this.getToken(HiveSqlParser.KW_PARTITION, 0);
}
KW_COLUMN() {
return this.getToken(HiveSqlParser.KW_COLUMN, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameType() {
return this.getRuleContext(0, ColumnNameTypeContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_CONSTRAINT() {
return this.getToken(HiveSqlParser.KW_CONSTRAINT, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
alterConstraintWithName() {
return this.getRuleContext(0, AlterConstraintWithNameContext);
}
alterForeignKeyWithName() {
return this.getRuleContext(0, AlterForeignKeyWithNameContext);
}
alterTblPartitionStatementSuffix() {
return this.getRuleContext(0, AlterTblPartitionStatementSuffixContext);
}
KW_OWNER() {
return this.getToken(HiveSqlParser.KW_OWNER, 0);
}
principalName() {
return this.getRuleContext(0, PrincipalNameContext);
}
KW_SPEC() {
return this.getToken(HiveSqlParser.KW_SPEC, 0);
}
partitionTransformSpec() {
return this.getRuleContext(0, PartitionTransformSpecContext);
}
alterStatementSuffixExecute() {
return this.getRuleContext(0, AlterStatementSuffixExecuteContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterTableStatementSuffix;
}
enterRule(listener) {
if (listener.enterAlterTableStatementSuffix) {
listener.enterAlterTableStatementSuffix(this);
}
}
exitRule(listener) {
if (listener.exitAlterTableStatementSuffix) {
listener.exitAlterTableStatementSuffix(this);
}
}
accept(visitor) {
if (visitor.visitAlterTableStatementSuffix) {
return visitor.visitAlterTableStatementSuffix(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterTblPartitionStatementSuffixContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_FILEFORMAT() {
return this.getToken(HiveSqlParser.KW_FILEFORMAT, 0);
}
fileFormat() {
return this.getRuleContext(0, FileFormatContext);
}
KW_LOCATION() {
return this.getToken(HiveSqlParser.KW_LOCATION, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_CONCATENATE() {
return this.getToken(HiveSqlParser.KW_CONCATENATE, 0);
}
KW_SERDE() {
return this.getToken(HiveSqlParser.KW_SERDE, 0);
}
KW_SERDEPROPERTIES() {
return this.getToken(HiveSqlParser.KW_SERDEPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_UNSET() {
return this.getToken(HiveSqlParser.KW_UNSET, 0);
}
KW_RENAME() {
return this.getToken(HiveSqlParser.KW_RENAME, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
partitionSpec() {
return this.getRuleContext(0, PartitionSpecContext);
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
KW_BUCKETS() {
return this.getToken(HiveSqlParser.KW_BUCKETS, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
KW_SKEWED() {
return this.getToken(HiveSqlParser.KW_SKEWED, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
skewedLocationMap(i) {
if (i === undefined) {
return this.getRuleContexts(SkewedLocationMapContext);
}
return this.getRuleContext(i, SkewedLocationMapContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_CLUSTERED() {
return this.getToken(HiveSqlParser.KW_CLUSTERED, 0);
}
KW_SORTED() {
return this.getToken(HiveSqlParser.KW_SORTED, 0);
}
tableBuckets() {
return this.getRuleContext(0, TableBucketsContext);
}
KW_COMPACT() {
return this.getToken(HiveSqlParser.KW_COMPACT, 0);
}
KW_AND() {
return this.getToken(HiveSqlParser.KW_AND, 0);
}
KW_WAIT() {
return this.getToken(HiveSqlParser.KW_WAIT, 0);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
compactionPool() {
return this.getRuleContext(0, CompactionPoolContext);
}
KW_OVERWRITE() {
return this.getToken(HiveSqlParser.KW_OVERWRITE, 0);
}
KW_TBLPROPERTIES() {
return this.getToken(HiveSqlParser.KW_TBLPROPERTIES, 0);
}
KW_UPDATE() {
return this.getToken(HiveSqlParser.KW_UPDATE, 0);
}
KW_STATISTICS() {
return this.getToken(HiveSqlParser.KW_STATISTICS, 0);
}
KW_FOR() {
return this.getToken(HiveSqlParser.KW_FOR, 0);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
KW_COLUMN() {
return this.getToken(HiveSqlParser.KW_COLUMN, 0);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
KW_CHANGE() {
return this.getToken(HiveSqlParser.KW_CHANGE, 0);
}
columnType() {
return this.getRuleContext(0, ColumnTypeContext);
}
columnNameCreate() {
return this.getRuleContext(0, ColumnNameCreateContext);
}
alterColumnConstraint() {
return this.getRuleContext(0, AlterColumnConstraintContext);
}
KW_AFTER() {
return this.getToken(HiveSqlParser.KW_AFTER, 0);
}
restrictOrCascade() {
return this.getRuleContext(0, RestrictOrCascadeContext);
}
KW_FIRST() {
return this.getToken(HiveSqlParser.KW_FIRST, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_COLUMNS() {
return this.getToken(HiveSqlParser.KW_COLUMNS, 0);
}
columnNameTypeList() {
return this.getRuleContext(0, ColumnNameTypeListContext);
}
KW_ADD() {
return this.getToken(HiveSqlParser.KW_ADD, 0);
}
KW_REPLACE() {
return this.getToken(HiveSqlParser.KW_REPLACE, 0);
}
enableSpecification() {
return this.getRuleContext(0, EnableSpecificationContext);
}
KW_OFFLINE() {
return this.getToken(HiveSqlParser.KW_OFFLINE, 0);
}
KW_NO_DROP() {
return this.getToken(HiveSqlParser.KW_NO_DROP, 0);
}
KW_CASCADE() {
return this.getToken(HiveSqlParser.KW_CASCADE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterTblPartitionStatementSuffix;
}
enterRule(listener) {
if (listener.enterAlterTblPartitionStatementSuffix) {
listener.enterAlterTblPartitionStatementSuffix(this);
}
}
exitRule(listener) {
if (listener.exitAlterTblPartitionStatementSuffix) {
listener.exitAlterTblPartitionStatementSuffix(this);
}
}
accept(visitor) {
if (visitor.visitAlterTblPartitionStatementSuffix) {
return visitor.visitAlterTblPartitionStatementSuffix(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterViewStatementSuffixContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_TBLPROPERTIES() {
return this.getToken(HiveSqlParser.KW_TBLPROPERTIES, 0);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
KW_UNSET() {
return this.getToken(HiveSqlParser.KW_UNSET, 0);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
KW_RENAME() {
return this.getToken(HiveSqlParser.KW_RENAME, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
tableNameCreate() {
return this.getRuleContext(0, TableNameCreateContext);
}
KW_ADD() {
return this.getToken(HiveSqlParser.KW_ADD, 0);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
partitionSpec(i) {
if (i === undefined) {
return this.getRuleContexts(PartitionSpecContext);
}
return this.getRuleContext(i, PartitionSpecContext);
}
locationPath(i) {
if (i === undefined) {
return this.getRuleContexts(LocationPathContext);
}
return this.getRuleContext(i, LocationPathContext);
}
alterStatementSuffixDropPartitions() {
return this.getRuleContext(0, AlterStatementSuffixDropPartitionsContext);
}
selectStatementWithCTE() {
return this.getRuleContext(0, SelectStatementWithCTEContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterViewStatementSuffix;
}
enterRule(listener) {
if (listener.enterAlterViewStatementSuffix) {
listener.enterAlterViewStatementSuffix(this);
}
}
exitRule(listener) {
if (listener.exitAlterViewStatementSuffix) {
listener.exitAlterViewStatementSuffix(this);
}
}
accept(visitor) {
if (visitor.visitAlterViewStatementSuffix) {
return visitor.visitAlterViewStatementSuffix(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterDatabaseStatementSuffixContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_DBPROPERTIES() {
return this.getToken(HiveSqlParser.KW_DBPROPERTIES, 0);
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
KW_OWNER() {
return this.getToken(HiveSqlParser.KW_OWNER, 0);
}
principalAlterName() {
return this.getRuleContext(0, PrincipalAlterNameContext);
}
KW_LOCATION() {
return this.getToken(HiveSqlParser.KW_LOCATION, 0);
}
KW_MANAGEDLOCATION() {
return this.getToken(HiveSqlParser.KW_MANAGEDLOCATION, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterDatabaseStatementSuffix;
}
enterRule(listener) {
if (listener.enterAlterDatabaseStatementSuffix) {
listener.enterAlterDatabaseStatementSuffix(this);
}
}
exitRule(listener) {
if (listener.exitAlterDatabaseStatementSuffix) {
listener.exitAlterDatabaseStatementSuffix(this);
}
}
accept(visitor) {
if (visitor.visitAlterDatabaseStatementSuffix) {
return visitor.visitAlterDatabaseStatementSuffix(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterDataConnectorStatementSuffixContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_DCPROPERTIES() {
return this.getToken(HiveSqlParser.KW_DCPROPERTIES, 0);
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
dbSchemaName() {
return this.getRuleContext(0, DbSchemaNameContext);
}
KW_OWNER() {
return this.getToken(HiveSqlParser.KW_OWNER, 0);
}
principalAlterName() {
return this.getRuleContext(0, PrincipalAlterNameContext);
}
KW_URL() {
return this.getToken(HiveSqlParser.KW_URL, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterDataConnectorStatementSuffix;
}
enterRule(listener) {
if (listener.enterAlterDataConnectorStatementSuffix) {
listener.enterAlterDataConnectorStatementSuffix(this);
}
}
exitRule(listener) {
if (listener.exitAlterDataConnectorStatementSuffix) {
listener.exitAlterDataConnectorStatementSuffix(this);
}
}
accept(visitor) {
if (visitor.visitAlterDataConnectorStatementSuffix) {
return visitor.visitAlterDataConnectorStatementSuffix(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LocationPathContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LOCATION() {
return this.getToken(HiveSqlParser.KW_LOCATION, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_locationPath;
}
enterRule(listener) {
if (listener.enterLocationPath) {
listener.enterLocationPath(this);
}
}
exitRule(listener) {
if (listener.exitLocationPath) {
listener.exitLocationPath(this);
}
}
accept(visitor) {
if (visitor.visitLocationPath) {
return visitor.visitLocationPath(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterStatementSuffixDropPartitionsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_PARTITION(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_PARTITION);
}
else {
return this.getToken(HiveSqlParser.KW_PARTITION, i);
}
}
partitionSelectorSpec(i) {
if (i === undefined) {
return this.getRuleContexts(PartitionSelectorSpecContext);
}
return this.getRuleContext(i, PartitionSelectorSpecContext);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
KW_IGNORE() {
return this.getToken(HiveSqlParser.KW_IGNORE, 0);
}
KW_PROTECTION() {
return this.getToken(HiveSqlParser.KW_PROTECTION, 0);
}
KW_PURGE() {
return this.getToken(HiveSqlParser.KW_PURGE, 0);
}
replicationClause() {
return this.getRuleContext(0, ReplicationClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterStatementSuffixDropPartitions;
}
enterRule(listener) {
if (listener.enterAlterStatementSuffixDropPartitions) {
listener.enterAlterStatementSuffixDropPartitions(this);
}
}
exitRule(listener) {
if (listener.exitAlterStatementSuffixDropPartitions) {
listener.exitAlterStatementSuffixDropPartitions(this);
}
}
accept(visitor) {
if (visitor.visitAlterStatementSuffixDropPartitions) {
return visitor.visitAlterStatementSuffixDropPartitions(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SkewedLocationMapContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
constant() {
return this.getRuleContext(0, ConstantContext);
}
skewedColumnValuePair() {
return this.getRuleContext(0, SkewedColumnValuePairContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_skewedLocationMap;
}
enterRule(listener) {
if (listener.enterSkewedLocationMap) {
listener.enterSkewedLocationMap(this);
}
}
exitRule(listener) {
if (listener.exitSkewedLocationMap) {
listener.exitSkewedLocationMap(this);
}
}
accept(visitor) {
if (visitor.visitSkewedLocationMap) {
return visitor.visitSkewedLocationMap(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AlterStatementSuffixExecuteContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_EXECUTE() {
return this.getToken(HiveSqlParser.KW_EXECUTE, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_ROLLBACK() {
return this.getToken(HiveSqlParser.KW_ROLLBACK, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
KW_EXPIRE_SNAPSHOTS() {
return this.getToken(HiveSqlParser.KW_EXPIRE_SNAPSHOTS, 0);
}
KW_SET_CURRENT_SNAPSHOT() {
return this.getToken(HiveSqlParser.KW_SET_CURRENT_SNAPSHOT, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_alterStatementSuffixExecute;
}
enterRule(listener) {
if (listener.enterAlterStatementSuffixExecute) {
listener.enterAlterStatementSuffixExecute(this);
}
}
exitRule(listener) {
if (listener.exitAlterStatementSuffixExecute) {
listener.exitAlterStatementSuffixExecute(this);
}
}
accept(visitor) {
if (visitor.visitAlterStatementSuffixExecute) {
return visitor.visitAlterStatementSuffixExecute(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FileFormatContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_INPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_INPUTFORMAT, 0);
}
KW_OUTPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_OUTPUTFORMAT, 0);
}
KW_SERDE() {
return this.getToken(HiveSqlParser.KW_SERDE, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
KW_INPUTDRIVER() {
return this.getToken(HiveSqlParser.KW_INPUTDRIVER, 0);
}
KW_OUTPUTDRIVER() {
return this.getToken(HiveSqlParser.KW_OUTPUTDRIVER, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_fileFormat;
}
enterRule(listener) {
if (listener.enterFileFormat) {
listener.enterFileFormat(this);
}
}
exitRule(listener) {
if (listener.exitFileFormat) {
listener.exitFileFormat(this);
}
}
accept(visitor) {
if (visitor.visitFileFormat) {
return visitor.visitFileFormat(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LikeTableOrFileContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
KW_FILE() {
return this.getToken(HiveSqlParser.KW_FILE, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_likeTableOrFile;
}
enterRule(listener) {
if (listener.enterLikeTableOrFile) {
listener.enterLikeTableOrFile(this);
}
}
exitRule(listener) {
if (listener.exitLikeTableOrFile) {
listener.exitLikeTableOrFile(this);
}
}
accept(visitor) {
if (visitor.visitLikeTableOrFile) {
return visitor.visitLikeTableOrFile(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateTableStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
tableNameCreate() {
return this.getRuleContext(0, TableNameCreateContext);
}
likeTableOrFile() {
return this.getRuleContext(0, LikeTableOrFileContext);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
KW_TEMPORARY() {
return this.getToken(HiveSqlParser.KW_TEMPORARY, 0);
}
KW_TRANSACTIONAL() {
return this.getToken(HiveSqlParser.KW_TRANSACTIONAL, 0);
}
KW_EXTERNAL() {
return this.getToken(HiveSqlParser.KW_EXTERNAL, 0);
}
createTablePartitionSpec() {
return this.getRuleContext(0, CreateTablePartitionSpecContext);
}
tableRowFormat() {
return this.getRuleContext(0, TableRowFormatContext);
}
tableFileFormat() {
return this.getRuleContext(0, TableFileFormatContext);
}
locationPath() {
return this.getRuleContext(0, LocationPathContext);
}
tablePropertiesPrefixed() {
return this.getRuleContext(0, TablePropertiesPrefixedContext);
}
tableLifecycle() {
return this.getRuleContext(0, TableLifecycleContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnNameTypeOrConstraintList() {
return this.getRuleContext(0, ColumnNameTypeOrConstraintListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
tableComment() {
return this.getRuleContext(0, TableCommentContext);
}
tableBuckets() {
return this.getRuleContext(0, TableBucketsContext);
}
tableSkewed() {
return this.getRuleContext(0, TableSkewedContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
selectStatementWithCTE() {
return this.getRuleContext(0, SelectStatementWithCTEContext);
}
KW_MANAGED() {
return this.getToken(HiveSqlParser.KW_MANAGED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_createTableStatement;
}
enterRule(listener) {
if (listener.enterCreateTableStatement) {
listener.enterCreateTableStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateTableStatement) {
listener.exitCreateTableStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateTableStatement) {
return visitor.visitCreateTableStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CreateDataConnectorStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_DATACONNECTOR() {
return this.getToken(HiveSqlParser.KW_DATACONNECTOR, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
KW_TYPE() {
return this.getToken(HiveSqlParser.KW_TYPE, 0);
}
KW_URL() {
return this.getToken(HiveSqlParser.KW_URL, 0);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_DCPROPERTIES() {
return this.getToken(HiveSqlParser.KW_DCPROPERTIES, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
keyValueProperties() {
return this.getRuleContext(0, KeyValuePropertiesContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_createDataConnectorStatement;
}
enterRule(listener) {
if (listener.enterCreateDataConnectorStatement) {
listener.enterCreateDataConnectorStatement(this);
}
}
exitRule(listener) {
if (listener.exitCreateDataConnectorStatement) {
listener.exitCreateDataConnectorStatement(this);
}
}
accept(visitor) {
if (visitor.visitCreateDataConnectorStatement) {
return visitor.visitCreateDataConnectorStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DropDataConnectorStatementContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_DATACONNECTOR() {
return this.getToken(HiveSqlParser.KW_DATACONNECTOR, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_dropDataConnectorStatement;
}
enterRule(listener) {
if (listener.enterDropDataConnectorStatement) {
listener.enterDropDataConnectorStatement(this);
}
}
exitRule(listener) {
if (listener.exitDropDataConnectorStatement) {
listener.exitDropDataConnectorStatement(this);
}
}
accept(visitor) {
if (visitor.visitDropDataConnectorStatement) {
return visitor.visitDropDataConnectorStatement(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableAllColumnsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
STAR() {
return this.getToken(HiveSqlParser.STAR, 0);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_tableAllColumns;
}
enterRule(listener) {
if (listener.enterTableAllColumns) {
listener.enterTableAllColumns(this);
}
}
exitRule(listener) {
if (listener.exitTableAllColumns) {
listener.exitTableAllColumns(this);
}
}
accept(visitor) {
if (visitor.visitTableAllColumns) {
return visitor.visitTableAllColumns(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExpressionListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_expressionList;
}
enterRule(listener) {
if (listener.enterExpressionList) {
listener.enterExpressionList(this);
}
}
exitRule(listener) {
if (listener.exitExpressionList) {
listener.exitExpressionList(this);
}
}
accept(visitor) {
if (visitor.visitExpressionList) {
return visitor.visitExpressionList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AliasListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_aliasList;
}
enterRule(listener) {
if (listener.enterAliasList) {
listener.enterAliasList(this);
}
}
exitRule(listener) {
if (listener.exitAliasList) {
listener.exitAliasList(this);
}
}
accept(visitor) {
if (visitor.visitAliasList) {
return visitor.visitAliasList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FromClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
fromSource() {
return this.getRuleContext(0, FromSourceContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_fromClause;
}
enterRule(listener) {
if (listener.enterFromClause) {
listener.enterFromClause(this);
}
}
exitRule(listener) {
if (listener.exitFromClause) {
listener.exitFromClause(this);
}
}
accept(visitor) {
if (visitor.visitFromClause) {
return visitor.visitFromClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FromSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_UNIQUEJOIN() {
return this.getToken(HiveSqlParser.KW_UNIQUEJOIN, 0);
}
uniqueJoinSource(i) {
if (i === undefined) {
return this.getRuleContexts(UniqueJoinSourceContext);
}
return this.getRuleContext(i, UniqueJoinSourceContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
joinSource() {
return this.getRuleContext(0, JoinSourceContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_fromSource;
}
enterRule(listener) {
if (listener.enterFromSource) {
listener.enterFromSource(this);
}
}
exitRule(listener) {
if (listener.exitFromSource) {
listener.exitFromSource(this);
}
}
accept(visitor) {
if (visitor.visitFromSource) {
return visitor.visitFromSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AtomjoinSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableSource() {
return this.getRuleContext(0, TableSourceContext);
}
lateralView(i) {
if (i === undefined) {
return this.getRuleContexts(LateralViewContext);
}
return this.getRuleContext(i, LateralViewContext);
}
virtualTableSource() {
return this.getRuleContext(0, VirtualTableSourceContext);
}
subQuerySource() {
return this.getRuleContext(0, SubQuerySourceContext);
}
partitionedTableFunction() {
return this.getRuleContext(0, PartitionedTableFunctionContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
joinSource() {
return this.getRuleContext(0, JoinSourceContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_atomjoinSource;
}
enterRule(listener) {
if (listener.enterAtomjoinSource) {
listener.enterAtomjoinSource(this);
}
}
exitRule(listener) {
if (listener.exitAtomjoinSource) {
listener.exitAtomjoinSource(this);
}
}
accept(visitor) {
if (visitor.visitAtomjoinSource) {
return visitor.visitAtomjoinSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class JoinSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
atomjoinSource() {
return this.getRuleContext(0, AtomjoinSourceContext);
}
joinToken(i) {
if (i === undefined) {
return this.getRuleContexts(JoinTokenContext);
}
return this.getRuleContext(i, JoinTokenContext);
}
joinSourcePart(i) {
if (i === undefined) {
return this.getRuleContexts(JoinSourcePartContext);
}
return this.getRuleContext(i, JoinSourcePartContext);
}
KW_ON(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_ON);
}
else {
return this.getToken(HiveSqlParser.KW_ON, i);
}
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
KW_USING(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_USING);
}
else {
return this.getToken(HiveSqlParser.KW_USING, i);
}
}
columnParenthesesList(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnParenthesesListContext);
}
return this.getRuleContext(i, ColumnParenthesesListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_joinSource;
}
enterRule(listener) {
if (listener.enterJoinSource) {
listener.enterJoinSource(this);
}
}
exitRule(listener) {
if (listener.exitJoinSource) {
listener.exitJoinSource(this);
}
}
accept(visitor) {
if (visitor.visitJoinSource) {
return visitor.visitJoinSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class JoinSourcePartContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableSource() {
return this.getRuleContext(0, TableSourceContext);
}
virtualTableSource() {
return this.getRuleContext(0, VirtualTableSourceContext);
}
subQuerySource() {
return this.getRuleContext(0, SubQuerySourceContext);
}
partitionedTableFunction() {
return this.getRuleContext(0, PartitionedTableFunctionContext);
}
lateralView(i) {
if (i === undefined) {
return this.getRuleContexts(LateralViewContext);
}
return this.getRuleContext(i, LateralViewContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_joinSourcePart;
}
enterRule(listener) {
if (listener.enterJoinSourcePart) {
listener.enterJoinSourcePart(this);
}
}
exitRule(listener) {
if (listener.exitJoinSourcePart) {
listener.exitJoinSourcePart(this);
}
}
accept(visitor) {
if (visitor.visitJoinSourcePart) {
return visitor.visitJoinSourcePart(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class UniqueJoinSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
expressionList() {
return this.getRuleContext(0, ExpressionListContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
tableOrView() {
return this.getRuleContext(0, TableOrViewContext);
}
KW_PRESERVE() {
return this.getToken(HiveSqlParser.KW_PRESERVE, 0);
}
tableSample() {
return this.getRuleContext(0, TableSampleContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_uniqueJoinSource;
}
enterRule(listener) {
if (listener.enterUniqueJoinSource) {
listener.enterUniqueJoinSource(this);
}
}
exitRule(listener) {
if (listener.exitUniqueJoinSource) {
listener.exitUniqueJoinSource(this);
}
}
accept(visitor) {
if (visitor.visitUniqueJoinSource) {
return visitor.visitUniqueJoinSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class JoinTokenContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
COMMA() {
return this.getToken(HiveSqlParser.COMMA, 0);
}
KW_JOIN() {
return this.getToken(HiveSqlParser.KW_JOIN, 0);
}
KW_INNER() {
return this.getToken(HiveSqlParser.KW_INNER, 0);
}
KW_CROSS() {
return this.getToken(HiveSqlParser.KW_CROSS, 0);
}
KW_LEFT() {
return this.getToken(HiveSqlParser.KW_LEFT, 0);
}
KW_RIGHT() {
return this.getToken(HiveSqlParser.KW_RIGHT, 0);
}
KW_FULL() {
return this.getToken(HiveSqlParser.KW_FULL, 0);
}
KW_OUTER() {
return this.getToken(HiveSqlParser.KW_OUTER, 0);
}
KW_SEMI() {
return this.getToken(HiveSqlParser.KW_SEMI, 0);
}
KW_ANTI() {
return this.getToken(HiveSqlParser.KW_ANTI, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_joinToken;
}
enterRule(listener) {
if (listener.enterJoinToken) {
listener.enterJoinToken(this);
}
}
exitRule(listener) {
if (listener.exitJoinToken) {
listener.exitJoinToken(this);
}
}
accept(visitor) {
if (visitor.visitJoinToken) {
return visitor.visitJoinToken(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class LateralViewContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LATERAL() {
return this.getToken(HiveSqlParser.KW_LATERAL, 0);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
KW_OUTER() {
return this.getToken(HiveSqlParser.KW_OUTER, 0);
}
function_() {
return this.getRuleContext(0, Function_Context);
}
tableAlias() {
return this.getRuleContext(0, TableAliasContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
valuesClause() {
return this.getRuleContext(0, ValuesClauseContext);
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_lateralView;
}
enterRule(listener) {
if (listener.enterLateralView) {
listener.enterLateralView(this);
}
}
exitRule(listener) {
if (listener.exitLateralView) {
listener.exitLateralView(this);
}
}
accept(visitor) {
if (visitor.visitLateralView) {
return visitor.visitLateralView(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableAliasContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableAlias;
}
enterRule(listener) {
if (listener.enterTableAlias) {
listener.enterTableAlias(this);
}
}
exitRule(listener) {
if (listener.exitTableAlias) {
listener.exitTableAlias(this);
}
}
accept(visitor) {
if (visitor.visitTableAlias) {
return visitor.visitTableAlias(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableSampleContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
this._expr = [];
}
KW_TABLESAMPLE() {
return this.getToken(HiveSqlParser.KW_TABLESAMPLE, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
KW_BUCKET() {
return this.getToken(HiveSqlParser.KW_BUCKET, 0);
}
KW_OUT() {
return this.getToken(HiveSqlParser.KW_OUT, 0);
}
KW_OF() {
return this.getToken(HiveSqlParser.KW_OF, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
Number(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.Number);
}
else {
return this.getToken(HiveSqlParser.Number, i);
}
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
ByteLengthLiteral() {
return this.getToken(HiveSqlParser.ByteLengthLiteral, 0);
}
KW_PERCENT() {
return this.getToken(HiveSqlParser.KW_PERCENT, 0);
}
KW_ROWS() {
return this.getToken(HiveSqlParser.KW_ROWS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableSample;
}
enterRule(listener) {
if (listener.enterTableSample) {
listener.enterTableSample(this);
}
}
exitRule(listener) {
if (listener.exitTableSample) {
listener.exitTableSample(this);
}
}
accept(visitor) {
if (visitor.visitTableSample) {
return visitor.visitTableSample(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableOrView() {
return this.getRuleContext(0, TableOrViewContext);
}
tableProperties() {
return this.getRuleContext(0, TablePropertiesContext);
}
tableSample() {
return this.getRuleContext(0, TableSampleContext);
}
asOfClause() {
return this.getRuleContext(0, AsOfClauseContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableSource;
}
enterRule(listener) {
if (listener.enterTableSource) {
listener.enterTableSource(this);
}
}
exitRule(listener) {
if (listener.exitTableSource) {
listener.exitTableSource(this);
}
}
accept(visitor) {
if (visitor.visitTableSource) {
return visitor.visitTableSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AsOfClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FOR(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_FOR);
}
else {
return this.getToken(HiveSqlParser.KW_FOR, i);
}
}
KW_SYSTEM_TIME() {
return this.getToken(HiveSqlParser.KW_SYSTEM_TIME, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
KW_OF() {
return this.getToken(HiveSqlParser.KW_OF, 0);
}
KW_SYSTEM_VERSION() {
return this.getToken(HiveSqlParser.KW_SYSTEM_VERSION, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_asOfClause;
}
enterRule(listener) {
if (listener.enterAsOfClause) {
listener.enterAsOfClause(this);
}
}
exitRule(listener) {
if (listener.exitAsOfClause) {
listener.exitAsOfClause(this);
}
}
accept(visitor) {
if (visitor.visitAsOfClause) {
return visitor.visitAsOfClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DbSchemaNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_dbSchemaName;
}
enterRule(listener) {
if (listener.enterDbSchemaName) {
listener.enterDbSchemaName(this);
}
}
exitRule(listener) {
if (listener.exitDbSchemaName) {
listener.exitDbSchemaName(this);
}
}
accept(visitor) {
if (visitor.visitDbSchemaName) {
return visitor.visitDbSchemaName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DbSchemaNameCreateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_dbSchemaNameCreate;
}
enterRule(listener) {
if (listener.enterDbSchemaNameCreate) {
listener.enterDbSchemaNameCreate(this);
}
}
exitRule(listener) {
if (listener.exitDbSchemaNameCreate) {
listener.exitDbSchemaNameCreate(this);
}
}
accept(visitor) {
if (visitor.visitDbSchemaNameCreate) {
return visitor.visitDbSchemaNameCreate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableOrViewContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
viewName() {
return this.getRuleContext(0, ViewNameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableOrView;
}
enterRule(listener) {
if (listener.enterTableOrView) {
listener.enterTableOrView(this);
}
}
exitRule(listener) {
if (listener.exitTableOrView) {
listener.exitTableOrView(this);
}
}
accept(visitor) {
if (visitor.visitTableOrView) {
return visitor.visitTableOrView(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableName;
}
enterRule(listener) {
if (listener.enterTableName) {
listener.enterTableName(this);
}
}
exitRule(listener) {
if (listener.exitTableName) {
listener.exitTableName(this);
}
}
accept(visitor) {
if (visitor.visitTableName) {
return visitor.visitTableName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableNameCreateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableNameCreate;
}
enterRule(listener) {
if (listener.enterTableNameCreate) {
listener.enterTableNameCreate(this);
}
}
exitRule(listener) {
if (listener.exitTableNameCreate) {
listener.exitTableNameCreate(this);
}
}
accept(visitor) {
if (visitor.visitTableNameCreate) {
return visitor.visitTableNameCreate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
DOT() {
return this.getToken(HiveSqlParser.DOT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewName;
}
enterRule(listener) {
if (listener.enterViewName) {
listener.enterViewName(this);
}
}
exitRule(listener) {
if (listener.exitViewName) {
listener.exitViewName(this);
}
}
accept(visitor) {
if (visitor.visitViewName) {
return visitor.visitViewName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ViewNameCreateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
DOT() {
return this.getToken(HiveSqlParser.DOT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_viewNameCreate;
}
enterRule(listener) {
if (listener.enterViewNameCreate) {
listener.enterViewNameCreate(this);
}
}
exitRule(listener) {
if (listener.exitViewNameCreate) {
listener.exitViewNameCreate(this);
}
}
accept(visitor) {
if (visitor.visitViewNameCreate) {
return visitor.visitViewNameCreate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SubQuerySourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
queryStatementExpression() {
return this.getRuleContext(0, QueryStatementExpressionContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_subQuerySource;
}
enterRule(listener) {
if (listener.enterSubQuerySource) {
listener.enterSubQuerySource(this);
}
}
exitRule(listener) {
if (listener.exitSubQuerySource) {
listener.exitSubQuerySource(this);
}
}
accept(visitor) {
if (visitor.visitSubQuerySource) {
return visitor.visitSubQuerySource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitioningSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
partitionByClause() {
return this.getRuleContext(0, PartitionByClauseContext);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
distributeByClause() {
return this.getRuleContext(0, DistributeByClauseContext);
}
sortByClause() {
return this.getRuleContext(0, SortByClauseContext);
}
clusterByClause() {
return this.getRuleContext(0, ClusterByClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_partitioningSpec;
}
enterRule(listener) {
if (listener.enterPartitioningSpec) {
listener.enterPartitioningSpec(this);
}
}
exitRule(listener) {
if (listener.exitPartitioningSpec) {
listener.exitPartitioningSpec(this);
}
}
accept(visitor) {
if (visitor.visitPartitioningSpec) {
return visitor.visitPartitioningSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionTableFunctionSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
subQuerySource() {
return this.getRuleContext(0, SubQuerySourceContext);
}
tableSource() {
return this.getRuleContext(0, TableSourceContext);
}
partitionedTableFunction() {
return this.getRuleContext(0, PartitionedTableFunctionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionTableFunctionSource;
}
enterRule(listener) {
if (listener.enterPartitionTableFunctionSource) {
listener.enterPartitionTableFunctionSource(this);
}
}
exitRule(listener) {
if (listener.exitPartitionTableFunctionSource) {
listener.exitPartitionTableFunctionSource(this);
}
}
accept(visitor) {
if (visitor.visitPartitionTableFunctionSource) {
return visitor.visitPartitionTableFunctionSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionedTableFunctionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
partitionTableFunctionSource() {
return this.getRuleContext(0, PartitionTableFunctionSourceContext);
}
Identifier(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.Identifier);
}
else {
return this.getToken(HiveSqlParser.Identifier, i);
}
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
partitioningSpec() {
return this.getRuleContext(0, PartitioningSpecContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionedTableFunction;
}
enterRule(listener) {
if (listener.enterPartitionedTableFunction) {
listener.enterPartitionedTableFunction(this);
}
}
exitRule(listener) {
if (listener.exitPartitionedTableFunction) {
listener.exitPartitionedTableFunction(this);
}
}
accept(visitor) {
if (visitor.visitPartitionedTableFunction) {
return visitor.visitPartitionedTableFunction(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WhereClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WHERE() {
return this.getToken(HiveSqlParser.KW_WHERE, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_whereClause;
}
enterRule(listener) {
if (listener.enterWhereClause) {
listener.enterWhereClause(this);
}
}
exitRule(listener) {
if (listener.exitWhereClause) {
listener.exitWhereClause(this);
}
}
accept(visitor) {
if (visitor.visitWhereClause) {
return visitor.visitWhereClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ValuesClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_VALUES() {
return this.getToken(HiveSqlParser.KW_VALUES, 0);
}
expressionsInParenthesis(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionsInParenthesisContext);
}
return this.getRuleContext(i, ExpressionsInParenthesisContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
firstExpressionsWithAlias() {
return this.getRuleContext(0, FirstExpressionsWithAliasContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_valuesClause;
}
enterRule(listener) {
if (listener.enterValuesClause) {
listener.enterValuesClause(this);
}
}
exitRule(listener) {
if (listener.exitValuesClause) {
listener.exitValuesClause(this);
}
}
accept(visitor) {
if (visitor.visitValuesClause) {
return visitor.visitValuesClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class VirtualTableSourceContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
valuesClause() {
return this.getRuleContext(0, ValuesClauseContext);
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
tableAlias() {
return this.getRuleContext(0, TableAliasContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_virtualTableSource;
}
enterRule(listener) {
if (listener.enterVirtualTableSource) {
listener.enterVirtualTableSource(this);
}
}
exitRule(listener) {
if (listener.exitVirtualTableSource) {
listener.exitVirtualTableSource(this);
}
}
accept(visitor) {
if (visitor.visitVirtualTableSource) {
return visitor.visitVirtualTableSource(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SELECT() {
return this.getToken(HiveSqlParser.KW_SELECT, 0);
}
selectItem(i) {
if (i === undefined) {
return this.getRuleContexts(SelectItemContext);
}
return this.getRuleContext(i, SelectItemContext);
}
KW_TRANSFORM() {
return this.getToken(HiveSqlParser.KW_TRANSFORM, 0);
}
selectTrfmClause() {
return this.getRuleContext(0, SelectTrfmClauseContext);
}
QUERY_HINT() {
return this.getToken(HiveSqlParser.QUERY_HINT, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
KW_DISTINCT() {
return this.getToken(HiveSqlParser.KW_DISTINCT, 0);
}
trfmClause() {
return this.getRuleContext(0, TrfmClauseContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_selectClause;
}
enterRule(listener) {
if (listener.enterSelectClause) {
listener.enterSelectClause(this);
}
}
exitRule(listener) {
if (listener.exitSelectClause) {
listener.exitSelectClause(this);
}
}
accept(visitor) {
if (visitor.visitSelectClause) {
return visitor.visitSelectClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectTrfmClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
selectExpressionList() {
return this.getRuleContext(0, SelectExpressionListContext);
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
rowFormat(i) {
if (i === undefined) {
return this.getRuleContexts(RowFormatContext);
}
return this.getRuleContext(i, RowFormatContext);
}
recordWriter() {
return this.getRuleContext(0, RecordWriterContext);
}
KW_USING() {
return this.getToken(HiveSqlParser.KW_USING, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
recordReader() {
return this.getRuleContext(0, RecordReaderContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
aliasList() {
return this.getRuleContext(0, AliasListContext);
}
columnNameTypeList() {
return this.getRuleContext(0, ColumnNameTypeListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_selectTrfmClause;
}
enterRule(listener) {
if (listener.enterSelectTrfmClause) {
listener.enterSelectTrfmClause(this);
}
}
exitRule(listener) {
if (listener.exitSelectTrfmClause) {
listener.exitSelectTrfmClause(this);
}
}
accept(visitor) {
if (visitor.visitSelectTrfmClause) {
return visitor.visitSelectTrfmClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectItemContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableAllColumns() {
return this.getRuleContext(0, TableAllColumnsContext);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_selectItem;
}
enterRule(listener) {
if (listener.enterSelectItem) {
listener.enterSelectItem(this);
}
}
exitRule(listener) {
if (listener.exitSelectItem) {
listener.exitSelectItem(this);
}
}
accept(visitor) {
if (visitor.visitSelectItem) {
return visitor.visitSelectItem(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TrfmClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
selectExpressionList() {
return this.getRuleContext(0, SelectExpressionListContext);
}
rowFormat(i) {
if (i === undefined) {
return this.getRuleContexts(RowFormatContext);
}
return this.getRuleContext(i, RowFormatContext);
}
recordWriter() {
return this.getRuleContext(0, RecordWriterContext);
}
KW_USING() {
return this.getToken(HiveSqlParser.KW_USING, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
recordReader() {
return this.getRuleContext(0, RecordReaderContext);
}
KW_MAP() {
return this.getToken(HiveSqlParser.KW_MAP, 0);
}
KW_REDUCE() {
return this.getToken(HiveSqlParser.KW_REDUCE, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
aliasList() {
return this.getRuleContext(0, AliasListContext);
}
columnNameTypeList() {
return this.getRuleContext(0, ColumnNameTypeListContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_trfmClause;
}
enterRule(listener) {
if (listener.enterTrfmClause) {
listener.enterTrfmClause(this);
}
}
exitRule(listener) {
if (listener.exitTrfmClause) {
listener.exitTrfmClause(this);
}
}
accept(visitor) {
if (visitor.visitTrfmClause) {
return visitor.visitTrfmClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableAllColumns() {
return this.getRuleContext(0, TableAllColumnsContext);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_selectExpression;
}
enterRule(listener) {
if (listener.enterSelectExpression) {
listener.enterSelectExpression(this);
}
}
exitRule(listener) {
if (listener.exitSelectExpression) {
listener.exitSelectExpression(this);
}
}
accept(visitor) {
if (visitor.visitSelectExpression) {
return visitor.visitSelectExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SelectExpressionListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
selectExpression(i) {
if (i === undefined) {
return this.getRuleContexts(SelectExpressionContext);
}
return this.getRuleContext(i, SelectExpressionContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_selectExpressionList;
}
enterRule(listener) {
if (listener.enterSelectExpressionList) {
listener.enterSelectExpressionList(this);
}
}
exitRule(listener) {
if (listener.exitSelectExpressionList) {
listener.exitSelectExpressionList(this);
}
}
accept(visitor) {
if (visitor.visitSelectExpressionList) {
return visitor.visitSelectExpressionList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Window_clauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WINDOW() {
return this.getToken(HiveSqlParser.KW_WINDOW, 0);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
KW_AS(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_AS);
}
else {
return this.getToken(HiveSqlParser.KW_AS, i);
}
}
window_specification(i) {
if (i === undefined) {
return this.getRuleContexts(Window_specificationContext);
}
return this.getRuleContext(i, Window_specificationContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_window_clause;
}
enterRule(listener) {
if (listener.enterWindow_clause) {
listener.enterWindow_clause(this);
}
}
exitRule(listener) {
if (listener.exitWindow_clause) {
listener.exitWindow_clause(this);
}
}
accept(visitor) {
if (visitor.visitWindow_clause) {
return visitor.visitWindow_clause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Window_specificationContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
partitioningSpec() {
return this.getRuleContext(0, PartitioningSpecContext);
}
window_frame() {
return this.getRuleContext(0, Window_frameContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_window_specification;
}
enterRule(listener) {
if (listener.enterWindow_specification) {
listener.enterWindow_specification(this);
}
}
exitRule(listener) {
if (listener.exitWindow_specification) {
listener.exitWindow_specification(this);
}
}
accept(visitor) {
if (visitor.visitWindow_specification) {
return visitor.visitWindow_specification(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Window_frameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ROWS() {
return this.getToken(HiveSqlParser.KW_ROWS, 0);
}
KW_RANGE() {
return this.getToken(HiveSqlParser.KW_RANGE, 0);
}
KW_BETWEEN() {
return this.getToken(HiveSqlParser.KW_BETWEEN, 0);
}
window_frame_boundary(i) {
if (i === undefined) {
return this.getRuleContexts(Window_frame_boundaryContext);
}
return this.getRuleContext(i, Window_frame_boundaryContext);
}
KW_AND() {
return this.getToken(HiveSqlParser.KW_AND, 0);
}
KW_UNBOUNDED() {
return this.getToken(HiveSqlParser.KW_UNBOUNDED, 0);
}
KW_PRECEDING() {
return this.getToken(HiveSqlParser.KW_PRECEDING, 0);
}
KW_CURRENT() {
return this.getToken(HiveSqlParser.KW_CURRENT, 0);
}
KW_ROW() {
return this.getToken(HiveSqlParser.KW_ROW, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_window_frame;
}
enterRule(listener) {
if (listener.enterWindow_frame) {
listener.enterWindow_frame(this);
}
}
exitRule(listener) {
if (listener.exitWindow_frame) {
listener.exitWindow_frame(this);
}
}
accept(visitor) {
if (visitor.visitWindow_frame) {
return visitor.visitWindow_frame(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Window_frame_boundaryContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_UNBOUNDED() {
return this.getToken(HiveSqlParser.KW_UNBOUNDED, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
KW_PRECEDING() {
return this.getToken(HiveSqlParser.KW_PRECEDING, 0);
}
KW_FOLLOWING() {
return this.getToken(HiveSqlParser.KW_FOLLOWING, 0);
}
KW_CURRENT() {
return this.getToken(HiveSqlParser.KW_CURRENT, 0);
}
KW_ROW() {
return this.getToken(HiveSqlParser.KW_ROW, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_window_frame_boundary;
}
enterRule(listener) {
if (listener.enterWindow_frame_boundary) {
listener.enterWindow_frame_boundary(this);
}
}
exitRule(listener) {
if (listener.exitWindow_frame_boundary) {
listener.exitWindow_frame_boundary(this);
}
}
accept(visitor) {
if (visitor.visitWindow_frame_boundary) {
return visitor.visitWindow_frame_boundary(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class GroupByClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_GROUP() {
return this.getToken(HiveSqlParser.KW_GROUP, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
columnName() {
return this.getRuleContext(0, ColumnNameContext);
}
rollupStandard() {
return this.getRuleContext(0, RollupStandardContext);
}
rollupOldSyntax() {
return this.getRuleContext(0, RollupOldSyntaxContext);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_groupByClause;
}
enterRule(listener) {
if (listener.enterGroupByClause) {
listener.enterGroupByClause(this);
}
}
exitRule(listener) {
if (listener.exitGroupByClause) {
listener.exitGroupByClause(this);
}
}
accept(visitor) {
if (visitor.visitGroupByClause) {
return visitor.visitGroupByClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RollupStandardContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_ROLLUP() {
return this.getToken(HiveSqlParser.KW_ROLLUP, 0);
}
KW_CUBE() {
return this.getToken(HiveSqlParser.KW_CUBE, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_rollupStandard;
}
enterRule(listener) {
if (listener.enterRollupStandard) {
listener.enterRollupStandard(this);
}
}
exitRule(listener) {
if (listener.exitRollupStandard) {
listener.exitRollupStandard(this);
}
}
accept(visitor) {
if (visitor.visitRollupStandard) {
return visitor.visitRollupStandard(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RollupOldSyntaxContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
expressionsNotInParenthesis() {
return this.getRuleContext(0, ExpressionsNotInParenthesisContext);
}
KW_ROLLUP() {
return this.getToken(HiveSqlParser.KW_ROLLUP, 0);
}
KW_CUBE() {
return this.getToken(HiveSqlParser.KW_CUBE, 0);
}
KW_SETS() {
return this.getToken(HiveSqlParser.KW_SETS, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
groupingSetExpression(i) {
if (i === undefined) {
return this.getRuleContexts(GroupingSetExpressionContext);
}
return this.getRuleContext(i, GroupingSetExpressionContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_GROUPING() {
return this.getToken(HiveSqlParser.KW_GROUPING, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_rollupOldSyntax;
}
enterRule(listener) {
if (listener.enterRollupOldSyntax) {
listener.enterRollupOldSyntax(this);
}
}
exitRule(listener) {
if (listener.exitRollupOldSyntax) {
listener.exitRollupOldSyntax(this);
}
}
accept(visitor) {
if (visitor.visitRollupOldSyntax) {
return visitor.visitRollupOldSyntax(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class GroupingSetExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_groupingSetExpression;
}
enterRule(listener) {
if (listener.enterGroupingSetExpression) {
listener.enterGroupingSetExpression(this);
}
}
exitRule(listener) {
if (listener.exitGroupingSetExpression) {
listener.exitGroupingSetExpression(this);
}
}
accept(visitor) {
if (visitor.visitGroupingSetExpression) {
return visitor.visitGroupingSetExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class HavingClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_HAVING() {
return this.getToken(HiveSqlParser.KW_HAVING, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_havingClause;
}
enterRule(listener) {
if (listener.enterHavingClause) {
listener.enterHavingClause(this);
}
}
exitRule(listener) {
if (listener.exitHavingClause) {
listener.exitHavingClause(this);
}
}
accept(visitor) {
if (visitor.visitHavingClause) {
return visitor.visitHavingClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class QualifyClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_QUALIFY() {
return this.getToken(HiveSqlParser.KW_QUALIFY, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_qualifyClause;
}
enterRule(listener) {
if (listener.enterQualifyClause) {
listener.enterQualifyClause(this);
}
}
exitRule(listener) {
if (listener.exitQualifyClause) {
listener.exitQualifyClause(this);
}
}
accept(visitor) {
if (visitor.visitQualifyClause) {
return visitor.visitQualifyClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExpressionOrDefaultContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DEFAULT() {
return this.getToken(HiveSqlParser.KW_DEFAULT, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_expressionOrDefault;
}
enterRule(listener) {
if (listener.enterExpressionOrDefault) {
listener.enterExpressionOrDefault(this);
}
}
exitRule(listener) {
if (listener.exitExpressionOrDefault) {
listener.exitExpressionOrDefault(this);
}
}
accept(visitor) {
if (visitor.visitExpressionOrDefault) {
return visitor.visitExpressionOrDefault(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FirstExpressionsWithAliasContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
KW_AS(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_AS);
}
else {
return this.getToken(HiveSqlParser.KW_AS, i);
}
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_firstExpressionsWithAlias;
}
enterRule(listener) {
if (listener.enterFirstExpressionsWithAlias) {
listener.enterFirstExpressionsWithAlias(this);
}
}
exitRule(listener) {
if (listener.exitFirstExpressionsWithAlias) {
listener.exitFirstExpressionsWithAlias(this);
}
}
accept(visitor) {
if (visitor.visitFirstExpressionsWithAlias) {
return visitor.visitFirstExpressionsWithAlias(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExpressionsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
expressionsInParenthesis() {
return this.getRuleContext(0, ExpressionsInParenthesisContext);
}
expressionsNotInParenthesis() {
return this.getRuleContext(0, ExpressionsNotInParenthesisContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_expressions;
}
enterRule(listener) {
if (listener.enterExpressions) {
listener.enterExpressions(this);
}
}
exitRule(listener) {
if (listener.exitExpressions) {
listener.exitExpressions(this);
}
}
accept(visitor) {
if (visitor.visitExpressions) {
return visitor.visitExpressions(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExpressionsInParenthesisContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
expressionsNotInParenthesis() {
return this.getRuleContext(0, ExpressionsNotInParenthesisContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_expressionsInParenthesis;
}
enterRule(listener) {
if (listener.enterExpressionsInParenthesis) {
listener.enterExpressionsInParenthesis(this);
}
}
exitRule(listener) {
if (listener.exitExpressionsInParenthesis) {
listener.exitExpressionsInParenthesis(this);
}
}
accept(visitor) {
if (visitor.visitExpressionsInParenthesis) {
return visitor.visitExpressionsInParenthesis(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExpressionsNotInParenthesisContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
expressionOrDefault(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionOrDefaultContext);
}
return this.getRuleContext(i, ExpressionOrDefaultContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_expressionsNotInParenthesis;
}
enterRule(listener) {
if (listener.enterExpressionsNotInParenthesis) {
listener.enterExpressionsNotInParenthesis(this);
}
}
exitRule(listener) {
if (listener.exitExpressionsNotInParenthesis) {
listener.exitExpressionsNotInParenthesis(this);
}
}
accept(visitor) {
if (visitor.visitExpressionsNotInParenthesis) {
return visitor.visitExpressionsNotInParenthesis(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class OrderByClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ORDER() {
return this.getToken(HiveSqlParser.KW_ORDER, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
columnRefOrder(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnRefOrderContext);
}
return this.getRuleContext(i, ColumnRefOrderContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_orderByClause;
}
enterRule(listener) {
if (listener.enterOrderByClause) {
listener.enterOrderByClause(this);
}
}
exitRule(listener) {
if (listener.exitOrderByClause) {
listener.exitOrderByClause(this);
}
}
accept(visitor) {
if (visitor.visitOrderByClause) {
return visitor.visitOrderByClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionByClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_PARTITION() {
return this.getToken(HiveSqlParser.KW_PARTITION, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
expressions() {
return this.getRuleContext(0, ExpressionsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionByClause;
}
enterRule(listener) {
if (listener.enterPartitionByClause) {
listener.enterPartitionByClause(this);
}
}
exitRule(listener) {
if (listener.exitPartitionByClause) {
listener.exitPartitionByClause(this);
}
}
accept(visitor) {
if (visitor.visitPartitionByClause) {
return visitor.visitPartitionByClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ClusterByClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CLUSTER() {
return this.getToken(HiveSqlParser.KW_CLUSTER, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
expressions() {
return this.getRuleContext(0, ExpressionsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_clusterByClause;
}
enterRule(listener) {
if (listener.enterClusterByClause) {
listener.enterClusterByClause(this);
}
}
exitRule(listener) {
if (listener.exitClusterByClause) {
listener.exitClusterByClause(this);
}
}
accept(visitor) {
if (visitor.visitClusterByClause) {
return visitor.visitClusterByClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DistributeByClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DISTRIBUTE() {
return this.getToken(HiveSqlParser.KW_DISTRIBUTE, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
expressions() {
return this.getRuleContext(0, ExpressionsContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_distributeByClause;
}
enterRule(listener) {
if (listener.enterDistributeByClause) {
listener.enterDistributeByClause(this);
}
}
exitRule(listener) {
if (listener.exitDistributeByClause) {
listener.exitDistributeByClause(this);
}
}
accept(visitor) {
if (visitor.visitDistributeByClause) {
return visitor.visitDistributeByClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SortByClauseContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SORT() {
return this.getToken(HiveSqlParser.KW_SORT, 0);
}
KW_BY() {
return this.getToken(HiveSqlParser.KW_BY, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
columnRefOrder(i) {
if (i === undefined) {
return this.getRuleContexts(ColumnRefOrderContext);
}
return this.getRuleContext(i, ColumnRefOrderContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_sortByClause;
}
enterRule(listener) {
if (listener.enterSortByClause) {
listener.enterSortByClause(this);
}
}
exitRule(listener) {
if (listener.exitSortByClause) {
listener.exitSortByClause(this);
}
}
accept(visitor) {
if (visitor.visitSortByClause) {
return visitor.visitSortByClause(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Function_Context extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_TRIM() {
return this.getToken(HiveSqlParser.KW_TRIM, 0);
}
LPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LPAREN);
}
else {
return this.getToken(HiveSqlParser.LPAREN, i);
}
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
RPAREN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RPAREN);
}
else {
return this.getToken(HiveSqlParser.RPAREN, i);
}
}
selectExpression(i) {
if (i === undefined) {
return this.getRuleContexts(SelectExpressionContext);
}
return this.getRuleContext(i, SelectExpressionContext);
}
KW_BOTH() {
return this.getToken(HiveSqlParser.KW_BOTH, 0);
}
KW_LEADING() {
return this.getToken(HiveSqlParser.KW_LEADING, 0);
}
KW_TRAILING() {
return this.getToken(HiveSqlParser.KW_TRAILING, 0);
}
functionNameForInvoke() {
return this.getRuleContext(0, FunctionNameForInvokeContext);
}
KW_GROUP() {
return this.getToken(HiveSqlParser.KW_GROUP, 0);
}
KW_OVER() {
return this.getToken(HiveSqlParser.KW_OVER, 0);
}
STAR() {
return this.getToken(HiveSqlParser.STAR, 0);
}
KW_WITHIN() {
return this.getToken(HiveSqlParser.KW_WITHIN, 0);
}
orderByClause() {
return this.getRuleContext(0, OrderByClauseContext);
}
window_specification() {
return this.getRuleContext(0, Window_specificationContext);
}
null_treatment() {
return this.getRuleContext(0, Null_treatmentContext);
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
KW_DISTINCT() {
return this.getToken(HiveSqlParser.KW_DISTINCT, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_function_;
}
enterRule(listener) {
if (listener.enterFunction_) {
listener.enterFunction_(this);
}
}
exitRule(listener) {
if (listener.exitFunction_) {
listener.exitFunction_(this);
}
}
accept(visitor) {
if (visitor.visitFunction_) {
return visitor.visitFunction_(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Null_treatmentContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_NULLS() {
return this.getToken(HiveSqlParser.KW_NULLS, 0);
}
KW_RESPECT() {
return this.getToken(HiveSqlParser.KW_RESPECT, 0);
}
KW_IGNORE() {
return this.getToken(HiveSqlParser.KW_IGNORE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_null_treatment;
}
enterRule(listener) {
if (listener.enterNull_treatment) {
listener.enterNull_treatment(this);
}
}
exitRule(listener) {
if (listener.exitNull_treatment) {
listener.exitNull_treatment(this);
}
}
accept(visitor) {
if (visitor.visitNull_treatment) {
return visitor.visitNull_treatment(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FunctionNameCreateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
functionIdentifier() {
return this.getRuleContext(0, FunctionIdentifierContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_functionNameCreate;
}
enterRule(listener) {
if (listener.enterFunctionNameCreate) {
listener.enterFunctionNameCreate(this);
}
}
exitRule(listener) {
if (listener.exitFunctionNameCreate) {
listener.exitFunctionNameCreate(this);
}
}
accept(visitor) {
if (visitor.visitFunctionNameCreate) {
return visitor.visitFunctionNameCreate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FunctionNameForDDLContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
functionIdentifier() {
return this.getRuleContext(0, FunctionIdentifierContext);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_functionNameForDDL;
}
enterRule(listener) {
if (listener.enterFunctionNameForDDL) {
listener.enterFunctionNameForDDL(this);
}
}
exitRule(listener) {
if (listener.exitFunctionNameForDDL) {
listener.exitFunctionNameForDDL(this);
}
}
accept(visitor) {
if (visitor.visitFunctionNameForDDL) {
return visitor.visitFunctionNameForDDL(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FunctionNameForInvokeContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
functionIdentifier() {
return this.getRuleContext(0, FunctionIdentifierContext);
}
sql11ReservedKeywordsUsedAsFunctionName() {
return this.getRuleContext(0, Sql11ReservedKeywordsUsedAsFunctionNameContext);
}
sysFuncNames() {
return this.getRuleContext(0, SysFuncNamesContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_functionNameForInvoke;
}
enterRule(listener) {
if (listener.enterFunctionNameForInvoke) {
listener.enterFunctionNameForInvoke(this);
}
}
exitRule(listener) {
if (listener.exitFunctionNameForInvoke) {
listener.exitFunctionNameForInvoke(this);
}
}
accept(visitor) {
if (visitor.visitFunctionNameForInvoke) {
return visitor.visitFunctionNameForInvoke(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CastExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CAST() {
return this.getToken(HiveSqlParser.KW_CAST, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
primitiveType() {
return this.getRuleContext(0, PrimitiveTypeContext);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_FORMAT() {
return this.getToken(HiveSqlParser.KW_FORMAT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_castExpression;
}
enterRule(listener) {
if (listener.enterCastExpression) {
listener.enterCastExpression(this);
}
}
exitRule(listener) {
if (listener.exitCastExpression) {
listener.exitCastExpression(this);
}
}
accept(visitor) {
if (visitor.visitCastExpression) {
return visitor.visitCastExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class CaseExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CASE() {
return this.getToken(HiveSqlParser.KW_CASE, 0);
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
KW_END() {
return this.getToken(HiveSqlParser.KW_END, 0);
}
KW_WHEN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_WHEN);
}
else {
return this.getToken(HiveSqlParser.KW_WHEN, i);
}
}
KW_THEN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_THEN);
}
else {
return this.getToken(HiveSqlParser.KW_THEN, i);
}
}
KW_ELSE() {
return this.getToken(HiveSqlParser.KW_ELSE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_caseExpression;
}
enterRule(listener) {
if (listener.enterCaseExpression) {
listener.enterCaseExpression(this);
}
}
exitRule(listener) {
if (listener.exitCaseExpression) {
listener.exitCaseExpression(this);
}
}
accept(visitor) {
if (visitor.visitCaseExpression) {
return visitor.visitCaseExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WhenExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CASE() {
return this.getToken(HiveSqlParser.KW_CASE, 0);
}
KW_END() {
return this.getToken(HiveSqlParser.KW_END, 0);
}
KW_WHEN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_WHEN);
}
else {
return this.getToken(HiveSqlParser.KW_WHEN, i);
}
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
KW_THEN(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_THEN);
}
else {
return this.getToken(HiveSqlParser.KW_THEN, i);
}
}
KW_ELSE() {
return this.getToken(HiveSqlParser.KW_ELSE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_whenExpression;
}
enterRule(listener) {
if (listener.enterWhenExpression) {
listener.enterWhenExpression(this);
}
}
exitRule(listener) {
if (listener.exitWhenExpression) {
listener.exitWhenExpression(this);
}
}
accept(visitor) {
if (visitor.visitWhenExpression) {
return visitor.visitWhenExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FloorExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_FLOOR() {
return this.getToken(HiveSqlParser.KW_FLOOR, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
timeQualifiers() {
return this.getRuleContext(0, TimeQualifiersContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_floorExpression;
}
enterRule(listener) {
if (listener.enterFloorExpression) {
listener.enterFloorExpression(this);
}
}
exitRule(listener) {
if (listener.exitFloorExpression) {
listener.exitFloorExpression(this);
}
}
accept(visitor) {
if (visitor.visitFloorExpression) {
return visitor.visitFloorExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExtractExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_EXTRACT() {
return this.getToken(HiveSqlParser.KW_EXTRACT, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
timeQualifiers() {
return this.getRuleContext(0, TimeQualifiersContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_extractExpression;
}
enterRule(listener) {
if (listener.enterExtractExpression) {
listener.enterExtractExpression(this);
}
}
exitRule(listener) {
if (listener.exitExtractExpression) {
listener.exitExtractExpression(this);
}
}
accept(visitor) {
if (visitor.visitExtractExpression) {
return visitor.visitExtractExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TimeQualifiersContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
year() {
return this.getRuleContext(0, YearContext);
}
KW_QUARTER() {
return this.getToken(HiveSqlParser.KW_QUARTER, 0);
}
month() {
return this.getRuleContext(0, MonthContext);
}
week() {
return this.getRuleContext(0, WeekContext);
}
day() {
return this.getRuleContext(0, DayContext);
}
hour() {
return this.getRuleContext(0, HourContext);
}
minute() {
return this.getRuleContext(0, MinuteContext);
}
second() {
return this.getRuleContext(0, SecondContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_timeQualifiers;
}
enterRule(listener) {
if (listener.enterTimeQualifiers) {
listener.enterTimeQualifiers(this);
}
}
exitRule(listener) {
if (listener.exitTimeQualifiers) {
listener.exitTimeQualifiers(this);
}
}
accept(visitor) {
if (visitor.visitTimeQualifiers) {
return visitor.visitTimeQualifiers(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ConstantContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
intervalValue() {
return this.getRuleContext(0, IntervalValueContext);
}
intervalQualifiers() {
return this.getRuleContext(0, IntervalQualifiersContext);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
KW_DATE() {
return this.getToken(HiveSqlParser.KW_DATE, 0);
}
StringLiteral(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.StringLiteral);
}
else {
return this.getToken(HiveSqlParser.StringLiteral, i);
}
}
KW_CURRENT_DATE() {
return this.getToken(HiveSqlParser.KW_CURRENT_DATE, 0);
}
KW_TIMESTAMP() {
return this.getToken(HiveSqlParser.KW_TIMESTAMP, 0);
}
KW_CURRENT_TIMESTAMP() {
return this.getToken(HiveSqlParser.KW_CURRENT_TIMESTAMP, 0);
}
KW_TIMESTAMPLOCALTZ() {
return this.getToken(HiveSqlParser.KW_TIMESTAMPLOCALTZ, 0);
}
IntegralLiteral() {
return this.getToken(HiveSqlParser.IntegralLiteral, 0);
}
NumberLiteral() {
return this.getToken(HiveSqlParser.NumberLiteral, 0);
}
CharSetName() {
return this.getToken(HiveSqlParser.CharSetName, 0);
}
CharSetLiteral() {
return this.getToken(HiveSqlParser.CharSetLiteral, 0);
}
KW_TRUE() {
return this.getToken(HiveSqlParser.KW_TRUE, 0);
}
KW_FALSE() {
return this.getToken(HiveSqlParser.KW_FALSE, 0);
}
KW_NULL() {
return this.getToken(HiveSqlParser.KW_NULL, 0);
}
QUESTION() {
return this.getToken(HiveSqlParser.QUESTION, 0);
}
columnNamePath() {
return this.getRuleContext(0, ColumnNamePathContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_constant;
}
enterRule(listener) {
if (listener.enterConstant) {
listener.enterConstant(this);
}
}
exitRule(listener) {
if (listener.exitConstant) {
listener.exitConstant(this);
}
}
accept(visitor) {
if (visitor.visitConstant) {
return visitor.visitConstant(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class IntervalValueContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_intervalValue;
}
enterRule(listener) {
if (listener.enterIntervalValue) {
listener.enterIntervalValue(this);
}
}
exitRule(listener) {
if (listener.exitIntervalValue) {
listener.exitIntervalValue(this);
}
}
accept(visitor) {
if (visitor.visitIntervalValue) {
return visitor.visitIntervalValue(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class IntervalExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
intervalValue() {
return this.getRuleContext(0, IntervalValueContext);
}
intervalQualifiers() {
return this.getRuleContext(0, IntervalQualifiersContext);
}
KW_INTERVAL() {
return this.getToken(HiveSqlParser.KW_INTERVAL, 0);
}
expression() {
return this.getRuleContext(0, ExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_intervalExpression;
}
enterRule(listener) {
if (listener.enterIntervalExpression) {
listener.enterIntervalExpression(this);
}
}
exitRule(listener) {
if (listener.exitIntervalExpression) {
listener.exitIntervalExpression(this);
}
}
accept(visitor) {
if (visitor.visitIntervalExpression) {
return visitor.visitIntervalExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class IntervalQualifiersContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
year() {
return this.getRuleContext(0, YearContext);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
month() {
return this.getRuleContext(0, MonthContext);
}
day() {
return this.getRuleContext(0, DayContext);
}
second() {
return this.getRuleContext(0, SecondContext);
}
hour() {
return this.getRuleContext(0, HourContext);
}
minute() {
return this.getRuleContext(0, MinuteContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_intervalQualifiers;
}
enterRule(listener) {
if (listener.enterIntervalQualifiers) {
listener.enterIntervalQualifiers(this);
}
}
exitRule(listener) {
if (listener.exitIntervalQualifiers) {
listener.exitIntervalQualifiers(this);
}
}
accept(visitor) {
if (visitor.visitIntervalQualifiers) {
return visitor.visitIntervalQualifiers(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceAndExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceAndExpressionContext);
}
return this.getRuleContext(i, PrecedenceAndExpressionContext);
}
KW_OR(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_OR);
}
else {
return this.getToken(HiveSqlParser.KW_OR, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_expression;
}
enterRule(listener) {
if (listener.enterExpression) {
listener.enterExpression(this);
}
}
exitRule(listener) {
if (listener.exitExpression) {
listener.exitExpression(this);
}
}
accept(visitor) {
if (visitor.visitExpression) {
return visitor.visitExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class AtomExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
constant() {
return this.getRuleContext(0, ConstantContext);
}
intervalExpression() {
return this.getRuleContext(0, IntervalExpressionContext);
}
castExpression() {
return this.getRuleContext(0, CastExpressionContext);
}
extractExpression() {
return this.getRuleContext(0, ExtractExpressionContext);
}
floorExpression() {
return this.getRuleContext(0, FloorExpressionContext);
}
caseExpression() {
return this.getRuleContext(0, CaseExpressionContext);
}
whenExpression() {
return this.getRuleContext(0, WhenExpressionContext);
}
subQueryExpression() {
return this.getRuleContext(0, SubQueryExpressionContext);
}
function_() {
return this.getRuleContext(0, Function_Context);
}
expressionsInParenthesis() {
return this.getRuleContext(0, ExpressionsInParenthesisContext);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_atomExpression;
}
enterRule(listener) {
if (listener.enterAtomExpression) {
listener.enterAtomExpression(this);
}
}
exitRule(listener) {
if (listener.exitAtomExpression) {
listener.exitAtomExpression(this);
}
}
accept(visitor) {
if (visitor.visitAtomExpression) {
return visitor.visitAtomExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceUnaryPrefixExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
atomExpression() {
return this.getRuleContext(0, AtomExpressionContext);
}
LSQUARE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.LSQUARE);
}
else {
return this.getToken(HiveSqlParser.LSQUARE, i);
}
}
expression(i) {
if (i === undefined) {
return this.getRuleContexts(ExpressionContext);
}
return this.getRuleContext(i, ExpressionContext);
}
RSQUARE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.RSQUARE);
}
else {
return this.getToken(HiveSqlParser.RSQUARE, i);
}
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
PLUS(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.PLUS);
}
else {
return this.getToken(HiveSqlParser.PLUS, i);
}
}
MINUS(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.MINUS);
}
else {
return this.getToken(HiveSqlParser.MINUS, i);
}
}
TILDE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.TILDE);
}
else {
return this.getToken(HiveSqlParser.TILDE, i);
}
}
BITWISENOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.BITWISENOT);
}
else {
return this.getToken(HiveSqlParser.BITWISENOT, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceUnaryPrefixExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceUnaryPrefixExpression) {
listener.enterPrecedenceUnaryPrefixExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceUnaryPrefixExpression) {
listener.exitPrecedenceUnaryPrefixExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceUnaryPrefixExpression) {
return visitor.visitPrecedenceUnaryPrefixExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceBitwiseXorExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceUnaryPrefixExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceUnaryPrefixExpressionContext);
}
return this.getRuleContext(i, PrecedenceUnaryPrefixExpressionContext);
}
BITWISEXOR(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.BITWISEXOR);
}
else {
return this.getToken(HiveSqlParser.BITWISEXOR, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceBitwiseXorExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceBitwiseXorExpression) {
listener.enterPrecedenceBitwiseXorExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceBitwiseXorExpression) {
listener.exitPrecedenceBitwiseXorExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceBitwiseXorExpression) {
return visitor.visitPrecedenceBitwiseXorExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceStarExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceBitwiseXorExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceBitwiseXorExpressionContext);
}
return this.getRuleContext(i, PrecedenceBitwiseXorExpressionContext);
}
STAR(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.STAR);
}
else {
return this.getToken(HiveSqlParser.STAR, i);
}
}
DIVIDE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DIVIDE);
}
else {
return this.getToken(HiveSqlParser.DIVIDE, i);
}
}
MOD(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.MOD);
}
else {
return this.getToken(HiveSqlParser.MOD, i);
}
}
DIV(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DIV);
}
else {
return this.getToken(HiveSqlParser.DIV, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceStarExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceStarExpression) {
listener.enterPrecedenceStarExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceStarExpression) {
listener.exitPrecedenceStarExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceStarExpression) {
return visitor.visitPrecedenceStarExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedencePlusExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceStarExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceStarExpressionContext);
}
return this.getRuleContext(i, PrecedenceStarExpressionContext);
}
PLUS(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.PLUS);
}
else {
return this.getToken(HiveSqlParser.PLUS, i);
}
}
MINUS(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.MINUS);
}
else {
return this.getToken(HiveSqlParser.MINUS, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedencePlusExpression;
}
enterRule(listener) {
if (listener.enterPrecedencePlusExpression) {
listener.enterPrecedencePlusExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedencePlusExpression) {
listener.exitPrecedencePlusExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedencePlusExpression) {
return visitor.visitPrecedencePlusExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceConcatenateExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedencePlusExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedencePlusExpressionContext);
}
return this.getRuleContext(i, PrecedencePlusExpressionContext);
}
CONCATENATE(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.CONCATENATE);
}
else {
return this.getToken(HiveSqlParser.CONCATENATE, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceConcatenateExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceConcatenateExpression) {
listener.enterPrecedenceConcatenateExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceConcatenateExpression) {
listener.exitPrecedenceConcatenateExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceConcatenateExpression) {
return visitor.visitPrecedenceConcatenateExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceAmpersandExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceConcatenateExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceConcatenateExpressionContext);
}
return this.getRuleContext(i, PrecedenceConcatenateExpressionContext);
}
AMPERSAND(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.AMPERSAND);
}
else {
return this.getToken(HiveSqlParser.AMPERSAND, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceAmpersandExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceAmpersandExpression) {
listener.enterPrecedenceAmpersandExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceAmpersandExpression) {
listener.exitPrecedenceAmpersandExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceAmpersandExpression) {
return visitor.visitPrecedenceAmpersandExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceBitwiseOrExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceAmpersandExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceAmpersandExpressionContext);
}
return this.getRuleContext(i, PrecedenceAmpersandExpressionContext);
}
BITWISEOR(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.BITWISEOR);
}
else {
return this.getToken(HiveSqlParser.BITWISEOR, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceBitwiseOrExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceBitwiseOrExpression) {
listener.enterPrecedenceBitwiseOrExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceBitwiseOrExpression) {
listener.exitPrecedenceBitwiseOrExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceBitwiseOrExpression) {
return visitor.visitPrecedenceBitwiseOrExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceSimilarOperatorContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
KW_RLIKE() {
return this.getToken(HiveSqlParser.KW_RLIKE, 0);
}
KW_REGEXP() {
return this.getToken(HiveSqlParser.KW_REGEXP, 0);
}
LESSTHANOREQUALTO() {
return this.getToken(HiveSqlParser.LESSTHANOREQUALTO, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
GREATERTHANOREQUALTO() {
return this.getToken(HiveSqlParser.GREATERTHANOREQUALTO, 0);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceSimilarOperator;
}
enterRule(listener) {
if (listener.enterPrecedenceSimilarOperator) {
listener.enterPrecedenceSimilarOperator(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceSimilarOperator) {
listener.exitPrecedenceSimilarOperator(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceSimilarOperator) {
return visitor.visitPrecedenceSimilarOperator(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SubQueryExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
selectStatement() {
return this.getRuleContext(0, SelectStatementContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_subQueryExpression;
}
enterRule(listener) {
if (listener.enterSubQueryExpression) {
listener.enterSubQueryExpression(this);
}
}
exitRule(listener) {
if (listener.exitSubQueryExpression) {
listener.exitSubQueryExpression(this);
}
}
accept(visitor) {
if (visitor.visitSubQueryExpression) {
return visitor.visitSubQueryExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceSimilarExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceBitwiseOrExpression() {
return this.getRuleContext(0, PrecedenceBitwiseOrExpressionContext);
}
precedenceSimilarExpressionPart() {
return this.getRuleContext(0, PrecedenceSimilarExpressionPartContext);
}
KW_EXISTS() {
return this.getToken(HiveSqlParser.KW_EXISTS, 0);
}
subQueryExpression() {
return this.getRuleContext(0, SubQueryExpressionContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceSimilarExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceSimilarExpression) {
listener.enterPrecedenceSimilarExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceSimilarExpression) {
listener.exitPrecedenceSimilarExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceSimilarExpression) {
return visitor.visitPrecedenceSimilarExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceSimilarExpressionPartContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceSimilarOperator() {
return this.getRuleContext(0, PrecedenceSimilarOperatorContext);
}
precedenceBitwiseOrExpression() {
return this.getRuleContext(0, PrecedenceBitwiseOrExpressionContext);
}
precedenceSimilarExpressionAtom() {
return this.getRuleContext(0, PrecedenceSimilarExpressionAtomContext);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
precedenceSimilarExpressionPartNot() {
return this.getRuleContext(0, PrecedenceSimilarExpressionPartNotContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceSimilarExpressionPart;
}
enterRule(listener) {
if (listener.enterPrecedenceSimilarExpressionPart) {
listener.enterPrecedenceSimilarExpressionPart(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceSimilarExpressionPart) {
listener.exitPrecedenceSimilarExpressionPart(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceSimilarExpressionPart) {
return visitor.visitPrecedenceSimilarExpressionPart(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceSimilarExpressionAtomContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_IN() {
return this.getToken(HiveSqlParser.KW_IN, 0);
}
precedenceSimilarExpressionIn() {
return this.getRuleContext(0, PrecedenceSimilarExpressionInContext);
}
KW_BETWEEN() {
return this.getToken(HiveSqlParser.KW_BETWEEN, 0);
}
KW_AND() {
return this.getToken(HiveSqlParser.KW_AND, 0);
}
precedenceBitwiseOrExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceBitwiseOrExpressionContext);
}
return this.getRuleContext(i, PrecedenceBitwiseOrExpressionContext);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
KW_ANY() {
return this.getToken(HiveSqlParser.KW_ANY, 0);
}
KW_ALL() {
return this.getToken(HiveSqlParser.KW_ALL, 0);
}
expressionsInParenthesis() {
return this.getRuleContext(0, ExpressionsInParenthesisContext);
}
subQuerySelectorOperator() {
return this.getRuleContext(0, SubQuerySelectorOperatorContext);
}
subQueryExpression() {
return this.getRuleContext(0, SubQueryExpressionContext);
}
KW_SOME() {
return this.getToken(HiveSqlParser.KW_SOME, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceSimilarExpressionAtom;
}
enterRule(listener) {
if (listener.enterPrecedenceSimilarExpressionAtom) {
listener.enterPrecedenceSimilarExpressionAtom(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceSimilarExpressionAtom) {
listener.exitPrecedenceSimilarExpressionAtom(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceSimilarExpressionAtom) {
return visitor.visitPrecedenceSimilarExpressionAtom(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceSimilarExpressionInContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
subQueryExpression() {
return this.getRuleContext(0, SubQueryExpressionContext);
}
expressionsInParenthesis() {
return this.getRuleContext(0, ExpressionsInParenthesisContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceSimilarExpressionIn;
}
enterRule(listener) {
if (listener.enterPrecedenceSimilarExpressionIn) {
listener.enterPrecedenceSimilarExpressionIn(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceSimilarExpressionIn) {
listener.exitPrecedenceSimilarExpressionIn(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceSimilarExpressionIn) {
return visitor.visitPrecedenceSimilarExpressionIn(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceSimilarExpressionPartNotContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
KW_RLIKE() {
return this.getToken(HiveSqlParser.KW_RLIKE, 0);
}
KW_REGEXP() {
return this.getToken(HiveSqlParser.KW_REGEXP, 0);
}
precedenceBitwiseOrExpression() {
return this.getRuleContext(0, PrecedenceBitwiseOrExpressionContext);
}
precedenceSimilarExpressionAtom() {
return this.getRuleContext(0, PrecedenceSimilarExpressionAtomContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceSimilarExpressionPartNot;
}
enterRule(listener) {
if (listener.enterPrecedenceSimilarExpressionPartNot) {
listener.enterPrecedenceSimilarExpressionPartNot(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceSimilarExpressionPartNot) {
listener.exitPrecedenceSimilarExpressionPartNot(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceSimilarExpressionPartNot) {
return visitor.visitPrecedenceSimilarExpressionPartNot(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceDistinctOperatorContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_IS() {
return this.getToken(HiveSqlParser.KW_IS, 0);
}
KW_DISTINCT() {
return this.getToken(HiveSqlParser.KW_DISTINCT, 0);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceDistinctOperator;
}
enterRule(listener) {
if (listener.enterPrecedenceDistinctOperator) {
listener.enterPrecedenceDistinctOperator(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceDistinctOperator) {
listener.exitPrecedenceDistinctOperator(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceDistinctOperator) {
return visitor.visitPrecedenceDistinctOperator(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceEqualOperatorContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
EQUAL_NS() {
return this.getToken(HiveSqlParser.EQUAL_NS, 0);
}
NOTEQUAL() {
return this.getToken(HiveSqlParser.NOTEQUAL, 0);
}
KW_IS() {
return this.getToken(HiveSqlParser.KW_IS, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_DISTINCT() {
return this.getToken(HiveSqlParser.KW_DISTINCT, 0);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceEqualOperator;
}
enterRule(listener) {
if (listener.enterPrecedenceEqualOperator) {
listener.enterPrecedenceEqualOperator(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceEqualOperator) {
listener.exitPrecedenceEqualOperator(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceEqualOperator) {
return visitor.visitPrecedenceEqualOperator(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceEqualExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
this._equal = [];
this._p = [];
this._dist = [];
}
precedenceSimilarExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceSimilarExpressionContext);
}
return this.getRuleContext(i, PrecedenceSimilarExpressionContext);
}
precedenceEqualOperator(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceEqualOperatorContext);
}
return this.getRuleContext(i, PrecedenceEqualOperatorContext);
}
precedenceDistinctOperator(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceDistinctOperatorContext);
}
return this.getRuleContext(i, PrecedenceDistinctOperatorContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceEqualExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceEqualExpression) {
listener.enterPrecedenceEqualExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceEqualExpression) {
listener.exitPrecedenceEqualExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceEqualExpression) {
return visitor.visitPrecedenceEqualExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class IsConditionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_NULL() {
return this.getToken(HiveSqlParser.KW_NULL, 0);
}
KW_TRUE() {
return this.getToken(HiveSqlParser.KW_TRUE, 0);
}
KW_FALSE() {
return this.getToken(HiveSqlParser.KW_FALSE, 0);
}
KW_UNKNOWN() {
return this.getToken(HiveSqlParser.KW_UNKNOWN, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_isCondition;
}
enterRule(listener) {
if (listener.enterIsCondition) {
listener.enterIsCondition(this);
}
}
exitRule(listener) {
if (listener.exitIsCondition) {
listener.exitIsCondition(this);
}
}
accept(visitor) {
if (visitor.visitIsCondition) {
return visitor.visitIsCondition(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceNotExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceEqualExpression() {
return this.getRuleContext(0, PrecedenceEqualExpressionContext);
}
KW_NOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_NOT);
}
else {
return this.getToken(HiveSqlParser.KW_NOT, i);
}
}
isCondition() {
return this.getRuleContext(0, IsConditionContext);
}
KW_IS() {
return this.getToken(HiveSqlParser.KW_IS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceNotExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceNotExpression) {
listener.enterPrecedenceNotExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceNotExpression) {
listener.exitPrecedenceNotExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceNotExpression) {
return visitor.visitPrecedenceNotExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrecedenceAndExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
precedenceNotExpression(i) {
if (i === undefined) {
return this.getRuleContexts(PrecedenceNotExpressionContext);
}
return this.getRuleContext(i, PrecedenceNotExpressionContext);
}
KW_AND(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.KW_AND);
}
else {
return this.getToken(HiveSqlParser.KW_AND, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_precedenceAndExpression;
}
enterRule(listener) {
if (listener.enterPrecedenceAndExpression) {
listener.enterPrecedenceAndExpression(this);
}
}
exitRule(listener) {
if (listener.exitPrecedenceAndExpression) {
listener.exitPrecedenceAndExpression(this);
}
}
accept(visitor) {
if (visitor.visitPrecedenceAndExpression) {
return visitor.visitPrecedenceAndExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TableOrPartitionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
tableName() {
return this.getRuleContext(0, TableNameContext);
}
partitionSpec() {
return this.getRuleContext(0, PartitionSpecContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_tableOrPartition;
}
enterRule(listener) {
if (listener.enterTableOrPartition) {
listener.enterTableOrPartition(this);
}
}
exitRule(listener) {
if (listener.exitTableOrPartition) {
listener.exitTableOrPartition(this);
}
}
accept(visitor) {
if (visitor.visitTableOrPartition) {
return visitor.visitTableOrPartition(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_PARTITION() {
return this.getToken(HiveSqlParser.KW_PARTITION, 0);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
partitionVal(i) {
if (i === undefined) {
return this.getRuleContexts(PartitionValContext);
}
return this.getRuleContext(i, PartitionValContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionSpec;
}
enterRule(listener) {
if (listener.enterPartitionSpec) {
listener.enterPartitionSpec(this);
}
}
exitRule(listener) {
if (listener.exitPartitionSpec) {
listener.exitPartitionSpec(this);
}
}
accept(visitor) {
if (visitor.visitPartitionSpec) {
return visitor.visitPartitionSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionValContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
constant() {
return this.getRuleContext(0, ConstantContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionVal;
}
enterRule(listener) {
if (listener.enterPartitionVal) {
listener.enterPartitionVal(this);
}
}
exitRule(listener) {
if (listener.exitPartitionVal) {
listener.exitPartitionVal(this);
}
}
accept(visitor) {
if (visitor.visitPartitionVal) {
return visitor.visitPartitionVal(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionSelectorSpecContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
LPAREN() {
return this.getToken(HiveSqlParser.LPAREN, 0);
}
partitionSelectorVal(i) {
if (i === undefined) {
return this.getRuleContexts(PartitionSelectorValContext);
}
return this.getRuleContext(i, PartitionSelectorValContext);
}
RPAREN() {
return this.getToken(HiveSqlParser.RPAREN, 0);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionSelectorSpec;
}
enterRule(listener) {
if (listener.enterPartitionSelectorSpec) {
listener.enterPartitionSelectorSpec(this);
}
}
exitRule(listener) {
if (listener.exitPartitionSelectorSpec) {
listener.exitPartitionSelectorSpec(this);
}
}
accept(visitor) {
if (visitor.visitPartitionSelectorSpec) {
return visitor.visitPartitionSelectorSpec(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PartitionSelectorValContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
constant() {
return this.getRuleContext(0, ConstantContext);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
subQuerySelectorOperator() {
return this.getRuleContext(0, SubQuerySelectorOperatorContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_partitionSelectorVal;
}
enterRule(listener) {
if (listener.enterPartitionSelectorVal) {
listener.enterPartitionSelectorVal(this);
}
}
exitRule(listener) {
if (listener.exitPartitionSelectorVal) {
listener.exitPartitionSelectorVal(this);
}
}
accept(visitor) {
if (visitor.visitPartitionSelectorVal) {
return visitor.visitPartitionSelectorVal(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SubQuerySelectorOperatorContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
NOTEQUAL() {
return this.getToken(HiveSqlParser.NOTEQUAL, 0);
}
LESSTHANOREQUALTO() {
return this.getToken(HiveSqlParser.LESSTHANOREQUALTO, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
GREATERTHANOREQUALTO() {
return this.getToken(HiveSqlParser.GREATERTHANOREQUALTO, 0);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_subQuerySelectorOperator;
}
enterRule(listener) {
if (listener.enterSubQuerySelectorOperator) {
listener.enterSubQuerySelectorOperator(this);
}
}
exitRule(listener) {
if (listener.exitSubQuerySelectorOperator) {
listener.exitSubQuerySelectorOperator(this);
}
}
accept(visitor) {
if (visitor.visitSubQuerySelectorOperator) {
return visitor.visitSubQuerySelectorOperator(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SysFuncNamesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_AND() {
return this.getToken(HiveSqlParser.KW_AND, 0);
}
KW_OR() {
return this.getToken(HiveSqlParser.KW_OR, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
KW_IF() {
return this.getToken(HiveSqlParser.KW_IF, 0);
}
KW_CASE() {
return this.getToken(HiveSqlParser.KW_CASE, 0);
}
KW_WHEN() {
return this.getToken(HiveSqlParser.KW_WHEN, 0);
}
KW_FLOOR() {
return this.getToken(HiveSqlParser.KW_FLOOR, 0);
}
KW_TINYINT() {
return this.getToken(HiveSqlParser.KW_TINYINT, 0);
}
KW_SMALLINT() {
return this.getToken(HiveSqlParser.KW_SMALLINT, 0);
}
KW_INT() {
return this.getToken(HiveSqlParser.KW_INT, 0);
}
KW_INTEGER() {
return this.getToken(HiveSqlParser.KW_INTEGER, 0);
}
KW_BIGINT() {
return this.getToken(HiveSqlParser.KW_BIGINT, 0);
}
KW_FLOAT() {
return this.getToken(HiveSqlParser.KW_FLOAT, 0);
}
KW_REAL() {
return this.getToken(HiveSqlParser.KW_REAL, 0);
}
KW_DOUBLE() {
return this.getToken(HiveSqlParser.KW_DOUBLE, 0);
}
KW_BOOLEAN() {
return this.getToken(HiveSqlParser.KW_BOOLEAN, 0);
}
KW_STRING() {
return this.getToken(HiveSqlParser.KW_STRING, 0);
}
KW_BINARY() {
return this.getToken(HiveSqlParser.KW_BINARY, 0);
}
KW_ARRAY() {
return this.getToken(HiveSqlParser.KW_ARRAY, 0);
}
KW_MAP() {
return this.getToken(HiveSqlParser.KW_MAP, 0);
}
KW_STRUCT() {
return this.getToken(HiveSqlParser.KW_STRUCT, 0);
}
KW_UNIONTYPE() {
return this.getToken(HiveSqlParser.KW_UNIONTYPE, 0);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
EQUAL_NS() {
return this.getToken(HiveSqlParser.EQUAL_NS, 0);
}
NOTEQUAL() {
return this.getToken(HiveSqlParser.NOTEQUAL, 0);
}
LESSTHANOREQUALTO() {
return this.getToken(HiveSqlParser.LESSTHANOREQUALTO, 0);
}
LESSTHAN() {
return this.getToken(HiveSqlParser.LESSTHAN, 0);
}
GREATERTHANOREQUALTO() {
return this.getToken(HiveSqlParser.GREATERTHANOREQUALTO, 0);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
DIVIDE() {
return this.getToken(HiveSqlParser.DIVIDE, 0);
}
PLUS() {
return this.getToken(HiveSqlParser.PLUS, 0);
}
MINUS() {
return this.getToken(HiveSqlParser.MINUS, 0);
}
STAR() {
return this.getToken(HiveSqlParser.STAR, 0);
}
MOD() {
return this.getToken(HiveSqlParser.MOD, 0);
}
DIV() {
return this.getToken(HiveSqlParser.DIV, 0);
}
AMPERSAND() {
return this.getToken(HiveSqlParser.AMPERSAND, 0);
}
TILDE() {
return this.getToken(HiveSqlParser.TILDE, 0);
}
BITWISEOR() {
return this.getToken(HiveSqlParser.BITWISEOR, 0);
}
BITWISEXOR() {
return this.getToken(HiveSqlParser.BITWISEXOR, 0);
}
KW_RLIKE() {
return this.getToken(HiveSqlParser.KW_RLIKE, 0);
}
KW_REGEXP() {
return this.getToken(HiveSqlParser.KW_REGEXP, 0);
}
KW_IN() {
return this.getToken(HiveSqlParser.KW_IN, 0);
}
KW_BETWEEN() {
return this.getToken(HiveSqlParser.KW_BETWEEN, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_sysFuncNames;
}
enterRule(listener) {
if (listener.enterSysFuncNames) {
listener.enterSysFuncNames(this);
}
}
exitRule(listener) {
if (listener.exitSysFuncNames) {
listener.exitSysFuncNames(this);
}
}
accept(visitor) {
if (visitor.visitSysFuncNames) {
return visitor.visitSysFuncNames(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Id_Context extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
Identifier() {
return this.getToken(HiveSqlParser.Identifier, 0);
}
nonReserved() {
return this.getRuleContext(0, NonReservedContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_id_;
}
enterRule(listener) {
if (listener.enterId_) {
listener.enterId_(this);
}
}
exitRule(listener) {
if (listener.exitId_) {
listener.exitId_(this);
}
}
accept(visitor) {
if (visitor.visitId_) {
return visitor.visitId_(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class FunctionIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
DOT() {
return this.getToken(HiveSqlParser.DOT, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_functionIdentifier;
}
enterRule(listener) {
if (listener.enterFunctionIdentifier) {
listener.enterFunctionIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitFunctionIdentifier) {
listener.exitFunctionIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitFunctionIdentifier) {
return visitor.visitFunctionIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PrincipalIdentifierContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
get ruleIndex() {
return HiveSqlParser.RULE_principalIdentifier;
}
enterRule(listener) {
if (listener.enterPrincipalIdentifier) {
listener.enterPrincipalIdentifier(this);
}
}
exitRule(listener) {
if (listener.exitPrincipalIdentifier) {
listener.exitPrincipalIdentifier(this);
}
}
accept(visitor) {
if (visitor.visitPrincipalIdentifier) {
return visitor.visitPrincipalIdentifier(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class NonReservedContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ABORT() {
return this.getToken(HiveSqlParser.KW_ABORT, 0);
}
KW_ACTIVATE() {
return this.getToken(HiveSqlParser.KW_ACTIVATE, 0);
}
KW_ACTIVE() {
return this.getToken(HiveSqlParser.KW_ACTIVE, 0);
}
KW_ADD() {
return this.getToken(HiveSqlParser.KW_ADD, 0);
}
KW_ADMIN() {
return this.getToken(HiveSqlParser.KW_ADMIN, 0);
}
KW_AFTER() {
return this.getToken(HiveSqlParser.KW_AFTER, 0);
}
KW_ALLOC_FRACTION() {
return this.getToken(HiveSqlParser.KW_ALLOC_FRACTION, 0);
}
KW_ANALYZE() {
return this.getToken(HiveSqlParser.KW_ANALYZE, 0);
}
KW_ARCHIVE() {
return this.getToken(HiveSqlParser.KW_ARCHIVE, 0);
}
KW_ASC() {
return this.getToken(HiveSqlParser.KW_ASC, 0);
}
KW_AST() {
return this.getToken(HiveSqlParser.KW_AST, 0);
}
KW_AT() {
return this.getToken(HiveSqlParser.KW_AT, 0);
}
KW_AUTOCOMMIT() {
return this.getToken(HiveSqlParser.KW_AUTOCOMMIT, 0);
}
KW_BATCH() {
return this.getToken(HiveSqlParser.KW_BATCH, 0);
}
KW_BEFORE() {
return this.getToken(HiveSqlParser.KW_BEFORE, 0);
}
KW_BUCKET() {
return this.getToken(HiveSqlParser.KW_BUCKET, 0);
}
KW_BUCKETS() {
return this.getToken(HiveSqlParser.KW_BUCKETS, 0);
}
KW_CACHE() {
return this.getToken(HiveSqlParser.KW_CACHE, 0);
}
KW_CASCADE() {
return this.getToken(HiveSqlParser.KW_CASCADE, 0);
}
KW_CBO() {
return this.getToken(HiveSqlParser.KW_CBO, 0);
}
KW_CHANGE() {
return this.getToken(HiveSqlParser.KW_CHANGE, 0);
}
KW_CHECK() {
return this.getToken(HiveSqlParser.KW_CHECK, 0);
}
KW_CLUSTER() {
return this.getToken(HiveSqlParser.KW_CLUSTER, 0);
}
KW_CLUSTERED() {
return this.getToken(HiveSqlParser.KW_CLUSTERED, 0);
}
KW_CLUSTERSTATUS() {
return this.getToken(HiveSqlParser.KW_CLUSTERSTATUS, 0);
}
KW_COLLECTION() {
return this.getToken(HiveSqlParser.KW_COLLECTION, 0);
}
KW_COLUMNS() {
return this.getToken(HiveSqlParser.KW_COLUMNS, 0);
}
KW_COMMENT() {
return this.getToken(HiveSqlParser.KW_COMMENT, 0);
}
KW_COMPACT() {
return this.getToken(HiveSqlParser.KW_COMPACT, 0);
}
KW_COMPACTIONS() {
return this.getToken(HiveSqlParser.KW_COMPACTIONS, 0);
}
KW_COMPUTE() {
return this.getToken(HiveSqlParser.KW_COMPUTE, 0);
}
KW_CONCATENATE() {
return this.getToken(HiveSqlParser.KW_CONCATENATE, 0);
}
KW_CONTINUE() {
return this.getToken(HiveSqlParser.KW_CONTINUE, 0);
}
KW_COST() {
return this.getToken(HiveSqlParser.KW_COST, 0);
}
KW_CRON() {
return this.getToken(HiveSqlParser.KW_CRON, 0);
}
KW_DATA() {
return this.getToken(HiveSqlParser.KW_DATA, 0);
}
KW_DATABASES() {
return this.getToken(HiveSqlParser.KW_DATABASES, 0);
}
KW_DATETIME() {
return this.getToken(HiveSqlParser.KW_DATETIME, 0);
}
KW_DAY() {
return this.getToken(HiveSqlParser.KW_DAY, 0);
}
KW_DAYS() {
return this.getToken(HiveSqlParser.KW_DAYS, 0);
}
KW_DAYOFWEEK() {
return this.getToken(HiveSqlParser.KW_DAYOFWEEK, 0);
}
KW_DBPROPERTIES() {
return this.getToken(HiveSqlParser.KW_DBPROPERTIES, 0);
}
KW_DCPROPERTIES() {
return this.getToken(HiveSqlParser.KW_DCPROPERTIES, 0);
}
KW_DEBUG() {
return this.getToken(HiveSqlParser.KW_DEBUG, 0);
}
KW_DEFAULT() {
return this.getToken(HiveSqlParser.KW_DEFAULT, 0);
}
KW_DEFERRED() {
return this.getToken(HiveSqlParser.KW_DEFERRED, 0);
}
KW_DEFINED() {
return this.getToken(HiveSqlParser.KW_DEFINED, 0);
}
KW_DELIMITED() {
return this.getToken(HiveSqlParser.KW_DELIMITED, 0);
}
KW_DEPENDENCY() {
return this.getToken(HiveSqlParser.KW_DEPENDENCY, 0);
}
KW_DESC() {
return this.getToken(HiveSqlParser.KW_DESC, 0);
}
KW_DETAIL() {
return this.getToken(HiveSqlParser.KW_DETAIL, 0);
}
KW_DIRECTORIES() {
return this.getToken(HiveSqlParser.KW_DIRECTORIES, 0);
}
KW_DIRECTORY() {
return this.getToken(HiveSqlParser.KW_DIRECTORY, 0);
}
KW_DISABLE() {
return this.getToken(HiveSqlParser.KW_DISABLE, 0);
}
KW_DISABLED() {
return this.getToken(HiveSqlParser.KW_DISABLED, 0);
}
KW_DISTRIBUTE() {
return this.getToken(HiveSqlParser.KW_DISTRIBUTE, 0);
}
KW_DISTRIBUTED() {
return this.getToken(HiveSqlParser.KW_DISTRIBUTED, 0);
}
KW_DO() {
return this.getToken(HiveSqlParser.KW_DO, 0);
}
KW_DUMP() {
return this.getToken(HiveSqlParser.KW_DUMP, 0);
}
KW_ELEM_TYPE() {
return this.getToken(HiveSqlParser.KW_ELEM_TYPE, 0);
}
KW_ENABLE() {
return this.getToken(HiveSqlParser.KW_ENABLE, 0);
}
KW_ENABLED() {
return this.getToken(HiveSqlParser.KW_ENABLED, 0);
}
KW_ENFORCED() {
return this.getToken(HiveSqlParser.KW_ENFORCED, 0);
}
KW_ESCAPED() {
return this.getToken(HiveSqlParser.KW_ESCAPED, 0);
}
KW_EVERY() {
return this.getToken(HiveSqlParser.KW_EVERY, 0);
}
KW_EXCLUSIVE() {
return this.getToken(HiveSqlParser.KW_EXCLUSIVE, 0);
}
KW_EXECUTE() {
return this.getToken(HiveSqlParser.KW_EXECUTE, 0);
}
KW_EXECUTED() {
return this.getToken(HiveSqlParser.KW_EXECUTED, 0);
}
KW_EXPIRE_SNAPSHOTS() {
return this.getToken(HiveSqlParser.KW_EXPIRE_SNAPSHOTS, 0);
}
KW_EXPLAIN() {
return this.getToken(HiveSqlParser.KW_EXPLAIN, 0);
}
KW_EXPORT() {
return this.getToken(HiveSqlParser.KW_EXPORT, 0);
}
KW_EXPRESSION() {
return this.getToken(HiveSqlParser.KW_EXPRESSION, 0);
}
KW_FIELDS() {
return this.getToken(HiveSqlParser.KW_FIELDS, 0);
}
KW_FILE() {
return this.getToken(HiveSqlParser.KW_FILE, 0);
}
KW_FILEFORMAT() {
return this.getToken(HiveSqlParser.KW_FILEFORMAT, 0);
}
KW_FIRST() {
return this.getToken(HiveSqlParser.KW_FIRST, 0);
}
KW_FORMAT() {
return this.getToken(HiveSqlParser.KW_FORMAT, 0);
}
KW_FORMATTED() {
return this.getToken(HiveSqlParser.KW_FORMATTED, 0);
}
KW_FUNCTIONS() {
return this.getToken(HiveSqlParser.KW_FUNCTIONS, 0);
}
KW_HOLD_DDLTIME() {
return this.getToken(HiveSqlParser.KW_HOLD_DDLTIME, 0);
}
KW_HOUR() {
return this.getToken(HiveSqlParser.KW_HOUR, 0);
}
KW_HOURS() {
return this.getToken(HiveSqlParser.KW_HOURS, 0);
}
KW_IDXPROPERTIES() {
return this.getToken(HiveSqlParser.KW_IDXPROPERTIES, 0);
}
KW_IGNORE() {
return this.getToken(HiveSqlParser.KW_IGNORE, 0);
}
KW_INDEX() {
return this.getToken(HiveSqlParser.KW_INDEX, 0);
}
KW_INDEXES() {
return this.getToken(HiveSqlParser.KW_INDEXES, 0);
}
KW_INPATH() {
return this.getToken(HiveSqlParser.KW_INPATH, 0);
}
KW_INPUTDRIVER() {
return this.getToken(HiveSqlParser.KW_INPUTDRIVER, 0);
}
KW_INPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_INPUTFORMAT, 0);
}
KW_ISOLATION() {
return this.getToken(HiveSqlParser.KW_ISOLATION, 0);
}
KW_ITEMS() {
return this.getToken(HiveSqlParser.KW_ITEMS, 0);
}
KW_JAR() {
return this.getToken(HiveSqlParser.KW_JAR, 0);
}
KW_JOINCOST() {
return this.getToken(HiveSqlParser.KW_JOINCOST, 0);
}
KW_KEY() {
return this.getToken(HiveSqlParser.KW_KEY, 0);
}
KW_KEYS() {
return this.getToken(HiveSqlParser.KW_KEYS, 0);
}
KW_KEY_TYPE() {
return this.getToken(HiveSqlParser.KW_KEY_TYPE, 0);
}
KW_KILL() {
return this.getToken(HiveSqlParser.KW_KILL, 0);
}
KW_LAST() {
return this.getToken(HiveSqlParser.KW_LAST, 0);
}
KW_LEVEL() {
return this.getToken(HiveSqlParser.KW_LEVEL, 0);
}
KW_LIFECYCLE() {
return this.getToken(HiveSqlParser.KW_LIFECYCLE, 0);
}
KW_LIMIT() {
return this.getToken(HiveSqlParser.KW_LIMIT, 0);
}
KW_LINES() {
return this.getToken(HiveSqlParser.KW_LINES, 0);
}
KW_LOAD() {
return this.getToken(HiveSqlParser.KW_LOAD, 0);
}
KW_LOCATION() {
return this.getToken(HiveSqlParser.KW_LOCATION, 0);
}
KW_LOCK() {
return this.getToken(HiveSqlParser.KW_LOCK, 0);
}
KW_LOCKS() {
return this.getToken(HiveSqlParser.KW_LOCKS, 0);
}
KW_LOGICAL() {
return this.getToken(HiveSqlParser.KW_LOGICAL, 0);
}
KW_LONG() {
return this.getToken(HiveSqlParser.KW_LONG, 0);
}
KW_MANAGED() {
return this.getToken(HiveSqlParser.KW_MANAGED, 0);
}
KW_MANAGEDLOCATION() {
return this.getToken(HiveSqlParser.KW_MANAGEDLOCATION, 0);
}
KW_MANAGEMENT() {
return this.getToken(HiveSqlParser.KW_MANAGEMENT, 0);
}
KW_MAPJOIN() {
return this.getToken(HiveSqlParser.KW_MAPJOIN, 0);
}
KW_MAPPING() {
return this.getToken(HiveSqlParser.KW_MAPPING, 0);
}
KW_MATCHED() {
return this.getToken(HiveSqlParser.KW_MATCHED, 0);
}
KW_MATERIALIZED() {
return this.getToken(HiveSqlParser.KW_MATERIALIZED, 0);
}
KW_METADATA() {
return this.getToken(HiveSqlParser.KW_METADATA, 0);
}
KW_MINUTE() {
return this.getToken(HiveSqlParser.KW_MINUTE, 0);
}
KW_MINUTES() {
return this.getToken(HiveSqlParser.KW_MINUTES, 0);
}
KW_MONTH() {
return this.getToken(HiveSqlParser.KW_MONTH, 0);
}
KW_MONTHS() {
return this.getToken(HiveSqlParser.KW_MONTHS, 0);
}
KW_MOVE() {
return this.getToken(HiveSqlParser.KW_MOVE, 0);
}
KW_MSCK() {
return this.getToken(HiveSqlParser.KW_MSCK, 0);
}
KW_NORELY() {
return this.getToken(HiveSqlParser.KW_NORELY, 0);
}
KW_NOSCAN() {
return this.getToken(HiveSqlParser.KW_NOSCAN, 0);
}
KW_NOVALIDATE() {
return this.getToken(HiveSqlParser.KW_NOVALIDATE, 0);
}
KW_NO_DROP() {
return this.getToken(HiveSqlParser.KW_NO_DROP, 0);
}
KW_NULLS() {
return this.getToken(HiveSqlParser.KW_NULLS, 0);
}
KW_OFFLINE() {
return this.getToken(HiveSqlParser.KW_OFFLINE, 0);
}
KW_OFFSET() {
return this.getToken(HiveSqlParser.KW_OFFSET, 0);
}
KW_OPERATOR() {
return this.getToken(HiveSqlParser.KW_OPERATOR, 0);
}
KW_OPTION() {
return this.getToken(HiveSqlParser.KW_OPTION, 0);
}
KW_OUTPUTDRIVER() {
return this.getToken(HiveSqlParser.KW_OUTPUTDRIVER, 0);
}
KW_OUTPUTFORMAT() {
return this.getToken(HiveSqlParser.KW_OUTPUTFORMAT, 0);
}
KW_OVERWRITE() {
return this.getToken(HiveSqlParser.KW_OVERWRITE, 0);
}
KW_OWNER() {
return this.getToken(HiveSqlParser.KW_OWNER, 0);
}
KW_PARTITIONED() {
return this.getToken(HiveSqlParser.KW_PARTITIONED, 0);
}
KW_PARTITIONS() {
return this.getToken(HiveSqlParser.KW_PARTITIONS, 0);
}
KW_PATH() {
return this.getToken(HiveSqlParser.KW_PATH, 0);
}
KW_PLAN() {
return this.getToken(HiveSqlParser.KW_PLAN, 0);
}
KW_PLANS() {
return this.getToken(HiveSqlParser.KW_PLANS, 0);
}
KW_PLUS() {
return this.getToken(HiveSqlParser.KW_PLUS, 0);
}
KW_POOL() {
return this.getToken(HiveSqlParser.KW_POOL, 0);
}
KW_PRINCIPALS() {
return this.getToken(HiveSqlParser.KW_PRINCIPALS, 0);
}
KW_PROTECTION() {
return this.getToken(HiveSqlParser.KW_PROTECTION, 0);
}
KW_PURGE() {
return this.getToken(HiveSqlParser.KW_PURGE, 0);
}
KW_QUARTER() {
return this.getToken(HiveSqlParser.KW_QUARTER, 0);
}
KW_QUERY() {
return this.getToken(HiveSqlParser.KW_QUERY, 0);
}
KW_QUERY_PARALLELISM() {
return this.getToken(HiveSqlParser.KW_QUERY_PARALLELISM, 0);
}
KW_READ() {
return this.getToken(HiveSqlParser.KW_READ, 0);
}
KW_READONLY() {
return this.getToken(HiveSqlParser.KW_READONLY, 0);
}
KW_REBUILD() {
return this.getToken(HiveSqlParser.KW_REBUILD, 0);
}
KW_RECORDREADER() {
return this.getToken(HiveSqlParser.KW_RECORDREADER, 0);
}
KW_RECORDWRITER() {
return this.getToken(HiveSqlParser.KW_RECORDWRITER, 0);
}
KW_RELOAD() {
return this.getToken(HiveSqlParser.KW_RELOAD, 0);
}
KW_RELY() {
return this.getToken(HiveSqlParser.KW_RELY, 0);
}
KW_REMOTE() {
return this.getToken(HiveSqlParser.KW_REMOTE, 0);
}
KW_RENAME() {
return this.getToken(HiveSqlParser.KW_RENAME, 0);
}
KW_REOPTIMIZATION() {
return this.getToken(HiveSqlParser.KW_REOPTIMIZATION, 0);
}
KW_REPAIR() {
return this.getToken(HiveSqlParser.KW_REPAIR, 0);
}
KW_REPL() {
return this.getToken(HiveSqlParser.KW_REPL, 0);
}
KW_REPLACE() {
return this.getToken(HiveSqlParser.KW_REPLACE, 0);
}
KW_REPLICATION() {
return this.getToken(HiveSqlParser.KW_REPLICATION, 0);
}
KW_RESOURCE() {
return this.getToken(HiveSqlParser.KW_RESOURCE, 0);
}
KW_RESPECT() {
return this.getToken(HiveSqlParser.KW_RESPECT, 0);
}
KW_RESTRICT() {
return this.getToken(HiveSqlParser.KW_RESTRICT, 0);
}
KW_REWRITE() {
return this.getToken(HiveSqlParser.KW_REWRITE, 0);
}
KW_ROLE() {
return this.getToken(HiveSqlParser.KW_ROLE, 0);
}
KW_ROLES() {
return this.getToken(HiveSqlParser.KW_ROLES, 0);
}
KW_SCHEDULED() {
return this.getToken(HiveSqlParser.KW_SCHEDULED, 0);
}
KW_SCHEDULING_POLICY() {
return this.getToken(HiveSqlParser.KW_SCHEDULING_POLICY, 0);
}
KW_SCHEMA() {
return this.getToken(HiveSqlParser.KW_SCHEMA, 0);
}
KW_SCHEMAS() {
return this.getToken(HiveSqlParser.KW_SCHEMAS, 0);
}
KW_SECOND() {
return this.getToken(HiveSqlParser.KW_SECOND, 0);
}
KW_SECONDS() {
return this.getToken(HiveSqlParser.KW_SECONDS, 0);
}
KW_SEMI() {
return this.getToken(HiveSqlParser.KW_SEMI, 0);
}
KW_SERDE() {
return this.getToken(HiveSqlParser.KW_SERDE, 0);
}
KW_SERDEPROPERTIES() {
return this.getToken(HiveSqlParser.KW_SERDEPROPERTIES, 0);
}
KW_SERVER() {
return this.getToken(HiveSqlParser.KW_SERVER, 0);
}
KW_SETS() {
return this.getToken(HiveSqlParser.KW_SETS, 0);
}
KW_SET_CURRENT_SNAPSHOT() {
return this.getToken(HiveSqlParser.KW_SET_CURRENT_SNAPSHOT, 0);
}
KW_SHARED() {
return this.getToken(HiveSqlParser.KW_SHARED, 0);
}
KW_SHOW() {
return this.getToken(HiveSqlParser.KW_SHOW, 0);
}
KW_SHOW_DATABASE() {
return this.getToken(HiveSqlParser.KW_SHOW_DATABASE, 0);
}
KW_SKEWED() {
return this.getToken(HiveSqlParser.KW_SKEWED, 0);
}
KW_SNAPSHOT() {
return this.getToken(HiveSqlParser.KW_SNAPSHOT, 0);
}
KW_SORT() {
return this.getToken(HiveSqlParser.KW_SORT, 0);
}
KW_SORTED() {
return this.getToken(HiveSqlParser.KW_SORTED, 0);
}
KW_SPEC() {
return this.getToken(HiveSqlParser.KW_SPEC, 0);
}
KW_SSL() {
return this.getToken(HiveSqlParser.KW_SSL, 0);
}
KW_STATISTICS() {
return this.getToken(HiveSqlParser.KW_STATISTICS, 0);
}
KW_STATUS() {
return this.getToken(HiveSqlParser.KW_STATUS, 0);
}
KW_STORED() {
return this.getToken(HiveSqlParser.KW_STORED, 0);
}
KW_STREAMTABLE() {
return this.getToken(HiveSqlParser.KW_STREAMTABLE, 0);
}
KW_STRING() {
return this.getToken(HiveSqlParser.KW_STRING, 0);
}
KW_STRUCT() {
return this.getToken(HiveSqlParser.KW_STRUCT, 0);
}
KW_SUMMARY() {
return this.getToken(HiveSqlParser.KW_SUMMARY, 0);
}
KW_SYSTEM_TIME() {
return this.getToken(HiveSqlParser.KW_SYSTEM_TIME, 0);
}
KW_SYSTEM_VERSION() {
return this.getToken(HiveSqlParser.KW_SYSTEM_VERSION, 0);
}
KW_TABLES() {
return this.getToken(HiveSqlParser.KW_TABLES, 0);
}
KW_TBLPROPERTIES() {
return this.getToken(HiveSqlParser.KW_TBLPROPERTIES, 0);
}
KW_TEMPORARY() {
return this.getToken(HiveSqlParser.KW_TEMPORARY, 0);
}
KW_TERMINATED() {
return this.getToken(HiveSqlParser.KW_TERMINATED, 0);
}
KW_TIMESTAMPTZ() {
return this.getToken(HiveSqlParser.KW_TIMESTAMPTZ, 0);
}
KW_TINYINT() {
return this.getToken(HiveSqlParser.KW_TINYINT, 0);
}
KW_TOUCH() {
return this.getToken(HiveSqlParser.KW_TOUCH, 0);
}
KW_TRANSACTION() {
return this.getToken(HiveSqlParser.KW_TRANSACTION, 0);
}
KW_TRANSACTIONAL() {
return this.getToken(HiveSqlParser.KW_TRANSACTIONAL, 0);
}
KW_TRANSACTIONS() {
return this.getToken(HiveSqlParser.KW_TRANSACTIONS, 0);
}
KW_TRIM() {
return this.getToken(HiveSqlParser.KW_TRIM, 0);
}
KW_TYPE() {
return this.getToken(HiveSqlParser.KW_TYPE, 0);
}
KW_UNARCHIVE() {
return this.getToken(HiveSqlParser.KW_UNARCHIVE, 0);
}
KW_UNDO() {
return this.getToken(HiveSqlParser.KW_UNDO, 0);
}
KW_UNIONTYPE() {
return this.getToken(HiveSqlParser.KW_UNIONTYPE, 0);
}
KW_UNKNOWN() {
return this.getToken(HiveSqlParser.KW_UNKNOWN, 0);
}
KW_UNLOCK() {
return this.getToken(HiveSqlParser.KW_UNLOCK, 0);
}
KW_UNMANAGED() {
return this.getToken(HiveSqlParser.KW_UNMANAGED, 0);
}
KW_UNSET() {
return this.getToken(HiveSqlParser.KW_UNSET, 0);
}
KW_UNSIGNED() {
return this.getToken(HiveSqlParser.KW_UNSIGNED, 0);
}
KW_URI() {
return this.getToken(HiveSqlParser.KW_URI, 0);
}
KW_URL() {
return this.getToken(HiveSqlParser.KW_URL, 0);
}
KW_USE() {
return this.getToken(HiveSqlParser.KW_USE, 0);
}
KW_UTC() {
return this.getToken(HiveSqlParser.KW_UTC, 0);
}
KW_UTCTIMESTAMP() {
return this.getToken(HiveSqlParser.KW_UTCTIMESTAMP, 0);
}
KW_VALIDATE() {
return this.getToken(HiveSqlParser.KW_VALIDATE, 0);
}
KW_VALUE_TYPE() {
return this.getToken(HiveSqlParser.KW_VALUE_TYPE, 0);
}
KW_VECTORIZATION() {
return this.getToken(HiveSqlParser.KW_VECTORIZATION, 0);
}
KW_VIEW() {
return this.getToken(HiveSqlParser.KW_VIEW, 0);
}
KW_VIEWS() {
return this.getToken(HiveSqlParser.KW_VIEWS, 0);
}
KW_WAIT() {
return this.getToken(HiveSqlParser.KW_WAIT, 0);
}
KW_WEEK() {
return this.getToken(HiveSqlParser.KW_WEEK, 0);
}
KW_WEEKS() {
return this.getToken(HiveSqlParser.KW_WEEKS, 0);
}
KW_WHILE() {
return this.getToken(HiveSqlParser.KW_WHILE, 0);
}
KW_WITHIN() {
return this.getToken(HiveSqlParser.KW_WITHIN, 0);
}
KW_WORK() {
return this.getToken(HiveSqlParser.KW_WORK, 0);
}
KW_WORKLOAD() {
return this.getToken(HiveSqlParser.KW_WORKLOAD, 0);
}
KW_WRITE() {
return this.getToken(HiveSqlParser.KW_WRITE, 0);
}
KW_YEAR() {
return this.getToken(HiveSqlParser.KW_YEAR, 0);
}
KW_YEARS() {
return this.getToken(HiveSqlParser.KW_YEARS, 0);
}
KW_ZONE() {
return this.getToken(HiveSqlParser.KW_ZONE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_nonReserved;
}
enterRule(listener) {
if (listener.enterNonReserved) {
listener.enterNonReserved(this);
}
}
exitRule(listener) {
if (listener.exitNonReserved) {
listener.exitNonReserved(this);
}
}
accept(visitor) {
if (visitor.visitNonReserved) {
return visitor.visitNonReserved(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class Sql11ReservedKeywordsUsedAsFunctionNameContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ARRAY() {
return this.getToken(HiveSqlParser.KW_ARRAY, 0);
}
KW_BIGINT() {
return this.getToken(HiveSqlParser.KW_BIGINT, 0);
}
KW_BINARY() {
return this.getToken(HiveSqlParser.KW_BINARY, 0);
}
KW_BOOLEAN() {
return this.getToken(HiveSqlParser.KW_BOOLEAN, 0);
}
KW_CURRENT_DATE() {
return this.getToken(HiveSqlParser.KW_CURRENT_DATE, 0);
}
KW_CURRENT_TIMESTAMP() {
return this.getToken(HiveSqlParser.KW_CURRENT_TIMESTAMP, 0);
}
KW_DATE() {
return this.getToken(HiveSqlParser.KW_DATE, 0);
}
KW_DOUBLE() {
return this.getToken(HiveSqlParser.KW_DOUBLE, 0);
}
KW_FLOAT() {
return this.getToken(HiveSqlParser.KW_FLOAT, 0);
}
KW_GROUPING() {
return this.getToken(HiveSqlParser.KW_GROUPING, 0);
}
KW_IF() {
return this.getToken(HiveSqlParser.KW_IF, 0);
}
KW_INT() {
return this.getToken(HiveSqlParser.KW_INT, 0);
}
KW_INTEGER() {
return this.getToken(HiveSqlParser.KW_INTEGER, 0);
}
KW_MAP() {
return this.getToken(HiveSqlParser.KW_MAP, 0);
}
KW_REAL() {
return this.getToken(HiveSqlParser.KW_REAL, 0);
}
KW_SMALLINT() {
return this.getToken(HiveSqlParser.KW_SMALLINT, 0);
}
KW_TIMESTAMP() {
return this.getToken(HiveSqlParser.KW_TIMESTAMP, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_sql11ReservedKeywordsUsedAsFunctionName;
}
enterRule(listener) {
if (listener.enterSql11ReservedKeywordsUsedAsFunctionName) {
listener.enterSql11ReservedKeywordsUsedAsFunctionName(this);
}
}
exitRule(listener) {
if (listener.exitSql11ReservedKeywordsUsedAsFunctionName) {
listener.exitSql11ReservedKeywordsUsedAsFunctionName(this);
}
}
accept(visitor) {
if (visitor.visitSql11ReservedKeywordsUsedAsFunctionName) {
return visitor.visitSql11ReservedKeywordsUsedAsFunctionName(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ConfigPropertiesItemContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
KW_SELECT() {
return this.getToken(HiveSqlParser.KW_SELECT, 0);
}
KW_JOIN() {
return this.getToken(HiveSqlParser.KW_JOIN, 0);
}
KW_PARTITION() {
return this.getToken(HiveSqlParser.KW_PARTITION, 0);
}
KW_MAP() {
return this.getToken(HiveSqlParser.KW_MAP, 0);
}
KW_REDUCE() {
return this.getToken(HiveSqlParser.KW_REDUCE, 0);
}
KW_USER() {
return this.getToken(HiveSqlParser.KW_USER, 0);
}
KW_PERCENT() {
return this.getToken(HiveSqlParser.KW_PERCENT, 0);
}
KW_INTERVAL() {
return this.getToken(HiveSqlParser.KW_INTERVAL, 0);
}
KW_ROWS() {
return this.getToken(HiveSqlParser.KW_ROWS, 0);
}
KW_UNION() {
return this.getToken(HiveSqlParser.KW_UNION, 0);
}
KW_GROUP() {
return this.getToken(HiveSqlParser.KW_GROUP, 0);
}
KW_MERGE() {
return this.getToken(HiveSqlParser.KW_MERGE, 0);
}
KW_NULL() {
return this.getToken(HiveSqlParser.KW_NULL, 0);
}
KW_FETCH() {
return this.getToken(HiveSqlParser.KW_FETCH, 0);
}
KW_LOCAL() {
return this.getToken(HiveSqlParser.KW_LOCAL, 0);
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
KW_TABLE() {
return this.getToken(HiveSqlParser.KW_TABLE, 0);
}
KW_ON() {
return this.getToken(HiveSqlParser.KW_ON, 0);
}
KW_ROW() {
return this.getToken(HiveSqlParser.KW_ROW, 0);
}
KW_GROUPING() {
return this.getToken(HiveSqlParser.KW_GROUPING, 0);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_FORCE() {
return this.getToken(HiveSqlParser.KW_FORCE, 0);
}
KW_START() {
return this.getToken(HiveSqlParser.KW_START, 0);
}
KW_INSERT() {
return this.getToken(HiveSqlParser.KW_INSERT, 0);
}
KW_CONF() {
return this.getToken(HiveSqlParser.KW_CONF, 0);
}
KW_INTO() {
return this.getToken(HiveSqlParser.KW_INTO, 0);
}
KW_UNIQUE() {
return this.getToken(HiveSqlParser.KW_UNIQUE, 0);
}
KW_COLUMN() {
return this.getToken(HiveSqlParser.KW_COLUMN, 0);
}
KW_TRANSFORM() {
return this.getToken(HiveSqlParser.KW_TRANSFORM, 0);
}
KW_DISTINCT() {
return this.getToken(HiveSqlParser.KW_DISTINCT, 0);
}
KW_IN() {
return this.getToken(HiveSqlParser.KW_IN, 0);
}
KW_REFERENCES() {
return this.getToken(HiveSqlParser.KW_REFERENCES, 0);
}
KW_TIMESTAMP() {
return this.getToken(HiveSqlParser.KW_TIMESTAMP, 0);
}
KW_ONLY() {
return this.getToken(HiveSqlParser.KW_ONLY, 0);
}
KW_END() {
return this.getToken(HiveSqlParser.KW_END, 0);
}
KW_FUNCTION() {
return this.getToken(HiveSqlParser.KW_FUNCTION, 0);
}
KW_UPDATE() {
return this.getToken(HiveSqlParser.KW_UPDATE, 0);
}
KW_AUTHORIZATION() {
return this.getToken(HiveSqlParser.KW_AUTHORIZATION, 0);
}
KW_DDL() {
return this.getToken(HiveSqlParser.KW_DDL, 0);
}
KW_VALUES() {
return this.getToken(HiveSqlParser.KW_VALUES, 0);
}
KW_TIME() {
return this.getToken(HiveSqlParser.KW_TIME, 0);
}
KW_IS() {
return this.getToken(HiveSqlParser.KW_IS, 0);
}
KW_FOR() {
return this.getToken(HiveSqlParser.KW_FOR, 0);
}
KW_NOT() {
return this.getToken(HiveSqlParser.KW_NOT, 0);
}
KW_BINARY() {
return this.getToken(HiveSqlParser.KW_BINARY, 0);
}
KW_USING() {
return this.getToken(HiveSqlParser.KW_USING, 0);
}
KW_READS() {
return this.getToken(HiveSqlParser.KW_READS, 0);
}
KW_BETWEEN() {
return this.getToken(HiveSqlParser.KW_BETWEEN, 0);
}
KW_CURRENT() {
return this.getToken(HiveSqlParser.KW_CURRENT, 0);
}
KW_AS() {
return this.getToken(HiveSqlParser.KW_AS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_configPropertiesItem;
}
enterRule(listener) {
if (listener.enterConfigPropertiesItem) {
listener.enterConfigPropertiesItem(this);
}
}
exitRule(listener) {
if (listener.exitConfigPropertiesItem) {
listener.exitConfigPropertiesItem(this);
}
}
accept(visitor) {
if (visitor.visitConfigPropertiesItem) {
return visitor.visitConfigPropertiesItem(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ResourcePlanDdlStatementsContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_CREATE() {
return this.getToken(HiveSqlParser.KW_CREATE, 0);
}
KW_RESOURCE() {
return this.getToken(HiveSqlParser.KW_RESOURCE, 0);
}
KW_PLAN() {
return this.getToken(HiveSqlParser.KW_PLAN, 0);
}
KW_LIKE() {
return this.getToken(HiveSqlParser.KW_LIKE, 0);
}
ifNotExists() {
return this.getRuleContext(0, IfNotExistsContext);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
rpAssignList() {
return this.getRuleContext(0, RpAssignListContext);
}
KW_ALTER() {
return this.getToken(HiveSqlParser.KW_ALTER, 0);
}
KW_VALIDATE() {
return this.getToken(HiveSqlParser.KW_VALIDATE, 0);
}
disable() {
return this.getRuleContext(0, DisableContext);
}
KW_SET() {
return this.getToken(HiveSqlParser.KW_SET, 0);
}
KW_UNSET() {
return this.getToken(HiveSqlParser.KW_UNSET, 0);
}
rpUnassign(i) {
if (i === undefined) {
return this.getRuleContexts(RpUnassignContext);
}
return this.getRuleContext(i, RpUnassignContext);
}
KW_RENAME() {
return this.getToken(HiveSqlParser.KW_RENAME, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
activate() {
return this.getRuleContext(0, ActivateContext);
}
enable() {
return this.getRuleContext(0, EnableContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
KW_DROP() {
return this.getToken(HiveSqlParser.KW_DROP, 0);
}
ifExists() {
return this.getRuleContext(0, IfExistsContext);
}
KW_WORKLOAD() {
return this.getToken(HiveSqlParser.KW_WORKLOAD, 0);
}
KW_MANAGEMENT() {
return this.getToken(HiveSqlParser.KW_MANAGEMENT, 0);
}
KW_REPLACE() {
return this.getToken(HiveSqlParser.KW_REPLACE, 0);
}
KW_ACTIVE() {
return this.getToken(HiveSqlParser.KW_ACTIVE, 0);
}
KW_TRIGGER() {
return this.getToken(HiveSqlParser.KW_TRIGGER, 0);
}
DOT() {
return this.getToken(HiveSqlParser.DOT, 0);
}
KW_WHEN() {
return this.getToken(HiveSqlParser.KW_WHEN, 0);
}
triggerAtomExpression() {
return this.getRuleContext(0, TriggerAtomExpressionContext);
}
KW_DO() {
return this.getToken(HiveSqlParser.KW_DO, 0);
}
triggerActionExpression() {
return this.getRuleContext(0, TriggerActionExpressionContext);
}
KW_ADD() {
return this.getToken(HiveSqlParser.KW_ADD, 0);
}
KW_FROM() {
return this.getToken(HiveSqlParser.KW_FROM, 0);
}
KW_POOL() {
return this.getToken(HiveSqlParser.KW_POOL, 0);
}
KW_UNMANAGED() {
return this.getToken(HiveSqlParser.KW_UNMANAGED, 0);
}
poolPath() {
return this.getRuleContext(0, PoolPathContext);
}
poolAssignList() {
return this.getRuleContext(0, PoolAssignListContext);
}
KW_SCHEDULING_POLICY() {
return this.getToken(HiveSqlParser.KW_SCHEDULING_POLICY, 0);
}
KW_MAPPING() {
return this.getToken(HiveSqlParser.KW_MAPPING, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
KW_IN() {
return this.getToken(HiveSqlParser.KW_IN, 0);
}
mappingTypes() {
return this.getRuleContext(0, MappingTypesContext);
}
KW_ORDER() {
return this.getToken(HiveSqlParser.KW_ORDER, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_resourcePlanDdlStatements;
}
enterRule(listener) {
if (listener.enterResourcePlanDdlStatements) {
listener.enterResourcePlanDdlStatements(this);
}
}
exitRule(listener) {
if (listener.exitResourcePlanDdlStatements) {
listener.exitResourcePlanDdlStatements(this);
}
}
accept(visitor) {
if (visitor.visitResourcePlanDdlStatements) {
return visitor.visitResourcePlanDdlStatements(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class MappingTypesContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_USER() {
return this.getToken(HiveSqlParser.KW_USER, 0);
}
KW_GROUP() {
return this.getToken(HiveSqlParser.KW_GROUP, 0);
}
KW_APPLICATION() {
return this.getToken(HiveSqlParser.KW_APPLICATION, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_mappingTypes;
}
enterRule(listener) {
if (listener.enterMappingTypes) {
listener.enterMappingTypes(this);
}
}
exitRule(listener) {
if (listener.exitMappingTypes) {
listener.exitMappingTypes(this);
}
}
accept(visitor) {
if (visitor.visitMappingTypes) {
return visitor.visitMappingTypes(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RpAssignContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_QUERY_PARALLELISM() {
return this.getToken(HiveSqlParser.KW_QUERY_PARALLELISM, 0);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
KW_DEFAULT() {
return this.getToken(HiveSqlParser.KW_DEFAULT, 0);
}
KW_POOL() {
return this.getToken(HiveSqlParser.KW_POOL, 0);
}
poolPath() {
return this.getRuleContext(0, PoolPathContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_rpAssign;
}
enterRule(listener) {
if (listener.enterRpAssign) {
listener.enterRpAssign(this);
}
}
exitRule(listener) {
if (listener.exitRpAssign) {
listener.exitRpAssign(this);
}
}
accept(visitor) {
if (visitor.visitRpAssign) {
return visitor.visitRpAssign(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RpAssignListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
rpAssign(i) {
if (i === undefined) {
return this.getRuleContexts(RpAssignContext);
}
return this.getRuleContext(i, RpAssignContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_rpAssignList;
}
enterRule(listener) {
if (listener.enterRpAssignList) {
listener.enterRpAssignList(this);
}
}
exitRule(listener) {
if (listener.exitRpAssignList) {
listener.exitRpAssignList(this);
}
}
accept(visitor) {
if (visitor.visitRpAssignList) {
return visitor.visitRpAssignList(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class RpUnassignContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_QUERY_PARALLELISM() {
return this.getToken(HiveSqlParser.KW_QUERY_PARALLELISM, 0);
}
KW_DEFAULT() {
return this.getToken(HiveSqlParser.KW_DEFAULT, 0);
}
KW_POOL() {
return this.getToken(HiveSqlParser.KW_POOL, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_rpUnassign;
}
enterRule(listener) {
if (listener.enterRpUnassign) {
listener.enterRpUnassign(this);
}
}
exitRule(listener) {
if (listener.exitRpUnassign) {
listener.exitRpUnassign(this);
}
}
accept(visitor) {
if (visitor.visitRpUnassign) {
return visitor.visitRpUnassign(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class ActivateContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ACTIVATE() {
return this.getToken(HiveSqlParser.KW_ACTIVATE, 0);
}
KW_WITH() {
return this.getToken(HiveSqlParser.KW_WITH, 0);
}
KW_REPLACE() {
return this.getToken(HiveSqlParser.KW_REPLACE, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_activate;
}
enterRule(listener) {
if (listener.enterActivate) {
listener.enterActivate(this);
}
}
exitRule(listener) {
if (listener.exitActivate) {
listener.exitActivate(this);
}
}
accept(visitor) {
if (visitor.visitActivate) {
return visitor.visitActivate(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class EnableContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ENABLE() {
return this.getToken(HiveSqlParser.KW_ENABLE, 0);
}
KW_ENABLED() {
return this.getToken(HiveSqlParser.KW_ENABLED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_enable;
}
enterRule(listener) {
if (listener.enterEnable) {
listener.enterEnable(this);
}
}
exitRule(listener) {
if (listener.exitEnable) {
listener.exitEnable(this);
}
}
accept(visitor) {
if (visitor.visitEnable) {
return visitor.visitEnable(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DisableContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DISABLE() {
return this.getToken(HiveSqlParser.KW_DISABLE, 0);
}
KW_DISABLED() {
return this.getToken(HiveSqlParser.KW_DISABLED, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_disable;
}
enterRule(listener) {
if (listener.enterDisable) {
listener.enterDisable(this);
}
}
exitRule(listener) {
if (listener.exitDisable) {
listener.exitDisable(this);
}
}
accept(visitor) {
if (visitor.visitDisable) {
return visitor.visitDisable(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class YearContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_YEAR() {
return this.getToken(HiveSqlParser.KW_YEAR, 0);
}
KW_YEARS() {
return this.getToken(HiveSqlParser.KW_YEARS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_year;
}
enterRule(listener) {
if (listener.enterYear) {
listener.enterYear(this);
}
}
exitRule(listener) {
if (listener.exitYear) {
listener.exitYear(this);
}
}
accept(visitor) {
if (visitor.visitYear) {
return visitor.visitYear(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class MonthContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_MONTH() {
return this.getToken(HiveSqlParser.KW_MONTH, 0);
}
KW_MONTHS() {
return this.getToken(HiveSqlParser.KW_MONTHS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_month;
}
enterRule(listener) {
if (listener.enterMonth) {
listener.enterMonth(this);
}
}
exitRule(listener) {
if (listener.exitMonth) {
listener.exitMonth(this);
}
}
accept(visitor) {
if (visitor.visitMonth) {
return visitor.visitMonth(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class WeekContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_WEEK() {
return this.getToken(HiveSqlParser.KW_WEEK, 0);
}
KW_WEEKS() {
return this.getToken(HiveSqlParser.KW_WEEKS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_week;
}
enterRule(listener) {
if (listener.enterWeek) {
listener.enterWeek(this);
}
}
exitRule(listener) {
if (listener.exitWeek) {
listener.exitWeek(this);
}
}
accept(visitor) {
if (visitor.visitWeek) {
return visitor.visitWeek(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DayContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DAY() {
return this.getToken(HiveSqlParser.KW_DAY, 0);
}
KW_DAYS() {
return this.getToken(HiveSqlParser.KW_DAYS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_day;
}
enterRule(listener) {
if (listener.enterDay) {
listener.enterDay(this);
}
}
exitRule(listener) {
if (listener.exitDay) {
listener.exitDay(this);
}
}
accept(visitor) {
if (visitor.visitDay) {
return visitor.visitDay(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class HourContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_HOUR() {
return this.getToken(HiveSqlParser.KW_HOUR, 0);
}
KW_HOURS() {
return this.getToken(HiveSqlParser.KW_HOURS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_hour;
}
enterRule(listener) {
if (listener.enterHour) {
listener.enterHour(this);
}
}
exitRule(listener) {
if (listener.exitHour) {
listener.exitHour(this);
}
}
accept(visitor) {
if (visitor.visitHour) {
return visitor.visitHour(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class MinuteContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_MINUTE() {
return this.getToken(HiveSqlParser.KW_MINUTE, 0);
}
KW_MINUTES() {
return this.getToken(HiveSqlParser.KW_MINUTES, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_minute;
}
enterRule(listener) {
if (listener.enterMinute) {
listener.enterMinute(this);
}
}
exitRule(listener) {
if (listener.exitMinute) {
listener.exitMinute(this);
}
}
accept(visitor) {
if (visitor.visitMinute) {
return visitor.visitMinute(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class SecondContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_SECOND() {
return this.getToken(HiveSqlParser.KW_SECOND, 0);
}
KW_SECONDS() {
return this.getToken(HiveSqlParser.KW_SECONDS, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_second;
}
enterRule(listener) {
if (listener.enterSecond) {
listener.enterSecond(this);
}
}
exitRule(listener) {
if (listener.exitSecond) {
listener.exitSecond(this);
}
}
accept(visitor) {
if (visitor.visitSecond) {
return visitor.visitSecond(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class DecimalContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_DEC() {
return this.getToken(HiveSqlParser.KW_DEC, 0);
}
KW_DECIMAL() {
return this.getToken(HiveSqlParser.KW_DECIMAL, 0);
}
KW_NUMERIC() {
return this.getToken(HiveSqlParser.KW_NUMERIC, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_decimal;
}
enterRule(listener) {
if (listener.enterDecimal) {
listener.enterDecimal(this);
}
}
exitRule(listener) {
if (listener.exitDecimal) {
listener.exitDecimal(this);
}
}
accept(visitor) {
if (visitor.visitDecimal) {
return visitor.visitDecimal(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PoolPathContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_(i) {
if (i === undefined) {
return this.getRuleContexts(Id_Context);
}
return this.getRuleContext(i, Id_Context);
}
DOT(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.DOT);
}
else {
return this.getToken(HiveSqlParser.DOT, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_poolPath;
}
enterRule(listener) {
if (listener.enterPoolPath) {
listener.enterPoolPath(this);
}
}
exitRule(listener) {
if (listener.exitPoolPath) {
listener.exitPoolPath(this);
}
}
accept(visitor) {
if (visitor.visitPoolPath) {
return visitor.visitPoolPath(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TriggerAtomExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
id_() {
return this.getRuleContext(0, Id_Context);
}
GREATERTHAN() {
return this.getToken(HiveSqlParser.GREATERTHAN, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
get ruleIndex() {
return HiveSqlParser.RULE_triggerAtomExpression;
}
enterRule(listener) {
if (listener.enterTriggerAtomExpression) {
listener.enterTriggerAtomExpression(this);
}
}
exitRule(listener) {
if (listener.exitTriggerAtomExpression) {
listener.exitTriggerAtomExpression(this);
}
}
accept(visitor) {
if (visitor.visitTriggerAtomExpression) {
return visitor.visitTriggerAtomExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class TriggerActionExpressionContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_KILL() {
return this.getToken(HiveSqlParser.KW_KILL, 0);
}
KW_MOVE() {
return this.getToken(HiveSqlParser.KW_MOVE, 0);
}
KW_TO() {
return this.getToken(HiveSqlParser.KW_TO, 0);
}
poolPath() {
return this.getRuleContext(0, PoolPathContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_triggerActionExpression;
}
enterRule(listener) {
if (listener.enterTriggerActionExpression) {
listener.enterTriggerActionExpression(this);
}
}
exitRule(listener) {
if (listener.exitTriggerActionExpression) {
listener.exitTriggerActionExpression(this);
}
}
accept(visitor) {
if (visitor.visitTriggerActionExpression) {
return visitor.visitTriggerActionExpression(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PoolAssignContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
KW_ALLOC_FRACTION() {
return this.getToken(HiveSqlParser.KW_ALLOC_FRACTION, 0);
}
EQUAL() {
return this.getToken(HiveSqlParser.EQUAL, 0);
}
KW_QUERY_PARALLELISM() {
return this.getToken(HiveSqlParser.KW_QUERY_PARALLELISM, 0);
}
KW_SCHEDULING_POLICY() {
return this.getToken(HiveSqlParser.KW_SCHEDULING_POLICY, 0);
}
KW_PATH() {
return this.getToken(HiveSqlParser.KW_PATH, 0);
}
Number() {
return this.getToken(HiveSqlParser.Number, 0);
}
StringLiteral() {
return this.getToken(HiveSqlParser.StringLiteral, 0);
}
poolPath() {
return this.getRuleContext(0, PoolPathContext);
}
get ruleIndex() {
return HiveSqlParser.RULE_poolAssign;
}
enterRule(listener) {
if (listener.enterPoolAssign) {
listener.enterPoolAssign(this);
}
}
exitRule(listener) {
if (listener.exitPoolAssign) {
listener.exitPoolAssign(this);
}
}
accept(visitor) {
if (visitor.visitPoolAssign) {
return visitor.visitPoolAssign(this);
}
else {
return visitor.visitChildren(this);
}
}
}
export class PoolAssignListContext extends antlr.ParserRuleContext {
constructor(parent, invokingState) {
super(parent, invokingState);
}
poolAssign(i) {
if (i === undefined) {
return this.getRuleContexts(PoolAssignContext);
}
return this.getRuleContext(i, PoolAssignContext);
}
COMMA(i) {
if (i === undefined) {
return this.getTokens(HiveSqlParser.COMMA);
}
else {
return this.getToken(HiveSqlParser.COMMA, i);
}
}
get ruleIndex() {
return HiveSqlParser.RULE_poolAssignList;
}
enterRule(listener) {
if (listener.enterPoolAssignList) {
listener.enterPoolAssignList(this);
}
}
exitRule(listener) {
if (listener.exitPoolAssignList) {
listener.exitPoolAssignList(this);
}
}
accept(visitor) {
if (visitor.visitPoolAssignList) {
return visitor.visitPoolAssignList(this);
}
else {
return visitor.visitChildren(this);
}
}
}